We are Facing a Issue to get screen on display.
After the Jetson Boots its showing the NVIDIA logo in 1/3 of the screen after that we cant see anything on the screen.
As we know the same display is working fine with other computer like windows, Mac os so we want to make sure is there any issue at jetson H/W level and is there any way we can resolve this issue.
The supported resolution for display is 800x480 but jetson nano is only showing below options after I ran xrandr command. I even tried changing this resolution to given options but still nothing worked. The screen sometimes flicker but never shows anything on display.
Also I am attaching the following result for dmesg |grep tegradc command
The above says the HDMI’s plug-n-play failed to respond. This is the DDC wire of the cable which performs this (it is EDID data which describes the monitor’s capabilities). Is this a true HDMI monitor? Is there some sort of adapter between the monitor and Jetson? Is there anything unusual about the monitor?
Incidentally, if this uses a Jetson module on a third party carrier board, and if the firmware (device tree) is incorrect for that change, then it is likely the device tree needs edits. If this is a dev kit flashed with the dev kit software, then more likely it is a monitor+cable issue.
For your reference we are using a 2GB Jetson Nano Dev kit from NVIDIA its not any custom board.
Also I have 2 Jetson Nano Dev kit with me both are responding same for the display.
As I have pasted link for the display it is a HDMI Display as I have tested it with HDMI cable with other OS.
There is no any converter or Adapter between the Display and Jetson Nano Dev kit we are only using a HDMI cable.
Also we have replaced 3-4 different HDMI cables as well just for confirmation whether its cable issue.
Do all of the Jetsons show the “edid read failed”? Default flash software would work and have the correct device tree for a developer’s kit, so I would expect that the i2c rails and DDC are correctly routed to work, and that there must be a signal issue. However, could you get a full serial console boot log with the monitor attached? That log might show something earlier on in boot regarding the specific i2c or HDMI.
As a second test (don’t use the boot log for this), if you unplug the monitor and watch “dmesg --follow”, then plug in the monitor, what new log lines occur as a result of plugging in the monitor?
Lastly, does this monitor have its own independent power supply separate from the Jetson? If it is powered by USB-C or somehow relies on the Jetson for power then it could be a power issue.
I tried checking “dmesg --follow” command before and after connecting the display and I got following log change after I connect the Display
[84778.411855] edid invalid
[84778.522743] edid invalid
[84778.525313] edid invalid
[84778.538912] edid invalid
[84778.541469] edid invalid
[84778.547660] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 3. New remainder is 1. Failed at attempt 1
[84778.561415] i2c i2c-3: clk rate 50000 not supported
[84778.566304] Could not change i2c_ddc sclk rate
[84778.570759] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.586480] edid invalid
[84778.589046] edid invalid
[84778.602490] edid invalid
[84778.605050] edid invalid
[84778.611209] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 253. New remainder is 251. Failed at attempt 1
[84778.625325] i2c i2c-3: clk rate 50000 not supported
[84778.630215] Could not change i2c_ddc sclk rate
[84778.634662] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.650507] edid invalid
[84778.653048] edid invalid
[84778.666608] edid invalid
[84778.669170] edid invalid
[84778.675392] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 253. New remainder is 255. Failed at attempt 1
[84778.689500] i2c i2c-3: clk rate 50000 not supported
[84778.694389] Could not change i2c_ddc sclk rate
[84778.698838] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.714439] edid invalid
[84778.716988] edid invalid
[84778.730600] edid invalid
[84778.733150] edid invalid
[84778.739338] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 1. New remainder is 255. Failed at attempt 1
[84778.753269] i2c i2c-3: clk rate 50000 not supported
[84778.758157] Could not change i2c_ddc sclk rate
[84778.762607] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.778446] edid invalid
[84778.781005] edid invalid
[84778.794401] edid invalid
[84778.796951] edid invalid
[84778.810418] edid invalid
[84778.812985] edid invalid
[84778.819211] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 253. New remainder is 7. Failed at attempt 2
[84778.833147] i2c i2c-3: clk rate 50000 not supported
[84778.838037] Could not change i2c_ddc sclk rate
[84778.842486] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.858257] edid invalid
[84778.860797] edid invalid
[84778.874381] edid invalid
[84778.876923] edid invalid
[84778.883132] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 251. New remainder is 255. Failed at attempt 1
[84778.897240] i2c i2c-3: clk rate 50000 not supported
[84778.902131] Could not change i2c_ddc sclk rate
[84778.906579] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.922366] edid invalid
[84778.924923] edid invalid
[84778.938372] edid invalid
[84778.940939] edid invalid
[84778.947229] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 249. New remainder is 255. Failed at attempt 1
[84778.961355] i2c i2c-3: clk rate 50000 not supported
[84778.966250] Could not change i2c_ddc sclk rate
[84778.970713] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84778.986433] edid invalid
[84778.989004] edid invalid
[84779.002521] edid invalid
[84779.005077] edid invalid
[84779.011348] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 255. New remainder is 5. Failed at attempt 1
[84779.025299] i2c i2c-3: clk rate 50000 not supported
[84779.030192] Could not change i2c_ddc sclk rate
[84779.034645] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.050483] edid invalid
[84779.053044] edid invalid
[84779.066411] edid invalid
[84779.068976] edid invalid
[84779.075172] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 9. New remainder is 23. Failed at attempt 1
[84779.089018] i2c i2c-3: clk rate 50000 not supported
[84779.093907] Could not change i2c_ddc sclk rate
[84779.098354] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.114138] edid invalid
[84779.116679] edid invalid
[84779.130262] edid invalid
[84779.132810] edid invalid
[84779.139026] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 9. New remainder is 249. Failed at attempt 1
[84779.152947] i2c i2c-3: clk rate 50000 not supported
[84779.157835] Could not change i2c_ddc sclk rate
[84779.162283] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.171066] tegradc tegradc.0: hdmi: edid read failed
[84779.176188] tegradc tegradc.0: hdmi: using fallback edid
[84779.176206] tegradc tegradc.0: blank - powerdown
[84779.404764] tegradc tegradc.0: unblank
[84779.435330] tegradc tegradc.0: nominal-pclk:74250000 parent:74250000 div:1.0 pclk:74250000 73507500~80932500
[84779.435449] tegradc tegradc.0: hdmi: tmds rate:74250K prod-setting:prod_c_hdmi_54m_75m
[84779.436646] tegradc tegradc.0: hdmi: get YCC quant from EDID.
[84779.468746] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 253. New remainder is 49. Failed at attempt 1
[84779.468753] i2c i2c-3: clk rate 50000 not supported
[84779.468755] Could not change i2c_ddc sclk rate
[84779.468756] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.472015] extcon-disp-state extcon:disp-state: cable 47 state 1
[84779.472016] Extcon AUX1(HDMI) enable
[84779.504053] extcon-disp-state extcon:disp-state: cable 51 state 1
[84779.504057] Extcon HDMI: HPD enabled
[84779.504088] tegradc tegradc.0: hdmi: plugged
[84779.530989] tegradc tegradc.0: blank - powerdown
[84779.586936] extcon-disp-state extcon:disp-state: cable 47 state 0
[84779.586938] Extcon AUX1(HDMI) disable
[84779.595336] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 7. New remainder is 249. Failed at attempt 1
[84779.595343] i2c i2c-3: clk rate 50000 not supported
[84779.595344] Could not change i2c_ddc sclk rate
[84779.595346] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.595350] tegradc tegradc.0: hdmi: tegra_edid_read_block(0) returned err -5
[84779.595353] tegradc tegradc.0: hdmi_recheck_edid: read_edid_into_buffer() returned -5
[84779.595356] tegradc tegradc.0: hdmi: unable to read EDID
[84779.719550] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 17. New remainder is 249. Failed at attempt 1
[84779.733609] i2c i2c-3: clk rate 50000 not supported
[84779.738838] Could not change i2c_ddc sclk rate
[84779.744194] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.753189] tegradc tegradc.0: hdmi: tegra_edid_read_block(0) returned err -5
[84779.753194] tegradc tegradc.0: hdmi_recheck_edid: read_edid_into_buffer() returned -5
[84779.753198] tegradc tegradc.0: hdmi: unable to read EDID
[84779.843144] tegra_edid_read_block: checksum failed and did not match consecutive reads. Previous remainder was 255. New remainder is 241. Failed at attempt 1
[84779.857944] i2c i2c-3: clk rate 50000 not supported
[84779.863621] Could not change i2c_ddc sclk rate
[84779.868292] Cannot halve i2c speed givingup on trying to change the i2c speed for EDID read
[84779.876955] tegradc tegradc.0: hdmi: tegra_edid_read_block(0) returned err -5
[84779.876959] tegradc tegradc.0: hdmi_recheck_edid: read_edid_into_buffer() returned -5
[84779.876962] tegradc tegradc.0: hdmi: unable to read EDID
[84779.951278] tegradc tegradc.0: read_edid_into_buffer: extension_blocks = 3, max_ext_blocks = 3
[84779.970224] tegra-i2c 7000c700.i2c: no acknowledge from address 0x30
[84779.976728] tegradc tegradc.0: hdmi: tegra_edid_read_block(2) returned err -121
[84779.976732] tegradc tegradc.0: hdmi_recheck_edid: read_edid_into_buffer() returned -121
[84779.976735] tegradc tegradc.0: hdmi: unable to read EDID
Either the monitor has corrupt information (this does happen, not a lot, but I would not call it rare), or the DDC and related wiring is wrong (which can include device tree incorrect routing; it isn’t just a hard wire issue, it can be wiring not properly labeled in the device tree).
Do you have another computer running Linux (I’m guessing you do if you’ve flashed)? You could leave an existing monitor connected on that other Linux computer if you have a second HDMI slot on the video card, but try running “dmesg --follow” on that host PC. Find out what messages you get as a result of plugging that monitor in to your host PC. It is hot plug so there shouldn’t be any change if you plug this monitor in and then unplug it. I’m interested in knowing if this other computer thinks the EDID is corrupt. If not corrupt, then it is a wiring or hardware failure of DDC wiring on the Jetson side (which in turn might be device tree configuration, or it might be actual hardware failure).