On other platforms, switching PWR from 1 to 0 to 1 again restarts the program regardless of whether the device is connected to the USB port. Con be observed on Rev A5 and Rev A boards up to firmware/library v0.3.4.
Set PWR to 1
Use parallax.py library from 0.3.4 branch's library folder if you are using a Rev A board or from the master branch's library folder if you are using the rev A4 board.
Run Test_Piezo_Beep_Then_Loop.py
Leave USB connected
Set PWR to 0
Setting PWR back to 1 does not restart the program; micro:bit reset is required.
This can be repeated with Test_Piezo_Beep_Then_Loop.py. Although some items behave differently with loop vs. non loop programs, this does not.
# Test_Piezo_Beep.py
from parallax import *
bot(22).frequency_out(300, 2000)
# Test_Piezo_Beep_Then_Loop.py
from parallax import *
bot(22).frequency_out(300, 2000)
while True:
bot(21).digital_write(1)
bot(21).digital_write(0)
On other platforms, switching PWR from 1 to 0 to 1 again restarts the program regardless of whether the device is connected to the USB port. Con be observed on Rev A5 and Rev A boards up to firmware/library v0.3.4.