ESP_NOW, передача данных между ESP8266 ( ESP32 )

Без создания WiFi сети.

Создаем свой блок. Вопросы, помощь знатоков.
igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#81

Сообщение igorek » 07.04.2021{, 19:28}

прочитал все дважды..........
если я правильно понял, то в (ESP_NOW обмен данными), можно создать несколько int блоков, сколько именно не нашел...
но вот одно не понял...
почему так сложно , а именно по мак адресу и блоков.
1. если я не ошибаюсь, то мак адресс должен быть получателя при отправке
2. № блока , наверное тоже самое... (тогда на приема как указать , что именно данные с № блока прийшло те которые привязаны до того блока который отправил)... по идее должно также быть № блока прием и передача ....

а можно без мак адресса, а вместо него ип-адресс или хотя бы еще проще по названию платы (к примеру REKUP , или что то в этом вроде и на входе)

Отправлено спустя 6 часов 9 минут 51 секунду:
выдает ошибку при загрузке файла ESP_NOW - ОБМЕН ДАННЫМИ

Arduino: 1.8.13 (Windows 7), Плата:"NodeMCU 0.9 (ESP-12 Module), 80 MHz, Flash, Disabled (new can abort), All SSL ciphers (most compatible), 4MB (FS:none OTA:~1019KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

In file included from C:\Users\hoom\AppData\Local\Temp\flprog\pr42\pr42.ino:4:0:

f:\FLProg\ideV6\portable\sketchbook\libraries\ESPUI\src/ESPUI.h:23:25: fatal error: ESPAsyncTCP.h: No such file or directory

#include <ESPAsyncTCP.h>
^
compilation terminated.

exit status 1

Ошибка компиляции для платы NodeMCU 0.9 (ESP-12 Module).

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#82

Сообщение aidar_i » 08.04.2021{, 19:23}

igorek писал(а):
08.04.2021{, 01:38}
<ESPAsyncTCP.h>
Установите библиотеку эту

igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#83

Сообщение igorek » 08.04.2021{, 21:04}

aidar_i писал(а):
08.04.2021{, 19:23}
igorek писал(а):
08.04.2021{, 01:38}
<ESPAsyncTCP.h>
Установите библиотеку эту
нашел проблему.... когда вычищал, чтоб не было следа для ЕСП32.... после 3 раза нашел где еще не до удалял...

Отправлено спустя 5 минут 23 секунды:
вот как сделать чтоб № блока был как на передачу, так и на прием... чтоб при отправке пакета между NodeMCU, каждый забирал свое...
их в сети пока что 4... и почти каждый принимает и передает некоторые данные между платами ..... :shok: :smile469: :smile37: :smile44:

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#84

Сообщение aidar_i » 09.04.2021{, 09:28}

igorek писал(а):
08.04.2021{, 21:09}
вот как сделать чтоб № блока был как на передачу, так и на прием... чтоб при отправке пакета между NodeMCU, каждый забирал свое...
Если я Вас правильно понял:
Вход int номер блока передатчика, в принимающей плате выход int подключите к компаратору, он включает тот блок приемника, который нужен.

igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#85

Сообщение igorek » 11.04.2021{, 20:38}

aidar_i, aidar_i,

И все таки хочется пакетом отправить....
Я тут нашел блок , не помню чей.... (пусть извинит меня)
переделал, но доделать не как мозги не доходят... (не програмист)
логика по идее проста, но для меня...
все клиенты 8266 работают в режиме клиент.
общаясь между собою, должны ловить пакеты которые проходят в сети простым образом, а именно по номеру блока и по мак адрессу...

к примеру клиент А отправляет блок под № 1 с мак адрессом, а другой клиент находя свой пакет с № блока и с мак адрессом, обрабатывает его...

но вот беда, что мне надо привязать в блок мак адресс и № блока с внешней стороны, а не с переменной, а также должен передавать дальше, мак адресс с № блокам....

И тут столкнулься с тем, что я не все знаю в програмирование.....

поэтому прошу помощи в доделке блока .....
Вложения
ESP_NOW_переделанный_(Code_-_Professional).ubi
(783.44 КБ) 64 скачивания

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#86

Сообщение Qwert855 » 12.04.2021{, 13:54}

+ к просьбе доработки общего блока приема-передачи.
Блок интересен но пока работать с ним сложно т.к нет возможности отправлять и принимать на разные мак адреса и настраивать блоки как разные экземпляры.

igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#87

Сообщение igorek » 12.04.2021{, 14:30}

хорошо.......
если количество значений не играет роль,
то есть возможность доделать , чтоб мак адресс и № блока вывелись с наруже, и потом передавались дальше.... :smile37: :smile37: :smile37:

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#88

Сообщение Qwert855 » 12.04.2021{, 17:06}

