I suggest you install the xbacklight program.
Of course, if your hardware does not support it, this is not an option. So you must resort to the software adjustment as you have been doing:
man xrandr 2>/dev/null |
grep '^ *--brightness' -A8
--brightness brightness
Multiply the gamma values on the crtc cur‐
rently attached to the output to specified
floating value. Useful for overly bright or
overly dim outputs. However, this is a
software only modification, if your hardware
has support to actually change the bright‐
ness, you will probably prefer to use xback‐
light.
It would appear that the brightness settting is nothing more than a multiplier for the RGB gamma values of your display. As such, it might make more sense - or, at least, it may be easier - if you instead directly affected that with xgamma.
xgamma
-> Red 1.000, Green 1.000, Blue 1.000
xgamma -gamma .7
-> Red 1.000, Green 1.000, Blue 1.000
<- Red 0.700, Green 0.700, Blue 0.700
It would be far better though if you could get a valid EDID on your output and directly affect its backlight with the following tool:
man xbacklight 2>/dev/null |
sed '/^ *SYNOPSIS/,/^ *-inc/!d;//c\\'
xbacklight [-help] [-display display] [-get] [-set
percent] [-inc percent] [-dec percent]
DESCRIPTION
Xbacklight is used to adjust the backlight bright‐
ness where supported. It finds all outputs on the X
server supporting backlight brightness control and
changes them all in the same way.
-get Print out the current backlight brightness
of each output with such a control. The
brightness is represented as a percentage of
the maximum brightness supported.
-set percent
Sets each backlight brightness to the speci‐
fied level.
It is apparently already installed on my machine because, at some point I installed...
pacman -Qo /usr/bin/xbacklight
/usr/bin/xbacklight is owned by xorg-xbacklight 1.2.1-1
...^that package.