Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Linux Shell-Skript] WLAN-Wetterstation

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thomas Braun
      Thomas Braun Most Active @Rene55 last edited by

      @rene55 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

      Die Dateien, die das Script jetzt schreibt sind 'root:root'. Ist das so richtig

      Vermutlich nicht. Das skript darf nur Rechte im Kontext des users schreiben der es aufruft. Das kommt noch von dem falschen Besitzer des files.

      1 Reply Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @Gezi70 last edited by

        @gezi70 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

        Ich habe ein völlig neues Verzeichnis angelegt und neue Dateien eingefügt...

        Hört sich schwer nach Desktop-Betrieb an...

        G 1 Reply Last reply Reply Quote 0
        • G
          Gezi70 @Thomas Braun last edited by

          @thomas-braun

          pi@raspberrypi:~ $ mv /home/iobroker/wetterstation* /home/pi/wetterstation
          mv: das Verschieben von '/home/iobroker/wetterstation.conf' nach '/home/pi/wetterstation/wetterstation.conf' ist nicht möglich: Keine Berechtigung
          mv: das Verschieben von '/home/iobroker/wetterstation.sh' nach '/home/pi/wetterstation/wetterstation.sh' ist nicht möglich: Keine Berechtigung
          mv: das Verschieben von '/home/iobroker/wetterstation.sub' nach '/home/pi/wetterstation/wetterstation.sub' ist nicht möglich: Keine Berechtigung
          
          
          Thomas Braun 1 Reply Last reply Reply Quote 0
          • Rene55
            Rene55 last edited by

            @Thomas-Braun Kann ich gerade nicht so nachvollziehen.

            pi@raspberrypi:~/weather $ ls -la
            total 136
            drwxr-xr-x 3 pi   pi    4096 Jan  4 00:00 .
            drwxr-xr-x 4 pi   pi    4096 Jan  2 10:37 ..
            -rw-r--r-- 1 root root  9377 Jan  3 23:59 20220103_station.log
            -rw-r--r-- 1 root root  1594 Jan  4 14:38 20220104_station.log
            drwxr-xr-x 2 pi   pi    4096 Jan  3 15:25 Version:2.10.1
            -rw-r--r-- 1 pi   pi    6075 Jan  3 15:43 wetterstation.conf
            -rwxr--r-- 1 pi   pi   15867 Jan  3 15:03 wetterstation.sh
            -rw-r--r-- 1 pi   pi   65396 Jan  3 15:45 wetterstation.sub
            -rwxr--r-- 1 pi   pi   16659 Jan  3 15:05 ws_updater.sh
            
            

            Das Script läuft doch als pi.

            Thomas Braun 1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @Gezi70 last edited by

              @gezi70 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

              /home/pi/wetterstation

              ls -la /home/pi/wetterstation
              
              G 2 Replies Last reply Reply Quote 0
              • G
                Gezi70 @Thomas Braun last edited by

                @thomas-braun läuft jetzt, danke

                1 Reply Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @Rene55 last edited by

                  @rene55

                  Hast du den Service jetzt neugestartet?

                  Da ich das skript nicht kenne weiß ich auch nicht was da genau läuft bzw. laufen sollte. Muss dir @SBorg wohl sagen.

                  Rene55 1 Reply Last reply Reply Quote 0
                  • Rene55
                    Rene55 @Thomas Braun last edited by Rene55

                    @thomas-braun Ich habs gerade gesehen. Im HTOP wird das Script als root ausgeführt - das erklärt die Ablage der neuen Files als root. Dann muss bei der Erstellung des systemd was falsch sein - nur was?
                    Irgendwo muss ein Knoten sein. Starte ich das Script von Hand läuft es als pi - beim Schreiben des Logfiles gibt es dann 'Permission denied'.

                    SBorg 1 Reply Last reply Reply Quote 0
                    • SBorg
                      SBorg Forum Testing Most Active @Rene55 last edited by

                      @rene55 That's my fault 😞

                      Geändert habe ich es schon lange, aber irgendwie vergessen zu kommunizieren. Der systemd lädt beim booten den Service per default unter "root".
                      Deswegen habe ich im ws_updater den Service so anlegen lassen:

                      [Unit]
                      	Description=Service für ioBroker Wetterstation
                      	
                      [Service]
                              User=$(whoami)
                              Group=$(whoami)
                      	ExecStart=${DIR}/wetterstation.sh
                      
                      [Install]
                      	WantedBy=multi-user.target
                      

                      whoami ("wer_bin_ich") wird dabei durch den aktuell angemeldeten Usernamen ersetzt.
                      Muss ich wohl hier einen Mini-Patch bereitstellen der es patcht, oder ihr (betrifft alle, außer diejenigen die den Service mittels ws_updater anlegen ließen) editiert es selbst hinein:

                      sudo nano /etc/systemd/system/wetterstation.service
                      Dann unter "Service" die beiden Zeilen

                      User=
                      Group=
                      

                      ergänzen und mit eurem Loginnamen befüllen und speichern.
                      Service restarten: systemctl restart wetterstation

                      Dann läuft es im User-Kontext.
                      Eben noch geändert: siehe WiKi (fast ganz unten)

                      Rene55 1 Reply Last reply Reply Quote 2
                      • Rene55
                        Rene55 @SBorg last edited by

                        @sborg Super. Gefixt, Script läuft als 'pi' und schreibt auch Logs als 'pi'. 👍 Mercy

                        1 Reply Last reply Reply Quote 0
                        • A
                          Andre105 last edited by

                          Mit was für ein Editor öffne ich das ?

                          Das war´s auch schon mit der Konfiguration des Skriptes.
                          
                          Anlegen der Datenobjekte im ioBroker: Wir öffnen wetterstation.js aus dem Paket mit einem Texteditor, kopieren uns den gesamten Inhalt in die Zwischenablage und wechseln zum ioBroker. Dort wählen wir "Skripte" und legen per Klick auf das "+" ein neues Javascript vom Typ "Javascript" an. Speicherort (unter common) und Bezeichnung sind frei wählbar. In dieses leere Skript fügen wir nun den Inhalt der Zwischenablage ein. Falls eine andere Instanz des Javascript-Adapters oder eine andere Datenobjektstruktur benutzt wird, muss noch let DP="javascript.0.Wetterstation." angepasst (identische Einstellung wie in der wetterstation.conf unter PRE_DP) werden. Beachtet unbedingt den Punkt hinter "Wetterstation"! Falls das Gateway und/oder Zusatzsensoren (DP40/50/60/70/100/200/250/300 bzw. deren WHxxx-Derivate) benutzt werden muss deren Anzahl nun noch eingetragen werden.
                          
                          1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active last edited by

                            @andre105

                            nano
                            ist vermutlich der einfachste Editor auf Kommandozeile.

                            A 1 Reply Last reply Reply Quote 0
                            • A
                              Andre105 @Thomas Braun last edited by

                              @thomas-braun sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                              @andre105

                              nano
                              ist vermutlich der einfachste Editor auf Kommandozeile.

                              Dann müsstw ich die Skriptdatei (wetterstation.js)auch in den Ordner verschieben?

                              Thomas Braun 1 Reply Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @Andre105 last edited by

                                @andre105 Irgendein Verzeichnis im /home des users. Der Pfad dorthin wird ja in der service-Datei angegeben.

                                1 Reply Last reply Reply Quote 0
                                • A
                                  Andre105 last edited by

                                  Habe den Skript angelegt,gestartet und wieder gestoppt.
                                  19220a34-0ec8-42b5-889e-39a1f16db07c-image.png

                                  Jetzt in Putty den Befehl ausgefürt.

                                  andre105@iobroker:~/wetter$ ./wetterstation.sh --debug
                                  wetterstation: ERROR #000 - Config-Version mismatch!
                                  
                                  benutzt: Settings        benötigt wird: V2.10.0
                                  andre105@iobroker:~/wetter$
                                  

                                  Was ist das für ein Fehler?

                                  SBorg 1 Reply Last reply Reply Quote 0
                                  • SBorg
                                    SBorg Forum Testing Most Active @Andre105 last edited by

                                    @andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                    benutzt: Settings benötigt wird: V2.10.0

                                    Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
                                    In deinem Wetter-Verzeichnis: head -n 1 wetterstation.conf

                                    Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :

                                    ### Settings V2.10.0 -----------------------------------------------------------
                                    
                                    A 1 Reply Last reply Reply Quote 0
                                    • A
                                      Andre105 @SBorg last edited by Andre105

                                      @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                      @andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                      benutzt: Settings benötigt wird: V2.10.0

                                      Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
                                      In deinem Wetter-Verzeichnis: head -n 1 wetterstation.conf

                                      Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :

                                      ### Settings V2.10.0 -----------------------------------------------------------
                                      

                                      Ja stimmt.

                                      Jetzt kam dieses bei raus.

                                       WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg
                                       Config-Version: V2.10.0
                                       Sub-Version   : V2.10.1
                                      
                                       'bc' installiert: [✓]
                                       'jq' installiert: [✓]
                                      
                                      [sudo] Passwort für andre105:
                                       ┌────────────────────────────────────────────────────────────┐
                                       │                                                            │
                                       │  "netcat" ist nicht in der benötigten Version installiert! │
                                       │                                                            │
                                       │    Soll er nun installiert werden? [J/N]: j                │
                                       │                                                            │
                                       └────────────────────────────────────────────────────────────┘
                                      
                                      Paketlisten werden gelesen… Fertig
                                      Abhängigkeitsbaum wird aufgebaut… Fertig
                                      Statusinformationen werden eingelesen… Fertig
                                      Die folgenden NEUEN Pakete werden installiert:
                                        netcat-openbsd
                                      0 aktualisiert, 1 neu installiert, 0 zu entfernen und 14 nicht aktualisiert.
                                      Es müssen 41,1 kB an Archiven heruntergeladen werden.
                                      Nach dieser Operation werden 114 kB Plattenplatz zusätzlich benutzt.
                                      Holen:1 http://ftp.de.debian.org/debian bullseye/main amd64 netcat-openbsd amd64 1.217-3 [41,1 kB]
                                      Es wurden 41,1 kB in 0 s geholt (104 kB/s).
                                      Vormals nicht ausgewähltes Paket netcat-openbsd wird gewählt.
                                      (Lese Datenbank ... 43532 Dateien und Verzeichnisse sind derzeit installiert.)
                                      Vorbereitung zum Entpacken von .../netcat-openbsd_1.217-3_amd64.deb ...
                                      Entpacken von netcat-openbsd (1.217-3) ...
                                      netcat-openbsd (1.217-3) wird eingerichtet ...
                                      update-alternatives: /bin/nc.openbsd wird verwendet, um /bin/nc (nc) im automatischen Modus bereitzustellen
                                      Trigger für man-db (2.9.4-2) werden verarbeitet ...
                                      
                                      
                                      Connection to 192.168.178.64 8087 port [tcp/*] succeeded!
                                      
                                      
                                      
                                       WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg
                                       Config-Version: V2.10.0
                                       Sub-Version   : V2.10.1
                                      
                                       'bc' installiert: [✓]
                                       'jq' installiert: [✓]
                                      
                                       'nc' in der Openbsd-Variante installiert:  [✓]
                                       'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
                                      
                                      
                                      Connection to 192.168.178.64 8087 port [tcp/*] succeeded!
                                      
                                      
                                      Messwerteblock:
                                      
                                      
                                      Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokol                 l)!
                                      
                                      Temperatur Innen        :  °C
                                      Temperatur Aussen       :  °C
                                      Taupunkt                :  °C
                                      Gefühlte Temperatur     :  °C
                                      Luftfeuchte Innen       :  %
                                      Luftfeuchte Aussen      :  %
                                      Windgeschwindkeit       :  km/h
                                      Windböengeschwindkeit   :  km/h
                                      max. Windböe            :  km/h
                                      Windrichtung            :  °
                                      Windrichtung            :
                                      Luftdruck absolut       :  hPa
                                      Luftdruck relativ       :  hPa
                                      Regenrate               :  mm/h
                                      Regenstatus             :
                                      Regen seit Regenbeginn  :  mm
                                      Regen Stunde            :  mm
                                      Regen Tag               :  mm
                                      Regen Woche             :  mm
                                      Regen Monat             :  mm
                                      Regen Jahr              :  mm
                                      Regen Gesamt            :  mm
                                      Sonnenstrahlung         :  W/m²
                                      UV-Index                :
                                      Zeitstempel             :
                                      Firmware                :
                                      Batteriestand:          :
                                      Gateway-Modell          :
                                      
                                      Zusatzsensoren:
                                      
                                      
                                      
                                      Datenstring für ioBroker:
                                      
                                      
                                      
                                      DATA von Wetterstation:
                                      
                                      
                                      
                                      Debug VAR:
                                      Installationsverzeichnis: /home/andre105/wetter
                                      IPP: 192.168.178.64:8087        WS_PORT: 6969           WS_POLL: 30             PRE_DP: javascript.0.We                 tterstation
                                      WEB: HTTP               WS_PROT: Ecowitt        DP40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 |                  0 | 0
                                      WH31: 0
                                      Script-Version: V2.10.1 Config-Version: V2.10.0 Sub-Version: V2.10.1
                                      
                                      Kommunikationsfehler!
                                      
                                      andre105@iobroker:~/wetter$
                                      
                                      
                                      SBorg 1 Reply Last reply Reply Quote 0
                                      • G
                                        Gezi70 @Thomas Braun last edited by Gezi70

                                        @thomas-braun Ich habe mal wieder drin rum gemehrt und nichts geht mehr:

                                        Ich wollte ein anderes Verzeichnis in /home/pi anlegen und habe die Dateien dort hinein kopiert.
                                        Nach Anpassen der ExecStart Datei auf den neuen Pfad findet das system trotz der genauen Angabe die Datei wetterstation.sh nicht. Es kommen keine Daten mehr rein... Wie kann ich nochmal von vorne anfangen?

                                        pi@raspberrypi:~ $ ./wetterstation.sh --data
                                        -bash: ./wetterstation.sh: Datei oder Verzeichnis nicht gefunden
                                        
                                        

                                        und beim Ausführen im Verzeichnis:

                                        pi@raspberrypi:~/Wetterscript $ ./wetterstation.sh --data
                                        -bash: ./wetterstation.sh: Keine Berechtigung
                                        
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          Gezi70 last edited by

                                          Jetzt geht es wieder. Ich hatte vergessen den TCP Port in der Config einzutragen. Dann kanns auch nicht gehen...

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tege0 @SBorg last edited by tege0

                                            @sborg Danke für die hilfe,

                                            zu 1.) Es hat geholfen auf Default zu stellen, hiernach hab ich die Messwerte bekommen.

                                            2.) Danke für das Skript, funktioniert.

                                            3.) Ich ersuche die Werte über Blockly auf die Alias Datenpunkt umzulegen. Man hat aber hier ja nur mit den Wissen die Info das es für die Abfrage von Windy und Opensensmap ist.

                                            4.) Danke für das Skript, funktioniert.

                                            Zu den Hintergrundbilder:
                                            Leider konnte ich durch Grafana Contianer nicht dirket auf den Pfad zugreifen. Ich habe dann den Pfad /var/lib/grafana ausgelagert. Diese ientspricht aber nicht den Pfad ausden Skript und ich finde das Panel nicht bzw. wenn ich eine neues einfüge verschiebt sich alles.
                                            Ich habe nun die Bilder unter /docker/grafana/plugins/yesoreyeram-boomtheme-panel/img/Wetter abgelegt. Folgendes Fehlerbild hat sich ergeben ich finde aber nicht die Einstellungen für den Pfad. (siehe Bild unten)

                                            Pimpmystation:
                                            Sehr Interessant, onedrop Regen fände ich sehr wichtig.

                                            49a505e8-2cf3-4879-84e9-5eba63217a50-image.png

                                            SBorg 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            900
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            147
                                            5570
                                            3346908
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo