import serial import tkinter import time # Create root widget (application window) root = tkinter.Tk() root.title('LED Control!') root.bind('q', 'exit') button_pressed = 1 loop_time = 0 wait_time = 0.05 ser = serial.Serial('COM4', 9600, timeout=1) def toggle_button(): global button_pressed if button_pressed: button_pressed = 0 button.configure(background = "red") else: button_pressed = 1 button.configure(background = "green") print(button.background) frame = tkinter.Frame(root) frame.pack() button = tkinter.Button( frame, text = "On/Off", background = "red", command = toggle_button) button.pack() def idle(parent, frame): looptime = time.process_time() if button_pressed: ser.write(b'\x01') print(b'\x01') else: ser.write(b'\x00') print(b'x00') while (time.process_time() - looptime) < wait_time: continue parent.update() parent.after_idle(idle, parent, frame) root.after(100,idle, root, frame) root.mainloop()