Systems & Embedded Engineer · Co-Founder, NAVRobotec
Ashutosh
Vishwakarma
I build low-level systems, and I read far outside them. Flight stacks and kernels. Philosophy, politics, sociology. The verse below is the closest thing to my method. Do the work fully. Hold the results loosely.
कर्मण्येवाधिकारस्ते मा फलेषु कदाचन। मा कर्मफलहेतुर्भूर्मा ते सङ्गोऽस्त्वकर्मणि॥
The right is to the work alone, never to its fruits. Let results not move you; nor cling to inaction.
Bhagavad Gītā 2.47
Selected Work
01-
Vayu — Indigenous Flight Stack
2025–26A UAV autopilot owned from PCB to ground station. NavHAL (HAL), VaiOS (1 kHz RTOS), and Vayu (flight control). Built at NAVRobotec.
-
Navigator — Ground Control Station
2025–26A ~25k-LOC Qt6 ground station for the Vayu drone. Custom CRC-framed telemetry, real-time plots, and a packet analyzer. Plus an embedded SITL sim with a 1 kHz physics daemon.
-
gem5 AVR ISA Extension
2025–26Extended the gem5 simulator with the AVR instruction set. Enables cycle-accurate simulation of microcontroller workloads. Validated in the loop against real silicon.
-
NavHAL
2025A zero-cost, vendor-agnostic HAL for Cortex-M chips. It covers 7+ peripherals across 5+ MCU families. Modular Kconfig and CMake build.
-
AVR-XPU — SIMD Coprocessor Study
2026A feasibility study for an AVR-derived coprocessor. It targets edge inference and flight-control math. Roofline analysis showed the real bottleneck is memory bandwidth, not SIMD width.
-
Moleculizer
2024A 3D molecule visualizer for .xyz files. Built in C++ with OpenGL, GLFW, and ImGui. Translate, rotate, and scale models. Session state is preserved between runs.
Recent Writing
02-
I Wrote an FFT to Play Music: An Over-Engineered Terminal Player
The browser ate gigabytes to play a song, so I wrote a 2,000-line terminal music player with no pip deps. Along the way it grew a hand-rolled Fourier transform, a filesystem-as-LRU cache, two mpv processes, and an LLM that scores my songs by vibes. A field report on accidental over-engineering.
-
Does an AVR Need SIMD? A Roofline Study That Said No
I set out to design a wide-SIMD coprocessor for an 8-bit MCU. Then I measured twelve real kernels in a validated gem5 model. A roofline analysis talked me out of the vector unit — and pointed at what to build instead.
-
Teaching a Drone to Tune Itself: Closed-Loop PID Autotuning in SITL
We built a closed-loop PID autotuner that flies its own experiments in simulation and searches the gain space — eight optimizers, a chatter-aware cost, and two failure modes that looked solved but weren't. A deep dive into the system, the algorithms, and the fixes.
-
Benchmarking VAIOS Against FreeRTOS and Zephyr
We measured our in-house real-time operating system against FreeRTOS and Zephyr on the same flight-controller hardware — scheduling, IPC, memory, timing, and footprint. Here is the full set of results.