homeassistant-powercalc

Custom component to calculate estimated power consumption of lights and other appliances

https://github.com/bramstroker/homeassistant-powercalc

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 278 committers (0.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.9%) to scientific vocabulary

Keywords

consumption energy-monitor hacktoberfest hacs home-assistant homeassistant metering power virtual-sensors

Keywords from Contributors

climate energy-system-model thermostat zigbee2mqtt tuya ts0601 energy-systems spzb0001 battery sensor
Last synced: 6 months ago · JSON representation

Repository

Custom component to calculate estimated power consumption of lights and other appliances

Basic Info
  • Host: GitHub
  • Owner: bramstroker
  • License: mit
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 53.1 MB
Statistics
  • Stars: 1,236
  • Watchers: 12
  • Forks: 313
  • Open Issues: 8
  • Releases: 391
Topics
consumption energy-monitor hacktoberfest hacs home-assistant homeassistant metering power virtual-sensors
Created over 4 years ago · Last pushed 6 months ago
Metadata Files
Readme License

README.md

Version Downloads Contributors hacs_badge hacs installs Code style: black Code style: black Coverage Status Sonar quality gate BuyMeACoffee

PowerCalc is a versatile custom component for Home Assistant that estimates power consumption for devices like lights, fans, smart speakers, and more—especially those without built-in power meters. It acts as a virtual energy monitor, using advanced strategies to calculate power usage. For light entities, PowerCalc analyzes factors such as brightness, hue, saturation, and color temperature to deliver accurate consumption estimates. For other devices, it offers extensive configuration possibilities.

Additionally, PowerCalc includes a powerful measurement utility, enabling users to assess their devices' power usage and contribute custom power profiles to the growing PowerCalc library.

Preview

"Buy Me A Coffee"

Go to the Quick Start for installation instruction.

Owner

  • Name: Bram Gerritsen
  • Login: bramstroker
  • Kind: user
  • Location: Rhenen, The Netherlands
  • Company: Emico

Passionate web developer. Like to work on Home automation projects in my spare time.

GitHub Events

Total
  • Fork event: 68
  • Create event: 267
  • Commit comment event: 1
  • Issues event: 302
  • Release event: 45
  • Watch event: 233
  • Delete event: 260
  • Member event: 1
  • Issue comment event: 1,724
  • Push event: 2,589
  • Pull request review event: 250
  • Pull request review comment event: 228
  • Pull request event: 1,085
Last Year
  • Fork event: 68
  • Create event: 267
  • Commit comment event: 1
  • Issues event: 302
  • Release event: 45
  • Watch event: 233
  • Delete event: 260
  • Member event: 1
  • Issue comment event: 1,724
  • Push event: 2,589
  • Pull request review event: 250
  • Pull request review comment event: 228
  • Pull request event: 1,085

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 4,551
  • Total Committers: 278
  • Avg Commits per committer: 16.371
  • Development Distribution Score (DDS): 0.385
Past Year
  • Commits: 1,787
  • Committers: 77
  • Avg Commits per committer: 23.208
  • Development Distribution Score (DDS): 0.464
Top Committers
Name Email Commits
Bram b****n@e****l 2,799
GitHub Actions 4****] 331
renovate[bot] 2****] 242
pre-commit-ci[bot] 6****] 221
CV d****t 90
@RubenKelevra c****d@g****m 74
Crowdin Bot s****t@c****m 32
Jort 6****l 20
Michal Bartak m****l@g****m 19
Dr-Seltsam 4****m 18
Stefan Gries 1****s 18
Daniel O'Connor d****r@g****m 18
Marius 3****b 16
dewbot6 d****s@c****t 15
CM000n s****e@g****m 14
nepozs 5****s 14
alvinchen1 2****1 12
Marcus Voß 4****6 10
Miguel m****2 10
misa1515 6****5 10
Sergio s****o@m****m 9
naamah75 w****r@n****t 9
Chris Hallgren c****n@g****m 8
marthubner 8****r 8
Linus l****n@g****m 8
matteobreschig 6****g 8
Brian Egge b****e@g****m 7
Marc Geurts g****c@h****m 7
Morten Trab m****n@t****k 7
Stuart Pearson 1****4 7
and 248 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 346
  • Total pull requests: 2,047
  • Average time to close issues: 14 days
  • Average time to close pull requests: 2 days
  • Total issue authors: 205
  • Total pull request authors: 169
  • Average comments per issue: 4.83
  • Average comments per pull request: 1.31
  • Merged pull requests: 1,798
  • Bot issues: 7
  • Bot pull requests: 721
