mirror of
				https://github.com/KevinMidboe/fanController.git
				synced 2025-10-29 17:40:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env python3
 | |
| import CHIP_IO.GPIO as GPIO     #import the GPIO library
 | |
| import sqlite3
 | |
| from sys import argv
 | |
| 
 | |
| path = "scripts/fanState.db"
 | |
| 
 | |
| def updateFanstate(state):
 | |
| 	conn = sqlite3.connect(path)
 | |
| 	c = conn.cursor()
 | |
| 	c.execute('UPDATE fanstate SET state='+str(state))
 | |
| 
 | |
| 	conn.commit()
 | |
| 	conn.close()
 | |
| 
 | |
| def getFanstate():
 | |
| 	conn = sqlite3.connect(path)
 | |
| 	c = conn.cursor()
 | |
| 
 | |
| 	c.execute('SELECT state FROM fanstate')
 | |
| 
 | |
| 	state = c.fetchone()[0]
 | |
| 	conn.close()
 | |
| 
 | |
| 	return state
 | |
| 
 | |
| def turnFanON():
 | |
| 	if not getFanstate():
 | |
| 		updateFanstate(1)
 | |
| 		GPIO.setup("CSID0", GPIO.OUT)   #set CSID0 as an output
 | |
| 		GPIO.output("CSID0", GPIO.HIGH) #set CSID0 (LED) HIGH (On)
 | |
| 		return '1'
 | |
| 
 | |
| def turnFanOFF():
 | |
| 	if getFanstate():
 | |
| 		updateFanstate(0)
 | |
| 		GPIO.setup("CSID0", GPIO.OUT)   #set CSID0 as an output
 | |
| 		GPIO.output("CSID0", GPIO.LOW) #set CSID0 (LED) HIGH (On)
 | |
| 		return '1'
 | |
| 
 | |
| 
 | |
| if __name__ == '__main__':
 | |
| 	arg = argv[-1]
 | |
| 	if (arg == 'on'):
 | |
| 		print(turnFanON())
 | |
| 	elif (arg == 'off'):
 | |
| 		print(turnFanOFF())
 | |
| 	elif (arg == 'get'):
 | |
| 		print(getFanstate())
 | |
| 	else:
 | |
| 		print("Invalid input")
 |