OpenAMRobot 2.0: where we are and what is next
- 18 days to v2.0.0-rc.1 (20 Nov, pre-release). Nothing is physically accepted yet. The full Gate A, the I8 freeze, the STM32 go/no-go (fallback Teensy) and UI Gate A (no fallback date) are on Fri 6 Nov. The SO-101 fixture is due 13 Nov. Physical integration, testing and acceptance run 23 Nov to 18 Dec; v2.0.0 is 18 Dec.
- The critical path to rc.1: the full Gate A on 6 Nov, the command arbitration PR (platform-sw #90, head bbb9bc9, target merge Tue 3 Nov), the K1/K2 contactor decision on Mon 2 Nov (BUY-32 stays blocked until then), the procurement buy lists due Mon 2 Nov, the M-09 positions from the CAD owner and the BMS and power distribution layout.
- Release 001 and 2.0 share one base electrical design, with the WCM-500-24 charger on both: recorded in P-03 rev19.7 item 23 and in the register (SHARED-BASE, .github #55). E-01 rev1.6 (1 Nov) is the power and safety baseline. It is not built yet; test evidence will carry over only where parts, wiring and criteria match.
This week: 24 Oct to 1 Nov 2026
State at 1 Nov 2026, 23:59 CET. Later merges are listed at the end and count as open here.
1. The combined robot model is merged
- upperbody-sw #14 "integrate option B upper-body model and MoveIt configuration" merged on 1 Nov 2026, 18:25 UTC (squash 41ff4ea). Base, lift, both arms and grippers are now one robot model on main.
- Follow-ups merged on 1 Nov: upperbody-sw #20 (CI: A6 on every PR, A7 on demand), upperbody-sw #21 (validates platform 131e500: A6 793 executed, 0 failed; A7 246 executed, 0 failed), upperbody-sw #22 (head camera 0.042 m, hp30), upperbody-sw #26 (item 24 upper-body equipment, the same as the docs model) and upperbody-sw #30 (V01 acceptance recorded).
- PLATFORM-PIN moved to openamr-platform-sw 131e500 (.github #74).
- The simulation twin works: base, both arms, grippers and lift in Gazebo. Final validation is in progress. This is simulation evidence, not acceptance.
- Open: upperbody-sw #27 (draft) and upperbody-sw #29 (lift as a planned joint); issues #18, #23, #24, #25 and #28.
- P-03 item 25 D8: the combined-model datums are now the source of the item 24 equipment positions (Getac, light, second E-stop, stop sensors, rod, flag). The roadmap model follows datums.yaml for these items.
2. Hardware decisions (P-03 rev19.8 to rev20.2, B-02 rev18.10, decisions.yaml 5ed600e)
- Availability rule. Every part must be in stock at two or more independent suppliers. A single-source part appears only as a named option beside a second-sourced one. No-stock parts are not selected.
- Base controller. NUCLEO-H723ZG with no click shield (CTL-002 removed).
- IMU. TDK EV_ICM-42688-P board replaces MIKROE-4237. imu_link (0.0544, 0, 0.1210), yaw -90 deg, 219.04 mm above the floor on bracket MMP.04.00.00.002. Wired directly on SPI4 (harness CTL-012). INT1 GPIO not yet assigned.
- CAN isolator. CTL-014 (MIKROE-5785) on FDCAN2, wired directly.
- SAFE 24 V. MEAN WELL DDR-240B-24 behind F-LIFT 15 A. It feeds the brake release and the DOLD lift, so an E-stop engages the brakes.
- Precharge fitted. Kpre relay, resistor and 1 A fuse across K2 only.
- Hub motors. 2 x ZLTECH ZLLG80ASM250-L-B, 200 mm, double shaft, brake side inboard on both. One ZLAC8015D V4.2 for both, one motor per axis. Brake 24 V, 12.5 W, 6 Nm.
- Lift. DOLD Hexalift V4 350: written 800 N power-off holding confirmation received. The holding test on the delivered unit is still the gate. One unit for Berlin.
- Second E-stop. Schneider XB4BS8445 + ZBE-102; the static-column position of 28 Oct is superseded: since 2 Nov 2026 the button is on top of the moving adapter plate behind the arm post (register SAFETY-PROCUREMENT). The term "chest E-stop" is retired. Base front panel: E-stop on the robot +y side of the base camera, RESET XB4BW36B5 on the -y side.
- Tablet, head light, head camera. Getac ZX80 in portrait, the decided default (owner correction of 2 Nov 2026). Falcon FLDL-i150x15-W head light directly under it, top edge 10 mm below the Getac, low-side switched by the lift node. ZED Mini lens 57 mm ahead of (owner correction of 2 Nov 2026, was 42 mm) and 223 mm above the arm mount, 1223 mm above the floor at L1000, baseline hp30.
- Lift node and stop sensors. CTL-017 on CAN3. Three SICK IME12-04BNSZC0S at 120 / 295 / 470 mm on the static profile, steel flag on a 430 mm rod (drawing LIFT-SNS-01 rev1).
- Battery (25 to 29 Oct). 8 x EVE LF105 upright across the robot on the rear deck, envelope 314 x 140 x 210 mm (provisional); superseded 2 Nov 2026 by the proposal of 4 + 4 cells in two removable side trays (pending the B-02 update). Power distribution behind the cells, BMS and fuse panel in the side zones, nothing on top of the cells, side panels detachable. TZBOT WCM-500-24 designed in. The BMS and power distribution layout with real part sizes is still due.
- Status vocabulary. 8 robot states plus DISCONNECTED, UNKNOWN, STALE and STOPPED (SOFTWARE). Stop (software) is base-only today. The hardwired E-stop is the safety function.
3. Gate A partial, 30 Oct: A1 failed
- Only A1 (control) was run. collision_monitor slows the robot but never stops it.
- The only polygon was "approach". Its time_before_collision of 0.8 s falls inside the 0.40 m minimum range of the LiDAR.
- The full Gate A is on Fri 6 Nov.
Merged after the snapshot
- upperbody-sw #29 lift as a planned joint merged on 2 Nov, 00:06 UTC; it closed issues #17 and #18. It counts as open in this snapshot. The roadmap model and the parity check are rebuilt from openamr-upperbody-sw a8c304d (main with #29).
- docs #69 merged on 2 Nov: the model call to action card and the link preview tags on the overview and robot pages.
Owner decisions of 2 Nov 2026 (to be entered in P-03 and M-01)
- Drive wheels: 2 mm intended tyre compression (r 0.100 m, axle at 0.098 m); the second E-stop sits on top of the adapter plate behind the post, button up (owner correction of 2 Nov 2026; actuator 0.90 / 1.08 / 1.25 m at the three lift stops); the lift base plate sits on the centre-frame arch (330 x 140 x 10 mm, 4 x M8 into the arch rivet nuts); wireless charging is prepared in 2.0 and the receiver unit is installed later: the TZBOT WCM-500-24 receiver position is at the rear panel on the centre line, with the batteries in the side pockets and the power electronics above it, and manual charging through SB50 works at any time; the front bay has one layout. Lift stop sensors on the rear face of the static column (z 120 / 295 / 470 mm), the flag rod under a 65 mm rear extension of the one-piece adapter plate (425 x 100 x 10 mm, 6082-T6). Decided fixes, CAD pending: a doubler or through-bolts with a backing plate under the arch top sheet, and notched side-panel return flanges at x -0.275 to -0.133 m. The battery becomes two removable trays joined by the keyed connector PWR-018. The rear power layout is still open: the automatic packer could not place FB-B and the BMS (GI-080, major); a manual two-level layout with datasheet outlines follows in the next update. Model and load check: Hardware.
Source: openamr-upperbody-sw, openamr-platform-sw and .github main and PR states; P-03 rev20.2, E-01 rev1.6, B-02 rev18.10, decisions.yaml 5ed600e · 2 Nov 2026
OpenAMRobot 2.0: open-source mobile base with a 350 mm lift and two OpenArm 2.0 arms. Explore the 3D model, or get the robot model (URDF, MoveIt, Gazebo) on GitHub.
A. Where we are
What this shows: every part of the 2.0 system with its delivery status, runtime evidence and physical acceptance, and a one-line state.
How to read it: each box has a coloured left bar, a status chip with an icon and the status in words; rounded pills are runtime evidence, pointed boxes are physical acceptance; the legend buttons highlight every item with that status; a red triangle marks the critical path to rc.1, two rings mark the base design shared with release 001; select a block to open its detail.
Source: this roadmap's progress, robot, hardware and architecture pages (each block links to its evidence); GitHub state and audit pass 2 · 2 Nov 2026
B. What is next
What this shows: the work per area from today to v2.0.0 on 18 Dec, with the milestones and the dependencies between items.
How to read it: time runs left to right; solid bars and solid milestone lines are confirmed dates and name their source (P-02 rev19.2, the register, P-03 or an issue body), dashed bars are proposed targets from audit pass 2; items with no date in any source start today and end open (double chevron); a red triangle and red outline mark the critical path to rc.1, and dotted red arrows show which items feed rc.1; each box has a coloured left bar, a status chip with an icon and the status in words.
Scroll sideways inside the diagram.
Source: P-02 rev19.2 (Gate A and electrical/safety release 30 Oct, I8 freeze and STM32 go/no-go 6 Nov, Gate B 13 to 20 Nov), P-03 rev20.2 (Gate A full run 6 Nov; 30 Oct was Gate A partial, A1 control only), the decisions register (rc.1 20 Nov, v2.0.0 18 Dec), P-03 rev19.7 item 12 (integration window 23 Nov to 18 Dec), issue bodies for issue due dates (no repository uses GitHub milestones), audit pass 2 top 20 actions (proposed dates) · 2 Nov 2026
C. One base, two robots
What this shows: the base electrical design that release 001 and 2.0 are to share (recorded in the register and P-03 rev19.7 item 23, not built), and the intended controller and sensor differences.
How to read it: the centre box is the shared core (recorded, not built); each row says whether test evidence from release 001 carries over to 2.0; the side boxes are the intended differences. Details and the equivalence table are on the hardware page.
Shared core per E-01 rev1.6 (1 Nov) and B-02 rev18.10: battery of 8 x EVE LF105 with a Daly 8S 150 A BMS; F0 110 A Class T and the lockable disconnect BS-6004B on the BAT bus; two dual-channel E-stops in series into a Pilz PNOZ s3, which drives K1 and K2 in series (decision 2 Nov: Gigavac GX11CAC or a Schneider TeSys D LC1D80BD / Siemens 3RT2 size S3 with mirror contacts); precharge relay, resistor and 1 A fuse across K2 only; SAFE 24 V from a MEAN WELL DDR-240B-24 behind F-LIFT 15 A for the brake release and the lift; one ZLAC8015D for both hub motors on CAN1, the Daly BMS on CAN2 through the CTL-014 isolator, the lift node CTL-017 on CAN3; WCM-500-24 wireless charging plus manual charging through an Anderson SB50. The base controller of 2.0 is the NUCLEO-H723ZG with no click shield; the IMU is the TDK EV_ICM-42688-P on SPI4. Release 001 keeps its Teensy 4.0 until the STM32 go/no-go on 6 Nov.
Source: project-lead decision of 19 Oct 2026 by @BotshareAI (project lead), recorded in P-03 rev19.7 item 23 (20 Oct) and decisions.yaml SHARED-BASE (.github #55, 1c3f516); WCM-500-24 on both robots added 20 Oct; equivalence table on the hardware page · 2 Nov 2026
D. What to do next
The 10 most urgent of 38 steps of the proposed sequence, critical path first. Full action plan.
- 1. Decide K1/K2 on Mon 2 Nov 2026 under the availability rule: option A Gigavac GX11CAC, or option B Schneider TeSys D LC1D80BD / Siemens 3RT2 size S3 with mirror contacts. BUY-32 stays blocked until then. (step 2) critical path
@evans-kwashie (electrical, safety, firmware) · BLOCKED · due 2 Nov 2026 K1/K2 decision under the availability rule (P-03 rev20.2) - 2. Deliver the procurement buy lists under the availability rule (in stock at two or more independent suppliers). (step 36) critical path
owner: to be assigned; decisions @BotshareAI (project lead) · IN PROGRESS · due 2 Nov 2026 confirmed (procurement plan) - 3. Pass Gate A on the Jetson with the existing Teensy and drivetrain. (step 7) critical path
@evans-kwashie (electrical, safety, firmware) · MERGED UNTESTED · due 6 Nov 2026 confirmed (Gate A full run, P-03 rev20.2; 30 Oct was Gate A partial: A1 control only) - 4. Route UI teleop, blocks and voice actions into an arbitrated twist_mux input; the browser never publishes /cmd_vel. (step 10) critical path
@parthkeshari (UI lead) · IN REVIEW · due 6 Nov 2026 proposed (audit pass 2 action 1) - 5. Define the twist_mux input topics, priorities and timeouts for #35 option (b) in a contract change request. (step 6) critical path
@skunal3318 (navigation) · IN REVIEW · due 30 Oct 2026 confirmed (platform-sw #35 issue body) - 6. Decide which base controller rc.1 runs (STM32 go/no-go, Teensy Gate A as fallback). (step 15) critical path
to be confirmed · NOT STARTED · due 6 Nov 2026 confirmed (P-02 rev19.2 STM32 go/no-go; fallback Teensy) - 7. Freeze the I8 base-controller contract. (step 16)
@evans-kwashie (electrical, safety, firmware) · DOCUMENTED ONLY · due 6 Nov 2026 confirmed (P-02 rev19.2, I8 freeze) - 8. Confirm the absolute positions of the Getac, head light, second E-stop and lift stop sensors (work package M-09) and push the CAD fixes promised on 31 Oct. (step 37) critical path
@fridayali (mechanical CAD, URDF, docking) · NOT STARTED · due none in any source - 9. Deliver the BMS and power distribution layout with real part sizes for the rear battery zone. (step 38) critical path
@evans-kwashie (electrical, safety, firmware); tray MEC-007 @fridayali (mechanical CAD, URDF, docking) · NOT STARTED · due none in any source - 10. Land #35 option (b): docking commands through the chain without switching the collision monitor off. (step 11) critical path
@skunal3318 (navigation); @fridayali (mechanical CAD, URDF, docking) · IN PROGRESS · due 30 Oct 2026 confirmed (platform-sw #35 issue body); audit pass 2 action 2 proposed 6 Nov
How to read this
- Delivery status, runtime evidence and physical acceptance are separate. Simulation, fixtures and mock hardware are development evidence, not acceptance.
- critical path to rc.1 · shared with release 001 · dashed outline: proposed target or no date set.
- People are shown by GitHub handle and role.