Skip to content

[250331] Project status ‐ release 0.3.0

Martino Facchin edited this page Mar 31, 2025 · 1 revision

Core based on https://github.com/arduino/zephyr/tree/arduino_core_merge_post_4.1 , core produced by this CI job

New features:

  • Initial support for Portenta C33
  • Initial support for fully_linked builds [*]
  • Bugfixes on micros() and SPI
  • Giga Display shield supported (no wrapper library yet)
  • Move .overlay and .conf for loader in variant folder to avoid duplication
  • Rename the boards to the full name is now the variant folder name (to simplify porting to new targets)
  • Support files with CFLAGS etc are now automatically created
  • Update post_build_tool to match the new loader scheme

Fully Linked builds:

By using the same mechanism of llext builds, we can actually extract the position of the symbols (in the loader binary) at COMPILE time, using them to actually link the application. This allows overcoming the biggest issue in llext builds, which is the high RAM usage. The downside is that, unlike llext builds that keep working while the loader is updated, that the sketch must be recompiled every time the loader updates. The fully_linked menu entry is only available for Portenta C33 at the moment.

Compatibility matrix:

Board GPIO ADC PWM USB UART I2C SPI DAC Extra
Giga x x x x x x x Camera, ~Display
Portenta H7 x x x Ethernet (MPU)
Nano 33 BLE x x x x x x x BLE
Portenta C33 x x x BLE, Ethernet
Nicla Sense ME x N/A x x x BLE
FRDM RW612 x x x x WiFi

Preferred HW for features development:

  • WiFi -> RW612, will be Portenta C33 as soon as https://github.com/zephyrproject-rtos/zephyr/pull/87685 gets merged
  • Ethernet -> Portenta C33, secondary Portenta H7
  • BLE -> Nano 33 BLE
  • Camera/Display -> Giga
  • Storage -> Giga
  • Microphones -> Nicla Vision, Portenta H7, Giga
  • USB Host -> Giga
  • RPC (CM4) -> Giga