Skip to content
Atreyu Sutton

Generated stand-in image. Not a photograph of the real build.

Generated stand-in image for TorQ. Not a photograph of the real build.

Software

TorQ

A tracked shop robot that stores service manuals and puts the right page on a screen in its belly, so every number arrives with its source beside it.

Written for the group. Read it, then tell me what you think.

I want us to build TorQ instead of the sorting robot. Ask it a torque spec and it finds the page in our service manuals, then displays it on a hinged screen in its belly, tilted up to your eyeline. It is also a lit inspection magnifier for reading part numbers, it films your teardown with its own light, it picks up dropped fasteners with a magnet, and it runs timers for torque sequences and cure times.

The chassis, drive, power, compute and sensors are the same robot we already planned. What changes is what it carries and what it does with it. This is a payload swap, not a restart, and roughly 70 percent of the build is untouched.

Why I am moving off the last idea

The sorting robot, and why this one is better

The original was a small tracked robot that looked at an item, decided whether it was trash, compost or recycling, picked it up and put it in its belly. It never composted anything. It was a sorting robot with a bin, and the interesting part was the deciding.

I still think the classification is a good idea. A camera and a small model can tell a can from a banana peel from a plastic wrapper, and watching a robot make that call and act on it is a genuinely good demo.

So this is not me deciding the idea was stupid. It is me working out that the part that makes it work is not the part that makes it look good, and that we would not have found that out until late.

  1. 01

    Picking things up was the whole product, and it is the hardest thing on the list

    Deciding what an item is does not do anything on its own. The robot only exists if it can pick the item up, and household waste is the worst case for that: a crushed can, a banana peel, a film wrapper and a bottle each need a different grasp, and none of their shapes are known in advance. That is a research problem, not a twelve week problem.

  2. 02

    The easy half is the half that looks impressive, so the risk sits at the end

    Classification would have come together fast and looked great. The manipulation is where it dies. That means the project feels like it is going well right up until the point where there is no time left to change course. That risk profile is the one I most want to avoid.

  3. 03

    A drink can weighs more than it can lift

    Realistic payload at our budget is 50 to 150g. A full can is several times that. Even a working gripper would have handled a subset of household waste small enough that it would not have been useful.

  4. 04

    The belly holds almost nothing

    Once the battery, the compute and the drive are in, a robot this size has maybe a litre or two of space left. That is a couple of items before a human has to come and empty it.

  5. 05

    If a person has to be standing there, it has not saved anyone anything

    You were already holding the item. You could have put it in the bin. The version that actually helps is the one that finds things across a room on its own, which needs navigation and search on top of the grasping. The useful version is much harder than the demo version.

  6. 06

    Being mostly right about recycling is worse than not sorting

    What is recyclable depends on your municipality and your hauler, and it changes. One wrong item can contaminate a whole load. That is a rule set we do not control and cannot verify, attached to a failure that is invisible to us.

  7. 07

    Nothing about it degrades gracefully

    If the gripper does not work we have a camera that names your rubbish. There is no partial version of that robot that is worth having, which is the property a hard deadline punishes most.

TorQ inverts the risk. The essential part, finding the right page and putting it on screen, is a laptop program we can build in week 2 before a single part arrives, so if it is going to fail it fails while we still have ten weeks. And when something does go wrong it degrades into something useful instead of into nothing: no model, still a manual page; no retrieval, still a screen on wheels you can drive. The belly even survived the change. It still opens, it just holds a display instead of a bin.

Here is the whole range, because the reason I want this one is that a single small machine covers all of it. Every line below runs on the same four servos, one camera with a light ring, one screen, one microphone and one magnet. Nothing here needs a part we are not already buying.

It knows your manuals

  • Torque specs, with the page on screen

    Ask for the lug nut torque on a 2015 Civic and get the number with the actual manual page under it. It never shows a value without its source.

  • Ask in your own words

    Not a search box. Say what you are doing and it works out the vehicle and the fastener.

  • Wiring diagrams and exploded views

    Same library, different query. Free once the manuals are ingested.

  • Fluid capacities and fill specs

    How much goes in, what grade, where the plug is.

  • Torque sequences that count with you

    Shows the criss cross pattern and tracks bolt 3 of 10 so you do not lose your place.

  • A spec table you can edit

    The figures you look up constantly get saved locally, so they are instant and they work with no internet at all.

