🛠 Vérifier l'identité et la santé d'un CM3+ avec vcgencmd
Objectives
Before starting any project with a Compute Module 3+, you need to identify the board, verify that the firmware is recent enough, and check the power supply and temperature. Two documented pitfalls: the CM3+ requires an image/firmware dated November 2018 or later to function (datasheet RP-008163-DS §1) — an old CM3 SD card will refuse to boot; and thermal throttling kicks in at 80 °C on this module. The SoC is a Broadcom BCM2837B0 quad Cortex-A53 limited to 1.2 GHz, with 1 GB of LPDDR2.
Hardware
- CM3+ module (8/16/32/64 GB eMMC) or CM3+ Lite on a CMIO3 or equivalent carrier board
- HDMI display, USB keyboard, 5 V / 2.5 A minimum power supply (VBAT requires up to 3.5 W)
- Recent 32-bit Raspberry Pi OS image (Pi 3B+ images are suitable), flashed after November 2018
Full Code
# Identité matérielle
cat /proc/cpuinfo | grep -E 'Hardware|Revision' vcgencmd versionmap # date du firmware
# Santé électrique et thermique
sudo vcgencmd get_throttled # 0x0 = rien anormal
vcgencmd measure_temp # température du die (°C)
vcgencmd measure_volts core
vcgencmd get_mem arm && vcgencmd get_mem gpu
# Fréquence CPU réelle (doit plafonner à 1 200 000 000 Hz)
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
Expected Verification
vcgencmd versionmap displays a firmware date later than November 2018; get_throttled returns 0x0 at idle; measure_temp stays below 60 °C at idle; the CPU frequency rises up to 1.2 GHz. The board type (Revision) corresponds to a BCM2837B0 of the Pi 3B+ class.
Common Errors
- Reusing an SD card or eMMC from an old CM3: if the firmware dates from before November 2018, the CM3+ will not boot at all — this is the #1 pitfall listed in datasheet §1, you must re-flash a recent image.
- Interpreting
throttled=0x10000as a failure: bit 12 simply indicates a past undervoltage — check the cable and the 5 V power supply. - Expecting 1.4 GHz like on a Pi 3B+: the module is intentionally capped at 1.2 GHz by its power supply (datasheet §10).
- Looking for Wi-Fi or Ethernet on the module: the CM3+ has neither radio nor Ethernet controller, everything goes through the carrier board (single USB 2.0 bus).
- Confusing the die temperature (throttling limit 80 °C) with the maximum ambient temperature of the component (up to +80 °C in a ventilated case according to the datasheet).
Other tutorials for this board
Code examples for this board
clignotante.pyPythonbouton-gpio.pyPythoncapteur-i2c.shBashsurveillance-temperature.shBashcapteur-dht11.pyPythonservo-pwm-sysfs.shBash