remote = Remote() while True: # api events for event, kwargs in api.events: if event == "wave": wave(**kwargs) if event == "set": servo.set(0.75-float(kwargs["position"])*0.5) if event == "set_speed": motor.duty_cycle = kwargs['position'] api.events = [] if not remote.wm: motor.tick() continue # remote events if remote.pressed('a'): remote.rumble(True) else: remote.rumble(False) print remote.angle() if remote.pressed('b'): accel = remote.accel() steer = accel[0] * -1 steer = 0.5 if steer > -1 and steer < 1 else (steer + 25)/50.0 speed = accel[1] speed = (speed + 15)/25.0