Hilfe zu Grove Serial RF Pro

Moin Moin liebes Forum

Ich Arbeite grade an ein Projekt mit einer Wetterstation,
Dazu habe ich mir Folgende Wetterstation geholt Eurochron.
Die Wetterstation hat ein eingebautes Funkmodul was auf 868,33-868,37Mhz sendet.
Nun will ich die Daten mit ein Arduino Nano Weiterverarbeiten, dazu hab ich mir ein 868Mhz Empänger rausgesucht, dabei hab ich kaum welche gefunden die auch von der handhabung einfach mit dem Arduino zu bedienen sind, aber schließlich hab ich von Grove den Serial RF Pro gefunden der sowol Senden als auch Empfangen kann und das auf verschiedene Frequenzen (433/470/868/915MHz)

So jetzt war Grove auch so nett und hat auch ein Beispiel Code hinterlegt und auch eine recht gute Erklärung wie man den Serial RF Pro den auch Einstellt.

Grove´s Wiki zum Serial RF Pro

Code vom Grove

//send data routine
 
// link between the computer and the SoftSerial Shield
//at 9600 bps 8-N-1
//Computer is connected to Hardware UART
//SoftSerial Shield is connected to the Software UART:D2&D3
 
#include <SoftwareSerial.h>
 
SoftwareSerial SoftSerial(11, 10); // TX, RX
int buffer[64];
int count=0;
void setup()
{
    SoftSerial.begin(9600);               // the SoftSerial baud rate
    Serial.begin(9600);             // the Serial port of Arduino baud rate.
 
}
 
void loop()
{
    delay(1000);
    SoftSerial.write(0xAA);
    SoftSerial.write(0xFA);
    SoftSerial.write(0xE1);
 
    if (SoftSerial.available())              // if date is coming from software serial port ==> data is coming from SoftSerial shield
    {
        while(SoftSerial.available())          // reading data into char array
        {
            buffer[count++]=SoftSerial.read();     // writing data into array
            if(count == 64)break;
        }
        for (int i=0; i<count; i++) {
            Serial.print(buffer[i],HEX);            // if no data transmission ends, write buffer to hardware serial port
        }
        clearBufferArray();              // call clearBufferArray function to clear the stored data from the array
        count = 0;                       // set counter of while loop to zero
    }
    if (Serial.available())            // if data is available on hardware serial port ==> data is coming from PC or notebook
    SoftSerial.write(Serial.read());       // write it to the SoftSerial shield
    Serial.println("...");
}
void clearBufferArray()              // function to clear buffer array
{
    for (int i=0; i<count;i++)
    { buffer[i]=NULL;}                  // clear all index of array with command NULL
}

So nun wäre ich ja nicht hier wenn alles Klappen würde…
Ich hab erstmal versucht überhaupt etwas zu Empfängen, Standart gemäß ist das Modul auf 433Mhz eingestellt, da hab ich erstmal mit ein 433Mhz Sender mein glück versucht aber empfangen tu ich nichts.
Ich hab versucht mich so gut wie es geht an die Anleitung zuhalten und auch wie man das Modul dne umstellt aber dabei soll man immer so ist es erklärt eine Rückantwort bekommen aber die bekomme ich nicht, soweit ich die 2 pins auf GND setzte bekomme ich im Seriel Monitor nur “19DE5080002580069237002580” angezeigt.

Hab auch schon das Internet durchforstet aber leider auch ohne wirklichen erfolg, ich lande immer nur auf der Seite von Grove oder ähnlichen seiten die die gleiche Anleitung benutzen.

Nun Frag ich euch einfach mal Ob wer schon Erfahrung gemacht hat mit dem Grove Serial RF Pro Modul und mir da weiter Helfen kann, oder sogar ein besseren 868Mhz Empänger mir Empfehlen kann.
Ich bedanke mich jetzt schonmal für jede gute Hilfe

um Vorhab fragen zu beantworten, ich habe das modul nicht wie beim Wiki an ein Grove Base Shield Angeschlossen sonder Direkt an GND->GND VCC->5V RX->D10 TX->D11.

Habe auch den Beispielcode von SoftwareSerial laufen lassen aber auch ohne Ergebnisse.

Hast du denn die genaue Frequenz des Wettermoduls ?
Hast du das Funkprotokoll des Moduls ?

Ohne diese Angaben wird es schwer.

Wie oben schon genannt Sendet die Wetterstation auf 868,33-868,37Mhz laut Datenblatt

und ein Funkprotokoll vom Modul hab ich nicht,
alles was ich dafür habe ist das Modul selber und den Beispiel code vom Hersteller Grove.
und im Wiki steht soweit nichts von einem Protokoll.

JakoI3:
Wie oben schon genannt Sendet die Wetterstation auf 868,33-868,37Mhz laut Datenblatt

und ein Funkprotokoll vom Modul hab ich nicht,
alles was ich dafür habe ist das Modul selber und den Beispiel code vom Hersteller Grove.
und im Wiki steht soweit nichts von einem Protokoll.

