# Fall alarm: a free micro:bit lesson from Maze Education
# https://maze.education/microbit/lessons/fall-alarm
# MicroPython for the micro:bit Python Editor: https://python.microbit.org

# Fall alarm: a fall OR the panic button (A and B) sets off the alarm and tells the carer's board. B stops it.
from microbit import *
import radio
import music

radio.on()
radio.config(group=9)
alarm = False

while True:
    if accelerometer.was_gesture("freefall"):
        alarm = True
        radio.send("FALL")
    if button_a.is_pressed() and button_b.is_pressed():
        alarm = True
        radio.send("HELP")
        sleep(500)
        button_a.was_pressed()
        button_b.was_pressed()
    elif button_b.was_pressed():
        alarm = False
        display.clear()
    message = radio.receive()
    if message:
        display.scroll(message)
        music.play(music.BA_DING)
    if alarm:
        display.show(Image.NO)
        music.pitch(880, 150)
        display.clear()
    sleep(100)
