Author |
Message |
nicom
|
Posted: Mon Aug 28, 2017 5:47 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
After about 15 years I finally upgraded my TV and it now connects to my Mythbox via DVI to HDMI cable. I created an xorg.conf by using nvidia-settings and made a copy into my ~/templates/xorg.user. The picture is amazing but the TV must be switched on before I start the Mythbox. Since I have my machine starting on ACPI and at set times this is an on-going problem. If I turn on the TV after the Mythbox has started I get no input detected by the TV. If I VNC into the Mythbox under these conditions the picture is cropped to a small window (640x480). The Xorg.0.log shows it attempted EDID but found nothing so resorted to default 640x480 resolution. When I look at the xorg.conf (.user) all references to EDID are "false" so I thought that would stop the EDID probing. My xorg.conf is as follows Code: # nvidia-settings: X configuration file generated by nvidia-settings # nvidia-settings: version 340.102 (buildmeister@swio-display-x64-rhel04-19) Mon Jan 16 13:22:49 PST 2017
Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection
Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection
Section "InputDevice" # geneDisplayrated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection
Section "Monitor"
## HorizSync 26-81 ## VertRefresh 48-85 ## Option "PreferredMode" "1280x768" #INSERT MODELINE #Normal Identifier "Monitor0" VendorName "Unknown" ModelName "LG Electronics LG TV" DisplaySize 922 522 HorizSync 30.0 - 136.0 VertRefresh 58.0 - 121.0 ModeLine "800x600" 40.00 800 840 968 1056 600 601 605 628 ModeLine "1024x768" 64.56 1024 1056 1296 1328 740 748 791 807 ModeLine "1280x720@50p" 58.64 1280 1312 1512 1536 720 736 744 760 -hsync -vsync ModeLine "1920x1080@50i" 63.10 1920 1952 2184 2216 1080 1105 1110 1135 interlace Option "UseEdidFreq" "false" Option "DPMS" "false" EndSection
Section "Device"
# Option "TVStandard" "1080i" # Option "ConnectedMonitor" "DFP" # Option "FlatPanelProperties" "Scaling = centered, Dithering = enabled" # Option "DigitalVibrance" "0" # Option "TransparentIndex" "0" # Option "CursorShadowAlpha" "64" # Option "CursorShadowXOffset" " # Option "UseEdidFreqs" "True" # Option "NvAGP" "1" # Option "TVStandard" "1080i" # Option "ModeValidation" "NoVesaModes,NoXServerModes,NoPredefinedModes" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GT 220" Option "DPI" "75 x 75" Option "NoLogo" "1" Option "Coolbits" "5" #INSERT HERE Option "ModeValidation" "NoEdidModes,NoVesaModes,NoXServerModes,NoPredefinedModes,NoDFPNativeResolutionCheck,NoEdidMaxPClkCheck,NoHorizSyncCheck,NoVertRefreshCheck" Option "ConnectedMonitor" "DFP" Option "UseDisplayDevice" "DFP-0" Option "UseEdidFreq" "false" Option "ExactModeTimingsDVI" "True" Option "UseEdidDpi" "false" #END OPTIONS EndSection
Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "Stereo" "0" Option "metamodes" "1920x1080 +0+0" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection
Section "Extensions" Option "Composite" "Disable" EndSection
Is there something else I am missing? Alternatively should I change the default resolution to 1920x1080?
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
brfransen
|
Posted: Tue Aug 29, 2017 6:12 am |
|
Joined: Fri Jul 21, 2006 11:12 pm
Posts: 1194
Location:
SC
|
Have you tried without a custom xorg?
I think in theory you would need to capture the EDID info from the TV and save it to file and then have it loaded manually. I say in theory because I have never got that to work correctly.
I see this occasionally too. I restart the frontend (Alt+f or sudo sv restart frontend) and it comes up.
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Tue Aug 29, 2017 6:33 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
Thanks for the suggestions. Code: I think in theory you would need to capture the EDID info from the TV and save it to file and then have it loaded manually. I thought that was what I was doing creating the xorg.conf with nvidia-settings. Code: I see this occasionally too. I restart the frontend Even easier on my system as I have a button on the remote to restart the front end but still a bit of a nuisance. I will try removing the custom xorg when I have enough time.
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
bobmyth
|
Posted: Tue Aug 29, 2017 9:57 pm |
|
Joined: Wed Jan 18, 2006 8:36 pm
Posts: 199
|
Here's how I tackled this. First, dig through your Xorg.0.log file, you should find something similar to this: Code: [ 26.112] (--) NVIDIA(0): Raw EDID bytes: [ 26.112] (--) NVIDIA(0): [ 26.112] (--) NVIDIA(0): 00 ff ff ff ff ff ff 00 41 2f 00 00 01 01 01 01 [ 26.112] (--) NVIDIA(0): 00 17 01 03 80 60 36 78 2a d7 b3 ae 51 50 94 23 [ 26.112] (--) NVIDIA(0): 0c 4a 47 00 00 00 01 01 01 01 01 01 01 01 01 01 [ 26.112] (--) NVIDIA(0): 01 01 01 01 01 01 01 1d 80 18 71 1c 16 20 58 2c [ 26.112] (--) NVIDIA(0): 25 00 b8 18 32 00 00 9e 8c 0a d0 8a 20 e0 2d 10 [ 26.112] (--) NVIDIA(0): 10 3e 96 00 b8 18 32 00 00 18 00 00 00 fd 00 31 [ 26.112] (--) NVIDIA(0): 3d 0f 45 0f 00 0a 20 20 20 20 20 20 00 00 00 fc [ 26.112] (--) NVIDIA(0): 00 56 53 58 2d 31 31 32 33 0a 20 20 20 20 01 81 [ 26.112] (--) NVIDIA(0): [ 26.112] (--) NVIDIA(0): 02 03 43 72 5a 85 04 03 0f 0e 07 06 14 13 12 1e [ 26.112] (--) NVIDIA(0): 1d 16 15 0b 0a 1a 19 23 24 25 26 10 1f 20 01 38 [ 26.112] (--) NVIDIA(0): 09 7f 07 0f 7f 07 15 07 50 3e 1e c0 4d 02 00 57 [ 26.112] (--) NVIDIA(0): 06 00 5f 7e 01 67 7e 00 83 4f 00 00 66 03 0c 00 [ 26.112] (--) NVIDIA(0): 14 00 80 01 1d 80 d0 72 1c 16 20 10 2c 25 80 b8 [ 26.112] (--) NVIDIA(0): 18 32 00 00 9e 01 1d 00 72 51 d0 1e 20 6e 28 55 [ 26.112] (--) NVIDIA(0): 00 b8 18 32 00 00 1e 01 1d 00 bc 52 d0 1e 20 b8 [ 26.112] (--) NVIDIA(0): 28 55 40 b8 18 32 00 00 1e 00 00 00 00 00 00 c3 [ 26.112] (--) NVIDIA(0): [ 26.114] (II) NVIDIA(0): NVIDIA GPU GeForce GT 630 (GK208) at PCI:1:0:0 (GPU That's the EDID from my Home Theater receiver, not the TV. However, it doesn't matter. Now copy and paste the lines into a file. So it looks like this: Code: 0000000: 00ff ffff ffff ff00 412f 0000 0101 0101 0000010: 0017 0103 8081 4978 0acf 9ba3 574c 9e26 0000020: 0f4a 4c20 0000 0101 0101 0101 0101 0101 0000030: 0101 0101 0101 011d 8018 711c 1620 582c 0000040: 2500 09d5 5200 009e 011d 0072 51d0 1e20 0000050: 6e28 5500 09d5 5200 001e 0000 00fd 003b 0000060: 3d0f 440f 000a 2020 2020 2020 0000 00fc 0000070: 0056 5358 2d31 3132 330a 2020 2020 012d 0000080: 0203 2e71 4585 0403 0710 3809 7f07 0f7f 0000090: 0715 0750 3e1e c04d 0200 5706 005f 7e01 00000a0: 677e 0083 4f00 0066 030c 0014 0080 8c0a 00000b0: d08a 20e0 2d10 103e 9600 09d5 5200 0018 00000c0: 8c0a a014 51f0 1600 267c 4300 09d5 5200 00000d0: 0098 023a 8018 7138 2d40 582c 4500 09d5 00000e0: 5200 001e 0000 0000 0000 0000 0000 0000 00000f0: 0000 0000 0000 0000 0000 0000 0000 009e Put this in a file name TV.hex or something similar. Now, you can reverse this back to binary using the "xxd" program. If you don't have it on your system, do: Code: sudo pacman -S vim Now, create the EDID file using: Code: xxd -r TV.hex > TV.edid Now you have captured the EDID from your TV (or home theater receiver) to a file. Now you have to have Xorg use it. Do the following (as root): Code: cat<<EOF>>/etc/X11/xorg.conf.d/30-monitor.conf Identifier "Monitor0" VendorName "Generic" # or you can use "Samsung", "LG", "Sony", etc ModelName "MyModel" # or use your actual model number if you have it Option "DPMS" "true" Option "ConnectedMonitor" "DFP-1" Option "UseDisplayDevice" "DFP-1" Option "CustomEDID" "DFP-1:/etc/X11/TV.edid" EOF You also need to copy the EDID file to /etc/X11 as I've done here. Also verify the connection being used, in my case it's DFP-1. However, it could be CRT, CRT-0, VGA, VGA-0, HDMI, HDMI-1, etc. Look in your Xorg.0.log for the word "connected" to determine the correct one. Most important: You have to have your TV/Monitor/Home theater receiver powered on when Xorg starts to use this process so the EDID can be captured. Once this is set-up you can reboot your system with the display turned off it and will work as you expect.
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Wed Aug 30, 2017 11:23 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
Thanks bobmyth, that's very comprehensive. I'll give it a try when a get a clear shot at it, probably in a week or so.
Rather than modify the /etc/X11/xorg.conf.d/30-monitor.conf is it possible to modify the ~/templates/xorg.conf with the same information? That way it is upgrade proof. Maybe I could even put the newly created TV.edid into ~/templates as well.
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
bobmyth
|
Posted: Tue Sep 05, 2017 9:24 pm |
|
Joined: Wed Jan 18, 2006 8:36 pm
Posts: 199
|
Using the templates sounds better, however I don't know how to do that. Maybe someone else can help?
|
|
Top |
|
![](images/spacer.gif) |
alien
|
Posted: Thu Sep 07, 2017 3:10 am |
|
Joined: Mon Jun 21, 2004 5:28 am
Posts: 700
Location:
Germany
|
Nvidia-settings can capture edid directly: http://nvidia.custhelp.com/app/answers/ ... d-on-linuxThis works for me when directly connected to the TV. It is a bit hit-and-miss when connected via the receiver (i.e. PC->receiver->TV). I still sometimes have to turn on the receiver/TV first for some reason.
_________________ ASUS AT3N7A-I (Atom 330) TBS 8922 PCI (DVB-S2)
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Sun Sep 10, 2017 6:50 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
Thanks Alien, that was so easy. I used nvidia-settings as per your link to acquire the edid and saved it to ~/templates/edid.bin. I then used the command Code: nvidia-xconfig --custom-edid="GPU-0.DFP-0:/home/mythtv/templates/edid.bin" to write it to /etc/X11/xorg.conf. Myth now remembers what TV is connected. The TV is directly connected to the myth box without a receiver in between. I also copied the line that was added to the xorg.conf to my ~/templates/xorg.user so hopefully the system is upgrade proof.
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Wed Sep 13, 2017 6:16 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
I take that back, it hasn't worked after the initial few times. When I checked the Xorg.0.log. I don't get any message like listed in the nvidia link. Quote: [ 108.085] (**) NVIDIA(0): Option "CustomEDID" "GPU-0.DFP-3:/home/nvidia/edid-alien.txt" I will investigate some more.
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Wed Sep 13, 2017 9:25 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
I still haven't got it working but after some further investigation I have established the following: 1. My initial success was not due the stored EDID but due to successful EDID probing of the TV shortly after it was switched off possible on standby. 2. I tried storing the EDID data in an ASCII file with no success. 3. I tried changing permissions of the the edid.bin file - no success 4. I tried changing ownership of the edid.bin file - no success 5. I tried putting the edid file in a created /home/nvidia/ directory like the linked nvidia page - no success. 6. While doing the above I once restarted X when the referenced edid file did not exist. The Xorg.0.log file did not gave a "file not found" message which makes me think the CustomEDID option is not being read. 7. I tried putting the CustomEDID option in the Monitor section as per bobmyth's post - no success but the option was mentioned in Xorg.0.log 8. I tried putting the CustomEDID option in the /etc/X11/xorg.conf.d/30-screen.conf - no success but again the option was mentioned in the Xorg.0.log but apparently ignored.
Alien and mythbob, have you had success reading the acquired edid?
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |
alien
|
Posted: Tue Sep 26, 2017 2:06 am |
|
Joined: Mon Jun 21, 2004 5:28 am
Posts: 700
Location:
Germany
|
A couple of things: - I use the binary EDID. I see you are using the text version. This might make a difference. You can chose binary or text when exporting in nvidia-settings.
- I forgot that things have changed to /etc/share/X11/xorg.conf.d/. I put the Monitor, Device and Screen sections into /etc/share/X11/xorg.conf.d//99-custom.conf (which I believe is run last) to ensure it was picking up what I needed.
My 99-custom.conf looks like (suggest you save a working xorg.conf from nvidia-settings and take out the pieces you need): Code: Section "Monitor" # HorizSync source: edid, VertRefresh source: edid Identifier "Monitor0" VendorName "Unknown" ModelName "DENON, Ltd. DENON-AVR" HorizSync 15.0 - 81.0 VertRefresh 24.0 - 75.0 Option "ConnectedMonitor" "DFP-0" Option "CustomEDID" "DFP-0:/etc/X11/samsung.edid.bin" Option "DPMS" EndSection
Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "ION" EndSection
Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "Stereo" "0" Option "metamodes" "1920x1080_50 +0+0" Option "SLI" "Off" Option "MultiGPU" "Off" Option "BaseMosaic" "off" SubSection "Display" Depth 24 EndSubSection EndSection
Section "Extensions" Option "Composite" "Disable" EndSection
_________________ ASUS AT3N7A-I (Atom 330) TBS 8922 PCI (DVB-S2)
|
|
Top |
|
![](images/spacer.gif) |
nicom
|
Posted: Sun Oct 01, 2017 4:09 pm |
|
Joined: Mon Aug 14, 2006 8:24 pm
Posts: 320
Location:
Melbourne, Australia
|
I initially did try a bin file without success.
I have got around the problem by keeping the TV on standby when not in use. Originally the TV was connected to the power via a power-saving device that would require a remote key to re-enable so the TV was fully shutdown. By not using the power-saving device my mythbox recognises the TV by an EDID probe even while it is in standby mode. Alien, are you sure your TV is fully shutdown and not in standby mode when myth starts? That could explain your situation when you go through a receiver.
I did some investigation and found that modern TVs use negligible power in standby mode so I am happy to live with this work around.
Richard
_________________ Intel DG965WH, Dvico DVB-T Lite x2, HDHR, Gigabyte GT220, KingstonSSD, WD20EARS version=latest
|
|
Top |
|
![](images/spacer.gif) |