Bridle 3.6.0 Release Notes (Working draft)

This project demonstrate the integration of TiaC Systems support in open source projects, like the Zephyr RTOS, with libraries and source code for applications. It is not yet intended or supported by TiaC Systems for product development.

Highlights

  • NOT YET, tbd.

  • Add the u-blox library (ubxlib) and provide a simple GNSS example.

  • Add Raspberry Pi Pico LCD Shields.

  • Add Raspberry Pi Pico LED Shields.

  • Add Raspberry Pi Pico TEST Shields.

  • Add DTS bindings for pwm-buzzers and pwm-servos.

  • Support the Cytron Maker RP2040 family.

  • Support The PicoBoy mini-handheld.

  • Use board extensions.

Note

See the changelog and readme files in the component repositories for a detailed description of changes.

Repositories

For more details, see: Repositories and revisions.

Component

Imports

Branch

Tag

tiac-bridle

v3.6-branch

v3.6.0-rc1

geographiclib
tiacsys/main
(main)
canopennode
chre
cmsis
edtt
fatfs
hal_altera
hal_atmel
hal_espressif
hal_gigadevice
hal_infineon
hal_microchip
hal_nordic
hal_nuvoton
hal_nxp
hal_openisa
hal_quicklogic
hal_renesas
hal_rpi_pico
hal_silabs
hal_st
hal_stm32
hal_telink
hal_ti
hal_xtensa
libmetal
liblc3
littlefs
loramac-node
lvgl
mbedtls
mcuboot
mipi-sys-t
net-tools
open-amp
openthread
picolibc
psa-arch-tests
segger
tf-m-tests
tinycrypt
trusted-firmware-a
trusted-firmware-m
tiacsys/v3.6-branch
(v3.6-branch)

v3.6.0

Supported boards

NOT YET, tbd.

  • Arduino/Genuino Zero

  • PicoBoy Mini-Handheld

  • Cytron Maker Nano RP2040

  • Cytron Maker Pi RP2040

  • NXP MIMXRT1010-EVK

  • NXP MIMXRT1060-EVK

  • Raspberry Pi Pico and Pico W

  • Seeed Studio XIAO SAMD21 (Seeeduino XIAO)

  • Seeeduino Cortex-M0+

  • Seeeduino Lotus Cortex-M0+

  • ST Nucleo F2xxxx

  • ST Nucleo F3xxxx / L4xxxx

  • ST Nucleo F6xxxx

  • TiaC Magpie STM32F777NIHx

  • Waveshare RP2040 (series of mini and pico sized boards)

Supported shields

NOT YET, tbd.

  • Seeed Studio Grove Interconnect Shields

  • Grove Button Shields

  • Grove LED Shields

  • Raspberry Pi Pico LCD Shields

  • Raspberry Pi Pico LED Shields

  • Raspberry Pi Pico TEST Shields

  • Waveshare LCD Modules

  • Waveshare Pico 10-DOF IMU Sensor

  • Waveshare Pico Environment Sensor

Supported snippets

NOT YET, tbd.

  • USB Console Snippet (usb-console)

  • PWM Servomotor Preset Snippet (pwm-servo)

  • CAN timing adjustments (can-timing-adj)

Change log

NOT YET, tbd.

  • When getopt() is active (CONFIG_SHELL_GETOPT=y), the Zephyr shell is not parsing command handler to print help message. It must be done explicitly inside the command implementation.

  • Update GPIO to use DT_HAS_<compat>_ENABLED Kconfig symbol to expose the driver and enable it by default based on devicetree.

  • Use Board extensions to extended Zephyr upstream board configurations. In some situations, certain hardware description or choices can not be added in the upstream Zephyr repository, but they can be in a downstream project, where custom bindings or driver classes can also be created. This feature may also be useful in development phases, when the board skeleton lives upstream, but other features are developed in a downstream module. Thus the extensions spinned around in different shields or snippets were centraliced as board extensions, e.g. the special Raspberry Pi Pico R3 edge connector binding.

  • Remove special board extensions for Nucleo F303RE/F401RE, NXP MIMXRT1010-EVK, and RPi Pico from the Grove Interconnect Shield.

  • Convert all RP2040 based boards to the new Clock Controller support.

  • Adds the new DTS binding pwm-buzzers, which can be used in the same way as the Zephyr upstream binding pwm-leds; but here for simple buzzers, each used by a dedicated PWM channel to output simple digital sounds. A simple buzzer sample is now also part of Bridle. This can be used for simple music playback via PWM.

  • Adds the new DTS binding pwm-servos to combine several PWM channels in one node and make different numbers of servomotors known via alias entries. As long as there is no stable servo motor or motion API in Zephyr or Bridle, this binding will remain in flux and will not be finished.

  • Add the new PWM Servomotor Preset Snippet (pwm-servo) for quite board specific preperations of the standard Zephyr Servomotor sample. Add support for the following boards:

    • Cytron Maker Pi RP2040

  • Add more boards to the USB Console Snippet (usb-console):

    • Cytron Maker Nano RP2040

    • Cytron Maker Pi RP2040

    • NXP MIMXRT1010-EVK

    • NXP MIMXRT1060-EVK

    • Raspberry Pi Pico (W)

    • Waveshare RP2040-Geek

  • Add more shields:

    • Raspberry Pi Pico TEST Shields:

      • Pico ALL GPIO TEST shield by Spotpear

    • Raspberry Pi Pico LED Shields:

      • Pico RGB LED shield by Waveshare

    • Raspberry Pi Pico LCD Shields:

      • Pico LCD 1.14 shield by Waveshare

      • Pico LCD 2 shield by Waveshare

      • Pico ResTouch LCD 3.5 shield by Waveshare

    • Waveshare LCD Modules:

      • 2.4inch LCD Module as shield by Waveshare

    • Sensor shields:

      • Pico 10-DOF IMU Sensor shield by Waveshare

      • Pico Environment Sensor shield by Waveshare

  • New Zephyr module: support u-blox portable C API ubxlib with GNSS sample.

    The GNSS sample, ubx_gnss was qualified to run on the following boards:

    • Nordic nRF9160 DK (nRF9160)

    • Nordic nRF52840 DK (nRF52840)

    • ST Nucleo L496ZG

    • ST Nucleo F413ZH

    • ST Nucleo F767ZI

    • NXP MIMXRT1170-EVKB (CM7)

    • NXP MIMXRT1060-EVK

    • NXP MIMXRT1010-EVK

The following sections provide detailed lists of changes by component.

Build Infrastructure

Take over the new build principles from Zephyr:

NOT YET, tbd.

  • Use the new upstream MIPI DBI API for all ILI9xxx based displays.

  • tbd.

  • tbd.

  • tbd.

Documentation

NOT YET, tbd.

  1. All scattered links to external resources and internal references to sections in the various docsets (e.g. Bridle or Zephyr) were moved to a central location in the files links.txt and shortcuts.txt and thus centralized.

  2. Clarification that the Zephyr SDK will indeed be used and is the preferred default toolchain. All other references to the GNU toolchains by ARM Ltd. are entirely optional and may or may not be used.

  3. Update all output messages in documentation to be in sync with the upcoming Bridle version v3.6.0, based on Zephyr v3.6 (samples and tests).