Skip to content
View JJAYAVARDAN's full-sized avatar

Block or report JJAYAVARDAN

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
JJAYAVARDAN/README.md

Hi, I'm Jolapuram Jayavardan πŸ‘‹

Embedded Software Engineer Β· Bluetooth Middleware & Controller Firmware Β· ARM Cortex-M4

I build firmware and connectivity stacks that have to work β€” bare metal to RTOS, silicon to protocol.

LinkedIn Email Portfolio Resume


πŸ§‘β€πŸ’» About Me

I'm an Embedded Software Engineer specializing in bare-metal ARM programming, RTOS architecture, and Bluetooth stacks from middleware to controller. I'm an Associate Software Engineer at Harman International, working on the Android Bluetooth stack (HFP, A2DP, AVRCP, MAP, PBAP, Classic and BLE), HCI and sniffer-based debugging, firmware loading, and PTS certification.

What sets my background apart: I've built a register-level C++ peripheral driver library from scratch (GPIO, RCC, EXTI, NVIC, SysTick, USART, SPI, I2C, no HAL/LL), a custom UART bootloader (flash erase, CRC verification, VTOR relocation), and a bare-metal task scheduler with zero HAL/IDE dependency, writing my own linker scripts, startup files, and manipulating Cortex-M4 stack frames by hand.

  • πŸŽ“ B.Tech, Electronics & Communication Engineering β€” CGPA 8.0/10, RGMCET, Nandyal
  • πŸ”§ Comfortable across the stack: silicon registers β†’ drivers β†’ RTOS β†’ middleware β†’ application protocol
  • πŸ“‘ Production exposure to Bluetooth certification (PTS), OTA log capture, HCI snoop and Ellisys analysis, and RCA against the Bluetooth SIG core spec
  • 🎯 Targeting: Bluetooth Middleware / Controller Firmware / Embedded Software Engineer roles
  • 🌱 Currently deepening Linux kernel-level Bluetooth (BlueZ) and real-time systems design

πŸ› οΈ Tech Stack

Languages C C++ Java Python Assembly

Microcontrollers & Boards STM32 ESP32 ARM7 PIC RaspberryPi

RTOS & Bare-Metal FreeRTOS Custom Bootloaders Linker Scripts Startup Code NVIC SysTick PendSV DMA Interrupts

Protocols Bluetooth Classic & BLE HFP A2DP AVRCP MAP PBAP HCI OTA SPI I2C UART CAN MQTT HTTP

Platforms Linux Android ROS (Basics) PCB Design

Tools & Debugging Git GitHub ADB Perfetto Ellisys HCI Snoop Logic Analyzer GCC ARM OpenOCD GDB Keil Β΅Vision STM32CubeIDE MPLAB X SEGGER SystemView ESP-IDF


πŸš€ Featured Projects

A from-scratch, register-level peripheral driver library for the STM32F407VG Discovery board β€” no HAL, no LL.

  • Drivers built directly against the reference manual: GPIO, RCC, EXTI, NVIC, SysTick, USART, SPI, I2C
  • Clean object-oriented C++ API β€” GPIO owns an RCC instance, EXTI takes port+pin, static NVIC methods
  • Documented with PlantUML class and architecture diagrams, per-peripheral theory, and example applications
  • Embedded C++ STM32F407 Register Programming PlantUML

A production-style bootloader with no vendor middleware.

  • Flash erase, memory write, and CRC32 integrity verification before application jump
  • Custom VTOR relocation, linker scripts, and startup code separating bootloader and app regions
  • Companion Python host tool for firmware transfer and command handling over UART
  • Embedded C UART ARM Cortex-M4 Python

A cooperative/round-robin scheduler built entirely from the CLI β€” no HAL, no IDE.

  • Hand-written linker scripts and startup files for precise memory layout
  • Manual Cortex-M4 stack frame manipulation via SysTick & PendSV for context switching
  • Debugged at register and stack-frame level with GDB + OpenOCD
  • GCC ARM OpenOCD GDB

