Skip to main content

pypglab

About

An asynchronous Python library to communicate with PG LAB Electronics devices over MQTT.

This library was created for Home Assistant integrations of PG LAB Electronics.

Features

  • Discover devices
  • Control relays (turn on/off)
  • Monitor relays status (on/off)
  • Control shutters (open/close/pause)
  • Monitor shutters status (open/opening/closed/closing)
  • Receiving device internal sensor update

Devices supported

  • E-BOARD

Coming soon

  • E-SWITCH

Installation

pip install pypglab

Usage

The library has an helper class to simplify the discovery and the use of PG LAB Electronics devices. The helper class hide the complexity to setup the MQTT connection with the broker.

In this simple working example pyPgLab class does the connection with the MQTT broker, retrieve an E-BOARD device and turn ON all available relay outputs

from pypglab.helper import pyPgLab

def turn_relay(relay, on):
    if on:
        asyncio.run( relay.turn_on() )
    else:
        asyncio.run( relay.turn_off() )
    time.sleep(0.02)

pglab = pyPgLab()
pglab.start("192.168.1.8")
pglab.connect()

e_board = pglab.get_device_by_name("E-BOARD-DD53AC85")

if e_board :
    # turn all relay outputs ON
    for relay in e_board.relays:
        asyncio.run( relay.turn_on() )

pglab.stop()

For more example and proper setup of the MQTT connection and callback, see the example.py and the unittest of pypglab python library.

Feedback

Please give us feedback on support@pglab.dev

Founder

This plugin is created by PG Lab Electronics.

License

Code is released under [MIT license]

Release files for pypglab 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pypglab 0.0.5
File Size Uploaded
pypglab-0.0.5.tar.gz 11.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pypglab 0.0.5
File Interpreter ABI Platform
pypglab-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 24.1 kB

Release files / pypglab-0.0.5.tar.gz

Download URL pypglab-0.0.5.tar.gz
Size 11.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cf7db4654d9a6367c8099c3db6c75002f40f15ed15dc43f1236a7d02a0c54a4b
BLAKE2b-256 checksum
How to use checksums
d320c63002471c34124f9d435ef69749557f76c6ed1fac9c1161cf0d87cd6c5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release files / pypglab-0.0.5-py3-none-any.whl

Download URL pypglab-0.0.5-py3-none-any.whl
Size 12.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8cead9a2134f46591082317553a74d72a8c85c027395778e63b76aae75e7c023
BLAKE2b-256 checksum
How to use checksums
9778eb3da67adf1caf3a88813a3fc0b715b60087a6a721470d75bb23591cc55a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release history Release notifications | RSS feed

This release

0.0.5 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page