Hardware and firmware engineering
- Hardware: CE- and FCC-compliant mixed-signal schematic design and PCB layout (Altium Designer and Zuken Cadstar).
- Firmware: specialities are C, ARM assembler, and DSP development. I’ve delivered many solo and team-based firmware projects.
- I’ve built commercial projects using VHDL, C++ (JUCE), C#, XC, and a lot of other languages. I’m familiar with the usual tools for safe collegiate working (SVN, Git).
- Music tech is where I learned my trade. I’m a classically-trained pianist, so it’s been a good way to deploy those skills. At least four of my products have featured as a Sound On Sound cover image.
- I was de facto VP of Engineering at ROLI until 2015, and a hardware team leader at Focusrite: recruiting, orienting, and managing teams; maintaining a programme of projects; mentoring junior developers; keeping the wheels on the train.
- I looked after ROLI’s intellectual property portfolio, including identifying, preparing, and maintaining patents and registered trademarks.
- I’ve successfully convened a widely-adopted specification (MPE), chaired industry-wide committees (including the UK AES Section), and work well with other engineers and stakeholders.
- Here’s my LinkedIn profile.
Some things I’ve helped to make
Seaboard GRAND (2014) ¶
- ROLI’s flagship synthesiser with a unique, expressive playable surface.
- DSP and firmware for the control surface [C on ARM and TI C5000 DSP].
- A Linux daemon to handle MIDI traffic.
- Initial specification for the Equator synthesiser engine.
- Recruiting, then initially orienting and managing, the team that worked on Equator, the Linux system, and subsequent ROLI products.
- Assisting the patent attorney to prepare and file patents.
Beryl Pixel (2018) ¶
- Award-winning low-cost USB-chargeable bike light with novel LED technology, and more than one year of standby power.
- Review of schematic and PCB.
- Writing firmware with micropower standby, power monitoring, and efficiently driving LEDs [C on Atmel ATtiny].
Novation Mininova (2011) ¶
- Powerful but compact synthesiser.
- All user interface firmware, including MIDI handling; control system; parameter management; bootloader for safe customer upgrading [C].
- Factory testing software in C#.
- I didn’t write the DSP — that was Chris Huggett — but I had the pleasure of working closely with him.
Some things I’ve published
- See the academic publications page for scholarly works.
- The MPE specification. I chaired the working group and edited the document (meaning that I wrote more than half of it, but I cannot say exactly how much). To view the specification is free, but requires registration with The MIDI Association.
- The Focusrite Development Blog, years ago, but it did include an entertaining post about the ZX Spectrum that went viral (front page on Slashdot and The Register; >10,000 page views in a week).
- I have had articles published in Journal of the Audio Engineering Society and International Pro Sound News.
Everything* else I’ve helped to make