Сканер WiFi диапазона на NRF24 и микроконтроллерах ESP32 или RP2040

А наш радиолюбитель молчит как рыба об лед))

ну там где мои приятели ловят рыбу фоновые источники сигналов имеют уровни соизмеримые с -90дб, там он точно не нужен, а вот когда народ собирается полетать и воздухе сразу несколько моделей видимо нужен, раскидать народ по каналам

PS а вообще надысь занят адаптацией кода к вот такому красавцу

2 лайка

а давайте… nrf24l01 заменим более чувствительным cc2500 или sx1281… и добавим rx5808, но так как он оочень тормозной, добавим через i2c расширитель ( на модулях с дисплеем мало свободных выводов)…
мысли вслух

это будет уже совсем другой проект, этот крутится вокруг NRF24

1 лайк

а во время начала эры WIFI (Арлан) эфир был девственно чист…помню радость приятелей сделавших линк на 80 километров на оных девайсах…

Для проверки работы устройства можно воспользоваться скетчем точки доступа в котором реализована возможность выставления мощности передатчика, таблица взята здесь:

#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>

#ifndef APSSID
#define APSSID "ESPap"
#define APPSK  "thereisnospoon"
#endif

/* Set these to your desired credentials. */
const char *ssid = APSSID;
const char *password = APPSK;

ESP8266WebServer server(80);

/* Just a little test message.  Go to http://192.168.4.1 in a web browser
   connected to this access point to see it.
*/
void handleRoot() {
  server.send(200, "text/html", "<h1>You are connected</h1>");
}

void setup() {
  delay(1000);
  Serial.begin(115200);
  Serial.println();
  Serial.print("Configuring access point...");
  /* You can remove the password parameter if you want the AP to be open. */
  WiFi.softAP(ssid, password);
  WiFi.setOutputPower (10); // Регулировка мощности возможна по сетке 0.5 дбм максимально 20.5
/*
dBm   мW
0     1
1     1,3
2     1,6
3     2
4     2,5
5     3,2
6     4
7     5
8     6
9     8
10    10

11    13
12    16
13    20
14    25
15    32
16    40
17    50
18    63
19    79
20    100

21    126
22    158
23    200
24    250
25    316
26    398
27    500
28    630
29    800
30    1000
*/
  IPAddress myIP = WiFi.softAPIP();
  Serial.print("AP IP address: ");
  Serial.println(myIP);
  server.on("/", handleRoot);
  server.begin();
  Serial.println("HTTP server started");
}

void loop() {
  server.handleClient();
}

Тот сканер использует микросхемы max2769 и max2829. Да простит меня автор за подробности, но девайс был чкстноикуплен и проверен. ВЧ разведено грамотно, с фильтрами по входу, линиями и дросселями. Так что так полноценный SDR, хоть и заточеные под wifi диапазоны.

90 децибел и встроенный усилитель, хорошая микросхема

Попробовал сканер с RP2040 Pico W!
Сканирование WI-FI сетей средствами модуля работает.
Но код уж сильно разросся, может пора разделить ветки
под ESP32 и RP2040?

Есть идея добавить в сканер режим FTM, но это можно реализовать только на современных ESP32-C3 или ESP32-S3. Это позволить определить и дальность до источников помех (в роутерах имеющих режим FTM).

Доброго времени суток, заинтересовал ваш проект, только назначение немного в сторону вильнуло, имеются передвижные камеры скорости Кордон Про М, известно что у них светятся AP c известными SSID, alarm при находжении вблизи (аля радар детектор) собрал на ESP32-S3 и ESP32-s2, не получилось увеличить скорость сканирования диапазона 5-7 секунд вкруг, а это 233.31 метров за 7 секунд при скорости 120 км/ч, есть ли в вашем проекте возможность сканирования SSID и сделать alarm при обнаружении оных при движении по трассе.

1 лайк

не прорабатывал этот вопрос, надо посмотреть, но тут сразу выходит на поверхность занесение этих SSID, есть версия с прошивкой через OTA но работает сильно неустойчиво…

SSID ов несколько и добавлять в дальнейшем их не недо будет оперативно, я создавал правило (1.если начинается с zzz и 2. начинается с xxx и заканчивается на yyy, отрабытывает норм, путем вчерашних изысканий нашел, что все камеры работают на 1 канале, соответственно скорость я уже увеличил, надо обратно задержки вставлять )), но ваш проект в дальние закладки убирать не собираюсь, хочу повторить, железо все есть в наличии, не хотели бы вы попробовать ваш проект портировать для Flipper Zero ? экранчик там маловат конечно…

он на STM, у него своя ниша, поэтому даже в мыслях не было, да и нет его у меня )))

Даже не знал о таком режиме, почитаю, интересно. Насчет разделения, согласен, читаемость кода увеличится. Проект все равно преобразился от первоначального. Надо бы посвторить текущую версию, посмотреть как сейчас работает. Свои наработки тоже надо как то оформить и на гитхаб положить.

эти контроллеры вполне доступны и работают. Но я бы завел новый проект на них. Опять же гитхаб с его клонированием очень удобно выдает различия проектов.

Вот как принимает сканер с усилителем в 30 децибел, RSSI точек от -43дб

2 лайка

Для режима FTM за образец можно взять код отсюда

1 лайк

не всё так просто с этим SPI

используя библиотеку nRF24L01.h ?

    radio.setDataRate     (RF24_1MBPS);                        // Указываем скорость передачи данных (RF24_250KBPS, RF24_1MBPS, RF24_2MBPS), RF24_1MBPS - 1Мбит/сек.
    radio.setPALevel      (RF24_PA_MAX);                       // Указываем уровень усиления передатчика (RF24_PA_MIN=-18dBm, RF24_PA_LOW=-12dBm, RF24_PA_HIGH=-6dBm, RF24_PA_MAX=0dBm).

и настройкой через эти строчки ?))) чем меньше скорость тем больше дальность… а может я чушь несу)))