RF24 Zahlen und Text übertragen?

MaHa76:
Frage ist, ob es geht, dass der Empfänger anstatt Zahlen bei den Stellen 3- 9, einfach nur einen Text empfangen und mit dem array Sensor[] verarbeiten kann…

Ja, ist es. Text ist auch nur aus Bytes zusammengesetzt und:

Whandall:
Grundsätzlich ist dem NRF egal was in den 32 Bytes steht, die er sendet oder empfängt.

Wie beabsichtigst du die beiden Interpretationen zu unterscheiden?

Mal anders rum....

Bisher verarbeite ich in meinem Netzwerk nur diverse Sensordaten, um nach einem kleinen Processing damit Lampen zu steuern, Helligkeit Farbe, Überblendtempo etc...

Die "Zentrale" hat ein 7" tft, hat Weckfunktionen, einen Kalender und verschiedene Spielereien um das Design und den Inhalt der Anzeige zu ändern...

Nun sollen auch Wetterdaten mit angezeigt werden- dafür habe ich schon erfolgreich die ersten Daten mit einem ESP12 von openweathermap geholt - Ziel ist die Vorschau für die nächsten 5 Tage zu holen und das ganze etwas grafisch aufzubereiten und eventl. auch alles auf SD zu loggen (wobei ich hier noch beim lernen bin, wie ich damit arbeiten kann)

Ich möchte mein "Netzwerk" nicht unbedingt ins WLAN bringen- daher war mein erster Gedanke, dass der ESP12 auch einen nrf24 bekommt und die Daten schickt...

Wobei ich den ja auch direkt in die Zentrale setzen und verkabeln kann... und die Daten dann via Kabel zu übertragen... aber was bietet sich da am besten an?

Mir fehlt viel Basiswissen für solche grundlegenden Dinge :-/

Ich möchte mein "Netzwerk" nicht unbedingt ins WLAN bringen

Warum willst Du Deine Mesßstationen nicht ins WLAN hängen?

Gruß Tommy

MaHa76: Wobei ich den ja auch direkt in die Zentrale setzen und verkabeln kann... und die Daten dann via Kabel zu übertragen...

Das ist meiner Ansicht nach die einfachste Lösung.

Die Zentrale hat kein Internet, der ESP keinen NRF. Ich habe den SPI Bus auf den ESP8266's noch nicht benutzt, auf meinem ESP32 läuft der NRF prima.

Mir fehlt viel Basiswissen für solche grundlegenden Dinge :-/

Dann gebe ich dir einen Tipp!

Führe ein Protokoll ein! Baue ein eigenes, damit du es auch in der Tiefe verstehst. Dann erledigen sich deine Sorgen ohne alle Schmerzen. Fast wie von selber.

Ich habe den SPI Bus auf den ESP8266's noch nicht benutzt, auf meinem ESP32 läuft der NRF prima.

mit den 8266 auch. Problemlos.

OK, danke für Eure Tipps.

Also, mein Lampen/Sensor- Netzwerk soll nicht ins WLAN, weil ich nicht fit genug bin, dass vor ZUgriff von außen zu schützen- und wenn allein die Menge an Datenverkehr von außen gelesen werden kann, erlaubt das schon Rückschlüsse darauf, wann jemand zu Hause ist und wann nicht.

Den ESP12 mit einem nrf zu koppeln sehe ich auch nicht als große Hürde an, da gibts genug Anleitungen :-)

Welche Art Protokoll/Verbindung wäre denn zu empfehlen, wenn ich den ESP verdrahten würde? Letztendlich muss er keine Befehle von der Zentrale erhalten, sondern nur die aktuellen Wetterdaten alle 60min "bereit stellen" (klar- an der Stelle braucht er zumindest die Rückmeldung der Zentrale, dass jetzt die Daten geschickt werden können)...

MaHa76: Welche Art Protokoll/Verbindung wäre denn zu empfehlen, wenn ich den ESP verdrahten würde?

