speakerSwitch/speakerSwitch.py

50 lines
1.2 KiB
Python

from bottle import route, run, request, redirect, template, static_file
import serial
ser = serial.Serial("/dev/ttyUSB0", 9600)
channelStatus = [False, False, True]
def updateChannels():
print("Updating States")
print(channelStatus)
if channelStatus[0]:
ser.write(b'ch00-l-1\n')
ser.write(b'ch00-r-1\n')
else:
ser.write(b'ch00-l-0\n')
ser.write(b'ch00-r-0\n')
if channelStatus[1]:
ser.write(b'ch01-l-1\n')
ser.write(b'ch01-r-1\n')
else:
ser.write(b'ch01-l-0\n')
ser.write(b'ch01-r-0\n')
if channelStatus[2]:
ser.write(b'ch02-l-1\n')
ser.write(b'ch02-r-1\n')
else:
ser.write(b'ch02-l-0\n')
ser.write(b'ch02-r-0\n')
updateChannels()
@route("/")
def index():
return template("index", vals=channelStatus)
@route("/toggle/<c:int>")
def channel(c):
channelStatus[c] = not channelStatus[c]
if channelStatus.count(True) > 2:
channelStatus[c] = False
updateChannels()
redirect("/")
@route('/<filename:path>')
def send_static(filename):
return static_file(filename, root='static/')
run(host="0.0.0.0", port=8081, debug=False)