Hi all,
I am trying to use an RFM69CW to communicate with my emonBase, using the JeeLib library in compatibility mode, and I cannot figure out what I am doing wrong. I already have a node working with the same setup, but smaller payloads. As soon as my payload gets large enough the RFM69pi discards all my packets with an “unreliable content” log entry (the working node sends 3 longs, so 12 bytes + node ID + crc).
If anyone can spot something obvious I missed I would really appreciate it, this is beginning to drive me crazy…
I have attached the complete files, below are some relevant excerpts:
The node code:
typedef struct
{
uint8_t ltarf;
uint32_t east;
uint32_t easf01;
uint32_t easf02;
uint32_t eait;
uint16_t urms1;
uint16_t urms2;
uint16_t urms3;
uint8_t pref;
uint8_t pcoup;
uint16_t sinsts;
uint16_t sinsts1;
uint16_t sinsts2;
uint16_t sinsts3;
uint16_t sinsti;
uint16_t smaxin;
} TIC;
TIC tic = {
0, 100,200,300,0,231,232,234,12,13,4200,1200,1400,1600,0,0
};
...
#define RF69_COMPAT 1
#include <JeeLib.h>
rf12_initialize(nodeId, RF_freq, networkGroup);
rf12_sendNow(0u, &tic, sizeof(TIC));
rf12_sendWait(0);
delay(200);
The emonHub log entries:
2019-01-19 08:55:39,016 DEBUG RFM2Pi Discarding RX frame ‘unreliable content’? 20 0 100 0 0 0 200 0 0 0 44 1 0 0 0 0 0 0 231 0 232 (-42)
2019-01-19 08:55:49,280 DEBUG RFM2Pi Discarding RX frame ‘unreliable content’? 20 0 101 0 0 0 201 0 0 0 45 1 0 0 0 0 0 0 231 0 232 (-39)
FranckemonRadio.ino (1.9 KB)
emonRadio.zip (1.8 KB)