The task was to develop firmware for device that is able to receive digital and analog video signal and after signal conditioning able to send to receiver over CAT5, CAT6 or CAT7 cable. The device on the digital input fully support HDMI 1.3 standard up to 1920x1080p60 36 bit resolution, on the VGA input is able to digitalize analog video signal up to 1600x1200p60 resolution and send to the output as DVI or HDMI signal. The device is also able to embed audio into output HDMI stream from analog stereo or S/PDIF audio source.
My task was to discover the used ASIC circuits, then develop a driver firmware of them. My task also was to create a communication protocol to communicate with the device via RS-232 port.
During the design of the software the key point was to maintain and fit in the principles of software structure and the software design rules. This was especially the most important key point during development of the drivers of the ASIC circuits, and the design of the communication of the device.
At last I tested the programed device from the very first power up, until the transmission of the audio, video and auxiliary data.