Forum: Mikrocontroller und Digitale Elektronik Fragen zu RFM70


von Philipp H. (magier)


Lesenswert?

Hallo

ich bin auf der Suche nach einem möglichst simplen Funkverbindung 
zwischen 5 Stationen, wobei einer der Master sein soll und die anderen 
bisher nur zuhören und antworten.
Bei meiner Recherche bin ich über den RFM70 bei Pollin gestolpert und 
habe dazu ein paar Fragen.

Es gibt ja schon ein paar Beiträge zu dem Baustein, was mir aber noch 
unklar ist. Was sind diese "data pipes" genau, so weit sich das mir 
erschließt sind das die Empfangs und Sende Puffer oder? Könnte mir das 
jemand erklären, auch im Zusammenhang mit deren Adressierung?

Ich habe auch noch das NRF24L01 Tutorial gefunden, kann mir jemand 
sagen ob es sich da um den "selben" Baustein handelt? Die Ansteuerung 
scheint ja sehr ähnlich, genauso wie die Abbildungen.

Schon mal herzlichen Danke fürs drüber nachdenken.
Magier

von Max D. (max_d)


Lesenswert?

Nein, es ist nicht der gleiche Baustein, im RFM70 is der BK2421 von 
beken drinne...
Ich würd mal nach sample code suchen... gibt viel da draussen: 
http://gidf.de

von Philipp H. (magier)


Lesenswert?

Habe den Code schon, verstehe den tieferen Sinn der data pipes aber 
trotzdem nicht :-(
Aber Danke!

von MW (Gast)


Lesenswert?

Mich würde das mit den data pipes auch interessieren. Ist hier 
vielleicht ein Wissender, der uns einweihen könnte?

von Philipp H. (magier)


Lesenswert?

Habe Antworten gefunden....wenigstens einige....

Englisch:
RFM70library von Wouter van Ooijen
http://www.voti.nl/rfm70/doc-cpp/html/overview.html


Deutsch:
RFM70 Funkmodul von Projekt-Blog Daniel Weber
http://projects.web4clans.com/?p=90

Hoffe das hilft auch anderen.....

von Timmo H. (masterfx)


Lesenswert?

Gut eigentlich erschließt sich das auch aus dem Datenblatt und AppNotes.
Übrigens sind die Doks & Code auf dieser Seite auch sehr hilfreich 
(jeweils unter Download eines Moduls): 
http://www.inhaos.com/products.php

Dort steht dann z.B. auch drin wie man die einzelnen Kanäle Scannen kann 
ob sie frei sind. Wobei das durch WLAN, Bluetooth etc. vermutlich auch 
nicht 100% zuverlässig ist, aber bei mir sind zumindest einige frei :)

Philipp H. schrieb:
> Habe Antworten gefunden....wenigstens einige....
welche Fragen sind denn noch offen?

von Philipp H. (magier)


Lesenswert?

>masterfx
>Gut eigentlich erschließt sich das auch aus dem Datenblatt und AppNotes.
>Übrigens sind die Doks & Code auf dieser Seite auch sehr hilfreich
>(jeweils unter Download eines Moduls):
>http://www.inhaos.com/products.php

Danke für den Hinweis, aber bei welchen Modul/Produkt handelt es sich da 
um einen RFM70?

Ich habe sowohl den Code als auch das/die PDFs gelesen. Was ich aber 
nicht richtig verstanden habe, wieso es je 6 RX und 6 TX Data Pipes gibt 
und welche Funktion das hat. Dank des Projekt-Blogs von Daniel Weber 
weiß ich jetzt das man jedes Modul mit 6 Adressen programmieren kann...
Wusste das schon vorher, habe aber nicht verstanden wieso.
Ich habe noch keine Testexemplare und kann daher keine Tests machen. 
Aber ich vermute das, dass wohl mit der art der Adressierung zu tun hat. 
So kann man bis zu 6 andere Module ansprechen ohne die Register zu 
ändern.
Denke ich mal

von Timmo H. (masterfx)


Lesenswert?

Philipp H. schrieb:
>>masterfx
>>Gut eigentlich erschließt sich das auch aus dem Datenblatt und AppNotes.
>>Übrigens sind die Doks & Code auf dieser Seite auch sehr hilfreich
>>(jeweils unter Download eines Moduls):
>>http://www.inhaos.com/products.php
>
> Danke für den Hinweis, aber bei welchen Modul/Produkt handelt es sich da
> um einen RFM70?
Fast alle haben den bzw. nen Quasi baugleichen Chip drin, z.B. RF-2410M 
etc.

