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.
Management
- 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
*well, almost.

Supperware Head Tracker (2019)
Product: A cheap, accurate, and comfortable 3DOF head tracker. It's a fundamental piece of enabling technology for audio-only VR and AR applications.
Contribution: Everything except industrial design. Specification; mechanical design; schematic capture, PCB layout, firmware, sales and marketing. Filed one patent.
Contribution: Everything except industrial design. Specification; mechanical design; schematic capture, PCB layout, firmware, sales and marketing. Filed one patent.

Beryl cycle hire (2019)
Product: Rear lock unit for a bike hire scheme.
Contribution: Schematic and PCB design. Firmware for supervising the lock, motor control, micropower, polyphonic synthesiser for alarm tones. Also built a remote diagnosis and unlocking tool, using the same PCB [C].
Contribution: Schematic and PCB design. Firmware for supervising the lock, motor control, micropower, polyphonic synthesiser for alarm tones. Also built a remote diagnosis and unlocking tool, using the same PCB [C].

Kano Computing Ltd (2019)
Project: A very fun thing that I'm still not allowed to talk about, based around an ESP32.
Contribution: Taking a proof-of-concept PCB design, applying professional design rules and library management, bending it to fit a revised specification, and making it work. Contributing to a team firmware effort to make a beautiful device.
Contribution: Taking a proof-of-concept PCB design, applying professional design rules and library management, bending it to fit a revised specification, and making it work. Contributing to a team firmware effort to make a beautiful device.

Emotech Olly (2018)
Product: High-end voice assistant based on a bespoke platform.
Contribution: Adapting a real-time angle-of-arrival detection algorithm for acoustic beam steering to run on one core of an embedded chip [XMOS XC].
Contribution: Adapting a real-time angle-of-arrival detection algorithm for acoustic beam steering to run on one core of an embedded chip [XMOS XC].

ROLI Seaboard Rise (2015)
Product: Ultra-expressive MIDI controller based on a new sensor technology.
Contribution: Instigation of sensor-reading firmware and testing software; handover to newer recruits.
Contribution: Instigation of sensor-reading firmware and testing software; handover to newer recruits.

Novation Impulse (2011)
Product: Very playable and responsive MIDI controller keyboard.
Contribution: Schematic design, firmware [C / VHDL], factory test software [C#].
Contribution: Schematic design, firmware [C / VHDL], factory test software [C#].

Novation Twitch (2011)
Product: DJ controller and audio interface with capacitive touch pads in conjunction with Serato.
Contribution: Schematic design, PCB layout, firmware [C], public MIDI documentation.
Contribution: Schematic design, PCB layout, firmware [C], public MIDI documentation.

Focusrite Saffire Pro 24 DSP (2010)
Product: Firewire audio interface.
Contribution: DSP algorithms for reverb, EQ, compression, VRM monitoring [C on TI C6000 DSP].
Contribution: DSP algorithms for reverb, EQ, compression, VRM monitoring [C on TI C6000 DSP].

Focusrite VRM (2010)
Product: DSP algorithm for improved spatialisation of headphone audio.
Contribution: Loudspeaker measurement and characterisation, artificial room reverb, HRTF convolution. Published and presented two AES papers; filed a patent.
Contribution: Loudspeaker measurement and characterisation, artificial room reverb, HRTF convolution. Published and presented two AES papers; filed a patent.

Novation Dicer (2009)
Product: Low-cost MIDI controller for DJs. Units can pair and communicate via a 3.5mm jack to share one USB connection.
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], factory test software [Delphi], public MIDI documentation.
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], factory test software [Delphi], public MIDI documentation.

Novation Launchpad MK1 (2008)
Product: Best-selling music technology product. Firmware could not be upgraded after factory programming, but nevertheless this gained a reputation for reliability.
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], public MIDI documentation.
2011 Revamp: Schematic design and PCB layout. Management/guidance of a junior engineer charged with rewriting the firmware. Contribution to marketing by blogging differences between Mk1 and S models.
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], public MIDI documentation.
2011 Revamp: Schematic design and PCB layout. Management/guidance of a junior engineer charged with rewriting the firmware. Contribution to marketing by blogging differences between Mk1 and S models.

Novation Nocturn (2008)
Product: MIDI controller with touch-sensitive encoders.
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], factory test software [Delphi].
Contribution: Schematic design, PCB layout, firmware [ST7 assembler], factory test software [Delphi].

Novation nio 2|4 (2007)
Product: Focusrite's first USB interface.
Contribution: Schematic design and PCB layout.
Contribution: Schematic design and PCB layout.

Focusrite ISA 828 ADC card (2007)
Product: High-end analogue-to-digital converter option. 124dB dynamic range. ADAT/AES/SPDIF output options.
Contribution: Schematic design and PCB layout; custom FPGA [VHDL].
Contribution: Schematic design and PCB layout; custom FPGA [VHDL].

Cadac S-Digital (2006)
Product: Large modular digital mixing console for live sound. Unreleased.
Contribution: Schematic design, PCB layout, and firmware for the control surface [ARM assembler].
Contribution: Schematic design, PCB layout, and firmware for the control surface [ARM assembler].

PhD thesis (2005)
Project: Return to university, in order to learn more about acoustics. Sponsored by Pharos Communications. Full text of 'An onset-guided spatial analyser for binaural audio' is available here.
Contribution: A computer model that imitates a part of how the human auditory system processes spatial cues. And a book.
Contribution: A computer model that imitates a part of how the human auditory system processes spatial cues. And a book.

Pharos Control Platform (2001)
Project: Rack-mounted timer and controller to automate, or to pretend to be, the equipment you'd find in a broadcasting facility.
Contributions: Drivers for Louth protocol, Sony Flexicart, and a Snell & Wilcox DVE machine. [68HC11 assembler].
Note: It's surprisingly hard to find decent photographs of things I designed at this stage of my career. This is from an auctioneer's website.
Contributions: Drivers for Louth protocol, Sony Flexicart, and a Snell & Wilcox DVE machine. [68HC11 assembler].
Note: It's surprisingly hard to find decent photographs of things I designed at this stage of my career. This is from an auctioneer's website.

Pharos Audio Server (2000)
Product: Network-controllable audio server to store and play out programmes for the BBC World Service and others.
Contribution: Writing the Windows software and commissioning each system [Delphi].
Note: This is an old screen grab from a marketing cut-sheet that the Wayback Engine helpfully archived. 2001 wasn't a good year for archiving images.
Contribution: Writing the Windows software and commissioning each system [Delphi].
Note: This is an old screen grab from a marketing cut-sheet that the Wayback Engine helpfully archived. 2001 wasn't a good year for archiving images.