from mixgo_mini import onboard_bot
import mixgo_mini


onboard_bot.usben(1,0)
while True:
    if mixgo_mini.B1key.was_pressed():
        onboard_bot.usben(1,30)
    if mixgo_mini.B2key.was_pressed():
        onboard_bot.usben(1,0)
