Home Assistant custom integration to fetch data from Powerpal

Overview

Powerpal custom component for Home Assistant

GitHub Release GitHub Activity

hacs

Component to integrate with powerpal.

This repository and integration is not affiliated with Powerpal.

This component will set up the following platforms and entities.

Platform Description
sensor Show info from Powerpal Readings API.
Entity Description
sensor.powerpal_live_consumption Current reading from Powerpal Readings API (updated every minute).
sensor.powerpal_total_consumption Total consumption recorded by Powerpal - entity can be used in Energy Dashboard.

sensor

energy

Automatic Installation

  1. Install HACS
  2. Within HA go to HACS > Integrations > ... (in top right corner) > Custom Repositories
  3. Add URL: https://github.com/mindmelting/hass-powerpal, Category: Integration
  4. Go to the integrations page inside your home assistant install
  5. Search for Powerpal
  6. Install, enter your Powerpal API Authorization Key and Powerpal Device ID.

Manual Installation

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

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

custom_components/powerpal/translations/en.json
custom_components/powerpal/__init__.py
custom_components/powerpal/config_flow.py
custom_components/powerpal/const.py
custom_components/powerpal/manifest.json
custom_components/powerpal/sensor.py

Configuration is done in the UI

Contributions are welcome

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


Comments
  • How to obtain authorisation key

    How to obtain authorisation key

    Is your feature request related to a problem? Please describe. It seems very difficult to obtain the authorisation key.

    Describe the solution you'd like Please provide a solution on how to obtain this authorisation key simply

    question 
    opened by cdouet 8
  • add python script to retrieve apikey over BLE

    add python script to retrieve apikey over BLE

    After reverse engineering the Powerpal BLE comms I didn't think to bother with any of the REST API because that had been covered pretty well by a couple of other github projects.

    But on coming back to it I realised that there was one step that is still a bit of a pain and mystery, retrieving the apikey! (though I believe now you can maybe apply for it, this is probably still more convenient)

    The Apikey is actually stored locally on the Powerpal, behind the 'UUID' (59DA0009-12F4-25A6-7D4F-55961DCE4205) characteristic.

    This is a super simple python script to retrieve it, and only requires the Powerpal MAC address (can easily be found by scanning for bluetooth devices), and the pairing code given to you with your Powerpal (can also be found within the Powerpal Application)

    I don't currently have access to a Powerpal to test this on, so would really appreciate if you could give it a go and let me know if it works (it's also possible the data that comes back might need to have it's bytes reversed)

    Can run by adding your mac and pairing key as arguments, or by changing them in the script: python3 utils/retrieve_api_key.py "12:34:56:78:90:AB" 123123

    opened by WeekendWarrior1 3
  • Consumption chart seems to be linked to time of sync, not time of usage

    Consumption chart seems to be linked to time of sync, not time of usage

    Version of the custom_component

    f7e8b30

    Describe the bug

    The Total Consumption chart seems to be calculated based on the time of syncing the data, not the actual time of usage. This shows it fairly clearly: image

    Compare with actual usage per hour from Powerpal app: image

    Is this a bug or a limitation of the API?

    opened by maxw3l 3
  • The link to Documentation is incorrect

    The link to Documentation is incorrect

    Version of the custom_component

    Configuration

    
    Add your logs here.
    
    

    Describe the bug

    A clear and concise description of what the bug is.

    The link has a typo in it, missing final "p" in powerpal

    https://github.com/mindmelting/hass-poweral

    Debug log

    
    Add your logs here.
    
    
    opened by tmugan 2
  • Any way to add data from powerpal server prior to the integration installation?

    Any way to add data from powerpal server prior to the integration installation?

    Hi There,

    Thanks so much for this integration.

    Is there a way to load pervious data to HA, prior to having installed the component?

    Obviously I can download the CSV file, but how do Add it to the newly recorded data in HA?

    Thanks in advance

    opened by botts7 2
  • Advice on integration - App and HA totals are out by 1kWh

    Advice on integration - App and HA totals are out by 1kWh

    Hi,

    Firstly thanks for creating this integration, I have been able to get it working within my setup which is great. I am however wanting some advice on how often it communications with 'readings' as it doesn't seem to be 'live' and the total power consumption is out by nearly 1kWh (compared with the app)

    Is there anything I am missed or need to adjust? or is this expected as it's not providing accurate real time data?

    question 
    opened by tgcowell 2
Releases(v0.2.2)
  • v0.2.2(May 28, 2022)

    What's Changed

    • Update to the GitHub URLs by @StephenGoodall in https://github.com/mindmelting/hass-powerpal/pull/11

    New Contributors

    • @StephenGoodall made their first contribution in https://github.com/mindmelting/hass-powerpal/pull/11

    Full Changelog: https://github.com/mindmelting/hass-powerpal/compare/v0.2.1...v0.2.2

    Source code(tar.gz)
    Source code(zip)
  • v0.2.1(Dec 13, 2021)

    What's Changed

    • chore: Update README to advise on usage by @mindmelting in https://github.com/mindmelting/hass-powerpal/pull/6
    • chore: Update to use extra state attributes by @mindmelting in https://github.com/mindmelting/hass-powerpal/pull/9

    Full Changelog: https://github.com/mindmelting/hass-powerpal/compare/v0.2.0-beta...v0.2.1

    Source code(tar.gz)
    Source code(zip)
  • v0.2.0-beta(Oct 5, 2021)

    What's Changed

    • chore: Update to namespaced lib and updated README.md by @mindmelting in https://github.com/mindmelting/hass-powerpal/pull/1
    Source code(tar.gz)
    Source code(zip)
