DHSBC STM32MP2x: Difference between revisions

From Wiki-DB
Jump to navigationJump to search
Ageisreiter (talk | contribs)
Ageisreiter (talk | contribs)
 
(13 intermediate revisions by the same user not shown)
Line 10: Line 10:


== Introduction ==
== Introduction ==
Reference design for secure industrial IoT devices based on STM32MP13x
Reference design for secure industrial IoT devices based on STM32MP25


* Single Board Computer based on the solderable DHCOS STM32MP25
* Single Board Computer based on solderable, pin-compatible DHCOS STM32MP25 SOM
* Compatible with accessories from the Raspberry Pi© community
* Industrial grade, 10+ years available
* Highlights: Bluetooth / WiFi, Dual GB Ethernet, Secure Boot, OP-TEE support
* Mainline Linux support (also for Vivante GPU)
* Trusted Platform Module 2.0 available on request
* Security Features e.g. Secure Boot / Storage
* Mainline Linux support and active software maintenance
* Connectivity: Gbit Ethernet, WiFi/BT
* Industrial product design with CE certification
* Multimedia: 3D GPU, display, video, camera
* Guaranteed long-term availability of 10+ years
* STPMIC25 supports low power modes


== Technical Details ==
== Technical Details ==
Line 67: Line 67:
== Product Change Notifications (PCN) ==
== Product Change Notifications (PCN) ==


== Downloads ==
== IMPORTANT INFORMATIONS ==
* <span style="color:#FF0000">'''The DHSBC DisplayPort functionality has not yet been implemented at this time. The test image is a headless image. If you want to connect a display, please contact DH electronics. We can offer a 10" LVDS test kit, or you can connect your own LVDS display and we will assist with implementation.'''</span>


== Documentation ==
== Documentation ==
Line 75: Line 76:
== Design Files ==
== Design Files ==
* [[media:SCH_739-100-HS00048-customer-preliminary_R03_2025-03-27.pdf|DHSBC STM32MP25 Schematic]]
* [[media:SCH_739-100-HS00048-customer-preliminary_R03_2025-03-27.pdf|DHSBC STM32MP25 Schematic]]
* [[media:DHCOS-STM32MP2-3D-STEP-736-100_R01_2025-03-25.zip|DHCOS STM32MP2x 3D STEP file]]
* [[media:DHSBC-STM32MP2-3D-STEP-739-100-R01 2025-09-12.zip|DHSBC STM32MP2 3D STEP file]]