Past Year
  • Issues: 179
  • Pull requests: 1,259
  • Average time to close issues: 10 days
  • Average time to close pull requests: 2 days
  • Issue authors: 100
  • Pull request authors: 77
  • Average comments per issue: 4.17
  • Average comments per pull request: 1.04
  • Merged pull requests: 1,102
  • Bot issues: 3
  • Bot pull requests: 495
Top Authors
Issue Authors
  • bramstroker (34)
  • michalk-k (21)
  • RubenKelevra (16)
  • Mariusthvdb (15)
  • dagobert (10)
  • erkr (10)
  • KlaraJa (4)
  • Stephan-4711 (4)
  • github-actions[bot] (3)
  • Largelos (3)
  • Gloomyeye (3)
  • wigster (3)
  • TheSerapher (3)
  • AlexKusnezov (3)
  • RN-Say (2)
Pull Request Authors
  • bramstroker (622)
  • renovate[bot] (480)
  • github-actions[bot] (141)
  • pre-commit-ci[bot] (100)
  • RubenKelevra (61)
  • dagobert (61)
  • michalk-k (23)
  • dewbot6 (16)
  • stuartp44 (15)
  • Dr-Seltsam (11)
  • dxmnkd316 (11)
  • barndawgie (11)
  • CloCkWeRX (11)
  • Mariusthvdb (11)
  • Morpheus361 (10)
Top Labels
Issue Labels
bug (209) enhancement (96) Stale (52) group (31) config-flow (29) model-library (25) question (14) autodiscovery (11) measure-tool (9) energy-sensor (7) lut strategy (7) fixed strategy (5) powerprofile (4) translations (3) multi_switch strategy (3) documentation (3) utility-meter (3) linear strategy (2) wled strategy (2) subprofile (2) daily-fixed (2) ha-deprecation (1) profile-website (1) composite strategy (1) dependencies (1) workflows (1)
Pull Request Labels
dependencies (478) powerprofile (455) bug (333) enhancement (238) lightmodel (146) measure-tool (78) documentation (57) Stale (14) config-flow (9) translations (7) model-library (6) utility-meter (6) release (5) multi_switch strategy (4) autodiscovery (4) group (3) playbook (2) subprofile (2) generic-model-id (2) github-action (2) daily-fixed (2) light-model (2) skip-changelog (2)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 385
proxy.golang.org: github.com/bramstroker/homeassistant-powercalc
  • Versions: 385
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 6 months ago

Dependencies

.github/workflows/generate-model-list.yml actions
  • EndBug/add-and-commit v7 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/hacs-validate.yml actions
  • actions/checkout v2 composite
  • hacs/action main composite
  • home-assistant/actions/hassfest master composite
.github/workflows/publish-measure-image.yml actions
  • actions/checkout v2 composite
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/metadata-action v3 composite
  • docker/setup-buildx-action v1 composite
  • docker/setup-qemu-action v1 composite
  • home-assistant/actions/helpers/version master composite
.github/workflows/release-drafter.yml actions
  • actions/checkout v2 composite
  • release-drafter/release-drafter v5 composite
.github/workflows/release.yml actions
  • actions/checkout v2 composite
  • home-assistant/actions/helpers/version master composite
  • svenstaro/upload-release-action v1-release composite
.github/workflows/test.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v1 composite
  • coverallsapp/github-action master composite
.github/workflows/validate-lut-files.yml actions
  • actions/checkout v2 composite
.github/workflows/validate-model-json.yml actions
  • actions/checkout v2 composite
  • bramstroker/json-schema-validator master composite
utils/measure/Dockerfile docker
  • python 3.10-slim-buster build
