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

Проблема с подтверждением принятия данных "SEND OK"

Nosaer

New member
Связка ESP8266 + МК. Работает в качестве своего рода беспроводного передатчика данных между неким прибором и ПК.
Связка МК+ESP8266 обмен по AT командам
Обмен с ПК происходит по UDP
ESP8266 настроена как (Station+AP)

Если отправлять данные по такому алгоритму, то все прекрасно работает:
- Отправлю AT+CIPSEND=255
- Получаю "Ok >"
- Отправляю за раз все 255 байт
- Получаю "Recv 255 + Send Ok"
- Данные на ПК пришли
Если массив данных отправлять не за раз, а с небольшими паузами. т.е.:
- Отправил AT+CIPSEND=255
- Получаю "Ok >"
- И по мере того как приходят данные с другого устройства отправляю те же 255 байт с небольшими паузами в ESP
В таком случае "Recv 255 + Send Ok" уже не приходят

Пробовал тоже самое провернуть с помощью CIPSENDEX. Если отправлять все сразу, то передача прерывается при оптравке "\0"
Если данные отправлять постепенно, то ESP игнорирует "\0" и опять никакие "Recv 255 + Send Ok" я не получаю.

Задержки не такие большие. т.е. если за раз все 255 байт я передаю за 1мС, то те же 255 байт с так скажем задержками передаются за 2-2,5 мС.

Возможно кто то сталкивался с подобным и знает как решить проблему!?

То что залито в ESP:
AT version:1.1.0.0(May 11 2016 18:09:56)
SDK version:1.5.4(baaeaebb)
Ai-Thinker Technology Co. Ltd.
Jun 13 2016 11:29:20
 
Сверху Снизу