STM32F401 Flex Module

Smallest Cortex-M4 of the STM32 line with Espruino support in a Flex Module for wearable sensor processing. For sale on Tindie.

Similar projects worth following
Compact, but capable microcontroller for running Espruino JavaScript directly on devices as well as standard C based firmware. Based on the STM32F401 which is ST Micro's smallest M4 Cortex die. Provides USB On-The-Go host/device, 12-bit ADC, SPI, I2C, and I2S support. Provides buttons for BOOT0, TAMPER, and RESET. Espruino utilizes the TAMPER pin, so we will maintain bootloader compatibility with ST reference designs and the Espruino Pico board.

This is a main control board for the Flex Modules. It is an STM32F401 which is the most compact M4 Cortex die available. We hope to eventually shrink the board further with support of the WLCSP 3x3mm package. There will be many versions of this board with a variety of pins routed depending on Fyber Labs project requirements.

To support USB, an external crystal is required. Clock timing through the STM32CubeMX code generating GUI are the following (left to right in UI/self explanatory):

24MHz crystal:
Input frequency = 24, PLL Source Mux = HSE, /M = /16, *N = x224, /P = /4, /Q = /7, System Clock Mux = PLLCLK, AHB Prescaler = /1, APB1 Prescaler = /2.

16MHz crystal:
Input frequency = 16, PLL Source Mux = HSE, /M = /10, *N = x210, /P = /4, /Q = /7, System Clock Mux = PLLCLK, AHB Prescaler = /1, APB1 Prescaler = /2.

8MHz is the development board (32F401CDiscovery) default, however they require a much larger footprint.

Programming is supported through SWD utilizing the 6-Pin Tag-Connect TC2030-IDC.

We have preliminary Espruino support. Web GUI interface through UART works for the chip, though USB device configuration is still not functional.

Any software related will be released under BSD or MIT license. SAAS or cloud based software will be AGPL.

Creative Commons License

  • 1 × STM32F401CC or STM32F411CE Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 1 × EPSON FA-20H 16.0000MF12Z-AC (Q24FA20H00044) Crystal
  • 1 × EPSON FC-12M 32.7680KA-AC (X1A0000610008) Crystal
  • 1 × ALPS SKSVCAE010 Micro Button

  • Layout updates

    Chris Hamilton12/10/2014 at 09:32 0 comments

    I have added the 32KHz crystal on both sizes. This should save a tiny amount of power and allow for RTC operation on the larger board design. The USB BiPower board's new OTG design includes a more efficient i2c bus for communicating with the charge detection and negotiating OTG (yes, OTG is in this uc, but size and cost of a charge pump over a separate OTG negotiator is negligible). I'll be swapping some of the traces to work more efficiently with i2c and better impedance control on the USB traces.

  • STM32F401 boards programmable

    Chris Hamilton09/12/2014 at 04:07 0 comments

    The boards still need more testing, but they are programmable.  I'll be testing more functions of the configured buses for both small and large layouts.

  • STM32F411

    Chris Hamilton08/29/2014 at 09:21 0 comments

    It appears that STM32F401 might be unofficially being updated.  The STM32F401 has yet to become generally available and the new STM32F411 is coming out with on first glance drop in pin replacement.  It is lower current and higher frequency, so this should be a good thing.  We are talking to our ST sales rep and will try to get samples.

  • New version

    Chris Hamilton08/21/2014 at 08:38 2 comments

    We have shrunk the module by going 4 layer.  You can find the new smaller version available in the 'small' directory on github.  The large version hasn't changed much, though we did redo it's layout in an attempt to see if we could add more components on the same board size.  To shrink any further, we will need to switch to the much smaller WLCSP 3x3mm version.

View all 4 project logs

Enjoy this project?



Clovis Fritzen wrote 08/13/2014 at 18:46 point
Nice project, Chris.

Considering kickstarter it? I would buy!

  Are you sure? yes | no

Chris Hamilton wrote 08/13/2014 at 18:59 point
Thanks! We will definitely consider it.

  Are you sure? yes | no

Does this project spark your interest?

Become a member to follow this project and never miss any updates