Size: a a a

ESP8266 & ESP32 [RU]

2020 November 12

D

Dmitrij in ESP8266 & ESP32 [RU]
Начнем с начала. К каким пинам этот датчик подключается?
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Здравствуйте. Кто нибудь знает, странные замуты какие нибудь с esp_restart() ?
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Сталкиваюсь с тем, что при таком рестарте - начинает происходить дичь непонятная после резета.
В то время как резет с дебагера и резет с питания\кнопки работают отлично.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Непонятная дичь может быть охарактеризована, как отправка из уарта "доресетовых" данных.

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

Причем с каждым новым софт резетом этот сдвиг увеличивается.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Я нашел в 2018 у людей была на вскидку похожая проблема - странное поведение UART после софтварного резета.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Короче и в правду баг.
А под вижулГДБ все еще не обновили IDF =)
источник

AV

Alexey Volkov in ESP8266 & ESP32 [RU]
Aleksander Mironov
Здравствуйте. Кто нибудь знает, странные замуты какие нибудь с esp_restart() ?
В момент ресета работает ли Wi-Fi? Есть ли открытые сокеты?
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Не.  Там все заглушено.  
Там в чем проблема - он у меня не совсем мусор содержит.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
А последнюю посылку с резетом слейва =) Которую он отправил, перед собственным рестартом.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
И слейв ее вполне себе успешно принимает.
источник

AV

Alexey Volkov in ESP8266 & ESP32 [RU]
Ну тогда только отладчиком подключиться и посмотреть что в буфере уарта лежит сразу после ресета
источник

AV

Alexey Volkov in ESP8266 & ESP32 [RU]
Это можно с консоли сделать с openOCD
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Так не, выше по ссылке скинул же - FIFO Tx уарта криво резетится.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
во время софтрезета.
источник

AV

Alexey Volkov in ESP8266 & ESP32 [RU]
Софтресету можно добавить коллбек, который будет вызван перед ребутом. В этом коллбеке можно попробовать ручками отчистить буфера.
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Ситуация начинает становится интересной.  Надо походу посерьезному раскуривать железо =\
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
И копировать воркараунд из новой версии IDF
источник

AM

Aleksander Mironov in ESP8266 & ESP32 [RU]
Ну короч фифо железный. И его заресетить железными флагами для него предназначеными низя ДЬЮ ХАРДВАР БАГ
источник