Jetson Nano Developer Kit B01 (4GB) No HDMI Output Signal when using 4K display

Hello,

I have 2 Jetson Nano Developer Kit model B01 4GB RAM (for simplicity in this topic I will refer to them as the “B01 board”), I have noticed the following:
(before starting: both B01 boards were powered with a very well power supply capable of 5V/4A output, test done with a 4K monitor and a 4K TV)

When the B01 board connected to the 4K monitor (this monitor supports up-to 4K@60FPS resolution: 60FPS when using DisplayPort DP only but when using HDMI cable it supports up-to 4K@30FPS only):

1- 4K monitor connected through DP: (60FPS supported) everything is ok.
2- 4K monitor connected through HDMI cable (both the monitor and the cable are working very well for 4K@30FPS when tested with another device to remove any possibility of hardware issues):
a- at boot: Nvidia logo appears for a very short period of time then everything goes black.
b- the screen tries to scan for input signal but nothing found and it turns off.
c- forced the screen to keep scanning nothing appears on the screen yet and no HDMI signal detected from the B01 board.
d- connected it back to DP everything works fine.
3- B01 board connected to 4K TV that supports only 4K@30FPS (no DisplayPort DP available, only HDMI): everything works fine

now my conclusion is:

  • the B01 board is trying to connect to the monitor using its maximum capability (4K@60FPS) when it is connected to HDMI/DP (while actually the screen does not support 60FPS in HDMI mode and will turn off when overloaded since it cannot process the incoming signal). this monitor may reports it supports 60FPS but for DisplayPort DP not for HDMI.
  • when I force the monitor resolution to 4K@30FPS the screen starts to work fine, but the problem is at boot the screen seems to be getting 60FPS signal again from the B01 board so it will turn off since it can’t handle this high FPS. and since I have some experience with linux I tried the following:
    -boot the B01 board
  • wait until it finishes booting.(small wait time) at this moment the screen is black (nothing displayed just Nvidia Logo for a very short period of time)
  • now theoretically the B01 finished booting and waiting for the user to login
  • blindly: (click enter) that activates the current user password field
  • blindly write the password and [click enter]: (that would login the current user)
  • then the screen turns on and works normally (since I have previously set the resolution for my user at 4K@30FPS).

so now to recap:

  • the issue is: when connecting the B01 board to my 4K monitor that supports up-to 60FPS (DP) and 30FPS (HDMI) it seems the B01 board will try to output 4k@60FPS without taking into account if it is connected through DP or HDMI cable.

possible solutions:

  • if we can force the resolution to be capped to 4K@30FPS or maybe safer FHD@30FPS during the “first-Boot” process then use the user defined values after booting and changing them.

PS: this is tested on a 4K monitor but maybe this will also happen with any screen with 2 different frame rates support for DP and HDMI (like: FHD@60FPS for DP and FHD@30FP for HDMI if exist)

This may help someone else facing the same issue to have a starting point to solve the issue.

I hope that Nvidia could help solving this issue, I am sure they have a better solution than my suggested possible solution above.

Hi,

There are some points here that I cannot understand and need your input.

  • when I force the monitor resolution to 4K@30FPS the screen starts to work fine, but the problem is at boot the screen seems to be getting 60FPS signal again from the B01 board so it will turn off since it can’t handle this high FPS. and since I have some experience with linux I tried the following:
    -boot the B01 board
  • wait until it finishes booting.(small wait time) at this moment the screen is black (nothing displayed just Nvidia Logo >for a very short period of time)
  • now theoretically the B01 finished booting and waiting for the user to login
  • blindly: (click enter) that activates the current user password field
  • blindly write the password and [click enter]: (that would login the current user)
  • then the screen turns on and works normally (since I have previously set the resolution for my user at 4K@30FPS).
  1. I cannot understand what you are trying to do above. To be more precisely, I want to know how did you make it?

How did you “force the monitor to 4k@30”? What was working? and what was not working then?
“when I force the monitor resolution to 4K@30FPS the screen starts to work fine” and “but the problem is at boot the screen seems to be getting 60FPS signal again from the B01 board so it will turn off since it can’t handle this high FPS” sound like two contradicted description.

Also, when you “blindly” type the user account and password, is monitor powered on during that time but just in blanked state (black screen)?

  1. You don’t need to care about DP. HDMI and DP are totally separate drivers and would not influence each other.

  2. We need below info to really help debug here

  • We need to know which release you are using
  • We need the dmesg, Xorg.0.log and the log from serial console when this error happens. These logs include kernel/ X11/Cboot part display log.
  1. I cannot understand what you are trying to do above. To be more precisely, I want to know how did you make it?
  • I cannot understand what you are trying to do above

I am trying to make my screen able to show HDMI signal from Jetson Nano B01 board

How did you “force the monitor to 4k@30”?

