• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Варианты получения данных по ESP-NOW и загрузки их по WiFi на сервер?

pvvx

Активный участник сообщества
Байки я сам вам накопипастить:

Берем Вики. Открываем русскую страницу Bluetooth – в первом параграфе читаем:
Bluetooth позволяет этим устройствам сообщаться, когда они находятся друг от друга в радиусе около 100 м в старых версиях протокола и до 150 м начиная с версии Bluetooth 5.
Т.е. для русскоязычных дальность 150 метров и какая-то зависимость...

Далее переходим к китайской верcии, к Технические характеристики и особенности:
Там китайцам ограничили расстояние на 300 метров.

Далее к англоязычным – им совсем ограничили до 10 метров.
что обеспечивает очень короткий диапазон до 10 метров

Примерно так и вы пишите :)
По этому и не ждите что вам вдрух выкатят что-то с BLE. Он у них (у ваших) ограничен на 10 метров :)
 
Причем, как выяснилось совсем недавно, ESP-NOW работает на 1 канале (не у Ернста, а я про частоты), а WiFi - на 10 канале. И очень стабильно работают.
Это как это? Одновременно подключён к роутеру на 10 канале и передаёт/принимает по esp-now на 1 канале? Какие-то изменения внесли? Раньше это было невозможно.
 

pvvx

Активный участник сообщества
Если это станция, а не AP, тогда в чем разница на каком дополнительном канале работать? Связь с AP требует только мелкие окна приема для фиксированного по времени beacon от AP и редкой передачи типа что “спим”. Остальное время приемник и передатчик свободен.

Другое дело в том, что построение таких схем на ESP/ESP32 для нормальной работы нежелательно – перегреваются, если будет непрерывно передавать. Спасает только программный троттлинг.
 

pvvx

Активный участник сообщества
Вот только одновременная работа с WiFi и BLE даже в таких вариантах не прокатывает. Время ожидания ответа или следующего запроса у внешнего BLE после приема пакета около 500 мкс, а окна занятости RF для WiFi значительно больше. И внешнему BLE устройству придется дублировать передачу, сажая батарею.

А с учетом что детки пишут на дурине в C++ и пользуются всякими MQTT и прочими строковыми обработками, то это выливается в полную невозможность работы ESP32 со внешними BLE, не сажая им батарейки. Различие любимых у дуринщиков программ на ESP32 для BLE дает разницу примерно в 50 раз. 50 дублирующих передач у внешнего устройства BLE, чтобы до ESP32 дошло, что ей что-то передали при соединении.
 

pvvx

Активный участник сообщества
У ESP-NOW, в отличие от WiFi, дальность 200 метров. Есть эксперименты, где дальность в открытой местности до 700 метров без специальных антенн.
За счет чего?
У старого типа WiFi варианты - 802.11a/b/n.
ESP-NOW имеет другой вариант?
ESP32 для WiFi минимальный уровень приема около -95дБм. Макс. передача до +20дБм. Итого: 115 дБм - это и есть число для определения мак. расстояния связи без учета качества антенн.
В случае с BLE Coded PHY - минимальный уровень приема -115дБм. Передача - та же. Итого: 135 дБм. 20дБм - это в 10 раз больше.
 
Причем, как выяснилось совсем недавно, ESP-NOW работает на 1 канале (не у Ернста, а я про частоты), а WiFi - на 10 канале. И очень стабильно работают.
Заинтересовало, даже попробовал скачал последнюю версию компонента esp-now, esp подключилась к роутеру на 4 канале, отправить сообщение esp-now на 1 канале не может, пишет: ошибка, не могу поменять канал.
По-подробнее расскажите как у вас так получается?
 

pvvx

Активный участник сообщества
Чтобы не задавать глупые вопросы, а тем более строить какие-то выводы, вам необходимо изучить как работает WiFi и ESP-NoW. Особенно часть распределения времени передатчика и приемника в разных режимах. Вся радио связь строится практически на одной процедуре – передача и прием, для которой задается: время старта передачи и длительность окна приема после передачи. Дык вот в некоторых режимах WiFi и ESP-NOW требуется непрерывный прием, с включениями tx2rx().
И заметьте - BLE же "работает" при WiFi, хотя каналы у BLE другие...
 

pvvx

Активный участник сообщества
Вообще ESP-NOW это древний Nordic ESB c мелкими изменениями в данных самих пакетов, в простонародье названный “RF24”.
 

pvvx

Активный участник сообщества
И какой смысл разнесения канала WiFi от ESP-Now?
1737253940664.png
Канала WiFi имеет спектр на всю полосу (на все каналы). Это означает, что если WiFi работает, то всё в полосе 2.4ГГц недоступно по уровню создаваемых помех уже из другой комнаты. 1/6 и 6/11 — на ~-20dBr, 1/11 — на ~-36dBr, 1/13 — на -45dBr.
Источник https://habr.com/ru/articles/149447/
 

pvvx

Активный участник сообщества
Именно по этому, если вы ещё используете WiFi на 2.4ГГц, тогда оставьте его на канале подальше от 3-х каналов BLE маяков и канала Zigbee. И все бытовые устройства переведите на BLE и Zigbee, а WiFi на 2.4ГГц используйте только как резервный. В этом случае он большее время будет транслировать только beacon фрейм с периодом в 102.4 миллисекунды и не сильно мешать всей остальной системе. Все остальные, которым требуется большая полоса будут работать на WiFi 5ГГц. И у вас резко увеличится дальность и качество связи всех компонентов "Умного дома" во много раз.
К этому пришли уже все, у кого "Умный дом"
 

Kabron

