Esempio n. 1
0
def init_gps(configuration: Configuration):
    """Initialize the serial port to receive GPS data"""
    gps_serial_port = configuration.get_device_configuration("gps", "serial_device")
    if not gps_serial_port:
        return None
    ser = serial.Serial(gps_serial_port, 9600, timeout=5.0)
    sio = io.TextIOWrapper(io.BufferedRWPair(ser, ser))
    return sio
Esempio n. 2
0
def init_reset_button(configuration: Configuration, continue_running: AtomicValue):
    """Setup a listener for reset"""

    def handle_reset_button(_):
        logging.info("Reset button pressed!")
        continue_running.update(False)

    GPIO.setmode(GPIO.BCM)  # pylint: disable=no-member
    channel = int(configuration.get_device_configuration("reset", "pin"))
    GPIO.setup(  # pylint: disable=no-member
        channel, GPIO.IN, pull_up_down=GPIO.PUD_DOWN  # pylint: disable=no-member
    )
    GPIO.add_event_detect(  # pylint: disable=no-member
        channel,
        GPIO.RISING,  # pylint: disable=no-member
        callback=handle_reset_button,
        bouncetime=500,  # pylint: disable=no-member
    )