Rocket Flight Computer
Full avionics stack on STM32/FreeRTOS for MetRocketry's canard-steered rocket. Integrates a 9-DoF IMU, barometer, magnetometer, GPS, SRAD radio telemetry, and SD card logging.
Engineer by day, gamer by night, always reading something.
I'm Ethan Ieong, a Computer Engineering student based in Toronto with an interest in embedded systems and robotics.
By day I'm the Control Systems Software Lead at MetRocketry, building active fin stabilization on STM32/FreeRTOS with Extended Kalman Filters that run at 513 µs per update.
In the lab I'm a Research Assistant at ISRMM, training a 29-DoF humanoid policy in Isaac Lab with PPO, and fusing LiDAR + RGB-D into a ROS2 SLAM pipeline on a Jetson Orin.
Off the clock: gym every day, deep in ranked queues, sketching, or reading two books switching between Jurassic Park and The Hobbit.
FPS main. Fast reaction times, game sense, and adapting mid-match — same skills as real-time firmware debugging.
Jurassic Park & The Hobbit — running them in parallel. Sci-fi that aged badly vs. fantasy that aged perfectly.
Consistent gym sessions keep the mind sharp. Physical and engineering discipline are the same skill.
Sketching, digital art, and design. Drawing trains spatial reasoning — useful when you're also designing PCB layouts and mechanical systems.
Firmware, hardware-software integration, and the satisfaction of watching a system you built actually work in the real world.
Research, design teams, and industry — building real systems at every level.
ISRMM Laboratory
Metropolitan Aerospace Combustion Hub (MACH)
First Insurance Funding of Canada
MetRocketry Design Team
First Insurance Funding of Canada
Kumon
B.Eng. Computer Engineering
Toronto Metropolitan University · Expected April 2027
A selection of embedded systems, robotics, and software work.
Full avionics stack on STM32/FreeRTOS for MetRocketry's canard-steered rocket. Integrates a 9-DoF IMU, barometer, magnetometer, GPS, SRAD radio telemetry, and SD card logging.
Led a 4-person team building active fin stabilization on STM32/FreeRTOS. Linear & Extended Kalman Filters on ARM Cortex-M4 achieving 513 µs altitude updates and 103 ms end-to-end latency.
Training a 29-DoF Unitree G1 locomotion policy in Isaac Lab using PPO and domain randomization. GPU-accelerated parallel simulation generalizes across rough, stochastic terrain.
ROS2 SLAM pipeline fusing Livox MID-360 LiDAR (Fast-LIO2) with RGB-D depth data (RTAB-Map) on a Jetson Orin — enabling autonomous Nav2 navigation in unstructured environments.
Python CAN 2.0A driver at 1 Mbps on the RP2040 for MACH's 5-PCB avionics stack. 10 MHz SPI interrupts for low-latency configuration; validated via loopback self-tests.
9 ms update rates via a C++ inverse-kinematics solver using the hardware FPU. IIR low-pass filter attenuates high-frequency sensor noise for smooth, stable control.
Tools and technologies I reach for when building systems that have to work in the real world.
Whether you have a project, research opportunity, or just want to connect — I'd love to hear from you.