2 python scripts merge in 1?
Posted: Mon Dec 31, 2018 2:03 am
Hi all,
I have problem with merge 2 python scripts for Raspberry Pi 3b+ with Retropie. 1st script control fan + led on when PI is on. 2nd script is for reset/poweroff system.
1st:
2nd:
Can someone merge those 2 scripts into 1? I can't get it. Maybe it can't be done?
Thanks guys for your help.
I have problem with merge 2 python scripts for Raspberry Pi 3b+ with Retropie. 1st script control fan + led on when PI is on. 2nd script is for reset/poweroff system.
1st:
Code: Select all
#!/usr/bin/env python3
import os
from time import sleep
import signal
import sys
import RPi.GPIO as GPIO
pin1 = 18
led1 = 23
maxTMP = 60
minTMP = 40
def setup():
GPIO.setmode(GPIO.BCM)
GPIO.setup(pin1, GPIO.OUT)
GPIO.setup(led1, GPIO.OUT)
GPIO.setwarnings(False)
GPIO.output(led1, GPIO.HIGH)
return()
def getCPUtemperature():
res = os.popen('vcgencmd measure_temp').readline()
temp =(res.replace("temp=","").replace("'C\n",""))
# print("temp is {0}".format(temp))
return temp
def getTEMP():
CPU_temp = float(getCPUtemperature())
if CPU_temp>maxTMP:
setPin1(True)
elif CPU_temp<minTMP:
setPin1(False)
return()
def setPin1(mode):
GPIO.output(pin1, mode)
return()
try:
setup()
while True:
getTEMP()
sleep(5)
except KeyboardInterrupt:
GPIO.cleanup()
Code: Select all
#!/usr/bin/python3
from gpiozero import Button
from signal import pause
from subprocess import check_call
off1 = 3
held_for=0.0
def rls():
global held_for
if (held_for > 5.0):
check_call(['/sbin/poweroff'])
elif (held_for > 2.0):
check_call(['/sbin/reboot'])
else:
held_for = 0.0
def hld():
global held_for
held_for = max(held_for, button.held_time + button.hold_time)
button=Button(off1, hold_time=1.0, hold_repeat=True)
button.when_held = hld
button.when_released = rls
pause()
Thanks guys for your help.