It films your teardown, lit

  • The light and the camera point the same way

    The LED ring is coaxial with the lens, on a head that aims both at once. You cannot film a teardown properly on a phone because one hand is already holding the flashlight. This is the whole reason it can film in an engine bay.

  • Mark a step by voice while your hands are busy

    Say mark and it bookmarks that moment in the recording. No stopping, no clean hands required.

  • Plays the steps back in reverse for reassembly

    Taking something apart and not remembering how it goes back together is the universal one. It hands you your own bookmarks, backwards.

  • Photo per step as the cheap version

    Say photo, it timestamps into a job log and builds a reverse order gallery. Works even if we never finish video.

  • Timelapse of a whole job

    Set it on the bench and let it run. The camera is already there and already lit.

  • Before and after, side by side

    Shoot the assembly intact, shoot it apart, compare the two on the belly.

  • Footage you can actually post

    Lit, steady, from a fixed angle that is not your elbow. Teardown videos worth putting somewhere.

It sees what you cannot

  • A lit inspection magnifier

    Camera and ring light on the belly screen, for casting numbers and date stamps in a dark bay. Probably the thing we reach for most.

  • Remote eyes under the car

    Drive it where your head does not fit and watch on your phone while you steer the head.

  • Reads a part number and looks it up

    Point it at a casting number, it reads the text and searches the manuals for it.

  • Reads a VIN and filters everything to that car

    Scan the door jamb and every lookup after that is narrowed to the right vehicle and year.

It plugs into the car

  • Pulls trouble codes and opens the right page

    A fifteen dollar Bluetooth dongle to the OBD port, then the code goes straight to the diagnostic tree in the manual. 1996 and newer.

  • Live data on the belly

    Coolant temp, RPM, fuel trims and O2 sensors while it idles.

  • Freeze frame and code clearing

    Capture the conditions when the fault set, then clear it once you have fixed it.

It replaces small tools

  • A digital angle gauge

    Set it on a surface and read the angle. Driveline and pinion angles, checking a lift is level, corner ride heights. That is a sixty dollar tool.

  • Gauges drawn at exact scale on the glass

    Thread pitch gauge, bolt diameter chart, a ruler. Hold the fastener against the screen.

  • Unit conversion and timers

    Foot pounds to newton metres, cure times, brake bleed cycles, oil drains.

  • Magnets that pick up what you drop

    A tray on top you can throw bolts into without bending down, and a sled underneath that sweeps the floor as it drives.

  • Send it to sweep the floor

    Say sweep and it patterns across the shop collecting dropped hardware, then brings it back.

  • Records a noise so you can compare it

    Capture a knock or a squeal at different revs, keep it, play it back next week or send it to someone.

It works with dirty hands

  • Voice control

    Pause, back thirty, next step, without touching anything. Plus a rubber button you can hit with a knuckle when the shop is loud.

  • Reads the spec out loud

    For when you are under the car and cannot see the screen. It says the number and names the source, never just the number.

  • How to videos on its belly

    Cached, so they keep playing when the shop WiFi drops.

  • Your phone is the same interface

    The belly and your phone run one web app. Type the awkward stuff on the phone, read it off the robot.

  • Voice notes

    Say note, need a new gasket, and it is written down and attached to the job.

  • It comes to you and angles the screen

    Drives over, turns to face you, and tilts the display up so you can read it from the floor.

It remembers, and it grows

  • A log per vehicle

    What you did, when, at what mileage, with the photos from that job attached.

  • Add manuals whenever you want

    Drop in a new PDF, it gets ingested once, and it is searchable forever after.

  • A folder for new abilities

    Anything we write later drops into a skills folder and shows up on the belly. It does not need rebuilding to learn something.

And it is good company

  • It behaves like something, not a cart

    Animated eyes, idle head motion, and it reacts when you pick it up or tilt it.

  • It notices when you are stuck

    Ten minutes on the same bolt and it offers the spec without being asked.

  • It watches what you are working on

    Head follows your hands, light already pointed where you need it.

That is thirty odd things, and no, not all of it lands in twelve weeks. I am listing the full range because it is all reachable on this one set of parts, which is the argument. The floor we have to hit by week 9 is the manual lookup, the magnifier, the magnets and the timers, with no voice and no model at all. Filming and voice are week 10. The rest is what the hardware already affords once that exists, and any of it can be added later without touching the robot.

01

Spec

LaneSoftware
StatusDesign locked, parts not yet ordered
RoleConcept and system design, now a group build
Duration12 weeks, September to December 2026
Moving joints4
ComputeRaspberry Pi 5, RP2350
ToolsPython, build123d, sqlite, Next.js, Claude API

4moving parts

02

Mechanism

How it works

The governing rule: it never shows a value without showing where the value came from. A wrong torque figure damages an engine or loses a wheel, so the job is not to know the answer, it is to find the page and put it on screen so you can check it yourself.