== Software ==
== Software ==
* [https://github.com/dh-electronics/kas-dhsom Build your own Yocto LTS via kas (GitHub)]
* [https://github.com/dh-electronics/kas-dhsom Build your own Yocto LTS via kas (GitHub)]
* [https://github.com/dh-electronics/meta-dhsom-stm32-bsp Yocto BSP meta layer (Github)]
: Note: Please use dh-stm32mp25-dhcos-dhsbc.yml configuration.
* [https://github.com/dh-electronics/meta-dhsom-stm32-wip-bsp Yocto BSP meta layer (Github)]
: Note: Currently, for the DHCOS STM32MP2, we use the 'meta-dhsom-stm32-wip-bsp' (work in progress) layer. The STM32MP2 will later be integrated into the meta-dhsom-stm32-bsp layer.


== Useful instructions ==
== Useful instructions ==
==== Setup new board and install image files via USB (dfu and ums mode) / U-Boot recovery via DFU ====
*[[DHSBC STM32MP2 DFU and UMS usage|DHSBC STM32MP2 DFU and UMS usage]]
==== How to connect to  WiFi network ====
:'''Establish connection'''
:{| class="wikitable"
|<tt>$ wpa_passphrase "SSID" > /etc/wpa_supplicant.conf</tt>
|}
:-> In the next step, please enter the password
:{| class="wikitable"
|<tt>$ rfkill unblock all</tt>
|-
|<tt>$ wpa_supplicant -B -i wlansom0 -c /etc/wpa_supplicant.conf</tt>
|}
:'''Disconnect'''
:{| class="wikitable"
|<tt>$ ip link set wlansom0 down</tt>
|}
==== Use GPIOs ====
:'''To list available GPIOs, use the gpioinfo command:'''
:{| class="wikitable"
|<tt>$ gpioinfo</tt>
|}
        gpiochip0 - 16 lines:
        line  0:      "DHSBC_HW-CODE_0"      input consumer="kernel"
        line  1:      "DHSBC_HW-CODE_1"      input
        line  2:      "DHSBC_HW-CODE_2"      input
        line  3:      "PA3"                  input
        line  4:      "DHCOS-E"              input
        line  5:      "DHCOS-J"              input
        line  6:      "PA6"                  input
        line  7:      "PA7"                  input
        ...
:'''To set a GPIO as Output-High:'''
:{| class="wikitable"
|<tt>$ gpioset "LABLE"=1</tt>
|}
:'''To set a GPIO as Output-Low:'''
:{| class="wikitable"
|<tt>$ gpioset "LABLE"=0</tt>
|}
:'''To get current state of a GPIO:'''
:{| class="wikitable"
|<tt>$ gpioget "LABLE"</tt>
|}
==== Configure systemd network configuration ====
:'''Find configuration files:'''
:{| class="wikitable"
|<tt>find /usr -name \*wlansom0\*</tt>
|-
|<tt>find /usr -name \*ethsom0\*</tt>
|-
|<tt>find /usr -name \*ethsom1\*</tt>
|}
:'''systemd network configuration:'''
* [https://wiki.archlinux.org/title/Systemd-networkd systemd-networkd documentation]
* [https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html systemd.network — Network configuration]


== Links ==
== Links ==

Latest revision as of 16:29, 2 October 2025

The DHSBC STM32MP25 board is the official DHCOS STM32MP25x reference design!

DHSBC STM32MP2

Introduction

Reference design for secure industrial IoT devices based on STM32MP25

  • Single Board Computer based on solderable, pin-compatible DHCOS STM32MP25 SOM
  • Industrial grade, 10+ years available
  • Mainline Linux support (also for Vivante GPU)
  • Security Features e.g. Secure Boot / Storage
  • Connectivity: Gbit Ethernet, WiFi/BT
  • Multimedia: 3D GPU, display, video, camera
  • STPMIC25 supports low power modes

Technical Details

  • STM32MP255C
    • 2x ARM Cortex-A35 with 1.2 GHz
    • 1x ARM Cortex-M33 up to 400 MHz

  • PMIC STPMIC25D
  • LPDDR4 32-bit 4 Gbyte @ 1200 MHz
  • eMMC Flash 16 Gbyte
  • NOR Flash 4 Mbyte, Quad SPI interface
  • EEPROM 4 kbyte
  • microSD socket
  • RTC temp. compensated RV-3032-C7
  • USB Host 1x type A, 2.0 high-speed
  • USB Type-C 1x USB-C 3.2 Gen 1x1 with DisplayPort alt. mode support
  • WiFi / Bluetooth
    • Tri band 2.4 GHz, 5 GHz and 6 GHz for IEEE802.11a/b/g/n/ac/ax
    • Bluetooth® v5.4 BR/EDR/LE
    • Antenna: U-FL connector
  • Ethernet 2x 10 / 100 / 1000 Mbit/s, IEEE 802.3-compliant
  • LVDS 1x Dual Link, 2x 4-lane LVDS connector
  • MIPI-CSI2 1x 2-lanes connector
  • TPM (Trusted Platform Module)2.0 device ST33KTPM2I
  • Push-Buttons Power and reset
  • Battery Socket CR1216, CR1220 and CR1225
  • Boot Mode 4 bit boot mode switch
  • Debug Interface JTAG interface via tag-connect
  • Supply 5 VDC, USB Type-C power supply port
  • Dimensions 85 x 56 mm
  • Raspberry Pi 40-pin Expansion
    • 2 x UART
    • 1 x I2C
    • 1 x I2S
    • 1 x SPI
    • 2 x PWM
    • 2 x CAN
    • up to 28 x GPIOs

Product Change Notifications (PCN)

IMPORTANT INFORMATIONS

  • The DHSBC DisplayPort functionality has not yet been implemented at this time. The test image is a headless image. If you want to connect a display, please contact DH electronics. We can offer a 10" LVDS test kit, or you can connect your own LVDS display and we will assist with implementation.

Documentation

Design Files

Software

Note: Please use dh-stm32mp25-dhcos-dhsbc.yml configuration.
Note: Currently, for the DHCOS STM32MP2, we use the 'meta-dhsom-stm32-wip-bsp' (work in progress) layer. The STM32MP2 will later be integrated into the meta-dhsom-stm32-bsp layer.

Useful instructions

Setup new board and install image files via USB (dfu and ums mode) / U-Boot recovery via DFU

How to connect to WiFi network

Establish connection
$ wpa_passphrase "SSID" > /etc/wpa_supplicant.conf
-> In the next step, please enter the password
$ rfkill unblock all
$ wpa_supplicant -B -i wlansom0 -c /etc/wpa_supplicant.conf
Disconnect
$ ip link set wlansom0 down

Use GPIOs

To list available GPIOs, use the gpioinfo command:
$ gpioinfo
       gpiochip0 - 16 lines:
       line   0:       "DHSBC_HW-CODE_0"       input consumer="kernel"
       line   1:       "DHSBC_HW-CODE_1"       input
       line   2:       "DHSBC_HW-CODE_2"       input
       line   3:       "PA3"                   input
       line   4:       "DHCOS-E"               input
       line   5:       "DHCOS-J"               input
       line   6:       "PA6"                   input
       line   7:       "PA7"                   input
       ...
To set a GPIO as Output-High:
$ gpioset "LABLE"=1
To set a GPIO as Output-Low:
$ gpioset "LABLE"=0
To get current state of a GPIO:
$ gpioget "LABLE"

Configure systemd network configuration

Find configuration files:
find /usr -name \*wlansom0\*
find /usr -name \*ethsom0\*
find /usr -name \*ethsom1\*
systemd network configuration: