Florham Park, New Jersey, United States
My role was to develop low-level code for two controllers that we had. The controllers being an Artix-7 FPGA and a 32-bit ARM processor.
• Developed was a reset protocol between the two controllers. If one of the controllers detected a heartbeat was no longer being sent, it would initiate a reset protocol to bring the device back online. I used C programming for the FPGA controller and C++ for the ARM processor.
• Reworked a Windows MFC application that reads log messages send from different hardware. Some of the hardware had different communication protocols such as CAN, TCP/IP, and Serial. The application had to support communication between all the protocols and be able to decode the specific logs related to them.
• Developed software that decodes data from GPIO ports in real time and updates IP assignment depending on the value recorded.