ラズパイ公式7インチディスプレイの輝度調整スクリプトなど †ラズパイ公式7インチタッチディスプレイを手に入れました。 ディスプレイの輝度調整が簡単にできないのでPythonにてスクリプトを作成しました。 スポンサーリンク 参考記事 †使用した環境 †
輝度調整 Python スクリプト †ラズベリーパイ公式7インチタッチディスプレイの輝度調整用スクリプトは以下の通りです。 動作画面のキャプチャ †スライダーを動かすとディスプレイの輝度が変化します。 デスクトップ全体のキャプチャです。 輝度調整 Python スクリプト †輝度調整のPythonスクリプトは以下の通りです。 #!/usr/bin/python3 import subprocess from tkinter import * PASSWORD="" #PASSWORD="raspberrypi" BRIGHTNESS_PATH='/sys/class/backlight/rpi_backlight/brightness' FROM=15 TO=255 def get_brightness(): if '' == PASSWORD: cmd = 'sudo sh -c "cat ' + BRIGHTNESS_PATH + '"' else: cmd = 'echo "' + PASSWORD + '" | sudo -S sh -c "cat ' + BRIGHTNESS_PATH + '"' p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout_data, stderr_data = p.communicate() return stdout_data.decode('ascii').strip() def set_brightness(self): v = str(var.get()) if '' == PASSWORD: cmd = 'sudo sh -c "echo ' + v + ' > ' + BRIGHTNESS_PATH + '"' else: cmd = 'echo "' + PASSWORD + '" | ' + 'sudo -S sh -c "echo ' + v + ' > ' + BRIGHTNESS_PATH + '"' p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) #print("Debug:" + cmd) stdout_data, stderr_data = p.communicate() root = Tk() var = IntVar() var.set(get_brightness()) scale = Scale( root, variable=var, from_= FROM, to = TO, length = 250, orient = 'h', command = set_brightness) scale.pack() button = Button(root, text = "Quit", command = sys.exit) button.pack() root.title("brightness") root.update_idletasks() w = root.winfo_screenwidth() h = root.winfo_screenheight() size = tuple(int(_) for _ in root.geometry().split('+')[0].split('x')) x = w/2 - size[0]/2 y = h/2 - size[1]/2 root.geometry("%dx%d+%d+%d" % (size + (x, y))) root.mainloop() 使用方法 †
ショートカットキーなどの設定で動作するように設定すれば便利になると思います。 スクリプトの説明 †以下にスクリプトについて注意事項等を記します。 輝度調整方法 †液晶ディスプレイの輝度は、ノートパソコンなども以下の場所に輝度の値が格納されています。 /sys/class/backlight/xxxxxxxxx/brightness このファイルをcatすれば現在の輝度値が表示されます。
輝度の値の範囲はハードウェアによって異なるようです。 sudoでパスワードを必要とする場合 †次に、本スクリプトでは、sudoでパスワードを渡さないようになっています。 Tkinter - Python interface to Tcl/Tk †Rapbianでは、デフォルトでpython3-tkがインストール済みでした。 sudo apt install python3-tk 以上、ラズベリーパイ公式インチタッチディスプレイの輝度調整Pythonスクリプトでした。 スポンサーリンク |