Software Engineer
CurrentDeveloped embedded device control software for the Control Processing Assembly (CPA) for the next generation treadmill, elliptical and climber exercise equipment. The CPA is an ARM Cortex-M3 based unit which interfaces with a Media Processing Unit for enhanced user interactivity and a motor control unit to drive the mechanical aspects of the device. This project used SCRUM agile project management processes to stay on a continuous focus of product improvement.Accomplishments include the design and implementation of: - a robust, transactional flash update system that recovers from loss of power (or other failures) during the flash process - a bootloader that interacts with the flash update system to permit staging of updates and rollback to a last known good image in the case of failure - a watchdog timer management system that allows multiple tasks to use a single hardware watchdog timer with independent watchdog deadlines for each task