Open to embedded & firmware roles

I build firmware from the register level up.

Working across hardware, microcontrollers and bare-metal firmware — STM32 peripheral drivers written straight from datasheet register maps, communication protocols debugged on the wire, and RFID reader firmware in development.

  • New Delhi, India
  • /Bare-metal firmware
  • /Currently: RFID reader firmware
About

I work close to the metal.

Most of my firmware is written at the register level. I read the datasheet, map the peripheral, and bring it up without HAL or vendor abstractions — because that's where you actually understand what the silicon is doing.

My core is STM32 on ARM Cortex-M3/M4: peripheral drivers for GPIO, SPI, I²C and UART built from register maps, inter-MCU links debugged from logic-analyzer captures, and small real-time systems like an RTC-driven clock display. Alongside that I spent six months on drone firmware and hardware at ENORD — tuning ArduPilot, calibrating IMU, compass and GPS, and doing the soldering and bring-up that turns a bare frame into a flying system.

Now I'm extending that hardware-up approach toward RFID reader firmware, and eventually custom reader hardware and PCB design — moving from writing drivers to designing the boards they run on. Those pieces are in development, and I'm building them the way I learned everything else: from the signal up.

profile
Based in
New Delhi, India
Focus
Bare-metal firmware
Foundation
Electronics Engineering
Currently
RFID reader firmware

$ approach = read_datasheet → map_register → verify_on_scope

Expertise

Capabilities, not progress bars.

What I actually work with — grouped by domain. The RFID track is where I'm heading next, kept separate and marked honestly.

Embedded & Firmware

Bare-metal STM32 on ARM Cortex-M — no HAL, straight from register maps.

  • Bare-metal / register-level
  • STM32 · Cortex-M3/M4
  • Peripheral drivers
  • Interrupts & timers
  • Memory-mapped I/O
  • RTC & LCD interfacing

Communication & Protocols

Moving bytes between devices — and debugging them on the wire.

  • UART
  • SPI · master/slave
  • I²C · master/slave
  • Inter-MCU links
  • Framing & ACK/NACK
  • Logic-analyzer debugging

Hardware & Bring-up

From soldering iron to signal integrity.

  • Soldering & rework
  • Continuity / wiring checks
  • Circuit troubleshooting
  • Drone assembly & bring-up
  • Schematic reading
  • PCB design · in dev

Software & Tooling

The tools around the firmware.

  • C / Embedded C
  • Python
  • STM32CubeIDE
  • Logic analyzer
  • Mission Planner · ArduPilot
  • Git & GitHub
Exploring

RFID & Readers

Applying the same register-level approach to RFID readers.

  • Reader firmware
  • Impinj E310
  • Silion SIM3500
  • Command/response frames
  • Protocol parsing
  • Custom reader architecture
Signal Path

From signal to application.

The stack I work across — from a physical signal, up through the microcontroller and firmware, out to the host application. The RFID module is the layer I'm building toward now.

physical signal
host application
Core

STM32 Microcontroller

ARM Cortex-M3/M4

The core — an STM32 on ARM Cortex-M3/M4 — where every driver and control loop runs.

hover a layer to trace the path
Journey

How I got here — and where it's heading.

A hardware-up path: from electronics foundations to bare-metal firmware, drone work, and now RFID and custom hardware.

  1. Electronics Foundations

    Diploma · Jamia Millia Islamia · 2021–2024

    Electronic devices and circuits, microprocessors and microcontrollers, embedded systems — the groundwork for working close to the hardware.

  2. Bare-Metal Firmware

    Began writing STM32 peripheral drivers straight from register maps — GPIO, SPI, I²C, UART — with no HAL. Just the reference manual and the datasheet.

  3. Communication & Protocols

    Built inter-MCU links and traced clock-polarity, ACK/NACK and baud-mismatch issues from logic-analyzer captures until they were solid.

  4. Drone Firmware & Hardware

    ENORD · CIE, Jamia Millia Islamia · Jan–Jul 2026

    Configured and tuned ArduPilot, calibrated IMU, compass and GPS, integrated flight controllers, ESCs, motors and GPS, and handled soldering, bring-up and troubleshooting.

  5. RFID & Reader Firmware

    Now

    Applying the same register-level approach to RFID reader modules — MCU init, UART links, and command/response protocol handling.

  6. PCB & Custom Hardware

    Next

    Learning to design the boards my firmware runs on: schematic capture, component selection, routing, power distribution and signal integrity.

