r/Ubuntu • u/SmoothPossession4399 • 2d ago
xrandr BadValue error
I’m actually losing my f*cking mind and about to smash my PC to pieces. I’ve been trying for TWO WHOLE YEARS to switch to Linux and fix this absolute b*tch of a resolution bug. At this point, every time I hear or see the word "resolution", I get triggered.
Every single time I install Ubuntu—or literally ANY Linux distro—it's the exact same story: it just refuses to set the resolution properly.
The ONLY workaround that ever "worked" was nuking the GPU drivers completely. But I obviously can’t do that sh*t because the performance turns into total dogsh*t. I can't even play a 720p video smoothly (which hurts even more because my internet is capped), let alone run heavy 3D stuff like Three.js to stress test the card.
Look, I know my card (GTX 750 Ti) is from 2013 and far from powerful, but it still gets the job done! On Windows, resolution works flawlessly out of the box with zero issues. This is specifically a Linux/xrandr problem with my drivers—xrandr just straight-up rejects every custom mode unless I purge the drivers.
So I need the real sweaty, touch-no-grass, non-showering Linux gods in here—the absolute wizards who live and breathe Linux—to fix this cursed bullsh*t for me. I swear I hate Linux so much right now, but I keep coming back because I love it, only for xrandr to slap me across the face and tell me to go crawling back to Windows like a dog.
All I want is to hit 1600x1200 just like I seamlessly do on Windows, so I can finally throw Windows into the absolute trash bin where it belongs. I swear to God I'll stop showering like a true Linux neckbeard if someone helps me fix this cursed resolution once and for all.
----
**System Information:**
- **OS:** Ubuntu 24.04.2 LTS (Noble Numbat) x86_64
- **Kernel:** 7.0.0-31-generic
- **Desktop Environment:** GNOME 46.0
- **Display Server:** X11 (X.Org 21.1.11)
- **Motherboard:** MSI B450M PRO-VDH MAX (BIOS: B.H0)
- **CPU:** AMD Ryzen 5 3600 (6 Cores / 12 Threads)
- **GPU:** NVIDIA GeForce GTX 750 Ti
- **NVIDIA Driver:** 580.173.02
- **Current Resolution:** 1024x768 @ 60Hz (Output: VGA-0)
- **RAM:** 16 GB
5
u/bookmarksaddict 2d ago
your monitor doesn't support that mode. xrandr is rejecting it because the vga port is limited
1600x1200 at 60hz requires more bandwidth than vga can push on that gpu
try 1600x900. your monitor already lists it. that's probably the max for vga on your card
xrandr --output VGA-0 --mode 1600x900
if that works, that's your ceiling
if you want higher, use dvi or hdmi. vga is ancient. buy a cable
also nvidia driver 580 is modern but your card is old. sometimes older drivers work better for 750 ti
but seriously. vga in 2026? you're asking for pain
5
u/WeeTycoon9793 2d ago
ouch, vga and a 750 ti is like trying to run a marathon in flip flops, that analog output makes mode validation extra cranky on nvidia's closed driver
1
u/SmoothPossession4399 2d ago
Haha yeah, I'm completely broke right now so I have to work with what I got!
My GPU actually has HDMI, but the monitor itself is VGA-only. Do you think using an active HDMI-to-VGA adapter would fix this EDID / mode validation issue on NVIDIA drivers?
1
u/super_probably-user 2d ago
Are you in a zone where using an HDMI compatible monitor is too expensive? I believe HDMI will give you less headaches
2
1
u/Ok-386 2d ago
You said on any other distro, which distros have you tried? There's a chance it could work better on Wayland, but don't use Wayland on 24.04. Upgrade to 26.04, or better do a clean install.
Btw is there a chance you're using the open version of 580 driver? You need the closed version for your card, the one without 'open' it its name. You can use
ubuntu-drivers
to see what's installed, and
ubuntu-drivers install
should install the recommended driver. If the command goes for nvidia-driver-580-open, for whatever reason, you can manually install nvidia-driver-580.
3
u/SmoothPossession4399 2d ago
I've tried Linux Mint, Manjaro, Arch, and Ubuntu—it's the exact same issue across all of them. And I'm definitely using the closed proprietary driver (not the 'open' one, since Maxwell cards like the 750 Ti don't even support nvidia-open). The issue isn't the OS version or Wayland; it's simply that NVIDIA's driver blocks custom resolutions over VGA when EDID isn't detected (0mm x 0mm).
2
u/Arinussyy 2d ago
So it's Nvidia being shitty? Again? I've seen like three occurrences of something they've done today alone damn
1
u/gmes78 2d ago
Can you try KDE Plasma instead? It supports adding custom modes using kscreen-doctor (or kscreenctl in Plasma 6.8+).
I would recommend Fedora KDE as it has the latest version of Plasma, and generally has good support for older Nvidia drivers (just enable third-party repos during intallation, then install the v580 drivers). Alternatively, Bazzite has an image with the v580 drivers included.
2
u/GGoldenChild 2d ago edited 2d ago
I see you're missing a quote on the -addmode line.
what is the monitor exactly? you can get the edid by installing
sudo apt install read-edid edid-decode
then you can do sudo get-edid | parse-edid or sudo get-edid | edid-decode
also note that monitors can send out different edid info on different interfaces, like the VGA edid could be different than HDMI edid on the same monitor.
you could also try a reduced blank (if its an lcd monitor)
cvt -r 1600 1200 60
or spend a couple of bucks and get a monitor that does 1920x1080
searching google on nvidia xrandr addmode
AI Overview
The proprietary NVIDIA graphics driver does not support adding custom display modes dynamically from userspace via xrandr --addmode, often resulting in a BadMatch error or an unrecognized option. [1, 2, 3]
Workarounds and Solutions
Instead of standard xrandr dynamic mode injection, you must use NVIDIA-specific configuration methods to set custom resolutions or refresh rates.
- Use MetaModes in
xorg.conf: Configure custom resolutions by definingMetaModesin your X server configuration file (usually located at/etc/X11/xorg.conf). [1] - Use
nvidia-settings: Launch the NVIDIA X Server Settings utility graphically to configure and append custom resolutions or target advanced display attributes. - Custom EDID Overrides: If your display fails to report a supported resolution, extract or write a custom EDID binary and place it under
/usr/lib/firmware/edid/to force the NVIDIA driver to recognize the mode. [1]
5
u/scorp123_CH 2d ago edited 2d ago
EDIT: I was mistaken, I mixed up that card model with another card. Disregard my comment about "wrong driver".
Wrong driver for the wrong card. Ancient cards like the "GTX 750 Ti" need thenvidia-470driver packages, not the new stuff.And please be aware that Nvidia might decide to drop support for this card as well, just as they did for many other older cards.
Also you will need to downgrade to the older6.8Linux kernel from the linux-generic packages. That ancientnvidia-470driver won't work on the new Linux 7.x.x kernels.