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
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
Example code and projects for FeatherS2 and FeatherS2 Neo

FeatherS2 & FeatherS2 Neo This repo is a collection of code, firmware, and files

Unexpected Maker 5 Jan 01, 2023
Using a GNSS module (Beidou + GPS) and the mapquest static map API

Using a GNSS module (Beidou + GPS) and the mapquest static map API

Kongduino 1 Nov 04, 2021
uOTA - OTA updater for MicroPython

Update your device firmware written in MicroPython over the air. Suitable for private and/or larger projects with many files.

Martin Komon 25 Dec 19, 2022
Volkswagen ID component for Home Assistant

Volkswagen ID component for Home Assistant This folder contains both a generic Python 3 library for the Volkswagen ID API and a component for Home Ass

55 Jan 07, 2023
Modeling and Simulation of Satellite Servicing Manipulators

Modeling and Simulation of Satellite Servicing Manipulators Final Project for the course ENPM662: Introduction to Robot Modeling (Fall 2021). This pro

Adarsh M 1 Jan 24, 2022
This allows you to record keyboard and mouse input, and play it back using pynput.

Record and Play with Python! This allows you to record keyboard and mouse input, and play it back (with looping) using pynput. It allows for automatio

George Jensen 45 Jan 02, 2023
Scripts for measuring and displaying thermal behavior on Voron 3D printers

Thermal Profiling Measuring gantry deflection and frame expansion This script runs a series of defined homing and probing routines designed to charact

Jon Sanders 30 Nov 27, 2022
Pinion — Nice-looking interactive diagrams for KiCAD PCBs

Pinion — Nice-looking interactive diagrams for KiCAD PCBs Pinion is a simple tool that allows you to make a nice-looking pinout diagrams for your PCBs

Jan Mrázek 297 Jan 06, 2023
Python apps to assist with Gas Blending

Welcome to DiveTools Gas Blending This tool is for testing and educational use. It is not intended to confirm the mix of breathing gases. If this tool

Tucker 7 Sep 18, 2022
Code for the paper "Planning with Diffusion for Flexible Behavior Synthesis"

Planning with Diffusion Training and visualizing of diffusion models from Planning with Diffusion for Flexible Behavior Synthesis. Guided sampling cod

Michael Janner 310 Jan 07, 2023
For use with an 8-bit parallel TFT touchscreen using micropython

ILI9341-parallel-TFT-driver-for-micropython For use with an 8-bit parallel TFT touchscreen using micropython. Many thanks to prenticedavid and his MCU

3 Aug 02, 2022
This Home Assistant custom component adding support for controlling Midea dehumidifiers on local network.

This custom component for Home assistant adds support for Midea dehumidifier appliances via the local area network. homeassistant-midea-dehumidifier-l

Nenad Bogojevic 91 Dec 28, 2022
Simple Weather Check base on Hefeng api, Work on raspberry Pi

Simple Weather Check base on Hefeng api, Work on raspberry Pi

Retr0mous 28 Sep 17, 2022
A module for cross-platform control of the mouse and keyboard in python that is simple to install and use.

PyUserInput PyUserInput is a group project so we've moved the project over to a group organization: https://github.com/PyUserInput/PyUserInput . That

Paul Barton 1k Dec 27, 2022
An open source operating system designed primarily for the Raspberry Pi Pico, written entirely in MicroPython

PycOS An open source operating system designed primarily for the Raspberry Pi Pico, written entirely in MicroPython. "PycOS" is an combination of the

8 Oct 06, 2022
Make your MacOS keyboard brightness fade in and out

Make your MacOS keyboard brightness fade in and out. (It's working depends on the Kbrightness file, which only works for 2015 Macs, so this will only work on 2015 Macs.)

1 Dec 16, 2021
Setup DevTerm to be a cool non-GUI device

DevTerm hobby project I bought this amazing device: DevTerm A-0604. It has a beefy ARM processor, runs a custom version of Armbian, embraces Open Sour

Alex Shteinikov 9 Nov 17, 2022
Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

TAHRI Ahmed R. 72 Dec 24, 2022
A 3rd party Moonraker component to create timelapse of 3D prints.

A 3rd party Moonraker component to create timelapse of 3D prints.

Mainsail-Crew 166 Dec 26, 2022