Евгений
да, пусть за себя сами скажут
Да! Пусть отвечают перед честнЫм сообществом, по нашему, по еспшному! А то всякий уинт унсайнед дефайнит варнинги... Если весь аррай келбэком накатит, резетом не поднимешь!
Ruslan
запылится, будет некрасивый
RealAI
Микроскоп бля
Он не кошерный - не на ЕСП.
Ruslan
тупой вопрос по си: void log_me(char *msg) { ESP_LOGW(TAG, msg); } линтер ругается на msg, говорит, перед ним должна стоять скобка закрывающая... WTF
Max
Макросы неправильно раскрывает, наверное
Ruslan
логично, может кто знает как правильно?
Алексей
ESP_LOGW - что это и TAG что это?
Алексей
Есть возможность в IDE развернуть макрос?
Ruslan
выташил журналирование из функции и всё
w
Поддерживаю, но не всегда заказчик согласует расходы на трафарет :)
Трафареты вроде на 3018 за 7-8к руб пилятся из банок пивных?
Ruslan
ESP_LOGW - что это и TAG что это?
это следующий уровень колдунства
CryoniXXX.cc 🇰🇵
Ебучи бот пон?
Ruslan
плотно гоняю OTA, пока радует )))
Ruslan
надо всё многократно проверить и потом можно закрывать шифрование прошивки окончательно и отрубать обновление прошивки по UART... хотя, наверное достаточно отключить скачивание по нему
CryoniXXX.cc 🇰🇵
плотно гоняю OTA, пока радует )))
Плотно можно только кидать проброс порта))0)
Ruslan
Плотно можно только кидать проброс порта))0)
не уверен, что с тобой можно обсуждать нюансы OTA
CryoniXXX.cc 🇰🇵
Ruslan
а у меня?
CryoniXXX.cc 🇰🇵
а у меня?
Да вроде бы верхняя часть текста нет)))0
Ruslan
I (1981734) MQTT: OTA upgrade successful. Rebooting ...
Ruslan
остался только один непонятный момент, почему-то обнуляется NVS
Ruslan
при окончании OTA, зачем-то проверяет первый раздел два раза (это не мой код, а из SDK), потом сообщает, что оба раздела кошерные D (1981684) boot_comm: Both OTA copies are valid
Ruslan
затем софтовый ребут: rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
Ruslan
таблицу разделов не трогаю, в прошивки ключи не стираю, но такое чувство, что стирается всё в дефолтном разделе NVS
Ruslan
остальные NVS разделы в полном сохране
Евгений
надо всё многократно проверить и потом можно закрывать шифрование прошивки окончательно и отрубать обновление прошивки по UART... хотя, наверное достаточно отключить скачивание по нему
Капец обидно будет, когда после всех этих минимум 9-месячных родов никто так никогда и не возымеет желания вскрыть прошивку....
Ruslan
/** * @brief Точка входа в приложение. */ void app_main() { ESP_LOGI(TAG, "Startup..."); // Настраиваем доступ к параметрам в NVS setup_nvs(); ... }
Ruslan
/** * @brief Инициализируем NVS, размещение берётся из таблицы разделов. * */ void setup_nvs(void) { esp_err_t ret = nvs_flash_init(); if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) { ESP_LOGD("NVS", "Force initialization of the default partition"); ESP_ERROR_CHECK(nvs_flash_erase()); ret = nvs_flash_init(); } else { nvs_stats_t nvs_stats; nvs_get_stats(NULL, &nvs_stats); ESP_LOGD("NVS", "Count: UsedEntries = (%d), FreeEntries = (%d), AllEntries = (%d)", nvs_stats.used_entries, nvs_stats.free_entries, nvs_stats.total_entries); } ESP_ERROR_CHECK(ret); ... }
Ruslan
Капец обидно будет, когда после всех этих минимум 9-месячных родов никто так никогда и не возымеет желания вскрыть прошивку....
пока я этим занимался, созданы наработки для продукта, который хотят купить ... так что, это не зря в любом случае )))
Ruslan
I (958) APP: Startup... D (958) partition: Loading the partition table D (958) partition: Partition table MD5 verified D (1038) NVS: Count: UsedEntries = (0), FreeEntries = (1638), AllEntries = (1638)
Ruslan
никаких действий по очистке раздела не производится моим кодом... сцуко, почему он теряется...
Serjio
сохрани куда-нибудь перед ребутом, какой он есть? может он до того где-то теряется?
Serjio
ну выведи в лог. или в сеть.
Ruslan
раздел в полтора мегабайта каждый, прошивка занимает половину раздела, то есть даже случайно не перепишет NVS
Ruslan
придётся перечитать доку по NVS
не уверен, что с тобой можно обсуждать нюансы OTA
С детьми вообще нужно быть осторожнее
Hidden Mystery
Artem
вона чо, пиздёж какойтой? https://www.youtube.com/watch?v=YGxTnGEAx3E
типо эта херня будет гонять воздух через радиатор благодаря ультразвуку
Serjio
ну если MEMS можно назвать ультразвуком.. наверное, да
Ruslan
Иначе прибить могут
показал твой ответ про батарейке своим знакомым милфам, они поржали, написали "какое милое заблуждение" (цитата) ))))
Max
Иначе прибить могут
Если сил хватит
Serjio
(и в свободной продаже)
Artem
интересно бы было увидеть в деле..
скам какой-то)) для селерона? какое тдп? ждем...
Max
10кг
Ну так его не только поднять, но и правильно уронить надо)
Serjio
10кг
я сначала подумал, это опять проделки stable diffusion..
Hidden Mystery
Как учёбнве гранаты
Max
Могу кинуть
Далеко? И с какой точностью?
SSR
Я когда-то поднимал в 20 раз больше
SSR
Эх
Hidden Mystery
Далеко? И с какой точностью?
Метра на 4, точность хз
SSR
До сих пор жалею, что бросил
Serjio
скам какой-то)) для селерона? какое тдп? ждем...
ну почему сразу.. он там в видео чото показывал и рассказывал..
Hidden Mystery
Я максимум 40-45 могу, но если это не в виде кирпича
Max
Метра на 4, точность хз
Ну вот об том и речь. Уточню исходный постулат "если сил и целкости хватит"
Hidden Mystery
А хотя бы в виде человека или не маленьких размеров
Ruslan
Итак, при старте обновления, я получаю из NVS ключ для расшифровки... I (956714) OTA: Starting OTA... D (956724) esp_ota_ops: found ota app max = 2 D (956724) boot_comm: Both OTA copies are valid D (956724) esp_ota_ops: finding ota_17 app... I (956734) OTA: Running partition type 0 subtype 17 (offset 0x001c0000) D (956744) nvs: nvs_open_from_partition CERTIFICATES 1 D (956744) nvs: nvs_get_str_or_blob PRIVKEY D (956754) nvs: nvs_get_str_or_blob PRIVKEY D (956764) nvs: nvs_close 9 I (956764) esp_encrypted_img: Starting Decryption Process
Ruslan
в конце прошивки тоже было чтение из NVS, всё отработало штатно
Ruslan
так: D (1158) nvs: nvs_open_from_partition DEVICE_INFO 1
Ruslan
колобок! давай помогай!
Serjio
что за DEVICE_INFO 1?
Ruslan
именованное пространство внутри NVS, не знал о такой фиче?
Ruslan
кажется я понял что происходит... реально меняется структура раздела
Pavel
Товарищи, кто-нибудь сталкивался с проблемой: хочу прошить esp32 wroom 32 через eclipse на macOS не хочет сам дергать ногой RTS для автоматической прошивки, приходится нажимать на кнопки руками) При этом когда захожу в терминал в той же среде ребут происходит
Pavel
Так сравни с какими флагами оно вызывает есптул
Полагаю все как надо esptool esp32 -p /dev/cu.usbserial-0001 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000
Полагаю все как надо esptool esp32 -p /dev/cu.usbserial-0001 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000
Если флаги одинаковые, то чудес не бывает. А посмотреть их одна секунда. У меня с этим проблем нет на маках
Pavel
Если флаги одинаковые, то чудес не бывает. А посмотреть их одна секунда. У меня с этим проблем нет на маках
А где в среде прописываются флаги? Я про сборщик ничего не могу найти кроме таргет
Nica
А для чего схема спроектированна?
Че за схема. В чем проектировал? В альтиуме?