Yellow and gray blend with white on a remote monitor connected with a HDMI-VGA adapter
The problem is that yellow and gray are hardly visible on my remote monitor. For example when I open StackOverflow I cannot see the yellow background of quote blocks and the gray background of code blocks. They just blend with the white background.
How can I fix the way colors are displayed on the second monitor?
Details
- The remote monitor is Samsung 2043NW and it has only an VGA port.
- I've experienced this behavior on two different machines: Lenovo Yoga 3 14 and Dell XPS 17 L702X. They were connected using the same HDMI-VGA adapter.
- Colors are OK when I connect the monitor to Lenovo ThinkPad X230 to its VGA port.
- I've tried changing the color settings on both the monitor itself and with software tools like
xbrightness
,xgamma
and so on. It didn't work although it looks like a problem with brightness or an invalid gamma calibration. - I've experienced this on both FreeBSD (10.3, 11) and Ubuntu (17.04).
- I've already tried a few different adapters.
Solution 1:
tl;dr
xrandr --output HDMI-1 --set "Broadcast RGB" "Limited 16:235"
Detailed answer
The problem was with the X server. The idea came from this Arch Linux Wiki article about xrandr
.
They suggest there to run:
xrandr --output HDMI-1 --set "Broadcast RGB" "Full"
in order to fix colors. It didn't work but I decided to see other options I can change with --set
.
On Ubuntu 17.04 xrandr --prop
returns:
HDMI-1 connected 1050x1680+1920+0 left (normal left inverted right x axis y axis) 459mm x 296mm
[... some uninteresting properties ...]
Broadcast RGB: Automatic
supported: Automatic, Full, Limited 16:235
[... some uninteresting properties ...]
It turns out that
xrandr --output HDMI-1 --set "Broadcast RGB" "Limited 16:235"
fixed the issue and now all the colors are distinguishable.