• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Решено UDP Server на ESP8266

Leon11t

New member
Нужна помощь экспертов! Пытаюсь запустить на ESP8266 UDP Server, так как нужна скорость общения между ESP8266 и STM32f100. Из TCP сервером все прекрасно, но заметил что из TCP протоколом задержка в 65-70 мсек. Прочел что UDP используют в игровых протоколах, и решениях при которых скорость главное.
Использую офф. прошивку из АТ-командами. Пробовал запускать сервер такими поочередностями команд :
AT+CIPMUX=0
AT+CIPSERVER=1,8000
AT+CIPSTART="UDP","192.168.4.1",8000
Пробовал разные комбинации этих команд, но в терминал ничего не приходит.
Использую для андройда прогу UDPTester, WIFI TCP/UDP...
Где то прочел что АТ-прошивка из своими приколами и вроде как баговая на щет UDP канала.
Если это правда, есть NodeMCU - как она себя ведет в даном вопросе? Если она лучше, помогите написать для нее скрипт для открытия канала UDP-UART, так чтоб можно было ганять данные в обе стороны.
 

Victor

Administrator
Команда форума
насколько мне известно, UDP толком нигде не работает, но в последнее время идет активная работа в Arduino IDE, так что шансы вроде есть.
Кроме того, и в SDK идут активные багфиксы, так что лучше подождать немного.
 

JustACat

Moderator
Команда форума
Leon11t, у вас некорректная команда на поднятие UDP. Если конечно прошивка последней версии AT. Вы бы написали, какая конкретно AT прошивка у вас прошита?

Update: Вот в этой теме обсуждали мы правильную команду на поднятие UDP на AT прошивке.

Update2: и если с AT не срастется, то лично от себя посоветовал бы сразу смотреть в сторону UDK+Sming или Arduino IDE (что ближе вам будет), на предмет написания как раз вашего UDP-UART моста.
 
Последнее редактирование:

Leon11t

New member
Заработало, вот что то типа этого прописал

AT+CIPMUX=1
AT+CIPSERVER=1,8000
AT+CIPSTART=1,"UDP","192.168.4.1",8000,8000,2
Скорость работы в разы больше, но не так быстро как общение по тому же протоколу из самописными прогами клиент-сервер.
Ну это еще баг в моем коде, я про него знаю.
Делаю RC аппаратуру для моделирования
 
Последнее редактирование:

pvvx

Активный участник сообщества
через Arduino ide не вариант? Там Udp поднимается просто.
А куда UDP принимать? Есть готовое решение на JavaScript к телефонам и компам, загружаемое с самого модуля по HTTP?
Для передачи по UDP с привязкой по времени есть протокол RTP и он как раз для данной задачи в теме...
 

chuiji000

New member
Заработало, вот что то типа этого прописал

AT+CIPMUX=1
AT+CIPSERVER=1,8000
AT+CIPSTART=1,"UDP","192.168.4.1",8000,8000,2
Скорость работы в разы больше, но не так быстро как общение по тому же протоколу из самописными прогами клиент-сервер.
Ну это еще баг в моем коде, я про него знаю.
Делаю RC аппаратуру для моделирования
А можно исходники программы пожалуйста, я так понял он на Processing написан
 
Сверху Снизу