Как найти свободный канал для nRF24L01+?
Обновлено Редакция GAW
У nRF24L01+ нет полноценного RSSI, но есть однобитный детектор уровня RPD: он показывает, есть ли в канале сигнал сильнее −64 дБм. Этого достаточно, чтобы построить простой сканер эфира и найти канал, где модуль не будет конкурировать с Wi-Fi, Bluetooth и соседними сетями. Параметры модуля — в карточке nRF24L01+.
Как работает сканер
- Перевести модуль в приём (PRIM_RX = 1), CE = 0.
- Записать номер канала в RF_CH — частота F = 2400 + RF_CH МГц.
- Поднять CE и подождать не меньше 130 + 40 = 170 мкс: столько по спецификации нужно, чтобы RPD стал достоверным.
- Прочитать бит 0 регистра 09 (RPD), опустить CE.
- Повторить для каналов 0–125 и прогнать весь цикл сотни раз, считая срабатывания на каждом канале.
| RF_CH | Частота | Что обычно мешает |
|---|---|---|
| 0–1 | 2400–2401 МГц | ниже полосы, которую занимает Wi-Fi |
| 2–94 | 2402–2494 МГц | полоса, которую могут занимать каналы Wi-Fi |
| 95–125 | 2495–2525 МГц | выше Wi-Fi, но смотрите местные правила |
Частоты в таблице — наш расчёт. По даташиту ESP32 2412–2484 МГц — это диапазон центральных частот каналов Wi-Fi, а по руководству ESP-IDF канал занимает 20 или 40 МГц. Поэтому даже первый канал Wi-Fi с центром 2412 МГц покрывает примерно 2402–2422 МГц, а занятая сетями полоса шире диапазона центров на 10 МГц с каждой стороны (при 40 МГц — ещё шире).
Что учесть
При скорости 2 Мбит/с канал шире 1 МГц, и соседние сети разносят минимум на 2 МГц (термин «Шаг каналов»). RPD — не измеритель уровня, а детектор порога; об измерении уровня — в термине «RSSI». Если связь плохая даже на чистом канале, причины чаще в питании и антенне — ответ «Почему nRF24L01+ работает только на коротком расстоянии». Сравнение радиомодулей по дальности и диапазонам — в обзоре беспроводных интерфейсов.
Похожие вопросы
Почему RPD срабатывает на всех каналах сразу?
Обычно рядом мощный передатчик: роутер, свой второй модуль nRF24 или ESP32, который передаёт по Wi-Fi. Порог −64 дБм довольно высокий, но в нескольких сантиметрах от антенны соседнего устройства его легко превысить. Сканер для поиска чистого канала ставят там, где будет работать приёмник.
Можно ли по RPD измерить уровень сигнала?
Нет, RPD — однобитный детектор: он сообщает только, выше уровень −64 дБм или ниже, и порог к тому же уходит на ±5 дБ с температурой. Для оценки уровня в дБм нужен приёмник с настоящим RSSI или анализатор спектра.
Можно ли использовать каналы выше 2483,5 МГц?
Микросхема по спецификации настраивается до 2525 МГц, но какие каналы разрешены, определяют правила радиочастот в стране, где работает устройство. Для изделия выбирают каналы внутри разрешённой полосы.
Источники
- Nordic Semiconductor. nRF24L01+ Product Specification v1.0 (September 2008) — разд. 6.3: F0 = 2400 + RF_CH МГц, шаг 1 МГц, диапазон 2,400–2,525 ГГц, полоса канала меньше 1 МГц при 250 кбит/с и 1 Мбит/с и меньше 2 МГц при 2 Мбит/с, при 2 Мбит/с каналы разносят на 2 МГц и больше; разд. 6.4: детектор RPD (регистр 09, бит 0) срабатывает при уровне в канале выше −64 дБм, читается в режиме приёма, достоверен через Tstby2a + Tdelay_AGC = 130 + 40 мкс после включения приёма, при приёме пакета защёлкивается уровень собственного передатчика; порог −5 дБ при −40 °C и +5 дБ при 85 °C; разд. 6.1.4: сигнал должен присутствовать в канале не меньше 40 мкс; регистр 05 RF_CH — биты 6:0, после сброса 2
- Espressif Systems. ESP32 Series Datasheet, Version 5.3 — табл. 5-6: рабочий диапазон частот Wi-Fi 2412–2484 МГц — центральные частоты каналов (пример соседнего источника помех в полосе 2,4 ГГц)
- Espressif Systems. ESP-IDF v6.1 Programming Guide, Wi-Fi Driver — Overview (docs/en/api-guides/wifi-driver/overview.rst) — разд. Wi-Fi Bandwidth Mode: поддерживаются полосы 20 и 40 МГц — HT20 и HT40 (40 МГц только в 802.11n)
Нашли ошибку?
Смотрите также
- nRF24L01+Радио 2,4 ГГц по SPI: питание, уровни, токи, каналы, ShockBurst, тайминги
- Шаг каналов (channel spacing)Расстояние между центральными частотами соседних каналов радиосистемы
- Почему nRF24L01+ работает только на коротком расстоянии?2 Мбит/с по умолчанию, плохая развязка питания, занятый канал, антенна
- Беспроводные технологииWi-Fi, BLE, 802.15.4, nRF24, 433/868 МГц, LoRa: таблица параметров по даташитам
- RSSIОценка мощности сигнала в канале приёмника, в дБм