Ich würde eine normale bidirektionale serielle Anbindung vorschlagen, etwa wie bei einem GPS Modul.

MaHa76: Letztendlich muss er keine Befehle von der Zentrale erhalten, sondern nur die aktuellen Wetterdaten alle 60min "bereit stellen" (klar- an der Stelle braucht er zumindest die Rückmeldung der Zentrale, dass jetzt die Daten geschickt werden können)...

Warum willst du die Daten anfordern? Machst du das bei einem Wetterbericht im Radio auch?

Du überrascht mich!

Erst sagst du dieses:

Den ESP12 mit einem nrf zu koppeln sehe ich auch nicht als große Hürde an, da gibts genug Anleitungen :-)

Und dann dieses:

Welche Art Protokoll/Verbindung wäre denn zu empfehlen, wenn ich den ESP verdrahten würde?

Warum machst du deinen ESP nicht zu einem ganz normalen Knoten in deinem NRF Netz? Ob er die Wetterdaten aus dem Wlan holt.. Oder wie die anderen Knoten seine Sensordaten selber generiert, macht doch keinen Unterschied.

OK, ich sehe für beide Varianten gibt es Unterstützer :D

Also Punkt für die Variante als normalen knoten mit nrf24 wäre mein Gedankengang, das Teil auch mal für Internetradio (mit Toslink) zu nutzen und dann einfach hinter den Receiver zu schmeißen oder in den Reciever zu bauen, wo ich auch den Strom her holen könnte....

Punkt für die Variante der Integration in die zentrale wäre, dass ich dann kein Problem mit der Stromversorgung habe... wobei ich zu einem späteren Zeitpunkt auch einen Tablet-Akku einbauen möchte, um die Zentral auch mal auf den Couchtisch legen zu können und die Lampe darüber direkt steuern zu können, bzw. Wecker- und Kalendereinträge bequem editieren zu können- da würde ein zusätzlicher Verbraucher die Akkulaufzeit verkürzen....

"Anfordern" will ich die Wetterdaten, weil die Zentrale mit dem TFT und den ganzen Prozessen die laufen gut beschäftigt ist... ich würde dann einfach alle 60 Minuten "sagen": "So jetzt hol dir mal die Daten"... aber so ganz ist mir das noch nicht klar, wie man das "üblicherweise" macht...

MaHa76: "Anfordern" will ich die Wetterdaten, weil die Zentrale mit dem TFT und den ganzen Prozessen die laufen gut beschäftigt ist... ich würde dann einfach alle 60 Minuten "sagen": "So jetzt hol dir mal die Daten"... aber so ganz ist mir das noch nicht klar, wie man das "üblicherweise" macht...

Gut beschäftigt mit Däumchendrehen in delays?

Bei einer Balancesteuerung ist ein Arduino herausgefordert, aber bei deiner Anwendung?

Animierst du unablässig Dinge auf dem TFT?

Anfordern würde ich höchstens eine Übertragung der neuesten Daten, das Ermitteln der Daten würde ich dem ESP überlassen.

P.S. ich habe den Eindruck deine '.'-Taste prellt doppelt. Wenn statt der '...' irgendetwas stehen sollte, warum schreibst du es dann nicht hin?

Delays sind keine drin. Das TFT hat einmal je Sekunde ein Update oder wenn was passiert- da ist die Kürzeste Zeit 40ms.

Das Touch kann aber ab und an fordernd sein, weil ich auch "Schieberegler" habe.

"..." sind Gedankenpausen... :)

um die Zentral auch mal auf den Couchtisch legen zu können

Das halte ich für eine wirre Idee.

Man kann sie sich mal auf den Basteltisch holen, wenn sie modifiziert werden soll.

Gut, ich kenne deine Anforderungen an das Netz nicht. Und auch nicht die Komponenten. Sehe hier aber deine, wie soll ich es nur sagen, "Unbeholfenheit"..

Hatte aber schon das Vergnügen 2 NRF Netze aufzubauen. Völlig verschiedene!


Eine Netz ist speziell für einen Prüfstand, Probeaufbau einer Maschine(auch mehrere), ausschließlich um Temperaturen aufzunehmen.

Aufbau: 1 Master des NRF Mesh, welcher gleichzeitig ein Gateway zum Ethernet bildet ca 100 NRF Knoten, welche eine Seriennummer im EEprom haben 1 Firmenserver, mit Apache, PHP und SQL (sowieso schon im Intranet vorhanden gewesen)

An jedem Knoten sind DS18S20/DS18B20 angeschlossen.

Die EDV Abteilung wartet die Datenbank.

Klarer: Jedem Sensor wird ein bestimmter Messort zugeordnet. Der Sensor hat ja eine eingebaute Seriennummer. Der jeweilige Knoten sendet Sensor Seriennummer und Temperatur zum Master, der wiederum weiter an PHP. PHP trägt den Messwert in die DB ein.

Positive Effekte:

Wenn ein Knoten defekt ist, wird er einfach ausgetauscht. Es ist dazu keine weitere Konfiguration nötig.

Wenn ein Sensor defekt ist, gibt die EDV Abteilung einen neuen aus, und trägt die Daten, wie Seriennummer, Testobjekt, Messstelle und Zeit in die DB ein.

Wenn ein Sensor an einen anderen Knoten angeschlossen werden soll (z.B. wegen Kabellänge, oder Umbau der Testeinrichtung), wird er einfach umgesteckt. Es ist dazu keine weitere Konfiguration nötig.

Die gesamte Konfiguration ist in der DB verankert, das Mesh selber, ist selbstorganisierend.

Die Knoten senden für jeden Messwert "SensorID,Temperatur" Die Knoten wissen nichts über den Testaufbau. Finden nur jeweils ihre angeschlossenen Sensoren.


Das andere Mesh ist fummeliger organisiert. Verschiedene Sensoren und Aktoren. 433MHz Infrarot, Schalter Taster Motoren Beleuchtung Bewegungsmelder usw. Sie sind mit festen Bezeichnern versehen. Hier dient ein ESP8266 als NRF-Wlan Gateway und Master Im Mesh stecken ca 50 Knoten. Es deckt ca 10000m² ab. Steuerung erfolgt über den PC-Browser, oder von einem beliebigen Mobilen Gerät.

Die gesamte Logik steckt im ESP.

Dieser wird per OTA Update mit Änderungen versorgt.

Mein Tipp: Arbeite sauber!

Liste alle Elemente auf, welche bei dir zum Einsatz kommen werden. Lasse Freiräume für spätere Erweiterungen. Male Programmflussdiagramme für jeden einzelnen endlichen Automaten. Male Datenflussdiagramme!

Wenn deine Gedanken nicht in klaren Bahnen gehen, wird dein Vorhaben im Chaos versinken. Also: Schaffe klare Schnittstellen! Schaffe unmissverständliche Protokolle! Dokumentiere.

Naja, ganz so chaoitisch ist das System nicht. In meiner alten kleinen Wohnung hat es super funktioniert- über 2 Jahre, es waren alle(!) Lampen eingebunden und alle hatten sich dran gewöhnt sich nicht mit Lichtschaltern oder Fernbedienungen befassen zu müssen :-D

Nun sind wir umgezogen, haben wesentlich mehr Zimmer und Lampen- derzeit arbeiten die vorhandenen Lampen autark- sprich über einen Helligkeitssensor wird entschieden ob es dunkel genug ist für Licht oder Schlafenszeit... ein PIR erkennt Bewegungen.

Ich sitze nun an der Erweiterung des Netzwerks und bringe eben ein paar Extras rein...

