Kenneth R. Crudup For faster responses use E-mail – kenny@panix.com http://www.kennethcrudup.com/resumes LINUX/EMBEDDED SOFTWARE ENGINEER Last revision: March 2024 Offering Linux/Android/UNIX systems experience in the following areas: Applications/Utility/Kernel/Device/Embedded Systems Development, User Applications, Porting, Operations, Communications, Networking, and QA Proficiencies • All major varieties of Unix including, but not limited to: Linux, kernel and driver programming, applications development and Embedded Systems (incl. Android) • C/C++ language, Java, Assembly language, Unix shell programming, threaded programming, Python and Perl • X86, X86_64 and ARM, MIPS and Power-PC SoC architectures, at C/C++/Java and Assembly-language levels • Git, Makefiles, Clearcase and other build environments • GDB, JTAG and other debugging environments • ISA, PCI, VME, SCSI, I2C, I2S, SPI and other device and bus architectures • Networking (TCP/IP, LAN, Ethernet, IEEE 802.3, WiFi (802.11a/b/g/n)) and other peer-to-peer/IPC environments • NFS, EXT-2/3/4, ISO 9660 and other filesystem environments and development Education • BS, Electrical Engineering, Purdue University Recent Work Experience Dynamic Ratings, Sussex WI April-December 2023 New kernel and device drivers for board bringup of new hardware. Adapted STM32 CPU as co-processor for USB serial offload Canoo, Torrance CA April-October 2023 Improved device drivers and power management of Hypervisor-based ARM64 Infotainment system. Added new device drivers for new hardware into the Yocto-based build Syntiant, Irvine, CA November 2019-2023 Developed ALSA Linux kernel driver and Android HAL shim for their i2c-based audio chip. Developed I2S driver for their AoV audio chip HPE, Austin, TX/Chippewa Falls, WI March-December 2022 Ported forward an i.MX-based BSP and local drivers to a current kernel version, modified and wrote kernel drivers for a system maintaining high-level hardware Omron Adept, Portsmouth NH November 2021-April 2022 Troubleshooting PCIe failures on Intel WiFi adaptors and frequent latency and kernel abort issues PSAudio, Boulder CO November 2020-September 2021 Added a custom multichannel-I2S ALSA driver to a high-end audio product Omnitracs, San Diego CA June 2020-November 2020 Improved via resource-trimming, the RSS of the Android app running their truck-tracking software in a memory-constrained Android system Flock Safety, Norcross, GA March 2020-Feb 2021 Handled battery-management, kernel upgrades and kernel-fault recording to the kernels running their surveillance cameras Potrero Medical,Hayward CA September 2019-May 2020 Enhanced power-management, build process, Linux kernel and bootloader for their Android-based medical device PCH International, San Francisco, CA January 2019-March 2019 Wrote a custom UI and implemented a mini-OS for a internal-customer hardware device running on a Raspberry Pi. Modified the kernel and the Raspian Linux port to add control for a TFT display, 6DOF IMU, I2S/PCM audio and GPIOs attached to the PI via SPI, i2c and USB-C, and implemented a userspace USB HID driver Magic Leap, Sunnyvale, CA January 2018-January 2019 Part of the System Profiling team responsible for improving the performance of the ML-1. This included integrating new tracing tools based on the eBPF and BCC frameworks, along with ARM kernel tuning, power-management improvements and examining stack depths, lock contention, and memory pressure Fetch Robotics, San Jose, CA May 2017-December 2017 Brought up latest Linux kernels on their products’ CPUs. Brought WiFi and BT to latest firmware and driver levels. Improved Power-Management on their robots’ x86-based CPUs Happiest Baby, Santa Monica, CA March 2017-May 2017 Greatly improved Wifi performance for the "Snoo" IoT bassinet. Brought WiFi driver to latest driver and firmware levels. Optimized MIMO antenna functionality in line with current hardware and software. Used Nuvoton ARM SoCs and RealTek WiFi devices Credence ID, INC. - Emeryville, CA June 2016-March 2017 Implemented BSP (bootloader, kernel and Android HAL) for new Android-based handheld ID verification devices. Brought BSP (bootloader, kernel, Android HAL) to latest levels for existing products in company's portfolio. Wrote and modified device drivers for new peripherals on new devices. Improved power-management, WiFi/BT/WAN connectivity on our existing devices. Used Freescale I.MX and TI AM335x ARM SoCs Jibo, Mountain View, CA October 2015-June 2016 Responsible for implementing a Secure-Booting setup on an Nvidia Tegra TK1-based robotics device. Designed code for creating public/private key pairs, flashing software securely and using Public-Key Cryptography to lock down bootloader and kernel code to prevent unsigned-image flashing onto the Robot Honda Research Institute, Mountain View, CA February 2015-Present Responsible for implementing kernel modules and application code to facilitate monitoring of video streams and various automotive sensors (via CAN and Ethernet buses) for delivery to automated automobile applications. Work concentration was in low-level programming of a Linux-based data collection and data-delivery machine SpectraLink, Boulder, CO August 2014-December 2015 Responsible for implementing an improved power-management subsystem in the kernel, device-drivers and wireless modules for the Spectralink Android-handset-based telephony system. Modified a WLAN driver to enhance basic power management, as well as increasing the standby battery life of their Android handsets by removing unnecessary wakelocks and increasing the deep-sleep states available