Gareth Mcmullin

Senior Embedded Engineer at Basis

Auckland, Auckland, New Zealand
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
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.
code15 years of coding experience
bookMaster of Business Administration - MBA, Master of Business Administration - MBA at University of Otago
bookUniversity of Johannesburg
github-logo-circle

Github Skills (23)

debugging10
debug10
c-language10
cortex10
cortex-m10
usb10
cross-platform10
c-programming10
remote-debugging10
gdb10
driver10
sys10
arm10
embedded10
stm10

Programming languages (9)

C++CSSCoffeeScriptCCMakeMakefileJavaScriptHaskell

Github contributions (5)

github-logo-circle
blackmagic-debug/blackmagic

Feb 2011 - Oct 2020

In application debugger for ARM Cortex microcontrollers.
Role in this project:
userEmbedded 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.
cortexstlinkjtagflashdebugger
libopencm3/libopencm3

Nov 2010 - May 2013

Open source ARM Cortex-M microcontroller library
Role in this project:
userEmbedded Systems Engineer / IoT Developer
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.
Request Free Trial