ich habe hier zwei Probleme, die ich versuche hier in einem Abwasch zu klären.
Ich schildere zuerst, welche Systemkonfiguration ich verwende.
Raspberry Pi 4, 8GB RAM, 32GB Micro-SD (OS), 32GB USB (DB-Backup)
Als OS verwende ich Debian-Buster V.10
Code: Alles auswählen
lsb_release -a
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster
ich habe nach dem Aufsetzten (hier als Ergänzung) folgende Standardprogramme entfernt.
Code: Alles auswählen
sudo apt-get remove wolfram-engine sonic-pi python3-numpy smartsim penguinspuzzle timidity scratch nuscratch python3-pygame python-pygame python-tk python-picraft bluej claws-mail greenfoot minecraft-pi geany libreoffice* -y
- Remote Desktop Service
Apache2 Webserver
MariaDB
PHPMyAdmin
Mono
Mosquitto
Jetzt zum Hauptproblem:
Vorweg genommen, das Ganze hat alles schon einige Tage funktioniert. Deswegen der Zusatz mit dem Abschalten der automatischen Updates.
Ich habe den Raspberry schon seit Monaten laufen, um die Stabilität zu beobachten und wollte nun die Ergänzungen mit Zielrichtung Hausautomation zu etablieren. Zu Testzwecken habe ich mir ein kleines Board für Arduino, genauer den ESP8266 D1 Mini zusammengesteckt. Daten werden via MQTT korrekt übertragen.
Das Tool, das die Daten auf dem Raspberry seitens des Mosquitto empfängt wurde unter C# als Konsolenanwendung entwickelt. Läuft!
Die Daten werden empfangen, in die DB geschrieben, ich kann alles korrekt auslesen. Auch die 2-Wege-Kommunikation zwischen Server (Raspberry) und ESP8266 sowie einer statistischen Anwendung auf dem PC läuft so wie ich es haben möchte.
Ich habe ferner, nach langer Recherche im Internet eine Möglichkeit gefunden, diese Konsole unter Debian zu starten. Dazu habe ich eine .sh Datei angelegt.
im Autostart verankert:
Code: Alles auswählen
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
Code: Alles auswählen
/home/pi/startMqttWriter.sh
ABER:
Ich habe nun das seltsame Problem, das das Programm zwar auf dem Raspberry gestartet wird, aber irgendwie inaktiv bleibt und zwar solange, bis ich mich per Remote seitens des PC's auf den Raspberry aufschalte. Dann startet die Anwendung im Hintergrund.
Alternativ kann ich die Anwendung aus dem Autostart entfernen und manuell starten, aber ich möchte das natürlich eigentlich voll automatisch erledigt sehen.
Das Ding sollte ja rund um die Uhr laufen und wenn es schon mal Störungen gibt, diese auch selbst erkennen und durch Reboot beheben. (Sofern nicht das OS selbst einen Schuss hat.)
Ich hatte mir auch im Crontab einen zeitlich getriggerten Reboot initialisiert (11:15AM)
bringt auch nichts.
Code: Alles auswählen
sudo crontab -e
7 */6 * * * /home/pi/DBaseDump.sh
15 11 * * * sudo reboot
Die Fragen nochmal zusammengefasst:
1. Wie kann ich das automatische Update abschalten?
2. Wie kann ich die Anwendung so starten, dass sie auch wirklich aktiv wird?
3. (Bonus) Wie kann ich die Anwendung sichtbar in einem Terminal starten?
Hier noch ergänzend ein Ausschnitt von den Konsolen-Meldungen:
Die Anwendung am PC meldet ebenfalls (sofern nicht MQTT ausfällt) ob irgendwelche Fehler anfallen. TimeUpDate funktioniert ebenfalls damit ich an allen Stationen später dieselbe Zeit habe und damit auf einen RTC verzichten kann, da dies ja eigentlich seitens des Raspberry immer läuft.Received: Recall
Recall ist eingegangen.
Callback wurde beantwortet.
Received: 22.31
Schreibe Daten in DB! 11:51:32
Sende TimeUpDate: 11:51:32
Received: 54.59
Schreibe Daten in DB! 11:51:32
Received: 960.58
Schreibe Daten in DB! 11:51:32
Received: 22.31
Schreibe Daten in DB! 11:52:02
Received: 54.65
Schreibe Daten in DB! 11:52:02
Received: 960.56
Schreibe Daten in DB! 11:52:02
Received: Recall
Danke schon vorab an alle, die sich die Mühe machen hier zu helfen
Grüße Wolfgang