Hanging Moteino

It happened again and this time I was determined to find the solution. You can check my first post about this here.

The problem is that all equipment running on 433MHz suddenly stops working. All (Nexa) remotes, the Tellstick Duo and every Moteino just won't transmit or receive anything. Well, that's what I thought, anyway. After looking around some more about this problem, I found this tread on the Lowpower forum. It' seems that Moteinos hang when they are unable to transmit.

So what happens if one Moteino is unable to transmit, it will actually jam the frequency indefinitely and suck all power out of the batteries. When the next Moteino is trying to transmit, one is already jamming the frequency, so this one will also start jamming, and so it goes. Removing the batteries from all of them, did free up the frequency and the remote and Tellstick Duo would once again operate as they should.

The long story on how to fix this can be found on Lowpower's forum (https://lowpowerlab.com/forum/index.php/topic,736.0.html).

In my case I don't need to send a lot of data, so my quick fix was to change a value in the RFM69 library (https://github.com/LowPowerLab/RFM69)  

In the file RFM69.h I changed this line:
#define CSMA_LIMIT          -90 // upper RX signal sensitivity threshold in dBm for carrier sense access
to this:
#define CSMA_LIMIT          -50 // upper RX signal sensitivity threshold in dBm for carrier sense access
 
That way, the Moteino will try to transmit even if there is traffic on the frequency (and maybe miss a few transmissions), but it will prevent the Moteino from hanging when the frequency is not free. 

Please not that this is probably not the best way to fix it if you need ACKs in your node network, or if you always need the transmission to go trough. In that case you should study the forum thread mentioned above. 

Updated Saturday, Nov 29th, 2014

Nope, this did not work work afterall. We went on a little trip to Riga in Latvia and during this time the Moteinos again got stuck. The one in the livingroom jammed all the others until the batteries was all out. After that, the rest started working as they should again.

I recommend that you download the patched RFM69 library at https://github.com/LowPowerLab/RFM69
 

Tags: