Monitor gives a black screen when I change the refresh rate (nvidia)

Hello everyone,

The Problem

When I go into KDE’s Display Settings and select any refresh rate above 119.88Hz (144Hz, 165Hz, or 180Hz), my monitor immediately goes black and displays a “No Signal” message. After a few seconds, goes completely black, and wouldn’t revert back to the original Hz.

Crucially, this exact setup (same PC, monitor, and HDMI cable) works perfectly at 180Hz in Windows, so I am confident the hardware is not the issue.

Troubleshooting Steps I’ve Taken:

  • Ensured my system is fully up-to-date via sudo pacman -Syu.
  • I am using the proprietary NVIDIA drivers, installed automatically by Manjaro. (Driver Version: 570.144)
  • The issue occurs on the standard X11 session.
  • The issue occurs on any Nvidia 550+ driver.

System Specifications

Here is the full output from inxi -Fxxxz for detail:

System:
  Kernel: 6.12.28-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 15.1.1
    clocksource: tsc
  Desktop: KDE Plasma v: 6.3.5 tk: Qt v: N/A wm: kwin_x11 vt: 2 dm: SDDM
    Distro: Manjaro base: Arch Linux
Machine:
  Type: Desktop Mobo: Gigabyte model: B550 AORUS ELITE V2 v: x.x
    serial: <superuser required> uuid: <superuser required> UEFI: American
    Megatrends LLC. v: FD date: 06/08/2023
CPU:
  Info: 8-core model: AMD Ryzen 7 5700X bits: 64 type: MT MCP smt: enabled
    arch: Zen 3+ rev: 2 cache: L1: 512 KiB L2: 4 MiB L3: 32 MiB
Graphics:
  Device-1: NVIDIA GA104 [GeForce RTX 3070] vendor: ASUSTeK driver: nvidia
    v: 570.144 arch: Ampere pcie: speed: 16 GT/s lanes: 16 ports: active: none
    off: HDMI-A-1 empty: DP-1, DP-2, DP-3, HDMI-A-2 bus-ID: 05:00.0
    chip-ID: 10de:2484 class-ID: 0300
  Display: x11 server: X.Org v: 21.1.16 with: Xwayland v: 24.1.6
    compositor: kwin_x11 driver: X: loaded: nvidia unloaded: modesetting,nouveau
    alternate: fbdev,nv,vesa gpu: nvidia,nvidia-nvswitch display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 93 s-size: 524x292mm (20.63x11.50")
    s-diag: 600mm (23.62") monitors: <missing: xrandr>
  Monitor-1: HDMI-A-1 model: Gigabyte G24F 2 serial: <filter> res: 1920x1080
    dpi: 94 size: 527x296mm (20.75x11.65") diag: 595mm (23.4") modes:
    max: 1920x1080 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia nouveau drv: nvidia platforms: device: 0
    drv: nvidia device: 1 drv: nouveau device: 2 drv: swrast gbm: drv: nvidia
    surfaceless: drv: nvidia x11: drv: nvidia inactive: wayland
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 570.144
    glx-v: 1.4 direct-render: yes renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
Drives:
  Local Storage: total: 953.87 GiB used: 17.87 GiB (1.9%)
  ID-1: /dev/nvme0n1 model: OCPC MFL-300 1TB size: 953.87 GiB
    speed: 31.6 Gb/s lanes: 4 tech: SSD
Info:
  Memory: total: 16 GiB available: 15.54 GiB used: 5.02 GiB (32.3%)
  Processes: 369 Power: uptime: 7m states: freeze,mem,disk suspend: deep
    wakeups: 0 hibernate: platform Init: systemd v: 257 default: graphical
  Packages: pm: pacman pkgs: 1212 Compilers: gcc: 15.1.1 Shell: Zsh v: 5.9
    running-in: konsole inxi: 3.3.38

X11 may not be able correct adapt to those refresh rates.

If possible - use a wayland session if you require refresh rates higher than x11 can handle.

2 Likes

Hello everyone,

I’ve successfully solved the issue and wanted to share the solutions that worked for me. After some research, it seems the problem is common and relates to how the Linux NVIDIA driver handles high-bandwidth signals over HDMI.

Here are the two solutions.

Solution 1: Use DisplayPort (The Easiest & Recommended Fix)

The most straightforward and reliable solution is to switch from an HDMI cable to a DisplayPort cable.

If your graphics card and monitor both have a DisplayPort option, I highly recommend using it as the primary solution.

Solution 2: The GRUB Fix (If You Must Use HDMI)

If you are limited to using HDMI, this fix will force the NVIDIA driver to use a more compatible signal mode. It involves adding a kernel parameter to your system’s bootloader.

Here are the step-by-step instructions:

1. Open the Terminal (Konsole)

2. Edit the GRUB configuration file
You need to open the /etc/default/grub file with administrator rights. This command opens it in the nano text editor:

sudo nano /etc/default/grub

3. Modify the GRUB Command Line
Use your arrow keys to find the line that begins with GRUB_CMDLINE_LINUX_DEFAULT.

The contents of this line will be different for everyone. The important part is to add nvidia-modeset.hdmi_deepcolor=0 to the very end of the line, right before the closing quote (').

For example, my original line looked like this:
GRUB_CMDLINE_LINUX_DEFAULT='quiet splash resume=UUID=f8943102-2ac8-4c51-9f63-68ce16f936b5 udev.log_priority=3'

After adding the parameter, my new line looks like this:
GRUB_CMDLINE_LINUX_DEFAULT='quiet splash resume=UUID=f8943102-2ac8-4c51-9f63-68ce16f936b5 udev.log_priority=3 nvidia-modeset.hdmi_deepcolor=0'

4. Save the file and exit
If you’re using nano, press Ctrl+O, then Enter to save, and Ctrl+X to exit.

5. Update the GRUB bootloader
This crucial step applies your changes so they are used the next time you boot.

sudo update-grub

6. Reboot your computer
A full reboot is required for the new setting to take effect.

reboot

After my system rebooted, I went straight to the KDE Display Settings, selected 180Hz, and it worked perfectly without any black screen.

Hope this helps someone else…


Note:
I was previously using the open-source Nouveau driver, so I switched to the proprietary NVIDIA driver by running:

sudo pacman -S nvidia nvidia-utils lib32-nvidia-utils

From the package list, I selected 20) linux612-nvidia because my kernel version is 6.12.28-1-MANJARO (checked via uname -r).

wayland also causes error. i tried 3 DEs, different distros, different display managers. ALL the same. It is definitely a grarphics driver issue.

How much of that exactly did you copy and paste from ChatGPT? :smile:

nothing BUT, i found the solutions. asked an LLM to make it nice and here we are

The bandwidth available as provided by the GPU, the number of monitors connected, the quality of the cable and the choice between HDMI or DP - all of this is parameters that decide the outcome.

HDMI and DP does not provide the same options when connecting to a given monitor.

As example - I have two monitors - one Samsung G9 5120x1440@240H

With the Acer XV272 with a max resolution of 3840x2160@144Hz.

Using DP I can only reach 1920x1080 but using HDMI I can reach 3840x2160 on my Plasma system.

So not being able to reach a specific refresh rate is not always a matter of configuration.

What software?

Please also provide a link to the solution(s) you found so that others (with a similar issue) might investigate it further, if they wish. You can simply edit your original post to add it.

Regards.

Done. Thanks for mentioning.
Also, how do i SEO this? this was such a big problem for me. actually, a LOT of people. thats why im asking.

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.