{"id":24642490,"url":"https://github.com/domectrl/ha-slow_pwm","last_synced_at":"2026-05-18T11:41:08.565Z","repository":{"id":177548620,"uuid":"649777710","full_name":"domectrl/ha-slow_pwm","owner":"domectrl","description":"Slow PWM integration to modulate binary output in homeassistant","archived":false,"fork":false,"pushed_at":"2025-01-13T00:07:44.000Z","size":123,"stargazers_count":0,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-25T13:11:52.618Z","etag":null,"topics":["hacs-integration","homeassistant","modulation","pwm","slow-pwm","switch"],"latest_commit_sha":null,"homepage":"https://github.com/antonverburg/ha_slow_pwm","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/domectrl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-06-05T15:59:48.000Z","updated_at":"2025-01-04T07:16:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"a26ff9f5-79a8-495b-9f07-76c560cecb9a","html_url":"https://github.com/domectrl/ha-slow_pwm","commit_stats":null,"previous_names":["antonverburg/ha_slow_pwm","antonverburg/ha-slow_pwm","domectrl/ha-slow_pwm"],"tags_count":1,"template":false,"template_full_name":"ludeeus/integration_blueprint","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domectrl%2Fha-slow_pwm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domectrl%2Fha-slow_pwm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domectrl%2Fha-slow_pwm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domectrl%2Fha-slow_pwm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/domectrl","download_url":"https://codeload.github.com/domectrl/ha-slow_pwm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244619453,"owners_count":20482418,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacs-integration","homeassistant","modulation","pwm","slow-pwm","switch"],"created_at":"2025-01-25T13:11:55.839Z","updated_at":"2026-05-18T11:41:00.175Z","avatar_url":"https://github.com/domectrl.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Slow PWM integration\n\n[![GitHub Release][releases-shield]][releases]\n[![GitHub Activity][commits-shield]][commits]\n[![License][license-shield]](LICENSE)\n\n[![hacs][hacsbadge]][hacs]\n![Project Maintenance][maintenance-shield]\n\n[![Discord][discord-shield]][discord]\n[![Community Forum][forum-shield]][forum]\n\n**This integration will set up the following platforms.**\n\nPlatform | Description\n-- | --\n`number` | The SlowPWM integration can be used to control one or multiple digital switches in an analog control algorithm. The switches will be controlled by pulse width modulation (PWM, see https://en.wikipedia.org/wiki/Pulse-width_modulation). This enables the usage of digital switches in modulated modes. This is typically useful in slow systems like floor heater or boiler heater controller systems. The [PID controller][pid_controller] and the [PID thermostat][pid_thermostat] can use this number as regulated output.\n\n## Installation\n\n### HACS (Preferred)\n1. [Add](http://homeassistant.local:8123/hacs/integrations) the custom integration repository: https://github.com/antonverburg/ha-slow_pwm\n2. Select `Slow PWM` in the Integration tab and click `download`\n3. Restart Home Assistant\n4. Done!\n\n### Manual\n1. Using the tool of choice open the directory (folder) for your HA configuration (where you find `configuration.yaml`).\n1. If you do not have a `custom_components` directory (folder) there, you need to create it.\n1. In the `custom_components` directory (folder) create a new folder called `slow_pwm`.\n1. Download _all_ the files from the `custom_components/slow_pwm/` directory (folder) in this repository.\n1. Place the files you downloaded in the new directory (folder) you created.\n1. Restart Home Assistant\n\n## Configuration via user interface:\n* In the user interface go to \"Configuration\" -\u003e \"Integrations\" click \"+\" and search for \"Slow PWM\"\n* For a description of the configuration parameters, see [Configuration parameters](#configuration-parameters)\n\n## YAML Configuration\n\nAlternatlively, this integration can be configured and set up manually via YAML\ninstead. To enable the Integration sensor in your installation, add the\nfollowing to your `configuration.yaml` file:\n\n```yaml\n# Example configuration.yaml entry\nnumber:\n  - platform: slow_pwm\n    name: Floorheater living room\n    outputs:\n      - \"switch.living_room_group1\"\n``` \n\n### Configuration parameters\n- name: Name of the slow_pwm. \n  \u003e required: true | type: string  \n- outputs: `entity_id`'s for switches, must be toggle devices. When multiple outputs are selected, the range of 0..100% will be shared over the multiple switches. For example, with 2 switches at 50% output only the first switch will be on full time, at 75% the first switch will be on 100% of the time, and the second 50%.\n  \u003e required: true | type: multiple strings\n- minimum: Minimal value of the slow_pwm number. Timed output will be normalized between minimum and maximum.\n  \u003e required: false | default: 0 | type: float\n- maximum: Maximal value of the slow_pwm number. Timed output will be normalized between minimum and maximum.\n  \u003e required: false| default: 100 | type: float\n- cycle_time: Cycle time for the PWM cycle.\n  \u003e required: false | default: \"{'minutes': 30}\" | type: time_period\n- step: Step value. Smallest value `0.001`.\n  \u003e required: false | type: float | default: 1\n- mode: Control how the number should be displayed in the UI. Can be set to `box` or `slider` to force a display mode.\n  \u003e required: false | type: string | default: '\"auto\"'\n- unique_id: Unique id to be able to configure the entity in the UI.\n  \u003e required: false | type: string\n\n### Full configuration example\n\n```yaml\nnumber:\n  - platform: slow_pwm\n    name: Floorheater living room\n    outputs:\n      - \"switch.living_room_group1\"\n      - \"switch.living_room_group2\"\n    minimum: 10\n    maximum: 200\n    cycle_time:  {'hours':0, 'minutes':20, 'seconds': 00}\n    minimal_switch_time: {'hours':0, 'minutes':0, 'seconds': 30}\n    step: 3\n    mode: \"auto\"\n    unique_id: \"MyUniqueID_1234\"\n```\n\n## Contributions are welcome!\n\nIf you want to contribute to this please read the [Contribution guidelines](CONTRIBUTING.md)\n\n***\n\n[commits-shield]: https://img.shields.io/github/commit-activity/y/antonverburg/ha-slow_pwm.svg?style=for-the-badge\n[commits]: https://github.com/antonverburg/ha-slow_pwm/commits/main\n[hacs]: https://hacs.xyz/\n[hacsbadge]: https://img.shields.io/badge/HACS-Custom-orange.svg?style=for-the-badge\n[discord]: https://discord.gg/Qa5fW2R\n[discord-shield]: https://img.shields.io/discord/330944238910963714.svg?style=for-the-badge\n[forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg?style=for-the-badge\n[forum]: https://community.home-assistant.io/\n[license-shield]: https://img.shields.io/github/license/antonverburg/ha-slow_pwm.svg?style=for-the-badge\n[maintenance-shield]: https://img.shields.io/badge/maintainer-antonverburg-blue.svg?style=for-the-badge\n[releases-shield]: https://img.shields.io/github/release/antonverburg/ha-slow_pwm.svg?style=for-the-badge\n[releases]: https://github.com/antonverburg/ha-slow_pwm/releases\n[pid_controller]: https://github.com/antonverburg/ha-pid_controller\n[pid_thermostat]: https://github.com/antonverburg/ha-pid_thermostat\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdomectrl%2Fha-slow_pwm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdomectrl%2Fha-slow_pwm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdomectrl%2Fha-slow_pwm/lists"}