Forum: Mikrocontroller und Digitale Elektronik ESP8266 D1 Mini + NRF24L01


von Al. K. (alterknacker)


Angehängte Dateien:

Lesenswert?

Device MAC = 0x5 0x4 0x3 0x2 0x1
Master MAC = 0x0 0x0 0x0 0x0 0x0
Monitor Ausgabe Master

Device MAC = 0x5 0x4 0x3 0x2 0x1
Master MAC = 0xFF 0xFF 0xFF 0xFF 0xFF
Monitor Ausgabe Client

https://schullebernd.de/master-slave-netzwerk-mit-nrf24l01-und-arduino-esp8266/

Habe jetzt Versuche mit diesen Funkmodul angefangen

ESP8266 D1 Mini + NRF24L01     ->>Master
Arduino NANO mit NRF24L01    =>> Client

Später möchte ich auch DCC Signale über Funk weitergeben wenn es der 
NANO kann.

Ich bin wie erklärt vorgegangen.Einzeln als Master und Client klappt es, 
aber keine Verbindung.

Bis ich merkte das die Master MAC unterschiedlich war.
In der Erklärung sind sie gleich.

Finde auch nicht wie ich sie angleichen kann.
Muss die Master MAC gleich sein, ich nehme es stark an?

Es werden auch die gleichen #include genutzt, nicht nur den Namen nach.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Ein bisschen mehr Futter wäre schon angebracht.

Erste Kontrolle: Sind die Stromversorgungen Ok? Bitte mit einem 
Oszilloskop messen. Wenn du Dir keins leisten kannst, kaufe ein DSO-138. 
So ein Spielzeug ist immer noch besser als gar keins.

Dann wäre mal interessant, wie die Kommuniktion zwischen den 
Mikrocontrollern und den Funkmodulen aussieht. Werden sie korrekt 
initialisiert? Welche Status Meldungen liefern sie?

Programmiere entsprechende Debug Meldungen oder zeichne die 
Kommunikation  mit einem mit einem Logic Analysator auf (8Ch Logic 
Analyzer).

von Al. K. (alterknacker)


Lesenswert?

Hallo Stefan,
Ich habe eine unterschiedliche Master MAC zwischen
Master und Client.

Ehe ich weitermache müsste ich wissen ob dadurch keine Verbindung 
zustande kommen kann.

Habe auch noch nicht gefunden was die Master MAC bewirkt und wo und wie 
sie generiert wird.


Die Statusmeldungen sind so wie im vorgegebenen Beispiel, bis auf die
Master MAC

von STK500-Besitzer (Gast)


Lesenswert?

Al. K. schrieb:
> Ehe ich weitermache müsste ich wissen ob dadurch keine Verbindung
> zustande kommen kann.

Hast du dir den Artikel angesehen, der dort referenziert wird?

https://schullebernd.de/arduino_und_nrf24l01_verbinden/

Wenn nicht, solltest du damit erst mal anfangen.

von NRF Tester (Gast)


Lesenswert?

STK500-Besitzer schrieb:
> Hast du dir den Artikel angesehen, der dort referenziert wird?

Wenn dort zu lesen ist (Zitat):

-------------------------------------------------------------
Bei mir schlägt das Senden ab und zu trotzdem Fehl. Ich habe
herausgefunden, dass dies wahrscheinlich ein kleines Timing-
Problem ist. Daher habe ich nach der Zeile 111 (
radio.stopListening(); ) noch ein delay(50); eingebaut. Das
sorgt dafür, dass der Empänger der Nachricht kurz wartet,
bevor er seine Antwort zurück an den Sender schickt. Ich
glaube nämlich, dass der Empfänger manchmal schneller
antwortet als der Sender in den Empfangsmodus gehen kann. Bei
mir sorgt das delay jedenfalls für eine deutlich stabilere
Kommunikation.
-------------------------------------------------------------

dann reicht es mir schon bis Oberkante Unterlippe.

Das ist die bekannte Esoterik von Makern die (fast) keine,
also nullkommanullwenig Ahnung haben. Dieser im Speziellen
weiss offensichtlich noch nicht einmal dass der NRF24 ein
Auto Acknowledge implementiert hat welches auch von der
Arduino Library genutzt wird, sonst würde diese nicht so
frech behaupten dass eine Kommunikation erfolgreich war oder
nicht.

