{"id":15651731,"url":"https://github.com/lymanepp/ha-calibration","last_synced_at":"2025-04-30T20:05:14.639Z","repository":{"id":37957546,"uuid":"479209195","full_name":"lymanepp/ha-calibration","owner":"lymanepp","description":"Alternative to Home Assistant's 'compensation' component","archived":false,"fork":false,"pushed_at":"2025-04-28T06:08:59.000Z","size":53,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-30T20:03:49.520Z","etag":null,"topics":["calibration","home-assistant","integration","sensor"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lymanepp.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-04-08T01:54:10.000Z","updated_at":"2025-02-03T20:13:04.000Z","dependencies_parsed_at":"2024-07-17T04:32:12.583Z","dependency_job_id":"250aed6a-7be7-465f-a021-3041befd8fba","html_url":"https://github.com/lymanepp/ha-calibration","commit_stats":{"total_commits":11,"total_committers":2,"mean_commits":5.5,"dds":0.4545454545454546,"last_synced_commit":"905fa11ca490f146142d763ccb4cec4ec4552ab3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lymanepp%2Fha-calibration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lymanepp%2Fha-calibration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lymanepp%2Fha-calibration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lymanepp%2Fha-calibration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lymanepp","download_url":"https://codeload.github.com/lymanepp/ha-calibration/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251774895,"owners_count":21641731,"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":["calibration","home-assistant","integration","sensor"],"created_at":"2024-10-03T12:39:57.412Z","updated_at":"2025-04-30T20:05:14.606Z","avatar_url":"https://github.com/lymanepp.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [Calibration](https://github.com/lymanepp/ha-calibration)\n\nThe Calibration integration consumes the state from other sensors. It exports the calibrated value as state and the following values as attributes: `source_value`, `source`, `source_attribute` and `coefficients`.  A single polynomial, linear by default, is fit to the data points provided.\n\nThis is a fork of the Home Assistant Core [compensation](https://www.home-assistant.io/integrations/compensation/) integration created by [@petro31](https://github.com/petro31). It was forked to add these enhancements:\n1. Provide sane defaults for `unique_id` and `name`.\n2. Allow `device_class` and `unit_of_measurement` to be configured. This is especially useful when `attribute` is specified.\n3. Add auto-configuration of `device_class` when `attribute` is not specified. The `compensation` integration already partially supported that for `unit_of_measurement`.\n4. Allow hiding the `source` entity from Home Assistant.\n\n#2-4 have been submitted for integration in Home Assistant Core, but backward-compatibility constraints will prevent sane defaults from being integrated upstream.\n\n## Installation\n\n### Using [HACS](https://hacs.xyz/) (recommended)\n\nThis integration can be installed using HACS. To do it search for Calibration in the integrations section.\n\n### Manual\n\nTo install this integration manually you can either:\n\n* Use git:\n\n```sh\ngit clone https://github.com/lymanepp/ha-calibration.git\ncd ha-calibration\n# if you want a specific version checkout its tag\n# e.g. git checkout 1.0.0\n\n# replace $hacs_config_folder with your home assistant config folder path\ncp -r custom_components $hacs_config_folder\n```\n\n* Download the source release and extract the custom_components folder into your home assistant config folder.\n\nFinally, you need to restart Home Assistant before you can use it.\n\n## Configuration\n\nTo enable the calibration integration, add the following lines to your `configuration.yaml`:\n\n```yaml\n# Example configuration.yaml entry\ncalibration:\n  garage_humidity:\n    source: sensor.garage_humidity_uncalibrated\n    degree: 1\n    hide_source: true\n    data_points:\n      - [38.68, 32.0]\n      - [79.89, 75.0]\n```\n\n## Options\n\n***source** `string` `(required)`*\n\u003e The entity to monitor.\n\n***attribute** `string` `(optional)`*\n\u003e The source attribute to monitor.\n\n***hide_source** `boolean` `(optional, default: false)`*\n\u003e Hide the source entity in Home Assistant. If specified with `attribute`, it will hide the `source` entity as attributes cannot be hidden individually.\n\n***name** `string` `(optional)`*\n\u003e Set the name for the new sensor. By default, a human-readable version of the configuration section name will be used (**Garage Humidity** in the example).\n\n***device_class** `string` `(optional, default: from source)`*\n\u003e Set the device class for the new sensor. By default, the device class from the monitored entity will be used (except when `attribute` is specified). A list of device classes is available [here](https://www.home-assistant.io/integrations/sensor).\n\n***unit_of_measurement** `string` `(optional, default: from source)`*\n\u003e Defines the units of measurement of the sensor, if any. By default, the unit of measurement from the source will be used (except when `attribute` is specified).\n\n***state_class** `string` `(optional, default: from source)`*\n\u003e Set the state class for the new sensor. By default, the state class from the monitored entity will be used (except when `attribute` is specified). The typical state class will be 'measurement'.\n\n***data_points** `list` `(required)`*\n\u003e The collection of data point conversions with the format `[uncalibrated_value, calibrated_value]`. e.g., `[38.68, 32.0]`. The number of required data points is equal to the polynomial `degree` + 1. For example, a linear calibration (with `degree: 1`) requires at least 2 data points.\n\n***degree** `integer` `(optional, default=1)`*\n\u003e The degree of a polynomial. e.g., Linear calibration (y = x + 3) has 1 degree, Quadratic calibration (y = x2 + x + 3) has 2 degrees, etc.\n\n***precision** `integer` `(optional, default=2)`*\n\u003e Defines the precision of the calculated values.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flymanepp%2Fha-calibration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flymanepp%2Fha-calibration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flymanepp%2Fha-calibration/lists"}