Na dann hast du ein Problem.

Das Modul sendet nur auf einer Frequenz, und die musst du genau kennen.
So ist das nun mal bei Funk.

Auch das Protokoll musst du kennen. Ohne dem bekommst du keine nutzbaren Daten.
Auch das ist normal, bei allen Daten.

Edit:
Sollte keiner die notwendigen Infos zur Verfügung stellen können, bleibt dir nur diese vom Hersteller zu erfragen oder googeln.

JakoI3:
Ich hab versucht mich so gut wie es geht an die Anleitung zuhalten und auch wie man das Modul dne umstellt aber dabei soll man immer so ist es erklärt eine Rückantwort bekommen aber die bekomme ich nicht, soweit ich die 2 pins auf GND setzte bekomme ich im Seriel Monitor nur "19DE5080002580069237002580" angezeigt.

Du schreibst von zwei verschiedenen Frequenzen. Hast Du auch ganz sicher die Richtige eingestellt? In Deinem Code sehe ich nichts davon, dass überhaupt eine Frequenz eingestellt wird. Probiere diese Frequenzen durch und kontrolliere auch, ob es auch wirklich Deine Station ist, die Du zu empfangen glaubst. Kommt alle 16 Sekunden die Gleiche Meldung? Ändert sich diese, wenn Du die Sensoren von Hand manipulierst?

Wenn Du nicht weißt, was die empfangenen Daten bedeuten, kannst Du nur versuchen, deren Informationsgehalt zu erraten oder irgendwie auszutüfteln. So etwas steht üblicherweise in der Doku eines Übertragungsprotokolls.

Finde auf jeden Fall erst einmal heraus, ob Du tatsächlich das empfängst was Deine Wetterstation sendet (und nicht irgendeine in der Nachbarschaft).

Gruß

Gregor

(deleted)

gregorss:
Du schreibst von zwei verschiedenen Frequenzen. Hast Du auch ganz sicher die Richtige eingestellt? In Deinem Code sehe ich nichts davon, dass überhaupt eine Frequenz eingestellt wird.

Das Wird auch nicht über dem Code Eingestellt.
dafür brauch man eine Serielle Verbindung.
um mich kurz zufassen legt man am Modul 2 Pins auf LOW also GND und dann kann man diesen Konfigurieren mit "Commands" wie es der Hersteller sagt.
Diese sehen wie folgt aus: "AA FA E1 D2 33 CB E3 40" mit diesen "Command" würde ich das Modul jetzt auf 869Mhz einstellen.
aber sobald ich die 2 Pins auf LOW setzte gibt der Serielle Monitor die ganze zeit "19DE5080002580069237002580" von sich und ich habe keine Ahnung was er mir damit sagen will.
auch wenn ich den ein "Command" losschicken will bekomme ich keine Rückantwort, obwohl es eine geben müsste.
Ich weiß nicht ob ich was übersehen habe deshalb hier nochmal die Bedienungsanleitung vom Hersteller Grove Seriel RF Pro

Und habe erstmal mit 433Mhz(standart eingestellt) getestet da ich dafür ein Sender habe um einwenig einfluss darüber zu haben das ich nur das bekomme was ich auch Sende, ein 2 Nano ist dafür so Programmiert das er jede Minute die Dezimalzahl 1234 Sendet. und sobald das einwandfrei klappt wollte ich das Modul auf 868Mhz umstellen, um dann zusehen was ich von der Wetterstation bekomme.

nimm mal eine Suchmaschine deiner Wahl und suche nach Decoder for Eurochron oder Decoding Eurochron.

Viel Erfolg beim Filtern der Suchergebnisse.

Danke dir, werde mal mein glück versuchen und mich da einwenig Einlesen.

JakoI3:

Und habe erstmal mit 433Mhz(standart eingestellt) getestet da ich dafür ein Sender habe um einwenig einfluss darüber zu haben das ich nur das bekomme was ich auch Sende, ein 2 Nano ist dafür so Programmiert das er jede Minute die Dezimalzahl 1234 Sendet.

Und was ist das für ein Sender, den du da verwendest ?
So wie ich es aus dem Datenblatt herausgelesen haben, macht dein Grove.Modul FSK.
Und ich vermute, dein Sender macht ASK.

Das funktioniert schon mal nicht zusammen.
Du solltest dich mal mit den Grundlagen der Funktechnik ein wenig beschäftigen.
Du kannst nicht einfach irgen welche Teile zusammenstricken und glauben es funktioniert.
Da müssen schon einige Parameter (hatte ich dir schon geschrieben) zusammen passen.

Nachtrag:
Wenn du die Funktion deines Grove-Moduls testen willst, solltest du dir 2 gleiche Module anschaffen.
Also einfach noch eins nachbestellen.

Zumindest kannst du dann die Funktionen untereinander testen, was leider nicht bedeutet, das es auch mit deiner Wetterstation funktioniert.