Für das Austesten der eigenen Hardware empfehle ich dieses
Teil hier, das funktioniert wenigstens, auch wenn es dem
eigentlichen Ziel der Datenübertragung nicht hilft:

Beitrag "NRF24L01+ test program for Arduino Uno"

von Al. K. (alterknacker)


Lesenswert?

STK500-Besitzer schrieb:
> Wenn nicht, solltest du damit erst mal anfangen.

Warum immer so aggressiv.
Natürlich habe ich es mehrfach gelesen.

Meine Hauptfrage ist warum bei mir
Master und Client unterschiedliche Master MAC haben
ob dadurch keine Verbindung zustande kommen kann
was die Master Mac bewirkt
wo und wie Sie generiert wird

..im Beispiel sind Master MAC beim Master und Client gleich!

: Bearbeitet durch User
von Al. K. (alterknacker)


Lesenswert?

Werde erst mal mit 2 PCs versuchen.Vereinfacht den Test.
Ist aber alles nicht lebenswichtig,nur schade für den Club.
@Stefan, oszi habe ich nicht mehr.

Die FF vom Client sind wahrscheinlich da keine Verbindung vorhanden ist!
Stört vielleicht der Aufbau des Masters?

Alles mit der Ruhe und dann mit einen Ruck.

: Bearbeitet durch User
Beitrag #6065241 wurde vom Autor gelöscht.
von Manfred (Gast)


Lesenswert?

Al. K. schrieb:
> Bis ich merkte das die Master MAC unterschiedlich war.

Wie jetzt, haben bei Dir beide Funkmodule die selbe MAC?
Hat das eine wirklich 00 00 00 00 00 als MAC?

Aus dem Text bei schullebernd.de:
"Wenn zwei Geräte dieselbe MAC haben sollten, passiert es, dass beide 
Geräte dieselbe Nachicht empfangen und sich gegenseitig mitunter stören 
oder gar nicht mehr funktionieren."

von Al. K. (alterknacker)


Angehängte Dateien:

Lesenswert?

Hier die Statusausgabe des Master beim Start!

von Gerald K. (geku)


Lesenswert?

Al. K. schrieb:
> Device MAC = 0x5 0x4 0x3 0x2 0x1
> Master MAC = 0x0 0x0 0x0 0x0 0x0

Die MAC Adresse ist weltweit einzigartig und wird durch den Hersteller 
vorgeben.
Gleiche MAC Adressen führen zu Problemen bei der Verteilung von IP Pakte 
im eigen Netz.

https://de.m.wikipedia.org/wiki/MAC-Adresse

von Manfred (Gast)


Lesenswert?

Gerald K. schrieb:
> Die MAC Adresse ist weltweit einzigartig und
> wird durch den Hersteller vorgeben.

Träum' weiter, bei dem Controllerspielzeug gibt man sie in der Software 
vor.

Dass das nicht regelkonform ist, ist klar, aber auch die existierende 
Realität.

von Al. K. (alterknacker)


Lesenswert?

Manfred schrieb:
> bei dem Controllerspielzeug gibt man sie in der Software
> vor.
>
> Dass das nicht regelkonform ist, ist klar, aber auch die existierende
> Realität.

Aber wo wird die Master MAC generiert?

von NRF Tester (Gast)


Lesenswert?

Gerald K. schrieb:
> Die MAC Adresse ist weltweit einzigartig und wird durch den Hersteller
> vorgeben.
> Gleiche MAC Adressen führen zu Problemen bei der Verteilung von IP Pakte
> im eigen Netz.

Du hast keine Ahnung. Ein NRF24 kann kein IP Protokoll.

Die MAC Adresse eines NRF24 hat mit einer MAC Adresse im
Ethernet überhaupt nichts zu tun.

Das sieht man schon an der Anzahl der Bytes (5 vs. 6) der
MAC Adresse.

von Gerald K. (geku)


Lesenswert?

Manfred schrieb:
> Träum' weiter, bei dem Controllerspielzeug gibt man sie in der Software
> vor.
>
> Dass das nicht regelkonform ist, ist klar, aber auch die existierende
> Realität.

Ich verwende den ESP8266 mit dem AT Kommandointerface und verändere die 
Software im ESP8266 nicht.

