Who: Laboratory of Lymphatic Biology and Bioengineering (GT)
Where: Atlanta, GA
Languages: C, C++
Phillip volunteered with Georgia Tech's Laboratory of Lymphatic Biology and Bioengineering for a summer, working with their researchers to develop software to research mechanical stresses on lymphatic vessels. The device was controlled by a PIC32 microcontroller which interfaced with two motors. These motors were intended to actuate syringes, which controlled flow of fluid through the lymphatic vessel.
The main researcher had already designed a board to interface with an Arduino to control the motors via DACs. Work began on a DAC driver (interfacing to the motors) and basic controls for the device, but the desired output voltages never appeared. This issue was tracked to a hardware design problem: the CLR line on the DAC was left floating and prevented register settings from being applied. After reworking the boards, the DAC driver was completed and an initial feedback loop to output specific waveforms was implemented.
The remaining time on the project was spent improving the existing code base and applying professional software practices. The project was migrated to git, duplicated code was eliminated, and libraries for interfaces like SPI and I2C were written. A further hardware issue was identified (DAC overheating leading to part failure), but there was not sufficient time remaining to root-cause the issue.