E.Raevskii // check BIO
'open' on 'SerialPort': Failed to open serial port
Денис
кислотные аккумуляторы заражаются за секунды
вы их лечите как-то, изолируйте от внешней среды 🦠 чая с малиной дайте😁
ok-home
так же как и в принтф https://stackoverflow.com/questions/111928/is-there-a-printf-converter-to-print-in-binary-format
Mikhail
Зачем лочить чужую прошивку?
Прошивка моя, лочить, чтобы конкуренты своё сделали, а не скопировали "как прошлые пару раз"
Mikhail
Что делает прошивка?
Считывает данные с 3 датчиков давления, по таблице пересчитывает, выводит поправочные коэффициенты
Mikhail
А потом?
Цикл: Считывание данных с датчиков давления, расчёт коэффициентов, отправка на плату насоса, тот качает до нужного давления, открывается клапан или форсунка, либо цикл на N открытий, дальше вроде завершается цикл.
Mikhail
Вот таблица с поправками и алгоритм расчёта это наработка товарища за лет 5 , и он хочет защитить от копирования. Остальное ну как бы не секрет как работает
Mikhail
Можно было сделать на чем то другом, но тут уже сделана веб морда и OTA, так что ищу решение для esp32c3 devkitm 1
Ruslan
Если ОТА работает, то просто включаешь защиту и от фанатов гайвера прошивка закрыта
Mikhail
Если ОТА работает, то просто включаешь защиту и от фанатов гайвера прошивка закрыта
Среда vscode , Platform Arduino Где нажать? В мануле написано - через menuconfig, но он включается при idf режиме
Mikhail
Поэтому и был вопрос выше
Max
Вот таблица с поправками и алгоритм расчёта это наработка товарища за лет 5 , и он хочет защитить от копирования. Остальное ну как бы не секрет как работает
Без шансов, все равно упрут. Единственный вариант - слать все на сервер и оттуда получать скорректированные данные.
Mikhail
Без шансов, все равно упрут. Единственный вариант - слать все на сервер и оттуда получать скорректированные данные.
Задача - защитить от обычного копирования, тут оборудование не такое, что будут извращаться с реверс инженерством
Mikhail
После стм32 даж как то непривычно, что столько сложностей
Max
После стм32 даж как то непривычно, что столько сложностей
Ключевое слово - непривычно. Вот тут - https://docs.espressif.com/projects/esp-idf/en/v5.0.3/esp32s2/security/flash-encryption.html - например, ничего не сказано про то, ардуино оно или не ардуино. Думаю, можно в эту сторону глянуть.
Mikhail
Коллеги, ну я же не спроста спросил Как оказалось, можно настроить read out protection/encryption только для idf Для Дуни это не предусмотрено, но несколько товарищей на зарубежных форумах подменяли бутлодер и работало шифрование. Вот тут хотел найти, кто это проделывал
Max
Коллеги, ну я же не спроста спросил Как оказалось, можно настроить read out protection/encryption только для idf Для Дуни это не предусмотрено, но несколько товарищей на зарубежных форумах подменяли бутлодер и работало шифрование. Вот тут хотел найти, кто это проделывал
А тут, увы, только так. Ардуина же формирует такую же прошивку, как и idf. Соответственно, чисто теоретически, ее можно зашифровать и положить в устройство (как те подменятели бутлоадеров с зарубежных форумов). Только вот шанс, что кто-то такое делал здесь - очень небольшой, Ардуина этож презираемый серьезными чуваками инструмент))
Max
https://github.com/espressif/arduino-esp32/issues/5645#issuecomment-924006154
Max
Впрочем, с подменой бутлоадера тоже рецепт есть, но он еще более стремный.
Ruslan
я пока засяду за WDG, надо с этим окончательно разобраться
E.Raevskii // check BIO
драйвера вы ставили?
На винду поставил все возможные драйвера
E.Raevskii // check BIO
Ничего не помогает((
Ruslan
я чёта не помню, чтобы роджер заносил за рекламу
Ruslan
Ничего не помогает((
поставь убунту
E.Raevskii // check BIO
поставь убунту
Ради гребанной платы 😂)
E.Raevskii // check BIO
У меня есть Kali Linux
E.Raevskii // check BIO
Пойдет?
Ruslan
Ради гребанной платы 😂)
ну трахайся тогда тихо )
Ruslan
итак, что имеем: Panic behaviour='print registers and reboot' CONFIG_ESP_INT_WDT=yes CONFIG_ESP_INT_WDT_TIMEOUT_MS=300 CONFIG_ESP_TASK_WDT=yes CONFIG_ESP_TASK_WDT_TIMEOUT_S=5 CONFIG_ESP_TASK_WDT_PANIC=no CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=no CONFIG_ESP_PANIC_HANDLER_IRAM=no CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL=5 #xkee #watchdog #blog
Ruslan
мысли вслух, таки получается, что если бы девайс вис в freertos, то IWDT его бы пересбрасывал, но раз он виснет и ничего не помогает, значит дело в TWDT, который как раз не вызывает панику
Ruslan
помещать панику в IRAM нет особого смысла, т.к. я не пишу во флеш во время работы железки
Ruslan
вижу два действия, которые надо попробовать: 1. включить панику для TWDT 2. отслеживать idle task чё думаете?
Ruslan
похоже вот в чём причина...
Ruslan
проблема то в чем?
да некоторые железки на фрунзенской, а там МинОбороны, видимо чёта включают, последний месяц куча зависаний
Andy
похоже вот в чём причина...
известные грабли :( Таску wdt доработать никак?
Andy
не понял вопрос
разбить таску mqtt... или wdt... на более мелкие кусочки
Ruslan
как пел дима билан, невозможное возможно (с)
Ruslan
картина вырисовывается такая, эта таска внутри себя запускает функцию mqtt_connect (предварительно проведя работу с сертификатами, а там может быть всякое, вплоть до перегенерации сертификата), которая собственно запускает весь mqtt блек джек
Ruslan
вангую, РЭБ ебашит, связь падает, а при восстановлении оно где-то зависает в этой функции, а там TWDT отключен и абзац
Ruslan
так же норм включать? esp_task_wdt_add(xTaskGetIdleTaskHandle());
Max
Мож проще интервалом собачки играться, а не таски гробить?
Ruslan
ключ может минуты генерироваться
Max
вот
Это на железке?
Ruslan
Это на железке?
там вроде написано
Max
Ну шож, остается передать привет кооперативной многозадачности.
Ruslan
ну ок, для начала можно заебенить таймаут на 5 минут и включить панику для TWDT и посмотреть, херово то, что проблема воспроизводится только на объекте, мне похоже теперь жить там )
Max
Дрона пошли, МО оценит
Ruslan
я лучше отключу таймер на время генерации
Ruslan
на ней оно не виснет, это легко воспроизводится без РЭБ дома и я это вылизал год назад
Andy
Andy
норм
Ruslan
забавно, я вынес все тяжёлые операции на старт прошивки, после чего запускаю TWDT, но забыл убрать отключение собаки при старте соединения...
Ruslan
индзэец
Ничего не помогает((
кабель говно мб
E.Raevskii // check BIO
E.Raevskii // check BIO
Гугл видит же
индзэец
мб модуль говно
Павел
Привет всем. Подскажите, за что отвечает кнопка en?) помните я писал что коротнул пины, так вот плата оживает если я зажму кнопку en
Павел
И пока держу её все вроде живое даж
ㅤ
ну чо вы тут
Max
ну чо вы тут
Возвращение блудного попугая!
Max
Зеленый, нам тебя не хватало.
Max
А то нубы приходят, а Руслан только матерится. Вразумлять некому