Colibri MCU1

From Stm32World Wiki
Jump to navigation Jump to search
Colibri-mcu1-revB-render-front.png
Colibri-mcu1-revB-render-iso.png

Colibri MCU1 is a processor board for Colibri carrier boards. It is a STM32WLE5CC MCU, which has 64kB RAM and 256kB Flash memory. The LoraWAN stack will occupy about half of that, and the remaining space can be used for application programs.

Programming

Low Level

The standard SWDIO/SWCLK pins are available in the pin header together with USART1 for effective development environment.

zeptoforth

We are undertaking to put Forth in the standard LoraWAN stack for this module, so that you can add custom functionality without creating a new Flash image. Forth is a somewhat alien programming language, but has been used successfully both on Nasa missions as well as deep inside CPUs, such as SPARC, and very popular for games in the 1980s.

Colibri MCU1 standard image intends to execute zeptoforth in the following way;

  1. Each Colibri expansion module has a 1Mbit (128kB) EEPROM. The first 512 bytes are reserved for calibration parameters, then 65024 bytes are reserved for a Forth program that is executed by the host MCU, to interact with the expansion module and preparing a packet to be sent via LoraWAN (i.e. Uplink message on fPort 2).
  2. Colibri modules that has an on-board MCU will use the next (up to) 65536 of EEPROM for Forth program executing in the MCU on the I/O board, or any other use that MCU is programmed for.

All these Forth programs can be uploaded in the field via LoraWAN Downlink messages on fPort 5.

Arduino

The Colibri MCU1 can be programmed with the Arduino IDE. The support for this is provided by RAKwireless. See RAKwireless website.

MicroPython

It is not likely that it is possible to fit MicroPython into the STM32WLE5 in parallel with the ST LoraWAN and HAL stacks. Possibly an independent LoraWAN stack meant for MicroPython might make that possible.

Lua

It is not likely that it is possible to fit Lua into the STM32WLE5 in parallel with the ST LoraWAN and HAL stacks.

Documentation