Skip to content

ael/piclock_advanced

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PiClock Advanced / Studio Infoscreen

Clock / Infoscreen for radiostudios
Basically this is just a modified and extended Version of this one: (https://github.com/jdgwarren/pirsclockfull)

Description - what does this thing?

You can see a clock with the typical LED ring for the seconds and some areas for signalisation of different things like mic, phone, door or whatever you want. You can configure the text and the colors the indicators will light up with easily on your own.

If the mic is open, a talk timer ist counting up. It stops as soon as the mic is closed. If the mic is opened again, the timer will be reset and starts counting up again. Good to avoid those talks from hell ;)
In the top left corner there is an indicator, that could show which studio or source is currently broadcasting. In our case we get this information from the audio router. If the on air source corresponds with the studio the current infoscreen is associated to, the colour changes from red font on black backgound to white font on red background. But this is configurable. So you see clearly if the Studio you are in is the on air studio. And if not, you see which studio is the on air studio but in a more subtle color.
On the bottom you can show the song information of the song that ist currently playing, or also something else. You just have to set the right path. Both information, the onair info and the song info is polled from textfiles. I'm still testing if the constantly reading of the files is a problem. Maybe there is a better solution. Currently those two files are being read multiple times a second. There must be a better solution... ;)
Update:
Yes there is a better solution. If you set the variable "useudpbroadcast" to True, the constantly polling of the textfiles is switched off. There is just one poll after startup. After that the script is waiting for UDP broadcast messages. We generate them with a powershell script. You will find it under my repos as well.
Why UDP broadcast? It was the easiest way to get the message to multiple displays. And it runs much more stable that the file polling method. The clock often used to hang. This seems not to happen with the UDP method.

Currently there could also be found an indicator named "Pegel" in the code which is german for "level". In this case audio level of course. It has no function yet and is commented out. Maybe it's possible to get the audio level of the associated studio via a small USB soundcard and let the indicator light up if the audio level is to high. The soundprocessing doesn't like getting driven with too much input level. I haven't looked into that, but would be nice. But you can also use it as a 4th indicator with one of the GPIs, no problem, the code is still there.

Some pictures

YAY, I finally made some pictures of the Infoscreen, so you can get an impression of that thingy:

This is the screen in our Studio 2 when it is off air: Studio 2 offair Current broadcasting source is "Loop/Zara".

This is the screen when Studio 2 is onair: Studio 2 onair See also the change of the songinfo on the bottom. When the broadcasting source changes, also the source of the songinfo changes. But that is handeled in the audio router, the infoscrren is just showing the result.

Here the mic is on and the mic timer is running: Studio 2 Mic on

Someone is calling on the phone: Studio 2 phone ringing Here you also can see the stopped mic timer when mic is closed.

The TÜR (door) indicator would light up in blue, but I was too lazy and it was cold outside ;) And the colour is configurable anyway. Of course all the indicators can light up simultaneuosly.

How to use?

Prerequisites

  • PyGame Because PyGame is used to render the output.
  • xServer Because a graphical interface is needed to present the output of PyGame.

So just use the normal PiOS-Image. Everything will rund out of the box. If you use the minimal image, you have to install a lot of additional things to get the clock running.

How to install?

  • Just clone the repo
  • Start the piclock-advanced.py with sudo. Otherwise you won't have access to the GPIO-Pins. sudo python piclock-advanced.py
  • You do not necessarily need the other files besides the python file. You can delete them.

Releases

No releases published

Packages

No packages published

Languages