Ultimate companion MCU, replaces eeprom, ftdi & crystal for $1.50
tonyp12
Posts: 1,951
$5 for P1 sounds OK, but then you need the FTDI usb-uart, you need the very big 5MHz crystal and you need the i2c eprom.
Already you're up an extra $3
How about replacing all that with a single QFN24 EFM32HG309F64G for around $1.50
http://www.mouser.com/ProductDetail/Silicon-Labs/EFM32HG309F64G-A-QFN24/?qs=sGAEpiMZZMuoKKEcg8mMKH7azzNBOzKxuWYl3ZPpVyzWQx2mn5x66w==
With proper software written for this 25MHz ARM0,
it will emulate the 32k i2c eprom, it will provide a Windows a usb-uart port and it will provide a 5MHz clkout
As a bonus:
2 channel 12bit 1msps adc over your i2c/spi
Add a supercap and 32K crystal and you have a 1uA RTC (and provide a more calibrated 5MHz)
10 GPIO with pwm and irq
6KB fifo buffer
16KB flash storage
Already you're up an extra $3
How about replacing all that with a single QFN24 EFM32HG309F64G for around $1.50
http://www.mouser.com/ProductDetail/Silicon-Labs/EFM32HG309F64G-A-QFN24/?qs=sGAEpiMZZMuoKKEcg8mMKH7azzNBOzKxuWYl3ZPpVyzWQx2mn5x66w==
With proper software written for this 25MHz ARM0,
it will emulate the 32k i2c eprom, it will provide a Windows a usb-uart port and it will provide a 5MHz clkout
As a bonus:
2 channel 12bit 1msps adc over your i2c/spi
Add a supercap and 32K crystal and you have a 1uA RTC (and provide a more calibrated 5MHz)
10 GPIO with pwm and irq
6KB fifo buffer
16KB flash storage
Comments
Are you up to providing the "proper software"?
Sounds like I have yet another dev board to purchase and IDE to play with. Luckily they seem to have something that works on Linux as well.
I leave this as open source and let it be a community effort, I may provide $20 boards that have this combo.
That's OK., but the i2c boot would be tricky.
I prefer the cheaper smaller brother to that, the
EFM8UB1, comes for HALF that price, 87c @ 16k and 61c @ 8k
This can swallow the RST circuit, and has a 12b ADC, ( a little slower than HG) , it also has a 100mA 3.4V regulator, so could power the Prop in most use cases, for very compact designs.
EFM8UB1 is also likely to appeal more to Parallax, as an 8b peripheral part is less 'distracting' than a full 32b 64k M0 device.
And 32K flash is minimum as with some compression will emulate the 32K eeprom (firmware needs some space)
I2C will easy, the gecko will be a slave and have the same address as a eeprom.
Settings & interexchange are in the last 1K of ram (C Struct) of this fake 54K eeprom as it's made up of 48K flash +6K ram.
Of the ram part the lower 5K can be configured for optional fifo's for adc,urt,usb sized to your choice with irq when 90% full.
or use it as non-volatile ram storage as with a supercap ram retention will be measured in weeks.
16K of geckos flash and 2K of ram is reserved for firmware.
As 1MHz fast+ I2C is available it will handle most applications, a optional 5MHz SPI interexchange is also planned.
yes it's a little to powerfull, it's like a 9th cog same 2K RAM and 20mips but with 16KB flash for itself.
But wait where aren't done yet (if call within next 10minutes) you also get hardware AES, current-DAC's and two capsense buttons
Nope.
Mouser fumbled that one very badly, there is a rev C part coming, and so rev B is deprecated.
I can see the merits of loading ever-more-fruit onto a smarter peripheral, but why stop there ? - why not use a not-much-more expensive NUC505 ($2+) and load on Audio and 2M flash.....
Users will pause and say "Why do I need the Prop1, again ?"
That's why I prefer the EFM8UB1 - fits squarely in the KISS category & has code for CP210x emulation. ie can use existing drivers. Or, you can do a HID version....
You also move away from the stand alone Prop BOM & boot, and power-cycling etc timing is never quite the same...
It will once a minute calibrate itself using the 32K external crystal, it even have hardware support for self calibration using two clocks.
It have factory stored calibration data in info, and with internal temp and Vdd readings you could calibrate it even more precise.
Default will be 10MHz ARM clk with Div2-CMU_OUT0 = 5MHz but any freq between 1-6.25MHz is possible.
Minimum 20'000 flash erase cycles, so 10 times a day everyday for 6 years.
If you really have to upload a PropFirmware more than that then I can not help you,
or are using the eeprom as a running data backup I think that you are not taken advantage of the emulated non-volatile ram section.
As gecko is the slave it will use the Prop timings that are there, it can even fake-boot with rx/tx as Prop looks at this port first.
For Parallax I don't think this is to their advantage as maybe some will start writing firmware for it and getting to comfortable with IAR workbench and ARM's
But development board will use the QFP Prop as to show who's the boss.
However sometime ago I became interested in the XMC1100 parts which include 16KB of RAM and 64KB Flash in a 16 pin TSSOP for around $1.50 in 100 offs. The reason I picked this part was that it had enough RAM and Flash for me to host a Forth and to run that at a good 5MIPS or so. What this means is that I can preload these parts with the kernel and I can talk/interact and program them in high-level code without the need for further tools, just straight from the Prop serially. Of course they have all the serial interfaces, even QSPI, and 12-bit ADC and RTC etc. Oh, and they operate from 1.8 to 5.5V!
My typical uses for companion micros are:
RTC WATCHDOG SERIAL BOOTLOADER (esp. over remote links) ADC SYSTEM CLOCK
Of course the XMC1100 with 64KB Flash could be used for I2C program store even emulating EEPROM writes if necessary but I would be inclined to use a direct serial EEPROM or SPI Flash connected to the XMC and accessed as if it were a very large and fast EEPROM.I know some people have tried to use a PIC to replace the FTDI for Propellers, with discouraging results. Apparently the Prop is just too picky at boot time about getting a constant stream of data, or something.
I got the Microchip USB Dev Kit with PICkit3 (it's also available without the PICkit3 programmer in case you already have one of those), and did some tests, but with the standard USB to UART firmware, I could only download small programs to the Prop. Big programs simply failed.
But I thought: What if I would emulate the Propeller boot protocol on the PIC so that a standard tool such as the Propeller IDE could still be used to download programs, and then the PIC would take care of storing the program in the EEPROM at its own pace, while the nRES line on the Prop was held low. Or how about if I would use a different PIC with enough flash memory, which writes the Prop program to its own Flash memory and emulates the EEPROM to the Prop?
I designed my projects as kits for beginners, so the DIP packaging is interesting (there are no DIP FTDI chips but the PIC chips are available in SMD too). Also, the opportunity to emulate the resistor/capacitor/transistor circuit that generates the nRES signal on the Prop plug would reduce the amount of work soldering. It might not be possible to make it $1.50, but a Prop Plug is about $15, I think it's possible to buy a USB type-B (through-hole) and a PIC (not sure which one, or if it's even possible) for that kind of money.
For now, I shelved the idea but I might get back to it in the future...
===Jac
The 2x 14pin smt headers are for stackable shields, as they are dual entry it's breadboard compatible
One card edge connector for simple and fast right-angle plug in boards.
Built-in miniusb VGA connector
0.25 Farad supercap
2 servo headers (pwm from gecko)
Fits Translucent Blue Hammond enclosures
http://www.mouser.com/Hammond/Enclosures/Enclosures-Boxes-Cases/_/N-5g3p?P=1z0z2kmZ1z0zldx&Keyword=3.15x1.58&Ns=Pricing|0
I had a go a while back at doing something similar with a usb based pic. The idea was for the pic to present as usb mass storage, so the prop binary could just be drag and dropped from PC onto the pic flash, which would then load and boot the prop. Analog, rtc, watchdog were bonus features.
It all looked good on paper, the main problem was being spoiled by how easy it is to make stuff work reliably with the prop - the pic just wasn't as robust at the time. I corresponded with microchip a bit to verify it wasn't "just me". I suspect someone with more pic experience could now make it work.
I really hope this can be made to work. Remember the prop can be loaded by serial, if i2c emulation is difficult
That's nifty.
I see there are glimpses of the next XMC1xx release
XMC1404Q048X0064AAXUMA1 $1.55/10k
XMC1402Q040X0032AAXUMA1 $1.11/10k
info is sparse, but I think that is (QFN?) 48 & 40 pins 64k or 32k, and 'more connectivity' may include USB ?**
6mm package ?
http://www.infineon.com/cms/packages/SMD_-_Surface_Mounted_Devices/P-PG-VQFN/P-PG-VQFN-040-07.html
Addit: ** Seems the new XMC14xx does not include USB - just CAN bus, pity.
More info is here on a Chinese pdf document on this page
http://www.infineonic.org/document/detail/index/id-216071
Great for Portable or isolated debug.
Seems to be reducing prices there :
Atmel : ATBTLC1000A-MU-T SoCs are available for $1.59 USD at 1K quantities [M0 with 128K RAM and 128k ROM ]
Dialog semi :
DA14580-01AT2 Dialog Semiconductor GmbH BLUETOOTH SMART CHIP QFN40 1.62560 5,000
[ M0 with 32kB OTP, 84kB ROM, 50kB SRAM]
As you still need a usb connector for power (or battery charging).
And getting Bluetooth stack up and running is probably more complicated.
BLE:
NXP's QN9021 64KB flash QFN32 $1.47 at 1K (no internal balun)
Cypress CYBL10162-56LQXI 128KB QFN56 $2.46 (internal balun)
Nah. I've been using IAR EWARM professionally for years and it hasn't made my interest in the Prop diminish even the tiniest bit. Nearly every personal project uses a Propeller - mostly because it is so much more fun and satisfying. Part of the pleasure comes from how quickly everything falls into place.