Raspberry Pi – Chromium automatisch starten lassen und Ausschalter

Da wir aktuell wegen Corona in unserer Gemeinde ein wenig die Technik hochfahren und es einfach halten wollen, benötigen wir einen relativ einfachen Zugang um das digitale Interface vom Mischpult bereitzustellen. Das Interface wird ganz einfach über eine URL im Browser aufgerufen. Daher lag es nahe einen alten Raspberry Pi 3 (der ist nicht ultraschnell, aber auch nicht so langsam wie der 1er oder 2er) zu nehmen.

Und so hab ich es gemacht:
– RaspiOS installiert und die Grundeinrichtung durchlaufen (Assistenten beim ersten Starten durchmachen).
– Einen Ausschaltknopf anhand dieser Anleitung erstellt. Wobei ich das Starten vom Python Skript später in die LXDE-pi/autostart geschoben habe, da ich den Chrome in der grafischen Oberfläche starte.

Folgenden Code mit sudo nano shutdown.py erzeugen:

# !/bin/python

# Einfaches Skript zum Ausschalten vom Raspberry Pi auf Knopfdruck.

# von Inderpreet Singh

import RPi.GPIO as GPIO

import time

import os

# Legt Nutzung der Broadcom SOC Pin-Anschlussnummern fest

# Setzt den Pin mit eingeschalteten internen Pullup-Widerständen und im Nur-Lesen-Modus

GPIO.setmode(GPIO.BCM)

GPIO.setup(21, GPIO.IN, pull_up_down=GPIO.PUD_UP)

# Unsere Funktion dafür, was passieren soll, wenn man den Button drückt

def Shutdown(channel):

print("Shutting Down")

time.sleep(5)

os.system("sudo shutdown -h now")

# Fügt ein, dass unsere Funktion ausgeführt wird, wenn der Knopfdruck stattfindet

GPIO.add_event_detect(21, GPIO.FALLING, callback=Shutdown, bouncetime=2000)

# Warte jetzt!

while 1:

time.sleep(1)

Das ganze kann man mal testen indem man das Skript laufen lässt mit python3 shutdown.py. Es erscheint „Shutting down“ und 5 Sekunden später ist dann der Pi ausgeschaltet und kann stromlos gemacht werden.

– Außerdem soll beim Start automatisch der Chromium mit einer definierten URL im Kiosk Mode aufgerufen werden. Dazu kann man eine Autostart Datei erstellen. Hier muss erst der Ordnerpfad erstellt werden: /home/pi/.config/lxsession/LXDE-pi/ Fehlende Unterordner einfach erstellen.
Dann mit folgendem Befehl sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart das Editorfenster öffnen und folgendes hineinpasten:

# Bildschirmschoner deaktivieren
@xscreensaver -no-splash
@xset s off
@xset -dpms
@xset s noblank

# lädt Chromium im Vollbild bei einem Neustart
@chromium-browser --kiosk http://192.168.2.4/mixer.html

# Shutdown Skript starten
@python3 /home/pi/shutdown.py

Damit wird der Chromium mit der Mixer URL im Vollbild Kiosk Modus gestartet und der Ausschalter aktiviert.
Eine relativ einfache Geschichte um ein digitales Mixer Interface per Netzwerk bereitzustellen. Klar es geht auch per WLAN und Tablet, aber ein fester Platz ist auch schick.
Man braucht nur folgende Komponenten:
– Digitales Mischpult (beispielsweise Soundcraft)
– Router (als DHCP Server und Switch)
– Raspberry Pi mit Maus und Monitor (Tastatur für die bessere Einrichtung)

EPPLUS – Excel Library für C# / .NET

Falls ihr einmal in die Verlegenheit kommt und ein Excelsheet über .NET erstellen müsst, könnt ihr natürlich ganz einfach das COM-Objekt einbinden und damit auf alle möglichen Objekte zugreifen. Doch spätestens nach dem Entladen des COM-Objektes werdet ihr euch irgendwann wieder die Haare raufen. Da ich sowieso nicht mehr soviele auf dem Kopf habe, ist es ja nicht so schlimm. Lieber eine Glatze, als gar keine Haare mehr.

Doch nach ein bisschen Googlen nach Lösungen bin ich auf diese Library gefunden. Und was soll ich sagen: Sie funktioniert. Erstens sehr schnell, zweitens sehr elegant, durch wenige Aufraufe und kompakte Schreibweisen und drittens werden keinerlei Excel Objekte erzeugt, die nach dem Beenden des Programms für Probleme sorgen könnten.

EPPLUS ist eine sehr schöne Library um aus C# / .NET und dazu noch Open Source. Und für die ganz Faulen wie mir gibt es das Ganze sogar als Nuget Paket. Bei soviel Service habe ich dem Projekt auch mal eine kleine Spende zukommen lassen. Schließlich leben Programmierer ja nicht nur Luft und Code, sondern auch von Kaffee, Tee, Mate oder auch mal ein Bier.

Dieser Beitrag ist auch als Gastbeitrag bei daMax erschienen.

Notepad++ auf Ubuntu 16.04 installieren

Notepad++ ist ein sehr netter Editor unter Windows. Er hat doch einige Stärken, die ihn sehr reizvoll machen. Deshalb ist er auf der Arbeit auf jedem meiner Rechner und teilweise auch Server installiert. Zum richtigen Entwickeln in C# würde ich ihn zwar nicht nehmen, da dafür Visual Studio als IDE immer noch besser ist. Aber um mal eine Configdatei, XMLdatei oder sonstige Textdateien mal eben zu editieren ist der Notepad++ einfach ungeschlagen.

Daher hat es mich gefreut die Tage mal einen Fork für Ubuntu zu finden. Die Anleitung zur Installation findet man hier.

Die Befehle zur Installation:

sudo add-apt-repository ppa:notepadqq-team/notepadqq
sudo apt-get update
sudo apt-get install notepadqq

Leider ist der Stand in Notepadqq nicht 1:1 vergleichbar. Aber die Grundfunktionen scheinen gleich zu sein.

Bitlove – The Return

Ich hab eigentlich nicht so viel mit der Demo Scene am Hut. So Anfang der 2000er habe ich zwar immer kleinere Berichte darüber gelesen und wollte da unbedingt mal hin, aber leider hab ich es dann nie geschafft. Jetzt im Rahmen der GPN Demo Nachlese bin ich wieder auf den Geschmack gekommen. Zwar werde ich trotzdem nie eine eine eigene Demo erstellen können, aber teilweise ist es einfach sehr schön anzusehen und vor allem mit sehr tollen Effekten.

Die Einladung zur Revision 2016 war ein kleiner Seitenhieb auf die ganzen Java Entwickler und allein deshalb ist es schon cool: