Files
Robotics-at-Home-with-Raspb…/ch-09/4-bluetooth-teleop/code.py
T
2023-01-18 13:57:13 +00:00

36 lines
913 B
Python

import board
import time
import busio
from adafruit_bluefruit_connect.button_packet import ButtonPacket
import robot
uart = busio.UART(board.GP12,board.GP13,baudrate=9600, timeout=0.01)
stop_at = 0
speed = 0.8
print("Waiting for control signals...")
while True:
if uart.in_waiting:
packet = ButtonPacket.from_stream(uart)
if packet:
if not packet.pressed:
robot.stop()
elif packet.button == ButtonPacket.UP:
robot.set_left(speed)
robot.set_right(speed)
elif packet.button == ButtonPacket.DOWN:
robot.set_left(-speed)
robot.set_right(-speed)
elif packet.button == ButtonPacket.LEFT:
robot.set_left(-speed)
robot.set_right(speed)
elif packet.button == ButtonPacket.RIGHT:
robot.set_left(speed)
robot.set_right(-speed)
stop_at = time.time() + 3
if time.time() > stop_at:
robot.stop()