Multi-sensor vehicle monitoring on ARM7 LPC2129.

  • FreeRTOS tasks coordinating concurrent SPI, I2C, and UART sensor reads
  • Task profiling and trace visualization with SEGGER SystemView
  • ARM7 LPC2129 FreeRTOS SEGGER SystemView

Custom adder combining Ling and Ripple Carry logic for a speed/area trade-off, designed in Cadence Virtuoso.

  • Cadence Virtuoso VLSI Design

πŸ”­ What I'm Working On

  • πŸ“² Developing Bluetooth middleware features and supporting controller firmware at Harman International
  • πŸ” Root cause analysis using HCI snoop, Ellisys captures, OTA logs, and the Bluetooth SIG core spec
  • 🐧 Going deeper into Linux BlueZ internals to connect my embedded background to the Android Bluetooth stack
  • 🧰 Moving project history into individually documented, pinned repositories

πŸ“š Currently Learning

  • Linux kernel-level Bluetooth (BlueZ) architecture
  • Advanced RTOS scheduling and real-time systems design
  • Secure OTA update design (signed firmware, rollback protection)

πŸ“Š GitHub Stats

GitHub Stats GitHub Streak

Top Languages


πŸ’Ό Experience Snapshot

Role Company Focus
Associate Software Engineer ([05 oct 2026] – Present) Harman International Bluetooth middleware and controller support: AOSP stack, HCI/Ellisys analysis, firmware loading via UART, RCA, PTS
Bluetooth Developer Intern (Jan 2026 – [sept 2026]) Harman International Android BT stack β€” HFP, A2DP, MAP, PBAP; PTS certification
Embedded Software Trainee Vector India Interrupt-driven drivers (SPI/I2C/UART/CAN), FreeRTOS, Linux
ARM Cortex-M4 Bare-Metal Program Argyan Tech Cortex-M4 architecture, custom scheduler, AAPCS
PIC Microcontroller Course Argyan Tech Register-level Embedded C on PIC16F877A

πŸ“œ Certifications

Embedded Systems β€” Eduskills & Microchip Β· ARM Cortex / STM32 MCU1 & MCU2 β€” FastBit Embedded Brain Academy Β· Cloud Computing β€” NPTEL Β· Introduction to IoT β€” NPTEL Β· Git & GitHub β€” GeeksforGeeks

πŸ† Achievements

πŸ₯ˆ 2nd Place, Circuit Debugging β€” Ripple 2K24 Β |Β  πŸŽ–οΈ Appreciation Award, Chatbot Development β€” AIMERS Society


πŸ“¬ Contact

πŸ“§ Email j.jayavardan.r@gmail.com
πŸ”— LinkedIn linkedin.com/in/jayavardan-j-120331218
🌐 Portfolio jjayavardan.github.io/JJAYAVARDAN
πŸ“„ Resume View / Download
πŸ“ Location Bengaluru, Karnataka, India

Open to: Bluetooth Middleware Β· Controller Firmware Β· Embedded Software Engineer roles

Pinned Loading

  1. stm32f407-baremetal-cpp-drivers stm32f407-baremetal-cpp-drivers Public

    Production-quality bare-metal C++ drivers for the STM32F407VG Discovery using direct register programming (No HAL/LL).

    C++ 1

  2. stm32f407-task-scheduler stm32f407-task-scheduler Public

    Bare-metal task scheduler for STM32F407 using SysTick and PendSV interrupts

    Assembly

  3. Data-Acquisition-System-for-LPC21xx Data-Acquisition-System-for-LPC21xx Public

    Embedded C-based Data Acquisition System (DAQ) for LPC21xx (ARM7TDMI-S) using Keil uVision. Monitors temperature (LM35), voltage, and light intensity (LDR via ADC), along with real-time data from D…

    HTML

  4. code-review-env code-review-env Public

    A real-world OpenEnv environment where an AI agent reviews code and identifies bugs, security issues, and performance problems.

    Python

  5. ESP_32-programing-projects ESP_32-programing-projects Public

    All ESP32 projects

    C

  6. PIC16F877A PIC16F877A Public

    PIC16F877A Programming

    SWIG