Noise floor
Noise Floor
De noise floor is het achtergrondruisniveau dat de radio ontvangt wanneer er geen signaal aanwezig is. Dit wordt gemeten in dBm.
Wat is noise floor?
Elke radio-ontvanger heeft een bepaald niveau van achtergrondruis, veroorzaakt door:
- Thermische ruis in de elektronica
- Elektromagnetische interferentie uit de omgeving
- Kosmische achtergrondstraling
De noise floor is het laagste signaalvermogen dat de radio kan detecteren. Signalen onder de noise floor verdwijnen in de ruis en zijn niet te ontvangen.
Waarom is het belangrijk?
Ontvangstgevoeligheid
Hoe lager de noise floor, hoe zwakkere signalen je kunt ontvangen:
- Noise floor -120 dBm → kan signalen van -119 dBm en sterker ontvangen
- Noise floor -100 dBm → kan alleen signalen van -99 dBm en sterker ontvangen
Interference detection
De Interference Threshold gebruikt de noise floor als referentiepunt:
kanaal_bezet = huidige_RSSI > (noise_floor + threshold)
Een accurate noise floor meting is essentieel voor correcte interferentiedetectie.
Hoe wordt het gemeten?
MeshCore meet de noise floor continu met een slimme methode:
- Verzamel 64 RSSI samples wanneer de radio in ontvangstmodus staat
- Negeer samples tijdens pakketontvangst (dat is signaal, geen ruis)
- Negeer samples die meer dan 14 dB boven de huidige floor liggen
- Bereken het gemiddelde van de 64 samples
- Herhaal elke 2 seconden
Minimum waarde: De noise floor wordt begrensd op -120 dBm om onrealistische waarden te voorkomen.
Typische waardes
| Noise floor | Betekenis |
|---|---|
| -120 dBm | Uitstekend - zeer rustige RF-omgeving |
| -110 dBm | Goed - landelijke omgeving |
| -100 dBm | Redelijk - stedelijke omgeving |
| -90 dBm | Slecht - veel RF-interferentie |
| -80 dBm of hoger | Problematisch - sterke stoorbronnen aanwezig |
Noise floor bekijken
| Commando | Omschrijving |
|---|---|
stats-radio |
Toont noise_floor in dBm (alleen via seriële verbinding) |
Voorbeeld output:
{"noise_floor":-115,"last_rssi":-98,"last_snr":8.25,"tx_air_secs":42,"rx_air_secs":156}
AGC Reset
De Automatic Gain Control (AGC) past automatisch de versterkingsfactor van de ontvanger aan. Soms kan de AGC "vastlopen" in een suboptimale staat.
Symptomen van vastgelopen AGC
- Noise floor blijft hangen op -120 dBm (minimum)
- Verminderde ontvangstgevoeligheid
- Pakketten die eerder wel aankwamen worden gemist
AGC Reset configureren
| Commando | Omschrijving |
|---|---|
get agc.reset.interval |
Toon huidige reset interval |
set agc.reset.interval {sec} |
Stel interval in (in seconden, afgerond op 4) |
Standaard: 0 (uitgeschakeld)
Bij een AGC reset:
- Radio gaat kort in slaapstand (warm sleep)
- Analoge frontend wordt gereset
- Noise floor meting herstart vanaf nul
- Ontvangst wordt hervat
Relatie met andere instellingen
| Instelling | Relatie |
|---|---|
| Interference Threshold | Noise floor + threshold bepaalt wanneer kanaal "bezet" is |
| RSSI | Signaalsterkte wordt vergeleken met noise floor voor SNR |
| SNR | SNR = RSSI - noise floor (in dB) |
Problemen oplossen
Noise floor te hoog
Mogelijke oorzaken:
- Stoorbronnen in de buurt (LED-drivers, schakelende voedingen, computers)
- Slechte antenne of antenneaansluiting
- Defecte radio-frontend
Oplossingen:
- Verplaats de node weg van stoorbronnen
- Controleer antenneverbinding
- Gebruik een extern filter als stoorbron bekend is
Noise floor blijft op -120 dBm
Dit kan wijzen op:
- AGC vastgelopen → probeer
set agc.reset.interval 60 - Radio niet correct geïnitialiseerd → herstart de node
- Antenne niet aangesloten (ontvanger ziet alleen interne ruis)
Noise floor fluctueert sterk
- Intermitterende stoorbronnen (bijv. apparaten die aan/uit schakelen)
- Mobiele stoorbronnen (bijv. voertuigen, drones)
- Overweeg een hogere int.thresh waarde
Technische details
| Parameter | Waarde |
|---|---|
| Aantal samples | 64 |
| Sample threshold | 14 dB boven huidige floor |
| Calibratie interval | 2000 ms |
| Minimum waarde | -120 dBm |
| Opslag | int16_t (signed 16-bit) |