LQ, RSSI and SNR — RC Hyperlink Sign Indicators Defined for ExpressLRS and Crossfire


LQ, RSSI, and SNR are all necessary metrics for guaranteeing a dependable radio hyperlink in FPV drones utilizing ExpressLRS or Crossfire. Whereas all of them present priceless info, they measure completely different elements of the connection. Understanding the variations between LQ, RSSI, and SNR may help pilots monitor sign well being throughout flight, estimate how a lot additional you possibly can fly, even enable you to troubleshoot radio tools when there’s a connection drawback.

A number of the hyperlinks on this web page are affiliate hyperlinks. I obtain a fee (at no further value to you) in case you make a purchase order after clicking on one in every of these affiliate hyperlinks. This helps assist the free content material for the group on this web site. Please learn our Affiliate Hyperlink Coverage for extra info.

Additional Studying:

What’s RSSI?

RSSI stands for Acquired Sign Power Indicator. It measures the power of the acquired sign and is helpful for estimating how a lot vary you have got left throughout a flight.

RSSI is measured in dBm (decibel-milliwatts), which is a logarithmic scale, fairly than mW (milliwatts), which is linear.

RSSI begins at 0 as the best potential worth. As you fly farther away and the sign will get weaker, the quantity turns into extra unfavourable. -130dBm is commonly quoted because the laborious restrict, however in actuality the bottom usable RSSI is so much increased, which is dependent upon elements akin to packet price, frequency, and modulation mode.

Finest sign (0dBm) → Worst sign (-130dBm)

Expresslrs Packet Rates Sensitivity Limit Rssi Dbm

Why use dBm as a substitute of mW?

That’s as a result of receivers can detect extremely weak indicators which might be awkward to specific in mW.

For instance: 0.000000000001mW = -120dBm

It’s merely a lot simpler to make use of dBm when coping with numbers that might in any other case have so many zeros.

Right here is an easy conversion desk between dBm and mW:

Energy (dBm) Energy (mW)
-130dBm 0.0000000000001mW
-110dBm 0.00000000001mW
-90dBm 0.000000001mW
-70dBm 0.0000001mW
-50dBm 0.00001mW
-30dBm 0.001mW
-10dBm 0.1mW
0dBm 1mW
10dBm 10mW
20dBm 100mW
100dBm 10000000000mW

In Betaflight OSD, you have got two RSSI choices:

  • RSSI (proportion)
  • RSSI dBm

I like to recommend utilizing RSSI dBm, as a result of it provides you the true sign power. Fashionable RC methods akin to ExpressLRS, Crossfire, and Tracer assist RSSI dBm reporting, whereas older methods akin to FrSky and Spektrum could solely assist RSSI in proportion.

Professional Tip:

With ExpressLRS range receivers (these with two antennas), you might even see a second quantity after RSSI dBm, separated by a colon, for instance: -50:2, The primary quantity is RSSI dBm; The second quantity signifies which antenna is at the moment getting used.

What’s LQ?

Betaflight Osd Expresslrs Link Quality Rfmd

LQ stands for Hyperlink High quality (generally generally known as LQI). It measures the proportion of uncorrupted information efficiently acquired. In ultimate circumstances, LQ needs to be 100%.

LQ is normally displayed within the format:

RFMD:LQ. For instance: 29:100.

  • The primary quantity is RFMD (RF mode)
  • The second quantity is the precise hyperlink high quality proportion

For ExpressLRS, you should use the next desk to interpret RFMD, frequency band, packet price, and modulation mode. For instance, in case you see 29:100, meaning you might be utilizing 500Hz packet price on 2.4GHz LoRa.

RFMD Band Lua Packet Fee Sensitivity Restrict
0 900 MHz 25Hz 25Hz LoRa -123dBm
1 900 MHz 50Hz 50Hz LoRa -120dBm
2 900 MHz 100Hz 100Hz LoRa -117dBm
3 900 MHz 100Hz Full 100Hz 8ch/12ch/16ch LoRa -112dBm
5 900 MHz 200Hz 200Hz LoRa -112dBm
6 900 MHz 200Hz Full 200Hz 8ch/12ch/16ch LoRa -111dBm
7 900 MHz 250Hz 250Hz LoRa -111dBm
10 900 MHz D50 50Hz DVDA LoRa -112dBm
11 900 MHz K1000 Full 1000Hz 8ch/12ch/16ch FSK -101dBm
21 2.4 GHz 50Hz 50Hz LoRa -115dBm
23 2.4 GHz 100Hz Full 100Hz 8ch/12ch/16ch LoRa -112dBm
24 2.4 GHz 150Hz 150Hz LoRa -112dBm
27 2.4 GHz 250Hz 250Hz LoRa -108dBm
28 2.4 GHz 333Hz Full 333Hz 8ch/12ch/16ch LoRa -105dBm
29 2.4 GHz 500Hz 500Hz LoRa -105dBm
30 2.4 GHz D250 250Hz DVDA FLRC -104dBm
31 2.4 GHz D500 500Hz DVDA FLRC -104dBm
32 2.4 GHz F500 500Hz FLRC -104dBm
33 2.4 GHz F1000 1000Hz FLRC -104dBm
34 2.4 GHz DK250 250Hz DVDA FSK -103dBm
35 2.4 GHz DK500 500Hz DVDA FSK -103dBm
36 2.4 GHz K1000 1000Hz FSK -103dBm
100 Gem-X 100Hz Full 100Hz 8ch/12ch/16ch LoRa Twin Band -112dBm
101 Gem-X 150Hz 150Hz LoRa Twin Band -112dBm

For Crossfire, RFMD is way easier:

  • RFMD = 2 → 150Hz
  • RFMD = 1 → 50Hz
  • RFMD = 0 → 4Hz

Crossfire may also dynamically modify packet price to keep up a secure management hyperlink. Nonetheless Betaflight advises towards utilizing Dynamic packet price as it could intervene with RC smoothing as defined right here.

What’s SNR?

SNR stands for Sign-to-Noise Ratio (generally referred to as RSNR, or relative signal-to-noise ratio). It compares the precise sign stage to the background noise.

The upper the SNR, the higher.

If SNR is low, it’s both:

  • RF interference is heavy
  • or RSSI dBm is simply too low (possibly you might be too distant, take into account improve TX energy)

However what SNR is taken into account good and dangerous? Effectively, the perfect SNR vary is dependent upon frequency and packet price. In response to ELRS wiki:

For two.4GHz

Packet Fee Unhealthy SNR Good SNR
500Hz 5.0dB and under 9.5dB and above
333Hz Full 5.0dB and under 9.5dB and above
250Hz 3.0dB and under 8.5dB and above
150Hz 0.0dB and under 8.5dB and above
100Hz Full 0.0dB and under 8.5dB and above
50Hz -1.0dB and under 6.5dB and above

For 900MHz

Packet Fee Unhealthy SNR Good SNR
200Hz 1.0dB and under 3.0dB and above
100Hz Full 1.0dB and under 3.0dB and above
100Hz 1.0dB and under 2.5dB and above
50Hz 1.0dB and under 1.5dB and above
D50 1.0dB and under 3.0dB and above
25Hz -3.0dB and under 0.5dB and above

For Crossfire, the standard SNR worth is normally a lot increased than for ELRS, usually round 4 instances increased.

Not all modulation modes assist SNR in ExpressLRS. For instance, in FLRC modes akin to: F1000, F500, D500, D250, SNR will merely keep at 0.

LQ, RSSI and SNR — Which Is the Most Essential?

LQ, RSSI, and SNR are all helpful metrics for judging your radio hyperlink high quality and vary restrict. Ideally, it’s best to show all of them in your OSD.

If I had to decide on only one, I might say LQ is a very powerful, as a result of it’s the most direct indicator of how dependable your hyperlink is at any given second.

Nonetheless, LQ doesn’t drop linearly with vary like RSSI does. It usually stays excessive till you get near the restrict, then abruptly falls off in a short time.

That’s the reason RSSI can also be helpful. It tends to lower extra step by step and predictably, which makes it higher for estimating how a lot vary you have got left.

However RSSI alone will not be sufficient, as a result of it doesn’t account for the noise ground. That’s the place SNR turns into necessary. Heavy RF interference can damage your RC hyperlink even when the sign itself continues to be fairly sturdy. Noise stage is dependent upon many issues, together with:

  • the setting, akin to cell towers
  • the electronics in your drone, akin to your VTX or FPV air unit

A Helpful Analogy

An excellent analogy for that is to think about the receiver because the individual you are attempting to speak to in a loud restaurant, with you being the transmitter. When you find yourself speaking, the amount of your voice is RSSI, the opposite individual can hear you and perceive every thing you might be saying, on this case LQ can be 100%. What actually issues right here will not be how loudly you converse, however what number of phrases the opposite individual can hear and perceive. So even when your voice is loud sufficient to be heard (excessive RSSI), the opposite individual should still not perceive you if the restaurant is simply too noisy (low SNR). In that case, you possibly can find yourself with excessive RSSI however poor LQ.

That’s the reason all three indicators matter.

Deciphering Them Collectively

Here’s a sensible approach to consider them:

LQ RSSI SNR What Does It Imply?
Excessive Excessive Excessive Wholesome radio hyperlink
Excessive Low / Approaching the sting of your vary, or probably a defective antenna
Excessive Excessive Low Hyperlink nonetheless holding up, however noise could turn into an issue quickly
Low Excessive Low Robust sign, however heavy noise/interference is corrupting packets
Low Low Low Vary restrict reached, flip again now or threat failsafe

