Ankündigung

Einklappen
Keine Ankündigung bisher.

Modbus Wetterstation Ecowitt WS90 (war: 868MHz Empfänger für Wetterstation)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #91
    Danke für die Antworten.

    Da ich noch viel "drum herum" zu tun habe, komme ich auf absehbare Zeit noch nicht dazu, selbst ein HAT oder was auch immer zu entwerfen - sh.. :-(

    Gut, dass das UP1 hervorgehoben wurde. Würde zwar auch passen, aber mein Gedanke wäre ein REG1 mit Modbus-Schnittstelle und zumindest einem Binär-Eingang zur Anbindung eines Regenmessers (z.B. Misol Wippe).

    Da ich noch vor Inbetriebnahme meine ABB Wetterstation vom Hausdach plane auf das Gartenhaus umzuziehen (Zugänglichkeit, Servicebarkeit,etc.) wäre ein REG1 die bevorzugte Wahl wegen Platzbeschränkung im kleinen Verteiler im Gartenhaus. Parallel werkeln würden dann ABB WES, WN90LP und Misol Regenmesser. Ja over-engineered, aber bis auf die Ecowitt schon vorhanden, und zumindest nur teilweise redundant.
    Zuletzt geändert von ur63; 26.11.2024, 11:57.

    Kommentar


      #92
      Ja das Gateway läuft auch mit 12V und ideal ist es damit auch die Wetterstation zu betreiben.

      AUSNAHME: Man nutzt das Gateway noch für andere Zwecke.
      Zuletzt geändert von Masifi; 26.11.2024, 12:20.
      www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

      Kommentar


        #93
        Zitat von henfri Beitrag anzeigen
        Ist das dann die gleiche Firmware wie die von Masifi?
        es gibt noch keine Firmware.
        Ich hatte eigentlich vor eine spezielle Wetterstations-Applikation dafür zu bauen, damit man sich die ganze Modbus-Konfiguration sparen kann.
        Aber prinzipiell könnte man auch die bestehende Modbus FW von Mat adaptieren.

        Zitat von henfri Beitrag anzeigen
        Gibt es nur das eine Exemplar? Sonst hätte ich wohl Interesse.
        ich bin mr gerade nicht sicher, aber mindestens 2. Evtl 5... Muss schauen.
        Kann ich dir ggf abtreten, aber wie gesagt keine FW und keine konkreten Pläne da was zu machen, weil mir einfach die Zeit fehlt.
        OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

        Kommentar


          #94
          Zitat von Ing-Dom Beitrag anzeigen
          ich bin mr gerade nicht sicher, aber mindestens 2. Evtl 5... Muss schauen.
          Kann ich dir ggf abtreten, aber wie gesagt keine FW und keine konkreten Pläne da was zu machen, weil mir einfach die Zeit fehlt.
          Passt die Zusatzplatine zumindest mechanisch auch in den freien Platz im REG1 und macht eine el. Adaption ans REG1 aus deiner Sicht Sinn?

          Kommentar


            #95
            Zitat von ur63 Beitrag anzeigen
            Passt die Zusatzplatine zumindest mechanisch auch in den freien Platz im REG1 und macht eine el. Adaption ans REG1 aus deiner Sicht Sinn?
            mechanisch liese sich die UP1-Applikation schon irgendwie auf ein REG1-App-Universal fädeln. Oder man baut sich auf Basis der Universal App und einem RS485 Modul einfach selbst was.

            Die Sinnhaftigkeit stelle ich aber mal in Frage weil Masifi ja ein fertiges Hutschienengerät hat. Ich meine auch dass er gerade 3 Stück "übrige" angeboten hat.

            Aber wenn du es unbedingt im REG1 haben willst kann man sich sicher hier mit moderatem Aufwand was basteln.
            OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

            Kommentar


              #96
              Zitat von Ing-Dom Beitrag anzeigen
              Die Sinnhaftigkeit stelle ich aber mal in Frage
              Die Antwort war abzusehen und dein Einwand berechtigt. Allerdings, wie bereits geschrieben, ist mein verfügbarer Platz sehr begrenzt, und deshalb würde ich 1TE klar bevorzugen.

              Zitat von Ing-Dom Beitrag anzeigen
              Oder man baut sich auf Basis der Universal App und einem RS485 Modul einfach selbst was.
              ​ Du hast auf Modul zurückgegriffen?
              Zuletzt geändert von ur63; 26.11.2024, 14:52.

              Kommentar


                #97
                Zitat von ur63 Beitrag anzeigen
                und deshalb würde ich 1TE klar bevorzugen.
                auch dieser Einwand ist berechtigt

                Zitat von ur63 Beitrag anzeigen
                Du hast auf Modul zurückgegriffen?
                Nein, natürlich nicht. Das würde im UP1 aus Platzgründen schon nicht funktionieren.
                Aber für Stückzahl 1 im REG1 könnte man das machen.
                OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                Kommentar


                  #98
                  ich hab mich jetzt mal aufgerafft und den ganzen Abend versucht Daten von der WN90LP ecowitt zu bekommen.
                  Ich war nicht erfolgreich

                  ich verwende die ModbusMaster lib. Das ist mein Test-Sketch:
                  Code:
                  #define DIR_PIN 3
                  
                  #include <ModbusMaster.h>
                  
                  // instantiate ModbusMaster object
                  ModbusMaster node;
                  
                  void preTransmission()
                  {
                      digitalWrite(DIR_PIN, 1);
                  }
                  
                  void postTransmission()
                  {
                      digitalWrite(DIR_PIN, 0);
                  }
                  
                  void setup()
                  {
                    pinMode(DIR_PIN, OUTPUT);
                    digitalWrite(DIR_PIN, 0);
                  
                    // use Serial (port 0); initialize Modbus communication baud rate
                    Serial1.begin(9600, SERIAL_8N1);
                  
                    while(!Serial);
                  
                    node.preTransmission(preTransmission);
                    node.postTransmission(postTransmission);
                  
                    // communicate with Modbus slave ID 2 over Serial (port 0)
                    node.begin(0x90, Serial1);
                  
                    Serial.println("Setup end");
                  }
                  
                  void loop()
                  {
                    static uint32_t i;
                    uint8_t j, result;
                    uint16_t data[6];
                   
                    i++;
                   
                    // set word 0 of TX buffer to least-significant word of counter (bits 15..0)
                    //node.setTransmitBuffer(0, lowWord(i));
                   
                    // set word 1 of TX buffer to most-significant word of counter (bits 31..16)
                    //node.setTransmitBuffer(1, highWord(i));
                  
                    Serial.println("readHoldingRegisters");
                    result = node.readHoldingRegisters(0x0165, 0x0001);
                  
                    if (result == node.ku8MBSuccess)
                    {
                        data[0] = node.getResponseBuffer(0);
                        Serial.print("ResponseBuffer: ");
                        Serial.println(data[0], HEX);
                    }
                    else
                    {
                      Serial.println("no success");
                    }
                    delay(2000);
                  }​
                  wenn ich mit dem oszi den TX zwischen Controller und RS485 TRansceiver aufzeichne, bekomme ich folgenden Bytestream:

                  0x90 0x03 0x01 0x65 0x00 0x01 0x89 0x68

                  Das ist für mich völlig plausibel und passt zu den Angaben im Datenblatt:
                  2024-11-28 00_36_12-Window.png

                  Es kommt aber keine Antwort. Auf der RS485 Leitung ist nach dem Telegram Ruhe.

                  Die Übertragung auf dem RS485 sieht auch plausibel aus..
                  Das hier sind die letzten Bits..
                  20241128_003405.jpg 0 0001 0110 1

                  Startbit 0x68 Stopbit
                  Was der letzten CRC entspricht...

                  Noch Ideen ?
                  OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                  Kommentar


                    #99
                    Hast Du mal verglichen wie die RS485 Daten mittels USB-Interface aussehen?
                    Bei Komunikation zwsichen sollte die blaue LED an der Station aktiv sein.

                    Oder ganz banal, ist es mir auch passiert dass ich dei beiden RS485 Leitungen verpolt hatte.

                    Kommentar


                      Zitat von uncelsam Beitrag anzeigen
                      Hast Du mal verglichen wie die RS485 Daten mittels USB-Interface aussehen?
                      nein, den Aufwand hab ich dann heute morgen um 1 Nachts gescheut alles umzubauen ^^
                      Aber das wird einer der nächsten Schritte.
                      Hoffe ich kann per USB/PC den RS485 ordentlich messen, denn ich bekomme nur aktzeptable Bilder am Oszi wenn ich Oszi GND nicht mit dem (isolierten) GND vom RS485 verbinde.. mal sehen. Heute Abend.

                      Das wäre übrigens meine Schaltung. Evtl ist ja hier noch was falsch? Aber eigentlich ist das trivial...

                      2024-11-28 08_25_37-_modbusrtu [App-GW-UP1-RS485_ModbusRTU] — Schematic Editor.png
                      OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                      Kommentar


                        Zitat von Ing-Dom Beitrag anzeigen
                        eigentlich ist das trivial...
                        Sehe ich auch so. Finde aber keine Daten zu dem Iso485.

                        Kommentar


                          Das wird ein ADM2587E oder ADM25872E sein.

                          Für die nächste REG Variante könnte der auch bei mir drin sein, dann spart man sich die zusätzliche Versorgungsspannung.
                          Zuletzt geändert von Masifi; 28.11.2024, 13:23.
                          www.smart-mf.de | KNX-Klingel | GardenControl | OpenKNX-Wiki

                          Kommentar


                            Nein, sind es nicht.

                            Kommentar


                              MIST!

                              Ich hab A auf GND und B auf 5V gezogen.
                              Andersrum wäre es korrekt. Ich hab mich von der "Standardanordnung" in den Schaltplänen der Transceiver (A unten, B oben) und unten ist GND und oben ist Vcc verleiten lassen..

                              edit:
                              Ja, das wars.

                              Code:
                              #define DIR_PIN 3
                              
                              #include <ModbusMaster.h> // using ModbusMaster library
                              
                              
                              // instantiate ModbusMaster object
                              ModbusMaster node;
                              
                              
                              void preTransmission()
                              {
                                  digitalWrite(DIR_PIN, 1);
                              }
                              
                              void postTransmission()
                              {
                                  digitalWrite(DIR_PIN, 0);
                              }
                              
                              
                              void setup()
                              {
                                while(!Serial); // ait for USB serial
                              
                                pinMode(DIR_PIN, OUTPUT);
                                digitalWrite(DIR_PIN, 0);
                                Serial.println("Set Pin 3 to Output and LOW");
                              
                                Serial1.begin(9600, SERIAL_8N1);
                                Serial.println("Set Serial1 9600 8N1");
                              
                                node.preTransmission(preTransmission);
                                node.postTransmission(postTransmission);
                                node.begin(0x90, Serial1);
                                Serial.println("Modbus Slave ID 0x90");
                              
                                Serial.println("Setup end");
                              }
                              
                              
                              void loop()
                              {
                                uint8_t result;
                                uint16_t data[6];  
                              
                                Serial.println("readHoldingRegisters(cmd 0x03) 0x0160, Length 0x0001");
                                result = node.readHoldingRegisters(0x0160, 0x0001);
                              
                                Serial.print("Result: 0x");
                                Serial.println(result, HEX);
                              
                                data[0] = node.getResponseBuffer(0);
                                Serial.print("ResponseBuffer: ");
                                Serial.println(data[0], HEX);
                              
                                Serial.println("Pause 2s");
                                delay(2000);
                              }​
                              Ausgabe:
                              Code:
                               
                               Set Pin 3 to Output and LOW 
                               Set Serial1 9600 8N1 
                               Modbus Slave ID 0x90 
                               Setup end 
                               readHoldingRegisters(cmd 0x03) 0x0160, Length 0x0001 
                               Result: 0x0 
                               ResponseBuffer: 90 
                               Pause 2s 
                               readHoldingRegisters(cmd 0x03) 0x0160, Length 0x0001 
                               Result: 0x0 
                               ResponseBuffer: 90 
                               Pause 2s 
                               readHoldingRegisters(cmd 0x03) 0x0160, Length 0x0001 
                               Result: 0x0 
                               ResponseBuffer: 90 
                               Pause 2s​
                              Zuletzt geändert von Ing-Dom; 28.11.2024, 18:56.
                              OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

                              Kommentar


                                Zitat von Masifi Beitrag anzeigen
                                Das wird ein ADM2587E oder ADM25872E sein.
                                Höchstwahrscheinlich ein CA-IS2092A

                                Kommentar

                                Lädt...
                                X