rdk-hardware

Provides per-board hardware specifications and interface facts for six D-Robotics RDK boards.

3|Updated Aug 6, 2026
One-click install
npx skills add https://github.com/D-Robotics/rdk-skills --skill rdk-hardware-d-robotics
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: rdk-hardware
Source: https://github.com/D-Robotics/rdk-skills/tree/main/skills/rdk-hardware
Command: npx skills add https://github.com/D-Robotics/rdk-skills --skill rdk-hardware-d-robotics

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? RDK boards (X3, X5, Ultra, S100, S100P, S600) differ in pinouts, IO voltage, CAN type, power LEDs, default IPs, and OS lines, so answers recalled from memory or copied across boards are frequently wrong. This Skill grounds every hardware answer in official D-Robotics documentation and forces board confirmation before quoting specs. ## Core Features & Use Cases - Six-board spec matrix: TOPS, RAM, BPU architecture, model format (.bin vs .hbm), power requirements, LED meaning, IO voltage, CAN type, and default IP per board, with a deterministic lookup script (board_specs.py). - Subsystem deep-dives: 40PIN/GPIO wiring rules, I2C/SPI/UART/PWM buses, CAN (SocketCAN vs MCU-domain CANHAL), camera, display, network, thermals, and system paths via reference documents. - Live hardware probing: hw_probe.sh scans /dev and /sys for actual I2C/SPI/UART/CAN/GPIO interfaces and thermal data, returning structured JSON with off-platform detection. - Use Case: A user asks why ip link set can0 up fails on an S100 — the Skill explains S100 CAN is MCU-domain via CANHAL (only X5 has SocketCAN) and routes frame send/receive to the peripheral cookbook skill. ## Quick Start Ask the agent what the hardware differences are between RDK X5 and S600, including CAN support, IO voltage, and default network IP.

Frequently Asked Questions about rdk-hardware

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Are the 40-pin GPIO headers the same across all RDK boards?▼

No. The 40-pin header is physically Raspberry-Pi-compatible but GPIO numbering differs, so RPi pin numbers must not be reused. S600 has no 40-pin header at all and uses 1.8V IO on self-locking connectors instead of 3.3V.

How do I use CAN bus on the RDK S100?▼

S100 CAN is in the MCU domain via the CANHAL library, so there is no can0 network device and ip link commands do not apply. Only the RDK X5 supports Linux SocketCAN (can0 via TCAN4550); X3 and Ultra have no CAN.

What are the default username, password, and IP address for RDK boards?▼

X5/Ultra use root/root with sunrise also present; S100/S100P/S600 set both sunrise/sunrise and root/root. Default static IP is 192.168.1.10 on X3 (pre-2.1.0) and Ultra, and 192.168.127.10 on X5 and S-series eth1.

Can I copy S100 commands and paths directly to the RDK S600?▼

No. S600 runs Ubuntu 24.04 with TROS Jazzy at /opt/tros/jazzy/ and tros-jazzy-* packages, while S100 uses Ubuntu 22.04 with Humble. S600 also differs in IO voltage, connectors, and TOPS, so paths and commands must not be copied verbatim.

Why is my RDK X3 showing a red LED after power-on?▼

A red LED on X3 is the normal power-OK indicator, not a fault; X5 and S-series boards use green power LEDs instead. Ensure a 5V/3A supply is used, since powering from a laptop USB port causes brown-outs and reboot loops.

Can a .bin model compiled for RDK X5 run on S100 or S600?▼

No. X3/X5/Ultra use .bin models while S100/S100P/S600 use .hbm, and artifacts never cross BPU architectures. Even X5 (bayes-e) and Ultra (bayes) .bin files are not interchangeable; models must be recompiled per target march.