Mechatronics Engineering and Management, McMaster University
Aiden Robinson

I build and validate robot learning, simulation and perception systems, from diffusion policies in MuJoCo and RL locomotion in Isaac Lab to sensor fusion on embedded hardware. Looking for summer 2027 internships in robotics, simulation and machine learning.

Aiden Robinson
Experience

Work

Tesla
Tesla
Software Engineer Intern
Team: Distributed Systems
May 2026 to Aug 2026
Tesla
Tesla
Software Engineer Intern
Team: Vehicle Simulation and Modeling
Jan 2026 to May 2026
Korrelate
Korrelate
Software Engineer II Intern
Team: Internal Tooling
May 2025 to Aug 2025
TELUS
TELUS
Software Engineer Intern
Team: Workflow Automations
May 2024 to Aug 2024
TELUS
TELUS
Software Engineer Intern
Team: Energy Management
May 2023 to May 2024
McMaster University
McMaster University
Teaching Assistant
1Z03 Artificial Intelligence
Jan 2023 to Present
Featured

Robotics and Simulation

Robot learning, physics simulation and perception work, each card showing the system running and what the experiment measured.

Isaac Lab Quadruped Locomotion

  • Trained the stock Isaac Lab flat-terrain Unitree Go2 task with proximal policy optimization (PPO), headless on a 6 GB RTX 3060, below Isaac Sim's stated 16 GB minimum.
  • Ran 1024 robots in parallel at about 21,000 steps per second. After 20 minutes of training, 99.1 percent of episodes walked the full 20 s.
  • Exported the policy to ONNX and scripted the whole install, train and playback pipeline over SSH to a Windows GPU node.
Isaac Lab 2.3.2
Isaac Sim 5.1
PyTorch
rsl_rl PPO
ONNX
PhysX

Lab Real-to-Sim: Phone Video to Gaussian Splat to MuJoCo

  • Reconstructed the Biodex dynamometer and chair in McMaster's kinesiology lab (with me seated in it) as a 3D Gaussian splat from a 33 s phone orbit.
  • Ran COLMAP structure-from-motion for camera poses and nerfstudio splat training on a remote 6 GB RTX 3060 over SSH. Segment Anything Model 3 (SAM 3) masks were tried for a subject-free variant.
  • Trained a 2D Gaussian splatting (2DGS) surfel model (PSNR 31.8 at half resolution), scaled the fused mesh to metres with MapAnything (about 6 percent scale uncertainty) and built a MuJoCo scene with 32 convex collision hulls.
COLMAP
nerfstudio
gsplat
3D Gaussian splatting
2DGS
SAM 3
MapAnything
Open3D
CoACD
MuJoCo
PyTorch
CUDA
WSL2
Python

EMG to Elbow Torque Prediction

  • Final year design project with two teammates predicting elbow torque from a textile surface electromyography (EMG) suit with a network feeding a differentiable Hill muscle model in PyTorch.
  • Built sensor-free torque labels from free weights with two-camera RTMPose pose estimation, MuJoCo inverse dynamics and inertial measurement unit (IMU) fusion. The camera elbow angle agreed with a dynamometer encoder to 1.8 degrees RMS.
  • Beat the reference-scaling baseline on a held-out session of static holds (2.43 vs 3.62 N.m RMSE, cluster bootstrap). The model streams causally at about 2 ms of compute per 10 ms sample with a 90 ms lag on dynamic curls.
Python
PyTorch
MuJoCo
MyoSuite
OpenCV
RTMPose
NumPy
Parquet

Diffusion Policy Impedance Control in MuJoCo

  • Reimplemented a Conference on Robot Learning (CoRL) 2026 constraint-decomposed impedance control paper in MuJoCo and PyTorch. The gain-estimation step matches the authors' released code on their recorded ensembles to about 1e-10.
  • Trained a 1-D U-Net diffusion policy for door, drawer and crank manipulation with waypoint jitter under 1 mm.
  • Set stiffness from 128 policy samples along the feasible twist subspace, cutting constraint-violating force impulse to 0.14 to 0.37x an isotropic baseline.
