Skip to content
View pdlsurya's full-sized avatar

Block or report pdlsurya

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
pdlsurya/README.md

Hi, I'm Surya

Embedded Software Engineer focused on RTOS and Bare-Metal Firmware, Device Drivers, IoT, and WSN.

RTOS BLE IoT Wireless Sensor Networks C C++ Zephyr FreeRTOS ESP32 STM32 nRF52 Raspberry Pi Pico RISC-V ARM Cortex-M

About Me

I’m an Embedded Software Engineer focused on developing firmware for resource-constrained and connected embedded systems, with experience spanning RTOS-based applications, bare-metal firmware, device drivers, wireless communication, and embedded peripherals.

My work covers the full firmware stack—from hardware bring-up, register-level programming, and peripheral drivers to RTOS scheduling, synchronization, communication protocols, and application-level system integration. I have hands-on experience with ARM Cortex-M and RISC-V platforms and interfaces including SPI, I2C, UART, I2S, SDMMC, and ADC/DAC, along with BLE, 6LoWPAN, proprietary 2.4 GHz communication, and IoT/WSN applications.

Alongside practical firmware development, I build low-level systems to understand how embedded software works beneath application APIs. My projects include a custom RTOS for ARM Cortex-M and RISC-V, a BLE stack implemented around the nRF52 radio, an ESP32 RISC-V bare-metal SDK, and an STM32 bootloader with SD-card-based firmware updates.

I’m particularly interested in embedded systems where firmware architecture, hardware interaction, real-time behavior, and communication protocols need to work together reliably—from low-level platform code and drivers to complete connected-device applications.

Project Portfolio

A lightweight RTOS project built to explore task scheduling, synchronization primitives, and core kernel behavior.

Focus: RTOS internals, task scheduling, kernel objects, synchronization primitives, inter-task communication

A bare-metal SDK for ESP32 RISC-V targets created to better understand low-level platform support, startup flow, and driver integration.

Focus: bring-up, platform code, low-level firmware

Out-of-tree Zephyr module containing custom drivers, subsystems, and board-level demos for practical application development.

Focus: Zephyr integration, drivers, subsystem design

STM32F4 bootloader that loads firmware from SD card using Intel HEX parsing and flash update logic.

Focus: boot flow, flash programming, firmware update paths

A custom BLE stack project used to explore link-layer behavior, protocol flow, and low-level wireless communication on Nordic hardware.

Focus: BLE, wireless communication, protocol design

An embedded FAT32 project built to better understand low-level storage behavior and practical SD card file handling.

Focus: embedded storage, FAT32 internals, SD card access

Technical Interests

  • Embedded firmware architecture for bare-metal and RTOS-based systems
  • RTOS internals, task scheduling, synchronization, memory management, and interrupt-safe design
  • Peripheral driver development, hardware bring-up, and low-level MCU integration
  • Bluetooth Low Energy (BLE), 6LoWPAN, and custom 2.4 GHz wireless communication
  • IoT devices, wireless sensor networks (WSN), and connected edge systems
  • Wireless sensing and actuation for resource-constrained embedded devices
  • Embedded debugging, firmware optimization, and reliable hardware–software integration
  • MCU architecture, startup code, memory layout, and low-level platform internals

Popular repositories Loading

  1. esp32-riscv-bare-metal-sdk esp32-riscv-bare-metal-sdk Public

    Minimal bare metal sdk for ESP32 RISC-V microcontrollers.

    C 26 2

  2. sanoRTOS sanoRTOS Public

    Minimal RTOS implementation for ARM Cortex-M and RISC-V Microcontrollers.

    C 14

  3. nrf-ble-stack nrf-ble-stack Public

    Minimal Bluetooth Low Energy(BLE) stack for nRF52 series SoCs

    C 2

  4. stm32f4-sd-bootloader stm32f4-sd-bootloader Public

    A minimal STM32F4 bootloader that reads Intel HEX file from SD/microSD card and updates the application firmware.

    C 1

  5. Zephyr-OOT Zephyr-OOT Public

    Out of Tree(OOT) boards, drivers, subsystems, and application samples for Zephyr RTOS.

    C

  6. sdFat32 sdFat32 Public

    A lightweight FAT32 library for SD card access using SPI mode.

    C