nRF24L01 et B+ [tuto en fin de topic]
Modérateurs : Francois, smba38
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: nRF24L01 et B+ [tuto en fin de topic]
Bonsoir,
pour moi cela fais 13jours que j ai recu mais nrf, n etant pas satisfais de la lib RF24, j ai entrepri
de coder mon interface moi meme. J en suis a un petit programme en C++ qui lit les differents registres,
sois juste celui qu on demande ,soit tous les registres. J ai encore quelques pb pour l ecriture.
Quand je metriserai bien ces fonctions je me lanserai dans les essais " on air".
Si mes codes vous interessent, je partage sans pb.
@+
pour moi cela fais 13jours que j ai recu mais nrf, n etant pas satisfais de la lib RF24, j ai entrepri
de coder mon interface moi meme. J en suis a un petit programme en C++ qui lit les differents registres,
sois juste celui qu on demande ,soit tous les registres. J ai encore quelques pb pour l ecriture.
Quand je metriserai bien ces fonctions je me lanserai dans les essais " on air".
Si mes codes vous interessent, je partage sans pb.
@+
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
Re: nRF24L01 et B+ [tuto en fin de topic]
Hello,
moi ça m'intéresse énormément, surtout la manière dont tu procèdes une fois que t'as codé ton fichier cpp pour le rendre exécutable :\
Merci d'avance ^^
moi ça m'intéresse énormément, surtout la manière dont tu procèdes une fois que t'as codé ton fichier cpp pour le rendre exécutable :\
Merci d'avance ^^
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: nRF24L01 et B+ [tuto en fin de topic]
Bonjour,
j' ai mis les fichiers en pièces jointes.
pour la compilation , au début quand j avais q'un seul fichier c++, j'ai modifié un fichier makefile pour l adapter à mon fichier et placé dans le même dossier puis dans un terminal se placer dans le dossier et taper make.
Mai au fur et mesure j 'ai utilisé plusieurs fichiers, j ai donc cherché a faire de la compilation croisé, mais j ai rien trouvé de valable. Au final j utilise code::blocks directement sur le pi (autraver d'un server vnc pour moi). le fichier généré et situé sous: ../nrf20l01/nrf24l01/bin/debug , pour l exécuter, dans un terminal , ce placer dans le répertoire puis effectuer la commande : sudo ./nrf24l01.
Sous un environnement graphique double cliquer sur le fichier nrf24l01 situé toujours dans le même dossier et choisir exécuter dans un terminal.
Bien sure le fichier exécutable peut être déplacé où l'on veut (enfin je croie?) .
Les sources ne sont encore pas trop commentées mais j ai essayé d’être claire dans le code, n hésitez pas à ma poser des questions en cas d'incompréhensions.
@+
j' ai mis les fichiers en pièces jointes.
pour la compilation , au début quand j avais q'un seul fichier c++, j'ai modifié un fichier makefile pour l adapter à mon fichier et placé dans le même dossier puis dans un terminal se placer dans le dossier et taper make.
Mai au fur et mesure j 'ai utilisé plusieurs fichiers, j ai donc cherché a faire de la compilation croisé, mais j ai rien trouvé de valable. Au final j utilise code::blocks directement sur le pi (autraver d'un server vnc pour moi). le fichier généré et situé sous: ../nrf20l01/nrf24l01/bin/debug , pour l exécuter, dans un terminal , ce placer dans le répertoire puis effectuer la commande : sudo ./nrf24l01.
Sous un environnement graphique double cliquer sur le fichier nrf24l01 situé toujours dans le même dossier et choisir exécuter dans un terminal.
Bien sure le fichier exécutable peut être déplacé où l'on veut (enfin je croie?) .
Les sources ne sont encore pas trop commentées mais j ai essayé d’être claire dans le code, n hésitez pas à ma poser des questions en cas d'incompréhensions.
@+
- Fichiers joints
-
- nrf24l01.rar
- (113.08 Kio) Téléchargé 189 fois
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
Re: nRF24L01 et B+ [tuto en fin de topic]
Hello !!
Merci pour tes fichiers.
J'espère que ça va me permettre de mieux comprendre le fonctionnement de ces émetteurs récepteurs.
En fait, ton makefile peut il fonctionner pour d'autres programme ou pas du tout ?
Je galère un peu à faire tourner mes programmes et pas ceux des exemples...
Merci pour tes fichiers.
J'espère que ça va me permettre de mieux comprendre le fonctionnement de ces émetteurs récepteurs.
En fait, ton makefile peut il fonctionner pour d'autres programme ou pas du tout ?
Je galère un peu à faire tourner mes programmes et pas ceux des exemples...
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: nRF24L01 et B+ [tuto en fin de topic]
Oui le makefile peut fonctionner avec d'autre fichiers.
celui que j ai transmit peut ne plus fonctionner avec les fichiers joints , je l 'ai mis pour donner une base de travail, mais les fichiers sources ont été recompilés par la suite avec codes::blocks.
Pour le faire fonctionner avec ton fichier, il suffit de remplacer dans la ligne 26 le nom du fichier final dans ce cas ci , le nom du fichier compiler doit être égal au fichier source sans l’extension :
source :spi.cpp
nom programme :spi
cela est du ici à la syntaxe utilisée pour définir les source :
Attention aussi si tes fichiers sont écrit en C modifier "${PROGRAMS:=.cpp}" par "${PROGRAMS:=.c}" j ai pas testé avec plusieurs sources , mais ça doit être possible.
Mes fichiers sources font appels à la librairie bcm2835 pour la getion du spi , avec code::blocks j ai rajouté les source manuellement , mais j avais aussi installé la librairie sur la pi ,
du coup je sais pas trop comment la compilation se fait.
http://www.airspayce.com/mikem/bcm2835/index.html
A quel niveau tes programmes ne fonctionnent pas?
As tu essayé de partir des fichiers des exemples de rf24 et de les recompiler? si ca marche tu peux après modifier peu à peu le code pour l 'adapter .
@+
celui que j ai transmit peut ne plus fonctionner avec les fichiers joints , je l 'ai mis pour donner une base de travail, mais les fichiers sources ont été recompilés par la suite avec codes::blocks.
Pour le faire fonctionner avec ton fichier, il suffit de remplacer dans la ligne 26 le nom du fichier final dans ce cas ci , le nom du fichier compiler doit être égal au fichier source sans l’extension :
source :spi.cpp
nom programme :spi
cela est du ici à la syntaxe utilisée pour définir les source :
Code : Tout sélectionner
PROGRAMS = spi
SOURCES = ${PROGRAMS:=.cpp}
Attention aussi si tes fichiers sont écrit en C modifier "${PROGRAMS:=.cpp}" par "${PROGRAMS:=.c}" j ai pas testé avec plusieurs sources , mais ça doit être possible.
Mes fichiers sources font appels à la librairie bcm2835 pour la getion du spi , avec code::blocks j ai rajouté les source manuellement , mais j avais aussi installé la librairie sur la pi ,
du coup je sais pas trop comment la compilation se fait.
http://www.airspayce.com/mikem/bcm2835/index.html
A quel niveau tes programmes ne fonctionnent pas?
As tu essayé de partir des fichiers des exemples de rf24 et de les recompiler? si ca marche tu peux après modifier peu à peu le code pour l 'adapter .
@+
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
Re: nRF24L01 et B+ [tuto en fin de topic]
En fait mon soucis, c'est quelque soit le code que j'essaie de faire tourner, que ce soit python ou c++ ça ne marche mais alors pas du tout...
Pourtant, les exemples fonctionnent eux parfaitement (gettingstarted etc... en pong out et back sans soucis ).
Mais dès que j'essaie de faire un truc pour lire la sonde depuis l'arduino c'est le drame !
Pourtant, les exemples fonctionnent eux parfaitement (gettingstarted etc... en pong out et back sans soucis ).
Mais dès que j'essaie de faire un truc pour lire la sonde depuis l'arduino c'est le drame !
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: nRF24L01 et B+ [tuto en fin de topic]
Je comprend pas trop? C est le programme dans l ardino qui fonctionne pas?
Pour un programme sur le rpi, partez des fichiers d exemples (les sources en .c ou .cpp)
Et de les compiler vous meme.si ca marche, commencer par des petites modifications.
il faut faire attention aussi au adresses entre les deux nrf24l01 .
Je ne connais pas la programmation sur ardino ,mais si c est du .C je devrai comprendre un peu.
@+
Pour un programme sur le rpi, partez des fichiers d exemples (les sources en .c ou .cpp)
Et de les compiler vous meme.si ca marche, commencer par des petites modifications.
il faut faire attention aussi au adresses entre les deux nrf24l01 .
Je ne connais pas la programmation sur ardino ,mais si c est du .C je devrai comprendre un peu.
@+
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
Re: nRF24L01 et B+ [tuto en fin de topic]
Re,
Merci de l'aide apportée !
Alors non c'est bien côté pi que ça ne passe pas ( l'arduino ne gère pas le python ).
Le programme côté arduino fonctionne bien, pas de soucis.
C'est côté Pi ou le programme quelqu'il soit génère des erreurs lors de la compilation (quand c'est du C) ou alors entraine des erreurs lorsque c'est du pyhthon.
Pour le coup les exemples j'essaie de m'en inspirer mais ils sont tous basés sur du ping pong role.
Moi le but c'est juste de récupérer l'info de l'arduino et ensuite de l'intégrer dans une base SQL.
Mais avant le SQL, j'aimerai juste réussir à récupérer la valeur envoyée depuis l'arduino ! ^^
Merci de l'aide apportée !
Alors non c'est bien côté pi que ça ne passe pas ( l'arduino ne gère pas le python ).
Le programme côté arduino fonctionne bien, pas de soucis.
C'est côté Pi ou le programme quelqu'il soit génère des erreurs lors de la compilation (quand c'est du C) ou alors entraine des erreurs lorsque c'est du pyhthon.
Pour le coup les exemples j'essaie de m'en inspirer mais ils sont tous basés sur du ping pong role.
Moi le but c'est juste de récupérer l'info de l'arduino et ensuite de l'intégrer dans une base SQL.
Mais avant le SQL, j'aimerai juste réussir à récupérer la valeur envoyée depuis l'arduino ! ^^
Re: nRF24L01 et B+ [tuto en fin de topic]
sous quel forme les données sont envoyer, et autre question quand tu le fait en python pourrais tu mettre l'erreur ici pour t'aiguiller
NAS : DIY OS Debian: DD250Go + 3x2To + 6To
Raspberry pi : 2B OS : Raspbian
Se tromper est humain, Vraiment foutre la merde nécessite le mot de passe de root.
Raspberry pi : 2B OS : Raspbian
Se tromper est humain, Vraiment foutre la merde nécessite le mot de passe de root.
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: nRF24L01 et B+ [tuto en fin de topic]
pareil pour le C.
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam