Any interest in multi-MCU stamp boards?
pems
Posts: 70
Hi
I've realized that it can be very useful to have Propeller mated to another MCU with a totally different set of advantages.
For instance, have prop doing what it excels at i.e very time sensitive tasks, and have the other MCU doing comms, floating point data crunching, further data filtering, periphery, etc, while both being on the same physical board and connected with a speedy interlink.
I hope i am not out of line talking on this forum about integration of prop with other brand's MCU. I think that the community could benefit greatly from availability of a relatively cheap stamp-style module that has prop + let's say Cortex M3 based STM32, with bunch of headers and a USB connector on board.
I know i could use such module for a bunch of my projects. One doesn't even need the flash chip, as the prop program can be uploaded into it by the other MCU (i already wrote firmware to do that), with ability to load it faster than either from flash chip or through propplug @115200.
EDIT: how about being able to stream 1Msps ADC samples into prop through a synchronous serial link (using periph-to-periph DMA, while keeping the main core absolutely unloaded)
It would be great if somebody can help by designing and fabricating such board (i personally have no experience fabricating SMT pcb's, but i will help to the best of my ability). If there is enough interest, that somebody can make some cash on the side by fabricating and selling these boards to community (to justify this effort).
Then I will initiate (rather continue) an open-source effort to create a firmware framework for all this jazz.
Not sure how yet, but with such setup, it may even be theoretically possible to protect the content (i.e the prop program IP) to some extent (probably not completely though)
Here are some theoretical costs:
- QFP prop: ~$12
- STM32 (STM32F103RBT6 or even better STM32F103RET6 for the same price): ~$15
- passive components, crystals, usb connector, headers, regulators: perhaps $13?
- PCB (depends on volume of course): let's say $10 (3-4 sq inches of PCB)
projected total cost: around $50
For those who don't know, STM32 (cortexm3) is supported by gcc and a bunch of free/open source toolkits, so is quite enthusiast-friendly. CortexM3 arch Is much easier to program for than say ARM7 (i've tried both) and is expected to be the "8051" of the future (in terms of popularity).
(in no way i am affiliated with STM or ARM for that matter, just hoping for this to be useful to fellow prop enthusiasts)
Cheers
Post Edited (pems) : 9/19/2008 10:37:35 PM GMT
I've realized that it can be very useful to have Propeller mated to another MCU with a totally different set of advantages.
For instance, have prop doing what it excels at i.e very time sensitive tasks, and have the other MCU doing comms, floating point data crunching, further data filtering, periphery, etc, while both being on the same physical board and connected with a speedy interlink.
I hope i am not out of line talking on this forum about integration of prop with other brand's MCU. I think that the community could benefit greatly from availability of a relatively cheap stamp-style module that has prop + let's say Cortex M3 based STM32, with bunch of headers and a USB connector on board.
I know i could use such module for a bunch of my projects. One doesn't even need the flash chip, as the prop program can be uploaded into it by the other MCU (i already wrote firmware to do that), with ability to load it faster than either from flash chip or through propplug @115200.
EDIT: how about being able to stream 1Msps ADC samples into prop through a synchronous serial link (using periph-to-periph DMA, while keeping the main core absolutely unloaded)
It would be great if somebody can help by designing and fabricating such board (i personally have no experience fabricating SMT pcb's, but i will help to the best of my ability). If there is enough interest, that somebody can make some cash on the side by fabricating and selling these boards to community (to justify this effort).
Then I will initiate (rather continue) an open-source effort to create a firmware framework for all this jazz.
Not sure how yet, but with such setup, it may even be theoretically possible to protect the content (i.e the prop program IP) to some extent (probably not completely though)
Here are some theoretical costs:
- QFP prop: ~$12
- STM32 (STM32F103RBT6 or even better STM32F103RET6 for the same price): ~$15
- passive components, crystals, usb connector, headers, regulators: perhaps $13?
- PCB (depends on volume of course): let's say $10 (3-4 sq inches of PCB)
projected total cost: around $50
For those who don't know, STM32 (cortexm3) is supported by gcc and a bunch of free/open source toolkits, so is quite enthusiast-friendly. CortexM3 arch Is much easier to program for than say ARM7 (i've tried both) and is expected to be the "8051" of the future (in terms of popularity).
(in no way i am affiliated with STM or ARM for that matter, just hoping for this to be useful to fellow prop enthusiasts)
Cheers
Post Edited (pems) : 9/19/2008 10:37:35 PM GMT
Comments
If I was already setup with one of these and was wanting more MIPS I'd be looking far higher end than the Prop.
Looking at it from the Prop view is not much different. The Prop can do it all already. Maybe somewhat short on pins but that is a not so much a feature deficit as just the limit of the 32 I/O pins.
Evan
@hippy (you'll appreciate this) I think you are right on here..
I've been looking at the popular ADC options for the Propeller and thinking that it might be
easier to use something like the PICAXE to collect multiple ADC lines and pass them to the
Propeller over a single serial connection. I'm I seeing the current ADC options as too complex?
or does this sound interesting?
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Getting started with a Propeller Protoboard?
Check out: Introduction to the Proboard & Propeller Cookbook 1.4
Updates to the Cookbook are now posted to: Propeller.warrantyvoid.us
Got an SD card connected? - PropDOS
Ray
I also acknowledge that there is SPIN which simplifies complexities of larger size code. But i see the greatest advantage of prop in very simple very repetitive operations (and write them in ASM with self-mod tricks). For instance, i think it's great there are x16 io connected 32bit counters/timers on a prop. No cheap MCU that i know of has that many. In fact, before i knew about prop, i thought the only way of having that many io mated counters would be to use a CPLD/FPGA, which i hear are much more tricky to master than prop.
So while i am not saying things cannot be accomplished on a prop alone, I advocate extracting the full potential from the prop by restricting the tasks that run on it to the ones which map very well to the props architecture, while leaving everything else to "the other" chip.
I've started with SiLabs f120. It was a great intRo into the embedded world, but i found the 8bit-ness a limiting and sometimes irritating factor. With 32bit modern mcu's costing same or less, there really is no reason to stick with 20yr old 8051 arch.
To keep things simple, I am using a cog for each 1256 and each motor.· Ignore the MPG3904s and the resistors and capacitors.· They are just for static protection.
The 1256 is a nifty A/D that reads four differential or 8 single ended channels at up to 30k samples per second.· The only problem with it is that the timing is a real bear to figure out.· I can't attach the PicBasic Pro program·for the client's board since he owns that, but I will post the ADS1256 SPIN object for the second board when it is finished.
PICAXE is what I've used, cheap and cheerful, easier to program than the equivalent vanilla PICmicro. PDIP so easy to work with and I don't need high-speed or high resolution ( 10-bits is good enough for me ). I don't need differential inputs or anything fancy, usually I just want to hang a set of pots on to control things etc.
The comms is serial so just one I/O line, PICAXE sends a 'break' then churns out the readings for its ADC's, repeats. A Spin Cog bit-bangs in serial, filling an array of ADC readings synched to 'break'. Simple.
Similar to what Conehead and Rsadeika are doing but low-tech to meet my low-tech requirements.
I've also used PICAXE for text LCD control to get round 3V3 problems.