Skip to content

eifinger/hass-foldingathomecontrol

Repository files navigation

hass-foldingathomecontrol

GitHub Release GitHub Activity License

hacs HACS Installs Project Maintenance

Community Forum

Component to integrate with Folding@Home.

This component will set up the following platforms.

Platform Description
button Pause and Unpause Folding@Home clients.
sensor Show stats from Folding@Home clients.
select Select Power Setting Folding@Home clients.

example configuration

Setup

Follow this guide in order to allow other clients on your local network to access your Folding@Home client.

Installation

HACS

The easiest way to add this to your Homeassistant installation is using HACS. And then follow the instructions under Configuration below.

Manual

  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 foldingathomecontrol.
  4. Download all the files from the custom_components/foldingathomecontrol/ directory (folder) in this repository.
  5. Place the files you downloaded in the new directory (folder) you created.
  6. Restart Home Assistant
  7. Choose:
    • Add foldingathomecontrol: to your HA configuration.
    • In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "FoldingAtHomeControl"

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

custom_components/foldingathomecontrol/.translations/en.json
custom_components/foldingathomecontrol/__init__.py
custom_components/foldingathomecontrol/button.py
custom_components/foldingathomecontrol/config_flow.py
custom_components/foldingathomecontrol/const.py
custom_components/foldingathomecontrol/foldingathomecontrol_client.py
custom_components/foldingathomecontrol/foldingathomecontrol_device.py
custom_components/foldingathomecontrol/manifest.json
custom_components/foldingathomecontrol/select.py
custom_components/foldingathomecontrol/sensor.py
custom_components/foldingathomecontrol/services.py
custom_components/foldingathomecontrol/services.yaml
custom_components/foldingathomecontrol/timeparse.py

Services

foldingathomecontrol.pause

Pause one or all slots.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost
slot The slot to pause. Be sure to include the 0 in front if needed. Leave this out to pause all slots. 01

foldingathomecontrol.unpause

Unpause one or all slots.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost
slot The slot to unpause. Be sure to include the 0 in front if needed. Leave this out to unpause all slots. 01

foldingathomecontrol.shutdown

Shut down the client.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost

foldingathomecontrol.request_work_server_assignment

Request a new assignment from the work server.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost

foldingathomecontrol.set_power_level

Set the power level.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost
power_level The power level to set. One of: LIGHT,MEDIUM,FULL

foldingathomecontrol.send_command

Set the power level.

Name Description Example
address The IP address or hostname of the client. It can be found as part of the integration name. localhost
command The command to send. slot-info

Contributions are welcome

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