Hallo zusammen... Ich hatte auch das Problem daß Open3E als Dienst nicht automatisch anlief. Zb. nach einem Netzausfall oder Reboot. Mit der Zeile: "RestartSec=100ms" hatte ich tatsächlich probleme und musste sie wie in https://github.com/open3e/open3e/wiki/020-Inbetriebnahme-CAN-Adapter-am-Raspberry#can-interface-automatisch-starten schon beschrieben weglassen. Hierzu habe ich mir mit folgenden Einstellungen geholfen und mir nachfolgendes Howto geschrieben. Nun startet mein Raspberry 4 zuverlässig alle Dienste. An die Spezialisten im Forum... Kann sein dass die Lösung nicht ganz Professionell ist. Ich bin zwar schon ewige Zeiten Linux User, jedoch kein Profi 🙄 ### Geänderte Einstellung - CAN Interface automatisch starten ### #In der nachfolgenden Datei wird ein Eintrag entgegen der üblichen Open3E Anleitung abgeändert. #Die Zeile: "RestartSec=100ms" wird weggelassen da es Probleme mit dem automtischen neustart des CAN-Bus Dienstes gab. #Aufruf/Erstellen der Datei und dann nachfolgend eintragen: #bash sudo nano /etc/systemd/network/80-can.network [Match] Name=can0 [CAN] BitRate=250K ======================================================================> ### Workaround da Open3E - Systemstart auf Raspberry da nach Netzausfall/Neustart sonst nicht ausgeführt wird ### #Mit dieser Änderung, entgegen der in der Anleitung stehenden Einstellungen wird Sichergestellt, dass der open3e.service NICHT automatisch starten will (kein [Install] Sektion in dieser Datei mehr): #bash sudo nano /etc/systemd/system/open3e.service #Inhalt sollte nur sein: [Unit] Description=Open3e MQTT Bridge [Service] WorkingDirectory=/home/pi/open3e User=pi # Wir lassen es einfach, ohne screen oder bash -c ExecStart=/home/pi/open3e/.venv/bin/open3e @/home/pi/open3e/args.txt Restart=always =====================================================================> #Erstelle den neuen Warte-Dienst (open3e-wait.service): #bash sudo nano /etc/systemd/system/open3e-wait.service #Inhalt: [Unit] Description=Start Open3e after network is really online Wants=network-online.target After=network-online.target [Service] Type=oneshot # Startet den open3e Dienst 5 Sekunden nachdem das Netzwerk online ist ExecStart=/bin/sh -c "sleep 5 && systemctl start open3e" [Install] WantedBy=multi-user.target =====================================================================> #Aktiviere den Warte-Dienst (der open3e.service wird nur durch diesen Dienst gestartet): #bash sudo systemctl daemon-reload sudo systemctl enable open3e-wait.service #Starte das System neu: #bash sudo reboot #Nach diesem Neustart MUSS der Dienst laufen. #Der open3e-wait.service stellt sicher, dass alle Umgebungsvariablen und das Netzwerk bereit sind. #Überprüfe den Status danach erneut: #bash sudo systemctl status open3e
... Mehr anzeigen