emdbg.power

Power Management

To turn power on and off, you can attach a relay to the power supply of your PX4 modules. Currently only Yoctopuce USB Relays are implemented.

You must use a context to access the relay in Python:

with emdbg.power.yocto_relay(channel=1, inverted=True) as power:
    power.on(delay=1)
    power.off(delay=2)
    power.cycle(delay_off=3, delay_on=4)

To control multiple relays, use multiple context managers:

with emdbg.power.yocto_relay(channel=0) as power0, \
     emdbg.power.yocto_relay(channel=1) as power1:
    power0.on()
    power1.off()

Command Line Interface

A minimal CLI provides access to integrate the functionality into shell scripts.

Turn power on for the first relay found on inverted channel 1:

python3 -m emdbg.power.yocto --channel 1 --inverted on

Disable channel 2 and wait 3 seconds:

python3 -m emdbg.power.yocto --channel 2 off --time 3

Power cycle channel 1: turn off, wait 2s, turn on, wait 2s.

python3 -m emdbg.power.yocto --channel 1 cycle --time 2
1# Copyright (c) 2023, Auterion AG
2# SPDX-License-Identifier: BSD-3-Clause
3
4"""
5.. include:: README.md
6"""
7
8from .yocto import relay as yocto_relay