Aerial Robotics & Agentic Software Engineering

Hello! I’m Wilfred (Wil) Boayue, a software engineer exploring aerial robotics and agentic software engineering. On this blog, I share my journey building autonomous drones and intelligent software agents.

nanocode: a 250-line Claude-style coding agent

Inside nanocode, a Claude-style coding agent in ~250 lines. A few tools (read, write, grep, bash) plus an LLM produce surprisingly capable behavior.

2026-01-13 · 2 min · Wil Boayue

RealFlight Bridge: high-fidelity testing for drone flight controllers

Introducing RealFlight Bridge, a Rust library for testing flight control algorithms in the RealFlight simulator. Learn how it enables safe validation of autopilot code before deploying to real hardware.

2025-11-15 · 7 min · Wil Boayue

Behavior trees: simplifying autonomous decision-making

Explore behavior trees, a modular and reactive alternative to finite state machines. Learn how they simplify control logic in autonomous systems like drones.

2025-05-18 · 6 min · Wil Boayue

Affordable flight controllers for Rust development

I explore cost-effective flight controller options for embedded Rust projects. I evaluate four main contenders: Teensy 4.0, SpeedyBee F405, Matek Wing H743 V3, and Holybro Kakute H743.

2025-03-27 · 4 min · Wil Boayue

Implementing a PID controller in Rust

PID controller for drone attitude stabilization in Rust: the equation, the code, the tests, and the unit-mismatch bug that sent my drone haywire.

2025-03-23 · 5 min · Wil Boayue

Flight controller: why Rust?

Why Rust is my pick for a custom drone flight controller: memory safety to prevent mid-flight crashes, the cargo ecosystem, and C-level performance.

2025-03-01 · 1 min · Wil Boayue

Titan Viper first flight: ArduPilot setup for a tiltrotor VTOL

ArduPilot setup for a tiltrotor VTOL: the motor-ordering mistake (numeric vs alphabetic) that flipped my Titan Viper’s first flight, and how to test for it.

2024-09-13 · 3 min · Wil Boayue

Building a Titan Viper: my first 3D-printed VTOL drone

Printing and assembling the Titan Viper, a tilt-tricopter VTOL drone. Parts, build notes, and why I moved from LW-PLA to regular PLA after the first print.

2024-08-20 · 8 min · Wil Boayue

Live streaming video from a drone with Raspberry Pi and GStreamer

Stream live video from a custom drone to QGroundControl using a Raspberry Pi, GStreamer, and a systemd service that auto-starts the pipeline at boot.

2024-01-18 · 8 min · Wil Boayue

Java automatic resource management

You might have seen this example from The Java Tutorials. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 public class CopyBytes { public static void main(String[] args) throws IOException { FileInputStream in = null; FileOutputStream out = null; try { in = new FileInputStream("xanadu.txt"); out = new FileOutputStream("outagain.txt"); int c; while ((c = in.read()) != -1) { out.write(c); } } finally { if (in != null) { in.close(); } if (out != null) { out.close(); } } } } Unfortunately, this code has a bug. If an exception is thrown while closing the input stream on line #17, the output stream will not be closed on line #20. ...

2013-09-13 · 2 min · Wil Boayue