igorek писал(а):
12.04.2021{, 14:30}
хорошо.......
если количество значений не играет роль,
то есть возможность доделать , чтоб мак адресс и № блока вывелись с наруже, и потом передавались дальше.... :smile37: :smile37: :smile37:
если код в блоке перенести в разные функциональные экземпляры. то в каждом блоке можно будет делать свои настройки независимые от других блоков в проекте. по крайней мере это уже позволит пользоваться тем что есть в этой ветке. на данный момент у блока вставлен код как единый экземпляр и все блоки в проекте "зеркалятся".
Если подправить код для каждого экземпляра то должно завестись. (если конечно я правильно понимаю происходящее с блоком :smile469: )
немного инф тут
https://flprog.ru/en/bez-rubriki/helppa ... ckCodePart

igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#89

Сообщение igorek » 12.04.2021{, 22:11}

хорошо я понял и вспомнил некоторые блоки , которые увидел ...
если такая идея пройдет, то можно откоректировать и реализовать........
для каждой плате, просто выберается сколько int нужно передать

Отправлено спустя 8 минут 10 секунд:
я так думаю , если хотя бы поменять название блока для каждой плате, это не проблема....
главное чтоб заработало .....
если доделать блок, а потом создать несколько названии то оно по ходу заработает
Вложения
test.flp
(2.16 МБ) 45 скачиваний

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#90

Сообщение Qwert855 » 13.04.2021{, 12:39}

из описания по ссылке копать нужно где то тут.
При добавлении блоков на платы должны получаться уникальные ID экземпляров
дальше дописывать типы и количество переменных - настраивать каждый индивидуально
Untitled.png
в этой ветке viewtopic.php?f=75&t=7245
как пример можно рассмотреть блок созданный в данном редакторе с применением ID экземпляра <INS.UUID>

igorek
Рядовой
Сообщения: 28
Зарегистрирован: 02.01.2018{, 15:52}
Репутация: 0

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#91

Сообщение igorek » 15.04.2021{, 18:37}

я поняв .... красиво пишут , все.... но вот помочь в перепрограмирование мало кто хочеть ..........
приходиться обратиться еще за помощью к другим

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#92

Сообщение aidar_i » 15.04.2021{, 19:30}

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

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#93

Сообщение Qwert855 » 31.05.2021{, 01:03}

Добрый день.
Есть ли у кого доработанный блок?
Поделитесь пож та.

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#94

Сообщение aidar_i » 11.06.2021{, 05:18}

Хочу вернуться к этой теме, ещё раз напишите, что хотите доработать, четко и ясно. Правда, не обещаю быстро.

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#95

Сообщение Qwert855 » 11.06.2021{, 14:03}

aidar_i писал(а):
11.06.2021{, 05:18}
Хочу вернуться к этой теме, ещё раз напишите, что хотите доработать, четко и ясно. Правда, не обещаю быстро.
Добрый день.

- возможность добавлять типы и количество переменных.
- разделенные экземпляры блоков (кстати это работает с блоками которые на старом редакторе в этой теме) для завершения двусторонней связи ESP-NOW (что была изначально в теме)

Для возможности с одной планы рассылать на несколько маков или принимать так же
- возможность отправки данных по структуре
one-master-multiple-slaves
one-slave-multi-master

Режим включения обратной связи статуса отправленных пакетов и режим шифрования это уже больше к экзотике.

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

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#96

Сообщение aidar_i » 11.06.2021{, 18:30}

Qwert855 писал(а):
11.06.2021{, 14:03}
- возможность добавлять типы и количество переменных.
Редактор не дает такую возможность, входы задаются не количеством, а сразу с привязанными переменными. Можно только так, как я делал ранее, можно попробовать создать их по 2-4 шт на каждую переменную и потом выбирать.
Qwert855 писал(а):
11.06.2021{, 14:03}
Для возможности с одной планы рассылать на несколько маков или принимать так же
- возможность отправки данных по структуре
one-master-multiple-slaves
one-slave-multi-master
Это работало.
Qwert855 писал(а):
11.06.2021{, 14:03}
Режим включения обратной связи статуса отправленных пакетов и режим шифрования это уже больше к экзотике.
Это можно сделать, только как статус сделать? Сделать выходы статуса?
Qwert855 писал(а):
11.06.2021{, 14:03}
Так же в блоках есть "мусор" который вызывает проблемы с совместимостью. В моем случае это был запуск сериал порта и разного рода отладочная инфа привязанная на него.

В блоке могу поставить отключение Serial. Для отладки он нужен.

Отправлено спустя 45 секунд:
Qwert855 писал(а):
11.06.2021{, 14:03}
- разделенные экземпляры блоков
Попробую сделать.

neangel
Сержант
Сообщения: 138
Зарегистрирован: 10.01.2019{, 13:13}
Репутация: 1
Откуда: Москва
Имя: Игорь

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#97