Die MAC ist FLASH des ESP8266 gespeichert. Diese wird vom Hersteller 
programmiert.

Der Anfang der MAC Adresse 68:c6: weißt auf  Espressif Inc . als 
Hersteller hin.

https://www.dein-ip-check.de/tools/macfinder

von Gerald K. (geku)


Lesenswert?

NRF Tester schrieb:
> Ein NRF24 kann kein IP Protokoll.

Sorry ich hatte den Eindruck es ging um den ESP8266.

von Johannes S. (Gast)


Lesenswert?

Al. K. schrieb:
> Aber wo wird die Master MAC generiert?

im Artikel ist doch alles sehr detailiert beschrieben. Im Abschnitt zum 
Master:
1
In Zeile 38 wird ein Netzwerkgerät angelegt. Als Parameter werden die beiden CE und CS Pins übergeben, die den Microcontroller mit dem nRF24L01 Transmitter verbinden und ein false, was den Netzwerkgeräte mitteilt, dass es ein Master-Gerät sein soll.

Also Master und Slave bekommen die gleiche Softare mit dem Unterschied 
das der Master in der Instanz von SBNetwork als erstes Argument ein 
false bekommt und die Slaves ein true. Das die Adressen einmalig sein 
müssen steht im Kommentar direkt über der Codezeile.

von NRF Tester (Gast)


Lesenswert?

Gerald K. schrieb:
> weißt auf  Espressif Inc . als Hersteller hin.
-----^---

MAC Adressen haben mit der Farbe Weiß nichts zu tun.

https://www.duden.de/rechtschreibung/weisz_hell_hellhaeutig_bleich

von Gerald K. (geku)


Lesenswert?

NRF Tester schrieb:
> MAC Adressen haben mit der Farbe Weiß nichts zu tun.

Danke für die Information, ich werde es dem Korrekturprogramm meinen 
Tabletts weiterleiten.

von Gerald K. (geku)


Lesenswert?

NRF Tester schrieb:
> MAC Adressen haben mit der Farbe Weiß nichts zu tun.

weißt kommt von wissen und hat nichts mit der Farbe Weiß zu tun.

https://www.duden.de/rechtschreibung/weiszt

: Bearbeitet durch User
von Manfred (Gast)


Lesenswert?

Gerald K. schrieb:
> Ich verwende den ESP8266 mit dem AT Kommandointerface
> und verändere die Software im ESP8266 nicht.
>
> Die MAC ist FLASH des ESP8266 gespeichert.
> Diese wird vom Hersteller programmiert.

Da widerspreche ich Dir nicht und es ist gut, dass Espressif korrekt 
programmiert. Ich schaue mir gerade die Erstausgaben meiner ESP32 an, 
die ich als Textfile gespeichert habe, auch die haben unterschiedliche 
MACs.

Aber: Die haben keinen geschützten Bereich, sobald ich eigene Software 
aufspiele, muß ich die MAC definieren - das hat der ursprüngliche 
Hersteller dann nicht mehr in der Hand.

Solange ich das im privaten Netz tue, gibt es kein Problem. Würde ich 
das kommerziell verkaufen, wäre das anders.

von Manfred (Gast)


Lesenswert?

Gerald K. schrieb:
> weißt kommt von wissen und hat nichts mit der Farbe Weiß zu tun.
> https://www.duden.de/rechtschreibung/weiszt

Da sage ich nur 'Scheiß neue Rechtschreibung' - ich hätte es mit 
doppel-s geschrieben.

von Gerald K. (geku)


Lesenswert?

Manfred schrieb:
> Solange ich das im privaten Netz tue, gibt es kein Problem. Würde ich
> das kommerziell verkaufen, wäre das anders.

Wir habe für unsere Firma einen MAC Adressbereich reservieren lassen. 
Dies ist für private Anwender leider nicht möglich.

Die MAC ist nur im eigenen Netz von Bedeutung und muss dort eindeutig 
sein.

Z.B bekommt ein Netzwerkanschluss auf Grund seiner MAC seine IP4 Adresse 
vom DHCP Server. Was würde passieren wenn diese nicht eindeutig ist?

Auch für Switches ist die MAC von Bedeutung:

https://de.m.wikipedia.org/wiki/Switch_(Netzwerktechnik)

von Johannes S. (Gast)


Lesenswert?

Das ganze Gerede hier über Netzwerk MACs hat doch nichts mit der 
Schullebernd nRF Library zu tun. Und die Rechtschreibdiskussionen noch 
weniger.

von Manfred (Gast)


Lesenswert?

Johannes S. schrieb:
> Das ganze Gerede hier über Netzwerk MACs hat doch nichts mit der
> Schullebernd nRF Library zu tun.

Davon bin ich nicht überzeugt:
Beitrag "Re: ESP8266 D1 Mini + NRF24L01"
ist nicht beantwortet worden.

von Johannes S. (Gast)


Lesenswert?

Die SBMacAdress hat 5 statt der 6 Byte Netzwerkmac und ist eine 
Erfindung vom Schullebernd. Das ist eine logische Adresse die Teil des 
Protokolls ist:
https://github.com/Schullebernd/SBNetwork/blob/master/src/SBTypes.h
Und logischerweise muss auch die eindeutig sein. Wenn in einem Haus alle 
Max Mustermann heissen weiss der Postbote auch nicht wohin mit der Post.

von Al. K. (alterknacker)


Angehängte Dateien:

Lesenswert?

Hier noch mal die Verbindungsversuche des Client.

Könntet ihr die Diskussion etwas sortieren,damit ich etwas mehr davon 
verstehe.

von Johannes S. (Gast)


Lesenswert?

und läuft auch ein Master mit der Adresse 0xff 0xff 0xff 0xff 0xff ? 
Oder überhaupt ein Master? Die sollen sich ja selber finden lt. 
Beschreibung.

von Al. K. (alterknacker)


Angehängte Dateien:

Lesenswert?

Master und Client laufen mit den gezeigten Statusmeldungen!

Aufbau ist oben im Eröffnungsbild!

Werde im laufe des Tages auch mal eine  anderen ESP drauf stecken!
Mal sehen was dann kommt?


sehe gerade Device Mac ist auch verschieden!

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

das sieht erstmal richtig aus, unterschiedliche device Adressen und der 
Slave soll den Master automatisch finden. Tut er nicht - also 
funktioniert min. 1 Modul nicht.
Wenn die Software keine Initialisierungsfehler meldet war die 
Kommunikation zu den nRF ok oder die prüft das nicht. Das kann man 
provozieren indem man das Modul abklemmt und schaut was in der seriellen 
Ausgabe passiert. Wenn keine Ausgaben implementiert sind sollte man sich 
die einbauen, sonst ist das ja stochern im Nebel.
Bei den nRF24L01 gibt es ja eine + Version und es ist bekannt das es 
viele Fakes gibt.

von Johannes S. (Gast)


Lesenswert?

was passiert wenn man im Terminal für Master und Slaves jeweils N 
eingibt? Damit sollen evtl. gespeicherte Konfigurationen ja gelöscht 
werden.

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

https://www.sparkfun.com/datasheets/Components/SMD/nRF24L01Pluss_Preliminary_Product_Specification_v1_0.pdf


im Datenblatt des Funkmoduls steht  auf Seite 57:

Im Sender sei die Adresse der Pipe Nr 0 eingestellt auf:

10 TX_ADDR 39:0 0xE7E7E7E7E7 R/W Transmit address. Used for a PTX device 
only. (LSByte is written first)Set RX_ADDR_P0 equal to this address to 
handle automatic acknowledge if this is a PTX device with Enhanced 
ShockBurst™ enabled. See page 72


