I'm a System Design Engineer specializing in Embedded Systems, Signal Processing, CubeSat ADCS, and Real-Time Communication Systems. I build end-to-end hardwareβsoftware systems β from PCB layout and firmware to telemetry pipelines and SDR communication links.
Based in Chennai, India, I focus on the hardwareβsignal boundary, creating systems that bridge the gap between physical hardware and digital signal processing.
- Embedded Systems Design β Microcontroller programming, RTOS, real-time constraints
- Digital Signal Processing β FIR/IIR filters, frequency analysis, adaptive algorithms
- CubeSat ADCS β Attitude determination and control systems, reaction wheels, IMU fusion
- SDR Communication β Software-defined radio, GNU Radio, RF telemetry
- Hardware-Software Co-Design β System architecture, register-level optimization
- Microcontrollers: Arduino (ATmega328P), ESP32 (Dual-Core Xtensa LX6)
- Sensors: MPU6050 IMU, ADC modules
- Communication: UART Serial, I2C, SPI
- RF Hardware: ADALM Pluto SDR
- Embedded C/C++ β Register-level programming, interrupt-driven systems
- Python β Data analysis, geospatial processing, digital twins
- Arduino β Rapid prototyping and hardware abstraction
- FreeRTOS β Real-time operating system, task scheduling, semaphores
- GNU Radio β SDR signal processing, modulation/demodulation
- GeoPandas / Shapely β Geospatial data analysis
- NumPy / Matplotlib β Numerical computing and visualization
- MQTT β Real-time messaging, IoT communication
- UART Serial β High-throughput data transmission (up to 1 Mbps)
- RF Telemetry β CPFSK modulation, frequency hopping
Real-time signal acquisition, adaptive filtering & output reconstruction on Arduino UNO
A real-time digital signal processing system built on Arduino UNO that performs continuous signal acquisition, adaptive FIR filtering, and output reconstruction. The system automatically identifies input signal characteristics and dynamically reconfigures filter parameters.
Key Metrics:
- Sampling Rate: 40 kHz
- Serial Throughput: 1 Mbps
- Input Latency: ~17 ms
- CPU Utilization: ~18%
- Frequency Accuracy: Β±4 Hz
Tech Stack: Arduino UNO (ATmega328P), Embedded C, Interrupt-Driven ADC, Circular Buffering, FIR Filter Design, UART Serial
Attitude Determination & Control System with SDR telemetry, digital twin, and custom ground station
A functional CubeSat ADCS prototype using ESP32, MPU6050, and three reaction wheels for three-axis attitude control. The system incorporates a full SDR communication link, a real-time digital twin for simulation and validation, and a custom ground station for telemetry visualization.
Key Metrics:
- IMU Sample Rate: 50 Hz
- RF Band: 862β868 MHz
- Modulation: CPFSK
- Frequency Hopping: 256-channel CSPRNG
- Control Axes: 3-axis
Tech Stack: ESP32, MPU6050 IMU, FreeRTOS, Cascaded PID, GNU Radio, CPFSK Modulation, Python Digital Twin
DSB-FC optical transmitter-receiver system with experimental noise and bandwidth analysis
A hardware implementation of a DSB-FC (Double Sideband Full Carrier) amplitude modulation optical communication link. The system includes a transmitter stage for modulation and optical emission, and a receiver stage for photodetection, signal conditioning, and demodulation.
Key Metrics:
- Modulation: DSB-FC
- Medium: Optical (LED/LDR)
- Validation: Experimental
Tech Stack: Carrier Generator, AM Modulator, LED Driver, Photodetector (LDR), Amplifier Stage, Envelope Detector
Prototype SSM/SSD system using delay-based signal comparison across frequency and waveform conditions
A hardware prototype implementing slope sign modulation (SSM) and demodulation using a delay-based signal comparison approach. The modulator encodes binary data based on signal slope polarity; the demodulator reconstructs the signal by comparing delayed versions.
Key Metrics:
- Method: Delay-Based Comparison
- Validation: Multi-Frequency
Tech Stack: Delay Network, Comparator Stage, Logic Encoder, Slope Sign Detector, Signal Reconstructor
Dual-core task scheduling with semaphore synchronization and MQTT-bridged Python integration
A dual-core RTOS application on ESP32 implementing concurrent task execution with semaphore-based synchronization across cores. The system integrates an MQTT communication bridge to a Python host for real-time data exchange and monitoring.
Key Metrics:
- Task Switch Latency: <1 ms
- MQTT Comm Delay: ~10 ms
- Cores: Dual (ESP32)
- Sync Mechanism: Semaphore
Tech Stack: ESP32 (Dual-Core Xtensa LX6), FreeRTOS, Semaphores, Task Pinning, MQTT over Wi-Fi, Python MQTT Client
Python-based geospatial tool for automated shoreline change detection and statistical reporting
A Python automation tool for shoreline change analysis using geospatial datasets. The system processes input geographic data, computes shoreline change metrics, generates intermediate analysis outputs, and produces formatted statistical reports.
Key Metrics:
- Execution: Fully Automated
- Output: Reports + Stats
- Input: Geospatial Data
Tech Stack: Python, GeoPandas, Shapely, NumPy, Matplotlib, PDF/CSV Reports, GeoJSON Outputs
Check out my full portfolio at spdly.is-a.dev


