Thank you guys !
You were both right. It seems I am losing my C-programming skills lately :)
The correct function is:
boolean NRF24::getPipeAddress(uint8_t pipe, uint8_t * address){
uint8_t len = getAddressSize();
if((pipe == 0) || (pipe == 1)){
spiBurstReadRegister(NRF24_REG_0A_RX_ADDR_P0 + pipe, address, len);
return true;
}
else if((pipe ==2) || (pipe == 3) || (pipe == 4) || (pipe == 5)){
if(!getPipeAddress(1, address)) //Get base address
return false;
uint8_t lastbyte[1];
spiBurstReadRegister(NRF24_REG_0A_RX_ADDR_P0 + pipe, lastbyte, 1);
address[len-1] = lastbyte[0];
return true;
}
else return false;
}
2014-01-28 Colin Cooper <
cdcoo...@googlemail.com>: