Wireless

Bluetooth Low Energy pentru wearables și tracking

25 Septembrie 202513 min minute de citit
7 minute de citit

Cuprins

BLE - Standardul pentru IoT wireless

Bluetooth Low Energy (BLE), cunoscut și ca Bluetooth Smart, este tehnologia wireless dominantă pentru dispozitive portabile și IoT datorită consumului extrem de redus.

BLE vs Bluetooth Classic

Bluetooth Classic

  • Streaming audio continuu
  • Transfer fișiere mari
  • Consum: 100+ mA activ
  • Utilizare: Căști, difuzoare

Bluetooth Low Energy

  • Transferuri scurte, periodice
  • Consum: <15mA TX, <1µA sleep
  • Latență: 3-6ms
  • Utilizare: Wearables, beacons, senzori

Specificații BLE 5.x

BLE 5.0

  • Range: 4x mai mare (LE Coded PHY)
  • Throughput: 2x mai mare (2Mbps PHY)
  • Advertising: 8x mai mult data

BLE 5.1

  • Direction Finding (AoA/AoD)
  • Precizie localizare: <1m indoor

BLE 5.2

  • LE Audio (LC3 codec)
  • Isochronous channels
  • Multi-stream audio

Structura protocolului

Stack-ul BLE

┌─────────────────────────┐
│      Application        │
├─────────────────────────┤
│         GAP            │  Generic Access Profile
├─────────────────────────┤
│         GATT           │  Generic Attribute Profile
├─────────────────────────┤
│         ATT            │  Attribute Protocol
├─────────────────────────┤
│         L2CAP          │  Logical Link Control
├─────────────────────────┤
│         HCI            │  Host Controller Interface
├─────────────────────────┤
│     Link Layer         │
├─────────────────────────┤
│     Physical Layer     │  2.4 GHz Radio
└─────────────────────────┘

Roluri în BLE

Peripheral (Slave)

  • Advertise-ează prezența
  • Acceptă conexiuni
  • Oferă servicii (GATT Server)
  • Exemplu: Brățară fitness, beacon

Central (Master)

  • Scanează pentru peripherale
  • Inițiază conexiuni
  • Consumă servicii (GATT Client)
  • Exemplu: Smartphone, gateway

Advertising

Canale: 37, 38, 39 (evită interferențe WiFi)

Tipuri:

  • Connectable: Permite conexiune
  • Non-connectable: Doar broadcast
  • Scannable: Răspunde la scan request

Modelul de date BLE

Structura GATT

Profile - Colecție de servicii pentru un use-case Service - Grupare logică de caracteristici Characteristic - Unitate de date cu proprietăți Descriptor - Metadata pentru characteristic

Exemplu: Heart Rate Profile

Heart Rate Service (UUID: 0x180D)
├── Heart Rate Measurement (0x2A37)
│   ├── Properties: Notify
│   └── CCCD Descriptor (enable notifications)
├── Body Sensor Location (0x2A38)
│   └── Properties: Read
└── Heart Rate Control Point (0x2A39)
    └── Properties: Write

Servicii standard (SIG)

Comune:

  • Battery Service (0x180F)
  • Device Information (0x180A)
  • Heart Rate (0x180D)
  • Environmental Sensing (0x181A)

Custom services:

  • UUID 128-bit propriu
  • Definire caracteristici custom
  • Documentare pentru integrare

Selectarea chip-ului BLE

Opțiuni populare

Nordic nRF52 Series

  • nRF52832: BLE 5.0, ARM Cortex-M4
  • nRF52840: BLE 5.0, USB, Zigbee capable
  • nRF52833: Direction finding
  • Avantaj: SDK excelent, comunitate mare

Dialog DA1469x

  • Ultra-low power
  • Codec audio integrat
  • Display controller
  • Utilizare: Wearables premium

Texas Instruments CC26xx

  • Multi-protocol (BLE, Zigbee, Thread)
  • Sensor controller pentru wake-up
  • Utilizare: Industrial, smart home

Silicon Labs EFR32

  • BLE + Zigbee + Thread
  • Gecko SDK
  • Utilizare: Multi-protocol IoT

Module vs Chip

Module (ex: nRF52 Raytac MDBT42Q)

  • Antenă integrată
  • Certificări incluse (FCC, CE)
  • Time-to-market rapid
  • Cost premium

Chip (ex: nRF52832 QFN)

  • Flexibilitate design
  • Cost optimizat la volum
  • Necesită certificare
  • PCB cu RF knowledge

Autonomie maximă pe baterie

Principii low-power

Minimize wake time

  • Procesare cât mai rapidă
  • Sleep imediat după task
  • Evită polling, folosește întreruperi

Reduce TX power

  • Ajustează bazat pe RSSI
  • +4dBm vs 0dBm = 40% mai mult curent
  • Distanța scurtă = power redus

Optimizare advertising

  • Interval mai mare = consum mai mic
  • 1000ms interval vs 100ms = 10x economie
  • Balanță: Latență descoperire vs baterie

Connection parameters

Connection interval

  • Range: 7.5ms - 4s
  • Trade-off: Latență vs consum
  • Negociere cu central

Slave latency

  • Skip connection events dacă nimic de trimis
  • Reducere majoră consum

Supervision timeout

  • Timeout pentru detectare disconnect
  • Valoare prea mică = reconectări false

Consum tipic nRF52

  • TX (+4dBm): 5.3mA
  • RX: 5.4mA
  • CPU active: 3mA
  • System ON, RAM retention: 1.5µA
  • System OFF: 0.3µA

Implementare software

SDK-uri și stacks

Nordic nRF Connect SDK (Zephyr based)

  • Modern, cross-platform
  • Bluetooth Host + Controller
  • Suport Thread, Zigbee
  • Open source

Nordic SoftDevice (legacy)

  • Binary blob pentru controller
  • API stabil și testat
  • Încă folosit în producție

Zephyr RTOS

  • Bluetooth stack integrat
  • Multi-vendor support
  • Configurabil și modular

Flow dezvoltare

1. Definire GATT

BT_GATT_SERVICE_DEFINE(my_service,
    BT_GATT_PRIMARY_SERVICE(&my_uuid),
    BT_GATT_CHARACTERISTIC(&char_uuid,
        BT_GATT_CHRC_READ | BT_GATT_CHRC_NOTIFY,
        BT_GATT_PERM_READ,
        read_cb, NULL, &value),
    BT_GATT_CCC(ccc_cfg_changed, BT_GATT_PERM_READ | BT_GATT_PERM_WRITE),
);

2. Advertising setup

static const struct bt_data ad[] = {
    BT_DATA_BYTES(BT_DATA_FLAGS, BT_LE_AD_GENERAL | BT_LE_AD_NO_BREDR),
    BT_DATA(BT_DATA_NAME_COMPLETE, DEVICE_NAME, sizeof(DEVICE_NAME) - 1),
};

bt_le_adv_start(BT_LE_ADV_CONN, ad, ARRAY_SIZE(ad), NULL, 0);

Protejarea comunicației

Niveluri de securitate

Mode 1 (Encryption)

  • Level 1: No security
  • Level 2: Unauthenticated encryption (Just Works)
  • Level 3: Authenticated encryption (PIN, OOB)
  • Level 4: Authenticated LE Secure Connections

Mode 2 (Signing)

  • Data signing fără encryption
  • Utilizare: Broadcast authenticated

Pairing methods

Just Works

  • Zero user interaction
  • Vulnerabil la MITM
  • Utilizare: Dispozitive fără display/input

Passkey Entry

  • PIN 6 cifre
  • Protecție MITM
  • Necesită display sau input

Numeric Comparison

  • Ambele device-uri afișează număr
  • Utilizatorul confirmă potrivire
  • Cel mai sigur pentru device-uri cu display

Out of Band (OOB)

  • Schimb chei prin alt canal (NFC, QR)
  • Foarte sigur
  • Complexitate implementare

Best practices securitate

  • Activează bonding pentru dispozitive de încredere
  • Folosește LE Secure Connections (BLE 4.2+)
  • Implementează app-level encryption pentru date sensibile
  • Rotire periodică a cheilor

Validarea implementării BLE

Tools pentru dezvoltare

nRF Connect App (iOS/Android)

  • Scanare device-uri
  • Conectare și explore GATT
  • Read/Write/Subscribe caracteristici
  • Log pentru debugging

Wireshark + nRF Sniffer

  • Capturare pachete over-the-air
  • Analiză protocol detaliată
  • Debug pairing issues

Nordic Power Profiler Kit

  • Măsurare consum real-time
  • Rezoluție: µA
  • Corelare cu evenimente software

Testing checklist

Funcțional:

  • Advertising vizibil
  • Conexiune stabilă
  • Toate caracteristicile funcționale
  • Notifications working
  • Reconnect after disconnect

Interoperabilitate:

  • iOS (diverse versiuni)
  • Android (diverse telefoane)
  • Alți centrali (gateway-uri)

Power:

  • Consum în advertising
  • Consum în conexiune idle
  • Consum în transfer activ
  • Sleep current

Range:

  • Distanță maximă în câmp liber
  • Performanță prin obstacole

Drum către piață

Bluetooth SIG Certification

Obligatoriu pentru:

  • Utilizare logo Bluetooth
  • Interoperabilitate garantată
  • Acces pe piețe majore

Proces:

  1. Înregistrare ca membru SIG
  2. Qualification (QDID) pentru stack folosit
  3. Declaration (produs final)
  4. Listing pe bluetooth.com

Costuri:

  • Membership: $2,500 - $35,000/an (bazat pe revenue)
  • Declaration: $0-8,000 (bazat pe membership level)

Radio certifications

CE (Europa)

  • RED (Radio Equipment Directive)
  • Test EMC și radio
  • Self-declaration (cu raport test)

FCC (SUA)

  • Part 15 pentru ISM band
  • ID unic FCC
  • Test la lab acreditat

IC (Canada), MIC (Japan), etc.

  • Cerințe similare
  • Necesare pentru export

Utilizare modul certificat

Avantaj major:

  • Certificările radio incluse
  • Reduce time-to-market
  • Cost mai mic decât certificare proprie

Condiții:

  • Respectare design guidelines (antenă, impedanță)
  • Nu modifici parametri RF
  • Include ID-uri în documentație

BLE pentru produsul tău

Bluetooth Low Energy este alegerea ideală pentru dispozitive wireless cu consum redus. Cu hardware și firmware potrivite, poți obține ani de autonomie pe o baterie coin cell.

Factori de succes

  • Hardware potrivit - Alege chip/modul pentru aplicația ta
  • Stack optimizat - SDK matur, testat în producție
  • Power design - Optimizare din start, nu la final
  • Testare riguroasă - Interoperabilitate și consum
  • Certificare - Plan din faza de design

Servicii Torcip pentru BLE

Dezvoltare hardware:

  • Design PCB cu RF
  • Selectare antene și matching
  • Optimizare pentru producție

Dezvoltare firmware:

  • Nordic nRF52/53 specialist
  • Custom GATT profiles
  • OTA updates
  • Power optimization

Producție:

  • Asamblare și testare
  • Programming și provisioning
  • Suport certificare

Proiecte realizate:

  • Brățări fitness
  • Beacons indoor positioning
  • Senzori industriali wireless
  • Wearables medicale

Contactează-ne pentru o discuție despre proiectul tău BLE și primește consultanță tehnică gratuită.

Citește mai multe articole

Înapoi la blog