The Minimal LQ

Ideally, LQ ought to keep at 100% all through most of your flight, however it’s regular for it to fluctuate within the 90s. LQ measures the proportion of knowledge packets that efficiently attain the drone. For instance, an LQ of fifty% means solely half of the information packets are getting by means of.

Even so, the quad is normally nonetheless flyable. At a 500Hz packet price with 50% LQ, you might be nonetheless receiving 250 instructions per second, which continues to be far sooner than older protocols akin to SBUS, which solely runs at 50Hz. Nonetheless, in case you are flying at 50Hz packet price with 50% LQ, solely 25 instructions per second are getting by means of, and you’ll probably begin noticing jittery or delayed responses to your stick inputs.

The precise LQ threshold at which you must react is subjective and is dependent upon how a lot threat you might be prepared to take. You undoubtedly mustn’t wait till LQ drops so low that the drone turns into troublesome to manage. Additionally, not like RSSI, which tends to lower extra step by step, LQ can drop in a short time as soon as it begins falling.

A dropping LQ is a warning signal. It normally means one of many following:

  • you might be approaching the restrict of your radio vary
  • you might be experiencing heavy interference
  • one thing else is improper with the hyperlink

Personally, if I see LQ persistently under 90%, I instantly examine RSSI dBm. If RSSI dBm can also be low, for instance inside 10dB to 15dB of the sensitivity restrict, it’s in all probability a good suggestion to show again. If RSSI stays excessive, I proceed to look at LQ carefully to see whether or not it recovers. If LQ retains dropping, I flip again, as a result of that normally factors to worsening interference or deteriorating hyperlink high quality.

It is best to undoubtedly flip again if LQ falls under 50%, as a result of at that time the rise in latency will make management harder, and chances are you’ll be near a failsafe.

The Minimal RSSI

The bottom RSSI is dependent upon the packet price and frequency of the sign. Decrease packet charges and decrease frequencies typically have higher sensitivity.

For instance, the bottom theoretical RSSI worth for two.4GHz at 500Hz is -105dBm, whereas for 915MHz at 25Hz it’s -123dBm, which is one motive lower-frequency, lower-packet-rate modes are higher for long-range flying.

It will be significant to not underestimate what even a couple of dBm means, as a result of each 6dB roughly doubles the vary.

For instance, in ExpressLRS, dropping the packet price from 500Hz (-105dBm) to 150Hz (-112dBm) successfully doubles the vary (and a bit extra). I’ve a separate tutorial explaining tips on how to use dB to estimate vary in FPV: https://oscarliang.com/calculate-fpv-range/

Here’s a desk of the bottom RSSI values (sensitivity restrict) for every RF mode (from the ExpressLRS Wiki). If RSSI drops under these limits, you’ll get a failsafe.

Modes Sensitivity Restrict
D250/D500/F500/F1000 -104dBm
500Hz/333Hz Full -105dBm
250Hz -108dBm
150Hz/200Hz/100Hz Full -112dBm
100Hz -117dBm
50Hz -117dBm
25Hz -123dBm

You may as well discover the sensitivity restrict straight within the ExpressLRS Lua script when choosing a packet price.

Expresslrs Elrs Lua Script V2 Interface App

So what’s the bottom RSSI you must enable to keep away from failsafe?

In follow, you shouldn’t let RSSI drop all the way in which to the sensitivity restrict. At all times go away some security margin. I personally use 10dBm of headroom above the sensitivity restrict.

For instance, in case your packet price is 500Hz LoRa on 2.4GHz, the minimal RSSI restrict can be -105dBm. In that case, you must in all probability flip again once you see round -95dBm in your OSD, utilizing 10dBm as your security margin.

Some skilled pilots could use a smaller margin and push the hyperlink tougher (and since they perceive the aptitude of their gear), however if you wish to play it secure, 10dBm is an efficient place to begin.

Additionally observe that RSSI dBm doesn’t take RF noise into consideration, which is why you will need to additionally examine SNR and LQ. If RSSI is excessive however SNR and LQ are low, then noise or interference is probably going the perpetrator.

TX Energy

Expresslrs Lua Script Tx Power Setting

You possibly can manually set a set TX energy within the ExpressLRS Lua script, or you should use Dynamic Energy and let the system resolve for you.

With Dynamic Energy, ExpressLRS adjusts the transmitter energy primarily based on SNR:

  • if the sign will get weak or noisy, it will increase energy
  • if the sign is robust and clear, it reduces energy