Сообщение neangel » 11.06.2021{, 23:39}

Здравствуйте полковник.
aidar_i писал(а):
11.06.2021{, 18:31}
Редактор не дает такую возможность, входы задаются не количеством, а сразу с привязанными переменными. Можно только так, как я делал ранее, можно попробовать создать их по 2-4 шт на каждую переменную и потом выбирать.
У меня случайно получилось сделать два таких блока.
1 string и 3 integer на выбор.flp
(1.72 МБ) 53 скачивания
Не мог пройти мимо чтобы не помочь сэкономить вам ваше время.



Простите что добавлю не по теме.
Не хватает у меня тямы чтобы добавить регулировку громкости в этот ваш блок.
Библиотека ESP8266Audio для ESP8266 и ESP32
viewtopic.php?f=70&t=5161&sid=d78cf9b7b ... 24148c23c4
aidar_i писал(а):
29.12.2019{, 00:50}
Создал по просьбе vovka1973 ПБ для проигрывания МП3 файлов из SPIFFS ESP32.
Блок в примере, испытал в железе.
Play MP3 from SPIFFS_ESP32.flp
download/file.php?id=22791

И там же.
aidar_i писал(а):
05.04.2019{, 16:02}
Смотрю SPIFFS никого не заинтересовал. Хотя интересная вещь. Можно озвучивать проекты не применяя дополнительные СД карты , плееры. Есть много разных рингтонов в интернете, которые можно скачать.
Хочу снять видео что получилось у меня и выложить его в ту тему.
Потому что учитывая цели и политику форума (и автора идеи Сергея Глушенко)
Проходить мимо такого замечательного блока для озвучки проекта (используя SPIFFS) совершенно недопустимо.
Скорость такая что можно озвучивать не только нажатия кнопок (или некие уровни значений) но и шаги поворота энкодера.


Кстати скорость работы ваших блоков для ESP_NOW и их нагрузочная способность гораздо круче чем у UART.
Понятно что эту тему просто так оставлять нельзя.


P.S.
aidar_i писал(а):
15.04.2021{, 19:30}
Извините, ребята, я помочь пока не смогу, физически нет времени. Может кто нибудь поможет ....
..............
Хочу вернуться к этой теме, ещё раз напишите, что хотите доработать, четко и ясно. Правда, не обещаю быстро.
Простите, полковник, что я воспользовался оказией.
Вижу как при острой нехватке времени вы нагрузили себя обещанием чтобы обязательно доделать дело.
Я поступил точно так же.

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#98

Сообщение aidar_i » 12.06.2021{, 00:38}

neangel писал(а):
11.06.2021{, 23:39}
Простите что добавлю не по теме.
Не хватает у меня тямы чтобы добавить регулировку громкости в этот ваш блок.
Библиотека ESP8266Audio для ESP8266 и ESP32
viewtopic.php?f=70&t=5161&sid=d78cf9b7b ... 24148c23c4
Добавьте после out = new AudioOutputI2SNoDAC();
эту строку out->SetGain(((float)Volume)/100.0);
и создайте вход Volume в int.
Если получится , блок выложите туда где тема .

Отправлено спустя 16 минут 34 секунды:
neangel писал(а):
11.06.2021{, 23:39}
У меня случайно получилось сделать два таких блока.
1 string и 3 integer на выбор.flp
(1.72 МБ) 2 скачивания
Не мог пройти мимо чтобы не помочь сэкономить вам ваше время.
Спасибо за желание помочь, входы придется все таки самим создавать какие нужны, там это не очень трудно.

Отправлено спустя 1 минуту 12 секунд:
neangel писал(а):
11.06.2021{, 23:39}
Здравствуйте полковник
Меня, если что, Айдар зовут!

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#99

Сообщение Qwert855 » 15.06.2021{, 11:40}

Айдар , Добрый день.

- возможность отправки данных по структуре
one-master-multiple-slaves
one-slave-multi-master

Как использовать данную возможность?
если в блок пишется один мак (один же?) и он прописывается вроде в сетапе. при этом можно использовать только один блок (на данный момент из за одного экземпляра блока)

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

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

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESP_NOW, передача данных между ESP8266 ( ESP32 )

#100

Сообщение aidar_i » 16.06.2021{, 18:51}

Qwert855 писал(а):
15.06.2021{, 11:40}
Айдар , Добрый день.

- возможность отправки данных по структуре
one-master-multiple-slaves
one-slave-multi-master

Как использовать данную возможность?
если в блок пишется один мак (один же?) и он прописывается вроде в сетапе. при этом можно использовать только один блок (на данный момент из за одного экземпляра блока)

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

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

Ответить

Вернуться в «Разработка пользовательских блоков»