Phase 1, on a laptop, once per manual

  1. PDF, render every page to PNG (pymupdf)
  2. extract text, OCR the scans (tesseract)
  3. chunk per page, embed (bge-small, local)
  4. sqlite: manual, page, text, embedding, png
  5. optional vision pass, structured torque rows
  6. copy the folder to the robot

This runs on a real computer, never on the Pi. OCR and embedding a 400 page scan is slow and nobody is waiting on it. The optional vision pass is where a model is safest: it extracts tables we can check once against the page and then trust, instead of improvising a number live.

Phase 2, on the robot, per question

  1. question, typed on your phone, tapped, or spoken
  2. embed the query locally on the Pi
  3. top k pages by similarity, filtered by vehicle
  4. SHOW THE PAGE IMAGE on the belly
  5. if online: a model reads those pages and returns plain English plus a structured citation
  6. if offline: hit the pre extracted spec table, instant, no model

The citation is not prose the model writes and we hope is honest. The API returns the page number as a structured field, so we render that page next to the answer and a wrong answer becomes visible rather than silent.

StateWhat you get
Everything workingPlain English answer and the cited manual page
No internetPre extracted spec table and the page image. Faster than online
Nothing matchesThe retrieved page, you read it yourself
Retrieval brokenStill a mobile display you can drive around

There is no single point of failure anywhere in that ladder. That is the property the compost robot never had.

03

Hardware

Four moving joints, total

Two brains, on purpose. A Raspberry Pi 5 runs the screen, web app, camera, retrieval and model calls. An RP2350 holds a 200Hz control loop, the servo bus, motor PID, encoders, the cliff watchdog and the e stop. They talk over USB serial at about 50Hz.

Linux cannot hold a real time loop. The microcontroller keeps the robot safe, stopping at cliffs and cutting the motors, even if the Pi reboots, hangs, or we crash it while developing. That is what stops a bug from becoming a robot on the floor.

Drive, 2 motors

  • 2 N20 gearmotors at 1:100 with magnetic encoders, TB6612FNG driver, closed loop velocity PID on the MCU
  • Printed sprockets, idlers and road wheels, TPU track pads
  • 3 VL53L1X time of flight sensors: one forward, two down at the track nose so it cannot drive off a bench
  • Encoders are not optional. Without them it cannot drive straight

Head, 3 servos

  • Pan, neck tilt, head tilt
  • Pi Camera Module 3 Wide with autofocus, for filming, the magnifier, part numbers and VIN plates
  • A COB LED ring coaxial with the lens, so it lights exactly what the camera sees and aiming the head aims both
  • 2 GC9A01 round LCDs for eyes, with Perlin idle motion and variable blink so it does not read as broken when still

Belly, 1 servo

  • 7 inch DSI touchscreen on a spring counterbalanced hinge
  • Tilts to your eyeline. Floor and bench need very different angles, and a fixed screen is unreadable half the time
  • The counterbalance matters: without it the servo holds screen weight all day, heats up and drains the pack

Senses, no motors

  • BNO085 IMU, which detects being picked up and doubles as a digital angle gauge for driveline work
  • INMP441 mic mounted high away from motor whine, plus a rubber push to talk button, because shops are loud
  • MAX98357A amp and a 5W speaker. Buy the good one: chirps forgive a cheap driver, speech does not
  • Magnets: a parts tray on the top deck, and a removable sled underneath that sweeps up dropped screws as it drives

Power is where these builds die. A 2S2P 18650 pack at about 25Wh, with separate rails: 5V at 5A for the Pi, 6V for the servo bus, common ground, fat bulk caps. Servo inrush browning out the Pi is the number one killer of Raspberry Pi robots. Get it wrong and we spend the term chasing mystery reboots through a closed chassis.

Head pan, neck tilt, head tilt, belly hinge. No arms, no gripper, no legs. Earlier versions of this design had nine joints. Every one we deleted is a bracket, a wire, a tuning session and a failure mode we do not spend the term on.

04

Software

LayerChoiceWhy
Robot servicePython and asyncio, event busSimple, no ROS ceremony we do not need
FirmwareC or MicroPython on the PicoThe real time half
Belly UIChromium kiosk to localhostEvery feature is a web page, fast to build and iterate
Phone UIThe same web app at torq.localOne codebase, two surfaces. Type on your phone, read on the belly
Videoyt-dlp and mpvNot an embedded browser player. Hardware decoded, caches, survives bad shop WiFi
Camerapicamera2H.264 hardware encode
Retrievalsqlite and local embeddingsRuns offline
Ingestpymupdf and tesseractLaptop side, never on the robot
CADbuild123dParametric, one config file drives every dimension

No ROS 2. Nav2 and tf2 are a lot of ceremony for a robot that does not need SLAM grade navigation, and the setup cost would eat weeks we do not have.

