[Oberon] FPGA - nRF24L01 connection

Tomas Kral thomas.kral at email.cz
Tue Apr 17 12:21:41 CEST 2018

On Tue, 17 Apr 2018 10:35:38 +0100
Paul Reed <paulreed at paddedcell.com> wrote:

> What happens if you put a pause in that loop?
I inserted a delay, 
Ping; j := Kernel.Time() + Wait; REPEAT UNTIL
Kernel.Time() >= i;
I cannot see any effect, I got 26-32%, with or without a delay.

> Do all the modules reliably detect a carrier?

I need to understand this test first, I have an RPI channel scanner
Until now, I just executed Ping by hand on Oberon, and on RPI carrier
detected also bleeding into neighbouring channels. This is the case
with any modules I have had to tests. Only two of them work so far, but
only in specific node, Oberon or RPI, not both.

The code is this
while (i--)

        // Select this channel

        // Listen for a little

        // Did we get a carrier?
        if ( radio.testCarrier() ) ++values[i];

bool RF24::testCarrier(void)
  return ( read_register(CD) & 1 );

I may also try measuring signal level in the channel as Joerg

bool RF24::testRPD(void)
  return ( read_register(RPD) & 1 ) ;

Tomas Kral <thomas.kral at email.cz>

More information about the Oberon mailing list