Bobble-Bot
Based on published sources · Not tested by us ·
Overview
Two-wheel balancing robot with ROS 1 control and Gazebo simulation sources; physical construction uses custom motor drives, a Pi CAN shield and power distribution board. [S001] [S005] [S006]
Bobble-Bot is a two-wheel balancing robot whose released controller repository includes ROS 1 balance logic, Gazebo simulation and analysis tools. The maintainer recommends starting with simulation. The physical BB2 design adds a Raspberry Pi 3B, custom CAN shield, power distribution board and two Chupacabra servo drives; those are additional reproduction requirements, not components supplied by the simulator. [S001] [S005] [S006]
Specifications
| Detail | Description |
|---|---|
| Type | Two-wheel inverted-pendulum balancing robot. Reported by source [S001] · Checked 2026-10-01 |
| Intended users | ROS users studying balance control and experienced builders able to reconcile custom electronics Editorial assessment [S001] · Checked 2026-10-01 |
| Assembly | Printed structural components, heat-set inserts, custom electronics and fabricated cable harnesses. Reported by source [S005] [S006] [S007] [S008] · Checked 2026-10-01 |
| Calibration | Keep simulation controller gains separate from physical motor, encoder, IMU and safety-board commissioning. Editorial distinction from InSim configuration and physical hardware description; no commissioning performed. Editorial assessment [S005] [S009] · Checked 2026-10-01 |
| Operating system | ROS 1 Melodic environment for the documented simulator Other ROS versions are not officially supported in the selected README; current installation not tested. Reported by source [S001] · Checked 2026-10-01 |
| Computer needed | ROS/Gazebo workstation for simulation; Raspberry Pi 3B for the documented physical robot. Reported by source [S001] [S006] · Checked 2026-10-01 |
3D preview
Preview not available yet. A model has not yet been prepared and approved for display on this page. This does not mean the project lacks CAD files; see Source files and licenses for the reviewed source availability.
Assembly and use
Preserve both simulation repositories
The documented source build uses ROS Melodic, Gazebo, Hector Gazebo plugins and catkin, with both bobble_controllers and bobble_description cloned into one workspace. This review preserved the controller revision recorded in the profile and description commit b7db2607759d256b1bcf729ab943d1794c2774d2. They were not built or tested together. The README's generic clones and unpinned Python packages do not constitute a locked environment. [S001] [S002] [S010]
Keyboard control requires its terminal to have focus and uses the space bar to activate the balance controller. The upstream impulse-response example records a ROS bag, then generates tilt and velocity plots. That gives readers a defined simulation experiment to investigate; this review did not execute it or reproduce the published plots. [S001]
Simulation parameters are not hardware limits
config/bobble_sim_balance_control.yaml selects BalanceSimController with InSim: true, a 500 Hz control-loop setting, 0.05 m wheel radius and starting/maximum tilt settings of 10/20 degrees. These are source configuration values. They do not establish a measured loop rate, physical stability envelope or tested stopping behavior. The file's IMU name is bno055, while the physical BOM names a DFRobot SEN0140; preserve the distinction when mapping a real device. [S006] [S009]
The documented Docker graphics route historically required an NVIDIA GPU; its headless route did not require graphics. The container payload and its current compatibility were not validated here. [S001]
The historical BOM is useful but not a complete quote
The preserved BB2 workbook lists printed part numbers, fasteners, a 4S 5000 mAh battery, two Turnigy Multistar 4822-690kV motors, wheel encoders and the custom boards. Several board and encoder prices are blank. Some fastener prices are for packs rather than quantities consumed, and cell I26 sums only H20:H26. That subtotal is not the cost of a complete robot. No current regional availability or delivered total was verified. [S006]
The six-page assembly document identifies mirrored actuator parts, the central bulkhead, electronics mounts and IMU placement. Its exploded actuator drawing connects the wheel, motor, AS5047D sensor and Chupacabra drive. These instructions help interpret the parts list, but they do not by themselves supply complete editable designs and firmware for every custom board. [S007]
Reconcile the wiring documents before procurement
The cable-harness document identifies power, CAN, encoder, IMU and PDU-enable connections. It also contains discrepancies that should be resolved against the actual hardware revision: its overview labels the motors TACON while the BOM and assembly document specify Turnigy Multistar. On page 5, the IMU harness parts list names connector 5023800900, while the four-pin drawing labels it 5023800400. This review preserves both readings and does not choose a replacement part or validate a wiring procedure. [S006] [S007] [S008]
The controller and description repositories carry BSD 3-Clause notices. The external BOM and assembly files are available to read, but their redistribution terms and a complete matching hardware source set were not established. The profile therefore covers a useful open simulation/control project with documented physical hardware, rather than claiming a fully reproduced or commercially qualified build. No installation, fabrication, wiring or balancing test was performed. [S003] [S005] [S011] [S012]
Cost
No current, complete configuration-specific build cost has been established for this profile.
Source files and licenses
Available project sources support research coverage; complete build and commercial qualification remain separate.
| Layer | Availability / license |
|---|---|
| mechanical design | available · License not fully assessed Robot description/model repository preserved under BSD-3-Clause software notice; manufacturing completeness and hardware-specific rights unresolved. [S010] [S011] |
| electronics | not found · License not fully assessed Custom Chupacabra, CAN shield and PDU are documented, but complete matching editable board source and device firmware were not established by this review. [S005] [S006] [S008] [S012] |
| firmware | not found · License not fully assessed Custom Chupacabra, CAN shield and PDU are documented, but complete matching editable board source and device firmware were not established by this review. [S005] [S006] [S008] [S012] |
| software | available · BSD-3-Clause Balance controller and simulation software; external ROS, Gazebo and dependencies retain separate terms. [S001] [S003] |
| documentation | available · BSD-3-Clause Repository documentation only; separate Hackaday PDF/BOM rights were not established. [S001] [S003] |
Selected feedback-control and simulation workflow needs no pretrained policy or dataset.
References
Links identify the documentation and revisions used in this profile. Access dates record when each source was retrieved.
- S001 · super-owesome / project contributors
Upstream project overview
Accessed 2026-10-01 · README.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S002 · super-owesome / project contributors
Repository revision and release metadata
Accessed 2026-10-01 · 07ea4f9f1282d4e2cf5cc423aee7b5e0621a10c7Source notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S003 · super-owesome / project contributors
Repository license
Accessed 2026-10-01 · LICENSESource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S004 · super-owesome / project contributors
Pinned repository artifact inventory
Accessed 2026-10-01 · 07ea4f9f1282d4e2cf5cc423aee7b5e0621a10c7 archive file inventorySource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S005 · super-owesome / project contributors
Maintainer hardware project and build log
Accessed 2026-10-01 · Components and Build a Bobble-Bot log, September 2019Source notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S006 · super-owesome / project contributors
BB2 bill of materials
Accessed 2026-10-01 · bb2a.csv!A1:I36; extracted cells and formulasSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S007 · super-owesome / project contributors
Bobble-Bot assembly instructions
Accessed 2026-10-01 · Six pages; actuator diagram page 4 visually inspectedSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S008 · super-owesome / project contributors
Bobble-Bot cable harnesses
Accessed 2026-10-01 · Revision 2.1, September 29 2019; six pages; connector discrepancy on page 5 visually inspectedSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S009 · super-owesome / project contributors
Simulation controller configuration
Accessed 2026-10-01 · 07ea4f9f1282d4e2cf5cc423aee7b5e0621a10c7 / config/bobble_sim_balance_control.yamlSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S010 · super-owesome / project contributors
Robot description README.md
Accessed 2026-10-01 · b7db2607759d256b1bcf729ab943d1794c2774d2 / README.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S011 · super-owesome / project contributors
Robot description LICENSE
Accessed 2026-10-01 · b7db2607759d256b1bcf729ab943d1794c2774d2 / LICENSESource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S012 · super-owesome / project contributors
Maintainer downloadable file index
Accessed 2026-10-01 · Preserved file listingSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
Correction guidance · Discussion is not enabled · Profile format 0.6.0-draft.1