[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
code.
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
radio.setChannel(i);
// Listen for a little
radio.startListening();
delayMicroseconds(128);
radio.stopListening();
// 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
suggested.
bool RF24::testRPD(void)
{
return ( read_register(RPD) & 1 ) ;
}
--
Tomas Kral <thomas.kral at email.cz>
More information about the Oberon
mailing list