Raspberry plus nrf24l01

Bonjour à vous tous,
Ça fait longtemps que je ne suis pas venu parmi vous !!!.
Voilà j’essaie de faire fonctionner sur mon raspberry avec un nrf24l01, pour piloter un Arduino nano équipé de la même chose.
Sur framboise314 il y a un post mais de 2015 et comme debian a évolué depuis il manque un paquet qui ne veut pas
‹ ‹ libjson0-dev › ›

Lien
‹  › https://www.framboise314.fr/faire-dialoguer-un-raspberry-et-un-arduino-via-nrf24l01/ ‹  ›
Si quelqu’un a déjà travaillé sur un sujet similaires je suis preneur…
A très bientôt

hello,

peut être avec ce tuto de janvier 2020 qui utilise le NRF24L01+

Bonjour@bof
Merci je vais consulter et voir si c’est ok
A bientôt

Bonjour,

Je me suis amusé avec les NRF en début d’année. C’est tombé en marche au bout de plusieurs essais.

Voici quelques notes en vrac:

Source: http://electroniqueamateur.blogspot.com/2017/02/communication-entre-raspberry-pi-et.html

Installer les prérequis pour Python
Source:// https://tmrh20.github.io/RF24/Python.html

$ sudo apt-get install python-dev libboost-python-dev
$ sudo apt-get install python-setuptools
  • Procédure d’installation de la bibliothèque

Source: http://tmrh20.github.io/RF24/Linux.html

$ cd /tmp
$ wget http://tmrh20.github.io/RF24Installer/RPi/install.sh
$ chmod +x install.sh
$ ./install.sh
$ cd rf24libs/RF24/PyRF24
$ chmod +x setup.py
$ ./setup.py build
$ sudo ./setup.py install

NOTE: Il a été nécessaire d’allouer un espace de swap plus grand le temps de la compilation

$ sudo dphys-swapfile swapoff
$ sudo vi /etc/dphys-swapfile 
# #  changer la valeur de CONF_SWAPSIZE=100 -> 1024
$ sudo dphys-swapfile setup
$ sudo dphys-swapfile swapon
$ free -h    
  • Script Python de test
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    #
    # Réception de données par le Rasbperry Pi.
    # Module nRF24L01
    # Fonctionne avec le script Arduino NRF24L01_Transmitter
    #

    from RF24 import *

    # Numéro du port GPIO 
    radio = RF24(25, 0)

    addr = "00001"

    print('Réception de données')
    radio.begin()

    print('Prêt a recevoir les données...')
    radio.openReadingPipe(0,addr)
    radio.startListening()
    radio.printDetails()

    # forever loop
    while 1:
        if radio.available():
            while radio.available():
                message = radio.read(32)
                print('Message reçu = {} '.format(message))

En cas de problème de communication comparer les données de ‹ ‹ printDetails › › entre l’Arduino et le Raspberry.
Il faut que:

  • RX_ADDR_P0-1 du PI et TX_ADDR de l’arduino soient identiques
  • RF_CH soit le même
  • Data Rate soit le même

Bonne bidouilles.

A+

Bonjour @jelopo,
Merci pour ta réponse, je ne vais pas l’installer de suite , mais je te tiendrai au courant , c’est pas une mince affaire et apparemment il n’y a pas beaucoup de personnes qui l’ont utilisé …
A très bientôt