{"id":22352065,"url":"https://github.com/bertreb/pimatic-hass","last_synced_at":"2025-07-30T07:32:01.097Z","repository":{"id":57324213,"uuid":"237014393","full_name":"bertreb/pimatic-hass","owner":"bertreb","description":"Pimatic plugin for making devices available in Home Assistant","archived":false,"fork":false,"pushed_at":"2023-06-21T12:08:48.000Z","size":165,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-20T14:49:49.822Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"CoffeeScript","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/bertreb.png","metadata":{"files":{"readme":"README.md","changelog":"HISTORY.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-29T15:22:05.000Z","updated_at":"2023-06-20T10:02:24.000Z","dependencies_parsed_at":"2024-11-20T14:38:46.995Z","dependency_job_id":"605ed9d6-7cc6-4a58-b259-e7fb7fd9c3bf","html_url":"https://github.com/bertreb/pimatic-hass","commit_stats":{"total_commits":86,"total_committers":1,"mean_commits":86.0,"dds":0.0,"last_synced_commit":"db302b95aab4585df0e528bedf290d1bd5db34f7"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertreb%2Fpimatic-hass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertreb%2Fpimatic-hass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertreb%2Fpimatic-hass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bertreb%2Fpimatic-hass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bertreb","download_url":"https://codeload.github.com/bertreb/pimatic-hass/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228106334,"owners_count":17870438,"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":[],"created_at":"2024-12-04T12:17:02.765Z","updated_at":"2024-12-04T12:17:03.588Z","avatar_url":"https://github.com/bertreb.png","language":"CoffeeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pimatic-hass\nPimatic plugin for making Pimatic devices available in Home Assistant\n\nThis plugin is using the mqtt discovery function of Home Assistant (Hass) to automaticaly add pimatic devices. For actionable devices like switch or light the Pimatic devices are synced with Home Assistant. For readonly devices the values are only exposed readable towards Home Assistant.\n\nThe communication between Pimatic and Hass is done via mqtt. You need to use a mqtt server that is preferably on your local netwerk.\n\n### Preparing Home Assistant\nThe whole setup of Home Assistant is out of scope of this plugin. So the starting point is a working Hass system with configurator installed/enabled.\nIn the configurator you open the file \"configuration.yaml\" and add the following lines.\n\n```\nmqtt:\n  broker: \u003cthe broker ip address\u003e\n  username: \u003cthe broker username\u003e\n  password: \u003cthe broker password\u003e\n  port: \u003cthe used broker port\u003e\n  discovery: true\n  discovery_prefix: hass\n  birth_message:\n    topic: 'hass/status'\n    payload: 'online'\n  will_message:\n    topic: 'hass/status'\n    payload: 'offline'\n```\nIt's important to use in Hass the same discovery_prefix you are using in the Pimatic plugin. Otherwise the automatic installation of devices will not work. The discover_topic and the first part of the birth_message/will-message topic must be the same. Default 'hass' is used.\nIf you change the discovery_prefix in the plugin config, you must also change these 3 values in home-assistant's configuratio.yaml.\n\nNow you can add the MQTT integration in Home Assistant.\nGoto to the settings menu and select integrations. Pusg the add button (+) and type mqtt.\nThe MQTT integration will showup and you can select and install it.\nFill in the MQTT server parameters from your mqtt server. Save and exit.\n\nThe preparation of Home Assistant is done!\n\n### Preparing Pimatic\nInstall the Hass plugin. In the plugin you configure the ip address, port, username and password of the mqtt server.\nIn the field \"discovery_prefix\" add the same name you used in the mqtt configuration of Hass or leave it empty to use the default (\"hass\")\nIf you want you can enable the debug option and read in the logfile log message screen extra debug info.\nAfter succesful installation and configuration of the Hass plugin you can add a Hass device.\n\n### Configuring the Hass plugin\n\n```\nmqttServer: The ip adress of the mqtt server\nmqttUsername: The username for the mqtt server\nmqttPassword: The password for the mqtt server\nmqttPort: The portnumber of the mqtt api\n  default: 1883\ndiscovery_prefix: The discovery topic for hass\n  default: \"hass\"\ndevice_prefix: A pimatic style prefix for all device to identify them\n  default: \"pimatic\"\ndebug: Debug mode. Writes debug messages to the pimatic log, if set to true.\n  default: false\n```\nThe discovery_prefix must be the same as used in the Hass configuration.yaml. The device_prefix is used to identify devices in HAss coming from this pimatic system.\n\n### Configuring the Hass device\n\nIn the Hass device you can add Pimatic devices by there pimatic-id. No further configuration is needed.\nAfter saving the device config, the the configuration is updated towards Home Assistant and per pimatic device that you added in the device config a compatible Hass device is created in Home Assistant.\n\nThe device type of a Pimatic device determines the Home assistant Device type that is created in Home Assistant device.\n\nCurrently the following types of Pimatic devices are supported.\n\n|Pimatic  |direction | Hass | States\n|------------|:--------:|----------|-------------------|\n|Switch   | 2-way   | Switch   | on/off\n|Presence | 1-way   | Binary   | motion (not) detected\n|Light    | 2-way   | Light    | light on/off, brightness\n|Contact  | 1-way   | Binary   | opened/closed\n|Sensor | 1-way   | Value   | all attributes\n|Variables| 1-way | Variable | variable value\n|Thermostat| 2-way | Thermostat | off/heat/auto, setpoint, temperature\n|Shutter| 2-way | Cover | up / down /stop\n|Alarmpanel| 2-way | Alarmpanel | disarm, arm (home, away or night)\n\n\nIf you add a device thats is not a switch, motion sensor, light or contact, a SensorDevice will be created for every attribute of that device.\nIf you want to use a specific set of variables, from for example different devices. You need to use a VariablesDevice. Add to the VariablesDevice the desired variables and add the VariableDevice (id) to the Hass device config.\n\nThe supported Thermostats are DummyHeatingThermostat (pimatic default) and DummyThermostat (pimatic-dummies).\nFor the Shutter a DummyShutter device can be used.\n\nFor the Alarmpanel a specific DummyAlarmPanel device is created in pimatic-dummies. With this device you can create an Alarm Panel in home-assistant. For more informatie see [pimatic-dummies](https://github.com/bertreb/pimatic-dummies).\n\n### Adding Pimatic devices in the Hass Gui\nIn Home Assistant the automatic created Pimatic devices can be added as a card via the 'configure UI' option.\nVia the add button (+) you can select a device type and search on device name.\n\nThe Hass device name is:\n```\n\u003chass device class\u003e.\u003cpimatic device_prefix\u003e_\u003cpimatic device-id\u003e[_\u003cpimatic attribute-id\u003e]\n```\nThe \"pimatic attribute-id\" is used for variables, button and sensor devices\n\nThe related Hass device friendly name is: (shows on the HAss gui)\n```\n\u003cpimatic device_prefix\u003e: \u003cpimatic device-id\u003e [.\u003cpimatic attribute-id\u003e]\n```\n\nFor the VariablesDevice or the SensorDevice the Hass device is\n```\nsensor.\u003cpimatic device_prefix\u003e_\u003cpimatic device-id\u003e_\u003cpimatic attribute/variable-id\u003e\n```\nIn the Hass Gui you can group sensors and variables on 1 card.\n\nWhen you remove a Pimatic device from the config, in Home Assistant the card will get yellow and show the message 'entity not available'. You need to remove the card if you want to get rid of this message. If you leave the card in the Gui the entity becomes active again when you add the same Pimatic device again to the config.\n\n### Multiple Pimatic systems\n\nIt is possible to connect multiple Pimatic systems to 1 Home Assistant. Per Pimatic system you install the plugin and configure devices as described above. Is Home Assistant all the devices from the different Pimatic sysyem are available. When you use the same pimatic-id's for the same type of device in different Pimatic systems, Hass will add a '\\_\\\u003cnumber\\\u003e' to the name. In this situation you need to check which hass device belongs to which Pimatic system.\n\n---\nThe minimum node requirement for this plugin is node v10!\n\nYou could backup Pimatic before you are using this plugin!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbertreb%2Fpimatic-hass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbertreb%2Fpimatic-hass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbertreb%2Fpimatic-hass/lists"}