Arduino e RFM69HW

Salve, ho acquistato due rfm69hw a 868mhz
e due breakout board semplici sulle quali ho saldato i due pcb;
ho fatto i tipici collegamenti
arduino uno rfm69hw
3,3 V 3,3v
GND GND
D2 DIO0
SCK D13
MISO D12
MOSI D11
NSS D10

I due sketch utilizzati sono (sono entrambi trasmettiori e ricevitori)

#include <RFM69.h>
#include <SPI.h>



#define NETWORKID     0  
#define MYNODEID      1   
#define TONODEID      2  

#define FREQUENCY     RF69_868MHZ


#define ENCRYPT       true
#define ENCRYPTKEY    "TOPSECRETPASSWRD" 



#define USEACK        true



#define LED           8 
#define GND           9 



RFM69 radio;

void setup()
{


  Serial.begin(9600);
  Serial.print("Node ");
  Serial.print(MYNODEID,DEC);
  Serial.println(" ready");  



  pinMode(LED,OUTPUT);
  digitalWrite(LED,LOW);
  pinMode(GND,OUTPUT);
  digitalWrite(GND,LOW);

  

  radio.initialize(FREQUENCY, MYNODEID, NETWORKID);
  radio.setHighPower(); 



  if (ENCRYPT)
    radio.encrypt(ENCRYPTKEY);
}

void loop()
{


  static char sendbuffer[62];
  static int sendlength = 0;





  if (Serial.available() > 0)
  {
    char input = Serial.read();

    if (input != '\r') 
    {
      sendbuffer[sendlength] = input;
      sendlength++;
    }

   
    if ((input == '\r') || (sendlength == 61)) 
    {



      Serial.print("sending to node ");
      Serial.print(TONODEID, DEC);
      Serial.print(", message [");
      for (byte i = 0; i < sendlength; i++)
        Serial.print(sendbuffer[i]);
      Serial.println("]");

 

      if (USEACK)
      {
        if (radio.sendWithRetry(TONODEID, sendbuffer, sendlength))
          Serial.println("ACK received!");
        else
          Serial.println("no ACK received");
      }


      else
      {
        radio.send(TONODEID, sendbuffer, sendlength);
      }

      sendlength = 0; 
      Blink(LED,10);
    }
  }



  if (radio.receiveDone())
  {
   

    Serial.print("received from node ");
    Serial.print(radio.SENDERID, DEC);
    Serial.print(", message [");

   
    for (byte i = 0; i < radio.DATALEN; i++)
      Serial.print((char)radio.DATA[i]);

 

    Serial.print("], RSSI ");
    Serial.println(radio.RSSI);

  

    if (radio.ACKRequested())
    {
      radio.sendACK();
      Serial.println("ACK sent");
    }
    Blink(LED,10);
  }
}

void Blink(byte PIN, int DELAY_MS)

{
  digitalWrite(PIN,HIGH);
  delay(DELAY_MS);
  digitalWrite(PIN,LOW);
}
#include <RFM69.h>
#include <SPI.h>



#define NETWORKID     0  
#define MYNODEID      2   
#define TONODEID      1  

#define FREQUENCY     RF69_868MHZ


#define ENCRYPT       true
#define ENCRYPTKEY    "TOPSECRETPASSWRD" 



#define USEACK        true



#define LED           8 
#define GND           9 



RFM69 radio;

void setup()
{


  Serial.begin(9600);
  Serial.print("Node ");
  Serial.print(MYNODEID,DEC);
  Serial.println(" ready");  



  pinMode(LED,OUTPUT);
  digitalWrite(LED,LOW);
  pinMode(GND,OUTPUT);
  digitalWrite(GND,LOW);

  

  radio.initialize(FREQUENCY, MYNODEID, NETWORKID);
  radio.setHighPower(); 



  if (ENCRYPT)
    radio.encrypt(ENCRYPTKEY);
}

void loop()
{


  static char sendbuffer[62];
  static int sendlength = 0;





  if (Serial.available() > 0)
  {
    char input = Serial.read();

    if (input != '\r') 
    {
      sendbuffer[sendlength] = input;
      sendlength++;
    }

   
    if ((input == '\r') || (sendlength == 61)) 
    {



      Serial.print("sending to node ");
      Serial.print(TONODEID, DEC);
      Serial.print(", message [");
      for (byte i = 0; i < sendlength; i++)
        Serial.print(sendbuffer[i]);
      Serial.println("]");

 

      if (USEACK)
      {
        if (radio.sendWithRetry(TONODEID, sendbuffer, sendlength))
          Serial.println("ACK received!");
        else
          Serial.println("no ACK received");
      }


      else
      {
        radio.send(TONODEID, sendbuffer, sendlength);
      }

      sendlength = 0; 
      Blink(LED,10);
    }
  }



  if (radio.receiveDone())
  {
   

    Serial.print("received from node ");
    Serial.print(radio.SENDERID, DEC);
    Serial.print(", message [");

   
    for (byte i = 0; i < radio.DATALEN; i++)
      Serial.print((char)radio.DATA[i]);

 

    Serial.print("], RSSI ");
    Serial.println(radio.RSSI);

  

    if (radio.ACKRequested())
    {
      radio.sendACK();
      Serial.println("ACK sent");
    }
    Blink(LED,10);
  }
}

void Blink(byte PIN, int DELAY_MS)

{
  digitalWrite(PIN,HIGH);
  delay(DELAY_MS);
  digitalWrite(PIN,LOW);
}

Il problema è che non comunicano!