05

Carry over

What we keep from the compost build

Unchanged, about 70 percent

  • Tracked base and chassis
  • Closed loop velocity from encoders
  • Pi and microcontroller split
  • Dual rail power and brownout work
  • IMU, time of flight cliff and obstacle sensing
  • Camera and articulated head
  • Parametric CAD approach
  • Idle motion and expression

Removed, all risk

  • Arm and gripper
  • Inverse kinematics and grasp planning
  • The waste classification model
  • The belly bin, and emptying it
  • Any dependency on local recycling rules

Added

  • Hinged display where the bin was
  • Retrieval over ingested PDFs
  • Offline first data architecture
  • Grounded citation of sources

06

Plan

Twelve weeks, and how we split it

WkWorkDone when
1Order everything, including spares. Start CADParts are paid for
2Manual ingest and search on a laptop. Web app skeletonType a query, get the right page. No robot needed
3Parts arrive. Bench rig: Pi, Pico, one servo, one eyeCommand a servo from Python on the Pi
4Head on the bench: 3 DOF, eyes, LED ring, idle motionIt feels alive on the desk
5Power: battery, dual rails, caps. Motors on the benchServos slam and the Pi does not reboot
6Drivetrain: tracks, velocity loop, cliff sensors, joystickDrives straight, stops at an edge
7Chassis integration: head on base, wiring, untetheredDrives around the shop
8Slack week. Something will have gone wrong by nowBack on schedule
9Belly: screen, hinge, counterbalance. Search on the panelRead a spec off its belly
10Model backed answers with citations, then voice, then video. Feature freezeAsk in plain English, get number and page
11Reliability only. Crashes, connectors, heat, battery lifeRuns a full job unattended
12Polish, shell, README, demoDone

Two rules I would ask us to hold: week 8 stays empty, and week 10 is a hard freeze. The last two weeks make what exists reliable, which is the difference between a project and a demo.

07

Workstreams

Four tracks we can run in parallel

TrackOwnsStartsNeeds parts
A, Mechanicalbuild123d body, tracks, head, hinge, print iterationWeek 1No
B, ElectronicsPower rails, Pico loop, servo bus, sensors, USB protocolWeek 3Yes
C, DataIngest pipeline, search, spec extractionWeek 1No
D, InterfaceWeb app, belly UI, phone UI, player, timersWeek 2No

Track C is the important one. It is the whole product, it is the riskiest software, and it needs no hardware at all, so somebody can start it on day one while the rest of us wait on shipping. If it fails we find out in week 2 with ten weeks to recover, instead of week 9 with none.

A and B converge at week 7 for integration. C and D converge at week 9 on the belly.

08

Delivery

What ships, even if things go wrong

Week 9

The floor, must land

A rolling screen that shows you the right page

Drives, will not fall off a bench, tilts its screen, finds the manual page, magnifies a part number, picks up dropped screws, runs timers. No voice, no video, no language model, and still a real tool, three weeks before the deadline.

Week 10

Priority

Plain English answers with cited pages

Ask in your own words, get the number and the exact page it was read off. Roughly four dollars a month to run.

Week 10

Droppable

Voice, then video

Hands free control for when your hands are covered in oil, and how tos on the belly. Separate bets, so losing either breaks nothing underneath it.

After

Upside

Codes, angles and a personality

OBD-II trouble codes chained straight to the manual diagnostic page. A digital angle gauge for driveline work. Reading specs aloud. The idle behaviours that make it feel like something rather than a cart.

If we fall behind we cut in this order, decided now while we are calm: video search, then photo log, then voice, then the motorized hinge, then the model. Never the manual search or the screen.

Parts come to about 495 dollars core, 552 with a spares kit. Order in week 1, all at once, because servo lead times run 2 to 4 weeks, which is a quarter of our project spent waiting if we are slow. Four things I would not cut at any price: separate power rails, motor encoders, cliff sensors, and the spares kit. Those are what stand between us and a project that dies in week six.

09

Where I stand

I am attached to this one. I have put the work in because I think it is the right call for us, and I would rather say that straight than pretend I am neutral about it.

It is still our project, though, so if you do not like it I am not asking you to just go along with it.

Bring an alternative worked out to the same level:

  • What hardware it needs, down to a parts list and a budget
  • What software it needs, and which part is the hardest
  • A 12 week schedule with the risky work scheduled early
  • Where it fails, and what still ships when it does

Put that on the table and if it is better than this, I will build yours. What I would rather we did not do is pick something on the strength of the idea alone and find out in week eight that the hard part was never going to land. That is what would have happened with the sorting robot, and the only reason it costs us nothing is that we worked it out in week zero.