Как скомпилировать ядро Arduino-ESP32 с помощью ESP_LOGx
Почему? В Arduino IDE вы можете установить уровень отладки ядра, однако это устанавливает уровень отладки только для файлов в Arduino-esp32, но ядро, которое распространяется в виде предварительно скомпилированной библиотеки в файлах .sdk, расположенных в вашей папке установки Arduinio, не затрагивается. уровень отладки остается по умолчанию «ошибка».
@Tomáš Pilný, 👍1
1 ответ
Что? Если вы хотите изменить основной код или уровень отладки, вам необходимо клонировать репозиторий: https://github.com /espressif/esp32-arduino-lib-builder, внесите туда изменения, скомпилируйте и примените изменения (автоматически скриптом сборки).
Как?
Есть 2 основных подхода. Оба они требуют редактирования файла esp32-arduino-lib-builder/configs/defconfig.common
.
Первый вариант — отредактировать файл напрямую, а затем построить.
Позже вы можете git restore configs/defconfig.common
вернуться назад.
Второй вариант — скопировать файл cp configs/defconfig.common configs/defconfig.debug
, отредактировать отладочную версию и затем скомпилировать.
Откройте файл defconfig
vim configs/defconfig.common
или vim configs/defconfig.debug
Измените строку 45
, содержащую по умолчанию CONFIG_LOG_DEFAULT_LEVEL_ERROR=y
, на одну из следующих строк в зависимости от желаемого уровня журнала:
CONFIG_LOG_DEFAULT_LEVEL_NONE=y # No output
CONFIG_LOG_DEFAULT_LEVEL_ERROR=y # Errors - default
CONFIG_LOG_DEFAULT_LEVEL_WARN=y # Warnings
CONFIG_LOG_DEFAULT_LEVEL_INFO=y # Info
CONFIG_LOG_DEFAULT_LEVEL_DEBUG=y # Debug
CONFIG_LOG_DEFAULT_LEVEL_VERBOSE=y # Verbose - All of the above
Затем просто создайте библиотеки для всех SoC или для одной конкретной SoC. Обратите внимание, что сборка для всех SoC занимает много времени, поэтому, если вы работаете только с одной конкретной SoC, стройте только для нее.
Если вы скопировали файл defconfig и настройки отладки находятся в файле configs/defconfig.debug
, добавьте флаг debug
пример: ./build.sh отладка
Соберите все SoC: ./build.sh
Собрать только выбранный SoC: ./build.sh -t <soc>
Точный текст для выбора SoC:
- esp32
- esp32s2
- esp32c3
- esp32s3
Пример:
./build.sh -t esp32
Неправильный формат или отсутствие SoC приведет к ошибкеsed: не удается прочитать sdkconfig: нет такого файла или каталога
- ESP32 сохранение данных на SD-карту в формате .csv не форматируется правильно
- Как увеличить скорость записи на SD-карту в Ардуино
- esp32, platformio A fatal error occurred: Packet content transfer stopped (received 8 bytes) *** [upload] Error 2
- Как выбрать альтернативные контакты I2C на ESP32?
- Драйверы для чипа последовательного порта CH9102X
- Как преобразовать форматированный оператор print в строковую переменную?
- ESP32 - "Детектор Браунаута был активирован" при запуске Wi-Fi
- Питание esp32cam от аккумулятора