From 67dece84741cc8b53ceaf2a1a81d8f0c3c11e688 Mon Sep 17 00:00:00 2001 From: Alex Bucknall Date: Mon, 13 Jan 2025 10:53:21 +0000 Subject: [PATCH] boards: blues: adds Cygnet Adds new STM32L433 Feather Board from Blues Signed-off-by: Alex Bucknall --- boards/blues/cygnet/Kconfig.cygnet | 5 + boards/blues/cygnet/Kconfig.defconfig | 12 ++ boards/blues/cygnet/board.cmake | 10 + boards/blues/cygnet/board.yml | 6 + boards/blues/cygnet/cygnet.dts | 138 ++++++++++++ boards/blues/cygnet/cygnet.yaml | 22 ++ boards/blues/cygnet/cygnet_defconfig | 17 ++ .../blues/cygnet/doc/img/cygnet-pinout.webp | Bin 0 -> 42966 bytes boards/blues/cygnet/doc/img/cygnet.webp | Bin 0 -> 46692 bytes boards/blues/cygnet/doc/index.rst | 204 ++++++++++++++++++ boards/blues/cygnet/feather_connector.dtsi | 39 ++++ boards/blues/cygnet/support/openocd.cfg | 7 + 12 files changed, 460 insertions(+) create mode 100644 boards/blues/cygnet/Kconfig.cygnet create mode 100644 boards/blues/cygnet/Kconfig.defconfig create mode 100644 boards/blues/cygnet/board.cmake create mode 100644 boards/blues/cygnet/board.yml create mode 100644 boards/blues/cygnet/cygnet.dts create mode 100644 boards/blues/cygnet/cygnet.yaml create mode 100644 boards/blues/cygnet/cygnet_defconfig create mode 100644 boards/blues/cygnet/doc/img/cygnet-pinout.webp create mode 100644 boards/blues/cygnet/doc/img/cygnet.webp create mode 100644 boards/blues/cygnet/doc/index.rst create mode 100644 boards/blues/cygnet/feather_connector.dtsi create mode 100644 boards/blues/cygnet/support/openocd.cfg diff --git a/boards/blues/cygnet/Kconfig.cygnet b/boards/blues/cygnet/Kconfig.cygnet new file mode 100644 index 00000000000..f907d27024b --- /dev/null +++ b/boards/blues/cygnet/Kconfig.cygnet @@ -0,0 +1,5 @@ +# Copyright (c) 2025 Blues +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_CYGNET + select SOC_STM32L433XX diff --git a/boards/blues/cygnet/Kconfig.defconfig b/boards/blues/cygnet/Kconfig.defconfig new file mode 100644 index 00000000000..898cdfcf29a --- /dev/null +++ b/boards/blues/cygnet/Kconfig.defconfig @@ -0,0 +1,12 @@ +# STM32L433CC Cygnet board configuration + +# Copyright (c) 2025 Blues +# SPDX-License-Identifier: Apache-2.0 + +if BOARD_CYGNET + +config SPI_STM32_INTERRUPT + default y + depends on SPI + +endif # BOARD_CYGNET diff --git a/boards/blues/cygnet/board.cmake b/boards/blues/cygnet/board.cmake new file mode 100644 index 00000000000..3f2cb762859 --- /dev/null +++ b/boards/blues/cygnet/board.cmake @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: Apache-2.0 + +# keep first +board_runner_args(stm32cubeprogrammer "--port=swd" "--reset-mode=hw") +board_runner_args(jlink "--device=STM32L433CC" "--speed=4000") + +# keep first +include(${ZEPHYR_BASE}/boards/common/stm32cubeprogrammer.board.cmake) +include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake) +include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake) diff --git a/boards/blues/cygnet/board.yml b/boards/blues/cygnet/board.yml new file mode 100644 index 00000000000..4341ee22c8e --- /dev/null +++ b/boards/blues/cygnet/board.yml @@ -0,0 +1,6 @@ +board: + name: cygnet + full_name: Cygnet + vendor: blues + socs: + - name: stm32l433xx diff --git a/boards/blues/cygnet/cygnet.dts b/boards/blues/cygnet/cygnet.dts new file mode 100644 index 00000000000..00fd5282bd2 --- /dev/null +++ b/boards/blues/cygnet/cygnet.dts @@ -0,0 +1,138 @@ +/* + * Copyright (c) 2025 Blues + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/dts-v1/; +#include +#include +#include "feather_connector.dtsi" +#include + +/ { + model = "Blues Cygnet"; + compatible = "blues,cygnet"; + + chosen { + zephyr,console = &lpuart1; + zephyr,shell-uart = &lpuart1; + zephyr,sram = &sram0; + zephyr,flash = &flash0; + }; + + leds: leds { + compatible = "gpio-leds"; + + user_led: led_0 { + gpios = <&gpioa 8 GPIO_ACTIVE_HIGH>; + label = "User LED"; + }; + }; + + gpio_keys { + compatible = "gpio-keys"; + + user_button: button { + gpios = <&gpioc 13 GPIO_ACTIVE_LOW>; + label = "User Button"; + zephyr,code = ; + }; + }; + + aliases { + led0 = &user_led; + sw0 = &user_button; + }; +}; + +&clk_lsi { + status = "okay"; +}; + +&clk_hsi { + status = "okay"; +}; + +&pll { + div-m = <1>; + mul-n = <20>; + div-p = <7>; + div-q = <2>; + div-r = <4>; + clocks = <&clk_hsi>; + status = "okay"; +}; + +&rcc { + clocks = <&pll>; + clock-frequency = ; + ahb-prescaler = <1>; + apb1-prescaler = <1>; + apb2-prescaler = <1>; +}; + +&lpuart1 { + pinctrl-0 = <&lpuart1_tx_pb11 &lpuart1_rx_pb10>; + pinctrl-names = "default"; + current-speed = <115200>; + status = "okay"; +}; + +&usart1 { + pinctrl-0 = <&usart1_tx_pa9 &usart1_rx_pa10>; + pinctrl-names = "default"; + current-speed = <115200>; +}; + +&spi1 { + pinctrl-0 = <&spi1_sck_pa5 &spi1_miso_pa6 &spi1_mosi_pb5>; + pinctrl-names = "default"; + cs-gpios = <&gpiob 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; + status = "okay"; +}; + +&i2c1 { + pinctrl-0 = <&i2c1_scl_pb6 &i2c1_sda_pb7>; + pinctrl-names = "default"; + clock-frequency = ; + status = "okay"; +}; + +&timers2 { + status = "okay"; + + pwm2: pwm { + status = "okay"; + pinctrl-0 = <&tim2_ch1_pa0>; + pinctrl-names = "default"; + }; +}; + +&can1 { + pinctrl-0 = <&can1_rx_pb8 &can1_tx_pb9>; + pinctrl-names = "default"; + status = "okay"; +}; + +&rtc { + clocks = <&rcc STM32_CLOCK_BUS_APB1 0x10000000>, + <&rcc STM32_SRC_LSI RTC_SEL(2)>; + status = "okay"; +}; + +&flash0 { + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + /* + * Reserve the final 16 KiB for file system partition + */ + storage_partition: partition@3c000 { + label = "storage"; + reg = <0x0003c000 DT_SIZE_K(16)>; + }; + }; +}; diff --git a/boards/blues/cygnet/cygnet.yaml b/boards/blues/cygnet/cygnet.yaml new file mode 100644 index 00000000000..88af7f3d91d --- /dev/null +++ b/boards/blues/cygnet/cygnet.yaml @@ -0,0 +1,22 @@ +identifier: cygnet +name: Blues Cygnet +type: mcu +arch: arm +toolchain: + - zephyr + - gnuarmemb + - xtools +ram: 64 +flash: 256 +supported: + - nvs + - can + - spi + - i2c + - pwm + - gpio + - counter + - feather_serial + - feather_i2c + - feather_spi +vendor: blues diff --git a/boards/blues/cygnet/cygnet_defconfig b/boards/blues/cygnet/cygnet_defconfig new file mode 100644 index 00000000000..674354645c1 --- /dev/null +++ b/boards/blues/cygnet/cygnet_defconfig @@ -0,0 +1,17 @@ +# SPDX-License-Identifier: Apache-2.0 + +# Enable MPU +CONFIG_ARM_MPU=y + +# Enable HW stack protection +CONFIG_HW_STACK_PROTECTION=y + +# Enable UART driver +CONFIG_SERIAL=y + +# Enable GPIO +CONFIG_GPIO=y + +# Enable console +CONFIG_CONSOLE=y +CONFIG_UART_CONSOLE=y diff --git a/boards/blues/cygnet/doc/img/cygnet-pinout.webp b/boards/blues/cygnet/doc/img/cygnet-pinout.webp new file mode 100644 index 0000000000000000000000000000000000000000..9499bcaa82eb51b14f8235c4156b5561092b1a9f GIT binary patch literal 42966 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 S>00000000000000eZF(R8 literal 0 HcmV?d00001 diff --git a/boards/blues/cygnet/doc/img/cygnet.webp b/boards/blues/cygnet/doc/img/cygnet.webp new file mode 100644 index 0000000000000000000000000000000000000000..a1355669cb22f352ef5c4aa80f599ec72ffc8824 GIT binary patch literal 46692 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 Q3;+NC00000000000HwI)rvLx| literal 0 HcmV?d00001 diff --git a/boards/blues/cygnet/doc/index.rst b/boards/blues/cygnet/doc/index.rst new file mode 100644 index 00000000000..8283eb15db6 --- /dev/null +++ b/boards/blues/cygnet/doc/index.rst @@ -0,0 +1,204 @@ +.. zephyr:board:: cygnet + +Overview +******** + +The Blues Cygnet board features an ARM Cortex-M4 based STM32L433CC MCU +with a wide range of connectivity support and configurations. Here are +some highlights of the Cygnet board: + +- STM32L4 microcontroller in LQFP48 package +- Adafruit Feather connector +- User LED +- User push-button +- USB Type-C connector + +More information about the board can be found at the `Blues Cygnet website`_. + +Hardware +******** + +The STM32L433CC SoC provides the following hardware IPs: + +- Ultra-low-power with FlexPowerControl (down to 28 nA Standby mode and 84 + |micro| A/MHz run mode) +- Core: ARM |reg| 32-bit Cortex |reg| -M4 CPU with FPU, frequency up to 80 MHz, + 100DMIPS/1.25DMIPS/MHz (Dhrystone 2.1) +- Clock Sources: + + - 32 kHz crystal oscillator for RTC (LSE) + - Internal 16 MHz factory-trimmed RC ( |plusminus| 1%) + - Internal low-power 32 kHz RC ( |plusminus| 5%) + - Internal multispeed 100 kHz to 48 MHz oscillator, auto-trimmed by + LSE (better than |plusminus| 0.25 % accuracy) + - 2 PLLs for system clock, USB, audio, ADC + +- RTC with HW calendar, alarms and calibration +- 11x timers: + + - 1x 16-bit advanced motor-control + - 1x 32-bit and 2x 16-bit general purpose + - 2x 16-bit basic + - 2x low-power 16-bit timers (available in Stop mode) + - 2x watchdogs + - SysTick timer + +- Up to 21 fast I/Os, most 5 V-tolerant +- Memories + + - Up to 256 KB single bank Flash, proprietary code readout protection + - 64 KB of SRAM including 16 KB with hardware parity check + +- Rich analog peripherals (independent supply) + + - 1x 12-bit ADC 5 MSPS, up to 16-bit with hardware oversampling, 200 + |micro| A/MSPS + - 2x 12-bit DAC output channels, low-power sample and hold + - 1x operational amplifiers with built-in PGA + - 2x ultra-low-power comparators + +- 17x communication interfaces + + - USB 2.0 full-speed crystal less solution with LPM and BCD + - 1x SAI (serial audio interface) + - 3x I2C FM+(1 Mbit/s), SMBus/PMBus + - 4x USARTs (ISO 7816, LIN, IrDA, modem) + - 1x LPUART (Stop 2 wake-up) + - 3x SPIs (and 1x Quad SPI) + - CAN (2.0B Active) + +- 14-channel DMA controller +- True random number generator +- CRC calculation unit, 96-bit unique ID +- Development support: serial wire debug (SWD), JTAG, Embedded Trace Macrocell* + +More information about STM32L433CC can be found here: + +- `STM32L433CC on www.st.com`_ +- `STM32L432 reference manual`_ + +Supported Features +================== + +.. zephyr:board-supported-hw:: + +.. note:: CAN feature requires a CAN transceiver. + +Connections and IOs +=================== + +The Cygnet board has 6 GPIO controllers. These controllers are responsible for pin muxing, +input/output, pull-up, etc. + +Available pins +-------------- +.. image:: img/cygnet-pinout.webp + :align: center + :alt: Cygnet Pinout + +For more details please refer to `Blues Cygnet User Manual`_. + +Default Zephyr Peripheral Mapping +--------------------------------- + +- LPUART_1_TX : PB11 +- LPUART_1_RX : PB10 +- UART_1_TX : PA9 +- UART_1_RX : PA10 +- I2C_1_SCL : PB6 +- I2C_1_SDA : PB7 +- PWM_2_CH1 : PA0 +- SPI_1: SCK/MISO/MOSI : PA5/PA6/PB5 + +System Clock +------------ + +The Cygnet board System Clock could be driven by internal or external oscillator, +as well as main PLL clock. By default System clock is driven by PLL clock at 80MHz, +driven by 16MHz high speed internal oscillator. + +Serial Port +----------- + +The Cygnet board has 4 U(S)ARTs and 1 LPUART. The Zephyr console output is assigned +to LPUART1. Default settings are 115200 8N1. + + +Programming and Debugging +************************* + +The Cygnet board requires an ST-LINK embedded debug tool in order to be programmed and debugged. + +Applications for the ``cygnet`` board configuration can be built and +flashed in the usual way (see :ref:`build_an_application` and +:ref:`application_run` for more details). + +Flashing +======== + +The board is configured to be flashed using west `STM32CubeProgrammer`_ runner, +so its :ref:`installation ` is required. + +Alternatively, OpenOCD or JLink can also be used to flash the board using +the ``--runner`` (or ``-r``) option: + +.. code-block:: console + + $ west flash --runner openocd + $ west flash --runner jlink + +Flashing an application to Cygnet +--------------------------------- + +Connect the Cygnet to the ST-LINK debugger, then run a serial host program to connect with your Cygnet board. + +.. code-block:: console + + $ picocom /dev/ttyACM0 -b 115200 + +Now build and flash an application. Here is an example for +:zephyr:code-sample:`hello_world`. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: cygnet + :goals: build flash + +You should see the following message on the console: + +.. code-block:: console + + $ Hello World! cygnet + + +Debugging +========= + +You can debug an application in the usual way. Here is an example for the +:zephyr:code-sample:`hello_world` application. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: cygnet + :maybe-skip-config: + :goals: debug + +References +********** + +.. target-notes:: + +.. _Blues Cygnet website: + https://www.blues.dev/ + +.. _Blues Cygnet User Manual: + https://dev.blues.io/feather-mcus/cygnet/cygnet-introduction/ + +.. _STM32L433CC on www.st.com: + https://www.st.com/en/microcontrollers-microprocessors/stm32l433cc.html + +.. _STM32L432 reference manual: + https://www.st.com/resource/en/reference_manual/dm00151940.pdf + +.. _STM32CubeProgrammer: + https://www.st.com/en/development-tools/stm32cubeprog.html diff --git a/boards/blues/cygnet/feather_connector.dtsi b/boards/blues/cygnet/feather_connector.dtsi new file mode 100644 index 00000000000..da08fb45884 --- /dev/null +++ b/boards/blues/cygnet/feather_connector.dtsi @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2025 Blues Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + feather_header: connector { + compatible = "adafruit-feather-header"; + #gpio-cells = <2>; + gpio-map-mask = <0xffffffff 0xffffffc0>; + gpio-map-pass-thru = <0 0x3f>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 2 0>, /* A2 */ + <3 0 &gpioa 3 0>, /* A3 */ + <4 0 &gpiob 1 0>, /* A4 */ + <5 0 &gpioa 7 0>, /* A5 */ + <6 0 &gpioa 5 0>, /* SCK */ + <7 0 &gpiob 5 0>, /* MOSI */ + <8 0 &gpioa 6 0>, /* MISO */ + <9 0 &gpioa 10 0>, /* RX */ + <10 0 &gpioa 9 0>, /* TX */ + <11 0 &gpiob 1 0>, /* D4 */ + <12 0 &gpiob 7 0>, /* SDA */ + <13 0 &gpiob 6 0>, /* SCL */ + <14 0 &gpiob 8 0>, /* D5 */ + <15 0 &gpiob 9 0>, /* D6 */ + <16 0 &gpiob 14 0>, /* D9 */ + <17 0 &gpiob 13 0>, /* D10 */ + <18 0 &gpiob 0 0>, /* D11 */ + <19 0 &gpiob 15 0>, /* D12 */ + <20 0 &gpiob 4 0>; /* D13 */ + }; +}; + +feather_serial: &usart1 {}; +feather_i2c: &i2c1 {}; +feather_spi: &spi1 {}; diff --git a/boards/blues/cygnet/support/openocd.cfg b/boards/blues/cygnet/support/openocd.cfg new file mode 100644 index 00000000000..cd566c1fa1c --- /dev/null +++ b/boards/blues/cygnet/support/openocd.cfg @@ -0,0 +1,7 @@ +source [find interface/stlink.cfg] + +transport select hla_swd + +source [find target/stm32l4x.cfg] + +reset_config srst_only