I build secure embedded systems from silicon up: payment terminals, e-readers, phones, and the Linux kernel underneath them. Nights and weekends, I ship products of my own.
- 5M+Clover devices shipped
- 7Clover products
- 14patent filings
- 6mainline kernel commits
Recent · built with AI pair-programming
On the bench now
ProofTrove
LiveA private, verified archive of a student's achievements.
Forward a certificate or award to an email address and it's filed under the right student and category, signed on arrival so it's tamper-evident later. Data lives in your own Google Drive. A gap analysis compares the archive with the student's goals.
prooftrove.comMath Interactive
LiveLearn by exploring, not memorizing.
Interactive math and programming lessons that make hard ideas something you can see and touch: drag a function and watch the transformations, learn binary by playing with it. Free to use, and open as a guest with no sign-up.
trymathinteractive.comClover · 2015 to now
Point-of-sale hardware, secure from silicon up
Since 2015 I've worked on every layer of Clover's point-of-sale hardware: component selection, schematics and antennas, the OS, payment apps, factory tooling and backend security. Clover has now shipped more than 5 million devices worldwide.
- The secure core. Chain of trust and secure boot, TrustZone, PKI and OTA signing, physical tamper resistance.
- Keys in the cloud. Moved remote key injection from data-center HSMs to Futurex and AWS Payment Cryptography.
- Certified, repeatedly. PCI-PTS, P2PE and EMVCo across seven product lines.
- First dual-display POS, Station Duo: merchant and customer screens on one system.
- +30% NFC antenna yield from L1 tuning for Apple Pay, Google Pay and contactless cards.
- 60 µA standby on a BLE dongle, the lowest in its class.
- Seven patent families: shared NFC controllers, biometric readers, trusted UI, devices that report in from the box.
- At fleet scale: the fourth-generation platform, managing devices in the field, and launches in new countries.

Station Duofirst dual-display POS 
Minicountertop 
Flexhandheld 
Gocard reader 
Kioskself-serve 
Compactsmall counter 
KDSkitchen display
Barnes & Noble · 2012 to 2014
Nook tablets: board support and secure boot
Low-level platform work for the Nook tablet line, on TI OMAP and NVIDIA Tegra chips.
- Board support packages: bootloaders, Linux kernel drivers, factory tools, power and performance.
- Secure boot from the boot ROM through the bootloaders to the OS.
- Secure video playback, so premium content stayed protected on the device.
Samsung · ST-Ericsson · Qualcomm · Maxim · 2004 to 2015
Ten years inside the chip companies
Where the silicon is made, the job is making a new chip run real software for the first time.
-
Android Cupcake on Samsung reference boards
Ported Android 1.5 Cupcake to Samsung's reference boards in the platform's first year, before Android phones were everywhere. Before that, flash memory management for Samsung NAND: wear-leveling, bad-block management and Linux filesystems.
-
Linux bring-up and mainline kernel code
Brought up Linux on the NovaThor U8500 smartphone SoC and maintained its DMA engine driver in the open. Those commits are still in Linus's tree (below).
-
Tuning Google's Nexus phone
Performance tuning for a Qualcomm-powered Nexus, the line that became Pixel: cpufreq and CPU hotplug policies that made it fast without giving up battery life.
-
9-axis motion sensing
Accelerometer, gyroscope and magnetometer fused on a Cortex-M4 sensor hub: drivers for microcontrollers, Linux and Android, the Android sensor HAL, and tuning for uses down to drones.
42365cfdmaengine: ste_dma40: don't check for pm_runtime_suspended()0fd6022dmaengine: ste_dma40: reset priority bit for logical channels1bdae6fdma40: Improve the logic of stopping logical chan5cd326fdmaengine/ste_dma40: allow fixed physical channel28c7a19dmaengine/ste_dma40: Add support to use lcla area from esram7fb3e75dmaengine/ste_dma40: support pm in dma40
Building something secure that ships as hardware?
Let's talk