.github/scripts/lut_validator/package-lock.json npm
  • @hapi/hoek 6.2.4
  • @hapi/hoek 8.5.1
  • @hapi/joi 14.5.0
  • @hapi/marker 1.0.0
  • @hapi/topo 3.1.6
  • chalk 5.0.1
  • commander 3.0.2
  • csval 1.1.1
  • enjoi 6.0.2
  • isemail 3.2.0
  • node-gzip 1.1.2
  • papaparse 5.3.1
  • picomatch 2.3.0
  • punycode 2.1.1
  • readdirp 3.6.0
.github/scripts/lut_validator/package.json npm
  • chalk ^5.0.1
  • csval ^1.1.1
  • node-gzip ^1.1.2
  • readdirp ^3.6.0
.github/scripts/supported_models/requirements.txt pypi
  • pytablewriter ==0.61.0
utils/measure/ocr/requirements.txt pypi
  • Pillow ==9.1.0
  • numpy ==1.22.3
  • opencv-python ==4.5.5.64
  • packaging ==21.3
  • pyparsing ==3.0.8
  • pytesseract ==0.3.9
.github/workflows/code-quality.yml actions
  • JetBrains/qodana-action v2023.2 composite
  • actions/checkout v3 composite
.github/workflows/lint.yml actions
  • actions/cache v2 composite
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • chartboost/ruff-action v1 composite
  • snok/install-poetry v1 composite
.github/workflows/stale.yml actions
  • actions/stale v8 composite
docs/requirements.txt pypi
  • readthedocs-sphinx-search ==0.1.1
  • sphinx ==5.3.0
  • sphinx-tabs ==3.4.0
  • sphinx_rtd_theme ==1.1.1
poetry.lock pypi
  • aiohttp 3.8.5 develop
  • aiosignal 1.3.1 develop
  • anyio 4.0.0 develop
  • astral 2.2 develop
  • async-timeout 4.0.3 develop
  • atomicwrites-homeassistant 1.4.1 develop
  • attrs 23.1.0 develop
  • awesomeversion 22.9.0 develop
  • bcrypt 4.0.1 develop
  • black 23.7.0 develop
  • certifi 2023.7.22 develop
  • cffi 1.15.1 develop
  • cfgv 3.4.0 develop
  • charset-normalizer 3.2.0 develop
  • ciso8601 2.3.0 develop
  • click 8.1.7 develop
  • colorama 0.4.6 develop
  • colored 1.4.4 develop
  • coverage 7.3.0 develop
  • croniter 1.4.1 develop
  • cryptography 41.0.3 develop
  • distlib 0.3.7 develop
  • execnet 2.0.2 develop
  • filelock 3.12.3 develop
  • freezegun 1.2.2 develop
  • frozenlist 1.4.0 develop
  • greenlet 2.0.2 develop
  • h11 0.14.0 develop
  • home-assistant-bluetooth 1.10.3 develop
  • homeassistant 2023.9.0 develop
  • homeassistant-stubs 2023.9.0 develop
  • httpcore 0.17.3 develop
  • httpx 0.24.1 develop
  • identify 2.5.27 develop
  • idna 3.4 develop
  • ifaddr 0.2.0 develop
  • iniconfig 2.0.0 develop
  • jinja2 3.1.2 develop
  • lru-dict 1.2.0 develop
  • markupsafe 2.1.3 develop
  • mock-open 1.4.0 develop
  • multidict 6.0.4 develop
  • mypy 1.5.1 develop
  • mypy-extensions 1.0.0 develop
  • nodeenv 1.8.0 develop
  • numpy 1.23.2 develop
  • orjson 3.9.2 develop
  • packaging 23.1 develop
  • paho-mqtt 1.6.1 develop
  • pathspec 0.11.2 develop
  • pip 23.2.1 develop
  • pipdeptree 2.11.0 develop
  • platformdirs 3.10.0 develop
  • pluggy 1.3.0 develop
  • pre-commit 3.4.0 develop
  • pycparser 2.21 develop
  • pydantic 1.10.12 develop
  • pyjwt 2.8.0 develop
  • pylint-per-file-ignores 1.2.1 develop
  • pyopenssl 23.2.0 develop
  • pytest 7.3.1 develop
  • pytest-aiohttp 1.0.4 develop
  • pytest-asyncio 0.21.0 develop
  • pytest-cov 4.1.0 develop
  • pytest-freezer 0.4.8 develop
  • pytest-homeassistant-custom-component 0.13.54 develop
  • pytest-picked 0.4.6 develop
  • pytest-socket 0.6.0 develop
  • pytest-sugar 0.9.7 develop
  • pytest-test-groups 1.0.3 develop
  • pytest-timeout 2.1.0 develop
  • pytest-unordered 0.5.2 develop
  • pytest-xdist 3.3.1 develop
  • python-dateutil 2.8.2 develop
  • python-slugify 4.0.1 develop
  • pytz 2023.3.post1 develop
  • pyyaml 6.0.1 develop
  • requests 2.31.0 develop
  • requests-mock 1.11.0 develop
  • respx 0.20.2 develop
  • ruff 0.0.287 develop
  • setuptools 68.2.0 develop
  • six 1.16.0 develop
  • sniffio 1.3.0 develop
  • sqlalchemy 2.0.15 develop
  • syrupy 4.2.1 develop
  • termcolor 2.3.0 develop
  • text-unidecode 1.3 develop
  • tqdm 4.66.1 develop
  • types-croniter 1.4.0.1 develop
  • types-pytz 2023.3.0.1 develop
  • typing-extensions 4.7.1 develop
  • ulid-transform 0.8.1 develop
  • urllib3 2.0.4 develop
  • virtualenv 20.24.4 develop
  • voluptuous 0.13.1 develop
  • voluptuous-serialize 2.6.0 develop
  • voluptuous-stubs 0.1.1 develop
  • yarl 1.9.2 develop