Mein Tipp:
Besorge dir zu Wetterstation das zugehörige Display und du hast weniger Probleme.

JakoI3:
Diese sehen wie folgt aus: "AA FA E1 D2 33 CB E3 40" mit diesen "Command" würde ich das Modul jetzt auf 869Mhz einstellen.
aber sobald ich die 2 Pins auf LOW setzte gibt der Serielle Monitor die ganze zeit "19DE5080002580069237002580" von sich und ich habe keine Ahnung was er mir damit sagen will.

Hier musst du wohl nochmal die Anleitung richtig durchlesen.

Sobald do diese Parameter eingibst, wird die bestehende Einstellung gelesen.

Zum Einstellen der Frequenz brauchst du "AA FA D2" und die nötigern Frequenzparameter komplett.
Erst wenn alles komplett ist, kommt eine Quittung.

HotSystems:
... FSK ... ASK ...

Was ist das?

HotSystems:
... Besorge dir zu Wetterstation das zugehörige Display und du hast weniger Probleme.

Kommt darauf an ... wenn es nicht ums Anzeigen sondern Loggen/sonstwas geht, hat man zwei Probleme mehr (weniger Geld und ein Ding, das man nicht braucht).

Gruß

Gregor

gregorss:
Was ist das?

FSK=Frequenz Shift Keying
ASK= Amplitude Shift Keying

Kommt darauf an … wenn es nicht ums Anzeigen sondern Loggen/sonstwas geht, hat man zwei Probleme mehr (weniger Geld und ein Ding, das man nicht braucht).

Dann sollte er es dazu schreiben.
Seit Chorona habe ich meine Glaskugel in Quarantäne geschickt. :wink:

Aber nochmal, mit dem Wissenstand des TO wird das ganz schwer.

HotSystems:
Aber nochmal, mit dem Wissenstand des TO wird das ganz schwer.

Na, wenn das mal keine Motivation ist, ihm zu helfen :slight_smile:

Gruß

Gregor

PS: Wie ich es verstanden habe, ist ein zweiter Nano vorhanden, der minütlich „1234“ sendet. Wenn das empfangen werden kann, wird die Frequenz des Empfängers auf die der Wetterstation umgestellt, um dort weiterzumachen.

HotSystems:
So wie ich es aus dem Datenblatt herausgelesen haben, macht dein Grove.Modul FSK.
Und ich vermute, dein Sender macht ASK.

Manchmal brauch es auch einfach mal ein tritt in die richtige Richtung -.-
den Modulationbereich der Funktechnik hab ich komplett auseracht gelassen...

Jagut den weiß ich jetzt wo mein Fehler ist/war,
und hab auch nachgelesen das der 433Mhz sender über AM Sendet.
ich Versuch jetzt mal herrauszufinden welche Modularstionsart der Sender in der Wetterstation hat herauszufinden, wenn diese eine andere ist gehe ich zu Plan B über und reiße den Sender Raus und verkabel das alles selber ]:slight_smile: den wie gregorss es schon erraten hat brauche ich keine Anzeigestation da ich die Selber mit ein Raspberry mit HTML mir schon gebastelt habe.

Aber denoch Vielen dank, den klein neuen denk ansatzt brauchte ich -.-

gregorss:
Wie ich es verstanden habe, ist ein zweiter Nano vorhanden, der minütlich „1234“ sendet. Wenn das empfangen werden kann, wird die Frequenz des Empfängers auf die der Wetterstation umgestellt, um dort weiterzumachen.

Nein, der 2 nano mit dem 433Mhz Sender wäre nur rein für Testzwecke gewesen aber das hat sich jetzt ja erledigt dadruch das der sender eine andere Betriebsart hat.

HotSystems:
Aber nochmal, mit dem Wissenstand des TO wird das ganz schwer.

Die Abkürzung TO sagt mir grad nichts, darf ich also fragen wofür das steht? ?

gregorss:
Na, wenn das mal keine Motivation ist, ihm zu helfen :slight_smile:

Das sollte motivieren, mehr zu lernen und zu lesen.
Ich hoffe, das wurde nicht falsch verstanden.

PS: Wie ich es verstanden habe, ist ein zweiter Nano vorhanden, der minütlich „1234“ sendet. Wenn das empfangen werden kann, wird die Frequenz des Empfängers auf die der Wetterstation umgestellt, um dort weiterzumachen.

Nur vermutlich mit nicht kompatiblen Modulen.

JakoI3:
.....
Die Abkürzung TO sagt mir grad nichts, darf ich also fragen wofür das steht? ?

TO = Thread Opener, also du.

Ok, habe verstanden, du bist jetzt fleißig dabei, das nachzulesen.
Also wird dein Projekt entsprechend angepasst.

Nur mit dem Austausch des Senders in der Wetterstation reicht es nicht.
Da muss dann auch ein entsprechender Controller rein.