Selected Work

Built close to the metal.

Firmware and hardware projects, each written from the register level up. Open any card for the problem, the approach, and how it turned out.

Bare-metal driversBuilt

Inter-MCU Communication over SPI, I²C & UART

Custom SPI, I²C and UART drivers built from datasheet register maps — no HAL, no vendor libraries — moving data between two microcontrollers.

  • Register-level SPI / I²C / UART
  • Master–slave configuration
  • Logic-analyzer debugging
  • No HAL or vendor libraries
CSTM32SPII²CUARTBare-metal
GitHub
Peripheral integrationBuilt

Real-Time Clock Display on LCD

A DS1307 real-time clock driven over a hand-written I²C driver, with live time and date rendered on an LCD.

  • Custom I²C driver
  • DS1307 over I²C
  • Flicker-free LCD refresh
  • Register-level, no HAL
CSTM32I²CRTCLCD
GitHub
GPIO & inputBuilt

4×4 Matrix Keypad Interfacing

A matrix-keypad driver using GPIO row/column scanning with software debouncing, mapping presses to characters on an LCD.

  • GPIO row/column scanning
  • Software debouncing
  • Key → character mapping
  • Live LCD output
CSTM32GPIOLCD
GitHub
Firmware & hardware · ENORDExperience

Drone Firmware & Assembly

Jan – Jul 2026 · New Delhi

Six months configuring and tuning ArduPilot firmware and assembling drone hardware at ENORD (CIE, Jamia Millia Islamia).

  • ArduPilot config & tuning
  • IMU / compass / GPS calibration
  • Flight controller, ESC & motor integration
  • Soldering, wiring & fault diagnosis
ArduPilotMission PlannerDronesHardware bring-up
GitHub
In development

The direction I'm building toward — RFID reader firmware and custom hardware. These are genuinely in progress or under study, kept separate so nothing here is overstated.

STM32 firmwareIn development

RFID Reader Firmware

Extending my bare-metal driver work toward firmware for an STM32-based RFID reader — MCU init, UART links to the reader module, GPIO control and interrupt handling.

  • MCU init & clocking
  • UART to reader module
  • GPIO & interrupt handling
  • Command/response handling
STM32CUARTRFID
Protocol studyExploring

RFID Module Integration & Protocols

Studying reader modules such as the Impinj E310 and Silion SIM3500 — their command/response frames, protocol parsing and reader state.

  • Command/response frames
  • Protocol parsing
  • Module configuration
  • Reader state management
Impinj E310Silion SIM3500RFIDUART
System designExploring

Custom RFID Reader Architecture

A design exploration of a full reader stack — antenna → RFID IC/module → STM32 → USB/Ethernet → host — rather than relying entirely on off-the-shelf electronics.

  • End-to-end reader stack
  • Antenna → module → MCU
  • USB / Ethernet host link
  • Hardware + firmware co-design
RFIDSTM32PCB DesignUSBEthernet
HardwareExploring

PCB Design & Embedded Hardware

Learning to design the boards my firmware runs on — schematic capture, component selection, routing, power distribution, grounding and signal integrity.

  • Schematic capture
  • Component selection
  • Routing & power
  • Grounding & signal integrity
PCB DesignElectronicsSTM32Hardware
Philosophy

Bottom-up, always.

I don't reach for an abstraction until I understand what it's hiding. The habit started with bare-metal firmware — read the reference manual, write to the register, watch it on a logic analyzer — and it's how I approach every layer since. Learn the thing from the bottom, then build up. Slower at first, far more durable after.

01
Understand the signal.
02
Understand the hardware.
03
Understand the protocol.
04
Then build the system.
Code

It's all on GitHub.

Every driver written from the register map, the protocol experiments, and the RFID work as it comes together. Browse the source and follow along.

~/anas — zsh
$whoami
·anas-khan — embedded & firmware engineer
$cat focus.txt
·Bare-metal STM32 drivers · SPI / I²C / UART
·RTC + LCD · 4×4 matrix keypad · drone firmware
$git status
·RFID reader firmware — in development
$
Contact

Let's build something real.

Open to embedded, firmware and hardware roles — and to interesting problems close to the metal. The fastest way to reach me is email.

Open to embedded & firmware roles