Python
PyTorch
MuJoCo
NumPy
diffusion policy
impedance control

FabBench: Benchmarking NVIDIA Cosmos-Reason2 on Factory Video

  • Built a video reasoning benchmark for NVIDIA's Cosmos-Reason2 video reasoning model on egocentric factory footage with held-out factories and bootstrap intervals. The 8 billion parameter (8B) model scored at chance (0.28), below a colour-histogram baseline (0.452).
  • Generated MuJoCo synthetic episodes of an SO-101 robot arm with labels read from simulator state: the model counts objects (0.959) but misses change over time (0.522).
  • Fine-tuned the 8B with low-rank adaptation (LoRA) on Apple Silicon (MLX): simulated change-over-time rose from 0.52 to 0.65 while real factory scores did not move. Deployed the 2 billion parameter (2B) model on a Jetson Orin Nano 8 GB at 10.5 tokens per second and 12.9 W.
NVIDIA Cosmos-Reason2
MLX
PyTorch
MuJoCo
LoRA
Jetson Orin Nano
ffmpeg
OpenCV
Python

Differentiable Physics Engine and System Identification

  • Implementing Featherstone's recursive Newton-Euler (RNEA), composite rigid body (CRBA) and articulated body (ABA) algorithms in PyTorch as a differentiable robotics engine, checked against MuJoCo (fixed-base chains so far, in progress).
  • Identified a simulated pendulum's mass, length and damping by gradient descent through the simulator. A physics-free neural model was about 70x worse out of distribution across five seeds.
  • Reimplemented a 2026 informationally decoupled trajectory design (IDTD) paper using gradients through the Fisher information matrix. Designed commands cut a damping estimate's error from 2.0 to 0.16 percent sim-to-sim, but lost to a hand-picked sinusoid once unmodelled friction was added.
Python
PyTorch
MuJoCo
NumPy
pytest
Featherstone spatial algebra
system identification

Room Simulation with IPC Soft Bodies

  • Built a path-traced ReplicaCAD apartment simulation on Genesis with libuipc incremental potential contact (IPC) for finite element (FEM) pillows, a cloth throw and books, rendered with the Nyx path tracer.
  • Validated it with analytic gates and an energy ledger, exposing libuipc's FEM running 21 percent too stiff and a solver default injecting up to 1.3 J per impact.
  • Stress tested contact by throwing the cloth at a wall at 3, 30 and 300 m/s with no penetration and no energy gain at any speed. The room run repeats to 0.85 mm.
Genesis
libuipc (IPC)
Nyx path tracer
CUDA
ReplicaCAD

Learned Sand Simulator (Graph Network Simulator)

  • Trained a Graph Network Simulator (GNS) on DeepMind's Sand dataset: a learned particle physics model that predicts every particle's next acceleration with message passing.
  • Generated my own ground truth with a Warp moving least squares material point method (MLS-MPM) sand simulator, calibrated by parameter sweep until its rollouts matched DeepMind's trajectories more closely than the paper's learned model (MSE 1.57e-3 vs 2.37e-3).
  • Fine-tuned the model on finger interaction data so the learned sand can be pushed around interactively in a playground (slow motion, about 0.15x real time), shown beside the MPM ground truth.
PyTorch GNS
NVIDIA Warp MPM
DeepMind Sand dataset
CUDA
pygame
Projects

Firmware and Hardware

Embedded firmware, PCB design and control systems, mostly from Formula Electric and coursework.

Over the Air CAN-Based Firmware Updater

