submitted by 2Drunk to Linux2 weeksApr 27, 2024 23:26:17 ago (+1/-0) (Linux)
I'm using an ASUS Laptop running Mint and Garuda. Haven't decided which OS to keep. I'm trying to run OpenRGB for the laptop and both OS give the same error. I'm not very intelligent so I need basic instructions or link to a write up.
This is the actual error msg:
"One or more I2C/SMBus interfaces failed to initialize. RGB DRAM modules and some motherboards' onboard RGB lighting will not be available without I2C/SMBus. On Linux, this is usually because the i2c-dev module is not loaded. You must load the i2c-dev module along with the correct i2c driver for your motherboard. This is usually i2c-piix4 for AMD systems and i2c-i801 for Intel systems."
This might be beyond my comprehension. I'm using a intel system.
sudo apt install libi2c-dev. Then you may need to restart,
Then in a terminal you need to run the following
sudo modprobe i2c-dev sudo modprobe i2c-piix4
(To load a module you could sudo modprobe i2c-dev)
Then later make a permenant config
The driver is how the os talks to the device
Some details about the communication bus
I2C (Inter-Integrated Circuit; pronounced as “eye-squared-see” or “eye-two-see”), alternatively known as I2C or IIC, is a synchronous, multi-controller/multi-target (historically-termed as master/slave), single-ended, serial ... lower-speed peripheral ICs to processors and microcontrollers in short-distance, intra-board communication
a subset of I2C, defining a stricter usage. One purpose of SMBus
OK. So it's not taking then for some reason. What program are you trying to use/install specifically? I know you need i2c, but which program is trying to load it? If the full OS, then for sure the drivers to your HW is not integrated properly (although, I believe the instructions Cantelope gave seem sound).
On a hunch, are you willing to try a different kernel? They should be in the ubuntu repo.
Check if the modules really loaded and if the Kernel had problems with them
Check it is loaded lsmod | grep i2c_dev
remember to reboot your system after loading the modules. And then check again that they are loaded with lsmod | grep i2c-dev lsmod | grep i2c-piix4
Check the Kernel Config open a terminal and check for errors related to the modules dmesg | grep i2c
dmesg - dumps kernel messages lsmod (lists modules) grep - gnu regular expressions | <-- pipe to chain commands together.
These could be the issues:
Module Configuration: The modules may not be configured correctly or might not be compatible with your specific hardware.
Kernel Configuration: The necessary support for I2C/SMBus may not be compiled into your kernel.
Hardware Compatibility: Your laptop's hardware might have some unique configuration or compatibility issues with OpenRGB.
Permissions: Ensure that you have the necessary permissions to access the I2C/SMBus interface. Sometimes, accessing these interfaces requires elevated privileges.
OpenRGB Compatibility: There might be an issue with the specific version of OpenRGB you're using, or it may not fully support your hardware.
Discord OpenRGB You can maybe ask questions here too, if you have specific details about you version of linux, etc. Usually someone has had the same problem. You may not want to use the latest version it maybe a specific version is more compatible. https://discord.com/invite/AQwjJPY
Linux Version Details cat /etc/os-release uname -a
instructions Install the i2c-tools package. Load the i2c-dev module: sudo modprobe i2c-dev
Create the i2c group if it does not already exist: sudo groupadd --system i2c
Add yourself to the i2c group: sudo usermod $USER -aG i2c
If you want you can load the i2c-dev module at boot: sudo touch /etc/modules-load.d/i2c.conf && sudo sh -c 'echo "i2c-dev" >> /etc/modules-load.d/i2c.conf'
Load the i2c driver for your chipset:
interesting notes from the site sudo modprobe i2c-i801
Which distribution do you want the module in? Mint is either debian or ubuntu based and garuda is arch based. Totally different kernel sets, but in each case it's most likely a package you can install. If not, it will be a kernel module compile and that's not so bad.
What does the arch wiki have on loading kernel modules?
If you are distribution agnostic, may I recommend a distribution that has an "advanced hardware support" (AHS) kernel that has way more drivers loaded. I use it as a rescue disk and can boot on all kinds of machines but have used this distribution.
Try this specific ISO and see if it boots up for you.
I've been running an OS since 1984 that has never failed, and never had a problem with OS updates. But I used to read about the weeping and gnashing of teeth in the Linux forums. Good luck.
[ + ] Cantaloupe
[ - ] Cantaloupe 1 point 2 weeksApr 28, 2024 00:20:58 ago (+1/-0)*
Basically:
sudo apt install libi2c-dev.
Then you may need to restart,
Then in a terminal you need to run the following
sudo modprobe i2c-dev
sudo modprobe i2c-piix4
(To load a module you could
sudo modprobe i2c-dev)
Then later make a permenant config
The driver is how the os talks to the device
Some details about the communication bus
I2C (Inter-Integrated Circuit; pronounced as “eye-squared-see” or “eye-two-see”), alternatively known as I2C or IIC, is a synchronous, multi-controller/multi-target (historically-termed as master/slave), single-ended, serial ... lower-speed peripheral ICs to processors and microcontrollers in short-distance, intra-board communication
a subset of I2C, defining a stricter usage. One purpose of SMBus
[ + ] 2Drunk
[ - ] 2Drunk [op] 0 points 2 weeksApr 28, 2024 08:49:38 ago (+0/-0)
sudo modprobe i2c-dev
sudo modprobe i2c-piix4
Appeared to do nothing. Still getting same error msg with OpenRGB.
[ + ] Dingo
[ - ] Dingo 0 points 1 weekApr 28, 2024 09:59:43 ago (+0/-0)
Curious quesiton. Are you using the USB iso boot, or are you post install? If post install, I'm assuming Linux Mint?
[ + ] 2Drunk
[ - ] 2Drunk [op] 0 points 1 weekApr 28, 2024 11:53:00 ago (+0/-0)
[ + ] Dingo
[ - ] Dingo 0 points 1 weekApr 28, 2024 12:10:17 ago (+0/-0)
On a hunch, are you willing to try a different kernel? They should be in the ubuntu repo.
[ + ] Cantaloupe
[ - ] Cantaloupe 0 points 1 weekApr 28, 2024 13:34:37 ago (+0/-0)*
Check it is loaded
lsmod | grep i2c_dev
remember to reboot your system after loading the modules. And then check again that they are loaded with lsmod | grep i2c-dev
lsmod | grep i2c-piix4
Check the Kernel Config
open a terminal and check for errors related to the modules
dmesg | grep i2c
dmesg - dumps kernel messages
lsmod (lists modules)
grep - gnu regular expressions
| <-- pipe to chain commands together.
These could be the issues:
Module Configuration:
The modules may not be configured correctly or might not be compatible with your specific hardware.
Kernel Configuration:
The necessary support for I2C/SMBus may not be compiled into your kernel.
Hardware Compatibility:
Your laptop's hardware might have some unique configuration or compatibility issues with OpenRGB.
Permissions:
Ensure that you have the necessary permissions to access the I2C/SMBus interface. Sometimes, accessing these interfaces requires elevated privileges.
OpenRGB Compatibility:
There might be an issue with the specific version of OpenRGB you're using, or it may not fully support your hardware.
Discord OpenRGB
You can maybe ask questions here too, if you have specific details about you version of linux, etc. Usually someone has had the same problem. You may not want to use the latest version it maybe a specific version is more compatible.
https://discord.com/invite/AQwjJPY
Linux Version Details
cat /etc/os-release
uname -a
I2C tools
sudo apt install i2c-tools
i2cdetect
or
i2cget i2cget <BUS> <CHIP-ADDR> <REG-ADDR>
code
https://gitlab.com/CalcProgrammer1/OpenRGB
instructions
Install the i2c-tools package.
Load the i2c-dev module: sudo modprobe i2c-dev
Create the i2c group if it does not already exist: sudo groupadd --system i2c
Add yourself to the i2c group: sudo usermod $USER -aG i2c
If you want you can load the i2c-dev module at boot: sudo touch /etc/modules-load.d/i2c.conf && sudo sh -c 'echo "i2c-dev" >> /etc/modules-load.d/i2c.conf'
Load the i2c driver for your chipset:
interesting notes from the site
sudo modprobe i2c-i801
sudo modprobe i2c-nct6775 - Secondary controller for motherboard LEDs (requires kernel patch)
-- requires a kernel patch for motherboard LEDs -- (but maybe not to just run
[ + ] Dingo
[ - ] Dingo 0 points 1 weekApr 28, 2024 09:55:03 ago (+0/-0)
What does the arch wiki have on loading kernel modules?
If you are distribution agnostic, may I recommend a distribution that has an "advanced hardware support" (AHS) kernel that has way more drivers loaded. I use it as a rescue disk and can boot on all kinds of machines but have used this distribution.
Try this specific ISO and see if it boots up for you.
Specific iso: MX-23.2_x64 “ahs”
From: https://mxlinux.org/download-links/
Maybe right now, but you can get there.
[ + ] paul_neri
[ - ] paul_neri 0 points 2 weeksApr 28, 2024 04:08:38 ago (+0/-0)
[ + ] Kozel
[ - ] Kozel 0 points 2 weeksApr 28, 2024 00:47:24 ago (+0/-0)
rc-service i2cmsmbus start
use this to translate to systemdick https://wiki.gentoo.org/wiki/OpenRC_to_systemd_Cheatsheet
[ + ] Sector2
[ - ] Sector2 0 points 2 weeksApr 28, 2024 00:03:49 ago (+0/-0)