-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] Charging Profiles #80
Comments
Sure. The big question is how this is implemented on the TCC side. Unfortunately, TUXEDO has implemented multiple ways of communicating with their different drivers, so depending on whether your hardware actually comes from uniwill, clevo or schenker, the user space has to do different things to talk to the hardware. The newer drivers tend to use sysfs though, which is usually quite nice to work with. If you want I can help you with reverse engineering TCC. Usually, looking at the commit history is a good starting point, especially for recently added features. |
So, I've taken a look at the TCC source code. The first result of my research is, that 'charging profiles' is a little too broad, since there are actually 3 distinct charging related features supported by TCC (see also: https://www.tuxedocomputers.com/en/Battery-charging-profiles-inside-the-TUXEDO-Control-Center.tuxedo):
The second result is: All of those options are accessible via sysfs, luckily. For reference, the following files where relevant:
Feature 1:
Feature 2:
Feature 3:
Do you think there is further information required to implement this feature(s)? If no, how could/would/should I start implementing a prototype for the (first) feature(s)? Unfortunately, my hardware currently exposes only feature 1, so that's the only one I can test (possibly feature 3 is also available, but only with the new tuxedo-drivers kernel drivers, not the (now archived) tuxedo-keyboard drivers). |
Thanks for looking into this!
Yes, that is already a very good starting point. Tuxedo-rs is very modular, so you can start implementing the first abstraction layer in |
First of all: This project is simply amazing!
Now, onto my feature request itself: more recent tuxedo control center versions allow to set so called 'charging profiles', which limit battery capacity used, in order to prolong battery life, for example in mostly stationary usage scenarios.
Is support for charging profiles something that would fit with this project?
(I haven't really looked at the code so far, but if there's agreement on how integration of this feature should look like, I would be totally open to take a stab at implementing it)
The text was updated successfully, but these errors were encountered: