/argon40

Home Assistant support for Argon ONE Pi 3 & 4 cases and Argon Fan HAT

Primary LanguagePythonMIT LicenseMIT

Argon ONE Pi 3 & 4 Cases and Fan HAT support for Home Assistant

GitHub Release GitHub Activity License

GitHub CRON Workflow Status GitHub PUSH Workflow Status

hacs Project Maintenance BuyMeCoffee

Component supports: Argon ONE Raspberry Pi 4 Case, Argon ONE Raspberry Pi 3 Case, Argon Fan HAT.

example

Installation

  1. Using the tool of choice open the directory (folder) for your HA configuration (where you find configuration.yaml).
  2. If you do not have a custom_components directory (folder) there, you need to create it.
  3. In the custom_components directory (folder) create a new folder called argon40.
  4. Download all the files from the custom_components/argon40/ directory (folder) in this repository.
  5. Place the files you downloaded in the new directory (folder) you created.
  6. Restart Home Assistant
  7. In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "Argon40" (not yet supported)
  8. Add argon40: to your configuration.yaml

Using your HA configuration directory (folder) as a starting point you should now also have this:

custom_components/argon40/__init__.py
custom_components/argon40/const.py
custom_components/argon40/manifest.json
custom_components/argon40/services.yaml

Configuration is done via configuration.yaml

Config

  1. Add CPU Temperature sensor:
sensor:
  - platform: command_line
    name: CPU Temp
    command: "cat /sys/class/thermal/thermal_zone0/temp"
    unit_of_measurement: "°C"
    value_template: "{{ value | multiply(0.001) | round(1) }}"
  1. Add automation:
automation:
  - alias: "Set fan speed"
    trigger:
      platform: numeric_state
      entity_id: sensor.cpu_temp
      above: 50.0
      for:
        minutes: 1
    action:
      - service: argon40.set_fan_speed
        data:
          speed: 40

Bonus - button double-tap detection

automation:
  - alias: "Argon40 button double-tap"
    trigger:
      platform: event
      event_type: argon40_event
      event_data:
        action: double-tap
    action:
      - service: persistent_notification.create
        data:
          title: "Argon 40"
          message: "Button was double-tapped"

Contributions are welcome!

If you want to contribute to this please read the Contribution guidelines