pyproject.toml pypi
  • homeassistant *
  • python ^3.11
utils/measure/poetry.lock pypi
  • ruff 0.0.272 develop
  • aiodns 3.0.0
  • aiohttp 3.8.4
  • aiohttp-client-cache 0.6.1
  • aiosignal 1.3.1
  • ansicon 1.89.0
  • anyio 3.7.0
  • appdirs 1.4.4
  • async-timeout 4.0.2
  • asyncclick 8.1.3.4
  • attrs 21.4.0
  • blessed 1.20.0
  • brotli 1.0.9
  • cattrs 23.1.2
  • certifi 2023.5.7
  • cffi 1.15.1
  • chardet 5.1.0
  • charset-normalizer 3.1.0
  • colorama 0.4.6
  • frozenlist 1.3.3
  • homeassistant-api 4.1.1.post2
  • idna 3.4
  • importlib-metadata 6.6.0
  • inquirer 3.1.3
  • itsdangerous 2.1.2
  • jinxed 1.2.0
  • multidict 6.0.4
  • numpy 1.25.0
  • opencv-python 4.7.0.72
  • packaging 23.1
  • phue 1.2
  • pillow 9.5.0
  • pycares 4.3.0
  • pycparser 2.21
  • pycryptodome 3.18.0
  • pydantic 1.9.0
  • pytesseract 0.3.10
  • python-decouple 3.8
  • python-editor 1.0.4
  • python-forge 18.6.0
  • python-kasa 0.5.1
  • readchar 4.0.5
  • requests 2.31.0
  • requests-cache 0.9.8
  • setuptools 67.8.0
  • simplejson 3.19.1
  • six 1.16.0
  • sniffio 1.3.0
  • tinytuya 1.12.8
  • tuyapower 0.2.0
  • typing-extensions 4.6.3
  • url-normalize 1.4.3
  • urllib3 2.0.3
  • wcwidth 0.2.6
  • yarl 1.9.2
  • zipp 3.15.0
utils/measure/pyproject.toml pypi
utils/visualize/requirements.txt pypi
  • Pillow ==9.4.0
  • colour ==0.1.5
  • colour-science ==0.4.2
  • contourpy ==1.0.6
  • cycler ==0.11.0
  • fonttools ==4.38.0
  • imageio ==2.25.1
  • kiwisolver ==1.4.4
  • matplotlib ==3.6.2
  • numpy ==1.24.1
  • packaging ==22.0
  • pandas ==1.5.2
  • pyparsing ==3.0.9
  • python-dateutil ==2.8.2
  • pytz ==2022.7
  • scipy ==1.10.0
  • six ==1.16.0
  • typing_extensions ==4.5.0