You can begin testing robot-related software before owning a robot. Choose a question that software can answer honestly: can a planner find a clear route, can a command resolve to the right destination, or does a blocked passage produce an explicit failure?
Start with a small world
The 9jaRobotics navigation teaching lab opens a 14-by-10 grid with reception, room 01, store and charger destinations. A breadth-first search planner finds a shortest orthogonal path through clear cells. The moving icon visualises grid positions; it does not model motors, mass, wheels or sensor readings.
Try a destination command in the supported English or Pidgin grammar. Observe the planned path and completed grid steps. Use Stop during a route, then issue another destination command from the current position. Reset returns the simulated robot to its starting location.
Change the problem, inspect the result
- Load the baseline hotel and confirm that each destination is connected.
- Load the blocked-corridor scenario and try crossing between the two sides.
- Load the detour scenario and inspect the longer available routes.
- Enter obstacle-editing mode, which pauses movement, and change a cell.
- Use the column and row controls if you prefer keyboard editing.
Robot and destination cells are protected during editing. Map changes clear stale routes and reports so that your next command uses the current obstacles. Export the map JSON to retain the geometry you tested.
Run a repeatable navigation check
The navigation suite evaluates all 16 ordered destination pairs, including four same-location cases. Built-in scenarios have declared reachability expectations. In the blocked scenario, correctly reporting that a route is unavailable is an expected outcome, not a successful journey.
Custom maps report observed availability without inventing expected answers. Export the JSON report to preserve the obstacle layout, route cases and measured results. Read the navigation methodology when comparing runs.
Know when to add physics
A grid cannot tell you whether a robot will slip, fit through a doorway, stop within a distance or interpret noisy depth measurements. For those questions, investigate a physics-based simulator such as Webots, an open-source robotics simulator available on macOS. Robot models, controllers, world geometry and sensor configuration then become part of the experiment.
Keep language evaluation separate from motion evaluation. The task benchmark compares intended actions with predictions; it does not execute a robot. Document what each test measures before combining layers, and retain the configurations needed to reproduce both successes and failures.
Bring people into the project
Use 9jaTesters to request collection, annotation, testing or human review. Describe the task, volume, location or languages, and acceptance criteria in your brief. For contributor opportunities, join the 9jaTesters workforce.