Hallo, nur ne schnelle Frage: Ich habe Übertragungsfehler zwischen den beiden STM32F1xx Systemen. Das RX Bit wird gesetzt aber die Pipe steht auf 7 (= FIFO leer) und die Anzahl empfangener Bytes wird richtig angezeigt, es steht aber nur Müll drin. Das ist schon seltsam, das RX-DS Bit wird nur gesetzt, wenn ein gültiger Satz empfangen wurde. Aber die Pipe Nummer 7 sagt, dass der Fifo leer ist. 90% aller Pakete sind Müll. 10% sind richtig. Nach viel Probieren habe ich (vermutlich) den Sender als Verursacher ausgemacht. Er sendet echt "Müll" (seltsam, ist CRC8 abgesichert). aber der kommt irgendwie durch die Empfangsfilter des RX Moduls durch. Drücke ich den Daumen auf alle Pins des RF Modul oben am Sender ist die Störung weg, die Fehlerrate liegt bei nur noch 5-10%, das ist ok. Heh? Wie das? Die Module mögen überhaupt keinen Rippel auf Vcc, das weiss ich schon aber das ist mir neu. Wie behebt man solche Fehler? Minus noch an PE erden? Abschirmfolie? Gruss, Christian
Hi, versuche mal einen 10uF Tantal-Kondensator direkt an die Pins des Moduls zu löten. Hauptsache viel Kapazität und geringer ESR. Bei mir hat das schon geholfen, der Fehler war da aber auf der Empfangsseite. Gruss und viel Glück, Patrick
Alle Pins mit Flussmittel nachlöten, anderes Modul ausprobieren. Der 10uF Elko ist auch Pflicht.
:
Bearbeitet durch User
Gerade bei Empfangsmodulen hat sich bei mir eine LC Kombination in der Speisung sehr bewährt - es warem zwar RFM01 und keine NRFs, die Reichweite stieg aber mit der sauberen Betriebsspannung um das 5-6 fache an. In hartnäckigen Fällen sind auch 33-100 Ohm Widerstände in den Datenleitungen hilfreich.
Patrick W. schrieb: > versuche mal einen 10uF Tantal-Kondensator direkt an die Pins des Moduls > zu löten. Alles schon dran, habe das halbe Netz durchgelesen :-) Ich schätze mal DC/DC Wandler von ebay sind nicht das richtige dafür. Der Empfang vom Arduino (Batterie) ist allerdings einwandfrei, sie mucken beim Senden zur anderen Station. Ich habe schon zwei Frequenzen ausgesucht, auf der einen empfangen, auf der anderen senden, damit sie sich nicht in die Quere kommen. LC ist aber ein Tip, mache ich glatt mal. Wieviel uH sollen es denn sein? Kleine Kupferspule mit Kern? Ist aber schon seltsam: Das RX Flag wird empfängerseitig getriggert. Also stimmt die Paketadresse mit der eingespeicherten überein. Ich benutze Pipe 0 für ACK beim Senden (Pipe 0 = TX Pipe Adresse) und Pipe 1 als Empfang. Lese ich die Pipe Nr. aus dem Status aus steht 7 drin. 7 heisst = Fifo ist leer! Die Anzahl Bytes die angeblich empfangen wurden stimmt aber. (Dynamic Payload), der FIFO Inhalt aber ist immer 0x40. >>Alle Pins mit Flussmittel nachlöten, anderes Modul ausprobieren. Habe 10 Module. Nachgebraten habe ich schon. Kann es sein, dass der uC direkt daneben die stört? Vielleicht weiter weg legen? Was bewirkt meine Hand auf den Pins genau?
Was genau hast du an den Pins? Falls du ein Oszilloskop hast, schau dir mal die Versorgungsspannung an. Evtl regelt der DC-DC nicht sauber genug. Der Tipp, mal ein anderes Modul zu testen, ist sicher auch nicht schlecht. Waren das zufälligerweise billige Chinakracher? Evtl hilft es auch, mit den Kanälen noch mehr zu spielen. Schau, dass du aus den WIFI-frequenzen raus kommst. Das wären dann glaube ich die Kanäle über 100. Ausserdem kann es auch sein, dass die Quarze auf den Modulen zu ungenau sind, dann helfen vielleicht unterschiedliche Kanäle bei Tx und Rx. Gruss, Patrick
Ist mir gerade in den Sinn gekommen: Ich hatte mal den merkwürdigen EFffekt, dass so ein Modul nicht recht wollte, wenn es nicht geerdet war. Betrieben habe ich es an einem billigen Steckernetzteil(SMPS) mit LM1117-3.3 dazwischen. Solange es über den AVRICE und den PC geerdet war, lief es super. Sobald ich den AVRRICE und somit die Erdung entfernte, ging gar nichts mehr. Leider habe ich das damals nicht weiter untersucht. Falls du etwas in die Richtung herausfindest, wäre ich dankbar, wenn du deine Erfahrung teilen würdest. Mit deiner Hand bietest du je nach dem auch Erdung, nebst dem Netzwerk aus Widerständen und Kapazitäten zwischen allen Pins.
Christian J. schrieb: > Wieviel uH > sollen es denn sein? Kleine Kupferspule mit Kern? Ich nehme so um die 22-100µH und 100nF fürs LC Glied, so wie es z.B. für AVCC an den AVRs empfohlen wird.Jede HF Drossel, egal ob radial oder axial, sollte klappen. Ich habe z.B. säckeweise 22µH SMD Drosseln, die dafür gut geeignet sind.
:
Bearbeitet durch User
Ok, habe auch noch genug Drosseln aus dem Müllcontainer. Ich werde heute abend mal gucken, ob es was bringt den DC/DC raus und durch einen 78xx zu ersetzen. Das wäre die erste Massnahme. Dann und die besagte LC Kombination, wobei natürlich niemand weiss wie deren Dämpfungs-Charakteristik aussehen soll. Und zum Schluss wenn alles nicht hilft werde ich ein PE aus der Steckdose ziehen und mit Minus verbinden. Und wenn das nicht hilft hole ich die alte Zwille aus dem Schrank und beschiesse die Nachbargärten mit den 10 NRF24L01+ Modulen :-)
@Patrick W. Eine Erkenntnis kann ich Dir schonmal mitteilen: Das Geld für diese Dinger ist rausgeworfen. Stecke ich diese Module an klappt zwar der Empfang aber das Senden erzeugt "Probleme". Ich habe an den INT Pins immer kleine blaue 3mm LED als Debugger, die an 3.3V mit nur 100uA richtig gut leuchten uind die Pins nicht belasten. Der Einsatz dieser Module erzeugt bei PTX und PRX ein Glimmen der LED, die Pins flimmern richtig. Und nichts geht mehr. Ich habe den Verdacht, dass die Impedanz der Antenne überhaupt nicht zum Modul passt, der Chip verhält sich echt chaotisch. Natürlich aus China, originale NRF24L01+ kosten 10$ das Stück und ich habe noch nie welche gesehen.
Christian J. schrieb: > Stecke ich diese Module an klappt zwar der > Empfang aber das Senden erzeugt "Probleme" Wenn da nicht auf der Unterseite der Module noch Abblockmassnahmen sind, wundert mich das nicht wirklich. Rund um den HF-Block sollten sich eigentlich sowohl reichlich C als auch die eine oder andere L tummeln. Christian J. schrieb: > Ich habe den Verdacht, dass die Impedanz > der Antenne überhaupt nicht zum Modul passt Wie lang ist denn die Antenne und für welche Frequenz ist dieses Modul?
@Christian Es erstaunt mich, dass du Probleme mit den Modulen hast. Ich verwende die(zumindest optisch) gleichen wie du und auch die ohne Verstärker. Mit denen ohne hatte ich mehr Probleme als mit den anderen, bis ich Caps angelötet habe. Die mit Amp laufen super bei mir, und ich habe nicht irgendwelche teure von Adafruit oder sowas sonder die ganz biligen von AliExpress. Ich vermute den Fehler bald im Rest der Schaltung oder im Code. Wenns nicht geheim ist, könntest du uns ja mal was darüber verraten? Oder du hattest einfach furchtbar pech und wirklich eine Ladung schlechte Module erhalten. @Matthias: Dass die Module zu wenig Kapazität auf der Versorgung haben ist ein bekanntes Problem. Die Antennen sollten aber schon passen, das läuft so normalerweise sehr gut. Frequenz ist übrigens 2.4GHz
:
Bearbeitet durch User
Christian J. schrieb: > : Das Geld für diese Dinger ist rausgeworfen. Stecke ich Habe auch nen Zehnerpack von den normalen und auch die mit Lna.. Habe sogar Eine Modellflug Sender/Empfänger Lösung damit gebastelt.. Alles Top und bis auf den fehlenden Cap keine Probleme
:
Bearbeitet durch User
Patrick W. schrieb: > Ich vermute den Fehler bald im Rest der Schaltung oder im Code. Wenns > nicht geheim ist, könntest du uns ja mal was darüber verraten? Da ist nicht geheim und Fehler kann man ja wohl kaum machen bei den wenigen leitungen. Einfach an die Pins und fertig. Läuft ja beim Arduino auch, der in der Butterbrotdose draussen am Baum hängt und mir die Temperarur etc misst und rüberfunkt. Seit 14 Tagen schon. Aber kaum eine andere Konfiguration und schon geht es nicht mehr. Also DC/DC Wandler runter bewirkt nichts. Aus dem Labornetzgerät wollen sie sie auch nicht. Hier haste den Code. Oben "Send Payload" macht die Faxen. Die Max72.. Datei war zu schnell geklickt, krieg ich aber nicht mehr aus dem Anhang raus.
evtl sind ja einfach level nicht eindeutig, und werden mit dem daumen auf ein klareres niveau gezogen... hab hier auch einen nanoV3 der ohne ein stück esd-schaumstoff in der isp leiste keine firmware über usb frisst ^^
Da dein Arduino ja funktioniert mit diesen Modulen, können sie nicht defekt sein. Es muss also an etwas anderem liegen. Habe ich es richtig verstanden, dass die SPI mit 1.3 MHz läuft? Das könnte etwas viel sein. Wenn ich es richtig im Kopf habe, ist das nach Datenblatt zwar ok, aber es sind nun mal Fälschungen, die du hast. Falls das für diese Fälschungen grenzwertig ist, kann es sein, dass die leichte Veränderung im Signalverlauf, hervorgerufen durch die Kapazität und den Widerstand deiner Hand, dass ganze doch noch zum laufen bringt. Versuche daher mal, sehr langsam zu fahren mit der SPI. 10 KHz oder so. Andereseits arbeiten sie bei mir tadellos mit Soft-SPI ohne delays an einem xmega mit 64 MHz. (Ich weiss, dass der xmega nur bis 32 MHz spezifiziert ist. Läuft trotzdem :P ) Du verwendest Hardware-SPI, richtig? Dass mit der alles i.O. ist, hast du kontrolliert, nehme ich an. Testweise könnte man mal Software-SPI probieren. Ist ja zum Glück sehr einfach. Ein gutes Bild deines Aufbaus hilft evtl auch etwas. Vielleicht sieht jemand was, das als Verursacher deines Problems in Frage kommt. Weiterhin viel Glück bei der Fehlersuche :)
Hi, die laufen auch bis 5 Mhz gut mit der SPI. Habe grad auf 2,5 Mhz hochgetaktet. Nützt aber nicht wirklich viel, die Delays drumherum sind größer, in Summe bleibt das gleich. Mit 10Khzz laufen die gar nicht, unter 100khz stellen sie den Dienst ein. Ist aber bekannt im Netz. Sooo..... bruzzel.... Elko + 50 uH bringen leide nix bei beiden Modulen. Spannung ist auch glatt sagt der Oszi. Jetzt werde ich es mit anderen Adressmuster versuchen, denn auch bei denen muss man aufpassen.... Wird schon werden...
@Patrick: Also nun ist jeder Schuss ein Treffer :-) Ob es nun die LC Kombination ist oder dass ich die Ident Strings mit "magischen Zahlen" gebildet habe, statt einfach beliebige zu nehmen weiss ich nicht. Aber seitdem ich die Adresse von 1,2,3,4,5 nach 0xc2,0xc2,0xc2,0xc2,0xc2 geändert habe läuft es. Ich vermuten dass dieser String nicht ganz beliebig sein darf, sondern "Manchester codiert" sein muss. Supi.. die Musik spielt, die Bits flitzen nur so durch die Wände :-)
@Christian Meinst du mit Ident String die Adressen der Module oder einen Teil der Payload? Die Adressen müssen vermulich mehr oder weniger ausgeglichenes Verhältnis aus 0 und 1 enthalten, damit der HF Teil nicht arbeiten kann. 1,2,3,4,5 ist da wohl problematisch, weil in keinem der Bytes mehr als zwei Bits gesetzt sind. Ich vermute mit original Chips gäbe es das Problem nicht. Denn dafür gibt es ja die Präambel. Dass die defaults beliebig sind, glaube ich aber auch nicht. Dass Datenblatt sagt nur wenig darüber, wie Adressen zu wählen sind. Nur warum Handauflegen irgend etwas hilft, ist mir aber ein grosses rätsel :| Auf jedenfall scheint das Problem ja gelöst und wir haben alle was gelernt :-) Grüsse und noch viel Spass, Patrick
Patrick W. schrieb: > Meinst du mit Ident String die Adressen der Module oder einen Teil der > Payload? Hi, ich meine die Adressbtes, 5 Stück für die Pipe. Habe die grad nochmal zurück gestellt und da war das Problem wieder da. Könnte man auch dabei schreiben, dass man die nicht beliebig wählen kann. Vermutlich war das beim Original aber kein Problem, nur eben bei den Fake Chips :-(
Philipp K. schrieb: > Schonmal gelesen? Du, ich kenne das Datenblatt auswendig! Das ist aber von NORDIC und nicht von "WE-COPY-YOU" China-Mann. Meines Wissens gibt es kein Datenblatt der Klon Chips. Und das sind alle in der Bucht. Und da steht auch nicht drüber drin wie die Sequenz beschaffen sein muss. Aber hier steht genau das was ich vermute: http://maniacalbits.blogspot.de/2013/04/rf24-addressing-nrf24l01-radios-require.html
Christian J. schrieb: > nicht von "WE-COPY-YOU" China-Mann Woher kommt bloss diese China Phobie? Gauner gibt es auch in der EU, auch renommierte Distis verkaufen ab und an Schrott. Die China Ware ist oft keine Kopie sondern stammt vom gleichen Band wie das Original, da wurde nur ein wenig extra produziert, merkt ja keiner. Kopieren ist bei uns extrem böse, wurde uns so von den USA eingeredet. In China ist Kopieren eine Art Ehrerbietung, zeigt die Wertschätzung.
Georg G. schrieb: > Kopieren ist bei uns extrem böse, wurde uns so von den USA eingeredet. > In China ist Kopieren eine Art Ehrerbietung, zeigt die Wertschätzung. Quatsch! Kopieren geschützter Waren ist ein Kapital-Verbrechen und gehört bestraft, die Verantwortlichen hinter Gitter. Punkt! Kopiere meine beiden Patente und Du wirst sehen, wieviel "Ehre" Dir zuteil wird.
Christian J. schrieb: > Kopiere meine beiden Patente und Du wirst sehen, wieviel "Ehre" Dir > zuteil wird. Deswegen löse ich so ungern in Foren anderen Leute ihre Probleme.
Christian J. schrieb: > Kopieren geschützter Waren ist ein Kapital-Verbrechen Ist es so schwer zu akzeptieren, dass in unterschiedlichen Kulturen unterschiedliche Wertesysteme existieren? Jenseits deines Tellerrandes ist auch noch Welt, sehr viel sogar. Warum muss die gesamte Welt nach unserer Fasson seelig werden?
Georg G. schrieb: > Ist es so schwer zu akzeptieren, dass in unterschiedlichen Kulturen > unterschiedliche Wertesysteme existieren? Korekt! JENSEITS unserer Grenzen. Hier gilt unser Wertesystem, für jeden verbindlich und das betrifft auch das Urheberrecht. Und darüber diskutiere ich auch nicht, das steht auch nicht zur Disposition. Und dass die halbe Welt uns derzeit nach ihrer Fasson beglücken will sieht man jeden Tag in der Presse, hatten wir in Köln und anderswo.
Christian J. schrieb: > Hier gilt unser Wertesystem, für jeden > verbindlich und das betrifft auch das Urheberrecht. Und darüber > diskutiere ich auch nicht, das steht auch nicht zur Disposition. Das hindert Dich aber nicht daran, die billigen, unter Umgehung sämtlicher Urheberrechte hergestellten Chinakopien anstatt der 10$-Originale DIESSEITS unserer Grenzen extensiv zu nutzen ... nettes Rechtsverständnis.
Christian J. schrieb: > Philipp K. schrieb: >> Schonmal gelesen? > Du, ich kenne das Datenblatt auswendig! Leider hast du mal wieder eine andere Frage beantwortet, nicht die gestellte. Christian J. schrieb: > Kopiere meine beiden Patente und Du wirst sehen, wieviel "Ehre" Dir > zuteil wird. Irgendwie bekomme ich bei deinen Posts - also einer großartigen Mischung aus Unwissenheit und Ignoranz regelmäßig die Hoffnung, dass die Chinesen genau das tun und du dagegen nichts tun kannst. Christian J. schrieb: > Georg G. schrieb: >> Ist es so schwer zu akzeptieren, dass in unterschiedlichen Kulturen >> unterschiedliche Wertesysteme existieren? > Korekt! JENSEITS unserer Grenzen. Hier gilt unser Wertesystem, für jeden > verbindlich und das betrifft auch das Urheberrecht. Dann solltest du die Finger von allen in China gefertigten Produkten lassen, sofern du nicht zweifelsfrei feststellen kannst, dass sie nicht kopiert (oder auf unredlicher Basis entwickelt) wurden. In deiner Welt macht sich der Distributor nämlich offensichtlich der Hehlerei strafbar (Geld- oder Freiheitsstrafe bis 5 Jahre), und da du das Risiko, Hehlerware zu kaufen, mindestens akzeptierst (Eventualvorsatz), machst du dich ebenfalls strafbar. Also solltest du chinesische Waren meiden, dann hast du auch keine Probleme mit Minderqualität mehr. Denn nur deutsche Industrieprodukte sind gut (oder so ähnlich...), richtig?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.