simply I have connected DP and HDMI cables together (since the DP one will work normally because it supports 60FPS i used it to access the HDMI screen settings. from Displays app, turns out that the HDMI settings was set to 4K@60FPS while this monitor - when using HDMI - it supports actually only 4K@30FPS so I changed this setting and saved the changes then I removed the DP cable and kept the HDMI cable alone, then the monitor started to display HDMI signal from B01 board until I reboot.

what was working.

(4K@60FPS using DP

and what was not working then?

4K@60FPS (the default setting) using HDMI (which is normal my screen does not support 4k@60FPS using HDMI cable but the problem is the 60PS was set as the current default framerate when HDMI cable used)

“when I force the monitor resolution to 4K@30FPS the screen starts to work fine” and “but the problem is at boot the screen seems to be getting 60FPS signal again from the B01 board so it will turn off since it can’t handle this high FPS” sound like two contradicted description.

they are not contradicted at all,

“when I force the monitor resolution to 4K@30FPS the screen starts to work fine”

using the HDMI cable when I put the resolution of the HDMI display (from Displays app) at 4K@30FPS it works. but while booting and during login it does not work. (only after login it seems it applies the selected resolution 4K@30FPS).

“but the problem is at boot the screen seems to be getting 60FPS signal again from the B01 board so it will turn off since it can’t handle this high FPS”

as mentioned above: it seems the selected resolution in “Displays” app, does not take effect while booting and login (it applies only after login so the screen keeps not showing anything until I login.

Also, when you “blindly” type the user account and password, is monitor powered on during that time but just in blanked state (black screen)?

the monitor was powered on during the whole process I haven’t turned it off during any step. but it automatically goes to standby mode since there is no HDMI signal (or more precisely no supported HDMI signal detected) and to answer your question: yes it was connected and powered on using only HDMI cable at this phase but was not showing anything at all at this phase since it is in a standby mode, and. when forced to scan for HDMI signal again. it tries to search for HDMI signal on the HDMI port then it returns to standby mode since no signal is detected.

You don’t need to care about DP. HDMI and DP are totally separate drivers and would not influence each other.

at first I thought I don’t need to care about it but it turned out that the DP works and the HDMI does not work not because of the driver maybe but as I have mentioned before the DP worked and the HDMI does not work. that gave me the hint to an obvious difference between both of them which is the Framerate so I started looking at the Framerate thing and as mentioned the HDMI signal started to work after setting it at 30FPS. (following the steps mentioned above)

We need below info to really help debug here
We need to know which release you are using

latest JetPack 4.4.1 flashed. to the B01 board SD card.

  • We need the dmesg, Xorg.0.log and the log from serial console when this error happens. These logs include kernel/ X11/Cboot part display log

I will get the log when possible and send it to you (currently I am in a business trip)

Hi ASUCKAR,

Just some reminder to you.
Please use those function on forum to make your comment better for other people to read.

For example, if you want to quote something,

you can use blockquote button.

Also, back to the debug case, please just remove DP in your test case. This would only make the debug log hard to read.

If you want to change the mode, just use serial console or ssh to remote access the board and run xrandr command to change the refresh rate. It is same as using GUI to change the mode. But no need the existence of DP monitor.

Generally, there are two cases required to test.

  1. Connect the HDMI cable to device and then boot up → log1
  2. Connect nothing to the device, boot up Nano first and then hot plug the cable. log2

Just some reminder to you.
Please use those function on forum to make your comment better for other people to read.

For example, if you want to quote something,

as mentioned before I am very new to Nvidia Forums rules and thank you for your advice it is really makes things more readable (my reply has been modified based on your advice)

If you want to change the mode, just use serial console or ssh to remote access the board and run xrandr command to change the refresh rate. It is same as using GUI to change the mode. But no need the existence of DP monitor.

Generally, there are two cases required to test.

  1. Connect the HDMI cable to device and then boot up → log1
  2. Connect nothing to the device, boot up Nano first and then hot plug the cable. log2

thank you for the hint to use xrandr. using it I am sure it will work but that would add more friction to B01 users that is why I am trying to understand why it was defaulted to use 4k@60FPS on HDMI while it is most likely will not work on many many screens these days.

and as for the logs I will prepare the two mentioned logs and post them when I return

1 Like

Hi,

The driver just tries to select the best mode that can support on your monitor.

What I want to check is whether this issue is caused by kernel or userspace driver(display manager). Thus, waiting for you to share the logs.

Thanks.

Hi ASUCKAR,

Any log can be shared?

Hi kayccc,

I was very busy the last week but It is planned for this weekend to prepare the logs and share them with you

Thanks for the follow up

I tried to get the required logs to share them with you, I found out it is now working correctly, which is good and bad at the same time since I don’t like to stop digging into an issue I’ve faced without knowing why it happened and why it worked without noticeable changes (and since that may help other users facing same issue), so I started isolating things and after isolation it turns out that the problem was caused by an HDMI Hub was used in the initial test (when it failed).

Reasons:

  • HDMI Hub reports it supports 4k@60FPS to the connected device since it is really support 4k@60FPS but my screen connected to it does not support more than 4k@30FPS
  • connecting the 4k@30FPS HDMI monitor directly to the Jetson B01 Board worked fine for me since the screen reports exactly what it supports and the Jetson B01 board gets correct info about the screen.
  • connecting the Jetson B01 Board to the HDMI Hub (which, HDMI HUB, in turns connected to my 4k@30FPS monitor) then the issue returned to happen again, since the HDMI Hub reports it can support 4k@60FPS without taking into account the destination device (screen/monitor/…) connected to it

For me I consider this topic solved since I found out what was happening and would really like to thank Nvidia support team since they proofed they were ready to help.

For any reason, if you still prefer to dig more into it please let me know what you need based on the new information provided above. and I will try to help as much as I can