Heeltoe Consulting - Past Projects

Here's a brief list of projects we have consulted on. It's intended to give a flavor of the type of work we have done and projects we have been involved with...

software downloads


Kernal/FPGA Interaction debugging. Freescale 8270 based system with kernel panics. Debugged interaction problems with custom FPGA and linux, VHDL.
USB 2.0 driver debugging
PCI Ethernet driver debugging. Ethernet chip would become non-responsive. Patches to driver.
Perl/Mason/SQL based user interface infrastructure
Atmel SAM7S Firmware
Small ARM embedded system with MMC, SPI, floating point. Flash update and serial protocol software.
Atmel SAM7S CPU card
Small CPU card with SAM7S ARM cpu, CS8900 ethernet chip and Xilinux CPLD. TCP/IP Firmware, diagnostics, bootloader, board bringup, Verilog code for CPLD.
Voice-over-Satellite-uplink prototype
Sending compressed speech captured from aviation headset over low speed satellite uplink.
Voice-over-IP (VOIP) monitoring
linux based VOIP monitoring station. Protocol statistics and jitter measurements.
SNMP monitoring and configuration
Access to product status and configuration via SNMP.
Power Management for new TI ARM cpu (PXA270)
Added frequency and voltage change support for new ARM cpu. Kernel interfaces and drivers to make changes automatically.
uClinux port to ARM9 cpu
Ported uClinux to ARM9 cpu for cell phone.
Port and extend JavaVM on TI TMS320DM642 DSP (TMS320C6000 family)
Ported existing JavaVM and added on-the-fly code generation for DM642 DSP. Re-coded assembler interpreter for new CPU. Low level assembler and pipeline scheduling.
Software emulator for custom microcoded 32 bit cpu
Emulator program in C, runs existing microcode and boots existing operating system.
Power Management for new Intel XScale (ARM) cpu - PXA270
Added frequency and voltage change support for new ARM XScale cpu. Kernel interfaces and drivers to make changes automatically. Extensive debugging with new silicon.
Low cost X86 based linux platform
Brought up linux on an custom embdedded x86 platform, hardware debug, boot code, file system, etc... Initial manufacturing runs of serial peripheral cards. Manufacturing documentation.
Ported existing JavaVM and added on-the-fly code generation for DM642 DSP. Low level assembler and pipeline scheduling
Low cost automotive vehicle interface
Microchip 18F PIC platform for data collection from various automotive vehicle interfaces. Designed hardware and firmware. Supports CAN, J1850, SCI. Software to support TCP/IP, J1850, CAN.
Kernel port to new Broadcom MIPS CPU
Brought up linux kernel on a new Broadcom MIPS CPU.
Linux based wireless "picture frame"
Sharp LH7A400 ARM 920 based platform. Designed hardware and software. Platform has PCMCIA slot, CF slot, flash, sdram and LCD interface, touch interface. Designed on low cost 6 layer PCB. Runs full linux system and displays images and video over wireless link.
Kernel port and network integration for hardware routing chip
Ported linux kernel to new ARM chip and added support for hardware packet forwarding engine. Added interface to kernel NAT and filter interface.
MIPS based hand-held computer with touch screen
Alchemy MIPS (Au1000, Au1100) kernel drivers for custom shared memory hardware, Linux drivers and Atmel programming for touch screen, beep and power management. File system developement for ramdisk, CF disk, flash booting. Boot code for PCMCIA booting.
Automotive protocol developement
Protocol software (J1850, K-line, SCI, CAN, KW2000, J2534) development of drivers, servers, libraries and diagnostics. CAN drivers & diagnostics.
PIC based ethernet device
Hardware and software design for simple PIC based ethernet device (CS8900, PIC18F458) with CAN, serial and parallel ports. TCP stack and control software. Hardware design, PCB layout and prototype fabrication.
Wearable computing
Linux running on a small cpu which can be worn around and used to interact with the environment, a.k.a "Wearable computing". For the MIThril project I enabled USB on their PowerPC platform and for the WearARM project I did a soup-to-nuts linux port which included early hardware debug and bringup, boot rom, linux port and file systems.
PowerPC platform bring-up
Specification and debug of PowerPC 832 UPM microcode for DRAM interface. Debugging and setup with JTAG debugger (Macraigor Wiggler).
High Performance Ethernet
Kernel VM debugging on 4 port gigabit ethernet device with PowerPC 7xx processor.
USB Function drivers
USB function (client) chip drivers and personality modules for various devices, including devices designed to look like ethernet devices.
Specialized I2C drivers
StrongARM (SA1100) Linux drivers and firmware (Atmel 8051) to communicate over i2c port for credit card strip reader.
Audio drivers
StrongARM (SA1111) Linux audio drivers.
IPSEC integration and debugging
Basic IPSEC port to PowerPC 405 processor with special changes to the libc DNS "resolver" library.
Custom OHCI USB Host controller
Modifications to existing linux OHCI USB host controller driver to support custom OHCI controller chip on PowerPC 405.
StrongARM SA1111 USB Host controller driver
Modifications to existing linux OHCI USB host controller driver to support StrongARM SA1111 chip.
USB Host controller software
Complete USB host controller driver for the PowerPC 8xx processor. Supports interrupt, bulk and isochronous transfers.

Contact Information

Brad Parker
Heeltoe Consulting
661 Massachusetts Avenue, Suite #2
Arlington MA 02476


Heeltoe Consulting