GELLO is a general, low-cost teleoperation framework for robot manipulators. It uses a Dynamixel-based leader device to control various follower robots (Franka FR3, YAM, UR, xArm, Panda) in real-time via ZMQ-based distributed architecture. The system supports both simulation (MuJoCo) and real hardware, includes gravity compensation (FACTR) for YAM robots, and provides data collection pipelines for imitation learning. It also offers ROS2 integration for Franka FR3 with custom joint impedance controllers and gripper managers. The codebase is configuration-driven via YAML files and demonstrates strong engineering practices with pre-commit hooks, CI workflows, and reusable abstractions for robots, agents, and cameras.
This repository accompanies the VR-NeRF Eyeful Tower dataset (SIGGRAPH Asia 2023), providing the full software stack for capturing, processing, and reconstructing high-quality HDR images from a robotic multi-camera rig. The hardware consists of 14 Sony A1 cameras mounted on a PAL TIAGo mobile base, controlled via a ROS2 node (EyefulController) that orchestrates drive sequences, dual-exposure bracketing, and pose recording. A Godot-based remote control app (Commandly) offers teleoperation, SLAM mapping, capture management, and status monitoring via ROS# and SSH. The processing pipeline includes RAW debayering, HDR merging (PPNE, Debevec, Max), white balance correction, downscaling, JPEG export, and automated Metashape photogrammetry (alignment, dense cloud, mesh, texture) with COLMAP export for NeRF training. The dataset itself (22 indoor scenes, 4.4 TB) is hosted on AWS S3 and includes HDR EXR images at multiple resolutions, camera calibration, and COLMAP reconstructions. While the primary output is a research dataset, the repository contains substantial application-level code: a camera driver library abstracting the Sony Camera Remote SDK, a ROS2 sensor validation node (IMU, LiDAR), and a full-featured Godot UI. These components are tightly coupled to the specific hardware (Sony A1, PAL TIAGo, Ouster LiDAR, Xsens IMU) and proprietary dependencies (Sony SDK, Metashape, LibRaw). The pipeline scripts are parameterized and can be run individually, but require manual environment setup and specific directory structures. The code is functional and achieves its research goals, but is not designed for general reuse without significant adaptation.
This repository provides the firmware and desktop tools for Petoi's quadruped robots (Bittle, Nybble, Chero). The core is an Arduino-based firmware (OpenCat.ino) running on ATmega328P (NyBoard) that handles servo control, gait generation, IMU integration, sensor processing (IR, ultrasonic, gesture, voice), and skill execution via pre-programmed motion sequences. A Python desktop application (pyUI) offers firmware upload, joint calibration, skill composition, and debugging. A Python serial API (serialMaster, OpenCatPythonAPI) enables scripting robot behaviors. The architecture is monolithic firmware with conditional compilation for multiple hardware variants and sensor options. While the project has a large user base and extensive documentation, the codebase shows signs of technical drift: it is explicitly legacy (development moved to OpenCatESP32), relies on outdated libraries, has duplicated code (e.g., three copies of IRremote), and uses global state and hardcoded paths. The skill system and serial protocol are well-defined patterns, but overall reusability is limited by tight coupling to specific hardware and board versions.