Wenn über Pipe Nr 0 gesendet werden soll, dann muß:
0A RX_ADDR_P0 39:0 0xE7E7E7E7E7 R/W Receive address data pipe 0. 5 Bytes 
maximum length. (LSByte is written first. Write the number of bytes 
defined by SETUP_AW


gleich eingestellt sein im Empfänger.


Ist das selbe Prinzip wie im stark ähnlichen RFM70, RFM73 und RFM75.
Natürlich wird es im Dabla nicht wirklich leicht verständlich 
dargestellt, so daß man über die Angaben ahnungslos hinwegstolpern kann. 
Ich habe das früher mal alles experimentell getestet mit den Pipes...


Auf Seite 8 ist ja von 6 Data-Pipes die Rede. Das sind einfach logische 
Kanäle, die man einzeln konfigurieren kann. Beispielsweise könnte sich 
damit eine sechskanalige Fernbedienung realisieren lassen.


"7.4.2.2        AddressThe address is fetched from the TX_ADDR register. 
The address field can be configured to be 3, 4 or 5 bytes long with the 
AW register"


Auf Seite 38 steht auch noch etwas zu den Adressen.

Seite 39:
" On the PTX the TX_ADDR must be the same as the RX_ADDR_P0 and as the 
pipe address for the designated pipe. "
zu Deutsch: Auf dem Sendegerät muß die Sendeadresse die gleiche sein wie 
die Adresse 0 auf dem Empfangsgerät und wie die Kanaladresse des 
ausgewählten Kanals. --->> also erreicht das Sendegerät die 
unterschiedlichen Adressen, indem im Sendegerät eine der sechs im 
Empfangsgerät vorhandenen Adressen aktuell eingestellt wurde. Der Sender 
muß also wissen, welche Adressen im Empfänger vorhanden sind, außer man 
würde mittels auto-acknowledge alle Adressen durchprobieren.

Die Adressen gibt der Programmierer vor und diese werden bei der 
Initialisierung durch den angeschlossenen Mikrocontroller ins Funkmodul 
kopiert.

________________________
Device MAC = 0x5 0x4 0x3 0x2 0x1
Master MAC = 0xFF 0xFF 0xFF 0xFF 0xFF
Monitor Ausgabe Client

hiernach dürfte also der Empfänger niemals auf den Sender reagiert 
haben, wie man schön in den Bildschirmausgaben sieht und als "nicht 
gepaart" umschrieben wird. Somit sollten diese gepaart werden.


MFG

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

Das ist nur die halbe Miete, der Autor der Lib hat beschrieben wie er 
das Pairing bzw. die Master Suche per broadcast macht.

von NRF Tester (Gast)


Lesenswert?

Gerald K. schrieb:
> Der Anfang der MAC Adresse 68:c6: weißt auf  Espressif Inc . als
> Hersteller hin.

Gerald K. schrieb:
> weißt kommt von wissen und hat nichts mit der Farbe Weiß zu tun.

Du hast offensichtlich noch weniger Ahnung als vermutet.

Deine Anwendung von "weißt" hat seine Wortbedeutung vom Begriff
"Hinweis" oder "weisen", wie in deinem ersten zitierten Satz
bereits nachzulesen bzw. zu entnehmen ist.

Dies wäre kaum der Rede Wert aber es nervt ungemein wenn hier
jemand etwas hereinlabert was überhaupt nicht zum Thema gehört.
Nur weil er schon mal was von MAC Adressen gehört hat und
unbedingt mitlabern will.

von Al. K. (alterknacker)


Lesenswert?

Christian S. schrieb:
> hiernach dürfte also der Empfänger niemals auf den Sender reagiert
> haben, wie man schön in den Bildschirmausgaben sieht und als "nicht
> gepaart" umschrieben wird. Somit sollten diese gepaart werden.

Was muss man machen damit sie gepaart werden?


Mir ging es um einen funktionierenden Versuch.
Ich habe immer aus einen einfachen funktionierenden Test meine eigenen 
Weiterentwicklungen des Programms gemacht.

Na dann werde ich wohl erst mal nur sporadisch weitermachen.

Jetzt muss ich erst mal mit nur DCC einige Wagendiscos und Landdiscos
fertigstellen,denn die Zeit wird knapp.
Bahnhofanzeigen und Ansage Modul inbegriffen.

Hat einer ein wirklich sofort funktionierendes Program was ich als 
Grundlage nehmen kann.

Master Einladen   Client einladen --> Starten und Verbindung steht

Selbsttestprogramm für das Funkmodul!

: Bearbeitet durch User
von Al. K. (alterknacker)


Lesenswert?

⸮a⸮Qá1⸮⸮⸮⸮⸮⸮⸮r%b⸮⸮U⸮aUa⸮a⸮⸮SBNetwork Version 1.0.5
====================

Try to read device config from internal flash...Done
Device MAC = 0x1 0x2 0x3 0x4 0x5
Master MAC = 0x0 0x0 0x0 0x0 0x0
NetKey = 0
Masterstorage Slot 0 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 1 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 2 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 3 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 4 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 5 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 6 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 7 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 8 0x0 0x0 0x0 0x0 0x0
Masterstorage Slot 9 0x0 0x0 0x0 0x0 0x0
Initializing NRF24L01 transmitter...Done
*** PRESS 'N' to reset the device


Habe jetzt den Master noch mal ohne Funkmodul getestet.

Statusmeldung ist das gleiche wie mit Modul.
Modul auch getauscht,Leitungsverbindungen zig mal getestet.
Werde ich noch mal machen.
Initializing NRF24L01 transmitter...Done

Aber dies besagt doch Eine Initialisierung wurde "getan"

von Stefan F. (Gast)


Lesenswert?

Al. K. schrieb:
> Aber dies besagt doch Eine Initialisierung wurde "getan"

Sicher? Überprüfe es mit einem Logic Analysator oder indem du 
entsprechende Debug Meldungen hinzufügst. Diese wenigen Statusmeldungen 
informieren lediglich über die eingestellten MAC Adressen. Ob und was 
die Funkmodule tun, geht daraus nicht hervor.

von Al. K. (alterknacker)


Lesenswert?

*** PRESS 'N' to reset the device
SBNetwork Version 1.0.5
====================

Try to read device config from internal flash...Done
Device MAC = 0x5 0x4 0x3 0x2 0x1
Master MAC = 0xFF 0xFF 0xFF 0xFF 0xFF
NetKey = 0
Initializing NRF24L01 transmitter...Done
Try to connect to master...Warning - Not paired to a master
Sending broadcast transmission to find a master...

Auch beim Client mit oder ohne Modul das gleiche,obwohl eine 
erfolgreiche Initialisierung.

Stefan F. schrieb:
> Ob und was
> die Funkmodule tun, geht daraus nicht hervor.

Wie kann aber eine erfolgreiche Initialisierung sein, wenn gar kein 
Funkmodul vorhanden?

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

Al. K. schrieb:
> Initializing NRF24L01 transmitter...Done
>
> Aber dies besagt doch Eine Initialisierung wurde "getan"

ja, aber wenn auch ohne nRF keine Fehlermeldung kommt wird ja 
offentsichtlich die Kommunikation nicht auf Fehler geprüft. Es bleibt 
falsche Verdrahtung als Fehlerquelle.
Die Software ist ja Open Source, man kann also nachsehen was in der 
Initialisierung passiert und versuchen ein Register zurückzulesen um so 
einen Test einzubauen.
Funk ohne Messgeräte oder einen funktionierenden Empfänger zu testen ist 
natürlich schwierig. Es gibt diese USB SDR Sticks, damit kann man sehen 
ob etwas auf einer bestimmten Frequenz sendet. Ob die bis 2,4 GHz 
funktionieren weiss ich nicht.
Ein anderer einfacher Test wäre die Stromaufnahme mit (Speicher)Oszi zu 
überwachen. Beim Senden muss ein deutlicher Burst zu sehen sein.

von Al. K. (alterknacker)


Lesenswert?

Ich habe ein einfaches Beispiel gesucht.
Verschiedene haben sofort ein Erfolg melden können.
Hatten die nur Glück das es sofort funktionierte.

Werde nochmals die Verbindungen prüfen und vergleichen mit dem im 
Programm angegebenen Pins.

Es ist eher unwahrscheinlich das ein Verdrahtungsfehler bei beiden
Master und Client vorhanden ist.

von Johannes S. (Gast)


Lesenswert?

der SB benutzt eine RF24 Lib. Die macht die Initialisierung im Arduino 
typischen begin() und liefert ein false wenn ein Check fehlschlägt. Die 
wird beim SB aber nicht ausgewertet.
In SBNetwork/src/SBNetwork.cpp Zeile 56 kann man die Abfrage und eine 
Ausgabe einbauen:
1
Serial.print(F("Initializing NRF24L01 transmitter..."));
2
  if (this->radio.begin() == false) {
3
           Serial.print(F("FAILED"));
4
           return;
5
        }

von Al. K. (alterknacker)


Lesenswert?

Habe die Verbindungen nochmals überprüft.
auch mit dem im Programm angegebenen Verglichen.
Alles o.k.

@ Johannes ,
Ich möchte nicht in fremden Libs herum pfuschen, solange ich nicht alles 
Verstanden habe.
Es müsste doch was zu finden sein was nur die Anbindung zum Controller 
testet.

Die Lochleiterplatten sind ja für DCC schon vorbereitet.
Beim ESP muss nur der Optokoppler und noch ein wenig Hühnerfutter drauf.
Das mit dem Funk wäre nicht schlecht, aber mit WLan hat es schon besser 
geklappt.

von Johannes S. (Gast)


Lesenswert?

Pfusch ist wenn man Fehlerstati links liegen lässt. Dann passiert genau 
das was du erfährst: ein Programm funktioniert nur wenn die Umgebung 
perfekt passt, andere Fälle werden nicht getestet.
Na dann viel Spaß noch beim Fehler raten.
Und die Lib ist Open Source. Man kann einen Issue auf Github aufmachen 
und dazu beitragen das sie besser wird. So geht Open Source, nicht 
konsumieren und meckern wenn etwas nicht ad hoc funktioniert.

von Al. K. (alterknacker)


Lesenswert?

Johannes S. schrieb:
> So geht Open Source, nicht
> konsumieren und meckern wenn etwas nicht ad hoc funktioniert.

Ich meckere nicht,aber ich habe das Teil mir angeschafft um es im Club 
einzusetzen.
Es ist aber nicht so wichtig das ich Tagelang Versuche und Änderungen 
mache.
Das kann einer machen welcher dies für wichtig hält.
Eine Eigene Entwickelte Wetterstation halte Ich für unwichtig Andere 
eben nicht.
Das sollte jeder akzeptieren.
Wie schon gesagt , ich muss wichtigere Projekte bis zur 
Modellbahnausstellung machen.
Sie sind schon getestet und müssen jetzt "nur" noch für die 
verschiedenen Zwecke angepasst werden.

von Al. K. (alterknacker)


Lesenswert?

Master mit UNO aufgebaut.
Entsprechendes Programm für Master und Client geladen.

Keine Verbindung.
Werde sporadisch, aber mit 2 PCs, weitermachen, das wichtige zu erst!

: Bearbeitet durch User
von NRF Tester (Gast)


Lesenswert?

Al. K. schrieb:
> Es müsste doch was zu finden sein was nur die Anbindung zum Controller
> testet.

Genau das Programm das ich dir bereits genannt habe kann
das überprüfen.

Aber gegen Beratungsresistenz ist bekanntlich kein Kraut gewachsen.

von Al. K. (alterknacker)


Lesenswert?

NRF Tester schrieb:
> Aber gegen Beratungsresistenz ist bekanntlich kein Kraut gewachsen.

Es muss einfach und verständlich für einen Ahnungslosen sein!

von Al. K. (alterknacker)


Lesenswert?

Al. K. schrieb:
> Es muss einfach und verständlich für einen Ahnungslosen sein!

Nochmals vor der Bettschwere,bei verschiedenen Generationen
wird dis oft falsch interpretiert!

von Stefan F. (Gast)


Lesenswert?

Al. K. schrieb:
> Es muss einfach und verständlich für einen Ahnungslosen sein!

Nein, Ahnungslose sollten ihre Freizeit mit Lernen füllen oder passiver 
Unterhaltung.

Die Generation Smartphone bildet sich ein, alles zu können. Der Markt 
hat verstanden, darauf Umsatz zu generieren. Man erzählt den Leuten, 
dass alles ganz easy sei, so kaufen sie Dinge, die man sonst nicht 
loswerden würde.

Das ist nicht neu. In Koch- und Backbüchern (und Videos) beobachte ich 
diesen Trend bereits seit 40 Jahren. Ein Klassiker: Fast alle 
Backrezepte behaupten, dass Brot 30 Minuten gehen soll. Und dann bekommt 
die Hausfrau Frust, weil ihr Brot steinhart wird oder Bauchschmerzen 
verursacht. Jeder Fachmann weiß, dass es 4 Stunden dauert, wenn man es 
richtig machen will. Die guten Koch- und Backbücher mit ehrlichen 
Angaben zum Aufwand sind alle schon älter als 40 Jahre.

von Al. K. (alterknacker)


Lesenswert?

Stefan F. schrieb:
> Al. K. schrieb:
>> Es muss einfach und verständlich für einen Ahnungslosen sein!
>
> Nein, Ahnungslose sollten ihre Freizeit mit Lernen füllen oder passiver
> Unterhaltung.

Du darfst es nicht nur so eingeschränkt sehen.
Ein Ahnungsloser in einen sehr engen Bereich ,kann ein Mensch mit hohen 
Wissen stand und Lernbereitschaft sein.

Nur das was er nachfragt ist für ihn selbst eigentlich nicht wichtig
und kann auch später gelöst werden, wenn eine entsprechende Unterlage 
greifbar ist.

Jemand welcher Personen vorwirft Beratungsresistent zu sein hat wenig 
Kenntnisse sein Wissen weiterzugeben.
Ein Link reicht da nicht, welcher noch nicht mal zum Ziel führt.

Deshalb meine berechtigte Frage zu einen lauffähigen einfachen 
Testprogramm
für das Funkmodul mit Arduino/ESP!

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

Al. K. schrieb:
> Deshalb meine berechtigte Frage zu einen lauffähigen einfachen
> Testprogramm
> für das Funkmodul mit Arduino/ESP!

Dann musst du auch mal die Antworten lesen die man dir schreibt statt 
nur herumzuphilosophieren. Da sind die Vorwürfe über Beratungsresistenz 
schon berechtigt. Genau wie in den vorherigen Diskussionen mit den 
Displays.
Und wenn man nicht versteht das man einen Rückgabewert einer Funktion 
auch benutzen kann, dann sollte man das programmieren sein lassen.
Ich empfehle ernsthaft: Schaffnermütze aufsetzen und die Züge fahren 
lassen. Zum Programmieren Clubmitglieder suchen die das können oder 
zumindest lernfähig sind. Irgendjemand aus dem Bekanntenkreis, Nichten 
oder Neffen. Kann doch nicht sein das die alle nur am Smartphone 
daddeln.

von Al. K. (alterknacker)


Lesenswert?

ach Johannes S.
Deine Antworten und Links sind eben für mich nicht zielführend.Deine 
Schlussfolgerungen sind gelinde gesagt , völlig daneben und zeugen von 
relativer Unkenntnis der Arbeit in den Modellbahnclubs.
Informiere dich ein wenig damit du etwas in Erfahrung reicher wirst wie 
es den Clubs in der Provinz geht!

Das ist OT gehört hier nicht rein, war aber zur Klärung wichtig.
Denke Johannes du verstehst das!?

Dann weiter mit richtiger Hilfe und direkt zielführenden Links,
oder eben NICHTS!

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

Al. K. schrieb:
> Deine Antworten und Links sind eben für mich nicht zielführend.

Du hältst es nicht für zielführend, ich nenne es systematische 
Fehlersuche.  Das ist Beratungsresistenz. Und das Mimmimi mit dem Club 
hat nix mit Programmierung und Fehlersuche zu tun.

von Christian S. (roehrenvorheizer)


Lesenswert?

Mal nur eine Idee:

Sind denn im Programm die Ein-Ausgänge so eingestellt, wie sie in der 
real existierenden Schaltung angeschlossen sind?


mfG

von Al. K. (alterknacker)


Lesenswert?

Johannes S. schrieb:
> Du hältst es nicht für zielführend, ich nenne es systematische
> Fehlersuche.

Ach Johannes, für dich ist es eben eine Hilfeleistung was ich auch nicht 
negiere.

Ich habe schon mehrmals deutlich gemacht, das ich zum Test , ob die 
Teile in Ordnung sind ein lauffähiges Programm suche.
Ich möchte keine Fehlersuche und Eingriffe in mir unbekannten Programmen 
machen müssen.

Das wird gemacht wenn diese Teile in einen Komplexen System eingesetzt 
werden, wo es Sinn macht.
Jetzt macht es keinen Sinn noch weitere Zeit zur Systematischen Suche in 
fremden Programmen zu machen.
Das Johannes solltest du verstehen lernen.
...ist das nicht auch eine Art von Lernresistenz.


...und wie ich auch schon mehrmals schrieb,
kein Beitrag ist manchmal das Beste, ich bin deshalb auch nicht 
beleidigt.

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.