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.

robotics mobile robotics mechatronics ROS 2 Robot Operating System rocker-bogie suspension Ackermann steering Raspberry Pi embedded Linux motor control quadrature encoders pulse-width modulation PWM I2C UART power distribution PCB assembly teleoperation open source hardware

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 pages
    view · 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 pages
    view · 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.2 is 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.py and 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/js0 and ROS 2 joy_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_rpm in 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 (packages osr_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.git without a git commit hash or release tag
    • Manifest Location: ROS package manifests package.xml located within cloned repository subdirectories
    • Check Plan: not checkable: unpinned git repository clone
  • 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), unpinned pip install
      • ina260: Stated in documentation (osr-rover-code_setup_rpi.md), unpinned pip install
      • RPi.GPIO: Stated in documentation (osr-rover-code_setup_rpi.md), unpinned pip install
      • smbus: Stated in documentation (osr-rover-code_setup_rpi.md), unpinned pip install
    • Pinning: Not pinned in any manifest or lockfile; command executed as bare python3 -m pip install adafruit-circuitpython-servokit ina260 RPi.GPIO smbus in osr-rover-code_setup_rpi.md
    • Manifest Location: No requirements.txt or lockfile supplied; command hardcoded in osr-rover-code_setup_rpi.md
    • Check Plan: not checkable: unpinned Python pip dependencies
  • 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
  • Motor Controller Firmware:

    • Component: Basic Micro RoboClaw 2x7A Onboard Firmware
    • Version: Stated in documentation as USB Roboclaw 2x7a v4.2.8 (reported by roboclawtest.py output)
    • 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 SSH in 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.service deployed to /etc/systemd/system/osr_startup.service (mode 644) symlinked to /usr/local/bin/launch_osr.sh, executing ros2 launch osr_bringup osr_mod_launch.py automatically as a background daemon at boot.
    • System Privileges: Builder user account is added to tty, dialout, and input Linux 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.2 referenced 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.
  • 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.