Git Product home page Git Product logo

i8kutils's People

Contributors

corporal9736 avatar pkern avatar uriesk avatar vitorafsr avatar vysnet avatar wer-wolf avatar x-hgg-x avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

i8kutils's Issues

can't find package i8k::thermal

I am using Arch linux (6.9.4-zen1-1-zen) on dell G15 5511 and installed tcl / tcllib build and ran i8kctl / i8kmon both shows following error:

can't find package i8k::thermal
while executing
"package require i8k::thermal"
(file "/usr/bin/i8kmon" line 27)

any help will be greatly appreciated

Whitelist Dell Latitude 7320

Hello and thank you so much for your work. I was seriously fed up with the BIOS controlled fan, how dare they? :)

I've finally gotten i8kutils to work on my Latitude 7320 and would like to request it being put on the official whitelist. Here are the lines I added to the module code

	{
		.ident = "Dell Latitude 7320",
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
			DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Latitude 7320"),
		},
		.driver_data = (void *)&i8k_fan_control_data[I8K_FAN_34A3_35A3],
	},

Not sure if the fan control data is correct. I've just copied it from the other Latitudes.

Last but not least, here's my dmidecode output. If you like, I'd be happy to know how you can read the fan control data from the log. I couldn't :)

dmidecode.log

All the best

i8kmon doesn't change fan state

Hello @Wer-Wolf,

I have installed this fork, but it doesn't seem to work. I am using Arch Linux with kernel version 6.9.1-arch1-1 on a Dell G15 5511 laptop.

Here is the testing configuration I'm using (located at /etc/i8kmon.conf):

set config(timeout)     2

# Only update fan speed when thresholds where exceeded
set config(ondemand)    0

# Number of temperature configurations
set config(num_configs) 5

# Temperature thresholds: {fan_speeds low_ac high_ac low_batt high_batt}
set config(0)   {{2 2}  -1  50  -1  50}
set config(1)   {{2 2}  45  55  45  55}
set config(2)   {{2 2}  50  65  50  65}
set config(3)   {{2 2}  60  70  60  70}
set config(4)   {{2 2}  65 128  65 128}

Output of sudo i8kmon -v command:

[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'config entry 0: battery = -1 °C - 50 °C, ac = -1 °C - 50 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'config entry 1: battery = 45 °C - 55 °C, ac = 45 °C - 55 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'config entry 2: battery = 50 °C - 65 °C, ac = 50 °C - 65 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'config entry 3: battery = 60 °C - 70 °C, ac = 60 °C - 70 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'config entry 4: battery = 65 °C - 128 °C, ac = 65 °C - 128 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [info] 'power status: running on ac power (Adapter 0: on-line)'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'temperature above state 0 threshold (50 °C)'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'temperature above state 1 threshold (55 °C)'
[Tue May 21 21:09:24 EEST 2024] [i8kmon] [debug] 'switched to state 2'
[Tue May 21 21:09:26 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:26 EEST 2024] [i8kmon] [debug] 'switched to state 2'
[Tue May 21 21:09:28 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:28 EEST 2024] [i8kmon] [debug] 'switched to state 2'
[Tue May 21 21:09:30 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:31 EEST 2024] [i8kmon] [debug] 'switched to state 2'
[Tue May 21 21:09:33 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:33 EEST 2024] [i8kmon] [debug] 'switched to state 2'
[Tue May 21 21:09:35 EEST 2024] [i8kmon] [debug] 'temperature: 57 °C'
[Tue May 21 21:09:35 EEST 2024] [i8kmon] [debug] 'switched to state 2'

Output of i8kctl command:

fan 1 state: 1
fan 2 state: 1
temperature 1: 57 °C
temperature 2: 53 °C
temperature 3: 58 °C
temperature 4: 53 °C
temperature 5: 37 °C
temperature 6: 53 °C

Output of systemctl status i8kmon.service:

● i8kmon.service - DELL notebook fan control
     Loaded: loaded (/usr/lib/systemd/system/i8kmon.service; disabled; preset: disabled)
     Active: active (running) since Tue 2024-05-21 21:08:42 EEST; 17s ago
       Docs: man:i8kmon(1)
    Process: 47611 ExecStartPre=/usr/bin/i8kctl mode1 manual (code=exited, status=1/FAILURE)
   Main PID: 47612 (tclsh)
      Tasks: 2 (limit: 18841)
     Memory: 2.3M (peak: 2.9M)
        CPU: 186ms
     CGroup: /system.slice/i8kmon.service
             └─47612 tclsh /usr/bin/i8kmon

May 21 21:08:42 archlinux systemd[1]: Starting DELL notebook fan control...
May 21 21:08:42 archlinux i8kctl[47611]: i8kctl: fan 1 mode controls not found: couldn't open "/sys/class/hwmon/hwmon4/pwm1_enable": no such file or directory
May 21 21:08:42 archlinux systemd[1]: Started DELL notebook fan control.

No effect on fans for XPS 9315 on Ubuntu 23.10

Hi @Wer-Wolf ,

Thank you for creating this fork of i8kutils and your work on the linux community!

I've been trying to control the fans on my XPS 13 but to no avail.
I tried both the vitorafsr version of i8kutils and your fork but the fans doesn't seem to react in both cases.

In particuliar, running i8kctl on the original i8kutlils returns :
1.0 1.1 CXGGY04 -1 -1 -1 -1 -1 -1 -1

However running your fork doesn't return any output.
Of note, I have successfully loaded the i8k kernel module with modprobe dell-smm-hwmon ignore_dmi=1 and disabled secure boot.

I have noticed however that running dellfan doesn't give any result either despite the fact that the fans are detected by lm-sensors.

I'm a bit lost to be honest, do you have any ideas ?

Fans cycling on XPS 15 9550

Hi @Wer-Wolf,

Thank you for creating this fork of i8kutils!

I'm trying to use in on my XPS 15 9550 and I've got everything installed. I want to make sure it was working by using a config that should have the fans running on full power at all times. This doesn't seem to be working though, and instead cycles between high and nothing. I'm guessing that it's because the BIOS is still controlling the fans. I am running 'dell-bios-fan-control 0' before running the service, but I'm not using this line ExecStartPre=/usr/bin/i8kctl mode1 manual, because it didn't work on my system.

The config is:

          set config(0)   {{0 0}  -1  0  -1  0}
          set config(1)   {{0 1}  2  2  2 2}
          set config(2)   {{1 1}  3  3  3  3}
          set config(3)   {{2 2}  4 4 4 4}

Any ideas?

Setting i8kutils up on Nixos

I'm trying to install i8kutils on NixOS. As far as I can tell, there's no existing package for it and the i8k interface doesn't seem to be part of Nix's kernel .

That means, the "OG" i8kutils won't work anyway (at least not without rolling my own kernel), this fork here should work in principle, but there's no nix configuration in here.

I'll try to create a configuration, but would be glad for support (for Nix and i8kutils itself).

NixOS supports out-of-tree packages, that can be installed directly from Github: https://discourse.nixos.org/t/how-to-install-package-from-github/444

A simple .nix file and a config-snippet should be enough.

All of this is pretty vague as I don't know exactly, what to do yet.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.