Inzwischen hab ich gut 10.000 Zeile Code - nur ein einziges delay da drin würde mehr als nur stören.... es ist alles ala "Nachtwächter" zeitabhängig gesteuert, von alle 40ms das Touch abfragen, bis einmal pro Tag etwas zu aktualisieren.

Darüber hinaus gibt es ereignisgesteuerte Aktionen- bei Tageswechsel aktualisiert sich der Kalender und holt sich aktuelle Feiertage oder Geburtstag oder andere Ereignisse aus dem Kalender etc. pp.

Ich tu mir schwerer damit, dass ich mehre SPI- Gerät an einer Leitung habe... da hängt es am meisten...

und dann eben das Basis- Wissen des Programmierens... Idee und Logik-Verständnis hab ich mehr als genug... Struktur beim Arbeiten auch.

Ich tu mir schwerer damit, dass ich mehre SPI- Gerät an einer Leitung habe... da hängt es am meisten...

Gerade das ist doch eigentlich kein Problem! Dafür wurde /CS bzw SlaveSelect erfunden

Welche Sorgen hast du damit?

Ich hab ein etwas kritisches TFT mit RA8875 - ich habs aber via TriState- Buffer entkoppelt- sollte also nicht stören.

Ich habe den Sketch schon auf ein Minimum reduziert, um Einflüsse aus dem lange Sketch ausschließen zu können.

Das TFT arbeitet immer sauber- egal was ist.

Der nrf24 arbeitet prinizpiell auch, empfängt aber nicht immer, und nicht immer sinnvolle Werte.

Kommentiere ich die Zeilen fürs TFT aus, empfängt der nrf genau das was er soll... Ich hatte da hier vor ca. 2 Wochen schon einen Beitrag dazu... da kam aber keine Lösung bei raus... http://forum.arduino.cc/index.php?topic=540944.30

Tja... Dann kann ich dir auch nicht helfen!

Da ich weder einen Teensy, noch dein Display habe. Und auch zu weit weg bin um meinen LA an deine Schaltung anzuschließen.

Bin mir aber zu 99,99% sicher, dass das grundsätzlich funktionieren muss.

Ja… ich muss da wohl selbst ran :-/

Da ist mein nächster Schritt den Gameboy meiner Tochter als Testobjekt zu nutzen. der ist auch mit einem Teensy 3.6 und einem 5" TFT mit RA8875. da werde ich mal einen nrf24 an die separaten SPI- Pins anlöten und testen. An der Zentrale will ich nicht zu viel hin und her löten, da ich das ganze sehr kompakt halten wollte und alles sehr eng gepackt habe…

Prinzipiell kann ich dir aber auch die Zentrale zuschicken :wink:

Prinzipiell kann ich dir aber auch die Zentrale zuschicken

Das ist ja mal interessant…

Danke, für dein Vertrauen!

Ansonsten, wenn der nRF falsche Daten an den µC per SPI übergibt:

  1. kann eigentlich nur das Timing falsch sein, (SPI Mode)
  2. bzw, der Bus belastet, weil 2 LineDriver gegeneinander arbeiten.
    Aber da du ja sagst, dass es ohne Display funktioniert, kommt im Grunde nur Punkt 2 in Betracht.

Im Grunde kannst du Punkt 2 auch mit einem Multimeter prüfen.

z.B. Miso auf 1/2 Vcc hängen und schauen, ob sich beim Betätigen von /CS was tut
alles ohne jede Gewähr

Ja, bin da auch mal im Netz über etwas gestolpert, wo man nen analogen Eingang vom Teensy gleich dazu nutzen kann zu schauen was auf dem Bus passiert...

Aber an 2. hab ich auch schon gedacht... nur fehlt mir eben da einfach das Basiswissen zum Programmieren- sieht man wahrscheinlich auch in meinem langen Sketch... da hätte man als Profi einiges vereinfach können.

Etwas Grundvertrauen muss man ja haben, sonst wird man ja irre in dieser Welt :-D