Owner
Lawrence
Lawrence
Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller

Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller This util allows to drive RGB keyboard light on Lenovo Legion 5 Pro 2021 Laptop Requireme

36 Dec 16, 2022
A python file which I wrote to allow the Dorna Robots API to draw an Image on a 3D plane

Dorna-Robotics-Internship Code In the directory "Code" is a python file which I wrote to allow the Dorna Robots API to draw an Image on a 3D plane. I

Stephen Otto 2 Dec 06, 2021
A Fear and Greed index visualiser for Bitcoin on a SSD1351 OLED Screen

We're Doomed - A Bitcoin Fear and Greed index OLED visualiser Doom is a first-person-shooter from the 1990s. The health status monitor was one of the

VEEB 19 Dec 29, 2022
Hardware-accelerated ROS2 packages for camera image processing.

Isaac ROS Image Pipeline Overview This metapackage offers similar functionality as the standard, CPU-based image_pipeline metapackage, but does so by

NVIDIA Isaac ROS 52 Dec 15, 2022
Ansible tools for operating and managing fleets of Blinksticks in harmony using the Blinkstick Python library.

Ansible tools for operating and managing fleets of Blinksticks in harmony using the Blinkstick Python library.

Greg Robinson 3 Aug 10, 2022
Code reimplementation of some papers published in SAIL-Lab

SAIL SAIL-Lab统一代码库 Motivation 创建这个项目的动机最早来源于实验室组内成员相互Debug代码的时候遇到的麻烦。

Jianwen Chen 8 Nov 15, 2022
Claussoft Personal Digital Assistant

Claussoft Personal Digital Assistant Install on Linux $ sudo apt update $ sudo apt install espeak ffmpeg libespeak1 portaudio19-dev $ pip install -r r

Christian Clauss 3 Dec 14, 2022
What if home automation was homoiconic? Just transformations of data? No more YAML!

radiale what if home-automation was also homoiconic? The upper or proximal row contains three bones, to which Gegenbaur has applied the terms radiale,

Felix Barbalet 21 Mar 26, 2022
Real-time Coastal Monitoring at the University of Hawaii at Manoa

Coastal Monitoring at the University of Manoa Source code for Beaglebone/RPi-based data loggers, shore internet gateways, and web server. Software dev

Stanley Lio 7 Dec 07, 2021
Raspberry Pi Pico and LoRaWAN from CircuitPython

Raspberry Pi Pico and LoRaWAN from CircuitPython Enable LoRaWAN communications on your Raspberry Pi Pico or any RP2040-based board using CircuitPython

Alasdair Allan 15 Oct 08, 2022
ModbusTCP2MQTT - Sungrow & SMA Solar Inverter addon for Home Assistant

ModbusTCP2MQTT Sungrow & SMA Solar Inverter addon for Home Assistant This addon will connect directly to your Inverter using Modbus TCP. Support model

Teny Smart 40 Dec 21, 2022
Micro Displays for Raspberry Pi

micro-displays Micro Displays for Raspberry Pi Why? I'm super bored in lockdown. Add a Raspberry Pi 400 and a few tiny displays... The top half of the

ig 291 Jul 06, 2022
The project is an open-source and low-cost kit to get started with underactuated robotics.

Torque Limited Simple Pendulum Introduction The project is an open-source and low-cost kit to get started with underactuated robotics. The kit targets

34 Dec 14, 2022
A script that publishes power usage data of iDrac enabled servers to an MQTT broker for integration into automation and power monitoring systems

iDracPowerMonitorMQTT This script publishes iDrac power draw data for iDrac 6 enabled servers to an MQTT broker. This can be used to integrate the pow

Lucas Zanchetta 10 Oct 06, 2022
Simple python3 implementation of microKanren with lots of type annotations for clarity

MicroKanren-py This is (yet another) python implementation of microKanren. It's a reasonably 1:1 translation of the code provided in the paper, but ev

Erik Derohanian 3 Dec 10, 2022
Hook and simulate global keyboard events on Windows and Linux.

keyboard Take full control of your keyboard with this small Python library. Hook global events, register hotkeys, simulate key presses and much more.

BoppreH 3.2k Dec 30, 2022
Using a raspberry pi, we listen to the coffee machine and count the number of coffee consumption

A typical datarootsian consumes high-quality fresh coffee in their office environment. The board of dataroots had a very critical decision by the end of 2021-Q2 regarding coffee consumption.

dataroots 51 Nov 21, 2022
A simple program to make MSI Modern 15 speaker and microphone mute led work.

MSI Modern 15 sound led fixup for linux A simple program to fix the MSI Modern 15 speaker and microphone mute LEDs. Installation Requirements pulsectl

Seyed Danial Movahed 4 Oct 18, 2022
Kwcpu - An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores.

kwcpu An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores. kwcpu is provided as a Rainmeter skin. By default

Jay Oster 2 Nov 07, 2022
LED effects plugin for klipper

This plugin allows Klipper to run effects and animations on addressable LEDs, such as Neopixels, WS2812 or SK6812.

Julian Schill 238 Jan 04, 2023