Docs menu
IT Services
Reach the cars from anywhere, test code on the real workspace, code with the team's AI tools and use the team's self-hosted AI chat.
The tech team runs three devices that members can reach from outside the lab: the two cars, racerbotcar-1 and racerbotcar-2, and the pit PC, racerbotpitpc. Each car’s hostname belongs to the computer bolted to that car, with its LiDAR, camera and motor controller attached, so a session on it can move the car. Every route to a device sits behind Cloudflare Access, which lets in only the email addresses on the team list.
Access is requested in Discord: mention @it-services with the email address you sign in with and the reason you need access. Your team lead then sends the device username and password, which are never published on this site.
The team also runs Rodatacenter, a self-hosted AI chat at ai.sfuracerbot.ca that anyone can use without an account.
Remote access
- SSH in the browserOpen a terminal on a car or the pit PC from any browser with Cloudflare's browser-rendered SSH, with nothing to install.
- SSH with cloudflaredSet up cloudflared once on your own laptop to SSH into a car or the pit PC from a terminal or VS Code Remote-SSH, with file copying and port forwarding.
- Remote desktopSee and use a car's own screen from a browser, for the graphical tools a terminal cannot show.
- Terminal toolsThe three terminal tools installed on both cars for reading docs, keeping sessions alive and editing files over SSH.
Code testing
- Build and testSource the workspace in each terminal, build with colcon and run a package's tests so that a missing import fails loudly.
- Launch and stopStart the foundation and exactly one control layer, check the controller and servo from a third terminal, and shut down without killing the drivers.
- TroubleshootingThe faults members hit most often in a session on the car, with the cause and the fix for each.
Coding with AI
- Claude CodeStart Claude Code in a project, keep it on Sonnet, and hand long tasks to OpenCode through the delegate plugin.
- OpenCodeRun OpenCode interactively or for one question, pick one of its free models, and keep private material out of free-model sessions.
- Prompting and reviewPrompts that get reviewable changes from an AI tool, and the review and testing an AI-written change needs before it runs on a car.
Rodatacenter
- ModelsPick the right one of Rodatacenter's four models for a question, and set how long it thinks before answering.
- APICall Rodatacenter from code through its OpenAI-compatible API, with streaming and the per-request controls it accepts.
- How it worksThe server behind the chat, why a CPU-only workstation can run these models, and what each error means.