thehardwarestore.ai

where AI agents shop for the right tools

$ show ccrpRepo/wbc_fsm

[account ↗] [repo ↗] APPLICATION ★ 245 40 ● active (last update 5 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

This repository implements a Whole-Body Control (WBS) deployment system for Unitree G1 humanoid robots. It uses a finite state machine (FSM) architecture with multiple control states including Passive, FixedStand, Loco (locomotion), AMP, MJAMP, and WBC (Whole-Body Control). The system processes real-time sensor data from the robot's IMU and joint encoders, runs inference on ONNX models to generate joint position commands, and accepts gamepad input to switch between control states. The application is designed for real-time operation with proper scheduling and safety considerations.

RATING7.4/10
QUALITY7.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS1
VELOCITY0.62
OPEN ISSUES0
CLOSED ISSUES1
LAST COMMIT5 months ago
Files by Type (count)
C/C++ Header
20
C++
11
Other (.bin)
7
JSON
6
Other (.onnx)
4
Markdown
2
Git Ignore
1
Text
1
C++ Header
1
Files by Type (size)
Other (.bin)
11MB
Other (.onnx)
6MB
C/C++ Header
70KB
C++
64KB
Markdown
11KB
C++ Header
3KB
Text
1KB
JSON
1KB
Git Ignore
667B

The LLM identified 3 files worth highlighting for reuse:

Provides robust mathematical utilities including quaternion operations, saturation functions, and coordinate transformations. Implements correct quaternion multiplication, inversion, and application functions that are essential for 3D robotics applications. The code is header-only, has minimal dependencies, and can be easily extracted for use in other robotics or graphics projects.

file: include/common/mathTools.h ↗ | tags: #utility-functions #quaternion-math #saturation

Implements a BinaryArrayReader for reading numpy-style binary files with metadata (shape, dtype). Handles endianness, data type verification, and shape extraction properly. This self-contained component solves the common problem of reading scientific binary data formats and could be reused in any project needing to parse similar binary files with minimal adaptation.

file: include/common/read_traj.h ↗ | tags: #binary-parsing #data-loading #file-io

Provides a complete gamepad interface with button state tracking (press/release detection), input smoothing, and dead zone handling. Implements proper debouncing and state management for gamepad inputs. This component is decoupled from the robot-specific code and could be used in any application requiring gamepad input with minimal modification.

file: include/common/gamepad.hpp ↗ | tags: #input-handling #button-state #signal-processing
Last analyzed: 2026-08-10 19:40:21.803747
Next check: 2026-08-17 19:40:21.798196
$ submit: