Analiza awarii: moduł Bluetooth / UART
Zakres: moduły BLE 4.2/5.0 w AGD z interfejsem UART do MCU (3,3 V). Parametry: fbaud=115200–921600, BLE PHY 1M/2M, TX 0–+6 dBm, wąskopasmowe kanały reklamowe 37/38/39. Zasilanie 3,0–3,6 V, ripple < 50 mVpp. Funkcje: provisioning, telemetria, aktualizacja FW OTA.
Objawy i kody błędów
- Spadki przepustowości linku BLE (pakietowanie < 40% nominalnych MTU), przerwania sesji OTA.
- Losowe resety modułu podczas pracy sprężarki/napędu BLDC (związek z EMI).
- Desynchronizacja UART: nadmiarowe znaki, framing errors, zawieszenia po burstach danych.
- Kody:
E:BT-12(conn_drop),E:UART-21(frame_err),W:RF-07(co-channel_interf),W:PSU-04(ripple_over).
| Kod | Warunek zapisu | Skutek |
|---|---|---|
E:BT-12 | >= 3 utraty anchor w 6 s lub RSSI < −92 dBm przez ≥ 2 s | rozłączenie, ponowny scan |
E:UART-21 | ≥ 5 błędów framing/1000 ramek @115200 | reset interfejsu, reinit DMA |
W:RF-07 | PER > 5% przy SNR < 6 dB | zmiana kanału, obniżenie PHY |
W:PSU-04 | ripple Vdd > 80 mVpp @ 10–100 kHz | derating TX do 0 dBm |
Stanowisko i metodyka
Analizator widma 9 kHz–6 GHz, sniffer BLE (logi LL/ATT/GATT), generator zakłóceń impulsowych 2,4 GHz, oscyloskop 500 MHz, analizator logiczny 200 MHz (UART), komora 20/55 °C, źródło 3,3 V + injekcja ripple. Próbkowanie: 1 kHz (telemetria RSSI/TxPower), 8 kHz (ripple), 10 MHz (UART). Testy: OTA 512 kB, burst UART 1 MB/s, praca równoległa z Wi-Fi 2,4 GHz i mikrofalą 2,45 GHz (obciążenie środowiska).
| Parametr | Wartość ref. | Uwagi |
|---|---|---|
| fbaud UART | 115200 | 8N1, DMA RX/TX |
| MTU BLE | 185 B | Data Length Extension włączone |
| RSSI roboczy | −40…−75 dBm | antena PIFA/ceramiczna |
| Ripple Vdd | < 50 mVpp | pasmo 1–200 kHz |
Wyniki i obserwacje
- Interferencje współkanałowe: w obecności Wi-Fi 20/40 MHz kanał 1/6/11 PER rósł do 7–12%, SNR spadał do 3–5 dB. Sniffer: retransmisje LL > 25%, →
W:RF-07, a następnieE:BT-12w OTA. - Ripple z DC/DC: przetwornica buck @ 400 kHz wprowadzała 90–130 mVpp na 3,3 V (harmoniczne 100–400 kHz). Moduł obniżał moc TX do 0 dBm i rejestrował
W:PSU-04; przy burstach UART następowały krótkie resety. - Desynchronizacja UART: przy 115200 i DMA bez detekcji ciszy obserwowano overruns (ORE) i framing errors (FE) po paczkach > 2 kB — szczególnie gdy BLE generował przerwania LL. Korelacja z
E:UART-21. - Problemy antenowe: obudowa metalowa z niedostrojoną anteną ceramiczną (S11=−6…−8 dB @ 2,44 GHz) → RSSI pogarszał się o 7–11 dB. Przeniesienie anteny i dodanie clearance 8 mm poprawiło bilans łącza.
- EMI od napędu: komutacja mostka mocy (18 kHz) wytwarzała tło szerokopasmowe 30–200 MHz; na liniach UART pojawiały się impulsy 100–300 mV, co bez terminacji 47–100 Ω powodowało FE.
LOG START [BT-UART-25-219]
t[s] RSSI[dBm] SNR[dB] PER[%] PHY MTU UART-err/1k Ripple[mVpp] Flags
0 -58 14 0.6 2M 185 0 22 OK
42 -77 5 8.9 1M 185 2 96 W:RF-07,W:PSU-04
57 -74 6 6.1 1M 185 7 104 E:UART-21
73 -68 9 2.2 2M 185 0 48 RECOVER
118 -91 3 11.7 1M 185 0 44 E:BT-12
LOG END
Hipotezy przyczynowe (ranking)
- WSPÓŁKANAŁOWE RF: kolizje z Wi-Fi/mikrofala, niski SNR → retransmisje i dropy (priorytet: wysoki).
- RIPPLE ZASILANIA: zbyt duże Vpp z buck → degradacja PA, resety modułu (wysoki).
- UART/DMA: brak kontroli przepływu i timeoutów → ORE/FE przy burstach (średni/wysoki).
- ANTENA: niedostrojenie i ekranowanie obudową → RSSI↓, PER↑ (średni).
- EMI NAPĘDU: impulsy na liniach UART bez terminacji/ESD → błędy ramek (średni).
Wycinek procedury serwisowej
- Sprawdzić ripple 3,3 V: pasmo 1–500 kHz; akceptowalne < 50 mVpp. Wartości > 80 mVpp → dodać LC 10 µH/47–100 µF i kondensatory niskiej impedancji przy module.
- Konfiguracja BLE: wymusić PHY 1M przy SNR<8 dB; włączyć adaptive channel map (wyciąć kolizyjne kanały z Wi-Fi).
- UART: włączyć RTS/CTS (sprzętowy flow), dodać timeout znaku (np. 2–4 znaki) i detekcję ciszy w DMA; opcjonalnie obniżyć do 57600 przy OTA.
- Antena: zapewnić clearance ≥ 6–8 mm od metalu, dostroić matching (π 1–2 pF/1–3 nH), docelowo S11 < −10 dB @ 2,44 GHz.
- EMI/ESD na UART: rezystory 33–68 Ω szeregowo blisko pinu, TVS ESD, masa referencyjna gwiazdą; przewody skręcone/ekranowane do frontu.
- Test końcowy: OTA 512 kB bez
E:BT-12, PER < 1,5%, RSSI > −75 dBm, UART-err < 1/1000 ramek, ripple < 50 mVpp.
Wnioski
Awaryjność modułów BLE/UART w AGD wynika przede wszystkim z interferencji współkanałowych w paśmie 2,4 GHz, nadmiernego ripple zasilania z przetwornicy buck, braku kontroli przepływu na UART oraz niedostrojenia anteny w obudowie metalowej. Po poprawie zasilania (ripple < 50 mVpp), dostrojeniu anteny (S11< −10 dB), włączeniu RTS/CTS i adaptacji kanałów BLE uzyskano stabilne OTA oraz brak błędów E:BT-12/E:UART-21. Porównanie wyników pomiarów zrealizowano na sprzęcie kalibracyjnym aby wykluczyć błędy metodologiczne.
W przypadkach rekurencyjnych zalecany jest przegląd przez jednostkę lokalną wraz z logami RSSI/SNR/PER i błędami UART.