Open Source RoboticsRobots, software & learning

ODRI Power Board

Robot / hardware build

Power-distribution/switching circuit and incomplete STM32 control/telemetry firmware design reference. [1] [2] [5] [4] [6]

Build & first use →Official websiteUpstream build guide

For
Robotics developers with electronics/CAD and configuration expertise [1] [2] [5] [4] [6]
Cost
No current cost or bill of materials established yet.
Source rights
Named licenses are documented by part. Review licenses
Unknowns
host computer, operating system not fully established. Review gaps

Source researched · Not tested by us
Sources checked · Research details

Licenses & related hardware

Requirements · Research details and dates

On this page

Overview

The ODRI Power Board is a robot power-distribution and switching design with a circuit schematic and STM32 firmware. Its README lists load switching, inrush limiting, telemetry and shutdown features. The contribution available for investigation is the circuit and source implementation; those feature descriptions are not evidence that all protective behavior is complete or tested. [1] [5] [6]

Is this for you?

Known limitations
  • README command protocol explicitly not implemented and sensor packet undocumented.
  • main.c contains sensor frame/DMA exchange but undervoltage threshold 0, unfinished energy units and no applied shutdown action from computed flags in inspected loop.
  • 40 A 32 V switching and protection claims not load tested; do not treat flags/computed CRC as protective operation.

Editorial assessment of bounded source evidence; no runtime, fit, manufacturing or compatibility proof.

[1] [2] [5] [4] [6] · Editorial assessment

What you need

Dependencies
  • STM32CubeIDE project firmware/powerboard; matched STM32 board and SWD programmer
  • XT30 power ports, selected external ON/OFF configuration and SPI host interface

[1] [2] [5] [4] [6]

Tools
  • STM32CubeIDE for the documented firmware/powerboard project; no build performed

Source-documented interface/tooling only; no native CAD opening, build, wiring or powered compatibility test.

[1]

Hardware & parts

Hardware configuration

Power-distribution/switching circuit and incomplete STM32 control/telemetry firmware design reference.

Editorial assessment of bounded source evidence; no runtime, fit, manufacturing or compatibility proof.

[1] [2] [5] [4] [6] · Editorial assessment

Actuators
  • No complete actuator contribution; component/design reference used with separate robot hardware

[1] [2] [5] [4] [6]

Assembly & first use

Open the upstream getting-started guide [1] [2] [5] [4] [6]

  • Inspect legacy KiCad schematic and power/switch connections as design reference.
  • Read full main.c against README and resolve SPI commands, units, thresholds/shutdown before integration.
  • Open STM32CubeIDE project for source investigation; no compile/flash/load test performed.

Editorial assessment of bounded source evidence; no runtime, fit, manufacturing or compatibility proof.

[1] [2] [5] [4] [6] · Editorial assessment

Cost

No current, complete configuration-specific build cost has been established for this profile.

3D preview

Preview not available yet. No hosted preview has been prepared for the configuration described in this profile. Inspect the linked sources and their reuse terms; a manufacturing-ready assembly has not been established by this preview status.

Project notes

Match power and switch wiring to the selected design

The README identifies an SWD programming connector, SPI slave connector, XT30 power input/output connections and external ON/OFF switch terminals. It distinguishes a normally closed OFF switch from a normally open ON switch, and describes a different jumper arrangement when using only onboard buttons. Treat those as source-specific wiring details, not a universal connection recipe or a verified protective circuit. [1]

The original legacy KiCad schematic was retrieved and matched to its pinned Git identity. It supplies actual circuit source rather than only a board photograph. No native schematic load, full net reconstruction, PCB design-rule check, current capacity, thermal behavior or electrical protection test was performed. The README's 40 A/32 V figure remains an upstream claim, not a qualified operating envelope established here. [1] [5]

Read the implementation beyond the incomplete README

The README leaves the sensor packet undescribed and says commands are not implemented. The sampled spi_com.c contains a CRC helper, but that is not the entire firmware: the inspected main.c prepares a twelve-byte sensor frame, fills voltage/current/energy bytes, computes CRC and starts a DMA SPI exchange. It also copies received bytes into a command frame. Describing the release as having no SPI code would therefore be inaccurate. [1] [4] [6]

The same source leaves important behavior unfinished. Its undervoltage threshold is initialized to zero, the energy calculation has an explicit unresolved-units comment, and the inspected loop computes overcurrent/undervoltage flags without applying a shutdown action from those flags. Copying a command frame does not implement a documented command protocol. These limits must be resolved before relying on remotely configured limits, telemetry units or protective shutdown. No claim is made that every other source path has been audited. [6]

Use the project as a bounded design reference

The documented software route is opening firmware/powerboard in STM32CubeIDE. Begin with the selected circuit, MCU project and full main loop, then reconcile the SPI packet, units, thresholds and switch behavior against the intended host and load. An IDE project opening or a successful CRC calculation would not establish protection or safe power switching. No compile, flash or powered experiment was performed. [1] [4] [6]

The repository carries BSD-2-Clause; STM32 dependencies and bought-in components retain separate terms. A complete current delivered build cost was not established, including fabrication, power connectors, tools, host interfaces and delivery/tax. This is an incomplete circuit/firmware reference, not a commissioned robot power controller. [2]

What we checked

Pinned source and selected artifact structure review only; no dependency installation, upstream build, native CAD/kernel/fit/strength validation, fabrication, wiring, calibration, simulation, powered operation or performance testing. Original archives stay private.

Not yet established

  • Requirements: operating system, host computer

Updates

Upstream last updated
Not established
Latest release
Not established
Profile updated
Nov 1, 2026
Sources last checked
Nov 1, 2026
Next review
Dec 1, 2026
Reviewed revision
188c264

Source files and licenses

Distinct inspectable robotics design reference with bounded initial inspection route; limitations/rights explicit.

LayerAvailability / license
electronicsavailable · BSD-2-Clause
ActuallegacyKiCadsource inspected, notelectricalclearance. [5] [2]
firmwareavailable · BSD-2-Clause
Rootnotice;STM32thirdpartyrightsseparate; incompleteprotocol/protectionexplicit. [6] [2]
documentationavailable · BSD-2-Clause
Rootprojectnotice, notperformanceproof. [1] [2]

Outside the selected contribution; no separate released layer claimed.

References

Each source links to the exact revision we read. “Used for” shows where this page relies on it.

Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5

Change history