Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. from Tkinter import *
  2. import threading
  3. from bluetooth import *
  4.  
  5. class GUI():
  6. def __init__(self):
  7. PAD_Y = 5
  8. PAD_X = 5
  9. self.bToggle = True
  10. self.window = Tk()
  11. self.window.title("Check Pi Status")
  12. self.window.protocol("WM_DELETE_WINDOW", self.endApplication)
  13. self.lToggle = Label(self.window, text="True", bg="dark turquoise", fg="black")
  14. self.lToggle.grid(row=0, column=0, padx=PAD_X, pady=PAD_Y, sticky=N + S + E + W)
  15. self.btnToggle = Button(self.window, text="Toggle", command=self.tapToggle, state='normal')
  16. self.btnToggle.grid(row=1, column=0, padx=PAD_X, pady=PAD_Y, sticky=N + S + E + W)
  17. self.ldummy = Label(self.window, text='')
  18. self.ldummy.grid(row=2, column=0)
  19. self.lCountdown = Label(self.window, text='Countdown = 0', bg="blue", fg="white")
  20. self.lCountdown.grid(row=3, column=0, padx=PAD_X, pady=PAD_Y, sticky=N + S + E + W)
  21. self.bKillThread = False
  22. self.read_counter()
  23. self.window.mainloop()
  24.  
  25. def read_counter(self):
  26. global s1
  27. try:
  28. s1.send('Are you alive?')
  29. rec_data = s1.recv(1024)
  30. data = rec_data.decode('utf-8')
  31. print('Received', data)
  32. if data:
  33. self.lToggle.configure(text="ONLINE", bg="green", fg="white")
  34. self.window.after(1000, self.read_counter)
  35. except:
  36. self.lToggle.configure(text="OFFLINE", bg="red", fg="white")
  37.  
  38.  
  39. def tapToggle(self):
  40. self.bToggle = not self.bToggle
  41. if self.bToggle:
  42. self.lToggle.configure(text="True", bg="dark turquoise", fg="black")
  43. else:
  44. self.lToggle.configure(text="False", bg="red", fg="white")
  45.  
  46. def endApplication(self):
  47. self.bKillThread = True
  48. self.window.quit()
  49.  
  50.  
  51. #HOST1 = "00:15:83:E5:0D:4F" # bd_address of the slave
  52. HOST1 = "00:15:83:E5:10:C6"
  53. PORT1 = 1 # Slave port
  54.  
  55. s1 = BluetoothSocket(RFCOMM)
  56. s1.connect((HOST1, PORT1))
  57.  
  58. app = GUI()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement