Phil Elwell

Software Engineer at Raspberry Pi Trading

Greater Cambridge Area United Kingdom
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
award
Top expert inComprehensive Systems and Network Programming
Phil Elwell is a seasoned software engineer with 11 years of experience focused on low-level systems, embedded Linux, and hardware-software integration in the Greater Cambridge area. He has been a core contributor at Raspberry Pi Trading since 2014 after a long tenure as a Principal Software Engineer at Broadcom, delivering production-quality boot, USB, display, and device-tree tooling used across Raspberry Pi platforms. His contributions to high-profile open-source projects (raspberrypi/tools, usbboot, userland, hats) show deep expertise in ARM assembly, interrupt and cache initialization, USB boot compatibility, and robust device-tree and firmware tooling. Phil combines pragmatic system architecture with careful cross-platform compatibility work—often fixing subtle timing, deadlock, and parsing issues that only surface in real hardware. Colleagues can rely on him to bridge silicon-level constraints and user-facing system stability, and he frequently improves developer tooling used by the broader Pi ecosystem.
code11 years of coding experience
job8 years of employment as a software developer
github-logo-circle

Github Skills (31)

bootloader10
assembly10
system-programming10
scripting10
firmware10
interrupt-handling10
bash10
usb10
c1110
c1710
i2c10
interrupt10
script10
sys10
assembler10

Programming languages (15)

JavaC++JinjaCSSCMakefileGoHTML

Github contributions (5)

github-logo-circle
raspberrypi/usbboot

Mar 2018 - Dec 2022

Raspberry Pi USB booting code, moved from tools repository
Role in this project:
userEmbedded Systems Engineer / IoT Developer
Contributions:21 reviews, 7 commits, 27 PRs in 4 years 9 months
Contributions summary:Phil primarily contributed to the `usbboot` project by implementing features related to USB device handling and compatibility. They added support for multiple USB instances, specifically targeting port numbers for Compute Modules. The user also addressed cross-platform build issues, ensuring compatibility on non-Apple platforms. Furthermore, the user updated firmware and fixed MSD support for non-2711 boards, indicating a focus on system-level integration and hardware interaction.
bootingraspberry-piraspberryusbrepository-tools
raspberrypi/userland

Oct 2014 - Feb 2022

Source code for ARM side libraries for interfacing to Raspberry Pi GPU.
Role in this project:
userBack-end Developer & System Architect
Contributions:61 commits, 41 PRs, 43 pushes in 7 years 4 months
Contributions summary:Phil primarily focused on improving the `vc_dispmanx` library, contributing fixes for vsync service use counting and update/vsync callback issues, which indicates improvements in the Raspberry Pi's display management. They also addressed potential deadlock scenarios in `vcilcs` and improved code related to `vchiq_lib`, implying involvement with inter-process communication and system stability. Furthermore, the user made significant contributions to the `dtoverlay` application, adding features like support for multiple overlay instances, enhanced parameter handling, and the implementation of the `dtmerge` command, suggesting expertise in device tree manipulation and system configuration.
gpuraspberry-piraspberryarm
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
Phil Elwell - Software Engineer at Raspberry Pi Trading