Author Topic: RFM69HW lowbitrate longrange Config  (Read 5246 times)

zwierzak

  • NewMember
  • *
  • Posts: 3
RFM69HW lowbitrate longrange Config
« on: November 03, 2013, 04:49:20 PM »
I'm trying to to establish link between two RFM69HW moteinos, one on fifth floor and another on -2 floor underground.
Using standard settings communication ends on -1 floor. Tried lowering bitrate to 4.8kbps, but i get no communication even on the desk. I also tried config provided by Drae but i get no communication at all.

Could you provide working lowbitrate config suitable for long range communication?

Felix

  • Administrator
  • Hero Member
  • *****
  • Posts: 6866
  • Country: us
    • LowPowerLab
Re: RFM69HW lowbitrate longrange Config
« Reply #1 on: November 03, 2013, 09:50:27 PM »
So it goes through 6 floors, still pretty good at 55.5kbps.
It's not as easy as changing the bitrate, there are a few more things involved. The formulas are in the datasheet.
I will try to provide something like a low bitrate sample. I have not done much communication at lower bit rates but some people in the forum have so they might help while I figure out all the numbers.
Another suggestion is to use the radio defaults (ie comment out all the frequency, bit rate, RXBW etc from the init function) and that will give you the factory defaults for 2400baud I believe, please see the datasheet for more specifics.

I hope to get this done soon though...

jbeale

  • Jr. Member
  • **
  • Posts: 62
Re: RFM69HW lowbitrate longrange Config
« Reply #2 on: November 03, 2013, 10:29:20 PM »
yes, you definitely need to lower the bandwidths in addition to bitrate, to achieve the best range. Also try experimenting with antenna position and orientation. There is another possibility though- there may be a significant amount of metal conduit, pipes, rebar etc. in the -1 floor that is going to prevent your reception at the -2 floor even with an optimized signal. Or maybe not, but it is a potential issue.   

anthonywebb

  • NewMember
  • *
  • Posts: 10
Re: RFM69HW lowbitrate longrange Config
« Reply #3 on: November 04, 2013, 01:15:53 AM »
I would be interested in a long range config as well.  Both the config as well as any insight as to the antenna that demonstrates the best results.

zwierzak

  • NewMember
  • *
  • Posts: 3
Re: RFM69HW lowbitrate longrange Config
« Reply #4 on: November 04, 2013, 02:22:16 AM »
Signal goes from -2 to 3flor, so i think it is possible. As antena I use 16,5 cm wire soldered to ant, another wire facing opposite direction soldered to gnd.

jbeale

  • Jr. Member
  • **
  • Posts: 62
Re: RFM69HW lowbitrate longrange Config
« Reply #5 on: November 04, 2013, 10:01:42 AM »
I'd try making both Tx and Rx antennas horizontal, and try rotating one of them while you watch the RSSI output, and see how much that changes things.  Theory says the best reception will be when Tx and Rx antennas are parallel to each other. It is also possible/likely that any pipes, etc. on the in-between floors go mostly in one direction, so you may get a better signal with both antennas facing E-W (for example) than N-S.

Given what you have said, I think it is likely that you'll get it working with software optimized for low bitrate.  Mine with default settings cuts out between -95 and -100 RSSI but it is supposed to work at least to -110 at 1.2 kbps, and an improvement of 10 dB in signal should mean an increase by a factor of 3 in range.
« Last Edit: November 04, 2013, 11:32:17 PM by jbeale »

zwierzak

  • NewMember
  • *
  • Posts: 3
Re: RFM69HW lowbitrate longrange Config
« Reply #6 on: November 05, 2013, 03:07:25 AM »
I finally got it working at 4800bps from -2 to 5 floor (reinforced concrete building), but the link isn't stable. I had auto reset or power issue earlier(I use 3.3v ftdi friend). When I start serial monitor my moteino always resets, led blinks few times and I get normal serial output but nothing is received. Transmitter sketch works ok. When I power receiver from battery everything works as expected.
 I followed Felix suggestions and commented out Bitrate, FDEV, RXBW, RSSITRESH, RXRESTARTDELAY and It works at 4800bps.

I tried 1200bps and set:

BITRATEMSB_1200
BITRATELSB_1200
FDEVMSB_2000
FDEVLSB_2000

left rest commented out, but it doesn’t work, I don’t know how to set RXBW and RXRESTATDELAY.

How to enable low noise pre-amp?

jbeale

  • Jr. Member
  • **
  • Posts: 62
Re: RFM69HW lowbitrate longrange Config
« Reply #7 on: November 05, 2013, 12:52:02 PM »
just out of curiosity, what kind of RSSI values do you see at 4800 bps?  What is the lowest and highest reported RSSI values, from -2 to 5th floor?  If you aren't already printing it out, you can add this to your receiver code:

Code: [Select]
Serial.print(" RX_RSSI:");
Serial.print(radio.readRSSI());
Serial.println(" ");

priority

  • NewMember
  • *
  • Posts: 14
Re: RFM69HW lowbitrate longrange Config
« Reply #8 on: November 07, 2013, 02:43:51 PM »
....
Code: [Select]
...
Serial.print(radio.readRSSI());
...

Just noticed Felix modified the Garagemote_base code from calling radio.readRSSI() to radio.RSSI()....however, (bad coder, bad coder :) ), did not state the reason for the change.

The reason I ask is I have three R4 Moteinos with RFM69HW's (1 Garagemote_base and 2 Garagemotes) that are running the "original" Garagemote code and are always are showing an RSSI of -100 to -110 no matter if they are a foot apart or tens of feet apart with several intervening walls.  Interestingly, even with these (questionably) low RSSI readings, the moteinos have no problem communicating.   

So, I guess my question is which call should be used for getting RSSI and what is the difference?

Felix

  • Administrator
  • Hero Member
  • *****
  • Posts: 6866
  • Country: us
    • LowPowerLab
Re: RFM69HW lowbitrate longrange Config
« Reply #9 on: November 07, 2013, 03:31:45 PM »
It's actually: radio.RSSI and not: radio.RSSI()

This will give you the most recent reception RSSI, as opposed to the RSSI at the current instant. The reason is because if there is enough delay between the reception and the reading of RSSI using radio.readRSSI() the reading will be invalid (just noise, less than -100dBm).

The most accurate RSSI is now yielded by RSSI. That should still be read as soon as possible after a reception to avoid any accidental reading of another packet coming from a more distant node for instance - which would yield a different value.

Every time a packet is received an RSSI register reading is performed and stored in this new RSSI variable.

priority

  • NewMember
  • *
  • Posts: 14
Re: RFM69HW lowbitrate longrange Config
« Reply #10 on: November 07, 2013, 09:53:22 PM »
It's actually: radio.RSSI and not: radio.RSSI().
Ooops...   :-[ 

Updated my RFM69 library, made the proper change to the GM_base sketch and RSSI is now working as expected.   

Thanks!