Skip to content

Home Assistant integration for the Waveshare UPS for Raspberry Pi.

Notifications You must be signed in to change notification settings

uvjim/rpi_waveshare_ups

Repository files navigation

GitHub Release GitHub Downloads (latest release) GitHub Pre-release GitHub Downloads (pre-release)

Waveshare UPS for Raspberry Pi

Home Assistant integration for the Waveshare UPS for Raspberry Pi.

Disclaimer

I have no real knowledge of how the HAT works or necessarily what the numbers mean. The integration was only created so that I could create an automation to safely shut the Pi down in the event of an extended power outage.

Description

This integration can be used to get information over i2c for the Waveshare UPS for the Raspberry Pi. The integration assumes that you have followed the instructions for enabling i2c on your Raspberry Pi. These instructions will differ depending on how you are running Home Assistant.

If you are running Home Assistant OS see here.

If you are running Raspberry Pi OS see here.

Installation

The integration can be installed using HACS. The integrations is not available in the default repositories, so you will need to add the URL of this repository as a custom repository to HACS (see here).

Alternatively you can use the button below.

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Entities Provided

Binary Sensors

Name Enabled by default Additional Information Comments
Battery State ✔️ Whether the battery is charging or not This is based on the current being >= the minimum charging value

Sensors

Name Enabled by default Additional Information Comments
Battery Level ✔️ Percentage of power left in the battery
Current ✔️
Load Voltage ✔️ Voltage on V- (load side)
Power ✔️
PSU Voltage ✔️ Load Voltage + Shunt Voltage
Shunt Voltage ✔️ Voltage between V+ and V- across the shunt

Setup

Clicking the Add Integration button, in Settings -> Device & Services, will cause the integration to start looking for available devices on i2c.

Initial Setup Screen

Once the detection process has finished the following information will be required.

Selection Screen

  • Name - friendly name for the configuration entry
  • Address of the HAT - if only a single address was found it will be selected. If multiple addresses are found the first is selected and you'll need to pick the correct one to use.
  • Version of the HAT - defaults to B. You should pick the version that you have.
  • Update interval - defaults to 10s. Defines how often to query the UPS.

On successful set up the following screen will be seen detailing the device.

Final Setup Screen

Configurable Options

It is possible to configure the following options for the integration.

Configure Options

  • Update interval - defaults to 10s. Defines how often to query the UPS.
  • Mimimum current value for charging - defaults to -100mA. In my usage I've found that whilst the documentation for the HAT states a negative current means that the Pi is being powered by the batteries it can drop below 0 on normal use. This value allows you to mitigate this.