Skip to content

Instantly share code, notes, and snippets.

@shortyxs
Last active June 20, 2023 09:06
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save shortyxs/e9fa6265e6574559d5fa98afab798576 to your computer and use it in GitHub Desktop.
Save shortyxs/e9fa6265e6574559d5fa98afab798576 to your computer and use it in GitHub Desktop.
Studioscreen Installguide

An installation guide for OnAirScreen

https://github.com/saschaludwig/OnAirScreen

For default raspian stretch functional 2018-12-30

sudo apt install neofetch git
sudo echo neofetch >> /etc/bash.bashrc
sudo echo net.ipv6.conf.all.disable_ipv6 = 1 >> /etc/sysctl.conf
sudo sysctl -p

sudo apt install python-qt4 pyqt4-dev-tools python-qt4-dbg python-pip
pip install ntplib

git clone https://github.com/saschaludwig/OnAirScreen
cd OnAirScreen
make
./start.py

Testing again with a stock Debain Stretch x64 in Virtual Box 2019-07-02 Make sure to have installed sudo and your user is allowed to use sudo. Sascha Ludwig has removed the older Version of the Software, so you have to use another fork that has the old data. You can find several forks here: https://github.com/saschaludwig/OnAirScreen/network/members

sudo su
apt install neofetch git
echo neofetch >> /etc/bash.bashrc
echo net.ipv6.conf.all.disable_ipv6 = 1 >> /etc/sysctl.conf
sysctl -p

apt install python-qt4 pyqt4-dev-tools python-qt4-dbg python-pip
exit
pip install ntplib

git clone https://github.com/brandlcreative/OnAirScreen
cd OnAirScreen
make
./start.py

To make this thing boot up fully unattended, there are a few steps needed. I have used the XFC Desktop, because it is not very ressource hungry.

First, disable the automatic Lock Out. Go to settings manager > session and startup > application autostart and disable light-locker, which is titled “Screen Locker (Launch screen locker program).” Reboot your machine and it should stop locking. As described here: https://askubuntu.com/questions/544818/how-do-i-disable-automatic-screen-locking-in-xubuntu

While you are there you can add the start.py for automatic start of the OnAirScreen after Login.

Than make sure to boot up and login automaticly (with a non-root user). Replace "username" with the username you used to setup debian. Add the following to the bottom of your /etc/lightdm/lightdm.conf

[Seat:*]
pam-service=lightdm
pam-autologin-service=lightdm-autologin
autologin-user=username
autologin-user-timeout=0
session-wrapper=/etc/X11/Xsession
greeter-session=lightdm-greeter

Run the following commands

# groupadd -r autologin
# gpasswd -a username autologin

Full description here: https://unix.stackexchange.com/questions/302400/auto-login-on-xfce-in-jessie

Now reboot and you should end up right with the OnAirScreen running.

As a tool to send UDP commands from Windows http://sourceforge.net/projects/swissfileknife/files/1-swissfileknife/1.7.4/ worked fine for me.

C:\tools\sfk udpsend 192.168.1.22 3100 "LED1:ON"

Information take from here: https://stackoverflow.com/questions/6336941/windows-bat-or-cmd-send-some-data-to-a-localhost-udp-port Maybe you want to use anything different.

@KyleRickards
Copy link

KyleRickards commented Feb 5, 2019

Thanks for this - I am getting the following error when trying to to install ntplib

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-KyuOh6/ntplib/

WHich means that the main ./start.py does not work for me and I can't use the programme anymore :(

EDIT: Full text

Collecting ntplib
Using cached https://files.pythonhosted.org/packages/29/8b/85a86e01c510665b0790d3a9fd4532ad98aba9e185a676113a0ae3879350/ntplib-0.3.3.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named setuptools

@KyleRickards
Copy link

I have now got the ntplib.py file and placed in the same directory as OnAirScreen but I still can't get it to work :(

@KyleRickards
Copy link

Latest error message when I try to run it:

./start.py
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
Traceback (most recent call last):
File "./start.py", line 958, in
mainscreen = MainScreen()
File "./start.py", line 71, in init
app.setOverrideCursor( QCursor( 10 ) );
TypeError: QCursor(): argument 1 has unexpected type 'int'

@dillwishlist
Copy link

I'm wondering if you have any advice (or an updated guide) now that the project has been moved to Python3 and pyqt5? The above steps result in an invalid syntax error.

@shortyxs
Copy link
Author

shortyxs commented Jul 2, 2019

Sorry for the late reply. This gist was more like a personal notepad and not intended to provide support for the OnAirScreen.
Unfortunately I was not notfied of any comments on my gist.

I just walked through the steps on a plain x64 debian stretch, because I don't have a Pi on hand at the moment.
It still works if you use one of the older forks that exist of the OnAirScreen (https://github.com/saschaludwig/OnAirScreen/network/members) , because it seems, unfortunately the older Versions were completely removed from Sascha Ludewigs repository.

I used this repo https://github.com/brandlcreative/OnAirScreen and it compiled OK. Just throwing this 3 warnings, that you also had but starting up normal after that.

I have update the above guide.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment