Shop OBEX P1 Docs P2 Docs Learn Events
Hanno's IODreamKit - DreamKit:TNG Discussion Thread — Parallax Forums

Hanno's IODreamKit - DreamKit:TNG Discussion Thread

Bill HenningBill Henning Posts: 6,445
edited 2011-02-25 21:46 in Propeller 1
As some of you know (from Hanno's post in another thread) I will be producing the IODreamKit.

Hanno and Brian came up with the initial design, and I've recently taken over the project. Now that I've finished the designs I wanted to send in for prototyping PCB's before UPEW, I will be spending time on IODreamKit. I may bring the original DreamKit prototype to UPEW...

Personally, I prefer through hole designs - not only does it allow easier repair in case one of the chips magic blue smoke escapes, but it also allows easier assembly. After a discussion with Hanno he told me I can redesign the board however I like [noparse]:)[/noparse]

The original IODreamKit design featured:

1) one 100Msps 8 bit ADC
2) one five bit 20Msps arbitrary waveform generator
3) eight channels of 12 bit ADC (MCP3208)
4) two channels of delta sigma waveform generation
5) eight digital output channels that can sink up to 500mA
6) eight channels of buffered digital I/O

Hanno's IODreamKit images: hannoware.com/dreamkit/

Hanno's IODreamKit forum: forums.hannoware.com/viewforum.php?f=6

Here are the preliminary specifications for the "standard" IODreamKit 2:

1) one 100Msps 8 bit ADC
2) one seven bit 100Msps arbitrary waveform generator (NOTE 1)
3) eight channel 100Msps Logic Analyzer inputs
4) eight channels of 12 bit ADC (MCP3208)
5) two eight-channel expansion ports (MCP23S17) for high current output module and optically isolated input module
6) two combination triggers / counter input/outputs / delta-sigma output

But wait... there is more... you get two free Ginsu knives! (just kidding)

Actually, I think it is more exciting than that.

IODreamKit 2 will be modular!

The new design accepts up to three high speed 8 bit modules, in any mix of:

A) 100Msps ADC module
B) 100Msps 7 bit DAC module (8 bits are possible, but serve no purpose due to 1% resistor tolerance)
C) 100Msps Logic State Analyzer module
D) 8 channel PWM DAC module
E) ... additional future modules ...

The new design also supports:

A) 7 additional MCP23S17's daisy-chained from the SPI port used for the on-board MCP23S17
B)six additional SPI ports (using same standardized pinout that future Mikronauts modules will use for my entire product line)
C) two ALT connectors for the on-board MCP23S17 supporting future soon-to-be-announced Mikronauts industrial modules (oops!)
D) one analog connector for the on-board MCP3208 supporting future soon-to-be-announced Mikronauts analog conditioning module

Sapieha will be doing the PCB layout, so it is pretty much guaranteed to be a work of art [noparse]:)[/noparse]

Yes, this DOES mean that you can (with the purchase of additional modules) use IODreamKit 2 as:

1) Three channel 100Msps scope (0-3.3V)
2) Three channel 100Msps DSO
or
3) 24 channel 100Msps Logic Analyzer

- or any mixture of modules you care to plug in!

Oh - and support a TON of SPI I/O, and my upcoming industrial modules...

I'd love to hear your feedback - the design is not cast in stone yet, I plan on sending in the prototype PCB just before I leave for UPEW... so your suggestions can still be heard!

I really liked Brian's version; but I wanted this version to be modular.

I am very excited about this project...

NOTE 1:

100Msps DSO output has a small output glitch approximately every 800 samples, if there is not somewhere 4 consecutive samples of the same - or only 1 LSB different - value in the waveform.

50Msps DSO output would be glitch free. Yes, I use the video output circuitry to achieve this.

Theoretically 128Msps output (or even 150Msps) would be possible (with aforementioned glitch for 5 samples), but there would be aliasing errors due to phase accumulation; and PPL's may burn out at >128Msps. Not worth it.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
Las - Large model assembler Largos - upcoming nano operating system

Post Edited (Bill Henning) : 5/31/2010 11:10:59 PM GMT

Comments

  • Bill HenningBill Henning Posts: 6,445
    edited 2010-05-31 19:06
    And I am considering "IODreamKit:TNG" as the product name [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
    My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
    and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
    Las - Large model assembler Largos - upcoming nano operating system
  • HannoHanno Posts: 1,130
    edited 2010-06-07 18:10
    Great job Bill on the improvements- those are some impressive features.· This will be great for a diy modular oscilloscope and to carry out all sorts of digital/analog experiments.· If you're interested in this, please let us know!
    Hanno

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Co-author of the official Propeller Guide- available at Amazon
    Developer of ViewPort, the premier visual debugger for the Propeller (read the review here, thread here),
    12Blocks, the block-based programming environment (thread here)
    and PropScope, the multi-function USB oscilloscope/function generator/logic analyzer
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-06-07 22:48
    Bill,

    Thanks for the feedback!

    soon = between now and UPEW

    I PM'd you... we really need to talk.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
    My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
    and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
    Las - Large model assembler Largos - upcoming nano operating system
  • hover1hover1 Posts: 1,929
    edited 2010-06-08 01:20
    Bill,

    If you can say, will it be based on the ViewPort Engine?

    I really don't want to retire my new Propscope so soon. smhair.gif

    Jim
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-06-08 01:39
    YES

    IODreamKit:TNG = Hanno's Software + Bill's Hardware

    After looking at the original DreamKit hardware - which, by the way, I thought was great - Hanno and Brian did a great job - I had a chat with Hanno to find out if he minded if I redesigned the hardware.

    He did not mind at all... so I just scaled down a design I had been working on for about a year for a high end expandable bench instrument in order to keep production costs lower (most people don't need all the features I was planning, nor would they want to pay for them) and added optional high current outputs. I was careful to keep the "spirit" of the original IODreamKit alive in TNG.

    You can think of IODreamKit:TNG as "MorphLAB Jr."!

    Should the full MorphLAB eventually see the light of day, ViewPort will be the PC software for it.

    Don't retire your PropScope! IODreamKit:TNG is not a direct competitor for the PropScope, it is more of a complementary DIY'er product!
    hover1 said...
    Bill,

    If you can say, will it be based on the ViewPort Engine?

    I really don't want to retire my new Propscope so soon. smhair.gif


    Jim
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
    My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
    and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
    Las - Large model assembler Largos - upcoming nano operating system

    Post Edited (Bill Henning) : 6/8/2010 1:45:09 AM GMT
  • hover1hover1 Posts: 1,929
    edited 2010-06-08 01:48
    Bill,

    That's great news. Two power players teaming up! (Make that 3, Sapieha is quite the layout king).

    I expect a nice 12 page glossy catalog to be at UPEW! tongue.gif
    Jim
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-06-08 01:53
    Hi Jim,

    Sapieha is "THE" PCB King!

    Umm... only 12 pages?

    Let me check.

    Opening OpenOffice....

    The "Mikronauts Summer 2010 Product Selection Guide" - which I started recently - currently stands at 28 pages, and likely to grow to about 50-60 by the time I finish adding photo's and text. There are currently 25 products in it, and I know I have to add at least one more [noparse]:)[/noparse]

    Bill
    hover1 said...
    Bill,


    That's great news. Two power players teaming up! (Make that 3, Sapieha is quite the layout king).

    I expect a nice 12 page glossy catalog to be at UPEW! tongue.gif


    Jim
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
    My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
    and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
    Las - Large model assembler Largos - upcoming nano operating system
  • hover1hover1 Posts: 1,929
    edited 2010-06-08 01:57
    Howly Cow!

    Where do you find time for sleep and the wife? [noparse]:)[/noparse]

    Jim
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-06-08 03:47
    Sleep? What is that?

    Wife? Oh! I remember now... I see her in the morning, and at dinner... sometimes on the weekends too...

    It is not QUITE that bad, but I have been working too much. I think it will be worth it!
    hover1 said...
    Howly Cow!

    Where do you find time for sleep and the wife? [noparse]:)[/noparse]

    Jim
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com
    My products: Morpheus / Mem+ / PropCade / FlexMem / VMCOG / Propteus / Proteus / SerPlug
    and 6.250MHz Crystals to run Propellers at 100MHz & 5.0" OEM TFT VGA LCD modules
    Las - Large model assembler Largos - upcoming nano operating system
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2010-08-19 07:36
    Bill,

    re: IODreamKit:

    When is this product scheduled to be released?

    I didn't see it on the HanoWare website or on your website.

    Bob
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-08-19 08:32
    Unfortunately due to limited interest, this product has been assigned a lower priority.

    We still intend to bring it out, but it will take a while.
    Bill,

    re: IODreamKit:

    When is this product scheduled to be released?

    I didn't see it on the HanoWare website or on your website.

    Bob
  • John AbshierJohn Abshier Posts: 1,116
    edited 2010-08-19 09:11
    I have been interested when Hanno was going to build it. Interested when uController was going to build it. Still interested; willing to put down a deposit.

    John Abshier
  • Graham StablerGraham Stabler Posts: 2,510
    edited 2010-08-19 09:20
    I'm interested.

    Graham
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-08-19 09:24
    Thanks John.

    My current plan is to finish qualifying the designs I introduced at the last UPEW, then tackle IODreamKit:TNG

    I've been delayed with the new designs due to 120hrs+ of consulting and some family time.

    The good news is that my 1Gs/sec 100MHz bandwidth scope, that I will need to test IODreamKit:TNG, has arrived, and works VERY well :)
    I have been interested when Hanno was going to build it. Interested when uController was going to build it. Still interested; willing to put down a deposit.

    John Abshier
  • StefanL38StefanL38 Posts: 2,292
    edited 2010-08-20 11:42
    I'm interested too
    best regards

    Stefan
  • ImediaImedia Posts: 2
    edited 2010-09-18 15:01
    Bill,
    This is an older thread but I hope the DreamKit is still alive. I am also very interested in this project and its potential for an application we are working on.
    Thanks
    Grant
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-09-18 15:07
    Stefan & Grant

    Thanks for the interest. After I am finished with my current boards, I will work on the design.

    One thing is fairly certain - it will be a through-hole main board, and most modules will be through-hole as well.
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-12-07 14:31
    Hanno - I did not forget about you!

    I am about half way to finishing the boards I announced at UPEW 2010... and while I it is not finalized, I have been thinking about IODreamKit:TNG over the last few months.

    I have concluded that my initial plans - to make it totally modular - would make it cost prohibitive for now.

    Hanno's original IODreamKit had the following features:

    1) one 100Msps 8 bit ADC
    2) one five bit 20Msps arbitrary waveform generator
    3) eight channels of 12 bit ADC (MCP3208)
    4) two channels of delta sigma waveform generation
    5) eight digital output channels that can sink up to 500mA
    6) eight channels of buffered digital I/O

    I really wanted to make IODreamKit:TNG modular, so people could pick/choose the feature set, however the cost of making so many different PCB prototypes, testing them, and going to production with the main board and four modules would take too much time, and too much money.

    I know Hanno really wants to get a version out there (so do I) so I've decided to simplify the design, which as a nice side effect, will reduce costs as well!

    The current feature set I am looking at is:

    1) one 100Msps 8-10 bit ADC

    This would be a surface mount part, and I while I am leaning towards the ADC08100CIMTC Hanno likes, I am looking into alternatives as the ADC costs more than a Prop!

    2) one seven bit 100Msps arbitrary waveform generator

    Instead of an SMT resistor network, I am thinking of a simple seven bit R2R driven by a 74HC574 (so I can latch the value)

    By adding the latch, I can allow an alternate use for the 7 pins it will connect to - namely 7 more logic analyzer or trigger channels.

    100Msps requires one spot in the waveform of up to 512 samples where the value stays constant for 4 clock cycles.

    3) eight channel 100Msps Logic Analyzer inputs

    These would go to an EXP style connector, so if you needed to, you could use different modules in it, instead of its default "logic analyzer input" mode.

    4) eight channels of 12 bit ADC (MCP3208)

    This ADC would be on a shared bus with the MCP23S17 below, and is intended for low speed input

    5) two eight-channel expansion ports (MCP23S17) with "EXP" style connectors

    This would replace the high-current driver on the original design; instead you would get two connectors that could take my DIG-8-IN-V opto isolated module, or my DIG-8-OUT-V SSR module... or could be used for any other use you may have for parallel I/O

    6) Five SPI expansion connectors for hooking up more SPI devices

    7) I2C expansion header, same as all of my other boards

    8) 5 pin "H-COMM" header, fully PropPlug compatible, for a PropPlug or SerPlug or other compatible module

    The feature set above would allow me to keep some of the flexibility I intended for the fully modular design, while reducing the size of up-front investment I need to make to bring it to market.
  • HannoHanno Posts: 1,130
    edited 2010-12-07 14:51
    What, no ginzu knives with this version?

    I like the return to the initial concept:
    - Propeller
    - high speed analog and digital I/O

    Layed out by Sapieha, developed by Bill, and supported with real-time graphing and datalogging with ViewPort this will suit all kinds of applications!
    Hanno
  • SapiehaSapieha Posts: 2,964
    edited 2010-12-07 15:04
    Hi Hanno.

    Not forget some design additions by Sapieha
  • kuronekokuroneko Posts: 3,623
    edited 2010-12-07 17:21
    2) one seven bit 100Msps arbitrary waveform generator
    ...
    100Msps requires one spot in the waveform of up to 512 samples where the value stays constant for 4 clock cycles.
    Did you ever actually test this? I believe I can see where the numbers come from (100MHz, waitvid minimum timing, VGA mode). Theoretically that's one sample/cycle. Problem is that waitvid has a [thread=126874]blind spot[/thread] which makes its use at minimum timing non-functional.
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-12-08 11:19
    Thanks for the heads-up!

    I'd better test it after finishing the current boards.
  • nutsonnutson Posts: 242
    edited 2010-12-09 12:57
    Have a look at this https://digilent.us/Products/Detail.cfm?NavPath=2,842,843&Prod=EEBOARD

    The propeller has the potential to realise a similar number of virtual instruments with only limited additional support chips (fast A/D). The real challenge is good software support, and I like the "waveforms" software. http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,66,849&Prod=WAVEFORMS I love the way they handled the digital pins, like a virtual PPDB.
  • Bill HenningBill Henning Posts: 6,445
    edited 2010-12-10 10:27
    Thank you - nice board!
    nutson wrote: »
    Have a look at this https://digilent.us/Products/Detail.cfm?NavPath=2,842,843&Prod=EEBOARD

    The propeller has the potential to realise a similar number of virtual instruments with only limited additional support chips (fast A/D). The real challenge is good software support, and I like the "waveforms" software. http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,66,849&Prod=WAVEFORMS I love the way they handled the digital pins, like a virtual PPDB.
  • kuronekokuroneko Posts: 3,623
    edited 2011-02-25 21:46
    kuroneko wrote: »
    Did you ever actually test this? I believe I can see where the numbers come from (100MHz, waitvid minimum timing, VGA mode). Theoretically that's one sample/cycle. Problem is that waitvid has a [thread=126874]blind spot[/thread] which makes its use at minimum timing non-functional.
    OK, if it's not functional then we simply shouldn't use it. Attached is a 1 sample/cycle demo without blind spots. I haven't validated the output (could do with an interleaved sampler) but the LED bar output (demoboard) looks as expected. Key is to have dst and src latched at the right time.
    long    $807FE000[%%0123 - $]   ' alignment (add par, #0 nr)
    
    primary         add     scan + 0, #%%3210 nr
                    add     scan + 1, #%%3210 nr
                    add     scan + 2, #%%3210 nr
                    jmpret  scan + 3, #%%0123 nr    ' $01B, smallest possible target
    
                    ...
    
    scan            long    $08040201               '
                    long    $80402010               '
                    long    $10204080               ' sample data
                    long    $08040201               ' reverse byte order to match jump target
    
    Now where is my coffee ...
Sign In or Register to comment.