I have a small (hardware) project that will not fit in a Pro Mini memory (flash). I will be using a breakout board of some kind as for only one device making a PCB is not practical.
My first alternative attempt was a Blue Pill (as I had some). I found it a little finicky to program and the new STM32 core (V1.7.0) needs ST's CubeProgram (Suite?).
As it seems the Blue Pill is moving more to the ST IDE and less to arduino I thought I would look elsewhere.
My needs are modest:
Run at 3.3v
I2C
SPI
9 I/O pins
Speed is not an issue, the Pro mini 8Mhz could handle the speed but not enough memory
Size is not an issue but I prefer to keep the board small
My only other consideration is the DUE or Zero.
My Question:
Is the DUE/Zero stable and well supported in the Arduino IDE?
Any issues that would make one a better choice
Other recommendations?
I've only looked quickly but the NodeMCU seems to fall short on the I/O.
the new STM32 core (V1.7.0) needs ST's CubeProgram (Suite?).
Really? I thought an advantage of moving STM32 Arduino support to ST-based repositories was that it removed any restrictions there might have been about 3rd parties distributing ST code. (ie: installing the STM32 core should install all of the needed ST packages as well. "Cube" may be present, but is invisible to the users.)
SAMD21 seems well supported by a number of vendors and a bunch of form factors (MKR, Nano33, Feather, ItsyBitsy, Mini, Qwiic, Trinket, Playground Express...), and some SAMD21 board would probably be my first choice for "popularity and support." The SAM3X in Due is a bit old and less well supported.
There are Teensy and a few non-Arduino SAMD51 boards, for higher performance.
The Blue Pill and/or "Maple Mini" are the only boards I know of that show up in ultra-cheap Chinese versions.
Thank for the reply. I think I'll go with the SAM21.
"Cube" may be present, but is invisible to the users
I didn't save the actual error, however today I updated from 1.5.0 to 1.7.0 and went from being able to program the BluePill with the FTDI232 to receiving the error..... couldn't find xxxxCLI.exe. So the CubeProgrammer software is required to program after STM32 core 1.5.0
The Blue Pill and/or "Maple Mini" are the only boards I know of that show up in ultra-cheap Chinese versions.
That's why I purchased a handful of Blue Pills a long time ago figuring at the price I could just keep them until I found a use. However it doesn't take much aggravation to offset the $10 cost difference
There are a few samd21 boards around which are "small". Price is around £8~£10, so still more than twice the price of pro Mini.
I have been testing Protoneer NanoARM recently, which seems ok. There are also the "Wemos" samd21 mini boards, AdaFruit itsy bitsy M0, and recently some clones of the Sparkfun samd21 breakout board.
I didn't save the actual error, however today I updated from 1.5.0 to 1.7.0 and went from being able to program the BluePill with the FTDI232 to receiving the error..... couldn't find xxxxCLI.exe. So the CubeProgrammer software is required to program after STM32 core 1.5.0
Blink compiled fine (for "generic STM32F1xx") after I installed 1.7 via the board manager on my Mac, without anything else installed... (I didn't have any ST code previously installed, and I don't have a board handy to actually upload to, but if it were going to require Cube, it would have complained, I think...)
[edit] Ah. I see. The upload method now defaults to the STM32Cube Programmer, which I guess isn't included. If you select the maple bootloader or HID bootloader, it should work the way it used to...
/Applications/Arduino-1.8.9 copy.app/Contents/Java/portable/packages/STM32/tools/STM32Tools/1.3.1/tools/macosx/stm32CubeProg 0 /tmp/NewArduBuild/Blink.ino.bin -g STM32_Programmer_CLI not found. Please install it or add '<STM32CubeProgrammer path>/bin' to your PATH environment: https://www.st.com/en/development-tools/stm32cubeprog.html Aborting!
I have no problems programming BluePill boards using a generic ST Link v2 via SWD. No need to install ST Cube software. This does not use the BluePill USB port or bootloader. The programming is done via the SWD pins.
Upload Method: STM32CubeProgrammer(SWD)
There are many similar or identical devices sold by different vendors at different prices. This one is $6-7 and is the one I have.
In my case, the IDE complained that the ST Link firmware was too old. The ST Link V2 firmware can be upgraded easily. After upgrading the IDE can upload sketches to the BluePill via SWD.
There are multiple Alduino “cores” that support the blue pill. The Roger Clark/lib maple core uses an open source “stmflash” binary to flash the board while the st micro core now requires stm32cube which is an additional installation step as per post #6.