Keppytronics Services
Engineering consulting for digital electronics
Overview
I founded Keppytronics after twenty years of industry experience building avionics for cubesats and smallsats. During that time, my role combined leadership of small ad-hoc engineering teams with hands-on development of bespoke hardware, gateware, and software. I was closely involved in all stages of the product life-cycle including concept, architecture, design, development, board bringup, debugging, verification, and maintenance of fielded systems.
My deepest expertise is in firmware and gateware development. I am an expert in VHDL and C++, and proficient in many other programming languages including Java, MATLAB, Python, and Rust. I am most comfortable on bare-metal embedded systems, but have experience working within FreeRTOS and Linux.
I routinely work with cross-disciplinary teams (electronic, mechanical, optical, power, thermal, etc.) to solve difficult technical problems. I am not a specialist in those domains, but I know enough to communicate effectively, coordinate teams, and mediate when conflicts arise.
This page lists my areas of expertise. If your project needs help in any of these areas, please contact Keppytronics to set up a consulting or support contract.
SatCat5
SatCat5 started with a focus on gateware, with a standalone Ethernet switch that can be instantiated on several field programmable gate array (FPGA) platforms. Over time, the project added software-based features for switch-management and remote-control functions, which eventually grew into a cross-platform framework for embedded software. Over time, the project added a gateware-accelerated IPv4 router, MACsec encryption, and a software-defined IP/UDP stack supporting ARP, CoAP, DHCP, ICMP, NTP, TFTP, and other protocols. SatCat5 also offers best-in-class support for Precision Time Protocol (PTP), achieving picosecond-scale time-transfer over asynchronous Ethernet networks.
Though SatCat5 was originally intended for small-satellite applications, it’s also well-suited for commercial and industrial applications on the ground. SatCat5 excels in bridging the communications gap between powerful computers and resource-constrained embedded microcontrollers.
FPGA & Gateware Development
I have been performing hands-on FPGA development throughout my entire career, covering the entire life-cycle for a given project from inception to hardware delivery, including support for products deployed remotely to a customer laboratory or to orbit.
I have extensive experience developing complete FPGA systems on multiple FPGA platforms. I’ve worked with Xilinx parts (6-series, 7-series, Ultrascale, Zynq SoC), Microchip (RTG4, Polarfire), and Lattice (iCE40).
At the lowest level, I frequently develop and validate gateware designed for a specific purpose:
- Digital signal processing, including multi-rate filters and adaptive filters
- Clock domain crossing (CDC) for asynchronous, plesiochronous, and synchronous systems
- Ethernet media independent interfaces (RMII, RGMII, SGMII)
- Ternary content addressable memory (TCAM) for MAC-address and IP-address lookup.
At the higher level, I develop software to support all operations of the complete system. This includes software for embedded soft-CPU or hard-CPU microcontrollers, such as device-drivers to allow software control of gateware functions. I also develop command, control, and telemetry tools to allow users to test and operate the FPGA system, using frameworks such as COSMOS/OpenC3 or custom console and GUI applications.
Signal Integrity
I have experience solving signal integrity problems for high-speed digital signals up to about 10 Gbaud. I can review PCB, cable, and connector designs to spot and fix potential problems before they strike. I can also perform diagnosis and troubleshooting after the fact. I have relevant design and troubleshooting experience with several generations of FPGA-based SERDES transceivers.
Time Transfer
Time transfer is the process of precisely synchronizing a local clock to another reference clock, often over considerable distance using wired or wireless communication links. Time transfer with sub-nanosecond accuracy is a backbone of GPS/GNSS systems, scientific instrumentation, and even some financial systems.
I developed the Precision Time Protocol (PTP) subsystem for SatCat5, including invention of the vernier-referenced digital asynchronous collinear timestamp (VERDACT) circuit. VERDACT is a patented digital circuit for generating high-precision digital timestamps. Unlike other state-of-the-art time-measurement circuits such as DDMTD, VERDACT can be applied to asynchronous clocks, i.e., free-running digital clocks that have no common frequency or phase reference. Timestamps in different clock domains can be compared by simple arithmetic and maintain sub-picosecond precision.
Digital Signal Processing
I have extensive experience designing and implementing digital signal processing (DSP) using FPGAs, including software-defined modems for radio-frequency and free-space optical communication. This includes implementation of massively parallel mixed-rate and variable-rate designs, such as fractional resampling filters for symbol timing recovery in software-defined radio receivers.