labgrid.driver.power package

Submodules

labgrid.driver.power.apc module

labgrid.driver.power.apc.power_set(host, port, index, value)[source]
labgrid.driver.power.apc.power_get(host, port, index)[source]

labgrid.driver.power.digipower module

labgrid.driver.power.digipower.power_set(host, port, index, value)[source]
labgrid.driver.power.digipower.power_get(host, port, index)[source]

labgrid.driver.power.digitalloggers_http module

Driver for Digital Loggers PDU that use the legacy HTTP API. Tested with Web Power Switch 7.

labgrid.driver.power.digitalloggers_http.power_set(host, port, index, value)[source]
labgrid.driver.power.digitalloggers_http.power_get(host, port, index)[source]

labgrid.driver.power.eaton module

labgrid.driver.power.eg_pms2_network module

labgrid.driver.power.eg_pms2_network.login(base_url: str) None[source]

Use the default password 1, because labgrid doesn’t support password encryption, modifying the password doesn’t secure the device as the password would be stored as plain-text.

labgrid.driver.power.eg_pms2_network.logout(base_url: str) None[source]

After a successful login, the session is reserved for the IP address. Logout explicitly to allow accessing the device from different hosts.

labgrid.driver.power.eg_pms2_network.power_set(host, port, index, value)[source]
labgrid.driver.power.eg_pms2_network.power_get(host, port, index)[source]

labgrid.driver.power.gude module

labgrid.driver.power.gude.power_set(host, port, index, value)[source]
labgrid.driver.power.gude.power_get(host, port, index)[source]

labgrid.driver.power.gude24 module

This driver implements a power port for Gude Power Switches with up to 24 ports. These switches differ in their API to the previous 8-port switches for set- and get-commands.

Driver has been tested with: * Gude Expert Power Control 8080

labgrid.driver.power.gude24.power_set(host, port, index, value)[source]

The gude web-interface uses different pages for the three groups of switches. The web-interface always uses the ‘correct’ page to set a value. But commands for all pages are accepted on all pages.

labgrid.driver.power.gude24.power_get(host, port, index)[source]

Get the status of a port.

labgrid.driver.power.gude24.get_state(request, index)[source]

The status of the ports is made available via a html <meta>-tag using the following format: <meta http-equiv=”powerstate” content=”Power Port 1,0”> Again the status of all ports is made available on all pages.

labgrid.driver.power.gude8031 module

labgrid.driver.power.gude8031.power_set(host, port, index, value)[source]
labgrid.driver.power.gude8031.power_get(host, port, index)[source]

labgrid.driver.power.gude8225 module

labgrid.driver.power.gude8225.power_set(host, port, index, value)[source]
labgrid.driver.power.gude8225.power_get(host, port, index)[source]

labgrid.driver.power.gude8316 module

labgrid.driver.power.gude8316.power_set(host, port, index, value)[source]
labgrid.driver.power.gude8316.power_get(host, port, index)[source]

labgrid.driver.power.netio module

labgrid.driver.power.netio.power_set(host, port, index, value)[source]
labgrid.driver.power.netio.power_get(host, port, index)[source]

labgrid.driver.power.netio_kshell module

tested with NETIO 4C, should be compatible with all NETIO 4-models

labgrid.driver.power.netio_kshell.power_set(host, port, index, value)[source]
labgrid.driver.power.netio_kshell.power_get(host, port, index)[source]

labgrid.driver.power.rest module

Rest interface for controlling power port, using PUT / GET on a URL.

NetworkPowerPort:

model: rest host: ‘http://192.168.0.42/relay/{index}/value’ index: 3

Will do a GET request to http://192.168.0.42/relay/3/value to get current relay state, expecting a response of either ‘0’ (relay off) or ‘1’ (relay on), and a PUT request to http://192.168.0.42/relay/3/value with request data of ‘0’ or ‘1’ to change relay state.

labgrid.driver.power.rest.power_set(host, port, index, value)[source]
labgrid.driver.power.rest.power_get(host, port, index)[source]

labgrid.driver.power.sentry module

This driver was tested on those models: CW-24VDD and 4805-XLS-16 but should be working on all devices implementing Sentry3-MIB

labgrid.driver.power.sentry.power_set(host, port, index, value)[source]
labgrid.driver.power.sentry.power_get(host, port, index)[source]

labgrid.driver.power.shelly_gen1 module

Interface for controlling relays of Shelly devices using the Gen 1 API

NetworkPowerPort:

model: shelly_gen1 host: ‘http://192.168.0.42’ index: 0

Will do a GET request to http://192.168.0.42/relay/0 to get the current relay state, and a POST request to http://192.168.0.42/relay/0 with request data of ‘turn=off’ or ‘turn=on’ to change the relay state.

Also, see the official Gen 1 Device API documentation: https://shelly-api-docs.shelly.cloud/gen1/

labgrid.driver.power.shelly_gen1.power_set(host: str, port: int, index: int = 0, value: bool = True)[source]
labgrid.driver.power.shelly_gen1.power_get(host: str, port: int, index: int)[source]

labgrid.driver.power.siglent module

labgrid.driver.power.simplerest module

Simple rest interface for Power Port. Used for ex. misc Raspberry Pi configs

Author: Kjeld Flarup <kfa@deif.com>

The URL given in hosts in exporter.yaml must replace {value} with ‘0’ or ‘1’ It is optional whether to use {index} or not.

NetworkPowerPort:

model: simplerest host: ‘http://172.17.180.53:9999/relay/{index}/{value}’ index: 0

labgrid.driver.power.simplerest.power_set(host, port, index, value)[source]
labgrid.driver.power.simplerest.power_get(host, port, index)[source]