Software stack & tools
Hardware without software is furniture. A serious learner — or a team that bought robots from SVRC — needs a repeatable software story: drivers, middleware, simulation, training, evaluation, and deployment.
Learning outcomes
- Order the stack from drivers through deployment and name one risk per layer.
- Explain why logging format should precede policy training on new hardware.
- Contrast simulation success with field metrics that matter for pilots.
Drivers → middleware → sim → data/learning → eval → deployment.
Draw your project’s stack; circle where time sync and logging live.
Write a one-page “definition of done” for a policy update; share on the Forum.
Self-check
I bought hardware — where do I start?
What is one deployment metric that isn’t accuracy?
STEM alignment: abstraction & modularity, computational thinking, testing & debugging.
Why this chapter matters
This is the software spine of the Academy. If you skip it, every later page about integration, operations, and pilots becomes much harder to apply in a repeatable way.
Pair it with
Read this alongside Communication & architecture for interfaces and timing, then move to Mechanical & system design to see how software assumptions hit the physical robot.
Layers (build familiarity top to bottom)
- Drivers & real-time paths: motor controllers, CAN/EtherCAT, safe command paths — pairs with Communication & architecture.
- Middleware: ROS 2 graphs, recording, time sync — see Tools hub for frameworks.
- Simulation: MuJoCo, Isaac, MJX — reduce hardware wear while learning; align sim assets with real URDFs.
- Data & learning: episode formats, LeRobot-style pipelines, fine-tuning VLAs — Getting Started, Datasets, Models.
- Evaluation: success metrics, failure mining, regression tests before policy updates.
- Deployment: OTA configs, logging in the field, fleet hygiene — ties to Data Platform thinking.
How does SVRC help?
Best next move: once your software layers are clear, go to integration if you are designing a system, or go to communication if your biggest current problem is interfaces, latency, or logs.