Gareth Mcmullin is a Senior Embedded Engineer based in Auckland with 15+ years of hands-on experience designing firmware and electronics for ARM Cortex-M systems. He combines deep low-level debugging and USB stack expertise—demonstrated by fixes and feature additions to prominent open-source projects like libopencm3 and Black Magic—with practical full‑stack tooling improvements such as remote debugging support in the Codelite IDE. Comfortable from bare-metal register hacking to higher-level build and debug workflows, he delivers reliable firmware and development ergonomics that accelerate teams. Gareth also holds an M.Ing and an MBA, a blend that equips him to balance technical decisions with product and business considerations. An interesting thread through his work is a focus on making tooling and examples truly usable—fixing examples and edge cases so others can reproduce and build on his fixes.
15 years of coding experience
Master of Business Administration - MBA, Master of Business Administration - MBA at University of Otago
In application debugger for ARM Cortex microcontrollers.
Role in this project:
Embedded Systems Engineer
Contributions:3 releases, 600 commits, 230 PRs in 9 years 9 months
Contributions summary:Gareth added scripts and code for programming and debugging ARM Cortex microcontrollers. They focused on creating low-level GDB protocol implementations, including read/write memory, register access and handling of various target specific parameters. Contributions were also made to fix signal configurations and add USB UART interface.
Contributions:62 commits, 1 PR, 1 comment in 2 years 6 months
Contributions summary:Gareth primarily focused on enhancing the USB device library for ARM Cortex-M microcontrollers. Their contributions included fixing handling of HALT conditions and data toggle within the USB code. They also improved the control mechanism dispatching and fixed several example projects (HID, DFU, CDC-ACM) to function correctly with the updated USB driver. In addition, they added support for the LuminaryMicro LM3S family and connectivity-line devices, as well as added definitions for new STM32 registers, including those for the DBGMCU, ITM, TPIU, and FPB.
cortexstm32msp432microcontrollerjlink
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.