Code
We write the ROS 2 and Python software that turns sensor data into steering and speed commands. Members work on Follow the Gap, path selection, controller tuning and the checks that keep those commands within the car’s limits.
The subteams that build and program our cars, and the people who run them.
Owns the autonomy software: perception, mapping, path planning and control, tested in simulation and on the car.
Team A writes and tests the software that drives the car. We work with LiDAR data, maps, path selection, steering and speed control, then test each change in simulation and on the vehicle. The aim is straightforward: the car should know where it can go, choose a sensible line and behave predictably when conditions change.
We write the ROS 2 and Python software that turns sensor data into steering and speed commands. Members work on Follow the Gap, path selection, controller tuning and the checks that keep those commands within the car’s limits.
We use LiDAR data to work out what is around the car. That includes building maps, finding open space and checking that noisy sensor readings do not send the car the wrong way.
New code starts in simulation and recorded data before it reaches the vehicle. We compare runs, look into failures and repeat the same tests so we can tell whether a change actually helped.
Skills members build
Define and implement the car's mapping pipeline so it can build and use a reliable representation of the track. Collect repeatable test data and document map-quality measures before selecting or tuning a SLAM approach.
Resolve the driving-code audit's release blockers, then compare Follow the Gap with Disparity Extender using recorded simulation and low-speed tests. Document preprocessing, obstacle inflation, gap scoring, steering limits and fail-safe behaviour so the comparison is reproducible.
Validate the least-squares steering method and furthest-point fallback against the audit findings and repeatable driving data. Tune the curve fit, lookahead and speed behaviour, then document where each method succeeds or fails.
Add automated build, test and safety checks for pull requests. Document a traceable simulation-to-car release process so deployed software can be matched to reviewed source.
Added six simulator map image and configuration sets for F1TENTH Gym. Also added a greyscale conversion tool and instructions for creating, modifying and switching maps.
Implemented LiDAR preprocessing, obstacle extension, gap selection and safety-bubble behaviour for Follow the Gap. Refactored the gap-finding stages and tuned range-and-angle-based speed control.
Added deadman-gated driving and time-to-collision braking controls to the reactive and FTG launch paths. Exposed the TTC setting for controlled testing while retaining the launch-time safety wrapper.
Created the ROS 2 package structure for Disparity Extender and restored it to the current repository. Earlier reactive work also improved obstacle extension accuracy and exact steering-angle calculation.
Implemented a polynomial least-squares solver that converts selected gap points into steering and speed commands. Added NaN protection, lookahead and steering clamps, ROS 2 parameters and a furthest-point fallback.
Added repository policies that connect major changes to research notes and require reviewed pull requests for assigned work. This creates a written process for preserving test results and development decisions.
Owns the full technical stack: IT and remote access, the web dashboard, firmware, electronics and repair.
The Tech Team keeps the car’s full technical stack usable. We set up and configure remote access, networks, operating systems and onboard computers; develop the car’s web dashboard; maintain firmware and device integrations; and diagnose faults across software, electronics, sensors and physical hardware. We also build circuits, mount and calibrate equipment, make replacement parts and document setups so each test starts from a known working state.
We set up Ubuntu, JetPack, networking and secure remote access so members can reach the cars and development computers reliably. We maintain the environments, permissions and documentation needed to move from development to a controlled vehicle test.
We develop the web dashboard, maintain firmware and device integrations, and trace faults across software, electronics, sensors and onboard computers. The goal is a full stack that can be inspected, updated and trusted during testing.
We build and maintain circuits, mount and calibrate equipment, fabricate parts, replace damaged hardware and maintain workshop tools. We record wiring, configuration and repair details so the next test can start from a known setup.
Skills members build
Create a browser-based dashboard that streams useful telemetry from the car, including LiDAR and camera data. The interface should make live sensor state easier to inspect during setup and testing without requiring every team member to work directly in the ROS command line.
Assess whether front- and rear-axle IMUs provide enough improvement in turn verification, slip estimation and LiDAR deskewing to justify their cost and calibration work. If the feasibility gate passes, mount the sensors, acquire their signals with a Teensy-class controller, filter and timestamp the readings, and publish the resulting data to the Jetson.
Design and print a body that mounts securely to the car while improving its appearance and reducing unnecessary aerodynamic drag. The design must account for component access, wheel and suspension clearance, cooling and practical removal before it is printed and fitted.
Add addressable LED lighting and a Bluetooth speaker to make demonstrations more engaging. Design safe mounts and power connections, then program coordinated light and sound effects through the car's microcontroller without interfering with driving systems.
Recheck odometry and steering calibration because the current values may be contributing to failed SLAM loop closure. Measure the car's physical steering limits and maximum no-slip speed, then record repeatable test results that can be used to tune both the vehicle model and controllers.
Prepare the cars and track before joint software testing, then support the software teams during the session. The group loads the correct Car A or Car B workspace, starts the required programs and helps diagnose setup problems so meeting time is spent testing rather than rebuilding the environment.
Build an experimental racing stack that can quickly try new ideas, test new hardware and provide a friendly benchmark against Team A's approach. The team should keep experiments reproducible and document what works so useful findings can move into the main car software.
Prepare three surplus desktop computers for club development once the machines become available. The work includes installing the required operating system and development tools, verifying network access and documenting a repeatable setup for future machines; the project is currently waiting on a delivery date.
Assess a downward-facing optical-flow sensor as an independent velocity measurement when wheel RPM is distorted by slip or poor calibration. If feasible, select and mount a low-height sensor such as the PAW3902 near the rear axle or centre of gravity, acquire it through the shared microcontroller and fuse the timed data with IMU readings before sending it to the Jetson.
Select a suitable webcam for the car that does not have a RealSense camera, then design a secure, printable mount around its dimensions and field of view. The finished assembly should resist vibration while keeping the camera aligned and accessible for wiring or replacement.
Return Car B to safe testing by sourcing or designing a compatible front bumper. Compare available parts with a custom model, confirm mounting and clearance, and fit a bumper that protects the chassis without blocking sensors or steering.
Establish a maintenance routine that extends the life of the Traxxas chassis and its moving parts. Research cleaning, lubrication, suspension and steering adjustment, identify required supplies, and turn the results into a practical checklist that can be taught to other members.
Continue the battery-indicator investigation now that cell 3 is reporting zero on Car A as well. Trace the wiring and pinout, determine whether the fault is in the indicator, harness or powerboard connection, and update the documentation with the verified wiring arrangement.
Connect a Wii Remote and steering-wheel accessory to the Jetson as an alternative manual controller for the car. Map the inputs into the existing control path, include a clear stop/deadman behaviour and validate steering and throttle at safe speeds before using it for demonstrations.
Choose a camera position that captures useful driving footage without blocking sensors or changing access to the car. Model a rigid, printable adapter around GoPro's removable two-prong interface, then verify retention, vibration resistance and clearance on the moving car.
Configured the NVIDIA Jetsons to run the Racerbot software stack and support manual driving with the controller. This established a working compute baseline for launching the car software and continuing sensor and autonomy integration.
Tuned the VESC settings on both cars so motor commands produce usable, consistent behaviour. The completed setup gives the software teams a known motor-control baseline for calibration and low-speed testing.
Identified the missing suspension component, sourced or modelled a replacement and prepared it for 3D printing. The work restored the affected assembly and also created useful chassis reference geometry for future repairs and mounts.
Assembled the new powerboards through soldering, bench testing and installation on the cars. The completed boards provide a verified power-distribution base for the Jetson, sensors and other onboard electronics.
Investigated the non-working LiPo battery indicator to distinguish a faulty unit from an unexpected connector pinout. Documented how the indicator operates and connects so future troubleshooting does not have to repeat the initial diagnosis.
Documented the powerboard's purpose, connections and operating details for current and future members. The notes make repairs and design changes easier by recording how power is distributed through the car.
Calibrated odometry and steering on the cars, checked the existing setup and recorded the resulting values. This completed the initial preparation needed for consistent software testing, while later traction work can revisit the values against physical measurements.
Mounted the Intel RealSense D35iF camera on the car and integrated it into the software stack. The work established the physical placement and code path needed to make camera data available for further perception experiments.
Planned two enclosed hallway tracks for repeatable car testing near the Racerbot office in the FAS building. The layouts account for available space and use continuous barriers so the cars cannot escape through gaps during manual or autonomous runs.
Created a practical guide to the VESC Tool, the motor controller and the settings the club uses most often. The documentation explains routine configuration and the options that matter when diagnosing motor-control problems.
Established and tested the procedure for running Racerbot software on the cars. The resulting documentation gives members a repeatable path from the Jetson environment to a launched car stack.
Runs the club: subteam leads, sponsors, budget and outreach.
President, Tech Team Lead
He's Just Bryan
Autonomous Team Lead
He's Just Milad
Marketing and Outreach Coordinator
He's Just Nathan
Marketing and Outreach Coordinator
She's Just Keyla
Operations Coordinator
He's Just Aston
Former Car Team Lead & Club Alumni
Worked with us for 8 months and helped the club grow into the organization it is today.
Former Finance, Procurement and Sponsorship Lead
Helped the club manage finances in our infancy
TBD
TBD