UbuntuでOpenRGBを使ってRGB照明を制御する方法
はじめに
最近、過去に使っていたPCにUbuntuをインストールして再利用しています。このPCにはASUSのマザーボードとNVIDIAのグラフィックカードが搭載されており、どちらもRGB照明が付いています。
WindowsではASUS Aura SyncやNVIDIA GeForce Experienceを使ってRGB照明を制御していましたが、Ubuntuではこれらの公式ツールは利用できません。
BIOS画面で、PCフロントのライトを消すことはできましたが、GPUのライトを消すことができなかったので方法を調べていたところ、OpenRGBというオープンソースのRGB照明制御ソフトウェアを見つけました。
この記事では、Ubuntu上でOpenRGBを使用してマザーボードやグラフィックカードのRGB照明を制御する方法を解説します。
システムの更新
まず、システムを最新の状態に更新します。
sudo apt update
sudo apt upgrade -y
OpenRGBのインストール
必要なパッケージのインストール
OpenRGBをビルドするために必要な依存パッケージをインストールします。
sudo apt install git build-essential qtcreator qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libusb-1.0-0-dev libhidapi-dev pkgconf libmbedtls-dev qttools5-dev-tools
OpenRGBのビルドとインストール
GitHubからソースコードをクローンし、ビルドしてインストールします。
git clone https://gitlab.com/CalcProgrammer1/OpenRGB
cd OpenRGB
mkdir build
cd build
qmake ../OpenRGB.pro
make -j$(nproc)
sudo make install
デバイスの確認
インストールが完了したら、認識されているデバイスを確認します。
sudo openrgb --list-devices
私の環境での認識結果
以下は私の環境で認識されたデバイスの例です。
0: ASUS PRIME H770-PLUS D4
Type: Motherboard
Description: ASUS Aura USB Mainboard Device
Version: HID: /dev/hidraw0
Location: HID: /dev/hidraw0
Serial: XXXXXXXXXXXX(シリアル番号が表示されます。)
Modes: [Direct] Off Static Breathing Flashing 'Spectrum Cycle' Rainbow 'Chase Fade' Chase
Zones: 'Aura Mainboard' 'Aura Addressable 1' 'Aura Addressable 2' 'Aura Addressable 3'
LEDs: 'Aura Mainboard, RGB Header 1' 'Aura Mainboard, RGB Header 2'
1: NVIDIA GeForce RTX 3060 Ti LHR
Type: GPU
Description: NVIDIA Illumination RGB GPU Device
Modes: [Off] Direct
Zones: '0 - RGBW' '1 - SINGLE COLOR'
LEDs: 'Entire Zone' 'Entire Zone'
RGB照明の制御
LEDを消灯する
RGB照明を消灯する方法は、デバイスによって異なります。各デバイスがサポートするモードを確認してから、適切なコマンドを実行してください。
マザーボードのRGBを消灯(staticモード対応デバイス)
sudo openrgb --device 0 --mode static --color 000000
GPUのRGBを消灯(offモードのみ対応のデバイス)
一部のGPU(例: NVIDIA GeForce RTX 3060 Ti LHR)はstaticモードをサポートしていないため、offモードを使用します。
sudo openrgb --device 1 --mode off
トラブルシューティング: I2Cエラーの対処法
OpenRGBを起動した際に、以下のようなI2C関連のエラーが表示される場合があります。
このエラーは、i2c-devモジュールがロードされていないことが原因です。RGB DRAMモジュールや一部のマザーボードのオンボードRGB照明、グラフィックカードのRGBを制御するには、I2CまたはSMBusが必要です。
解決方法
I2Cツールのインストール
sudo apt install i2c-tools
I2Cデバイスの確認
sudo i2cdetect -l
必要なモジュールのロード
以下のコマンドでI2C関連のモジュールをロードします。
sudo modprobe i2c-dev
sudo modprobe i2c-i801 # Intelシステムの場合
# sudo modprobe i2c-piix4 # AMDシステムの場合
起動時に自動ロードする設定
毎回手動でモジュールをロードするのが面倒な場合は、以下の設定で起動時に自動的にロードされるようにできます。
echo "i2c-dev" | sudo tee -a /etc/modules
echo "i2c-i801" | sudo tee -a /etc/modules # Intelの場合
まとめ
OpenRGBを使用することで、Ubuntuでも簡単にRGB照明を制御できます。I2Cエラーが発生した場合は、適切なモジュールをロードすることで解決できます。
詳しいトラブルシューティングについては、OpenRGB公式ヘルプを参照してください。
Discussion