1.. _adafruit_feather_stm32f405:
2
3Adafruit Feather STM32F405 Express
4##################################
5
6Overview
7********
8
9The Adafruit Feather STM32F405 is an ARM Development board in the
10Feather standard layout, sharing peripheral placement with other
11devices labeled as Feathers or FeatherWings. The board is equipped
12with a lithium ion battery charger, native USB C connector, 2MB of
13external flash memory, and SD card socket.
14
15.. image:: img/adafruit_feather_stm32f405.jpg
16     :width: 640px
17     :align: center
18     :alt: Adafruit Feather STM32F405 Express
19
20Hardware
21********
22
23- STM32F405 Cortex M4 with FPU and 1MB Flash, 168MHz speed
24- 192KB RAM total - 128 KB RAM + 64 KB program-only/cache RAM
25- USB C power and data
26- LiPo connector and charger
27- SD socket on the bottom, connected to SDIO port
28- 2 MB SPI Flash chip
29- Built in NeoPixel indicator
30- I2C, UART, GPIO, ADCs, DACs
31- Qwiic/STEMMA-QT connector for fast I2C connectivity
32- SWD SMT mount region on board underside.
33
34Supported Features
35==================
36
37The Adafruit Feather STM32F405 board configuration supports the
38following hardware features:
39
40+-----------+------------+----------------------+
41| Interface | Controller | Driver/Component     |
42+===========+============+======================+
43| NVIC      | on-chip    | nested vectored      |
44|           |            | interrupt controller |
45+-----------+------------+----------------------+
46| SYSTICK   | on-chip    | system clock         |
47+-----------+------------+----------------------+
48| UART      | on-chip    | serial port          |
49+-----------+------------+----------------------+
50| GPIO      | on-chip    | gpio                 |
51+-----------+------------+----------------------+
52| I2C       | on-chip    | i2c                  |
53+-----------+------------+----------------------+
54| SPI       | on-chip    | spi                  |
55+-----------+------------+----------------------+
56| USB       | on-chip    | USB device           |
57+-----------+------------+----------------------+
58
59Other hardware features are not supported by the Zephyr kernel.
60
61Connections and IOs
62===================
63
64The `Adafruit Feather STM32F405 Express Learn site`_ has detailed
65information about the board including `pinouts`_ and the `schematic`_.
66
67System Clock
68============
69
70The STM32F405 is configured to use the 12MHz HSE Oscillator to produce
71a 168MHz system clock.
72
73Serial Port
74===========
75
76The STM32F405 UART 3 peripheral is available on the TX (PB10) and RX
77(PB11) pins.
78
79I2C Port
80========
81
82The STM32F405 I2C1 peripheral is available on the SDA (PB7) and SCL
83(PB6) pins.
84
85SPI Port
86========
87
88The STM32F405 SPI2 peripheral is available on the SCK (PB13), MI
89(PB14) and MO (PB15) pins.
90
91SPI1 uses SCK (PB3), MI (PB4), MO (PB5) and SS (PA15) pins and is
92dedicated to the 2 MB SPI Flash chip.
93
94Programming and Debugging
95*************************
96
97DFU-Util programming is supported through Zephyr by default. Set up
98of the built in DFU-Util bootloader is possible by following the
99`instructions on the Learn website`_.
100
101Flashing
102========
103
104#. Build the Zephyr kernel and the :ref:`blinky-sample` sample
105application:
106
107   .. zephyr-app-commands::
108      :zephyr-app: samples/basic/blinky
109      :board: adafruit_feather_stm32f405
110      :goals: build
111      :compact:
112
113#. On the Adafruit Feather STM32F405, connect the 3.3V pin to the B0
114boot pin with a jumper wire.
115
116#. Flash the image:
117
118   .. zephyr-app-commands::
119      :zephyr-app: samples/basic/blinky
120      :board: adafruit_feather_stm32f405
121      :goals: flash
122      :compact:
123
124   You should see the D13 LED blinking.
125
126References
127**********
128
129.. target-notes::
130
131.. _Adafruit Feather STM32F405 Express Learn site:
132    https://learn.adafruit.com/adafruit-stm32f405-feather-express/
133
134.. _pinouts:
135    https://learn.adafruit.com/adafruit-stm32f405-feather-express/pinouts
136
137.. _schematic:
138    https://learn.adafruit.com/adafruit-stm32f405-feather-express/downloads
139
140.. _instructions on the Learn website:
141    https://learn.adafruit.com/adafruit-stm32f405-feather-express/dfu-bootloader-details
142