You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

258 lines
9.8 KiB
Markdown

3 years ago
# EDID
1 year ago
!!! note
This will only apply to the CSI models include V3+, USB capture is not compatable.
Modifing the EDID may or may not work in some instances where a "no signal" might be a result of outside factors.
3 years ago
EDID is information about the video modes supported by the video capture device.
In the case of PiKVM, this is an HDMI CSI bridge. Usually, you don't need to change this, since the default configuration is quite flexible,
but sometimes, for example for strange UEFIs/BIOSes, this may be necessary (the [story](https://github.com/pikvm/pikvm/issues/78)).
2 years ago
The EDID is stored on the PiKVM in the file `/etc/kvmd/tc358743-edid.hex`. If you write new data there, it will be applied after rebooting.
3 years ago
You can also apply the new EDID without rebooting to make sure it works:
* Switch filesystem to RW-mode: `rw`.
2 years ago
* Create the new EDID file `/root/edid.hex` (examples of file contents are shown below).
* Apply EDID using the command `kvmd-edidconf --edid=/root/edid.hex --apply`.
1 year ago
* DO NOT REBOOT the PiKVM. Just your PC. Check the UEFI/BIOS or the OS.
1 year ago
* If everything is working, you can make this config permanent: `kvmd-edidconf --import=/root/edid.hex`. This command will write the EDID to `/etc/kvmd/tc358743-edid.hex` in a pretty format.
3 years ago
* Switch filesystem to RO-mode: `ro`.
2 years ago
2 months ago
-----
1 year ago
## Default EDID
2 years ago
4 months ago
If you need to restore the default EDID you can easily do this with `kvmd-edidconf`, for example:
```console
2 months ago
[root@pikvm ~]# rw
[root@pikvm ~]# kvmd-edidconf --import-preset=v4plus
[root@pikvm ~]# reboot
4 months ago
```
Available options: `v0`, `v1`, `v2`, `v3`, `v4mini` and `v4plus`.
Also defaults edid can be found locally on your PiKVM: `/usr/share/kvmd/configs.default/kvmd/edid`,
or in the [kvmd repo](https://github.com/pikvm/kvmd/blob/master/configs/kvmd/edid).
2 years ago
2 months ago
-----
2 months ago
## Force 1080p by defailt on PiKVM V0+
2 years ago
2 months ago
PiKVM V3 (or DIY V0-V2) has a hardware limit of 50Hz for 1080p mode, and this is a less common frequency than 60Hz.
Therefore, on V3, the default mode is 720p. Some OS (like Proxmox) may not work well with 720p,
so you can force 1080p resolution by default:
```console
2 months ago
[root@pikvm ~]# rw
[root@pikvm ~]# kvmd-edidconf --import-preset=v3.1080p-by-default # Or, for example, v1.1080p-by-default
[root@pikvm ~]# reboot
2 months ago
```
2 months ago
-----
2 months ago
## Disable 1920x1200 on PiKVM V4
PiKVM V4 supports the advanced capture mode of 1920x1200. If it bothers you
(for example, if you use a physical monitor 1920x1080 with [video passthrough](pass.md)),
you can easily disable it and use only 1920x1080:
```console
2 months ago
[root@pikvm ~]# rw
[root@pikvm ~]# kvmd-edidconf --import-preset=v4plus.no-1920x1200 # Or v4mini.no-1920x1200
[root@pikvm ~]# reboot
2 months ago
```
2 months ago
-----
2 months ago
## Other EDID examples for PiKVM V4
PiKVM V4 can mimic many physical monitors. You can find the appropriate EDID in [this database](https://github.com/linuxhw/EDID) and import its HEX code to PiKVM. Choose something with a maximum resolution of 1920x1080 or 1920x1200.
1 year ago
12 months ago
??? example "Acer B246WL, 1920x1200, with audio"
1 year ago
Taken [here](https://github.com/linuxhw/EDID/blob/master/Digital/Acer/ACR0565/CCF78B30FE61), as described above.
```
00FFFFFFFFFFFF00047265058A3F6101
101E0104A53420783FC125A8554EA026
0D5054BFEF80714F8140818081C08100
8B009500B300283C80A070B023403020
360006442100001A000000FD00304C57
5716010A202020202020000000FC0042
323436574C0A202020202020000000FF
0054384E4545303033383532320A01F8
02031CF14F9002030405060701111213
1415161F2309070783010000011D8018
711C1620582C250006442100009E011D
007251D01E206E28550006442100001E
8C0AD08A20E02D10103E960006442100
0018C344806E70B028401720A8040644
2100001E000000000000000000000000
00000000000000000000000000000096
```
2 years ago
12 months ago
??? example "ASUS PA248QV, 1920x1200, with audio"
1 year ago
Taken [here](https://github.com/linuxhw/EDID/blob/master/Digital/ASUS/AUS2487/2B473481CAE6), as described above.
```
00FFFFFFFFFFFF0006B3872401010101
021F010380342078EA6DB5A7564EA025
0D5054BF6F00714F8180814081C0A940
9500B300D1C0283C80A070B023403020
360006442100001A000000FD00314B1E
5F19000A202020202020000000FC0050
4132343851560A2020202020000000FF
004D314C4D51533035323135370A014D
02032AF14B900504030201111213141F
230907078301000065030C001000681A
00000101314BE6E2006A023A80187138
2D40582C450006442100001ECD5F80B0
72B0374088D0360006442100001C011D
007251D01E206E28550006442100001E
8C0AD08A20E02D10103E960006442100
001800000000000000000000000000DC
```
2 years ago
12 months ago
??? example "DELL D2721H to avoid black screen on some HDMI splitters, 1920x1080, no audio"
1 year ago
Taken [here](https://github.com/linuxhw/EDID/blob/master/Digital/Dell/DEL2013/EEE824E681BF), as described above.
```
00FFFFFFFFFFFF0010AC132045393639
201E0103803C22782ACD25A3574B9F27
0D5054A54B00714F8180A9C0D1C00101
010101010101023A801871382D40582C
450056502100001E000000FF00335335
475132330A2020202020000000FC0044
454C4C204432373231480A20000000FD
00384C1E5311000A2020202020200181
02031AB14F9005040302071601061112
1513141F65030C001000023A80187138
2D40582C450056502100001E011D8018
711C1620582C250056502100009E011D
007251D01E206E28550056502100001E
8C0AD08A20E02D10103E960056502100
00180000000000000000000000000000
0000000000000000000000000000004F
```
2 years ago
2 months ago
-----
2 months ago
## EDID examples for PiKVM V2+
3 years ago
1 year ago
Copy the contents into a file, for example `/root/edid.hex`, then follow the same steps as above.
3 years ago
??? example "1280x1024 as preferred. Useful for Gigabyte GA-H77-DS3H"
```
00FFFFFFFFFFFF005262888800888888
1C150103800000780AEE91A3544C9926
0F505425400001000100010001000100
010001010101D51B0050500019400820
B80080001000001EEC2C80A070381A40
3020350040442100001E000000FC0050
492D4B564D20566964656F0A000000FD
00323D0F2E0F0000000000000000014D
02030400DE0D20A03058122030203400
F0B400000018E01500A0400016303020
3400000000000018B41400A050D01120
3020350080D810000018AB22A0A05084
1A3030203600B00E1100001800000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000045
```
??? example "1920x1080 as preferred. Useful for motherboards such as [ASRock H670 PG Riptide](https://github.com/pikvm/pikvm/issues/715), Gigabyte GA-H77-DS3H, MSI series such as B550M, B660M, Z690-A and X570. Also the Intel NUC."
3 years ago
```
00FFFFFFFFFFFF005262888800888888
1C150103800000780AEE91A3544C9926
0F505425400001000100010001000100
010001010101D32C80A070381A403020
350040442100001E7E1D00A050001940
3020370080001000001E000000FC0050
492D4B564D20566964656F0A000000FD
00323D0F2E0F000000000000000001C4
02030400DE0D20A03058122030203400
F0B400000018E01500A0400016303020
3400000000000018B41400A050D01120
3020350080D810000018AB22A0A05084
1A3030203600B00E1100001800000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000045
```
??? example "1280x1024 as preferred, disabled 1080p at all. This may be necessary in extremely rare cases if the BIOS is completely buggy. In the future, we will provide a way to dynamically switch EDID"
```
00FFFFFFFFFFFF005262888800888888
1C150103800000780AEE91A3544C9926
0F50542FCF0001000100010001000100
0100010101018C2300A050001E403020
370080001000001E000000FC0050492D
4B564D20566964656F0A000000FD0032
3D0F2E0F000000000000000000000010
0000000000000000000000000000016B
02030400DE0D20A03058122030203400
F0B400000018E01500A0400016303020
3400000000000018B41400A050D01120
3020350080D810000018AB22A0A05084
1A3030203600B00E1100001800000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000045
```
2 months ago
-----
1 year ago
## Editing EDID
3 years ago
1 year ago
To edit the EDID, it is best to use third-party utilities, such as the recommended advanced
[AW EDID Editor](https://www.analogway.com/emea/products/software-tools/aw-edid-editor) for Windows (it's working great in wine)
or [wxEDID](https://sourceforge.net/projects/wxedid). Both editors work with the binary EDID format, but you can easily import and export it
to PiKVM using the `kvmd-edidconf` utility.
So, to tune EDID on PiKVM, use the following steps:
1. Switch filesystem to RW-mode: `rw`.
2. Export the system edid to the binary file `myedid.bin`:
2 months ago
```console
1 year ago
# kvmd-edidconf --export-bin=/root/myedid.bin
```
3. Copy this file to your PC with the editor. Use SCP, Putty or something like that. Open this binary file in the editor and change the necessary parameters. Edit, save and copy it back to PiKVM.
4. Convert the binary file to the HEX and test it:
2 months ago
```console
[root@pikvm ~]# kvmd-edidconf --import=/root/myedid.bin --edid=/root/myedid.hex --apply
1 year ago
```
5. If everything works fine, install the new EDID file into the system:
2 months ago
```console
[root@pikvm ~]# cp /root/myedid.hex /etc/kvmd/tc358743-edid.hex
1 year ago
```
6. Alternative to step (4) and (5): if you are confident in your abilities, you can immediately install the new `myedit.bin` into the system and apply it instantly, without the need to use the temporary `myedid.hex`:
2 months ago
```console
[root@pikvm ~]# kvmd-edidconf --import=/root/myedid.bin --apply
1 year ago
```
7. Switch filesystem to RO-mode: `ro`.
The `kvmd-edidconfig` utility has the ability to change some simple parameters without using an external editor. For example you can change the vendor, model name and enable [HDMI audio](audio.md) on the PiKVM virtual display:
2 months ago
```console
[root@pikvm ~]# kvmd-edidconf --set-mfc-id=LNX --set-monitor-name=PiKVM --set-audio=1
[root@pikvm ~]# reboot
1 year ago
```
2 months ago
1 year ago
!!! note
2 months ago
1 year ago
Windows cache's drivers and registry settings so changing the monitor name is not enough, you will also need to change the product ID and/or the serial number along with the monitor name:
2 months ago
```console
[root@pikvm ~]# kvmd-edidconf --set-monitor-name=TOSHIBA --set-mfc-id=TTP --set-product-id=34953 --set-serial=2290649089 --apply
```