Interference threshold
Interference Threshold
De interference threshold instelling bepaalt of een node het kanaal controleert op activiteit voordat deze gaat zenden.
Adviesinstelling
- Stel int.thresh in op 1 (
set int.thresh 1). Doe dit in overleg en tegelijk met repeaters in de buurt - Stel het naar boven bij als je negatieve effecten merkt in je buurt.
Deze instelling houdt je repeater "vriendelijk" (lager is vriendelijker, zie verderop) hij gaat dan wachten met zenden als iemand anders al aan het zenden is.
Als je een hogere waarde wilt instellen, kijk dan naar de SNR van neighbors (je vind een lijst in je repeater) en pak de laagste waarde waarmee je niet wilt interfereren. Er zullen verre repeaters zijn met een negatieve SNR, maar ook repeaters vlak in de buurt met iets van 2 of hoger. Kies een waarde van repeaters in de buurt. Zo zorg je ervoor dat je elkaar onderling niet dwars zit.
Voor details over hoe het allemaal werkt, lees je verder.
Wat doet het?
De interference threshold detecteert interferentie in de band, zowel van andere LoRa-transmissies als andere RF-bronnen. Wanneer interferentie gedetecteerd wordt, worden pakket-transmissies uitgesteld totdat het kanaal weer vrij is.
Werking:
- De huidige noise floor wordt gemeten
- De threshold waarde wordt opgeteld bij de noise floor
- Als de huidige RSSI hoger is dan deze som → kanaal is bezet, wachten
- Als de RSSI lager is → kanaal is vrij, direct zenden
Dit voorkomt dat de node over andere actieve transmissies heen zendt en vermindert het aantal botsingen (collisions) op het netwerk.
Technisch gedrag
Wanneer het kanaal bezet is, gebeurt het volgende:
| Stap | Actie |
|---|---|
| 1 | Pakket blijft in de verzendwachtrij (wordt niet gedropt) |
| 2 | Nieuwe verzendpoging wordt gepland na 120-480ms (willekeurig) |
| 3 | Dit herhaalt zich totdat het kanaal vrij is |
| 4 | Na maximaal 4 seconden wachten wordt het pakket alsnog verzonden |
| 5 | Bij timeout wordt de ERR_EVENT_CAD_TIMEOUT vlag gezet
|
Belangrijk: Pakketten worden nooit gedropt door interference detection. Ze wachten in de queue tot verzending mogelijk is of de timeout bereikt wordt.
Configuratie
| Commando | Omschrijving |
|---|---|
get int.thresh |
Toon huidige threshold waarde |
set int.thresh {dB} |
Stel threshold in (in dB) |
Waardes
| Waarde | Gedrag |
|---|---|
0 |
Uitgeschakeld (standaard) - geen kanaalcontrole, direct zenden |
14 |
Voorbeeldwaarde - wacht als signaal > 14 dB boven noise floor |
| Hoger | Minder gevoelig, vaker direct zenden |
| Lager | Gevoeligere detectie, vaker wachten |
Trade-offs
| Voordeel | Nadeel |
|---|---|
| Minder collisions | Hogere latency (tot 4 seconden extra) |
| Betere betrouwbaarheid | Kan zendkansen missen in druk netwerk |
| Efficiënter airtime gebruik | Extra processing voor kanaaldetectie |
Listen Before Talk (LBT)
Deze functie implementeert Listen Before Talk (LBT) met Carrier Sense Multiple Access (CSMA) gedrag. Dit is een techniek die in sommige regio's wettelijk verplicht is (bijv. Japan) maar in Europa optioneel.
Het gedrag is "polite but not indefinite": de node wacht beleefd tot het kanaal vrij is, maar geeft na 4 seconden op en zendt alsnog om vastlopen te voorkomen.
In een druk mesh-netwerk kan het inschakelen van interference threshold helpen om:
- Packet loss te verminderen
- Airtime efficiënter te benutten
- Stabiliteit te verbeteren
Wanneer gebruiken?
- Dicht netwerk met veel nodes in elkaars bereik → overweeg in te schakelen
- Dun netwerk met weinig overlap → waarschijnlijk niet nodig en kan dus ook geen kwaad
- Bridge of grens netwerk met sf7 en sf8 naast elkaar → helpt om overspraak tussen modes the voorkomen
- Hoge traffic situaties → kan helpen bij congestie
- Omgevingen met RF-interferentie → kan botsingen met andere apparatuur verminderen
Gerelateerde instellingen
| Instelling | Relatie |
|---|---|
noise.floor |
Wordt opgeteld bij threshold voor detectiegrens |
airtime |
Interference detection werkt samen met airtime budgeting |
Toegevoegd in
Firmware v1.7.0