new to micropython and while my code does work its buggy sometimes and there has to be a better way to do the same thing using random. All I need it to do is when the sensor turns on the pico turns a random pin on for one second then turns off. Its just controlling a sound board with 9 pins. When one of the pins gets the currant from the pico it plays a sound file. can someone post a better way. Thanks
import machine
import time
time.sleep(5)
snsr_pir = machine.Pin(28, machine.Pin.IN, machine.Pin.PULL_DOWN)
number1 = machine.Pin(15, machine.Pin.OUT)
number2 = machine.Pin(14, machine.Pin.OUT)
number3 = machine.Pin(13, machine.Pin.OUT)
number4 = machine.Pin(9, machine.Pin.OUT)
number5 = machine.Pin(8, machine.Pin.OUT)
number6 = machine.Pin(7, machine.Pin.OUT)
number7 = machine.Pin(6, machine.Pin.OUT)
number8 = machine.Pin(5, machine.Pin.OUT)
number9 = machine.Pin(4, machine.Pin.OUT)
while True:
if snsr_pir.value() == 1:
number1.value(0)
if snsr_pir.value() == 0:
number1.value(1)
time.sleep(0.8)
number1.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number2.value(0)
if snsr_pir.value() == 0:
number2.value(1)
time.sleep(0.8)
number2.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number3.value(0)
if snsr_pir.value() == 0:
number3.value(1)
time.sleep(0.8)
number3.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number4.value(0)
if snsr_pir.value() == 0:
number4.value(1)
time.sleep(0.8)
number4.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number5.value(0)
if snsr_pir.value() == 0:
number5.value(1)
time.sleep(0.8)
number5.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number6.value(0)
if snsr_pir.value() == 0:
number6.value(1)
time.sleep(0.8)
number6.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number7.value(0)
if snsr_pir.value() == 0:
number7.value(1)
time.sleep(0.8)
number7.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number8.value(0)
if snsr_pir.value() == 0:
number8.value(1)
time.sleep(0.8)
number8.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number9.value(0)
if snsr_pir.value() == 0:
number9.value(1)
time.sleep(0.8)
number9.value(0)
time.sleep(60)
import machine
import time
time.sleep(5)
snsr_pir = machine.Pin(28, machine.Pin.IN, machine.Pin.PULL_DOWN)
number1 = machine.Pin(15, machine.Pin.OUT)
number2 = machine.Pin(14, machine.Pin.OUT)
number3 = machine.Pin(13, machine.Pin.OUT)
number4 = machine.Pin(9, machine.Pin.OUT)
number5 = machine.Pin(8, machine.Pin.OUT)
number6 = machine.Pin(7, machine.Pin.OUT)
number7 = machine.Pin(6, machine.Pin.OUT)
number8 = machine.Pin(5, machine.Pin.OUT)
number9 = machine.Pin(4, machine.Pin.OUT)
while True:
if snsr_pir.value() == 1:
number1.value(0)
if snsr_pir.value() == 0:
number1.value(1)
time.sleep(0.8)
number1.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number2.value(0)
if snsr_pir.value() == 0:
number2.value(1)
time.sleep(0.8)
number2.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number3.value(0)
if snsr_pir.value() == 0:
number3.value(1)
time.sleep(0.8)
number3.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number4.value(0)
if snsr_pir.value() == 0:
number4.value(1)
time.sleep(0.8)
number4.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number5.value(0)
if snsr_pir.value() == 0:
number5.value(1)
time.sleep(0.8)
number5.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number6.value(0)
if snsr_pir.value() == 0:
number6.value(1)
time.sleep(0.8)
number6.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number7.value(0)
if snsr_pir.value() == 0:
number7.value(1)
time.sleep(0.8)
number7.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number8.value(0)
if snsr_pir.value() == 0:
number8.value(1)
time.sleep(0.8)
number8.value(0)
time.sleep(60)
if snsr_pir.value() == 1:
number9.value(0)
if snsr_pir.value() == 0:
number9.value(1)
time.sleep(0.8)
number9.value(0)
time.sleep(60)
Statistics: Posted by JTWJR — Tue Aug 05, 2025 6:25 pm