template and source for hardware projects
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
King Kévin 546b52333d doc: document version 2 weeks ago
coraleda/subc lib: add used parts 2 weeks ago
geda/symbols lib: add used parts 2 weeks ago
library@47ad2bcbf9 lib: add used parts 2 weeks ago
picture doc: add pictures 2 weeks ago
.gitignore ignore other manual fabrication export (not from Rakefile) 5 months ago
.gitmodules update library 4 months ago
.qeda.yaml lib: add used parts 2 weeks ago
CHANGELOG.md doc: document version 2 weeks ago
DEVELOPMENT.md put development instructions in seperate file 4 months ago
LICENSE.txt add CERN-OHL-S license 12 months ago
README.md doc: link source code 2 weeks ago
Rakefile name project 2 weeks ago
gafrc add schematic configuration and template 12 months ago
hdmi_firewall_programmer.lht sch/brd: import design from 2021-07-23 2 weeks ago
hdmi_firewall_programmer.sch sch/brd: import design from 2021-07-23 2 weeks ago
mass_prop.sh add PnP export 7 months ago
pnp_fab.tab pnp: fix USB-C orientation 4 months ago
version add output generation script 12 months ago

README.md

The HDMI firewall programmer copies EDID information onto the HDMI firewall.

purpose

To work properly, the HDMI firewall needs a copy of the EDID information from the monitor to be protected. The installation instructions provide a lengthy guide, but requires to be somewhat familiar with using Linux command line tools. The HDMI firewall programmer is a device that takes care of this process. You don't even need a computer or any software.

usage

To read the EDID from the monitor to protect:

  1. Plug in a cable in the micro-USB port of the HDMI firewall programmer to power it. You can use a USB power bank, since it only requires power and no data transfer (note that some power banks will switch off after some times because the HDMI firewall programmer only draws little power).
  2. The EDID LED will stay on if EDID is already present in the embedded memory, else it will blink.
  3. The RUN LED should be off.
  4. Plug the programmer in the monitor to protect: either using use the HDMI plug directly, or using the HDMI receptacle and an HDMI cable. Ensure only the monitor is connected to the programmer.
  5. Press the R/W button for a short time (< 3 seconds).
  6. The programmer will try to read the EDID from the monitor and save it in the embedded memory.
  7. The RUN LED will stay on if the operation was successful, else it will blink.
  8. If the read operation failed, you can retry. If it never succeeds, there might be and error with the cable, connection, or the programmer (but this is unlikely as it has been tested once).

Note: if there already was an EDID in the embedded memory, and the read operation failed, the existing EDID is kept. If you wish to remove the EDID in the embedded memory, press the R/W button while powering the programmer. The EDID LED should blink to confirm no EDID is present in the embedded memory.

To write the EDID to the HDMI firewall:

  1. Plug in a cable in the micro-USB port of the HDMI firewall programmer to power it. You can use a USB power bank, since it only requires power and no data transfer (note that some power banks will switch off after some times because the HDMI firewall programmer only draws little power).
  2. The EDID LED should stay on to confirm an EDID is present in the embedded memory, else read an EDID as described above.
  3. The RUN LED should be off.
  4. Plug the programmer in the HDMI firewall to program: either using use the HDMI plug directly, or using the HDMI receptacle and an HDMI cable. Ensure only the HDMI firewall is connected to the programmer.
  5. Ensure Write Protect (WP) is not enabled on the HDMI firewall (e.g. the tab of the dongle HDMI firewall is not broken or the WP pads are shorted).
  6. Press and hold the R/W button for at least 3 seconds.
  7. The programmer will try to write the EDID stored in the embedded memory onto the HDMI firewall.
  8. The RUN LED will stay on if the operation was successful, else it will blink.
  9. If the read operation failed, you can retry. If it never succeeds, there might be and error with the cable, connection, the HDMI firewall is read protected, or the programmer (but this is unlikely as it has been tested once)

Note: the programmer adds the '|' character at the end of the Display Product Name encoded in the EDID. This allows identifying that the device is connected to the HDMI firewall instead of the actual monitor.

code

The source code for the micro-controller of the HDMI firewall programmer is available here.