Me

Nolan Peterson

Computer Systems Engineering Student at Arizona State University

Building robust systems from robotics to software. Passionate about performance, reliability, and elegant solutions.

About Me

From Robotics to Systems

My journey into computer systems engineering began with robotics in elementary school, building my way up to the high school league FIRST Robotics Competition (FRC) where I served as the programming lead. Working with teams to build and program robots in eight-week challenges taught me the importance of reliable, real-time systems and efficient software design. This experience sparked my passion for systems-level programming and led me to explore languages like Rust for their performance and safety guarantees.

What Drives Me

I'm passionate about building robust, performant systems that bridge the gap between software and hardware. From programming robot control systems, developing embedded applications, or simulating a dice game, I love solving complex problems where reliability and efficiency are required. My goal is to contribute to the next generation of intelligent systems and autonomous technologies.

Technical Expertise

Programming Languages

RustC/C++TypeScriptPythonJavaSwift

Robotics & Control

FRC ProgrammingPID ControlPath PlanningComputer VisionSensorsMotor Control

Systems & Hardware

Embedded SystemsESP32RoboRIOARM CortexReal-Time SystemsCAN BusIOS

Software Engineering

GitCI/CDReactNode.jsWebSocketsSystem Design

Projects

From competitive robotics to systems programming, here are some projects that showcase my journey

Robotics
FRCRS - Rust FRC Framework
A Rust framework for FIRST Robotics Competition robot programming, providing safe and performant abstractions over WPILib for real-time robot control.
Completed
RustWPILibRoboRIOCAN BusReal-Time SystemsFFIJavaC/C++
Robotics
RobotCode2025 - FRC Competition Robot
Complete robot code for the 2025 FRC season built with Rust, featuring autonomous routines, teleop control, and subsystem management. Not to mention the only robot code for 2025 written in Rust.
Completed
RustFRCRSAutonomous ProgrammingPID ControlState Machines
Robotics
RobotCode2024 - FRC Competition Robot
Robot code for the 2024 FRC season built with Rust, showcasing the first year of our team's programming approach with Rust
Completed
RustFRCRSAutonomous ProgrammingPID ControlState Machines
Robotics
RobotCode2023 - FRC Competition Robot
Java-based robot code for the 2023 FRC season, featuring traditional WPILib programming patterns and command-based robot architecture.
Completed
JavaWPILibCommand-Based ProgrammingAutonomous ProgrammingSubsystem Management
Robotics
Talon Board - Hardware Dashboard
A TypeScript-based dashboard application for monitoring and controlling FRC robot hardware, providing real-time telemetry and diagnostic capabilities.
Completed
TypeScriptWeb DevelopmentReal-Time DataHardware MonitoringDashboard UI
Robotics
trajectory-rs - Path Planning Library
A Rust library for decoding Choreo trajectory files and providing path planning capabilities for FRC robots.
Completed
RustPath PlanningSpline GenerationMotion ProfilingMathematics
Software
LCR - Left Center Right Simulation
A C++ simulation of the Left Center Right dice game, demonstrating object-oriented programming principles and game state management with statistical features.
Completed
C++Object-Oriented ProgrammingGame SimulationStatistical Analysis
Web
Scouting 2024 - FRC Scouting App
A web-based scouting application for FRC teams, built with NextJS and TypeScript, providing data collection and analysis during competitions.
Completed
NextJSTypeScriptWeb DevelopmentFirebase
Web
Portfolio Website
My personal portfolio website showcasing my projects, skills, and experiences, built with NextJS and shadcn/ui.
In Progress
NextJSTypescriptWeb Development
Software
Raytracer
A basic raytracer implemented in Rust, with materials, lighting, and camera controls.
Completed
RustComputer GraphicsMath
FSAE
SDM26 Steering Wheel Firmware
Embedded firmware for a Formula SAE steering wheel, with real time display, paddle shift management, and adjustable settings via potentiometers.
In Progress
RustESP32Embedded SystemsCAN BusReal-Time SystemsHardware Interface
FSAE
ESP32 Timing Gate System
Mesh network timing system for Formula SAE vehicles built with ESP32 microcontrollers. Multiple gates coordinate to provide precise lap timing and telemetry data.
In Progress
CESP32Embedded SystemsMesh NetworkingWiFiReal-Time Systems
FSAE
DAQ Receiver
ESP32-based receiver for telemetry and timing gate data, sending wireless vehicle data over ESP-IDF to a TypeScript web frontend for real-time visualization.
In Progress
CESP32ESP-IDFTypeScriptReal-Time SystemsTelemetry
FSAE
Logger
Data acquisition logger for Formula SAE vehicles, sampling CAN bus and ADC data to SD card at high frequency. Originally written in C, currently undergoing a full rewrite in C++ with a structured Logger class architecture for improved maintainability and extensibility.
In Progress
CC++ESP32ESP-IDFCAN BusFreeRTOSSD CardEmbedded Systems
FSAE
ModuleCore FSAE Firmware Base
A shared firmware foundation for all modules, providing a common C++ base with standardized module communication over CAN bus and OTA update support. Designed to run on every node in the vehicle's embedded network.
In Progress
C++ESP32ESP-IDFCAN BusFreeRTOSOTA UpdatesEmbedded Systems

PCB Designs

Custom hardware designed for embedded motorsports applications

FSAE Telemetry
FSAE Telemetry
Custom telemetry board designed for Formula SAE, with an ESP32 microcontroller and CAN bus to stream live telemetry.
KiCadESP32CAN Bus