Naar inhoud springen

Interference threshold

Uit MeshWiki

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:

  1. De huidige noise floor wordt gemeten
  2. De threshold waarde wordt opgeteld bij de noise floor
  3. Als de huidige RSSI hoger is dan deze som → kanaal is bezet, wachten
  4. 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:

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

Zie ook