ExoMy
Based on published sources · Not tested by us ·
Overview
Six-wheel printed rover with separately preserved build files and ROS software; the reviewed default software uses ROS Melodic and requires per-robot calibration. [S001]
ExoMy is a printed six-wheel rover whose purchasing list specifies six continuous-rotation drive servos, six modified steering servos, a Raspberry Pi 4 Model B, a camera and a PWM servo HAT. It is a hands-on assembly and calibration project, with mechanical files, electrical drawings and a parts spreadsheet in the v1.0.2 release. The saved release archive passed a file-integrity check; this review did not print or assemble it. [S014] [S015]
Specifications
| Detail | Description |
|---|---|
| Type | Printed six-wheel rover with independently driven and steered wheels. Reported by source [S007] [S015] · Checked 2026-10-01 |
| Intended users | Makers and educators comfortable with printing, wiring and Linux configuration Editorial assessment [S001] · Checked 2026-10-01 |
| Assembly | Not known |
| Calibration | Map PWM channels, adjust drive-neutral potentiometers and configure steering neutral positions before installing wheels. Reported by source [S007] · Checked 2026-10-01 |
| Operating system | Not known |
| Computer needed | Not known |
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
A parts spreadsheet is a starting point for the budget
The preserved spreadsheet has a cached total of 514.5402, while many printed parts have blank prices. Its extracted price column does not identify a currency, so that value is not presented as a current euro or dollar build cost. The purchasing guide separately calls for a LiPo charger, display, keyboard, mouse and assembly tools, and warns that substituted parts are the builder’s responsibility. The spreadsheet also includes a gamepad-related line even though the guide lists a gamepad among additional items; reconcile the list before ordering to avoid double counting. No complete current supplier quote was obtained. [S005] [S015]
The listed power configuration uses a 3S 3000mAh LiPo and two DC/DC converters. Printing, wiring and electronics assembly remain part of the project, even when all purchased parts are available. [S007] [S014] [S015]
The preserved default software is ROS 1
ExoMy’s control software is in a separate repository. The inspected Dockerfile starts from ros:melodic, installs Python dependencies and uses a Node.js 12 setup script for its web application. The main wiki guide describes a Raspberry Pi OS Buster-era setup. Docker does not establish compatibility with every current host, camera stack or package mirror; this review did not build the image. [S006] [S010] [S011]
The wiki also describes a 64-bit option and a distinct ros2/foxy software branch. Its ROS2 page explicitly lists web control as not working. Do not combine that branch’s instructions with an assumption that the ROS1 web interface will work unchanged. Select and record one software branch, OS image and camera configuration before following the calibration guide. The ROS2 branch was not installed or tested here. [S008] [S009]
Calibrate the assembled robot before fitting the wheels
The integration guide maps each motor’s PWM channel into the local config/exomy.yaml file. That file is intentionally ignored by Git because the mapping varies between robots. It then uses separate scripts for drive-neutral and steering-neutral calibration: continuous-rotation drive servos need their potentiometers adjusted until the commanded neutral signal actually stops motion. Wheel installation comes after those steps. [S007]
The same guide places maximum-steering calibration in a separate development branch. Check which scripts exist in the selected software revision rather than assuming every step belongs to the default release. The run script provides configuration, development and autostart modes, so retain the robot-specific configuration as part of the build record before relying on automatic startup. [S007] [S011]
The main design repository and separately inspected software repository contain GPL-3.0 license text. This does not establish matching source or reuse rights for every purchased component, external dependency or separately hosted wiki asset. The catalog preserves the available design and software evidence without claiming a tested build or current compatibility across the documented software variants. [S003] [S012] [S013]
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 · GPL-3.0 Root repository license and build artifacts; purchased components and separately hosted wiki are not asserted to share blanket licensing. [S003] [S004] [S014] |
| electronics | available · GPL-3.0 Root repository license and build artifacts; purchased components and separately hosted wiki are not asserted to share blanket licensing. [S003] [S004] [S014] |
| firmware | not found · License not fully assessed Matching source for purchased servo electronics not established. [S015] |
| software | available · GPL-3.0 Separate preserved software repository; third-party dependencies retain their licenses. [S012] [S013] |
| documentation | available · GPL-3.0 Root repository license and build artifacts; purchased components and separately hosted wiki are not asserted to share blanket licensing. [S003] [S004] [S014] |
This build profile selects no learned policy or training dataset.
References
Links identify the documentation and revisions used in this profile. Access dates record when each source was retrieved.
- S001 · esa-prl / 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 · esa-prl / project contributors
Repository revision and release metadata
Accessed 2026-10-01 · b14c7825f4f59d83aadb33e383c95b4a0b142dddSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S003 · esa-prl / project contributors
Repository license
Accessed 2026-10-01 · LICENSESource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S004 · esa-prl / project contributors
Pinned repository artifact inventory
Accessed 2026-10-01 · b14c7825f4f59d83aadb33e383c95b4a0b142ddd archive file inventorySource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S005 · esa-prl / project contributors
Preserved ExoMy wiki: Purchasing-Instructions.md
Accessed 2026-10-01 · wiki commit 516ea0ebdff822ef667a0e6a100d5427cb9c13d3 / Purchasing-Instructions.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S006 · esa-prl / project contributors
Preserved ExoMy wiki: Software-Instructions.md
Accessed 2026-10-01 · wiki commit 516ea0ebdff822ef667a0e6a100d5427cb9c13d3 / Software-Instructions.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S007 · esa-prl / project contributors
Preserved ExoMy wiki: Final-Integration.md
Accessed 2026-10-01 · wiki commit 516ea0ebdff822ef667a0e6a100d5427cb9c13d3 / Final-Integration.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S008 · esa-prl / project contributors
Preserved ExoMy wiki: software_instructions/ROS2.md
Accessed 2026-10-01 · wiki commit 516ea0ebdff822ef667a0e6a100d5427cb9c13d3 / software_instructions/ROS2.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S009 · esa-prl / project contributors
Preserved ExoMy wiki: Raspberry-OS-64-bit.md
Accessed 2026-10-01 · wiki commit 516ea0ebdff822ef667a0e6a100d5427cb9c13d3 / Raspberry-OS-64-bit.mdSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S010 · esa-prl / project contributors
Separate ExoMy software: docker/Dockerfile
Accessed 2026-10-01 · 00b9a3066e0bcedce5531ce17192ad6c00155bd0 / docker/DockerfileSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S011 · esa-prl / project contributors
Separate ExoMy software: docker/run_exomy.sh
Accessed 2026-10-01 · 00b9a3066e0bcedce5531ce17192ad6c00155bd0 / docker/run_exomy.shSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S012 · esa-prl / project contributors
Separate ExoMy software: LICENSE
Accessed 2026-10-01 · 00b9a3066e0bcedce5531ce17192ad6c00155bd0 / LICENSESource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S013 · esa-prl / project contributors
Separate ExoMy software: package.xml
Accessed 2026-10-01 · 00b9a3066e0bcedce5531ce17192ad6c00155bd0 / package.xmlSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S014 · esa-prl / project contributors
ExoMy v1.0.2 release archive inventory
Accessed 2026-10-01 · Saved release ZIP; CRC checked, not a geometry or build testSource notes
Source text inspected for the cited scoped claims; see profile claim notes.
- S015 · esa-prl / project contributors
Purchasing spreadsheet cell extraction
Accessed 2026-10-01 · v1.0.2 / BoM/PI_ExoMy_Purchasing_BoM.xlsx; cached values, no recalculationSource 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