Escribo para ver si me podeis ayudar o dar algo de luz. Estoy intentado conectar con el nRF24L01 un Attiny85 y una raspberry pi 3 con Win10 mediante el nRF24L01.
He seguido dos tutoriales que he encontrado por internet y ambos por separados funcionan correctamente:
El primero es desde el ATtiny85 al arduino uno, el tutorial es este: nRF24L01+ with ATtiny85 3 Pins - Hackster.io y como os comento, funciona bien, el arduino uno muestra correctamente el numero que envia el attiny85.
El tema es que, me esperaba, que al emitir desde el attiny85, el receptor de la raspberry lo detectase, pero es que no me salta ni el evento, es como si la señal que emite el tiny no existiera para el.
Alguien sabe por donde pueden ir los tiros, imagino que es algun tema del protocolo de comunicación que utilizan ambos, entiendo que son distintos, pero no logro comprender nada. creo que ambos utilizan el SPI, pero estoy muyyyyy perdido.
Sé que funcionan ya que inicialmente lo que encontré por internet son dos proyectos separados. Primero monte dos nrf en la pi3, uno hace de receptor y otro envía y por si solo, este proyecto recupera lo que el otro envía, pero todo desde la misma pi3.
Una vez confirmado que el proyecto de la pi3 funcionaba correctamente, que va a ser el receptor de mi proyecto, di por cerrado esa parte y comencé a trabajar en la otra, el emisor.
Este segundo proyecto, es el que va a ser el que envía y decidí que lo voy a realizar con el tiny85 y monte el circuito esperando que lo que enviaba lo recibiese la pi3, al no ser así, monte el receptor de ese segundo proyecto en un Arduino UNO. El resultado es que el UNO recibe y muestra la señal que envía el tiny85, por lo que esa parte también la doy por buena.
Y por eso estoy atascado y desesperado :).
Hoy he revisado el codigo de ambos proyectos y me he dado cuenta que en el del Arduino tenía el parámetro address, que en el de la pi3 no lo tenía y lo he replicado, poniendo la misma dirección en ambos, pero nada, sigue sin funcionar.
No, para el tiny85 uso la librería #include "RF24.h" y para la pi3 que está en win10 iot Core utilizo una que se llama "NRF24L01.cs" que me descargue del link que puse al abrir el post.
Bueno ahi esta el problema
Yo use la misma librería para todo Tmrh20 para Raspi o Arduinos.
No hay fallos.
Estan las versions RF24 y las versiones en red Network y Malla o Mesh si piensas usar muchos nodos.
Todo servido con una bibliografía fabulosa.
la librería mas usada con nRF24, jamas me ha dado un fallo.
Pues... Ahora es cuando te hago la pregunta, esa que posiblemente pienses que soy tonto... bueno, tu y quien lea esto, posiblemente es por la hora, aviso.
Por lo que veo, esa es la librería que uso para el tiny, ¿no?.
Una duda, me he dado cuenta que el esquema del Arduino no utiliza el pin iqr y el esquema de la pi 3 si. Puede ser que al no utilizarlo en el envío el receptor no intérprete o detecte el evento?
El Arduino uno, realmente tiene un bucle que lee constantemente, no tiene un evento. Pero no sé ese pin lo gestiona automáticamente el nRF o se activa antes del envío de los datos.
Creo que no has leído detenidamente lo que te escribí y confieso no haber mencionado nada respecto del tema IRQ.
No es necesario usar la IRQ.
La librería de Tmrh20 tanto para RPi como para Arduinos (todos los arduinos) no la requiere aunque tiene la opcion para usarla. Asi que es tu decisión.
Confía en lo que te he pasado porque lo he usado y lo uso actualmente. Tengo un PI que se comunica con muchos nodos nRF24 con diferentes Arduinos Mega/Nanos que tienen su nRF24.
Los códigos los he tomado de los ejemplos básicos que luego fui modificando a mi gusto.
0 problemas!!.
Perdona el retraso en contestar, pero entre el poco tiempo que tengo y que me quede bloqueado... en definitiva ya he resuelto el problema. Después de leer mucho, descarte el problema en el ATtiny, ya que esta parte funcionaba bien y la librería que usaba ya era la de Tmrh20 como indicabas.
Como te indicaba, esa librería no la podía usar en la pi3 con C# así que tras mucho leer y estudiarme la librería de Tmrh20 conseguí igualar los parámetros como canal, direcciones, potencia y esas cosas y ya me funciona la comunicación a la perfección basándome en las referencias y programas que puse en la apertura del post!!!
Mil millones de gracias por vuestra ayuda! doy por cerrado esta Issue!