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
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
gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits.

gdsfactory 3.5.5 gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits. It is build on top of phidl gdspy and klayou

147 Jan 04, 2023
It is a serial communicator(controller, receiver...), communicate with sensor LP20 which is a laser ranger.

Intro It is a serial communicator(controller, receiver...), communicate with sensor LP20 which is a laser ranger. Its datasheet is contained in this r

3 Sep 19, 2022
A Home Assistant integration for Solaredge inverters

A Home Assistant integration for Solaredge inverters. Supports multiple inverters chained through RS485.

Seth 50 Dec 23, 2022
CircuitPython Driver for Adafruit 24LC32 I2C EEPROM Breakout 32Kbit / 4 KB

Introduction CircuitPython driver for Adafruit 24LC32 I2C EEPROM Breakout Dependencies This driver depends on: Adafruit CircuitPython Bus Device Regis

foamyguy 0 Dec 20, 2021
Universal Xiaomi MIoT integration for Home Assistant

Xiaomi MIoT Raw 简体中文 | English MIoT 协议是小米智能家居从 2018 年起推行的智能设备通信协议规范,此后凡是可接入米家的设备均通过此协议进行通信。此插件按照 MIoT 协议规范与设备通信,实现对设备的状态读取及控制。

1.9k Jan 02, 2023
A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

15 Oct 14, 2022
Drobo Status is a python program that will connect to your Drobo and return JSON data regarding your Drobo

This is a simple python script that will run a docker container to pull data from Drobo. It will give information like (Name, serial, firmware, disk-total, disk-used, disk-free and individual disk st

Biofects 1 Jan 15, 2022
Various programs in Atari BASIC for #FujiNet for Atari 8-bit

FujiNet Various programs in Atari BASIC for #FujiNet for Atari 8-bit FujiNet-3D Tic Tac Toe In 1978, Scott Adams wrote a 3-D Tic Tac Toe game, for pla

Kay Savetz 2 Jan 01, 2022
The ABR Control library is a python package for the control and path planning of robotic arms in real or simulated environments.

The ABR Control library is a python package for the control and path planning of robotic arms in real or simulated environments. ABR Control provides API's for the Mujoco, CoppeliaSim (formerly known

Applied Brain Research 277 Jan 05, 2023
PyTorch implementation of paper "MT-ORL: Multi-Task Occlusion Relationship Learning" (ICCV 2021)

MT-ORL: Multi-Task Occlusion Relationship Learning Official implementation of paper "MT-ORL: Multi-Task Occlusion Relationship Learning" (ICCV 2021) P

Panhe Feng 12 Oct 11, 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
A Python class for controlling the Pimoroni RGB Keypad for Raspberry Pi Pico

rgbkeypad A Python class for controlling the Pimoroni RGB Keypad for the Raspberry Pi Pico. Compatible with MicroPython and CircuitPython. keypad = RG

Martin O'Hanlon 43 Nov 11, 2022
A Simple Python KeyLogger App

✨ Kurulum Uygulamayı bilgisayarınızda kullana bilmek için bazı işlemler yapmanız gerekiyor. Aşağıdaki yönlendirmeleri takip ederek bunu yapabilirsiniz

VorteX 7 Jun 11, 2022
Micropython-wifimanager-esp8266 - Simple Wifi Manager for ESP8266 using MicroPython

micropython-wifimanager-esp8266 Simple Wifi Manager for ESP8266 using MicroPytho

Abhinuv Nitin Pitale 1 Jan 04, 2022
Easyeda2kicad.py - Convert any LCSC components (including EasyEDA) to KiCad library

easyeda2kicad.py A Python script that convert any electronic components from LCSC or EasyEDA to a Kicad library Installation git clone https://github.

uPesy Electronics 150 Jan 06, 2023
An open source two key macro-pad modeled to look like a cartoony melting popsicle

macropopsicle An open source two key macro-pad modeled to look like a cartoony melting popsicle. Build instructions Parts List -1x Top case half (3D p

17 Aug 18, 2022
AERO 421: Spacecraft Attitude, Dynamics, and Control Final Project.

AERO - 421 Final Project Redevelopment Spacecraft Attitude, Dynamics, and Control: Simulation to determine and control a satellite's attitude in LEO.

Gagandeep Thapar 3 Dec 16, 2022
Programmable Rainbow Redstone Computer

Programmable Rainbow Redstone Computer Table of contents What is it? Program flasher How to use it What is it? PRRC is Programmable Rainbow Redstone C

Fern H 2 Jun 07, 2022
Tools and documentation to aid in modifying the ADI ADALM Pluto firmware

Pluto firmware modifications This repository contains tools and documentation to aid in modifying the ADI ADALM Pluto firmware. Extraction of the Plut

Daniel Estévez 28 Dec 21, 2022