33.6K
LQ, RSSI, and SNR are all vital metrics for making certain a dependable radio hyperlink in FPV drones utilizing ExpressLRS or Crossfire. Whereas all of them present beneficial data, they measure completely different features of the connection. Understanding the variations between LQ, RSSI, and SNR can assist pilots monitor sign well being throughout flight, estimate how a lot additional you possibly can fly, even enable you to to troubleshoot radio gear when there’s a connection drawback.
Among the hyperlinks on this web page are affiliate hyperlinks. I obtain a fee (at no further price to you) in case you make a purchase order after clicking on considered one of these affiliate hyperlinks. This helps help the free content material for the group on this web site. Please learn our Affiliate Hyperlink Coverage for extra data.
Additional Studying:
What’s RSSI?
RSSI stands for Acquired Sign Power Indicator. It measures the energy 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, moderately than mW (milliwatts), which is linear.
RSSI begins at 0 as the very best attainable 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 lots increased, which is dependent upon components resembling packet fee, frequency, and modulation mode.
Greatest sign (0dBm) → Worst sign (-130dBm)
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 will 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 energy. Trendy RC techniques resembling ExpressLRS, Crossfire, and Tracer help RSSI dBm reporting, whereas older techniques resembling FrSky and Spektrum could solely help RSSI in proportion.
Professional Tip:
With ExpressLRS variety 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 presently getting used.
What’s LQ?
LQ stands for Hyperlink High quality (typically referred to as LQI). It measures the proportion of uncorrupted knowledge efficiently acquired. In supreme circumstances, LQ must 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
In case you got here from ExpressLRS 3.0 you may discover the RFMD now not is smart. That’s as a result of in ExpressLRS 4.0, the developer modified the RFMD numbers.
Right here’s a glance up desk on learn how to interpret RFMD, frequency band, packet fee, and modulation mode in ELRS V4. For instance, in case you see 29:100, meaning you might be utilizing 500Hz packet fee on 2.4GHz LoRa. In case you are nonetheless utilizing ELRS V3, please consult with the Wiki for the previous desk.
| 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 far less complicated:
- RFMD = 2 → 150Hz
- RFMD = 1 → 50Hz
- RFMD = 0 → 4Hz
Crossfire may dynamically modify packet fee to keep up a secure management hyperlink. Nonetheless Betaflight advises towards utilizing Dynamic packet fee as it could intrude with RC smoothing as defined right here.
What’s SNR?
SNR stands for Sign-to-Noise Ratio (typically known as RSNR, or relative signal-to-noise ratio). It compares the precise sign degree to the background noise.
The upper the SNR, the higher.
If SNR is low, it’s means:
- RF interference is heavy;
- or/and sign is simply too weak
However what SNR is taken into account good and dangerous? Effectively, the best SNR vary is dependent upon frequency and packet fee. In keeping with ELRS wiki:
For two.4GHz
| Packet Fee | Dangerous SNR | Good SNR |
|---|---|---|
| 500Hz | Beneath 5.0dB | Above 9.5dB |
| 333Hz Full | Beneath 5.0dB | Above 9.5dB |
| 250Hz | Beneath 3.0dB | Above 8.5dB |
| 150Hz | Beneath 0.0dB | Above 8.5dB |
| 100Hz Full | Beneath 0.0dB | Above 8.5dB |
| 50Hz | Beneath -1.0dB | Above 6.5dB |
For 900MHz
| Packet Fee | Dangerous SNR | Good SNR |
|---|---|---|
| 200Hz | Beneath 1.0dB | Above 3.0dB |
| 100Hz Full | Beneath 1.0dB | Above 3.0dB |
| 100Hz | Beneath 1.0dB | Above 2.5dB |
| 50Hz | Beneath 1.0dB | Above 1.5dB |
| D50 | Beneath 1.0dB | Above 3.0dB |
| 25Hz | Beneath -3.0dB | Above 0.5dB |
For Crossfire, the everyday SNR worth is normally a lot increased than for ELRS, usually round 4 occasions increased.
Not all modulation modes help SNR in ExpressLRS. For instance, in FLRC modes resembling: F1000, F500, D500, D250, SNR will merely keep at 0.
LQ, RSSI and SNR — Which Is the Most Vital?
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.
When checking sign well being, 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 immediately falls off in a short time.
That’s the reason RSSI can be crucial. It tends to lower extra progressively 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 reason SNR is helpful. Heavy RF interference can damage your RC hyperlink even when the sign itself remains to be moderately sturdy. Noise degree is dependent upon many issues, together with:
- the atmosphere, resembling cell towers
- the electronics in your drone, resembling your VTX or FPV air unit
A Helpful Analogy
A great 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. If you end up speaking, the amount of your voice is RSSI, the opposite individual can hear you and perceive all the pieces you might be saying, on this case LQ can be 100%. What actually issues right here will not be how loudly you communicate, 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.
Decoding Them Collectively
Here’s a sensible manner to consider these sign indicators:
| 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 out to be 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 via.
Even so, the quad is normally nonetheless flyable. At a 500Hz packet fee with 50% LQ, you might be nonetheless receiving 250 instructions per second, which remains to be far sooner than older protocols resembling SBUS, which solely runs at 50Hz. Nonetheless, in case you are flying at 50Hz packet fee with 50% LQ, solely 25 instructions per second are getting via, and you’ll doubtless begin noticing jittery or delayed responses to your stick inputs.
The precise LQ threshold at which it is best to react is subjective and is dependent upon how a lot threat you might be prepared to take. You positively shouldn’t wait till LQ drops so low that the drone turns into troublesome to manage. Additionally, in contrast to RSSI, which tends to lower extra progressively, 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 fallacious with the hyperlink
Personally, if I see LQ persistently under 90%, I instantly examine RSSI dBm. If RSSI dBm can be low, for instance inside 10dB to 15dB of the sensitivity restrict, it’s most likely 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 positively flip again if LQ falls under 50%, as a result of at that time the rise in latency will make management tougher, and you might be near a failsafe.
The Minimal RSSI
The bottom RSSI is dependent upon the packet fee and frequency of the sign. Decrease packet charges and decrease frequencies usually 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 purpose lower-frequency, lower-packet-rate modes are higher for long-range flying.
It is necessary to not underestimate what even a number of dBm means, as a result of each 6dB roughly doubles the vary.
For instance, in ExpressLRS, dropping the packet fee from 500Hz (-105dBm) to 150Hz (-112dBm) successfully doubles the vary (and a bit extra). I’ve a separate tutorial explaining learn 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 |
It’s also possible to discover the sensitivity restrict instantly within the ExpressLRS Lua script when choosing a packet fee.
So what’s the bottom RSSI it is best to permit 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 depart some security margin. I personally use 10dBm of headroom above the sensitivity restrict.
For instance, in case your packet fee is 500Hz LoRa on 2.4GHz, the minimal RSSI restrict can be -105dBm. In that case, it is best to most likely flip again while 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 potential of their gear), however if you wish to play it protected, 10dBm is an effective place to begin.
Additionally notice that RSSI dBm doesn’t take RF noise under consideration, which is why it is very important 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
You may manually set a hard and fast TX energy within the ExpressLRS Lua script, or you should utilize Dynamic Energy and let the system determine 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 effective option to save radio battery whereas nonetheless maximizing vary when wanted. In case you use Dynamic Energy, there’s a TX Uplink Energy OSD component you possibly can show, which exhibits the precise transmit energy getting used.
That mentioned, some lengthy vary pilots nonetheless desire to make use of a hard and fast TX energy. The reason being easy: when Dynamic Energy kicks in, your RSSI and SNR can bounce up and down. You could not need the system continually altering hyperlink indicators if you are making an attempt to evaluate interference and estimate vary.
Additionally it is vital 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 occasions. At increased energy ranges, this shortly turns into impractical due to the downsides, resembling:
- overheating the TX module
- lowered effectivity
- lowered reliability
- elevated interference to close by pilots or FPV gear
It’s usually finest to start out with a low energy setting and solely enhance it when vital.
Somebody in the neighborhood (I gained’t title names) proved that it’s attainable to fly 2km on simply 10mW at 500Hz packet fee. If that they had used 150Hz as a substitute, they may most likely have reached 4km. It simply goes to indicate that you do not want a lot energy — ExpressLRS is critically stable.
Show LQ, RSSI and SNR in OSD
Within the Receiver tab in Betaflight, set each:
- RSSI Channel = Disabled
- RSSI_ADC = Disabled
Then within the OSD tab, allow:
Hyperlink High qualityRSSI dBm Worth(not RSSI Worth)RSNR Worth
I like to recommend having LQ, RSSI dBm, and RSNR all displayed in your OSD, as a result of they every inform you one thing completely different about your radio hyperlink.
LQ, RSSI and SNR Alarms in OSD
It’s also possible to allow OSD alarms for RSSI dBm, LQ, and SNR in Betaflight.
First, allow the Warnings component within the OSD tab and place it close to the middle of the display so you don’t miss it when a warning is triggered.
Then, on the suitable facet of the OSD tab beneath the Warnings part, allow:
- Hyperlink High quality
- RSNR
- RSSI dBm
You may change the thresholds for these warnings utilizing the CLI:
set osd_rssi_dbm_alarm = -98set osd_link_quality_alarm = 70set osd_rsnr_alarm = 4 save
For RSSI dBm, I personally use a margin of 10dB above the sensitivity restrict of the packet fee. 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 manner too excessive for my part and offers you a untimely warning.
For LQ and RSNR I simply use the default values.
Bench Take a look at
To examine whether or not your ELRS radio hyperlink is working appropriately, you possibly can carry out this straightforward bench check.
- Set TX energy to the bottom degree within the Lua script (10mW or 25mW, relying in your TX module)
- Energy in your radio and drone
- Place your radio about 1m (3ft) from the drone (receiver antenna)
- Ensure the radio antenna and receiver antennas are aligned in the identical orientation
- Examine 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 price between about -25dBm and -40dBm is taken into account good. For 900MHz, a price round -20dBm suggests the {hardware} is working correctly.
In case your worth is decrease than this (a extra unfavourable quantity), it could point out that one thing is fallacious, resembling:
- 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. Ensure “Disable alarms” is unchecked.
That’s it.
It is best to get a voice warning when LQ drops under these values.
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
- Could 2026 – up to date information for ExpressLRS 4.0
