Senior Software Engineer
August 2010 to September 2012
- Developed SPI and serial Flash drivers to be used on new JCI rooftop controller board. The SPI bus was used to bridge communications between a Renesas RX63N 32-bit microcontroller and Micron M25P series serial Flash chip. These drivers were integrated into the low-level strategy functions of an fsys file system.
- Implemented fsys file system on Rowebots Unison RTOS.
- Wrote firmware based on TI Z-Stack embedded OS for USB-to-ZigBee network adapter replacing an obsolete product. Based on Texas Instruments’ Chipcon CC2530/CC2591 chipset solution, the adapter allows field technicians to wirelessly connect to deployed JCI Metasys wireless building management system.
- Developed C++ middleware to allow existing PC diagnostic applications to connect to the new wireless adapter with only minimal changes to those applications. I added a DLL selection algorithms, written in both C++ and C#, to accommodate existing applications by using the WMI to dynamically scan for and load the proper DLLs at runtime to interact with whichever wireless adapter was found physically present on the system.
- Integrated serial boot loader into new firmware image to be used for future automated firmware updates.
- Refactored an existing C# build tool for automated generation of XML files used to configure product communication objects, prior to builds. This refactored tool would interrogate the Access database by making complex SQL queries.
- Responsible for overseeing the daily activities of an intern, preparing work assignments and reviewing completed work.
- Collaborated to develop new processes for assigning USB product IDs to new products and validating new Windows drivers with Microsoft.
- Interfaced with overseas third-party hardware OEM regarding updates to their design and provided detailed documentation for programming branded USB device information and production firmware, as well as how to use the custom firmware in their end of line hardware validation testing.
- Delivered detailed design documentation for firmware and PC software deliverables of the USB-to-ZigBee network adapter.