WeAct STM32F411CEU6 black pill with 64MBit external flash

Discussion and questions about boards that can run MicroPython but don't have a dedicated forum.
Target audience: Everyone interested in running MicroPython on other hardware.
Post Reply
rruf
Posts: 2
Joined: Sat Mar 14, 2020 8:04 pm

WeAct STM32F411CEU6 black pill with 64MBit external flash

Post by rruf » Sat Mar 14, 2020 8:26 pm

Hi all,
i was able to compile and run Micropython on the black pill according to these instructions:
viewtopic.php?t=7154
Thanks to mcauser. However, since remaining disk space is so small on the board, i soldered a Winbond W25Q64FVSIG flash, including the 100nF capacitor to the board.
In mpconfigboard.h, i changed the following (also according to the instruction mentioned above):
Use external flash:
#define MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE (0)
#Choose proper size:
#define MICROPY_HW_SPIFLASH_SIZE_BITS (64 * 1024 * 1024) // W25Q64 - 64 Mbit (8 MByte)

However, after flashing the recompiled hex-file to the board and plugging the board via USB-C, Windows is asking me to format the drive (which won't work). This did not happen with the internal flash version, the usual files popped up in the explorer there.
However, i am able to get a REPL of the board when connecting to it via Tera Term.

Any ideas what went wrong here?
Also, what settings should i choose for these lines in mpconfigboard.h:
#define MICROPY_HW_HAS_FLASH
#define MICROPY_HW_FLASH_LATENCY

Best Regards,
Raphael

User avatar
mcauser
Posts: 444
Joined: Mon Jun 15, 2015 8:03 am

Re: WeAct STM32F411CEU6 black pill with 64MBit external flash

Post by mcauser » Fri Mar 20, 2020 8:55 am

Code: Select all

#define MICROPY_HW_FLASH_LATENCY    FLASH_LATENCY_3
#define MICROPY_HW_HAS_FLASH        (1)
See: https://github.com/mcauser/WEACT_F411CE ... figboard.h

rruf
Posts: 2
Joined: Sat Mar 14, 2020 8:04 pm

Re: WeAct STM32F411CEU6 black pill with 64MBit external flash

Post by rruf » Sat Mar 28, 2020 1:44 pm

Thanks, but there was also something wrong with the SPI pins, at least with my board (WeAct 2.0) they were different. However, now it works.

Post Reply