Component supports: Argon ONE Raspberry Pi 4 Case, Argon ONE Raspberry Pi 3 Case, Argon Fan HAT.
Requires Home Assistant 2026.7.0 or newer and direct access to the Raspberry Pi's GPIO and I2C hardware. Enable I2C before installing the integration; see the community guide for the HassOS I2C Configurator add-on.
Add Misiu/argon40 as a custom repository in HACS (category: Integration), then
install Argon40. Alternatively, copy the entire custom_components/argon40
directory from this repository into your Home Assistant configuration directory.
Include all files and the brand directory. The resulting layout should include:
custom_components/argon40/__init__.py
custom_components/argon40/const.py
custom_components/argon40/manifest.json
custom_components/argon40/services.yaml
custom_components/argon40/brand/
Add this entry to configuration.yaml, then restart Home Assistant:
argon40:Configuration uses YAML; there is no setup flow in the UI. If setup fails, check Home Assistant's logs for the I2C error and verify that the hardware is accessible from your Home Assistant installation.
The integration sets the initial fan speed to 10% and exposes two actions:
| Action | Required data | Effect |
|---|---|---|
argon40.set_fan_speed |
speed: integer from 0 to 100 |
Send a fan speed command; 0 stops the fan. |
argon40.set_mode |
always_on: boolean |
Select always-on mode (true) or the default mode (false). |
For example, use Developer Tools > Actions:
action: argon40.set_fan_speed
data:
speed: 40action: argon40.set_mode
data:
always_on: trueTemperature control requires your own automation. You can get a temperature sensor from the System monitor integration, or configure a command-line sensor:
command_line:
- sensor:
name: CPU Temp
unique_id: cpu_temp
command: "cat /sys/class/thermal/thermal_zone0/temp"
unit_of_measurement: "°C"
value_template: "{{ value | multiply(0.001) | round(1) }}"This example sets the fan to 40% after the temperature stays above 50°C for one minute. Add your own cooling and startup rules as needed; this example does not turn the fan down again or restore a speed after restarting Home Assistant.
automation:
- alias: "Set fan speed"
triggers:
- trigger: numeric_state
entity_id: sensor.cpu_temp
above: 50
for:
minutes: 1
actions:
- action: argon40.set_fan_speed
data:
speed: 40After a successful command, the integration fires argon40_event with either
speed or always_on in its event data. These events describe the command sent;
they do not report measured fan speed. Button double-tap detection is not
implemented.
If you want to contribute to this please read the Contribution guidelines
