November 22, 2019 at 19:56 #10027jeremysParticipant
Problem: Create a standard interface for 80+ classrooms with various manufactures of presentation hardware on a very limited budget
I work for a 2 year Technical and Community College and for years we have looked for ways to make our 80+ classrooms easier for our educators to use. Our biggest hurdle has been the cost of the commercial solutions made this difficult. Then I discovered the V-Control and now we have an affordable solution to standardize our classrooms. Our classrooms have been built over the last 20 years and have a wide variety of hardware from multiple manufactures making each room a different challenge for our educations.
- [*]Raspberry Pi 3 Model B[/*][*]7″ Touch Screen from Pi Foundation[/*][*]Case for RPi and 7″ Touch Screen[/*][*]4 Port USB to Serial Adapter from TechToo[/*][*]2 Port Serial Relay Controller from Noyito[/*][*]3 Port IR Transmitter from Global Cache (Optional)[/*]
- [*]V-Control 4.1.5[/*][*]Custom Interface written in Python using Tkinter[/*]
I’ve been able to create a very simple user interface that will standardize how the educators will control the A/V equipment in our classrooms and as the hardware changes I will make the necessary changes to V-Control and they don’t have to care what equipment is in the room.
I’ve opted for a very simple UI that I can add functionality as needed:
Here is everything connected in my test environment:
Just wanted to share with the community one example of how great V-Control and Dierk are!
You must be logged in to access attached files.November 24, 2019 at 10:36 #10069DierkParticipant
Nice project, thank you very much for sharing.April 17, 2020 at 17:27 #12945josephMParticipant
Thanks for sharing.
The way that you made your user interface really interests me. How did you make the communication between Tkinter and V control ? By sending network frame ?
JosephApril 17, 2020 at 20:21 #12946jeremysParticipant
I am using the TCP Remote Service to send commands to V-Control and I created a very simple TCP Listener in my Python Script to listen for information being sent to a Generic TCP Client Device. Disclaimer on this code I Have no formal programming training so I’m sure there are better ways to accomplish this, but it works for me.
Here’s my RunTask Code:
def RunTask(task): import pyautogui pyautogui.moveTo(720,480, duration = 0) Command = chr(4) + "0" + chr(5) + "scrRunTask" + chr(5) + task + chr(6) Debug("Running Task - " + task) data = send_data(Command) Debug(data) def send_data(_command): import socket TCP_IP = IP_Controller TCP_PORT = 10101 BUFFER_SIZE = 4096 MESSAGE = _command.encode('utf-8') s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: s.connect((TCP_IP, TCP_PORT)) s.send(MESSAGE) data = s.recv(BUFFER_SIZE) s.close() return data except: Debug("Connection Problem") return -1
- You must be logged in to reply to this topic.