#!/usr/bin/env python3 """Короткий импульс на GPIO (Linux + gpiod). Пример для Orange Pi: скопируйте на устройство и укажите путь в настройках транспондера.""" import os import time try: import gpiod except ImportError: raise SystemExit("Нужен пакет gpiod (python3-libgpiod)") from None CHIP = os.environ.get("AIS_TX_GPIO_CHIP", "/dev/gpiochip1") LINE = int(os.environ.get("AIS_TX_GPIO_LINE", "0")) PULSE_US = int(os.environ.get("AIS_TX_PULSE_US", "1000")) with gpiod.request_lines( CHIP, consumer="ais-tx-pulse", config={ LINE: gpiod.LineSettings( direction=gpiod.line.Direction.OUTPUT, output_value=gpiod.line.Value.INACTIVE, ) }, ) as req: req.set_value(LINE, gpiod.line.Value.ACTIVE) time.sleep(PULSE_US / 1_000_000.0) req.set_value(LINE, gpiod.line.Value.INACTIVE)