diff --git a/firmware/funk/mesh.c b/firmware/funk/mesh.c index e69a798..da30c60 100644 --- a/firmware/funk/mesh.c +++ b/firmware/funk/mesh.c @@ -12,7 +12,7 @@ char meshincctr=0; // Generation MPKT meshbuffer[MESHBUFSIZE]; uint32_t const meshkey[4] = { - 0x00000000, 0x00000000, 0x00000000, 0x00000000 + 0x00000042, 0x000005ec, 0x00000023, 0x00000005 }; struct NRF_CFG oldconfig; diff --git a/firmware/funk/nrf24l01p.c b/firmware/funk/nrf24l01p.c index 8c3c464..383df03 100644 --- a/firmware/funk/nrf24l01p.c +++ b/firmware/funk/nrf24l01p.c @@ -153,13 +153,12 @@ int nrf_rcv_pkt_poll_dec(int maxsize, uint8_t * pkt, uint32_t const key[4]){ return len; cmpcrc=crc16(pkt,len-2); - if(cmpcrc != (pkt[len-2] <<8 | pkt[len-1])) { + if(key!=NULL) xxtea_decode_words((uint32_t*)pkt,len/4,key); - cmpcrc=crc16(pkt,len-2); - if(cmpcrc != (pkt[len-2] <<8 | pkt[len-1])) { - return -3; // CRC failed - }; + cmpcrc=crc16(pkt,len-2); + if(cmpcrc != (pkt[len-2] <<8 | pkt[len-1])) { + return -3; // CRC failed }; return len; };