Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Aussentemperatur Wetterstation WS980Wifi in iobroker

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    763

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Aussentemperatur Wetterstation WS980Wifi in iobroker

Geplant Angeheftet Gesperrt Verschoben Off Topic
23 Beiträge 5 Kommentatoren 1.5k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • paul53P paul53

    @pascal-bay sagte: /usr/local/addons/weather/weather.tcl

    Wenn die Zeile vor "return $zahl" bei dir fehlt, dann füge sie ein.

    # - liest ein Word vom Binärstring liefert Zahl von -32768 bis 32768
    proc getw {idx} {
       global global_binout
       set sb [string index $global_binout $idx]
       scan $sb %c asciih
       set idx [expr $idx + 1]
       set sb [string index $global_binout $idx]  
       scan $sb %c asciil
       set zahl [expr $asciil + { $asciih * 256}]
       if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}
       return $zahl
    } 
    
    Pascal BayP Offline
    Pascal BayP Offline
    Pascal Bay
    schrieb am zuletzt editiert von
    #14

    @paul53 said in Aussentemperatur Wetterstation WS980Wifi in iobroker:

    if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}

    Vielen Dank! Bei mir sieht das so aus? Ein Tip, was ich ändern kann? Danke!

    Bildschirmfoto 2025-01-14 um 20.02.26.jpg

    HomoranH paul53P 2 Antworten Letzte Antwort
    0
    • Pascal BayP Pascal Bay

      @paul53 said in Aussentemperatur Wetterstation WS980Wifi in iobroker:

      if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}

      Vielen Dank! Bei mir sieht das so aus? Ein Tip, was ich ändern kann? Danke!

      Bildschirmfoto 2025-01-14 um 20.02.26.jpg

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #15

      @pascal-bay sagte in Aussentemperatur Wetterstation WS980Wifi in iobroker:

      Ein Tip, was ich ändern kann?

      @paul53 sagte in Aussentemperatur Wetterstation WS980Wifi in iobroker:

      Wenn die Zeile vor "return $zahl" bei dir fehlt, dann füge sie ein.

      das ist

      if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}
      

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • Pascal BayP Pascal Bay

        @paul53 said in Aussentemperatur Wetterstation WS980Wifi in iobroker:

        if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}

        Vielen Dank! Bei mir sieht das so aus? Ein Tip, was ich ändern kann? Danke!

        Bildschirmfoto 2025-01-14 um 20.02.26.jpg

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #16

        @pascal-bay sagte: Bei mir sieht das so aus?

        Das ist die falsche Prozedur. Die richtige ist getw{idx}.

        EDIT: Woher ist deine "weather.tcl"? Die TCL-Datei aus "weatherV2b.zip" sieht anders aus. Anfang:

        #!/bin/tclsh
        
        load tclrega.so
        
        # - hier nur die IP Addresse anpassen
          set debug_mode 0
          set wait_between_status_requests 1
          set connection_timeout 500
          set wait_between_retries 200
          set status_retries 5
          set command_retries 10
          set matchport_host 192.168.0.129 
          set matchport_port 45000
        
        
        
        # - liest ein Byte vom Binärstring - liefert Zahl von 0 - 255
        proc getb {idx} {
           global global_binout
           set sb [string index $global_binout $idx]
           scan $sb %c ascii
           return $ascii
        }
        # - liest ein Word vom Binärstring liefert Zahl von -32768 bis 32768
        proc getw {idx} {
           global global_binout
           set sb [string index $global_binout $idx]
           scan $sb %c asciih
           set idx [expr $idx + 1]
           set sb [string index $global_binout $idx]  
           scan $sb %c asciil
           set zahl [expr $asciil + { $asciih * 256}]
           if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}
           return $zahl
        } 
        # - liest ein Longword vom Binärstring und liefert Zahl von 0 - 4294967295
        proc getl {idx} {
           global global_binout
           set sb [string index $global_binout $idx]
           scan $sb %c ascii3
           set idx [expr $idx + 1]
           set sb [string index $global_binout $idx]  
           scan $sb %c ascii2
           set idx [expr $idx + 1]
           set sb [string index $global_binout $idx]  
           scan $sb %c ascii1   
           set idx [expr $idx + 1]
           set sb [string index $global_binout $idx]  
           scan $sb %c ascii0   
           set zahl [expr $ascii0 + {$ascii1 * 256} + {$ascii2 * 65536} + {$ascii3 * 16777216}]
           return $zahl
        }
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        Pascal BayP 1 Antwort Letzte Antwort
        1
        • paul53P paul53

          @pascal-bay sagte: Bei mir sieht das so aus?

          Das ist die falsche Prozedur. Die richtige ist getw{idx}.

          EDIT: Woher ist deine "weather.tcl"? Die TCL-Datei aus "weatherV2b.zip" sieht anders aus. Anfang:

          #!/bin/tclsh
          
          load tclrega.so
          
          # - hier nur die IP Addresse anpassen
            set debug_mode 0
            set wait_between_status_requests 1
            set connection_timeout 500
            set wait_between_retries 200
            set status_retries 5
            set command_retries 10
            set matchport_host 192.168.0.129 
            set matchport_port 45000
          
          
          
          # - liest ein Byte vom Binärstring - liefert Zahl von 0 - 255
          proc getb {idx} {
             global global_binout
             set sb [string index $global_binout $idx]
             scan $sb %c ascii
             return $ascii
          }
          # - liest ein Word vom Binärstring liefert Zahl von -32768 bis 32768
          proc getw {idx} {
             global global_binout
             set sb [string index $global_binout $idx]
             scan $sb %c asciih
             set idx [expr $idx + 1]
             set sb [string index $global_binout $idx]  
             scan $sb %c asciil
             set zahl [expr $asciil + { $asciih * 256}]
             if {$zahl > 32767} then {set zahl ~[expr 65535 - $zahl]}
             return $zahl
          } 
          # - liest ein Longword vom Binärstring und liefert Zahl von 0 - 4294967295
          proc getl {idx} {
             global global_binout
             set sb [string index $global_binout $idx]
             scan $sb %c ascii3
             set idx [expr $idx + 1]
             set sb [string index $global_binout $idx]  
             scan $sb %c ascii2
             set idx [expr $idx + 1]
             set sb [string index $global_binout $idx]  
             scan $sb %c ascii1   
             set idx [expr $idx + 1]
             set sb [string index $global_binout $idx]  
             scan $sb %c ascii0   
             set zahl [expr $ascii0 + {$ascii1 * 256} + {$ascii2 * 65536} + {$ascii3 * 16777216}]
             return $zahl
          }
          
          Pascal BayP Offline
          Pascal BayP Offline
          Pascal Bay
          schrieb am zuletzt editiert von
          #17

          @paul53 Einmal mehr Danke. Ich habe die weather.tcl aus WS980WiFiV2a also noch 2b. Es scheint aber, dass die Zeile da ist. Anbei der richtige Auszug getw{idx}.

          Bildschirmfoto 2025-01-15 um 09.52.15.jpg

          paul53P 1 Antwort Letzte Antwort
          0
          • Pascal BayP Pascal Bay

            @paul53 Einmal mehr Danke. Ich habe die weather.tcl aus WS980WiFiV2a also noch 2b. Es scheint aber, dass die Zeile da ist. Anbei der richtige Auszug getw{idx}.

            Bildschirmfoto 2025-01-15 um 09.52.15.jpg

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #18

            @pascal-bay sagte: Auszug getw{idx}.

            Dann sollten negative Werte geliefert werden, denn aufgerufen wird die Prozedur für die Außentemperatur so:

                        set atemp [expr double([getw 10]) / 10]
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            Pascal BayP 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @pascal-bay sagte: Auszug getw{idx}.

              Dann sollten negative Werte geliefert werden, denn aufgerufen wird die Prozedur für die Außentemperatur so:

                          set atemp [expr double([getw 10]) / 10]
              
              Pascal BayP Offline
              Pascal BayP Offline
              Pascal Bay
              schrieb am zuletzt editiert von
              #19

              @paul53 Danke. Sehe ich das richtig, dann ist mein getw{idx} richtig? Der Fehler muss also woanders liegen?

              paul53P Pascal BayP 2 Antworten Letzte Antwort
              0
              • Pascal BayP Pascal Bay

                @paul53 Danke. Sehe ich das richtig, dann ist mein getw{idx} richtig? Der Fehler muss also woanders liegen?

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #20

                @pascal-bay sagte: Der Fehler muss also woanders liegen?

                Sieht so aus.
                Hast du die TCL-Datei ausgetauscht? Oben ist die globale Variable answer und im letzten Post ist sie global_binout.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • Pascal BayP Pascal Bay

                  @paul53 Danke. Sehe ich das richtig, dann ist mein getw{idx} richtig? Der Fehler muss also woanders liegen?

                  Pascal BayP Offline
                  Pascal BayP Offline
                  Pascal Bay
                  schrieb am zuletzt editiert von
                  #21

                  Du hast recht ich habe zwei TCL Dateien auf meinem Rechner. Ich gehe aber davon aus, dass die global_binout am laufen ist, denn alle anderen Werte werden korrekt in die Variablen gespeichert. Soll ich trotzdem versuchen mal die global_binout zu laden. Habe etwas Angst, dass dann der Rest auch nicht mehr läuft Klar wäre es super toll wenn ich das hin bekommen würde..... Danke für die Hilfe.

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • Pascal BayP Pascal Bay

                    Du hast recht ich habe zwei TCL Dateien auf meinem Rechner. Ich gehe aber davon aus, dass die global_binout am laufen ist, denn alle anderen Werte werden korrekt in die Variablen gespeichert. Soll ich trotzdem versuchen mal die global_binout zu laden. Habe etwas Angst, dass dann der Rest auch nicht mehr läuft Klar wäre es super toll wenn ich das hin bekommen würde..... Danke für die Hilfe.

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #22

                    @pascal-bay sagte: habe zwei TCL Dateien

                    Aber nicht als /usr/local/addons/weather/weather.tcl, die durch CUxD ausgeführt wird.

                    @pascal-bay sagte in Aussentemperatur Wetterstation WS980Wifi in iobroker:

                    global_binout am laufen ist

                    global_binout ist eine globale Variable innerhalb des TCL-Skriptes. Sie beinhaltet den kompletten Antwort-String der Wetterstation.

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    Pascal BayP 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @pascal-bay sagte: habe zwei TCL Dateien

                      Aber nicht als /usr/local/addons/weather/weather.tcl, die durch CUxD ausgeführt wird.

                      @pascal-bay sagte in Aussentemperatur Wetterstation WS980Wifi in iobroker:

                      global_binout am laufen ist

                      global_binout ist eine globale Variable innerhalb des TCL-Skriptes. Sie beinhaltet den kompletten Antwort-String der Wetterstation.

                      Pascal BayP Offline
                      Pascal BayP Offline
                      Pascal Bay
                      schrieb am zuletzt editiert von
                      #23

                      @paul53 Vielen Dank für die Antwort. Ich probiere es einmal aus und melde mich wieder wenn ich es hinbekommen habe oder nochmals auf Hilfe angewiesen bin.

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      733

                      Online

                      32.6k

                      Benutzer

                      82.0k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe