Skip to content

XM10 Extension Module SDK v2.3.1

Release date: 2026-07-18 | Target HW: Rev 1.1 / Rev 2.0 | KIT H10 FW: v2.3.0+


At a Glance

A patch release focused on boot/communication stability and SDK usability. No new examples or APIs.

  • More stable boot with the GRF (plantar-pressure) sensor module attached — mitigates the repeated reboots that could occur when powering on with the module plugged in. Dropped samples were also eliminated.
  • Numerous stability improvements across control, communication, and storage — CAN-FD error recovery, USB cable detach/reattach, and log/settings storage.
  • Extract the ZIP, import into CubeIDE, build — fixed packaging defects (a missing header path and missing build scripts) that made the build fail right after import, and cleaned the build up to 0 errors / 0 warnings.
  • Version reporting stabilized — fixed an issue where building the ZIP project rewrote the firmware version to 1.0.0.0. The release version (2.3.1) is now always preserved.

⚠️ Behavior Change — Hip Torque Units

XM.status.h10.leftHipTorque / rightHipTorque now carry joint torque in Nm instead of motor current in A.

  • If your code converted the value with × 0.085 × 18.75, remove that conversion and use the field directly.
  • Ex.31 (Friction DOB) / Ex.34 (Gait Log) are updated accordingly in this release.

Removed API

XM_GetUserPSRAM() / XM_GetUserPSRAMSize() have been removed from the public API. For large buffers, use XM_GetUserWorkspace() (200KB) — see 07. Memory Regions.


Download

File Target board
Rev1.1.zip XM10 Rev 1.1 (early development board)
Rev2.0.zip XM10 Rev 2.0 (latest board — includes Ethernet / RTC)

Download the ZIP matching your board revision. An RJ45 Ethernet port means Rev 2.0; no RJ45 means Rev 1.1.

Release Attachments

The bootloader, KIT H10 firmware, and contents files are identical to v2.3.0 — for convenience, the same files are also attached to the v2.3.1 release (AGR_Bootloader.bin / SUIT_H10_Binary_20260716.zip / SUIT_ContentsFiles.zip). If you already installed/updated with v2.3.0, no further action is needed.

Prerequisites (now documented)

The build's final step (creating the upload .bin) uses Python. If you haven't installed it yet, follow Software Setup and install Python 3.10+ (must be on PATH).


Details

  • GRF sensor-module boot stability — mitigates the repeated reboots that happened when powering on with the module attached (the root cause is in the board's power circuitry).
  • GRF data reception — dropped samples eliminated.
  • CAN-FD stability — the bus now recovers on its own from error states.
  • USB stability — improved cable detach/reattach handling, and data with a wrong length is rejected.
  • Storage — log and settings storage is more reliable.
  • Control safety — safer input configuration in the limit-switch example (Ex.06), and stricter checks on sensor data and RTC time-setting values.
  • Project cleanup — removed unused duplicate build configurations and an unused-variable warning. CubeIDE build = 0 errors / 0 warnings.

Compatibility

Item Impact
User code (Control_Setup / Control_Loop) Mostly unchanged — but see ⚠️ above if you converted leftHipTorque/rightHipTorque yourself
XM_GetUserPSRAM family Removed — replace with XM_GetUserWorkspace()
Other API signatures No change
KIT H10 firmware · contents files Same as v2.3.0 — no update needed
Bootloader v1.1.0 unchanged — no reinstall needed
User data (USB storage logs, etc.) No change — data format compatible