Member
Изучал вопрос получения RSSI в режиме ESP-NOW.
Похоже проблема тупиковая: WiFi.RSSI() для ESP-NOW не работает надо использовать Promiscuous mode, но это уже не ESP-NOW.
В общем с DeepSeek через надцать итераций вошли в цикл...
 

pvvx

Активный участник сообщества
Максимум: 640 кбит/с при блоке в 250 байт на ESP32. Т.е. всего до 64 килобайт в сек (без форматных данных?).
Маловато будет. Недотягивает до USB1.1.
WiFi ESP32 - вокруг 1Мбайта / с, ESP8266 - 800 кбайт/c HTTP.
BLE, РНY 1M, 2 x nRF52 - 661,33 Кбит/с
BLE, РНY 2M, 2 x nRF52 - 1400,56 Кбит/с
 

pvvx

Активный участник сообщества
Выходит, что макс. трафик ESP8266 в ESP-NOW примерно равен Zigbee, но при этом потребление в 5 и более раз больше, при одинаковой дистанции.
Дык зачем мучаться?
 

pvvx

Активный участник сообщества
Ещё раз о качестве связи WiFi и прочего.

Наглядный пример:
1738364667056.png
2 BLE термометра в гараже и SmartPlug на ESP8266. SmartPlug измеряет “подогрев” гаража 7x4.5 галогенным прожектором на 300 Вт. Постоянно отваливается и если и работает, то только на 802.11g. Забил уже на него, хотя был выбран из десятка по качеству связи там. Остальные WiFi или вообще не соединялись, или чаще отваливались… Этот отваливается в зависимости от погоды…

Дистанция связи для BLE термометров сложнее - по пути две дополнительные стены, не считая шкафов/полок и прочего, в отличии от пути для WiFi. BLE LR прием на USB-BT (без внешней антенны !) идет без диких выпадений уже более полугода. Термометры лежат рядом с WiFi SmartPlug, WiFi роутер с 4-мя внешними антеннами – по прямой всего одна стенка…
Других WiFi роутеров в 1 км от этого нет.
 

nikolz

Well-known member
Не - не косячил.

Разберите конкретный пример с самым простейшим ESP32-C3, прежде чем писать о допотопных Bluetooth со специальными приемо-передатчиками, которых в продаже давно нет, но вы что-то вычитали и скопипастили с вики :) Потом и разберем кто косячит :)

Уровень прием в LE Long Rage на антенну на печатной плате некоторых продаваемых на али модулей более менее нормальный и ведет прием до -115 дБм. Но есть направленность. Пример приема BLE рекламы в LE Long Rage для ESP32-C3 есть тут.

Гарантированно принимает в доме датчик с другого дома, куда WiFi и Zigbee не достают. При этом у термометра TX всего +0дБм.
Смартфон тоже принимает, если покрутить и спозиционировать...
Разбирать Вами придуманный пример не вижу смысла.
Примеры есть в ESP32-idf. У меня проблем нет. модули ESP32C3 есть в продаже и дешевле чем иные. Кроме того в них гораздо больше памяти, что позволяет сохранять данные и передавать их боле большими пакетами.
 

nikolz

Well-known member
Ещё раз о качестве связи WiFi и прочего.

Наглядный пример:
Посмотреть вложение 14242
2 BLE термометра в гараже и SmartPlug на ESP8266. SmartPlug измеряет “подогрев” гаража 7x4.5 галогенным прожектором на 300 Вт. Постоянно отваливается и если и работает, то только на 802.11g. Забил уже на него, хотя был выбран из десятка по качеству связи там. Остальные WiFi или вообще не соединялись, или чаще отваливались… Этот отваливается в зависимости от погоды…

Дистанция связи для BLE термометров сложнее - по пути две дополнительные стены, не считая шкафов/полок и прочего, в отличии от пути для WiFi. BLE LR прием на USB-BT (без внешней антенны !) идет без диких выпадений уже более полугода. Термометры лежат рядом с WiFi SmartPlug, WiFi роутер с 4-мя внешними антеннами – по прямой всего одна стенка…
Других WiFi роутеров в 1 км от этого нет.
прикольно читать от Вас рассуждение про качество связи WiFi и BLE.
Вы же хорошо разбираетесь и понимаете, что при одинаrовой мощности излучения и диаграмме направленности антенны и при отсутствии помех( как в вашем случае в деревне в глуши) оба вида связи дадут одинаковую дальность при равенстве бюджета канала. Если бюджет разный , то и дальность разная. Но это не зависит WiFi это или BLE, так как частота одинаковая и вид модуляции одинаковый. У WiFi даже может быть лучше связь так как полоса модуляции шире, а это повышает помехоустойчивость при узкополосных помехах, что хуже у BLE . Причем ESP-Now - это не WiFi так как нет центрального узла.
------------------
Никто не против BLE, поэтому не надо рвать штаны и доказывать, что BLE лучше WiFi.
То, что Вы измеряете температуру годами с батарейкой CR2032 и экономите 100 руб в год,
не используя более мощную это хорошо.
Экономьте дальше и измеряйте температуру больше дольше и точнее.
 

nikolz

Well-known member
pvvx
Вы постоянно ломитесь в открытые ворота.
Доказываете, что модули, которые выпустили через 10-15 лет после, новее, чем те, которые выпустили 10-15 лет назад. Прикольно.
--------------------
Да ESP8266(ESP32) давно сделали. Но в этом есть свой плюс. именно поэтому для него много чего написали. Это и привлекает любителей.
Поэтому новые чипы - это игрушка для Вас.
Пишите свои тесты, показывайте картинки. Народ будет смотреть, но не делать, так как измерение температуры не есть главное и единственное, что многих интересует.
Особенно измерение годами столетиями и с одной батарейкой и с сотней модулями.
----------------------
Успехов вам в изучении новых модулей для измерения температуры.
 
Сверху Снизу