This wireless conversation between two nrf24L01+ units

Go To Last Post
2 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have a mega328p and a mega1284p

I am using the code originally writen by I think David on this forum.

I have had communication between the two in the past but now the transmitter (the 328p) cannot get past:

			uart0_printf("about to send");
			while(!(nrf24l01_irq_pin_active() && nrf24l01_irq_tx_ds_active()));
			uart0_printf("sent");

I only ever see "about to send".
My setup is here:

void InitializeIO(void)
{

        DDRB = (1<<1)|(1<<2)|(1<<3)|(1<<5);
        PORTB = (1<<2);  //set CSN high
        DDRB &= ~(1<<PB4);
        PORTB |= (1<<PB4);//MISO input, internal pull set

        DDRD = 0;//set IRQ as input with internal pull up
        PORTD |= (1<<PD2);

		DDRD |= (1<<7); //led as output
}

I just cant work out why it cant send. David reckoned that the setup was correct, I have had the hardware working before, and the only thing that could have changed was software. I just dont get it.

Any suggestions very welcome.
A

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
and the only thing that could have changed was software.

solder joints can fail, wires can break & silicon can vaporize.
You are running the nRF modules in 3 Volts aren't you?
I have cooked one module when I inadvertently used Vcc=5V.

The modules are quite reliable, but the distances over which they will communicate is rather optimistic.

Charles Darwin, Lord Kelvin & Murphy are always lurking about!
Lee -.-
Riddle me this...How did the serpent move around before the fall?