|
META TOPICPARENT |
name="WebHome" |
%DASHBOARD{ section="banner" |
|
< < | image="/twiki/pub/MecrispCube/BoardSupportPackageWBfeather/WB_Feather_header.jpg"
title="!MecrispCube for the STM32WB Feather Developer Board" |
> > | image="/twiki/pub/MecrispCube/BoardSupportPackageWB5M/wb55-discovery-header.jpg"
title="Mecrisp-Cube for the STM32WB5MM-DK Discovery Board" |
| titlestyle="color:#F00000;"
}%
|
|
< < | After discovering Adafruit's Feather STM32F405 for myself, I wanted to develop a Feather board for the STM32WB. Luckily I found the STM32WB Feather Development Board from Reclaimer Labs . This board has everything I need. |
> > | The STM32WB5MM-DK Discovery Board is not as cheep as the Nucleo Board but it
has plenty of peripherals on board: OLED display 128x64 pixel, 128-Mbit Quad-SPI NOR Flash Memory, temperature sensor, accelerometer/gyroscope sensor, Time‑of‑Flight and gesture‑detection sensor, digital microphone, RGB LED, infrared LED, and touch sensor. |
|
Instant real-time programming with Forth. |
|
< < | Sources on GitHub (WBfeather branch on Mecrisp-Cube) |
> > | Sources on GitHub (WB5M branch on Mecrisp-Cube) |
| |
|
< < | |
> > | |
|
|
| |
|
< < |
- 61 KiB RAM dictionary
- 384 KiB Flash dictionary
- Forth as CMSIS-RTOS thread. CMSIS-RTOS API to use FreeRTOS
within Forth.
- Buffered terminal I/O (5 KiB buffer for UART Rx). Interrupt driven and RTOS aware,
key and emit block the calling thread. USART1: D0 RX, D1 TX
- USB-CDC for serial communication via USB. Redirect console I/O like
cdc-emit , cdc-key
- microSD and internal serial Flash mass storage for blocks and FAT filesystem.
- Digital and analog pins
- LEDs: LED1 (red) D12
- Digital port pins: D0 to D15 (without D7 and D8)
- Analog port pins: A0 to A5
- PWM: TIM1CH1 A4, TIM1CH2 D1, TIM1CH3 D0
- Input capture TIM2CH1 A5
- Output compare TIM2CH2 D13, TIM2CH3 D5, TIM2CH4 D6
- EXTI: D5, D6, D11, D13
- UART: D0 RX, D1 TX
- SPI: D2 SCK, D3 MISO, D4 MOSI (e.g. for display, memory)
- I2C: D14 SDA, D15 SCL (external peripherals e.g. pressure sensor)
- vi Editor origin in BusyBox tiny vi. Workflow development:
begin Edit EVALUATE while SaveFile repeat
- Real Time Clock (32 bit UNIX time stamp, valid times are from 1.1.2000 to 31.12.2099 because of the STM32WB RTC peripheral)
time! , time@ , and .time (YYYY-MM-DDTHH:MM:SS ISO 8601).
|
> > | The standard Mecrisp-Cube features like RTOS, Filesystem, USB, etc. |
| |
|
< < | |
> > |
- 63 KiB RAM dictionary
- 128 KiB Flash dictionary
- Internal Serial Flash drive 0:, 384 KiB
- microSD drive 1: (external adapter)
- OLED display 128x64 pixel
- RGB LED
Not supported yet:
- temperature sensor
- accelerometer/gyroscope sensor
- Time-of-Flight and gesture/detection sensor
- digital microphone
- infrared LED
- touch sensor
|
| |
|
< < | For more BSP details see BoardSupportPackageWBfeather. |
> > | For more BSP details see BoardSupportPackageWB5M. |
|
|
|
-
- minicom, microcom, screen - Linux
- Use the built in Eclipse console (but no LF)
|
|
< < | Flash the Mecrisp-Cube binary (MecrispCubeWBfeather.bin ) or the util-binary (MecrispCubeWBfeatherUtil.bin ) to the Feather Board. |
> > | Flash the Mecrisp-Cube binary (MecrispCubeWB5M.bin ) or the util-binary (MecrispCubeWB5MUtil.bin ) to the Discovery Board. |
| |
|
< < |
- Connect the Feather Board USB to the PC
|
> > |
- Connect the Discovery Board USB to the PC
|
|
- Hold the USR button (BOOTP Pin), push the RES button, release the USR button
|
|
< < |
- Program the binary (
MecrispCubeWBfeather.bin or MecrispCubeWBfeatherUtil.bin ) with the STMCubeProgrammer (select USB Device)
|
> > |
- Program the binary (
MecrispCubeWB5M.bin or MecrispCubeWBfeatherUtil.bin ) with the STMCubeProgrammer (select USB Device)
|
|
- Reset or power cycle the Feather board
Start the terminal emulator application on the PC. |
| Browse to Mecrisp-Cube directory
|
|
< < | Generate code from the STM32CubeMX MecrispCubeWBfeather.ioc file: |
> > | Generate code from the STM32CubeMX MecrispCubeWB5M.ioc file: |
|
Project -> Generate Code
|