this post was submitted on 19 Jul 2024
26 points (96.4% liked)

Linux Gaming

15224 readers
176 users here now

Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.

This page can be subscribed to via RSS.

Original /r/linux_gaming pengwing by uoou.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 1 year ago
MODERATORS
 

Hello! I have recently begun gaming on Nobara Linux and overall, my experience has been quite good. The biggest issue I’ve experienced so far is not being able to control my Lian Li SL V2 fan controller. The fans connected to the controller are only recognized in my BIOS once I run L-Connect 3 in windows but if my system is shut down, they are no longer seen. I have seen this https://github.com/EightB1ts/uni-sync and a plugin for OpenRGB, but keep running into compilation errors and/or lack of maintaining the project. Any advice is very appreciated!

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 6 points 3 months ago (7 children)

For the fan speed controll via BIOS, I ran into the same problem where my SL120s didn't show up - this was the solution I finally found https://www.reddit.com/r/lianli/comments/k37m9y/sl120_not_recognized_by_bios_try_this

Get yourself a splitter for the 4 pin fan cables. Disconnect one set of fans from the controller. Connect the unplugged set of fans directly to the splitter. Connect the controller to the splitter. Connect the splitter to the motherboard.

Your bios should now see your fans. You can create custom fans curves and dynamically control the speed of the fans.

It may not solve the problems you're seeing, but it seemed worth sharing.

[–] gazoinksboe 2 points 3 months ago* (last edited 3 months ago) (1 children)

Thank you so much for the advice but the issue with the Lian Li Uni Fan v2 is that the fan connectors are proprietary and only fit into the controller. The only thing I could split is from the controller and I don’t think that would really change my current situation.

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago) (1 children)

Sorry for the delayed response - I saw what you meant in the v2 manual about the proprietary connector and thought I would just leave it at that, but I had another thought.

It sounds like you do have some access to Windows/L-Connect, have you switched the fan profiles to sync with the MB? This should stick after a shutdown and not need to be re-set, you will lose the ability to create fan curves in L-Connect:

Also, are you connecting the UNI HUB directly to the MB pins, or is it running through a splitter or extender? It looks like the UNI HUB v2 does have a sense pin (the v1 does NOT, that's the reason for the workaround I have to use); some additional extenders and splitters are missing the sense pin, so even though you can control the fan speed from BIOS, you can't see the RPMs in BIOS so it might look like it's not recognized.

[–] gazoinksboe 2 points 3 months ago (1 children)

Thank you for the continued effort to help! If I boot into windows and enable the “MB RPM Sync”, the fans are recognized by the BIOS and ramp up and down as needed. This setting does not persist after a shutdown tho. The only way I’ve found to consistently have the fans work as intended after a shutdown is to unplug the USB cable from the Lian Li controller, which kills RGB. I have the PWM connector from the controller going straight into one of the connectors on my mobo. I can tell that after a shutdown, the fans just rotate on their lowest setting, until I open L-Connect 3 again on windows or disconnect the usb port. I’m attempting to implement this: https://github.com/kryzaach/Lian-Li-Unifan-Sync but think I have it placed in the wrong location, as it errors out immediately.

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago) (1 children)

Geeze, that's extremely frustrating... they really switched up the headaches between v1 and v2. I'm sorry I couldn't be more help! Hopefully you can find a software solution to get it going.

I don't mean to repeat troubleshooting you've already done with the python script, apologies in advance if this is stuff you've already done. If it's erroring immediately, you may want to double check that you have pyUSB in place and UDEV rules to get access to the device if you're not running the script as root.

edit: You may also need to check that your Vendor ID and Product ID match what the script was written for, given that there seem to be some different iterations of Lian Li's hardware just in general.

[–] gazoinksboe 1 points 3 months ago* (last edited 3 months ago) (1 children)

Thank you so much for continuing to try and help. It’s greatly appreciated. I am very new to Linux so while I can do some basics, this is very helpful. I installed pyUSB but still get an error when running the script. I have the script placed in my home folder. Should it be elsewhere? The error I get is “No module named ‘usb’. I did adjust the script to have my controller’s proper identification so feels like I’m missing a small piece of the puzzle!

[–] [email protected] 1 points 3 months ago (1 children)

I'm not familiar with Nobara, but I can at least show how I would install pyUSB for use in Debian:

If you follow the instructions exactly as in the readme, it will error:

$ pip install pyusb
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.
    
    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

Instead, I would create a virtual environment (I'm using virtualenv instead of venv)

$ virtualenv unihub_test

Then activate the environment and run the install with pip

$ source ~/unihub_test/bin/activate
(unihub_test) $ pip install pyusb
Collecting pyusb
  Using cached pyusb-1.2.1-py3-none-any.whl.metadata (2.2 kB)
Using cached pyusb-1.2.1-py3-none-any.whl (58 kB)
Installing collected packages: pyusb
Successfully installed pyusb-1.2.1

(unihub_test) $ python3
>>> import usb #this should not error
>>> exit()
(unihub_test) $ deactivate
$ 

Without the actual hub, that's as far as I can go I think - but maybe this will help give you some options and documentation to explore!

[–] gazoinksboe 2 points 3 months ago

Thank you. This is great info. I will give this a shot when I can.

load more comments (5 replies)