Yusuf Guenena

I build dependable autonomy for robots that operate around people.

Robotics engineer working across real-world autonomy, C++, ROS 2, sim-to-real learning and fault-tolerant robot systems.

M.S. Robotics Engineering · Wayne State University · May 2027

View selected work Résumé

Come Here · Assistive autonomy

It hears you.
Finds you.
Comes to you.

Say “come here” and a physical Unitree GO2 turns toward your voice, finds you, walks over and sits. The whole loop runs onboard its Jetson Orin NX, with no internet or cloud services at runtime.

From the spoken call to the robot sitting in front of the caller, on the physical GO2, filmed from the caller’s side.
  1. Hear Whisper wake phrase on the Jetson
  2. Localize Voice bearing from the mic array’s built-in DOA
  3. Turn Closed loop on odometry yaw
  4. Acquire YOLO person detection toward the voice
  5. Approach Align in place, then walk straight
  6. Stop Person’s box reaches 82% of frame height
  7. Sit Sits and speaks

ROS 2WhisperYOLOJetson Orin NXUnitree GO2

Phoenix · Sim-to-real locomotion

Trained in simulation. Gated all the way to the robot.

PPO training in Isaac Lab, an ONNX export that fails the build on a parity mismatch, and a fail-closed ROS 2 deploy stack on the GO2's Jetson. On the real robot, after a scripted stand-up, the learned policy holds the stand, walks forward and makes a partial turn on a free floor.

1,024 simulated GO2s running the trained walking policy.
  1. Train

    PPO

    Stand policy trained in Isaac Lab under full actuator randomization; it passes every evaluation episode in both configurations.

    Verified in sim

  2. Export

    4.77e-06

    Max ONNX vs PyTorch drift on the stand-v3-h25 export, against a 1e-4 gate.

    Measured

  3. Deploy

    End to end

    Policy node, bridges and fail-closed safety layer run live on the GO2's Jetson; in October 2026 a policy held the robot standing through every stand gate and took its first steps on a free floor.

    Ran on hardware

In October 2026 a newer walking policy passed every live stand gate on the physical GO2 and took its first walking steps on a free floor. It under-tracks the command on hardware (about 60 % forward, 20 % turning); an on-robot probe measured the cause as joint friction the simulator did not model.

Isaac LabPyTorchONNXROS 2Jetson Orin NX

FETCH · Conversational GO2

A GO2 you can talk to, where the language model never moves the robot.

Say “Fetch, describe the room” and the GO2 looks ahead, turns left and right, and speaks one grounded line per view through its own speaker. Speech recognition, chat and a vision-language model run on lab hardware with no API key, and a deterministic safety envelope is the only thing that moves the robot.

The room scan from the armed run of September 21 on the physical GO2, captioned with the robot’s own logged lines.

22.4–31.2s

Voice-triggered three-view room scans in armed runs on the GO2, none with a degraded subsystem.

<2.5s

Most chat replies after the words were heard, over eight sessions on September 21 and 22 (range 0.3 to 5.4 s).

240 → 0

Idle motion requests in 12 s: the old publish-every-tick design vs the current one, from an observe-only probe on the robot.

The models run on a lab workstation reached over SSH tunnels, not on the robot. “Take me to the nearest chair” is built and desk-verified only; it has not run on the robot.

Kestrel-RT · Bare-metal C

I crashed the network chip 11 times. The control loop didn’t miss a deadline.

A real-time runtime I wrote in C for a 48 MHz Arm Cortex-M4F, from the reset vector up: scheduler, MPU isolation, register-level DMA and fault recovery, with no heap. The board's ESP32-S3 network chip is treated as untrusted.

10,429,500

Phase 1: control periods in one 2.9-hour soak on the physical board, with zero deadline misses.

11 → 0

Phase 2: forced network-chip crashes, controller resets, in one 10,003,440-period soak.

0

Of 15,000 malformed frames accepted, in a Phase 2 fault campaign.

CArm Cortex-M4FRenesas RA4M1ESP32-S3DMAMPU

Selected research & systems

More work, with the evidence attached.

C++20 · CUDA · TensorRT

C++ perception runtime

A Python person-perception pipeline rebuilt in C++20, CUDA and TensorRT for the GO2's Jetson Orin NX: hardware decode, pose, re-identification and tracking.

135 → 33.5 ms p95 latency under matched replay of recorded camera frames on the robot's Jetson Orin NX; it keeps the 30 fps rate on 12% of one CPU core instead of 108%

Explore project Private repository

Autonomous driving · pre-registered study

av2-city-shift

In a log-replay planning harness, a trajectory predictor made the planner brake for parked cars. A pre-registered stopped-agent fix cut those brakes on fresh scenes; a dose-matched sham did not.

44.9% fewer unnecessary hard brakes on 8,140 fresh scenes (95% CI 37.7 to 51.4%)

Explore project

Production model teardown

supercombo-blindspot

A parity-controlled teardown of openpilot's shipped driving model: on simulator-rendered input it goes blind while its exported uncertainty stays flat.

Explore project

Flight recorder for ROS 2

BlackBoxRS

An incident recorder that builds a reproducible evidence bundle and replays recorded robot data through the same detectors offline.

Repository

View all work, including null results Technical reports Research statement

Tools

Robotics
ROS 2 · Nav2 · tf2 · Isaac Lab · Isaac Sim · Gazebo
Systems
C++20 · C · CUDA · TensorRT · CMake · Linux · Docker
Learning & perception
PyTorch · PPO · ONNX · YOLO · Whisper · OpenCV
Hardware
Unitree GO2 · Jetson Orin NX · Arm Cortex-M4F · ESP32-S3

About

I’m a robotics engineer finishing an M.S. in Robotics Engineering at Wayne State University, expected in May 2027. My work centers on physical autonomy: making robots that operate around people dependable, from the behavior itself down to the runtime that watches it.

I work across C++ and Python, ROS 2, learned control, perception, embedded firmware and the hardware they run on, mostly a Unitree GO2 with a Jetson Orin NX. I prefer to prove things on the real robot, and to write down exactly where the proof stops.

Let’s build robots
that have to work outside the demo.

Open to full-time robotics roles.

Email Résumé