> Ich habe sowohl den Code als auch das/die PDFs gelesen. Was ich aber
> nicht richtig verstanden habe, wieso es je 6 RX und 6 TX Data Pipes gibt
> und welche Funktion das hat.
Wenn du das Datenbatt nochmal liest, wirst du feststellen, dass es nur 6 
Data-Pipes für den Empfänger gibt. Der Sender hat stehts eine Adresse

> Dank des Projekt-Blogs von Daniel Weber
> weiß ich jetzt das man jedes Modul mit 6 Adressen programmieren kann...
Ja. Du hast zwei 5-Bit Adressen (P0,P1). Die zweite RX-Adresse 
(RX_ADDR_P1) hat 5 Bytes und kann durch 4 weitere Datapipes, die quasi 
das unterste Byte der P1-Adresse "überschreiben" dadurch noch weiter 
unterteilen. Dein Empfänger kann also so eingestellt werden, dass er auf 
6 verschiedene Adressen reagiert.

Du könntest also z.B. 6 Sender haben (z.B. 6 Temperatursensoren, in 
jedem Raum einer), jeder hat eine andere TX-Adresse, und du könntest die 
Daten aller mit einem Empfänger empfangen und erkennen von welchen du 
gerade einen Temperaturwert empfangen hast und das ohne irgendwas 
umstellen zu müssen. Anhand der Adresse wüsstest du dann quasi welcher 
Raum gerade wie warm ist.
Dass auch nur die LSBs variiert werden macht ja eigentlich auch sinn, 
denn in der Praxis wird es ja so sein, dass du die Adresse eines Senders 
z.B. mit einem Dipswitch konfigurierst, da will man ja nich jedes Teil 
an ein PC anschließen müssen um die Adresse einzustellen. Ebensowenig 
macht ein Mäuseklavier mit 40 Schaltern sinn :D

Das steht ja eigentlich auch so unter 5.1.2

Übrigens sind die RFM70 (oder Beken, nrf24L01 ähnliche) fast in jeder 
Non-Bluetooth Maus mit 2,4 Ghz Technik drin. z.B. die von MSI. Da ist 
der Chip noch nichtmal vergossen. Ich habe mich da mal an die SPI pin 
rangehängt und kann genau sehen wie das ding eingestellt wird. z.B. 
welche Adresse, welche Sendeleistung, welcher Kanal...

von Timmo H. (masterfx)


Angehängte Dateien:

Lesenswert?

Hier mein "Maus-Sniffer" :D ist ein NRF 24L01, also Nordic Semi und als 
Controller dient ein Atmega48. Die haben sogar den 6-Pin ISP Header 
drauf gelassen :D
Im Empfänger ist es genauso, nur mit einem Cypress µC mit USB. Habe hier 
noch 3 weitere Funkmäuse welche auch so ein ding drin haben (Logilink, 
Verbatim und noname)

von Philipp H. (magier)


Lesenswert?

>Übrigens sind die RFM70 (oder Beken, nrf24L01 ähnliche) fast in jeder
>Non-Bluetooth Maus mit 2,4 Ghz Technik drin. z.B. die von MSI. Da ist
>der Chip noch nichtmal vergossen. Ich habe mich da mal an die SPI pin
>rangehängt und kann genau sehen wie das ding eingestellt wird. z.B.
>welche Adresse, welche Sendeleistung, welcher Kanal...

Interessant....Danke für den Tipp! Interessantes Bild, Respekt!

Okay, ja Sorry. Habe mich vertan. Es gibt nur ein TX_ADDR und 6 RX_ADDR. 
Danke jetzt bin ich echt schlauer!!
Irgendwie habe ich den Wald vor lauter Bäumen nicht gesehen. Wenn man 
die Beschreibung der Register Bank 0 ließt und am Ende alles 
zusammenführt ist es offensichtlich.
(Und auch im PDF ->5.1.2 Address)
GRIMPF...

Aber danke an alle Beteiligten. Vielleicht hilft es ja dem nächsten der 
Tomaten auf den Augen hat.
Magier

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.