Description
Edited to be more explicit.
in /lib/python3/dist-packages/argonone/init.py the method _bus_write needs to be modified like this:
From:
def _bus_write(self, value: int, register: int = _SMBUS_REGISTER):
# Could raise IOError, according to "official" scripts
self._bus.write_byte_data(_SMBUS_ADDRESS, register, int(value))
To:
def _bus_write(self, value: int, register: int = _SMBUS_REGISTER):
# Could raise IOError, according to "official" scripts
self._bus.write_byte_data(_SMBUS_ADDRESS, int(value), register)
Not exactly sure why this is reversed, but it only works like this in my case...
Command guide for argonone case: https://github.com/Argon40Tech/Argon-ONE-i2c-Codes
The initial version is sending the value 0x00 (register value which is 0xd3 in my case but it seems to be irrelevant) which turns off the fan being 0%.
The I2C command for argon case is
i2cset -y _SMBUS_DEV _SMBUS_ADDRESS value
i2cset -y 1 0x1a 0x00
i2cset -y 1 0x1a 0x0A
i2cset -y 1 0x1a 0x32
...
i2cset -y 1 0x1a 0x64
Where 0x00, 0x0A, 0x32 ... 0x64 are the hexadecimal values for the fan speed percentage: 0%, 10%, ... 100%
You can send this command from terminal and check for FAN activation (it can be heard even at low revolutions).
Are you sure the initial version spins the fan? Maybe they changed the call for V2 case?
The display part is working without problems, IO errors not returned, but fan does not turn at all