Over the Air CAN-Based Firmware Updater

  • Engineered a wireless firmware update system for a Formula SAE ECU using a Raspberry Pi and an STM32 microcontroller over CAN bus.
  • Automated reliable firmware flashing with python-can, SocketCAN and STM32CubeProgrammer, handling boot pin sequencing and CAN frame formatting.
  • Designed bus termination, acceptance filters and transceiver interfacing; structured the firmware with CMake and HAL libraries.
  • Root caused a multi-node CAN failure to the controller having no stable clock for bit timing.
STM32
Raspberry Pi
CAN
python-can
CMake

IMU Sensor Fusion and 3D Visualization

  • Developed a real-time sensor fusion system using an Arduino and the MPU9250 IMU, streaming roll, pitch and yaw to ROS 2 for 3D visualization in RViz.
  • Implemented a custom Kalman filter on the microcontroller to combine gyroscope and accelerometer data, achieving stable orientation estimates with minimal drift and noise.
  • Built a fully containerized ROS 2 stack with Python nodes for serial parsing and TF broadcasting, reproducible through Docker.
ROS 2
Kalman filter
Arduino
MPU9250
Docker

PID Ball Control

  • Designed and built a LEGO-based ball balancing robot using an Arduino, servo motors and ultrasonic sensors, with modular code for rapid prototyping and real-time feedback control.
  • Improved stability with 2D Kalman filtering, reducing sensor noise and improving control accuracy.
  • Tuned the PID gains for precise, stable ball positioning, minimizing overshoot and response time.
PID
Kalman filter
Arduino
Servo
High Voltage Controller Respin

High Voltage Controller Respin

  • Redesigned the high voltage safety controller to meet Formula SAE Electric standards through iterative improvements based on competition feedback.
  • Led schematic design, PCB routing, part sourcing, manufacturing and testing.
  • Improved circuit modularity for easier testing and added LED indicators for diagnostics.
Altium Designer
PCB
FSAE

RTL-SDR Digital Signal Explorer

  • Developed a Docker-based pipeline for capturing, demodulating and decoding digital radio signals with RTL-SDR dongles.
  • Supports FM, LSB, USB and AM demodulation and AFSK, PSK, RTTY, CW and FSK decoders for exploring APRS, PSK31 and other RF protocols.
  • Automates device setup, error recovery and session-based output with structured statistics for signal analysis.
RTL-SDR
DSP
Docker
Embedded Pacemaker

Embedded Pacemaker

  • Created a hardware-in-the-loop and software-in-the-loop pacemaker that models dynamic pacing modes from accelerometer data on an STM32 microcontroller.
  • Data framing, processing and stateflows implemented in Simulink; supports AOO, VOO, AAI, VVI, AOOR, VOOR, AAIR, VVIR and DDDR pacing modes.
  • Python frontend connected over UART, including a real-time electrocardiogram display.
STM32
Simulink
UART
HIL
Projects

Software and AI

Hackathon wins, LLM apps and full-stack builds.

AR.cade, Hack Western Winner

  • Uses OpenCV and Google MediaPipe to detect user movements, allowing players to control classic games like Temple Run and Super Mario through body gestures.
  • Developed a custom body-part movement algorithm to map gestures from detected positions (for example raising an arm) to specific in-game actions.
  • Tackled embedding real-time video with a body tracking overlay into the frontend through API calls, managing latency with threading optimizations.
  • Placed 3rd overall of 70 projects.
OpenCV
MediaPipe
Python
Threading

Locker as a Service, DeltaHacks Winner

  • Provides a secure, IoT-enabled food locker controlled from a mobile app, with remote lock and unlock, biometric access and temperature control for contactless food delivery.
  • Built with a Raspberry Pi, Firebase, Python, C++ and Flutter, using real-time IoT data to drive a servo motor and the temperature settings.
  • Placed 3rd overall of 95 projects.
Raspberry Pi
Firebase
Python
C++
Flutter

DaVinci: AI Children's Book Generator

  • Built an adaptive platform that generates personalized children's books with AI-powered illustrations and voiceovers, tailored to each child's interests and learning level.
  • Developed with Next.js, Tailwind CSS, TypeScript, SQL, the Gemini API and JavaScript, focusing on dynamic content generation and accessibility.
  • Integrated inclusivity features for neurodivergent learners, ESL students and children with disabilities.
  • Optimized the AI pipeline for real-time story customization and seamless Gemini API integration.
Next.js
TypeScript
Tailwind
SQL
Gemini API
Spincard

Spincard

  • Developing a mobile app that lets small groups create virtual credit cards and split expenses automatically.
  • A serverless, microservice-based platform for pooling and spending money. I worked on the backend: database setup, migrations, the GraphQL server and cloud deployment.
  • Built with Go, GraphQL, PostgreSQL, Clerk, Encore and React Native.
Go
GraphQL
PostgreSQL
Encore
React Native

Second Brain for Students, CUCAI 2024

  • Led a team of 6 to develop SecondBrain, an NLP-based AI assistant that helps students manage and query personal and academic documents.
  • Users upload PDF or Docx documents, which are processed, vectorized and stored in a unique database; questions retrieve relevant sections by similarity search and GPT-4 answers them.
  • Reduced token costs by 45% through efficient data management and API integration.
LangChain
Pinecone
React
Flask
OpenAI API
About

Who I am

Hi, I'm Aiden, a Mechatronics Engineering and Management student at McMaster building robots that learn in simulation: physics engines, reinforcement learning, benchmarks for video reasoning models, and wearable sensors that estimate how hard a person is pushing. Most recently I interned at Tesla on vehicle simulation and modeling and then on distributed systems, after 20 months of co-op across AI, cloud, and internal tooling at TELUS and Korrelate. Outside of work I train locomotion and manipulation policies in Isaac Lab and MuJoCo, reimplement robot learning papers and check them against the authors' numbers, reconstruct real spaces into simulators with Gaussian splatting, and benchmark NVIDIA's Cosmos-Reason2 video reasoning model. My capstone predicts elbow torque from a wearable EMG suit with a physics-informed network and camera-based ground truth.

My hardware background comes from McMaster's Formula Electric team since 2021, where I designed and manufactured PCBs and tested, attached and documented wiring harness connections. I served as President of the McMaster Artificial Intelligence Society and work as a teaching assistant for the Faculty of Engineering. When I'm not coding or prototyping, I'm exploring synthesizers and music production.

Teams

Extracurriculars

McMaster Artificial Intelligence Society
McMaster Artificial Intelligence Society
President
2023 to 2026
MAC Formula Electric
MAC Formula Electric
Firmware and Electrical Subteam Member
Nov 2021 to Present
Skills

Tools I reach for

Grouped by where they show up in my projects, work history and resume.

Languages
Python
C / C++
Go
TypeScript / JavaScript
SQL
Simulink
Robotics and Simulation
MuJoCo
Isaac Lab
ROS 2 and RViz
PPO and RL locomotion
Diffusion policy
Impedance control
Kalman filtering and sensor fusion
PID control
Machine Learning
PyTorch
TensorFlow
ONNX
OpenCV
MediaPipe
LoRA fine-tuning
MLX
LangChain
OpenAI Gym
Embedded and Hardware
STM32
Arduino
Raspberry Pi
Jetson Orin Nano
CAN bus
UART and serial
Altium Designer
RTL-SDR
Cloud and Tooling
Docker
Kubernetes
Google Cloud Platform
CI/CD
Git
PostgreSQL
GraphQL
Flutter
React Native
Next.js
Education

School

McMaster University
McMaster University
B.Eng.Mgt., Mechatronics Engineering and Management
GPA 3.8 / 4. Courses: Predictive Control, Real Time Systems, Embedded Systems, Control Systems, Operating Systems, Data Structures and Algorithms
2021 to 2027 (expected)
Contact

Get in touch

I am looking for summer 2027 internships in robotics, simulation and machine learning. Email is the fastest way to reach me.

Aiden Robinson. Built with Next.js, hosted on Netlify.