NASA JPL Open Source Rover
This lab guides students through the electromechanical construction, embedded systems configuration, and software integration of a six-wheel mobile robotic platform modeled after NASA JPL Mars exploration rovers. Students assemble a passive rocker-bogie suspension system with a top differential pivot and four-wheel Ackermann steering driven by planetary gear motors and high-torque servos. In the electrical phase, learners populate custom printed circuit boards, wire multi-voltage DC power distribution buses with step-down switching regulators, and integrate digital current and voltage telemetry sensors. On the computing and controls side, students configure an embedded Linux single-board computer running the Robot Operating System (ROS 2), implementing closed-loop wheel velocity control with quadrature encoder feedback, I2C pulse-width modulation servo steering, packet serial motor controller communication, and gamepad teleoperation to evaluate mobile robot kinematics and off-road mobility.
Uploaded by demo on 2026-07-19 · ready · Electronics · Original source ↗
Files: parts_list_README.md · digikey_bom.csv · parts_list.csv · NSF_ATE_provenance.txt · open-source-rover_README.md · osr-rover-code_README.md · osr-rover-code_setup_rover_bringup.md · osr-rover-code_setup_rpi.md · osr-rover-code_setup_serial_config.md
Readiness checks
-
complete 2026-09-03 00:11 🛡 Cybersecurity: Review before networking · 7 findings 76 searches · 15 pagesview · PDF
-
failed 2026-09-02 19:02 Judge exceeded 10 iterations without producing judgment notes.
-
complete 2026-07-19 16:48 🛡 Cybersecurity: not checked 49 searches · 0 pagesview · PDF
Latest report — 2026-09-03 00:11
Readiness: NASA JPL Open Source Rover
Verdict: Ready with caveats · 2026-09-02 · est. parts cost $1,900–$2,400 Cybersecurity — software & network: Review before networking
The rover is buildable today, and it is in better shape than at the last check: both problems that headlined the 2026-07-19 report have cleared. The Molex 1726750613 power header, previously out of stock everywhere on a 36-week lead, is back in stock at DigiKey, and the PPTC021LFBN-RC socket that needed a substitute is stocked again at 25,733 pieces — so the substitute the last report recommended is no longer needed. Every other line of the custom-PCB bill of materials that was checked is Active and in stock. The verdict stays at Ready with caveats, but for new reasons. One BOM line does not resolve to a real product: the 12 V regulator is listed as "Pololu D24V50F12 (#2855)", and Pololu item #2855 is in fact a 12 V 2.2 A regulator, well under the 5 A this rover's own specification calls for — that has to be settled before ordering. Beyond that, the two biggest cost centres, the RoboClaw motor controllers and the entire goBILDA chassis, come from single vendors with no authorised-distributor fallback, and the Molex header is stocked at exactly one warehouse. The cost estimate is not directly comparable with the last report's $1,250–$1,480: this check prices more of the goBILDA bill and corrects a wrong price the last report carried for the 5 V regulator.
Action required
| Part | Problem | Recommended action |
|---|---|---|
| Pololu D24V50F12 (#2855) | New since the last report. The BOM line is self-contradictory. Pololu item #2855 is the D24V22F12, 12 V at 2.2 A (input 12.7–36 V) — not a "D24V50F12", and no product by that name appeared anywhere in this check. The rover's own spec for this rail is 12 V at 5 A. | Settle the identity on Pololu's site before ordering. The nearest evidence-backed part found, the 12 V 4.5 A regulator at $31.95, still falls short of the stated ≥ 5 A requirement, so it is not a clean drop-in. |
| goBILDA chassis (57 lines) | Single-vendor. Six representative part numbers spanning motor, servo, ServoBlock, wheel, beam and fastener all returned no match at DigiKey and no ECIA-authorised distributor. | Order direct from goBILDA and budget lead time; there is no distributor fallback. Apply for the educational discount if eligible. |
| Basic Micro RoboClaw 2x7A (x3) | Single-vendor and protocol-locked — the ROS driver depends on RoboClaw's proprietary packet-serial protocol, so no substitute is possible. | Order direct from Basic Micro; vendor page reads In Stock at $79.95. Buy spares if the budget allows. |
| Molex 1726750613 (x6) | Resolved since the last report, but DigiKey is the only distributor holding stock (Newark, ICC, Heilind and Avnet all show zero). | Order all six at once rather than in stages. |
| goBILDA 5203-2402-0027 encoder spec | The vendor page states 751.8 PPR at the output shaft and 530 oz-in stall torque; the lab's own snapshot records 537.7 PPR and 258 oz-in. | Re-derive the encoder counts from the vendor page before setting the ROS launch parameters, or odometry will be wrong. |
Cybersecurity — software & network
Review before networking — No advisories could be checked because nothing in the stack is version-pinned, and the rover ships with SSH enabled and an auto-starting service that accepts drive commands over the local network with no documented access control.
| Component | Version | How known | Support status |
|---|---|---|---|
| Ubuntu LTS 24.04 (Noble Numbat) - documented target image | 24.04 | inferred (The lab's setup notes say to flash the latest Ubuntu LTS with Raspberry Pi Imager and name Noble as tested (snapshot); no image file or checksum is pinned.) | supported until 2029-05-31 |
| Ubuntu LTS 22.04 (Jammy Jellyfish) - alternative tested image | 22.04 | inferred (Listed in the setup notes as a tested release (snapshot).) | supported until 2027-06-01 |
| Ubuntu LTS 20.04 (Focal Fossa) - alternative tested image | 20.04 | inferred (Listed in the setup notes as a tested release (snapshot).) | extended/LTS support only until 2030-04-23 |
| ROS 2 Jazzy Jalisco (robotics middleware) | jazzy | inferred (Setup notes state 'In what follows, we assume ROS 2 Jazzy' (snapshot); installed with an unconstrained 'apt install ros-${ROS_DISTRO}-ros-base', so no package version is pinned.) | supported until 2029-05-31 |
| nasa-jpl/osr-rover-code (ROS packages osr_bringup, osr_control, osr_interfaces, osr_gazebo) | 0.0.0 | read from project (ROS/osr_control/setup.py (fetched/05-setup.py) declares version='0.0.0'; the repository itself is cloned with a bare 'git clone', with no tag or commit pinned.) | — |
| ROS 2 dependency set declared in package.xml | not determined | unpinned (37 dependencies across four fetched package.xml manifests, none carrying a version constraint - ROS package manifests do not express versions, so what gets installed is whatever the apt repository serves that day.) | — |
| Python packages installed by pip (adafruit-circuitpython-servokit, ina260, RPi.GPIO, smbus) | not determined | unpinned (Installed by a bare 'python3 -m pip install adafruit-circuitpython-servokit ina260 RPi.GPIO smbus' in the setup notes (snapshot); no requirements.txt or lockfile exists in the project.) | — |
| System and build packages installed by apt (git, python3-rosdep, python3-pip, python3-colcon-common-extensions, raspi-config, ros-${ROS_DISTRO}-joy) | not determined | unpinned (Bare 'apt install' commands in the setup notes (snapshot); versions are whatever the OS repository serves.) | — |
| Basic Micro RoboClaw 2x7A motor-controller firmware | 4.2.8 | inferred (The setup notes record roboclawtest.py reporting 'USB Roboclaw 2x7a v4.2.8' (snapshot); the firmware itself was not fetched.) | — |
| Component | Finding | Severity | Fix available? |
|---|---|---|---|
| nasa-jpl/osr-rover-code (ROS packages osr_bringup, osr_control, osr_interfaces, osr_gazebo) | The rover's own control code is installed with a bare 'git clone' at no tag or commit, so each class gets whatever is on the default branch that day and a lab that worked last term may not build this term. | posture | Mitigation only - clone a tagged release or record the commit hash the class was built against |
| osr_startup.service / ROS 2 DDS networking | The rover boots straight into a systemd service that launches the ROS 2 stack, which listens on local-network UDP and multicast for discovery and for the drive-command topics /cmd_pwm and /joy; the lab's own documentation records no authentication or access control on those topics. | posture | Mitigation only - keep the rover on an isolated segment and never run it on an open or shared campus network |
| Python packages installed by pip (adafruit-circuitpython-servokit, ina260, RPi.GPIO, smbus) | Dependencies unpinned: 4 of 4 Python packages are installed by a bare pip command with no requirements.txt or lockfile, so two builds a year apart run different code and neither can be checked for known vulnerabilities. | posture | Mitigation only - pin the four packages in a requirements.txt and install from it |
| ROS 2 dependency set declared in package.xml | Dependencies unpinned: 37 of 37 across the four package.xml manifests, so the rover's ROS 2 software has no fixed, checkable version set and no advisory lookup is possible against it. | posture | Mitigation only - record the ROS 2 distro and the apt package versions used by the class, and rebuild from that record |
| SSH server on the Raspberry Pi | The build instructions turn on SSH at imaging time so the rover can be reached headless over Wi-Fi, which means any machine on the same network can attempt to log in; the credentials are chosen by the builder, so the strength of that login is entirely down to what the student typed. | posture | Mitigation only - put the rover on an isolated network segment, require a strong unique password or key-only login, and clear it with campus IT before connecting |
| Ubuntu LTS 20.04 (Focal Fossa) - alternative tested image | One of the three Ubuntu releases the lab documents as tested, 20.04 Focal Fossa, left standard support on 2025-05-31 and now receives security updates only through Ubuntu Pro / ESM, so a rover built on it stops getting ordinary patches. | posture | Yes - update to 24.04 |
| Udev rules installed to /etc/udev/rules.d/ | The setup installs udev rules granting world read/write (0666) on the serial and input devices, so any local account on the Pi can drive the motors or read the gamepad, not just the rover's own user. | posture | Mitigation only - narrow the udev rules to the rover's user or group instead of 0666 |
What this means for your lab
Nothing here is a known break-in bug - no vulnerability database covers this software in a way that could be checked, which is not the same as it being clean. The real issue is reach. The rover is built to be logged into over Wi-Fi by design, and once it boots it automatically starts a service that listens on the local network for the messages that make its wheels turn; the lab's documentation describes no password or permission check on those driving messages. In practice that means anyone else on the same Wi-Fi - a shared campus, dorm or lab network - may be able to reach the rover, and the only door with a lock on it is the SSH login whose password the student chose during setup. Treat the rover as an unprotected device on whatever network you put it on: give it its own isolated network or a dedicated access point rather than the main campus Wi-Fi, insist on a strong unique password (not the classroom default everyone shares), and talk to campus IT before it goes on an institutional network. Two smaller housekeeping points: the software is installed without any version pinning at all, so a build that works this term may behave differently next term and cannot be security-checked; and if you image with Ubuntu 20.04 rather than the documented 24.04, you are on a release that has stopped receiving ordinary security updates.
Not checked
- ROS 2 dependency set declared in package.xml (37 dependencies): ROS package.xml carries no version constraints, so there is no exact version to match against an advisory database; no OSV lookup was possible.
- Python packages installed by pip (adafruit-circuitpython-servokit, ina260, RPi.GPIO, smbus): Unpinned - the project states no version, and a guessed version would produce a meaningless result.
- System and build packages installed by apt: Unpinned - versions come from whatever the OS repository serves at build time.
- Basic Micro RoboClaw 2x7A firmware v4.2.8: Vendor embedded firmware; no public advisory database covers it.
- nasa-jpl/osr-rover-code application code: Source-only checkout with no registry release; no advisory database covers it.
- Ubuntu and ROS 2 packages as actually installed on the rover: Installed unpinned from apt at build time; only the platform release's support status could be checked, not the package set.
- ros jazzy: support status: version matches no release cycle on endoflife.date
Parts
1. Custom PCB bill of materials (DigiKey)
| Part | Spec/Package | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|
| C317C103K5R5TA7301 | 0.01 µF 50 V X7R radial, 5.08 mm | Active | 38,448 | $0.45 | DigiKey | $0.35 → $0.45 (+29%) |
| ESK107M050AG3EA | 100 µF 50 V radial can, 3.50 mm | Active | DigiKey: not published; Newark 858 | $0.36 | DigiKey / Newark $0.443 | new baseline |
| C322C104K5R5TA7317 | 0.1 µF 50 V X7R radial, 5.08 mm | Active | 14,701 | $1.23 | DigiKey | $0.94 → $1.23 (+31%) |
| ESK106M050AC3DA | 10 µF 50 V radial can, 2.00 mm | Active | 29,541 | $0.20 | DigiKey | prev. report priced the -AC3AA variant |
| STPS10L25D | Schottky 25 V 10 A, TO-220AC | Active | 2,758 | $2.66 | DigiKey | $2.51 → $2.66 (+6%) |
| 1N4148 | 75 V 300 mA, DO-35 axial | Active | 763,524 | $0.10 | DigiKey | price flat; stock 997k → 764k |
| 2N3906TA | PNP BJT, TO-92-3 | Active | 4,389 | $0.27 | DigiKey | flat |
| CF14JT / CD14ZT / CF18JT resistor group (9 values) | Axial carbon film, 0.25 W (68 Ω is 0.125 W), ±5% | Active (representative CF14JT4K70) | 139,905 | $0.10 | DigiKey | flat; 8 of 9 values not individually checked |
| MIC2937A-3.3WT | LDO 3.3 V 750 mA, TO-220-3 | Active | 603 | $3.02 | DigiKey | price flat; stock 360 → 603 |
| DC10CGKWA | 10-seg green bar graph, DIP-20 | Active | 857 | $4.69 | DigiKey | flat |
| 206-124 | SPDT slide DIP, 2.54 mm | Active | 7,714 | $2.34 | DigiKey | flat |
| C3920BAAAA | ON-OFF-ON toggle, panel mount | Active | 813 | $10.30 | DigiKey | flat |
| 696108003002 | 5x20 mm PCB fuse clip | Active | 32,135 | $0.64 | DigiKey | flat |
| 0233010.MXP | 10 A 5x20 mm glass fuse | Active | 1,319 | $1.56 | DigiKey | flat |
| TSW-104-07-F-T | 3x4 header, 2.54 mm | Active | 171 | $1.04 | DigiKey | price flat; stock 227 → 171 |
| PEC08SAAN | 1x8 header, 2.54 mm | Active | 8,488 | $0.52 | DigiKey (only stocking distributor) | $0.82 → $0.52; prev. "discontinued" not supported |
| PPTC102LFBN-RC | 2x10 female socket, 2.54 mm | Active | 3,820 | $1.32 | DigiKey | flat |
| SBH11-PBPC-D20-ST-BK | 2x20 shrouded header, 2.54 mm | Active | 28,699 | $0.66 | DigiKey | flat |
| B6B-PH-K-S(LF)(SN) | 1x6 JST PH header, 2.00 mm | Active | 29,733 (DigiKey) + 5 ECIA distributors | $0.28 | DigiKey | $0.27 → $0.28 |
| 0702462001 | 2x10 shrouded header, 2.54 mm | Active | 4,006 | $3.09 | DigiKey | price flat; stock 6,971 → 4,006 |
| PPTC021LFBN-RC | 1x2 female socket, 2.54 mm | Active | 25,733 | $0.27 | DigiKey (only stocking distributor) | was out of stock (11-wk lead) → now stocked |
| OSTTA024163 | 2-pos screw terminal, 5.08 mm | Active | 34,635 | $0.72 | DigiKey | flat |
| 1726750613 | 2x3 power header, 4.20 mm | Active | 3,734 | $2.74 | DigiKey (only stocking distributor) | was out of stock everywhere, 36-wk lead → now stocked |
| EDSTL130/24 | 1x24 terminal header, 5.00 mm | Active | 17,857 | $6.71 | DigiKey | $4.73 → $6.71 (+42%) |
| 0395016006 | 1x6 Eurostyle PCB header, 3.50 mm | Active | 9,324 | $2.46 | DigiKey | flat |
| 0395005006 | 1x6 Eurostyle plug, 3.50 mm | Active | 12,032 | $3.07 | DigiKey | flat |
2. Active modules, computing and power
| Part | Spec/Package | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|
| Raspberry Pi 5 | SBC, 40-pin GPIO, dual UART | Active | in stock | $60.00 | CanaKit | $59.99 → $60.00 |
| MicroSD card 32 GB | Class 10 UHS-I | Active | in stock | $10.25 | Camera Film Photo | new baseline |
| Basic Micro RoboClaw 2x7A (x3) | Dual 7.5 A brushed H-bridge, packet serial | In Stock (vendor page) | in stock | $79.95 | Basic Micro (IMC404) | $75.00 → $79.95 (+6.6%) |
| Adafruit PCA9685 (815) | 16-ch 12-bit PWM, I2C 0x40 | Active | in stock | $14.95 | Adafruit | flat |
| Adafruit INA260 (4226) | I2C current/power monitor, 15 A | Active | in stock | $9.95 | Adafruit | flat |
| Pololu D24V50F5 (#2881) | 5 V 5 A buck | Active | in stock | $32.95 | Pololu | prev. $18.95 was a different part; $32.95 is the corrected baseline |
| Pololu D24V50F12 (#2855) | 12 V 5 A buck required | BOM line does not resolve | — | — | see Action required | prev. priced $29.95 without catching the mismatch |
| DC power meter LCD panel | DC 6.5–100 V / 20 A panel meter | Active | in stock | $11.25 | DROK | $12.50 → $11.25 (−10%) |
| 4S LiPo battery | 14.8 V, 5000 mAh, 50C, XT60 | Active | in stock | $47.99 | RCBattery.com | $53.99 → $47.99 (−11%) |
| LiPo balance charger | IMAX B6-class, 80 W | Active | in stock | $28.80 | Porcupine RC | new baseline |
| Fireproof LiPo bag | Flame-retardant charging sack | Active | in stock | $8.99 | Zeee | new baseline |
| Gamepad + wireless adapter | Xbox Wireless Controller + USB adapter | Active | in stock | $76.55 | Rarewaves | new baseline |
3. Wiring, connectors and standoffs
| Part | Spec/Package | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|
| 18 AWG 2-cond. red/black | Primary DC power runs | Active | in stock | $0.14 | Missouri Wind and Solar | new baseline |
| 20 AWG 3-cond. | Servo and auxiliary power | Active | in stock | $1.75 | Tiny's LEDs | new baseline |
| 22 AWG 4-cond. | Encoder and serial signals | Active | in stock | $4.46 | DigiKey (Belden 88444) | new baseline |
| Adafruit 1988 | 40-pin GPIO ribbon, F-F | Active | in stock | $2.95 | Adafruit | new baseline |
| USB-C power pigtail | 5 V 5 A injection for RPi 5 | Active | in stock | $5.41 | eBay | new baseline |
| XT30 connectors (DFRobot FIT0586) | 15 A continuous, 5 pairs | Active | 8,800 | $1.90 | DigiKey | new baseline |
| JST-XH 4-pos encoder harness (x6) | 4-pos JST XH to 4x 1-pos TJC8, 300 mm | Active | in stock | $3.99 | RobotShop (ServoCity) | new baseline |
| Molex 0469920610 (x6) | 6-pin Mini-Fit receptacle housing | Active | 16,463 | $0.73 | DigiKey | new baseline |
| Molex 0039000077 (x36+) | Female crimp terminal | Active | 390,187 | $0.10 | DigiKey | new baseline |
| DuPont 2.54 mm housings + pins | 3-pos x4, 4-pos x8, 44+ pins | Active | in stock | $5.26 | Banggood (620-pc kit) | new baseline |
| 3.5 mm female bullet connectors (x12) | With insulating sleeves | Active | in stock | $3.99 | ServoCity | new baseline |
| M2.5 standoff assortment kit | Brass/nylon, 6–20 mm | not checked | — | — | — | — |
4. goBILDA powertrain and structure
No goBILDA part is carried by DigiKey or by any ECIA-authorised distributor — six representative part numbers were checked and all came back with no match. Everything below is vendor-direct.
| Part | Spec/Package | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|
| 3616-0014-0144 (x6) | Wasteland Wheel, 144 mm x 52 mm | Active | in stock | $24.99 | goBILDA | flat |
| 5203-2402-0027 (x6) | Yellow Jacket 26.9:1, 223 RPM, 8 mm REX | Active | in stock | $54.99 | goBILDA | flat |
| 3202-0001-2501 (x4) | ServoBlock, 25T spline, hub-shaft | Active | in stock | $34.99 | goBILDA | flat |
| 2000-0025-0002 (x4) | Dual Mode Servo, 25-2 torque | Active | in stock | $36.99 | goBILDA | flat |
| 1106-0029-0232 (x7) | Square Beam, 29 hole, 232 mm | Active | in stock | $3.99 | goBILDA | new baseline |
| 1608-0001-0001 (x1) | Idler Bearing-Hub, 32 mm OD | Active | in stock | $16.99 | goBILDA | new baseline |
| 2805-0004-0108 (x1 pack) | Hurricane Nut for goRAIL, 25-pack | Active | in stock | $12.99 | goBILDA | new baseline |
The remaining structural, spacer, bracket and fastener lines were not individually priced this check — they are the same single vendor whose channel status is established above, so their risk is vendor-level rather than per-part. They are listed here so the next check has a baseline.
| Part | Spec | Qty | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|---|
| 1401-0043-0036 | 2-side 2-post clamping mount, 43 mm / 36 mm bore | 6 | not checked | — | — | goBILDA | — |
| 1310-0016-4008 | Hyper Hub, 8 mm REX bore | 6 | not checked | — | — | goBILDA | — |
| 1120-0002-0072 | U-Channel, 2 hole, 72 mm | 8 | not checked | — | — | goBILDA | — |
| 1109-0024-0144 | goRAIL, 144 mm | 4 | not checked | — | — | goBILDA | — |
| 1121-0004-0120 | Low-Side U-Channel, 4 hole, 120 mm | 4 | not checked | — | — | goBILDA | — |
| 1120-0001-0048 | U-Channel, 1 hole, 48 mm | 2 | not checked | — | — | goBILDA | — |
| 1309-0016-0008 | Sonic Hub, 8 mm bore | 2 | not checked | — | — | goBILDA | — |
| 1611-0514-0008 | Flanged ball bearing, 8x14x5 mm (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 1504-0032-0020 | 32 mm OD pattern spacer, 2 mm | 4 | not checked | — | — | goBILDA | — |
| 2100-0008-0050 | Stainless round shaft, 8 mm x 50 mm | 2 | not checked | — | — | goBILDA | — |
| 1102-0003-0024 | Flat Beam, 3 hole, 24 mm (2-pack) | 4 | not checked | — | — | goBILDA | — |
| 1221-0032-0002 | 2-side 2-post pattern mount (32-2) | 4 | not checked | — | — | goBILDA | — |
| 1126-0001-0001 | Steel flat bracket (1-1) (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 1116-0024-0040 | Grid Plate, 3x5 hole, 24x40 mm | 8 | not checked | — | — | goBILDA | — |
| 1111-0003-0001 | Angle pattern bracket (3-1) | 2 | not checked | — | — | goBILDA | — |
| 1118-0024-0096 | Open goRAIL, 96 mm | 6 | not checked | — | — | goBILDA | — |
| 1118-0024-0288 | Open goRAIL, 288 mm | 2 | not checked | — | — | goBILDA | — |
| 1111-0001-0001 | Angle pattern bracket (1-1, 45°) | 4 | not checked | — | — | goBILDA | — |
| 1137-0001-0001 | Steel flat grid bracket (1-1, 90°) (2-pack) | 1 | not checked | — | — | goBILDA | — |
| 1916-0014-0072 | Plastic hub-mount control arm, 72 mm | 4 | not checked | — | — | goBILDA | — |
| 1522-0010-0060 | 8 mm ID spacer, 10 mm OD, 6 mm (4-pack) | 1 | not checked | — | — | goBILDA | — |
| 1522-0010-0040 | 8 mm ID spacer, 10 mm OD, 4 mm (4-pack) | 1 | not checked | — | — | goBILDA | — |
| 1118-0024-0120 | Open goRAIL, 120 mm | 2 | not checked | — | — | goBILDA | — |
| 1604-0043-0032 | 2-side 2-post pillow block, 32 mm bore | 4 | not checked | — | — | goBILDA | — |
| 1506-0032-0006 | 32 mm ID spacer, 36 mm OD, 6 mm (2-pack) | 3 | not checked | — | — | goBILDA | — |
| 1106-0041-0328 | Square Beam, 41 hole, 328 mm | 4 | not checked | — | — | goBILDA | — |
| 1106-0012-0096 | Square Beam, 12 hole, 96 mm | 8 | not checked | — | — | goBILDA | — |
| 1101-0041-0328 | U-Beam, 41 hole, 328 mm | 1 | not checked | — | — | goBILDA | — |
| 1102-0007-0056 | Flat Beam, 7 hole, 56 mm (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 1205-0001-0004 | Dual block mount (1-4) (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 1203-0001-0001 | Block mount (1-1, 90° gusset) (4-pack) | 1 | not checked | — | — | goBILDA | — |
| 2808-0004-0050 | Stainless threaded rod, M4 x 50 mm (2-pack) | 1 | not checked | — | — | goBILDA | — |
| 2913-0004-0241 | Steel ball linkage, female M4, 24.1 mm (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 2902-0003-0001 | Plastic hinge (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 1501-0006-0080 | M4 standoff, 6 mm OD, 8 mm (4-pack) | 2 | not checked | — | — | goBILDA | — |
| 1501-0006-0220 | M4 standoff, 6 mm OD, 22 mm (4-pack) | 2 | not checked | — | — | goBILDA | — |
| 1500-0010-0006 | Plastic spacer, 6 mm ID x 8 mm OD, 1 mm (12-pack) | 1 | not checked | — | — | goBILDA | — |
| 1102-0002-0016 | Flat Beam, 2 hole, 16 mm (2-pack) | 2 | not checked | — | — | goBILDA | — |
| 2911-0014-0001 | Plastic cable grommet (14-1) (12-pack) | 1 | not checked | — | — | goBILDA | — |
| 2801-0004-0008 | Steel washer, M4 x 8 mm OD (25-pack) | 1 | not checked | — | — | goBILDA | — |
| 2811-0004-0007 | Steel hex nut, M4 x 7 mm (25-pack) | 4 | not checked | — | — | goBILDA | — |
| 2812-0004-0007 | Nylon-insert locknut, M4 x 7 mm (25-pack) | 1 | not checked | — | — | goBILDA | — |
| 2802-0004-0006 | Button head screw, M4 x 6 mm (25-pack) | 2 | not checked | — | — | goBILDA | — |
| 2802-0004-0010 | Button head screw, M4 x 10 mm (25-pack) | 3 | not checked | — | — | goBILDA | — |
| 2802-0004-0016 | Button head screw, M4 x 16 mm (25-pack) | 2 | not checked | — | — | goBILDA | — |
| 2800-0004-0008 | Socket head screw, M4 x 8 mm (25-pack) | 2 | not checked | — | — | goBILDA | — |
| 2800-0004-0010 | Socket head screw, M4 x 10 mm (25-pack) | 3 | not checked | — | — | goBILDA | — |
| 2800-0004-0012 | Socket head screw, M4 x 12 mm (25-pack) | 1 | not checked | — | — | goBILDA | — |
| 2800-0004-0016 | Socket head screw, M4 x 16 mm (25-pack) | 2 | not checked | — | — | goBILDA | — |
| 2800-0004-0020 | Socket head screw, M4 x 20 mm (25-pack) | 1 | not checked | — | — | goBILDA | — |
5. Assembly tools and consumables
| Part | Spec/Package | Status | Stock | Price | Source | Drift |
|---|---|---|---|---|---|---|
| Loctite 242 blue threadlocker | Removable medium-strength | not checked | — | — | — | — |
| 7 mm nut driver | Hollow shaft, for M4 hex nuts | not checked | — | — | — | — |
| 2.5 mm and 3.0 mm ball-end hex keys | M4 button/socket head screws | not checked | — | — | — | — |
| Ratcheting terminal crimper | Molex Mini-Fit, JST-XH, DuPont | not checked | — | — | — | — |
Substitutes
| For part | Substitute | Differences | Verified | Judgment |
|---|---|---|---|---|
| ESK107M050AG3EA (DigiKey publishes no stock figure) | KEMET ESK107M050AG3AA — $0.36, 12,845 in stock | Identical on every constraint the lab states: 100 µF, 50 V, ±20%, radial can, through hole. DigiKey classes it a parametric equivalent. | verified: capacitance, voltage rating, tolerance, radial-can through-hole mounting (DigiKey parametrics on the original; exact-match lookup on the substitute). not verified: lead spacing and can diameter — the substitute's lookup returned no parametrics block, so the original's 3.50 mm lead spacing and 8.00 mm diameter could not be matched against it. | Electrically equivalent; footprint not verified. Usable, but check lead spacing on the datasheet first. Alternatively the exact part is stocked at Newark (858 @ $0.443). |
Instructor: verify any substitute against its datasheet before ordering.
Other dependencies
- Custom PCB fabrication — Brain Board and Motor Board, 2-layer FR-4, 1.6 mm, 1 oz copper, from gerber archive
v2.0.2, suggested vendor JLCPCB. Status: not checked. (v2.0.2is the board revision, not a software version.) - Laser-cut body panels — DXF profiles, 3 mm acrylic, MDF or birch; services cited are SendCutSend and Sculpteo. Status: not checked.
- OnShape hosted CAD assembly — the complete 3D model lives only in OnShape (document
e4f00b1a3d2edb1a84bbba1c), not as STEP or native files in the bundle. Status: not checked. - OSHWA certification record US002551 — https://certification.oshwa.org/us002551.html. Status: not checked.
- Source repositories — https://github.com/nasa-jpl/open-source-rover (hardware and documentation) and https://github.com/nasa-jpl/osr-rover-code (onboard code). Both reachable this check; the software pass listed and fetched files from osr-rover-code.
- goBILDA educational discount form — 123FormBuilder portal, third-party hosted. Status: not checked.
Watch list
- Basic Micro RoboClaw 2x7A — three per rover, one vendor, no possible substitute because the ROS driver speaks RoboClaw's proprietary protocol. If Basic Micro stops selling it, the lab needs a new motor-control layer, not a new part number.
- The whole goBILDA chassis — 57 lines, one vendor, no distributor fallback. A discontinued series here halts assembly.
- Molex 1726750613 — recovered from a 36-week stockout, but DigiKey is the only warehouse holding it. This is the line most likely to relapse.
- Samtec TSW-104-07-F-T — stock fell from 227 to 171. The thinnest stock figure in the electronics BOM.
- Pololu 12 V regulator — unresolved identity; until the BOM line is corrected, the 12 V rail has no confirmed part.
- On Shore EDSTL130/24 — up 42% in six weeks ($4.73 → $6.71). Worth re-pricing next check.
- Sullins PEC08SAAN and PPTC021LFBN-RC — both Active now, but DigiKey is the sole stocking distributor for each.
Snapshot What the lab depended on when it was uploaded — the baseline the readiness checks research against.
Technical Snapshot: NASA JPL Open Source Rover (OSR)
The NASA JPL Open Source Rover is an educational, open-source 6-wheel mobile robotic platform modeled directly after NASA JPL Mars rovers, implementing a passive rocker-bogie suspension mechanism, a top differential pivot, and 6-wheel Ackermann steering (utilizing 6 independently driven wheel motors and 4 corner steering servos). The main power system operates from an external 4S Lithium Polymer (LiPo) battery with a nominal voltage of 14.8 V (operating range ~13.0 V to 16.8 V; a minimum of >14.0 V is strictly required to accommodate regulator dropout). The electrical architecture distributes power across three primary downstream DC buses: an unregulated/switched 14.8 V battery rail supplying the brushed motor drive controllers, a 12 V regulated rail (derived via a high-current buck step-down regulator supplying motor sub-buses/cooling), a 5 V regulated rail (derived via a high-current buck step-down regulator powering the Raspberry Pi single-board computer, PCA9685 PWM driver, and corner servos), and local 3.3 V rails (regulated via onboard LDOs on custom printed circuit boards for logic pull-ups and sensor interfaces). The system compute core is a Raspberry Pi running Ubuntu Linux and ROS 2, communicating over high-speed packet serial UART to three dual-channel motor controllers and over I2C to servo PWM and power telemetry breakouts.
Bill of Materials
1. Custom PCB Passive and Electromechanical Components (DigiKey BOM)
Fixed Ceramic and Electrolytic Capacitors
Ceramic Capacitor 0.01 µF (10,000 pF):
- Manufacturer and Part Number: KEMET C317C103K5R5TA7301 (DigiKey 399-9865-1-ND)
- Reference Designator: A1
- Quantity: 20
- Footprint/Package: Radial leaded, 5.08 mm lead spacing (GoldMAX 300 series)
- Electrical Constraints: Capacitance 10,000 pF (10 nF / 0.01 µF), rated 50 V DC, X7R dielectric, ±10% tolerance. Sits on logic bypass/filter lines (3.3 V / 5 V rails).
- Substitution Latitude: Any 10 nF / 0.01 µF X7R or X5R radial ceramic capacitor with rated voltage ≥ 50 V and matching 5.08 mm lead pitch.
- Sourcing Plan: distributor lookup: C317C103K5R5TA7301
Aluminum Electrolytic Capacitor 100 µF:
- Manufacturer and Part Number: KEMET ESK107M050AG3EA (DigiKey 399-18272-1-ND)
- Reference Designator: A2
- Quantity: 10
- Footprint/Package: Radial can, through-hole, 8.00 mm diameter, 3.50 mm lead spacing
- Electrical Constraints: Capacitance 100 µF, rated 50 V DC, ±20% tolerance. Sits across primary power distribution rails (up to 16.8 V LiPo rail).
- Substitution Latitude: Any radial aluminum electrolytic capacitor rated 100 µF, ≥ 50 V, 8 mm diameter or smaller, with 3.5 mm lead spacing.
- Sourcing Plan: distributor lookup: ESK107M050AG3EA
Ceramic Capacitor 0.1 µF (100 nF):
- Manufacturer and Part Number: KEMET C322C104K5R5TA7317 (DigiKey 399-14065-1-ND)
- Reference Designator: A3
- Quantity: 10
- Footprint/Package: Radial leaded, 5.08 mm lead spacing (GoldMAX 300 series)
- Electrical Constraints: Capacitance 0.1 µF, rated 50 V DC, X7R dielectric, ±10% tolerance. Sits on high-frequency decoupling lines for active ICs and regulators.
- Substitution Latitude: Any radial 0.1 µF X7R ceramic capacitor rated ≥ 50 V with 5.08 mm lead pitch.
- Sourcing Plan: distributor lookup: C322C104K5R5TA7317
Aluminum Electrolytic Capacitor 10 µF:
- Manufacturer and Part Number: KEMET ESK106M050AC3DA (DigiKey 399-ESK106M050AC3DACT-ND)
- Reference Designator: A4
- Quantity: 10
- Footprint/Package: Radial can, through-hole, 5.00 mm diameter, 2.00 mm lead spacing
- Electrical Constraints: Capacitance 10 µF, rated 50 V DC, ±20% tolerance. Sits on regulator input/output stabilization.
- Substitution Latitude: Any radial electrolytic capacitor rated 10 µF, ≥ 50 V, with 2.0 mm to 2.54 mm lead spacing.
- Sourcing Plan: distributor lookup: ESK106M050AC3DA
Diodes and Discrete Semiconductors
Power Schottky Barrier Rectifier Diode 25 V 10 A:
- Manufacturer and Part Number: STMicroelectronics STPS10L25D (DigiKey 497-2738-5-ND)
- Reference Designator: A5
- Quantity: 2
- Footprint/Package: TO-220AC through-hole, 2-pin
- Electrical Constraints: Repetitive peak reverse voltage VRRM = 25 V, forward continuous current IF = 10 A, low forward voltage drop VF ≤ 0.46 V at 10 A. Sits on primary battery polarity protection / high-current power path.
- Substitution Latitude: Any power Schottky diode in TO-220AC rated VRRM ≥ 25 V and IF ≥ 10 A with equivalent or lower VF.
- Sourcing Plan: distributor lookup: STPS10L25D
Small-Signal Switching Diode 75 V 300 mA:
- Manufacturer and Part Number: onsemi / Fairchild 1N4148 (DigiKey 1655-1N4148CT-ND)
- Reference Designator: A6
- Quantity: 10
- Footprint/Package: DO-35 (DO-204AH) axial through-hole
- Electrical Constraints: Peak reverse voltage VR = 100 V (continuous 75 V), continuous forward current IF = 300 mA, reverse recovery time trr ≤ 4 ns. Sits on general logic signal clamping and flyback protection.
- Substitution Latitude: Any standard 1N4148 or 1N914 fast switching axial diode.
- Sourcing Plan: distributor lookup: 1N4148
Small-Signal General Purpose PNP Transistor:
- Manufacturer and Part Number: onsemi 2N3906TA (DigiKey 2N3906TAFSCT-ND)
- Reference Designator: A21
- Quantity: 10
- Footprint/Package: TO-92-3 through-hole
- Electrical Constraints: VCEO = -40 V, IC = -200 mA, PD = 625 mW, hFE = 100 to 300. Sits in indicator drive and level-shifting circuits operating at 3.3 V to 5 V rails.
- Substitution Latitude: Any commodity 2N3906 PNP BJT in TO-92 pinout (E-B-C).
- Sourcing Plan: distributor lookup: 2N3906TA
Resistors (Axial Through-Hole, Carbon Film)
- Carbon Film Resistors, Grouped Commodity Specification:
- Footprint/Package: Axial leaded, standard through-hole
- Power Rating: 1/4 W (0.25 W) (except 68 Ω which is 1/8 W / 0.125 W), ±5% tolerance
- Specific Values and Quantities:
- 100 Ω, 0.25 W: Manufacturer Part Number CF14JT100R (DigiKey CF14JT100RCT-ND), Ref A22, Qty: 10
- 10 kΩ, 0.25 W: Manufacturer Part Number CF14JT10K0 (DigiKey CF14JT10K0CT-ND), Ref A23, Qty: 10
- 4.7 kΩ, 0.25 W: Manufacturer Part Number CF14JT4K70 (DigiKey CF14JT4K70CT-ND), Ref A24, Qty: 25
- 0 Ω Jumper, 0.25 W: Manufacturer Part Number CD14ZT0R00 (DigiKey CD14ZT0R00CT-ND), Ref A25, Qty: 10
- 68 Ω, 0.125 W: Manufacturer Part Number CF18JT68R0 (DigiKey CF18JT68R0CT-ND), Ref A26, Qty: 10
- 82 Ω, 0.25 W: Manufacturer Part Number CF14JT82R0 (DigiKey CF14JT82R0CT-ND), Ref A27, Qty: 10
- 1 kΩ, 0.25 W: Manufacturer Part Number CF14JT1K00 (DigiKey CF14JT1K00CT-ND), Ref A28, Qty: 10
- 680 Ω, 0.25 W: Manufacturer Part Number CF14JT680R (DigiKey CF14JT680RCT-ND), Ref A29, Qty: 10
- 220 Ω, 0.25 W: Manufacturer Part Number CF14JT220R (DigiKey CF14JT220RCT-ND), Ref A30, Qty: 10
- Electrical Constraints: Pull-ups, current limiting for bar graph LEDs, and bias networks operating on 3.3 V and 5 V buses.
- Substitution Latitude: Any 5% or 1% axial carbon film or metal film resistor rated ≥ 0.25 W matching the resistance values.
- Sourcing Plan: distributor lookup: CF14JT4K70
Integrated Circuits and Display
LDO Linear Voltage Regulator 3.3 V 750 mA:
- Manufacturer and Part Number: Microchip Technology MIC2937A-3.3WT (DigiKey 576-2235-ND)
- Reference Designator: A38
- Quantity: 2
- Footprint/Package: TO-220-3 through-hole
- Electrical Constraints: Output fixed at 3.3 V, maximum output current 750 mA, input operating voltage up to 26 V, dropout voltage 370 mV at full load. Sits between the 5 V / battery rail and 3.3 V logic bus.
- Substitution Latitude: Pin-compatible positive 3.3 V LDO linear regulator in TO-220-3 (Pin 1: Input, Pin 2: Ground, Pin 3: Output) capable of ≥ 750 mA output and input voltage tolerance ≥ 16 V.
- Sourcing Plan: distributor lookup: MIC2937A-3.3WT
10-Segment LED Bar Graph Array:
- Manufacturer and Part Number: Kingbright DC10CGKWA (DigiKey 754-2186-ND)
- Reference Designator: A37
- Quantity: 2
- Footprint/Package: DIP-20 (20-pin dual-in-line module, 2.54 mm pitch, 7.62 mm row spacing)
- Electrical Constraints: 10 green LEDs (dominant wavelength 570 nm), VF = 2.1 V nominal at IF = 20 mA. Sits on status indicator circuits.
- Substitution Latitude: Any standard 10-segment DIP-20 LED bar graph display with identical pin-to-pin pitch and cathode-anode assignment.
- Sourcing Plan: distributor lookup: DC10CGKWA
Switches and Overcurrent Protection
SPDT Slide DIP Switch:
- Manufacturer and Part Number: CTS Electrocomponents 206-124 (DigiKey CT206124-ND)
- Reference Designator: A32
- Quantity: 1
- Footprint/Package: DIP through-hole (slide switch profile, 2.54 mm pin pitch)
- Electrical Constraints: SPDT contact configuration, contact rating 50 mA at 24 V DC. Used as an onboard configuration / mode selector.
- Actuator Style: Top-actuated slide switch.
- Substitution Latitude: Any PCB-mount slide DIP switch with SPDT contacts and 2.54 mm through-hole pitch.
- Sourcing Plan: distributor lookup: 206-124
Industrial Toggle Switch ON-OFF-ON:
- Manufacturer and Part Number: Arcolectric / Bulgin C3920BAAAA (DigiKey 708-3060-ND)
- Reference Designator: B9
- Quantity: 1
- Footprint/Package: Panel mount, quick-connect / solder lug terminals, 12.7 mm mounting hole
- Electrical Constraints: ON-OFF-ON double throw switch rated for AC/DC mains/power switching (≥ 10 A at 14.8 V DC). Sits as the main system power switch mounted to the rover chassis.
- Actuator Style: Bat toggle actuator operated manually by the user during power-up and run-mode transitions.
- Substitution Latitude: Any heavy-duty ON-OFF-ON panel mount toggle switch rated ≥ 10 A continuous DC current.
- Sourcing Plan: distributor lookup: C3920BAAAA
Fuse Clip PCB Block:
- Manufacturer and Part Number: Würth Elektronik 696108003002 (DigiKey 732-11376-ND)
- Reference Designator: A7
- Quantity: 1
- Footprint/Package: PCB through-hole clip holder for 5 mm x 20 mm cartridge fuses
- Electrical Constraints: Continuous current rating ≥ 10 A, rated 250 V AC/DC.
- Substitution Latitude: Any standard 5x20 mm PCB fuse clip or block matching the board pin pitch.
- Sourcing Plan: distributor lookup: 696108003002
Fast-Acting Glass Cartridge Fuse 10 A 5x20 mm:
- Manufacturer and Part Number: Littelfuse 0233010.MXP (DigiKey F3631-ND)
- Reference Designator: B1
- Quantity: 2
- Footprint/Package: 5 mm x 20 mm (0.2" x 0.79") cylindrical glass cartridge
- Electrical Constraints: Rated current 10 A, rated voltage 125 V AC / DC, fast-acting. Sits directly in series with the main battery input rail.
- Substitution Latitude: Any standard fast-acting 10 A 5x20 mm glass or ceramic cartridge fuse.
- Sourcing Plan: distributor lookup: 0233010.MXP
PCB Connectors, Terminal Blocks, and Pin Headers
Samtec 12-Position Triple-Row Pin Header:
- Manufacturer and Part Number: Samtec TSW-104-07-F-T (DigiKey TSW-104-07-F-T-ND)
- Reference Designator: A10
- Quantity: 4
- Footprint/Package: 3 rows of 4 pins (3x4), 2.54 mm (0.100") pitch, vertical through-hole
- Electrical Constraints: Rated current 3 A per pin. Serves as 3-pin servo channel connection bank (Signal, Power, Ground per column).
- Substitution Latitude: Any 3x4 vertical male header on 2.54 mm grid, or three 1x4 standard male breakaway headers placed adjacent.
- Sourcing Plan: distributor lookup: TSW-104-07-F-T
8-Position Single-Row Vertical Pin Header:
- Manufacturer and Part Number: Sullins Connector Solutions PEC08SAAN (DigiKey S1012E-08-ND)
- Reference Designator: A11
- Quantity: 4
- Footprint/Package: 1x8, 2.54 mm pitch, vertical through-hole
- Sourcing Plan: distributor lookup: PEC08SAAN
20-Position Dual-Row Female Receptacle Header:
- Manufacturer and Part Number: Sullins Connector Solutions PPTC102LFBN-RC (DigiKey S7078-ND)
- Reference Designator: A12
- Quantity: 1
- Footprint/Package: 2x10, 2.54 mm pitch, vertical through-hole female socket
- Sourcing Plan: distributor lookup: PPTC102LFBN-RC
40-Position Dual-Row Shrouded Pin Header:
- Manufacturer and Part Number: Sullins Connector Solutions SBH11-PBPC-D20-ST-BK (DigiKey S9175-ND)
- Reference Designator: A13
- Quantity: 2
- Footprint/Package: 2x20, 2.54 mm pitch, vertical through-hole boxed/shrouded header
- Electrical Constraints: Carries the Raspberry Pi 40-pin GPIO bus between boards.
- Substitution Latitude: Any standard 2x20 vertical male header or shrouded IDC box header with 2.54 mm pitch.
- Sourcing Plan: distributor lookup: SBH11-PBPC-D20-ST-BK
JST 6-Position Vertical Header:
- Manufacturer and Part Number: JST B6B-PH-K-S(LF)(SN) (DigiKey 455-1708-ND)
- Reference Designator: A14
- Quantity: 2
- Footprint/Package: 1x6, 2.00 mm pitch, vertical through-hole shrouded
- Sourcing Plan: distributor lookup: B6B-PH-K-S(LF)(SN)
Molex 20-Position Shrouded Pin Header:
- Manufacturer and Part Number: Molex 0702462001 (DigiKey WM6548-ND)
- Reference Designator: A16
- Quantity: 1
- Footprint/Package: 2x10, 2.54 mm pitch, vertical through-hole shrouded header
- Sourcing Plan: distributor lookup: 0702462001
2-Position Single-Row Female Receptacle Header:
- Manufacturer and Part Number: Sullins Connector Solutions PPTC021LFBN-RC (DigiKey S7000-ND)
- Reference Designator: A17
- Quantity: 5
- Footprint/Package: 1x2, 2.54 mm pitch, vertical through-hole female socket
- Sourcing Plan: distributor lookup: PPTC021LFBN-RC
2-Position Screw Terminal Block 5.08 mm:
- Manufacturer and Part Number: On Shore Technology OSTTA024163 (DigiKey ED2580-ND)
- Reference Designator: A19
- Quantity: 2
- Footprint/Package: 1x2, 5.08 mm pitch, side wire entry, screw clamp, through-hole
- Electrical Constraints: Rated ≥ 15 A, 300 V. Sits on DC power input rails.
- Substitution Latitude: Any 2-pin 5.08 mm pitch side-entry screw terminal block rated ≥ 15 A.
- Sourcing Plan: distributor lookup: OSTTA024163
Molex 6-Position High-Power Mini-Fit / Super Sabre Header:
- Manufacturer and Part Number: Molex 1726750613 (DigiKey 1726750613-ND)
- Reference Designator: A20
- Quantity: 6
- Footprint/Package: 2x3, 4.20 mm pitch, vertical through-hole header
- Electrical Constraints: Rated current ≥ 9 A per circuit. Connects power and encoder signals from the rover's 6 drive motor harnesses.
- Substitution Latitude: Exact Molex 172675-0613 or compatible 4.2 mm 6-position blind-mate/Mini-Fit vertical PCB header.
- Sourcing Plan: distributor lookup: 1726750613
24-Position Terminal Block Header 5.00 mm:
- Manufacturer and Part Number: On Shore Technology EDSTL130/24 (DigiKey ED1682-24-ND)
- Reference Designator: B11
- Quantity: 1
- Footprint/Package: 1x24, 5.00 mm pitch, vertical through-hole shrouded male header
- Sourcing Plan: distributor lookup: EDSTL130/24
Molex 6-Position Eurostyle Pluggable Terminal Block PCB Header:
- Manufacturer and Part Number: Molex 0395016006 (DigiKey WM25701-ND)
- Reference Designator: A9
- Quantity: 3
- Footprint/Package: 1x6, 3.50 mm pitch, vertical through-hole shrouded terminal block header
- Sourcing Plan: distributor lookup: 0395016006
Molex 6-Position Eurostyle Pluggable Terminal Block Mating Plug:
- Manufacturer and Part Number: Molex 0395005006 (DigiKey WM13033-ND)
- Reference Designator: B2
- Quantity: 3
- Footprint/Package: 1x6, 3.50 mm pitch, straight wire-entry plug with screw clamp terminals
- Electrical Constraints: Plugs into A9 headers to interface Roboclaw motor outputs.
- Sourcing Plan: distributor lookup: 0395005006
2. Active Electronic Modules, Computing, Power, and Off-Board Electricals
Raspberry Pi Single Board Computer (Compute Core):
- Identity: Raspberry Pi 5 (recommended; dual PL011 hardware UARTs allow simultaneous Roboclaw UART communication and Bluetooth) or Raspberry Pi 4 Model B / Raspberry Pi 3 Model B+
- Quantity: 1
- Footprint: Standard Raspberry Pi SBC mounting form factor with 40-pin GPIO header
- Electrical Constraints: 5.0 V DC input via USB-C or GPIO pins (requires ≥ 3.0 A for RPi 4, ≥ 5.0 A for RPi 5).
- Substitution Latitude: Raspberry Pi 3, 4, or 5. If RPi 3 or 4 is used, Bluetooth must be disabled in firmware to release the PL011 UART (
/dev/ttyAMA0) for motor controller communication. - Sourcing Plan: retail shopping search: Raspberry Pi 5 4GB or 8GB
MicroSD Card:
- Identity: Class 10 / UHS-I MicroSD Card, minimum 32 GB capacity
- Quantity: 1
- Electrical Constraints: Operating storage for Ubuntu Linux LTS OS and ROS 2 filesystem.
- Sourcing Plan: retail shopping search: MicroSD card 32GB Class 10
Basic Micro RoboClaw 2x7A Motor Controller:
- Manufacturer and Part Number: Basic Micro RoboClaw 2x7A
- Quantity: 3
- Footprint: Standalone dual-channel H-bridge PCB module with screw terminals and 0.1" header pins
- Electrical Constraints: Supply voltage 6 V to 34 V (runs on 14.8 V LiPo rail), 7.5 A continuous per channel (15 A peak). Controlled via multi-drop packet serial UART at 38400 or 115200 baud, multi-unit mode addresses 128, 129, and 130. Handles quadrature encoder feedback from drive motors.
- Substitution Latitude: Must be Basic Micro RoboClaw 2x7A (or pin-compatible RoboClaw model) because the ROS driver (
roboclaw_wrapper) relies on the proprietary RoboClaw packet serial protocol, CRC16 packet checksums, and firmware commands. - Sourcing Plan: distributor lookup: Basic Micro RoboClaw 2x7A
PCA9685 16-Channel 12-Bit PWM I2C Breakout:
- Identity: Adafruit 16-Channel 12-bit PWM/Servo Driver - I2C interface (Adafruit Product ID 815)
- Quantity: 1
- Footprint: Breakout PCB with 3x4 0.1" servo pin headers and terminal block power input
- Electrical Constraints: Logic rail 3.3 V / 5.0 V (I2C default address 0x40), servo drive power rail 5.0 V DC.
- Substitution Latitude: Any PCA9685 breakout module configured with standard I2C address 0x40.
- Sourcing Plan: distributor lookup: Adafruit 815
INA260 Precision Digital Current and Power Monitor Breakout:
- Identity: Adafruit INA260 High Precision I2C Current & Power Monitor (Adafruit Product ID 4226)
- Quantity: 1
- Footprint: Breakout module with integrated precision shunt resistor
- Electrical Constraints: Input voltage sensing 0 V to 36 V, maximum continuous current 15 A. Logic rail 3.3 V / 5 V. Configurable I2C address (default 0x45, selectable between 0x40 and 0x43).
- Substitution Latitude: Must provide identical TI INA260 I2C register map for
test_ina260.pyand onboard ROS monitoring nodes. - Sourcing Plan: distributor lookup: Adafruit 4226
5 V Step-Down Switching Voltage Regulator:
- Manufacturer and Part Number: Pololu D24V50F5 (Pololu #2881)
- Quantity: 1
- Footprint: Compact step-down module (pin-compatible with standard 3-pin / 4-pin linear regulator replacements)
- Electrical Constraints: Input voltage 6 V to 38 V (operates at 14.8 V nominal LiPo), output fixed 5.0 V DC, continuous current capacity 5 A.
- Substitution Latitude: Any high-efficiency buck regulator providing continuous 5.0 V at ≥ 5 A with input range handling up to 17 V.
- Sourcing Plan: distributor lookup: Pololu 2881
12 V Step-Down Switching Voltage Regulator:
- Manufacturer and Part Number: Pololu D24V50F12 (Pololu #2855)
- Quantity: 1
- Footprint: Compact step-down module matching Pololu 2881 footprint
- Electrical Constraints: Input voltage ~14 V to 38 V (requires dropout headroom above 12 V output; will shut down if battery drops below ~13 V), output fixed 12.0 V DC, continuous current capacity 5 A.
- Substitution Latitude: Any buck regulator module providing 12.0 V at ≥ 5 A with an input handling 14 V to 17 V.
- Sourcing Plan: distributor lookup: Pololu 2855
DC Power Meter LCD Display:
- Identity: Multimeter panel display for voltage, current, power, and energy readout (e.g., Amazon B017FSED9I)
- Quantity: 1
- Footprint: Rectangular panel-mount module fitting laser-cut rear chassis cutout
- Electrical Constraints: Operating range 6.5 V to 100 V DC, 0 to 20 A continuous current measuring capability.
- Actuator Style: Set-and-view display panel (may include front tactile backlight/reset button).
- Substitution Latitude: Any panel meter fitting the laser-cut rectangular mounting dimensions.
- Sourcing Plan: retail shopping search: DC 6.5-100V 20A LCD digital power energy meter panel
4S Lithium Polymer (LiPo) Battery Pack:
- Identity: 4-Cell (4S) 14.8 V LiPo battery (Zeee or equivalent), capacity ≥ 4000 mAh up to 7200 mAh, discharge rating ≥ 50C
- Quantity: 1 (or multiple for hot-swapping)
- Footprint: Rectangular brick, dimensions to fit internal rover chassis battery bay
- Electrical Constraints: Nominal 14.8 V (4.2 V/cell fully charged = 16.8 V; cut-off ~13.2 V to 14.0 V). Equipped with XT60 or EC3/T-plug discharge connector and JST-XH balance lead.
- Substitution Latitude: Any 4S LiPo battery with capacity ≥ 4000 mAh.
- Sourcing Plan: retail shopping search: 4S LiPo battery 14.8V 5000mAh XT60
LiPo Balance Battery Charger:
- Identity: Multi-chemistry microprocessor balance charger (e.g., IMAX B6 or equivalent)
- Quantity: 1
- Sourcing Plan: retail shopping search: IMAX B6 LiPo balance charger
Fireproof LiPo Safety Storage Bag:
- Identity: Flame-retardant fiberglass LiPo charging and transport sack
- Quantity: 1
- Sourcing Plan: retail shopping search: fireproof LiPo safety bag
Gamepad / Remote Control Transmitter:
- Identity: USB wireless gamepad (genuine Microsoft Xbox Wireless Controller with USB wireless PC adapter, or Spektrum WS2000 USB simulator dongle paired with Spektrum DXs DSMX transmitter)
- Quantity: 1
- Electrical Constraints: USB receiver dongle plugs directly into Raspberry Pi USB port.
- Actuator Style: Dual analog thumbsticks, bumpers, triggers, and pushbuttons operated by user during rover driving.
- Substitution Latitude: Any USB HID-compliant gamepad or R/C controller supported by the Linux kernel
/dev/input/js0and ROS 2joy_node. - Sourcing Plan: retail shopping search: Xbox Wireless Controller with Wireless Adapter for Windows
3. Wiring, Cabling, Connectors, and Structural Standoffs
Ribbon / Stranded Hookup Wires:
- 18 AWG stranded copper wire (red and black bonded pair / ribbon): For primary DC power runs between regulators, battery switch, and Roboclaw boards. Sourcing plan: retail shopping search: 18 AWG 2 conductor stranded ribbon wire
- 20 AWG stranded copper wire (white, red, black 3-conductor bonded ribbon): For servo and auxiliary power lines. Sourcing plan: retail shopping search: 20 AWG 3 conductor stranded ribbon wire
- 22 AWG stranded copper wire (4-conductor ribbon): For motor quadrature encoder signals and logic serial busses. Sourcing plan: retail shopping search: 22 AWG 4 conductor ribbon cable stranded
Raspberry Pi Interface Cable:
- Identity: 40-pin GPIO IDC ribbon extension cable female-to-female (Adafruit #1988 or equivalent)
- Quantity: 1
- Sourcing Plan: distributor lookup: Adafruit 1988
Raspberry Pi 5 USB-C Power Breakout:
- Identity: USB-C power breakout / pigtail cable for 5 V 5 A power injection (required if building with RPi 5)
- Quantity: 1
- Sourcing Plan: retail shopping search: USB-C male pigtail power cable 18AWG
High-Current DC Connectors (XT30):
- Identity: XT30 high-current nylon connectors (male and female pairs or pre-crimped leads)
- Quantity: 5 pairs (or 2x male leads, 2x female leads)
- Electrical Constraints: Continuous 15 A rating (30 A peak) on Motor Board power branches.
- Sourcing Plan: distributor lookup (representative example — sources give spec only): DFRobot FIT0586
4-Pin JST-XH Encoder Cable Harnesses:
- Identity: 4-position JST-XH 2.54 mm pitch male housing to 4x 1-pos DuPont/receptacle leads, 300 mm length (goBILDA 2813 series or equivalent kit)
- Quantity: 6
- Sourcing Plan: retail shopping search: JST-XH 4-pin connector cable 300mm
6-Pin Molex PCI-E Style Connector Housings and Pins:
- Receptacle Housing: Molex 0469920610 (DigiKey 5116009-ND), Quantity: 6. Sourcing plan: distributor lookup: 0469920610
- Crimp Terminals: Molex 0039000077 female crimp pins (DigiKey 1643440-ND), Quantity: ≥ 36 pins. Sourcing plan: distributor lookup: 0039000077
DuPont Interconnect Connectors:
- 3-Pin DuPont female housings: Quantity 4
- 4-Pin DuPont female housings: Quantity 8
- DuPont female crimp terminals: Quantity ≥ 44
- Sourcing Plan: retail shopping search: DuPont 2.54mm connector housing kit with crimp pins
3.5 mm Bullet Connectors (Motor Phase Interconnects):
- Identity: 3.5 mm female gold bullet connectors with insulating sleeves
- Quantity: 12 female terminals
- Sourcing Plan: retail shopping search: 3.5mm female bullet connectors with insulating sleeves
Standoff Assortment Kit:
- Identity: M2.5 brass or nylon male-female and female-female threaded standoffs, screws, and nuts (assorted 6 mm to 20 mm lengths)
- Quantity: 1 kit (at least 16 standoffs for PCB mounting)
- Sourcing Plan: retail shopping search: M2.5 standoff assortment kit brass nylon
4. Powertrain and Structural Components (goBILDA BOM)
Drive Wheel Assemblies (6 Subassemblies Total)
Wasteland Wheel (144 mm Diameter, 52 mm Width):
- Manufacturer and Part Number: goBILDA 3616-0014-0144
- Quantity: 6
- Dimensions: 144 mm outer diameter, 52 mm width, internal hex/pattern mount
- Substitution Latitude: Traxxas Talon tires / Gemini wheels (5374X) can substitute with custom hub drilling, or goBILDA 192 mm Wasteland wheels (3616-0014-0192).
- Sourcing Plan: distributor lookup: 3616-0014-0144
1401 Series 2-Side, 2-Post Clamping Mount (43 mm Width, 36 mm Bore):
- Manufacturer and Part Number: goBILDA 1401-0043-0036
- Quantity: 6
- Function: Clamps 36 mm planetary gearbox of Yellow Jacket motor to chassis channels.
- Sourcing Plan: distributor lookup: 1401-0043-0036
5203 Series Yellow Jacket Planetary Gear Motor (26.9:1 Ratio, 223 RPM):
- Manufacturer and Part Number: goBILDA 5203-2402-0027
- Quantity: 6
- Footprint/Package: 36 mm diameter cylindrical gearbox, 24 mm length 8 mm REX (positive drive profile) shaft
- Electrical Constraints: 12 V DC nominal brushed motor, built-in 3.3 V to 5 V Hall-effect quadrature encoder (537.7 pulses per revolution of the output shaft), no-load speed 223 RPM, stall torque 258 oz-in.
- Substitution Latitude: Must maintain identical 8 mm REX shaft profile and 36 mm clamping envelope; different gear ratios (e.g. 19.2:1 or 50.9:1) require modifying
drive_no_load_rpmin ROS launch parameters. - Sourcing Plan: distributor lookup: 5203-2402-0027
1310 Series Hyper Hub (8 mm REX Bore):
- Manufacturer and Part Number: goBILDA 1310-0016-4008
- Quantity: 6
- Function: Locks wheel assembly to the 8 mm REX motor output shaft.
- Sourcing Plan: distributor lookup: 1310-0016-4008
1120 Series U-Channel (2 Hole, 72 mm Length):
- Manufacturer and Part Number: goBILDA 1120-0002-0072
- Quantity: 6 (Drive Wheel) + 2 (Body Assembly) = 8 total units
- Sourcing Plan: distributor lookup: 1120-0002-0072
Corner Steering Assemblies (4 Subassemblies Total)
1109 Series goRAIL (144 mm Length):
- Manufacturer and Part Number: goBILDA 1109-0024-0144
- Quantity: 4
- Dimensions: 24 mm x 24 mm profile, 144 mm length structural rail
- Sourcing Plan: distributor lookup: 1109-0024-0144
1121 Series Low-Side U-Channel (4 Hole, 120 mm Length):
- Manufacturer and Part Number: goBILDA 1121-0004-0120
- Quantity: 4
- Dimensions: 120 mm length, 4-hole pattern, low-profile channel
- Sourcing Plan: distributor lookup: 1121-0004-0120
Rocker-Bogie Suspension Assemblies (2 Subassemblies Total)
1120 Series U-Channel (1 Hole, 48 mm Length):
- Manufacturer and Part Number: goBILDA 1120-0001-0048
- Quantity: 2
- Sourcing Plan: distributor lookup: 1120-0001-0048
ServoBlock (Standard Size, 25 Tooth Spline, Hub Shaft):
- Manufacturer and Part Number: goBILDA 3202-0001-2501
- Quantity: 4
- Function: Isolates radial and axial loads from steering servo output shafts using dual ball bearings and an integrated hub.
- Substitution Latitude: Essential mechanical load isolator for corner steering; custom machined bearing block required if substituted.
- Sourcing Plan: distributor lookup: 3202-0001-2501
2000 Series Dual Mode Servo (25-2, Torque):
- Manufacturer and Part Number: goBILDA 2000-0025-0002
- Quantity: 4
- Footprint/Package: Standard hobby servo form factor, 25-tooth spline
- Electrical Constraints: Operating voltage 4.8 V to 7.4 V (powered from 5.0 V buck rail), stall torque 330 oz-in at 6 V, PWM control signal (50 Hz, 1000 µs to 2000 µs nominal pulse width, 300° total calibrated travel).
- Substitution Latitude: Standard high-torque hobby servo with 25T spline and 300° physical travel capability.
- Sourcing Plan: distributor lookup: 2000-0025-0002
1309 Series Sonic Hub (8 mm Bore):
- Manufacturer and Part Number: goBILDA 1309-0016-0008
- Quantity: 2
- Sourcing Plan: distributor lookup: 1309-0016-0008
1611 Series Flanged Ball Bearing (8 mm ID x 14 mm OD, 5 mm Thickness):
- Manufacturer and Part Number: goBILDA 1611-0514-0008
- Quantity: 2 packs (4 bearings total)
- Sourcing Plan: distributor lookup: 1611-0514-0008
1504 Series 32 mm OD Pattern Spacer (2 mm Length):
- Manufacturer and Part Number: goBILDA 1504-0032-0020
- Quantity: 4
- Sourcing Plan: distributor lookup: 1504-0032-0020
2100 Series Stainless Steel Round Shaft (8 mm Diameter, 50 mm Length):
- Manufacturer and Part Number: goBILDA 2100-0008-0050
- Quantity: 2
- Sourcing Plan: distributor lookup: 2100-0008-0050
1102 Series Flat Beam (3 Hole, 24 mm Length):
- Manufacturer and Part Number: goBILDA 1102-0003-0024
- Quantity: 4 packs (8 beams total)
- Sourcing Plan: distributor lookup: 1102-0003-0024
1221 Series 2-Side, 2-Post Pattern Mount (32-2):
- Manufacturer and Part Number: goBILDA 1221-0032-0002
- Quantity: 4
- Sourcing Plan: distributor lookup: 1221-0032-0002
1126 Series Steel Flat Bracket (1-1):
- Manufacturer and Part Number: goBILDA 1126-0001-0001
- Quantity: 2 packs (4 brackets total)
- Sourcing Plan: distributor lookup: 1126-0001-0001
1116 Series Grid Plate (3 x 5 Hole, 24 x 40 mm):
- Manufacturer and Part Number: goBILDA 1116-0024-0040
- Quantity: 4 (Rocker-Bogie) + 4 (Body Assembly) = 8 plates total
- Sourcing Plan: distributor lookup: 1116-0024-0040
1111 Series Angle Pattern Bracket (3-1):
- Manufacturer and Part Number: goBILDA 1111-0003-0001
- Quantity: 2
- Sourcing Plan: distributor lookup: 1111-0003-0001
1118 Series Open goRAIL (96 mm Length):
- Manufacturer and Part Number: goBILDA 1118-0024-0096
- Quantity: 6
- Sourcing Plan: distributor lookup: 1118-0024-0096
1118 Series Open goRAIL (288 mm Length):
- Manufacturer and Part Number: goBILDA 1118-0024-0288
- Quantity: 2
- Sourcing Plan: distributor lookup: 1118-0024-0288
1111 Series Angle Pattern Bracket (1-1):
- Manufacturer and Part Number: goBILDA 1111-0001-0001
- Quantity: 4
- Sourcing Plan: distributor lookup: 1111-0001-0001
1137 Series Steel Flat Grid Bracket (1-1):
- Manufacturer and Part Number: goBILDA 1137-0001-0001
- Quantity: 1 pack (2 brackets total)
- Sourcing Plan: distributor lookup: 1137-0001-0001
Plastic Hub-Mount Control Arm (72 mm Length):
- Manufacturer and Part Number: goBILDA 1916-0014-0072
- Quantity: 4
- Function: Turnbuckle linkage arm for corner steering.
- Sourcing Plan: distributor lookup: 1916-0014-0072
1522 Series 8 mm ID Spacer (10 mm OD, 6 mm Length):
- Manufacturer and Part Number: goBILDA 1522-0010-0060
- Quantity: 1 pack (4 spacers)
- Sourcing Plan: distributor lookup: 1522-0010-0060
1522 Series 8 mm ID Spacer (10 mm OD, 4 mm Length):
- Manufacturer and Part Number: goBILDA 1522-0010-0040
- Quantity: 1 pack (4 spacers)
- Sourcing Plan: distributor lookup: 1522-0010-0040
Body and Differential Pivot Assembly
1118 Series Open goRAIL (120 mm Length):
- Manufacturer and Part Number: goBILDA 1118-0024-0120
- Quantity: 2
- Sourcing Plan: distributor lookup: 1118-0024-0120
1604 Series 2-Side, 2-Post Pillow Block (32 mm Bore):
- Manufacturer and Part Number: goBILDA 1604-0043-0032
- Quantity: 4
- Function: Main differential pivot pivot bearings.
- Sourcing Plan: distributor lookup: 1604-0043-0032
1506 Series 32 mm ID Spacer (36 mm OD, 6 mm Length):
- Manufacturer and Part Number: goBILDA 1506-0032-0006
- Quantity: 3 packs (6 spacers total)
- Sourcing Plan: distributor lookup: 1506-0032-0006
1106 Series Square Beam (29 Hole, 232 mm Length):
- Manufacturer and Part Number: goBILDA 1106-0029-0232
- Quantity: 7
- Sourcing Plan: distributor lookup: 1106-0029-0232
1106 Series Square Beam (41 Hole, 328 mm Length):
- Manufacturer and Part Number: goBILDA 1106-0041-0328
- Quantity: 4
- Sourcing Plan: distributor lookup: 1106-0041-0328
1106 Series Square Beam (12 Hole, 96 mm Length):
- Manufacturer and Part Number: goBILDA 1106-0012-0096
- Quantity: 8
- Sourcing Plan: distributor lookup: 1106-0012-0096
1101 Series U-Beam (41 Hole, 328 mm Length):
- Manufacturer and Part Number: goBILDA 1101-0041-0328
- Quantity: 1
- Sourcing Plan: distributor lookup: 1101-0041-0328
1102 Series Flat Beam (7 Hole, 56 mm Length):
- Manufacturer and Part Number: goBILDA 1102-0007-0056
- Quantity: 2 packs (4 beams total)
- Sourcing Plan: distributor lookup: 1102-0007-0056
1205 Series Dual Block Mount (1-4):
- Manufacturer and Part Number: goBILDA 1205-0001-0004
- Quantity: 2 packs (4 mounts total)
- Sourcing Plan: distributor lookup: 1205-0001-0004
1203 Series Block Mount (1-1):
- Manufacturer and Part Number: goBILDA 1203-0001-0001
- Quantity: 1 pack (4 gussets total)
- Sourcing Plan: distributor lookup: 1203-0001-0001
2808 Series Stainless Steel Threaded Rod (M4 x 0.7 mm, 50 mm Length):
- Manufacturer and Part Number: goBILDA 2808-0004-0050
- Quantity: 1 pack (2 rods)
- Sourcing Plan: distributor lookup: 2808-0004-0050
2913 Series Steel Ball Linkage (Female M4 x 0.7 mm, 24.1 mm Length):
- Manufacturer and Part Number: goBILDA 2913-0004-0241
- Quantity: 2 packs (4 linkages total)
- Function: Connects differential pivot cross-link mechanism.
- Sourcing Plan: distributor lookup: 2913-0004-0241
Idler Bearing-Hub (32 mm OD, 16 mm Height):
- Manufacturer and Part Number: goBILDA 1608-0001-0001
- Quantity: 1
- Function: Main top-chassis differential pivot bearing.
- Sourcing Plan: distributor lookup: 1608-0001-0001
Plastic Hinge:
- Manufacturer and Part Number: goBILDA 2902-0003-0001
- Quantity: 2 packs (4 hinges total)
- Function: Top access lid panel articulation.
- Sourcing Plan: distributor lookup: 2902-0003-0001
1501 Series M4 x 0.7 mm Standoff (6 mm OD, 8 mm Length):
- Manufacturer and Part Number: goBILDA 1501-0006-0080
- Quantity: 2 packs (8 standoffs total)
- Sourcing Plan: distributor lookup: 1501-0006-0080
1501 Series M4 x 0.7 mm Standoff (6 mm OD, 22 mm Length):
- Manufacturer and Part Number: goBILDA 1501-0006-0220
- Quantity: 2 packs (8 standoffs total)
- Sourcing Plan: distributor lookup: 1501-0006-0220
1500 Series Plastic Spacer (6 mm ID x 8 mm OD, 1 mm Thickness):
- Manufacturer and Part Number: goBILDA 1500-0010-0006
- Quantity: 1 pack (12 spacers)
- Sourcing Plan: distributor lookup: 1500-0010-0006
1102 Series Flat Beam (2 Hole, 16 mm Length):
- Manufacturer and Part Number: goBILDA 1102-0002-0016
- Quantity: 2 packs (4 beams total)
- Sourcing Plan: distributor lookup: 1102-0002-0016
Structural Fasteners and Hardware
Hurricane Nut for goRAIL:
- Manufacturer and Part Number: goBILDA 2805-0004-0108
- Quantity: 1 pack (25 pieces)
- Sourcing Plan: distributor lookup: 2805-0004-0108
Plastic Cable Grommet (14-1):
- Manufacturer and Part Number: goBILDA 2911-0014-0001
- Quantity: 1 pack (12 pieces)
- Function: Protects motor and encoder cables passing through aluminum channel openings.
- Sourcing Plan: distributor lookup: 2911-0014-0001
Zinc Plated Steel Washer (M4 x 8 mm OD):
- Manufacturer and Part Number: goBILDA 2801-0004-0008
- Quantity: 1 pack (25 pieces)
- Sourcing Plan: distributor lookup: 2801-0004-0008
Zinc Plated Steel Hex Nut (M4 x 0.7 mm, 7 mm Hex):
- Manufacturer and Part Number: goBILDA 2811-0004-0007
- Quantity: 4 packs (100 pieces total)
- Sourcing Plan: distributor lookup: 2811-0004-0007
Zinc Plated Steel Nylon-Insert Locknut (M4 x 0.7 mm, 7 mm Hex):
- Manufacturer and Part Number: goBILDA 2812-0004-0007
- Quantity: 1 pack (25 pieces)
- Sourcing Plan: distributor lookup: 2812-0004-0007
M4 x 0.7 mm Button Head Screws:
- Length 6 mm: goBILDA 2802-0004-0006, Quantity: 2 packs (50 pcs). Sourcing plan: distributor lookup: 2802-0004-0006
- Length 10 mm: goBILDA 2802-0004-0010, Quantity: 3 packs (75 pcs). Sourcing plan: distributor lookup: 2802-0004-0010
- Length 16 mm: goBILDA 2802-0004-0016, Quantity: 2 packs (50 pcs). Sourcing plan: distributor lookup: 2802-0004-0016
M4 x 0.7 mm Socket Head Screws:
- Length 8 mm: goBILDA 2800-0004-0008, Quantity: 2 packs (50 pcs). Sourcing plan: distributor lookup: 2800-0004-0008
- Length 10 mm: goBILDA 2800-0004-0010, Quantity: 3 packs (75 pcs). Sourcing plan: distributor lookup: 2800-0004-0010
- Length 12 mm: goBILDA 2800-0004-0012, Quantity: 1 pack (25 pcs). Sourcing plan: distributor lookup: 2800-0004-0012
- Length 16 mm: goBILDA 2800-0004-0016, Quantity: 2 packs (50 pcs). Sourcing plan: distributor lookup: 2800-0004-0016
- Length 20 mm: goBILDA 2800-0004-0020, Quantity: 1 pack (25 pcs). Sourcing plan: distributor lookup: 2800-0004-0020
5. Assembly Tools and Consumables
- Blue Threadlocker (Loctite 242): Removable medium-strength anaerobic threadlocker (e.g. goBILDA Loctite Blue 242 6ml). Sourcing plan: retail shopping search: Loctite 242 threadlocker blue
- 7 mm Nut Driver: Hollow-shaft nut driver for M4 hex nuts. Sourcing plan: distributor lookup (representative example — sources give spec only): goBILDA 7mm combination nut driver
- 2.5 mm and 3.0 mm Ball-End Hex Keys: Sourcing plan: retail shopping search: 2.5mm and 3mm ball-end hex key wrench
- Ratcheting Terminal Crimper: For Molex Mini-Fit/PCI-E, JST-XH, and DuPont contacts. Sourcing plan: retail shopping search: SN-28B / SN-48B ratcheting wire crimper
Software and network dependencies
Operating System:
- Component: Ubuntu Linux LTS (Ubuntu 24.04 LTS "Noble Numbat", Ubuntu 22.04 LTS "Jammy Jellyfish", or Ubuntu 20.04 LTS "Focal Fossa", Server or Desktop images)
- Source: Official Ubuntu Raspberry Pi images fetched via Raspberry Pi Imager
- Version: Stated in documentation ("latest Long Term Support (LTS) version", tested on Focal, Jammy, and Noble)
- Pinning: Not pinned
- Check Plan: support-status lookup: Ubuntu 24.04 LTS
Robotics Middleware:
- Component: ROS 2 (Robot Operating System 2)
- Source: ROS 2 apt repository (
http://packages.ros.org/ros2/ubuntu) - Version: Stated in documentation (Documentation states: "In what follows, we assume ROS 2 Jazzy"; Foxy, Iron, and Humble also referenced)
- Pinning: Not pinned; installed via unconstrained package manager command
sudo apt install ros-${ROS_DISTRO}-ros-base - Manifest Location:
osr-rover-code_setup_rpi.md - Check Plan: support-status lookup: ROS 2 Jazzy
Onboard Rover Application Code:
- Component:
nasa-jpl/osr-rover-code(packagesosr_bringup,osr_control,osr_interfaces) - Source:
https://github.com/nasa-jpl/osr-rover-code.git - Version: Not stated
- Pinning: Not pinned; installed via unversioned
git clone https://github.com/nasa-jpl/osr-rover-code.gitwithout a git commit hash or release tag - Manifest Location: ROS package manifests
package.xmllocated within cloned repository subdirectories - Check Plan: not checkable: unpinned git repository clone
- Component:
Python Execution Environment and Libraries:
- Component: Python 3 virtual environment (
python3 -m venv venv --system-site-packages) - Python Version: Not stated (system default provided by host Ubuntu release)
- Pip Packages:
adafruit-circuitpython-servokit: Stated in documentation (osr-rover-code_setup_rpi.md), unpinnedpip installina260: Stated in documentation (osr-rover-code_setup_rpi.md), unpinnedpip installRPi.GPIO: Stated in documentation (osr-rover-code_setup_rpi.md), unpinnedpip installsmbus: Stated in documentation (osr-rover-code_setup_rpi.md), unpinnedpip install
- Pinning: Not pinned in any manifest or lockfile; command executed as bare
python3 -m pip install adafruit-circuitpython-servokit ina260 RPi.GPIO smbusinosr-rover-code_setup_rpi.md - Manifest Location: No
requirements.txtor lockfile supplied; command hardcoded inosr-rover-code_setup_rpi.md - Check Plan: not checkable: unpinned Python pip dependencies
- Component: Python 3 virtual environment (
System Utilities and Build Packages:
- Components:
git,python3-rosdep,python3-pip,raspi-config,python3-colcon-common-extensions,ros-${ROS_DISTRO}-joy - Version: Not stated
- Pinning: Not pinned; installed via bare
apt install - Check Plan: not checkable: unpinned system packages
- Components:
Motor Controller Firmware:
- Component: Basic Micro RoboClaw 2x7A Onboard Firmware
- Version: Stated in documentation as
USB Roboclaw 2x7a v4.2.8(reported byroboclawtest.pyoutput) - Pinning: Stated in documentation as factory default or later
- Check Plan: not checkable: vendor embedded firmware
Network Exposure and Daemon Configuration:
- Network Interfaces: Wi-Fi (WLAN) or Ethernet, configured headless via Raspberry Pi Imager.
- SSH Server: SSH is explicitly instructed to be enabled on port 22 (
Enable SSHin imager settings) for headless command-line access over the local Wi-Fi network (ssh user@raspberrypi.local). - Default Credentials: Not stated in the sources; documentation explicitly requires the builder to configure their own custom username and password during the SD card imaging process.
- ROS 2 Network DDS Middleware: Listens on local network UDP/multicast ports for ROS 2 discovery and inter-node communication (topics
/cmd_pwm,/joy,/odom). - Autostart Daemon: Systemd background service
osr_startup.servicedeployed to/etc/systemd/system/osr_startup.service(mode 644) symlinked to/usr/local/bin/launch_osr.sh, executingros2 launch osr_bringup osr_mod_launch.pyautomatically as a background daemon at boot. - System Privileges: Builder user account is added to
tty,dialout, andinputLinux user groups. Udev rules deployed to/etc/udev/rules.d/grant world read/write permissions (0666/a+rw) to serial nodes (/dev/serial0,/dev/ttyS0,/dev/ttyAMA0) and controller nodes (/dev/input/event*,/dev/input/js0).
Downloads, URLs, and Remote Assets
- Primary Rover Repository:
https://github.com/nasa-jpl/open-source-rover(Apache 2.0 license). - Onboard Software Repository:
https://github.com/nasa-jpl/osr-rover-code(contains ROS 2 nodes, launch files, and bring-up utilities). - 3D CAD Complete Assembly: Hosted remotely on OnShape at document ID
e4f00b1a3d2edb1a84bbba1c(https://cad.onshape.com/documents/e4f00b1a3d2edb1a84bbba1c/w/8ab8f394324bcc586236ef5d/e/9191e5ad2a70f387b419bc55). - Open Source Hardware Association (OSHWA) Certification: Certificate US002551 (
https://certification.oshwa.org/us002551.html).
PCB and Mechanical Fabrication Specifications
- Custom Printed Circuit Boards:
- Brain Board: 2-layer FR-4 board, 1.6 mm thickness, 1 oz copper, lead-free HASL or ENIG finish, green solder mask with white silkscreen. Fabricated from Gerber archive
v2.0.2referenced at../electrical/pcb/control_board/gerbers/v2.0.2/. - Motor Board: 2-layer FR-4 board, 1.6 mm thickness, 1 oz or 2 oz copper (handling up to 10 A motor power buses), lead-free finish. Fabricated from Gerber archive
v2.0.2. - Suggested Vendor: JLCPCB or equivalent 2-layer commercial PCB prototyping service.
- Brain Board: 2-layer FR-4 board, 1.6 mm thickness, 1 oz copper, lead-free HASL or ENIG finish, green solder mask with white silkscreen. Fabricated from Gerber archive
- Body Enclosure Plates:
- Material: 3.0 mm (1/8") thick sheet stock (extruded acrylic, MDF, or birch hardwood).
- Fabrication Method: 2D CNC laser cutting using DXF vector profiles referenced in
../mechanical/body/laser_cut_parts/. Cutouts provide clearance for the rectangular DC power meter, toggle switch, wire routing grommets, and chassis fasteners. Services cited: SendCutSend or Sculpteo.