How to Configure Screen Brightness in mate on pinebook via terinal?
#1
I'm trying to bind brightness change to buttons via terminal in i3, but I can't find a command that will doing that:
Code:
pine64@pinebook:~$ sudo xrandr --listmonitors

Output is:

xrandr: Failed to get size of gamma for output default

Monitors: 1
 0: +*default 1366/361x768/203+0+0  default

So, when I trying to change it like:
Code:
pine64@pinebook:~$ sudo xrandr --output default --brightness 0.5

It isn't do anything. 

Code:
pine64@pinebook:~$ echo 240 > /sys/class/backlight/lcd0/brightness


Have not do anything too Sad
  Reply
#2
I found this, but it is not working with sudo, only after sudo su

Code:
root@pinebook:/home/pine64# echo 50 > /sys/class/backlight/lcd0/brightness

Okay, now is the question how to make my own xbacklight with -dec 10 and -inc 10 to bind this for keyboard keys Smile
  Reply
#3
(08-31-2017, 12:28 PM)shirman Wrote: I found this, but it is not working with sudo, only after sudo su

Code:
root@pinebook:/home/pine64# echo 50 > /sys/class/backlight/lcd0/brightness

Okay, now is the question how to make my own xbacklight with -dec 10 and -inc 10 to bind this for keyboard keys Smile


... two scripts , one for key +  one for key -

Your script needs to read the value into a variable ,  add 10 to it ,  and then write the variable back out;  but, only if the +10 will not exceed 100.

Do the same for the minus key binding, only don't allow it to go below say 30 ( idk, experiment ).

also,  try:    sudo  -i


Shy

Ok, here are the scripts :



lcd_plus.sh

Code:
#!/bin/bash

LCDVALUE=`cat /sys/class/backlight/lcd0/brightness`
NEWVALUE=$(( $LCDVALUE + 10 ))

if [ $NEWVALUE -le 100 ]
then
   echo $NEWVALUE > /sys/class/backlight/lcd0/brightness
   echo $NEWVALUE
else
   echo $LCDVALUE
fi


lcd_minus.sh

Code:
#!/bin/bash

LCDVALUE=`cat /sys/class/backlight/lcd0/brightness`
NEWVALUE=$(( $LCDVALUE - 10 ))

if [ $NEWVALUE -gt 30 ]
then
   echo $NEWVALUE > /sys/class/backlight/lcd0/brightness
   echo $NEWVALUE
else
   echo $LCDVALUE
fi

try running them with  :

     sudo  -i

     ./lcd_plus.sh

     ./lcd_minus.sh

Now all that has to be done in i3 is to bind them to a keysym  using exec !
Works well.
Shy


Note:  of course,  you could combine them into a single script and pass a parm (up) or (down) 

try it !
marcushh777    Cool

please join us for a chat @  irc.pine64.xyz:6667   or ssl  irc.pine64.xyz:6697