Dynamic Energy is an efficient strategy to save radio battery whereas nonetheless maximizing vary when wanted. Should you use Dynamic Energy, there’s a TX Uplink Energy OSD factor you possibly can show, which reveals the precise transmit energy getting used.

That mentioned, some lengthy vary pilots nonetheless desire to make use of a set TX energy. The reason being easy: when Dynamic Energy kicks in, your RSSI and SNR can bounce up and down. You might not need the system continuously altering hyperlink indicators if you are attempting to guage interference and estimate vary.

It’s also necessary to grasp that doubling TX energy doesn’t double your vary. To double the vary, you would want to extend TX energy by about 4 instances. At increased energy ranges, this rapidly turns into impractical due to the downsides, akin to:

  • overheating the TX module
  • lowered effectivity
  • lowered reliability
  • elevated interference to close by pilots or FPV gear

It’s typically finest to begin with a low energy setting and solely improve it when obligatory.

Somebody in the neighborhood (I received’t identify names) proved that it’s potential to fly 2km on simply 10mW at 500Hz packet price. If they’d used 150Hz as a substitute, they may in all probability have reached 4km. It simply goes to indicate that you do not want a lot energy — ExpressLRS is significantly stable.

Show LQ, RSSI and SNR in OSD

Within the Receiver tab in Betaflight, set each:

  • RSSI Channel = Disabled
  • RSSI_ADC = Disabled

Betaflight Configurator Setup Expresslrs Receiver Link Quality Rssi 2024

Then within the OSD tab, allow:

  • Hyperlink High quality
  • RSSI dBm Worth (not RSSI Worth)
  • RSNR Worth

Betaflight Osd Enable Rssi Dbm Link Quality Lq Snr Rsnr Elements

I like to recommend having LQ, RSSI dBm, and RSNR all displayed in your OSD, as a result of they every let you know one thing completely different about your radio hyperlink.

Lq Rssi Dbm Snr Explained Tutorial Guide Expresslrs Radio Link Rc

LQ, RSSI and SNR Alarms in OSD

You may as well allow OSD alarms for RSSI dBm, LQ, and SNR in Betaflight.

First, allow the Warnings factor within the OSD tab and place it close to the middle of the display screen so you don’t miss it when a warning is triggered.

Betaflight Osd Enable Warnings Element

Then, on the correct aspect of the OSD tab underneath the Warnings part, allow:

  • Hyperlink High quality
  • RSNR
  • RSSI dBm

Betaflight Osd Enable Rssi Dbm Link Quality Lq Snr Rsnr Warnings

You possibly can change the thresholds for these warnings utilizing the CLI:

set osd_rssi_dbm_alarm = -98
set osd_link_quality_alarm = 70
set osd_rsnr_alarm = 4
save

For RSSI dBm, I personally use a margin of 10dB above the sensitivity restrict of the packet price. For instance, for 250Hz, sensitivity restrict is -108, so I’d set the RSSI dBm alarm to -98. The default worth is -60 which is approach too excessive for my part and provides you with a untimely warning.

For LQ and RSNR I simply use the default values.

Bench Check

To examine whether or not your ELRS radio hyperlink is working accurately, you possibly can carry out this straightforward bench take a look at.

  1. Set TX energy to the bottom stage within the Lua script (10mW or 25mW, relying in your TX module)
  2. Energy in your radio and drone
  3. Place your radio about 1m (3ft) from the drone (receiver antenna)
  4. Be sure that the radio antenna and receiver antennas are aligned in the identical orientation
  5. Test within the OSD, or on the radio’s telemetry web page, what the RSSI dBm is (or the 1RSS telemetry worth)

For two.4GHz, a worth between about -25dBm and -40dBm is taken into account good. For 900MHz, a worth round -20dBm suggests the {hardware} is working correctly.

Expresslrs Radio Link Drone Receiver Antenna Bench Test Rssi Dbm

In case your worth is decrease than this (a extra unfavourable quantity), it could point out that one thing is improper, akin to:

  • a defective antenna
  • a disconnected antenna
  • broken RF {hardware}

Setup Low LQ Warning in EdgeTX

In your radio, go to mannequin setup, press the “PAGE” button to scroll to the Telemetry web page. Set “Low alarm” to 50, and “Vital alarm” to twenty. Be sure that “Disable alarms” is unchecked.

That’s it.

It is best to get a voice warning when LQ drops under these values.

Edgetx Rssi Lq Telemetry Critical Warning Low Alarm

Edit Historical past

  • Apr 2018 – article created
  • Jan 2020 – added directions for displaying LQ in Betaflight 4.1
  • Jan 2021 – up to date for BF 4.2,
  • Mar 2022 – up to date URL, rewritten for ExpressLRS launch
  • Mar 2023 – up to date information for ExpressLRS 3.0
  • Might 2026 – up to date information for ExpressLRS 4.0

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles