semvec/pypi-packages huggingface dataset:
qtoggleserver-thingspeak 1.3.0
Send values from qToggleServer to ThingSpeak
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It allows sending values from qToggleServer to [ThingSpeak](https://thingspeak.com/).


## Install

Install using pip:

    pip install qtoggleserver-thingspeak


## Usage

You'll need to register your account on [ThingSpeak](https://thingspeak.com/), if you haven't done it already. After
creating a new channel, you'll find a *write API key*; copy it and use it in the configuration below.


##### `qtoggleserver.conf:`
``` ini
...
event_handlers = [
    ...
    {
        driver = "qtoggleserver.thingspeak.ThingSpeakEventHandler"
        api_key = "FJ3U5TL443012EF7"
        fields = {
            "first_port_id" = 1     # association between port id and ThingSpeak field number
            "second_port_id" = 2
        }
        min_period = 5              # don't specify both min_period and period!
        period = 10
        ...
    }
    ...
]
...
```

The `fields` option associates a port to one of the 8 available ThinkSpeak channel fields. The channel is indirectly
identified by the API key, so there's no direct reference to its id in the configuration. Make sure you're using double
quotes around port ids in `fields` mapping; ports containing dots in their id will break the configuration otherwise.

The optional `min_period` field, if specified, will gather samples from given ports during a period of specified
seconds. The following value change event will simply push gathered samples, together, to ThingSpeak. Only values
that have changed during this time window will be pushed.

The optional `period` field, if specified, indicates a fixed sampling period, in seconds. Given ports will be sampled
with regular cadence. The last port value at the moment of sampling will be sent to ThingSpeak.

You must specify one and only one of `min_period` and `period`, depending on the desired behavior.  

For advanced event filtering, see
[Filter Event Handlers](https://github.com/qtoggle/qtoggleserver/wiki/Filter-Event-Handlers).
qtoggleserver-rpigpio 1.3.0
qToggleServer driver for Raspberry Pi GPIOs based on RPi.GPIO
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides a qToggleServer driver for Raspberry Pi GPIOs based on the 
[RPi.GPIO](https://sourceforge.net/projects/raspberry-gpio-python/) Python library.

The `RPiGPIO` port class allows controlling all available GPIOs, configuring them as inputs or outputs, enabling or
disabling internal pulls.
 
The `RPiGPIOFloat` port class makes RPi GPIOs always act as outputs, leaving them floating when writing "low".


## Install

Install using pip:

    pip install qtoggleserver-rpigpio


## Usage

##### `qtoggleserver.conf:`
``` ini
...
ports = [
    ...
    {
        driver = "qtoggleserver.rpigpio.RPiGPIO"
        no = 18             # GPIO number
        def_value = true    # default value at startup
        def_output = true   # default output/input GPIO mode at startup
    }
    ...
]
...
```
qtoggleserver-raspigpio 1.2.0
qToggleServer driver for Raspberry Pi GPIOs based on raspi-gpio
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides a qToggleServer driver for Raspberry Pi GPIOs based on the
[raspi-gpio](https://github.com/RPi-Distro/raspi-gpio) command.


## Install

Install using pip:

    pip install qtoggleserver-raspigpio


## Usage

##### `qtoggleserver.conf:`
``` ini
...
ports = [
    ...
    {
        driver = "qtoggleserver.raspigpio.GPIO"
        no = 18             # GPIO number
        def_value = true    # default value at startup
        def_output = true   # default output/input GPIO mode at startup
    }
    ...
]
...
```
qtoggleserver-pylontech 1.2.0
Pylontech batteries support for qToggleServer
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides Pylontech batteries support for qToggleServer.


## Install

Install using pip:

    pip install qtoggleserver-pylontech


## Usage

##### `qtoggleserver.conf:`
``` ini
...
peripherals = [
    ...
    {
        driver = "qtoggleserver.pylontech.Battery"
        name = "mybattery"              # an optional name of your choice
        serial_port = "/dev/ttyUSB0"    # this is the default
        serial_baud = 115200            # this is the default
        dev_ids = [2, 3]                # list of battery ids installed
    }
    ...
]
...
```
qtoggleserver-pushover 1.5.0
PushOver notifications for qToggleServer
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides push notifications for qToggleServer via [Pushover](https://pushover.net/).


## Install

Install using pip:

    pip install qtoggleserver-pushover


## Usage

You'll need to register your account on [Pushover](https://pushover.net/), if you haven't done it yet. On their home
page, you'll see your *User Key*; copy it and use it in the configuration below. You can add more than one user key, if
you plan to send notifications to multiple users.

Then, you'll need a registered Pushover application (you can register one [here](https://pushover.net/apps/build)).
Copy the API key and use it in the configuration below:


##### `qtoggleserver.conf:`
``` ini
...
event_handlers = [
    ...
    {
        driver = "qtoggleserver.pushover.PushoverEventHandler"
        user_keys = ["r7zxs1nj20w86bghyub5div8jyzyiw"]
        api_key = "nwn1cmgc9m6sjhrv1o4roebpb31b5i"
        sound = "pushover"  # optional
        ...
    }
    ...
]
...
```

For further customization, see
[Template Notifications](https://github.com/qtoggle/qtoggleserver/wiki/Template-Notifications).

For advanced event filtering, see
[Filter Event Handlers](https://github.com/qtoggle/qtoggleserver/wiki/Filter-Event-Handlers).

For available Pushover sounds, see [Pushover Sounds](https://pushover.net/api#sounds).
qtoggleserver-mppsolar 1.7.0
MPP Solar inverters support for qToggleServer
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides MPP Solar inverters (and similar) support for qToggleServer.

Currently, only status reading is supported. No changes to the inverter configuration can be done via this add-on.


## Install

Install using pip:

    pip install qtoggleserver-mppsolar


## Supported Models

Currently supported models include:

 * GK
 * MK
 * LV
 * MAX


## Usage

### Serial Connection

##### `qtoggleserver.conf:`
``` ini
...
peripherals = [
    ...
    {
        driver = "qtoggleserver.mppsolar.SerialMPPSolarInverter"
        name = "myinverter"             # an optional name of your choice
        serial_port = "/dev/ttyUSB0"    # use /dev/hidraw0 if using the USB connection
        serial_baud = 2400              # this is the default
        model = "GK"                    # model letters found in inverter model (e.g. "GK" for "PIP 5048GK")
        blacklist_properties = [...]    # optional list of property names to be excluded
        # optional min SoC required to force battery into discharge mode (defaults to null, i.e. disabled)
        force_battery_discharge_min_soc = 10
        # optional min grid voltage required to force battery into charge mode (defaults to null, i.e. disabled)
        force_battery_charge_grid_min_voltage = 200 
    }
    ...
]
...
```

### Bluetooth Connection

*note*: The bluetooth connection variant is limited to just a few read-only inverter properties.

##### `qtoggleserver.conf:`
``` ini
...
peripherals = [
    ...
    {
        driver = "qtoggleserver.mppsolar.BluetoothMPPSolarInverter"
        name = "myinverter"             # an optional name of your choice
        address = "00:1A:22:AA:BB:CC"   # bluetooth address of the device
        model = "GK"                    # model letters found in inverter model (e.g. "GK" for "PIP 5048GK")
    }
    ...
]
...
```
qtoggleserver-dallastemp 1.4.0
Dallas DS18B20 temperature sensor support for qToggleServer
License: Apache 2.0
Requires Python: >=3.11

## About

This is an addon for [qToggleServer](https://github.com/qtoggle/qtoggleserver).

It provides Dallas DS18B20 temperature sensor support for qToggleServer.


## Install

Install using pip:

    pip install qtoggleserver-dallastemp


## Usage

##### `qtoggleserver.conf:`
``` ini
...
peripherals = [
    ...
    {
        driver = "qtoggleserver.dallastemp.DallasTemperatureSensor"
        name = "livingroom"         # a name of your choice
        address = "28-00000B247706" # the 1-wire address 
    }
    ...
]
...
```