Hi Felix,
I got my two MoteinoMega's today. Beautiful work. I removed the old RFM69 library and installed the Github latest RFM69. I tried the examples (Gateway/Node or struct receive/send. I get the following errors:
Node:122: error: 'class RFM69' has no member named 'ACKRequested'
or
Gateway:135: error: 'class RFM69' has no member named 'ACKRequested'
I do see it in the RFM69.cpp:
//check whether an ACK was requested in the last received packet (non-broadcasted packet)
bool RFM69::ACKRequested() {
return ACK_REQUESTED && (TARGETID != RF69_BROADCAST_ADDR);
}
However, when I run my own sketches with the new library using a Moteino Mega on one end and a Moteino on the other, it all works fine. I am certain I have the new RFM69 library installed correctly.
Any advice appreciated to get this working.
jerry
Hey Jerry,
Did you restart your IDE after installing the new lib?
Also make sure you don't rename the old lib and keep it in the Arduino/libraries folder, this is a common mistake. It needs to be completely removed from the Arduino/libraries folder.
That was it ! I renamed the old library but never deleted it. After deleting, the new RFM69 examples compiled fine. I noticed that your library still supports the old "radio.ACK_REQUESTED" as well as the new "radio.ACK_Requested()" . I updated my code to the new call and it works fine.
again many thanks, I needed the extra serial ports and I/O of the Mega.
jerry
Yep, so what happens when you just rename, is the new .header file replaces the previous one and the new functionality is thus replaced with the old one, making it appear that the new library does not work. This can be very subtle especially when you make changes in the actual library (not the renamed one) and it ends up not behaving according to the changes you made, and can drive one crazy.