( I regret that I am not able to respond to personal messages;  let's meet on irc! )
  Reply
#4


Ok,  expanding on a theme, I have combined the scripts here into one script that takes two parameters;  the first is the direction ( U for up;  D for down ) and the second is the scalar value.


lcd_bright.sh

Code:
#!/bin/bash

MODE=`echo $1 |tr '[a-z]' '[A-Z]'`
LCDVALUE=`cat /sys/class/backlight/lcd0/brightness`

if [ "$MODE" = "U" ]
then
   NEWVALUE=$(( $LCDVALUE + $2 ))
   if [ $NEWVALUE -le 100 ]
   then
       echo $NEWVALUE > /sys/class/backlight/lcd0/brightness
       echo $NEWVALUE
   else
       echo $LCDVALUE
   fi
else
   NEWVALUE=$(( $LCDVALUE - $2 ))
   if [ $NEWVALUE -gt 30 ]
   then
       echo $NEWVALUE > /sys/class/backlight/lcd0/brightness
       echo $NEWVALUE
   else
       echo $LCDVALUE
   fi
fi


Run the script with :

       sudo  -i

       ./lcd_bright.sh  U  10

or

       ./lcd_bright.sh  D  10

Notes:
       The U and D  can be upper or lower case ( the script upper cases it for you ).
       The script might be changed to set a maximum or minimum based on parameter--  try it !

Shy
marcushh777    Cool

please join us for a chat @  irc.pine64.xyz:6667   or ssl  irc.pine64.xyz:6697

( I regret that I am not able to respond to personal messages;  let's meet on irc! )
  Reply
#5
Thank you a lot Smile I did bindings and it is working really good!

Even without "sudo -i" after "sudo chown pine64: brightness" command Smile
  Reply
#6
Excellent dude!   Big Grin


I got my bindings to work too, in i3,  with bindsym(s) in  ~/.config/i3/config

... but first I created a group called gpio_pins,  to give permissions to write to the file brightness, and added my pine64 user to the group!

 Also, I added a rule to my sudoers configuration ( use visudo ) similar to this:

# my extra rules
Cmnd_Alias LCDBRIGHT=/usr/local/sbin/lcd_bright.sh
ALL ALL=NOPASSWD: LCDBRIGHT

Then in ~/.config/i3/config  I added a bindsym near the bottom:

bindsym $mod+Shift+u  exec  sudo lcd_bright.sh u 10
bindsym $mod+Shift+d  exec  sudo lcd_bright.sh d 10

Then,  restart i3  with mod+Shift+r

...  now  mod+Shift+u  turns up the brightness,  and  mod+Shift+d  turns down the brightness.

nice
Shy
marcushh777    Cool

please join us for a chat @  irc.pine64.xyz:6667   or ssl  irc.pine64.xyz:6697

( I regret that I am not able to respond to personal messages;  let's meet on irc! )
  Reply
#7
Thank you for the great advice @MarkHaysHarris777!
To get this work on my Pinebook (1080p - Arch image with i3) I had to change the file from  /sys/class/backlight/lcd0/brightness to /sys/class/backlight/backlight/brightness, the top value from 100 to 10  and the stepping to single digits. I'm not sure if this is due to the hardware or the os or both.

To get the max possible value: `cat /sys/class/backlight/backlight/max_brightness`

The script to raise the brightness then looks like this:


Code:
#!/bin/bash

LCDVALUE=`cat /sys/class/backlight/backlight/brightness`
NEWVALUE=$(( $LCDVALUE + 1 ))

if [ $NEWVALUE -le 10 ]
then
  echo $NEWVALUE > /sys/class/backlight/backlight/brightness
  echo $NEWVALUE
else
  echo $LCDVALUE
fi

and the one to decrease it (careful - this can completely dim the screen when the value gets to 0):


Code:
#!/bin/bash

LCDVALUE=`cat /sys/class/backlight/backlight/brightness`
NEWVALUE=$(( $LCDVALUE - 1 ))

if [ $NEWVALUE -ge 0 ]
then
  echo $NEWVALUE > /sys/class/backlight/backlight/brightness
  echo $NEWVALUE
else
  echo $LCDVALUE
fi

More info: https://wiki.archlinux.org/index.php/backlight
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
Information Manjaro ARM for Pinebook erchache2000 88 21,076 11-29-2020, 04:36 PM
Last Post: Mr.Fermer
  Slarm64 on Pinebook [Slackware Arm - 64 bit] KRT 19 4,616 11-16-2020, 10:38 AM
Last Post: KRT
  Pinebook is going the way of Betamax? trigger 10 2,835 11-01-2020, 02:02 PM
Last Post: leperotero
  Pinebook Pro (i3 WM): Confirm Shutdown on Power Button etothepii 3 1,096 08-14-2020, 06:03 AM
Last Post: loblik
  Manjaro sway profile for pinebook e-minguez 3 856 07-21-2020, 03:25 PM
Last Post: jezek
  Reset User or Factory Reset PineBook Linux 11.6" pittman64 1 943 07-07-2020, 11:26 PM
Last Post: tllim
  pinebook black screen when booting with "different power mode than last used" penzoiders 12 4,021 04-27-2020, 06:27 AM
Last Post: tophneal
  Kali Linux for the Pinebook Luke 1 1,208 03-03-2020, 05:01 AM
Last Post: e-minguez
  Anyway to run Teamviewer for ARM/Pinebook? Ekkaia 8 5,638 01-16-2020, 08:51 PM
Last Post: dhosh
  Pinebook Wlan Driver does not work properly matze79 2 884 12-15-2019, 02:50 AM
Last Post: matze79

Forum Jump:


Users browsing this thread: 2 Guest(s)