HDMI-LVDS. From layout to release

Good day! I want to bring to your attention a project of a hardware HDMI-LVDS converter built on Texas Instruments microcircuits. The article was modified and supplemented.
Problem statement
Develop an HDMI ‑ LVDS converter without firmware. Hardware implementation on an accessible element base. The converter must be universal, support various types of matrices (with single and dual channel LVDS) and voltage control signals of inverters. Work in the industrial temperature range.
Formulated basic technical requirements:
- two LVDS channels (with the ability to switch and use one);
- The circuitry of the board should include a feeder for the matrix backlight inverter (preferably universal for 12 / 24V matrices);
- two-pixel mode of operation of the converter;
- 24-bit matrix support;
- converter operating voltage 12 / 24V;
- panel operating voltage 3.3V, 5V, 12V (24V from a separate PSU);
- brightness / backlight control: 3.3V and 5V;
- be able to control the image of the matrix (mirror, switch bit, etc.);
Requirements for the construct:
- simple (mechanical) configuration of the board (DIP switches);
- the geometric dimensions of the board are not critical;
- on / off, brightness adjustment with buttons on the board;
- on / off indication.
Finding a solution
First option. Texas Instruments offers HDMI-RGB and RGB-LVDS converters in its product line. Chips TFP401A, SN75LVDS83B and DS90C387A. The difference between the SN75LVDS83B and the DS90C387A is mainly that the latter has two LVDS channels. The block diagram is as follows (taken from the TI documentation): The

second option is the use of FPGA chips (programmable logic integrated circuit). The disadvantage of such a system is the addition of a software part for the implementation of the conversion, which, in turn, gives a number of advantages, for example, organizing a menu for settings, the ability to change the image size, etc.
There is also a third option - the use of specialized controllers. The software part based on the OS also pulls, although it has many advantages, including adjusting the color / brightness of the picture, adjusting the indentation and size of the picture, the presence of the menu, etc.
After some analytical work, the advantage was on the side of the first solution based on TI chips. This assembly makes it possible to implement the converter for the necessary requirements.
Choosing the element base for power supply.
To power the 24V board, the TI LM22670 converter (24V -> 12V) was chosen.
The 3.3V and 5V voltages were obtained using ON Semiconductor NCP3170 converters, the variant of using STMS10PHR converters from STMicroelectronics was also worked out, but the first ones were more affordable by studying the characteristics of both microcircuits in the price-quality ratio.
Control of the backlight and panel settings
The backlight of the panel is turned on and the brightness is adjusted by 3.3V and 5V (depending on the specific matrix model). Switching on occurs by means of supplying a logical unit to a specific pin of the inverter, adjustment - using PWM. To control the buttons on the board are displayed (there is also a connector for connecting an external keyboard).
The button handler and PWM are implemented on the STM32F100 controller, which also controls the LED indication (on / off / EDID firmware). It is worth noting that there are two types of backlight control (PWM): logical unit maximum brightness or logical zero maximum brightness. In this design, this is implemented by the firmware of the controller, but it was possible to make a DIP switch. A 3.3V / 5V / GND pin was inserted into the LVDS connector on the board (via a DIP switch). The matrices often have control pins: MAP (data card), BIT (bit selection), MODE (normal and mirror mode), etc. ... If you need to control these parameters, you can enter the corresponding matrix pin in the LVDS converter connector and change one of them.
Setup and first start
Setting up the converter is as follows:
1. Controller firmware. For this, the SWD connector was withdrawn, since there was no plan to manufacture a 100k batch.
2. Set EDID parameters. Here I had to deal with EDID fields and versions for a long time.
In short, there is a freeware application “Deltacast E-EDID Editor”. The easiest way is to "merge" the EDID from any monitor, and then edit it for a specific set of matrices and check on the device.

Application "Deltacast E-EDID Editor"
All the main parameters are in the datasheet on the matrix. The EDID on the programmer is stitched into the eeprom chip (for example, M24C02). When connected to a PC, eeprom data is read and the user has the opportunity to select resolution, frequency, etc.
3. Connection and testing. With some reservations, the first layout started and the controller and eeprom firmware were debugged.
As a result, three iterations of the board (including release) were made. Several options for printed circuit boards (1 and 2 - single-channel LVDS, 3 - two-channel LVDS):

Printed circuit boards from production
Release
In the release version of the board, it was decided to flash EDID into the board using the controller. A simple software for PC was written. The converter is connected to the PC via UART using the USB-UART adapter.

Appendix “EDID LOADER”
About 100 boards were made on the release CD. All work, the picture is of excellent quality, the adjustment and management of the matrix without complaints. A universal EDID is configured to fit most customer matrices.

Photo converter work

Photo release version of the converter
Development advantages
- hardware implementation of the converter;
- two-layer printed circuit board;
- universality;
- simplicity in setup.
Thanks for attention!
UPD: Upon request, I post the BOM and the location of the components on the board, as well as the firmware.
www.dropbox.com/s/4to153cor6op6su/HDMI-LVDS.zip?dl=0
www.dropbox.com/s/omrao2cv4vbp6hd/AHL-14.2.zip?dl=0