From a5963c9ed6e24070e3225a8d70f7d710cfd3892e Mon Sep 17 00:00:00 2001 From: sasa Date: Thu, 27 Aug 2026 22:16:23 +0300 Subject: [PATCH] Intial commit --- .gitignore | 1929 ++++++++++++++++++++++++++++++++++++++++ AGENTS.md | 240 +++++ CMakeLists.txt | 3 + PLANS.md | 286 ++++++ docs/BOARD_PASSPORT.md | 70 ++ docs/MVP.md | 535 +++++++++++ include/README | 37 + lib/README | 46 + platformio.ini | 14 + src/CMakeLists.txt | 6 + src/main.c | 1 + test/README | 11 + 12 files changed, 3178 insertions(+) create mode 100644 .gitignore create mode 100644 AGENTS.md create mode 100644 CMakeLists.txt create mode 100644 PLANS.md create mode 100644 docs/BOARD_PASSPORT.md create mode 100644 docs/MVP.md create mode 100644 include/README create mode 100644 lib/README create mode 100644 platformio.ini create mode 100644 src/CMakeLists.txt create mode 100644 src/main.c create mode 100644 test/README diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..22de6ac --- /dev/null +++ b/.gitignore @@ -0,0 +1,1929 @@ +.obsidian/app.json +.obsidian/appearance.json +.obsidian/core-plugins.json +.obsidian/workspace.json +sdkconfig.esp32-c6-devkitm-1 +.pio/build/project.checksum +.pio/build/esp32-c6-devkitm-1/.sconsign313.dblite +.pio/build/esp32-c6-devkitm-1/app-flash_args +.pio/build/esp32-c6-devkitm-1/app-flash_args.in +.pio/build/esp32-c6-devkitm-1/battleship.map +.pio/build/esp32-c6-devkitm-1/bootloader-flash_args +.pio/build/esp32-c6-devkitm-1/bootloader.bin +.pio/build/esp32-c6-devkitm-1/bootloader.elf +.pio/build/esp32-c6-devkitm-1/build.ninja +.pio/build/esp32-c6-devkitm-1/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/CMakeCache.txt +.pio/build/esp32-c6-devkitm-1/compile_commands.json +.pio/build/esp32-c6-devkitm-1/components_with_manifests_list.temp.overrides +.pio/build/esp32-c6-devkitm-1/config.env +.pio/build/esp32-c6-devkitm-1/firmware.bin +.pio/build/esp32-c6-devkitm-1/firmware.elf +.pio/build/esp32-c6-devkitm-1/flash_app_args +.pio/build/esp32-c6-devkitm-1/flash_args +.pio/build/esp32-c6-devkitm-1/flash_args.in +.pio/build/esp32-c6-devkitm-1/flash_bootloader_args +.pio/build/esp32-c6-devkitm-1/flash_project_args +.pio/build/esp32-c6-devkitm-1/flasher_args.json +.pio/build/esp32-c6-devkitm-1/flasher_args.json.in +.pio/build/esp32-c6-devkitm-1/hints.yml +.pio/build/esp32-c6-devkitm-1/idedata.json +.pio/build/esp32-c6-devkitm-1/kconfigs_projbuild.in +.pio/build/esp32-c6-devkitm-1/kconfigs.in +.pio/build/esp32-c6-devkitm-1/ldgen_libraries +.pio/build/esp32-c6-devkitm-1/ldgen_libraries_pio +.pio/build/esp32-c6-devkitm-1/ldgen_libraries.in +.pio/build/esp32-c6-devkitm-1/memory.ld +.pio/build/esp32-c6-devkitm-1/partition-table-flash_args +.pio/build/esp32-c6-devkitm-1/partitions.bin +.pio/build/esp32-c6-devkitm-1/project_description.json +.pio/build/esp32-c6-devkitm-1/sections.ld +.pio/build/esp32-c6-devkitm-1/sizedata.json +.pio/build/esp32-c6-devkitm-1/x509_crt_bundle +.pio/build/esp32-c6-devkitm-1/x509_crt_bundle.S +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/query/codemodel-v2 +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/codemodel-v2-c17593f21aac31d39061.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-.-f5ebdc15457944623624.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf-cc45aa7090dbc5719927.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.__pio_env-fcfc0ae089cbe36a2c1e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.app_trace-946feb6e6e13f76db825.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.app_update-a6cf532b235acef06557.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.bootloader_support-c013989f150d36046a02.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.bootloader-ba8e8545ce5c2f887e80.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.bt-362aa2835f87ac1a596d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.cmock-e41ce7422ef34713dd1a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.console-187c06403ccaeb4967a7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.cxx-601781867f8ce4469361.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.driver-87052503b175eef3856d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.efuse-df91d7d68ec10cc0183f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_adc-4e1e71ead0d3d89659a4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_app_format-d10c38fd378407d6e79a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_blockdev_util-5ad223280f602ef24d43.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_blockdev-e1e9e204a27a01d77593.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_bootloader_format-8fc1222b66ce96420555.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_coex-4ba744ba098a188b9c1a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_common-bbaa3fe22dba096e69de.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_ana_cmpr-1156aa7562b1c3af2cf3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_bitscrambler-50a3705facb15de07d27.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_cam-eb922ceee264d4ee5dd1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_dac-25e582a44ee5c9595b2d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_dma-33dc7bb29b01ac9214f9.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_gpio-2ad01f958d1de63caea4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_gptimer-af2761010e93949e46fc.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_i2c-faafacbb7e85db51e526.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_i2s-49032301e23bbdd75675.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_i3c-825ad8dbc1312e74d8ab.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_isp-d5c0ca465efdae6ec6d6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_jpeg-863c65de5750f99e421e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_ledc-37be32ef27bbdf0ccb2e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_mcpwm-f2bf80b04ffbef16f470.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_parlio-d85d0588b243816e55dc.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_pcnt-537b7904fc7f97967d89.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_ppa-9aaefb4bfaf364e937de.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_rmt-5ac49b1ede3609395553.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_sd_intf-3691a9cc8a629866936c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_sdio-251b45115e008ecc1a33.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_sdm-fcdfdb69c8d0bafe61cd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_sdmmc-acaa752c7c2e5541e5a6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_sdspi-c865016f7bb1ef1eb001.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_spi-c6753a256873c99592b9.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_touch_sens-2fcce383474157eb53d0.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_tsens-e105c6b675f6461a183d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_twai-ea49b751656365453aeb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_uart-fd3c076a577e9e8c7773.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_driver_usb_serial_jtag-f06cc090b0271098e940.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_eth-5cb391ac36dc6aa39c7c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_event-56a34dcb216f0f7cb006.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_gdbstub-3ec58e813527e9a53240.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ana_cmpr-631008efdefd10cce638.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ana_conv-4511ea0ede8e49214067.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_cam-53ba6a2d5f9c4538d930.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_clock-b6290ef99473854bb46e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_dma-62ff4884d1f6b83a99d7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_gpio-c2d71acaf2ab17072223.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_gpspi-fc47ee39169e6ba8eaa2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_i2c-838d6db1afbc9761c5b8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_i2s-f4839f5bd4aa2e346ee6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ieee802154-6e80ebecae4cbe85debc.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_jpeg-7bc94bf06ba1ba7d234d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_lcd-0da52c3f8e7d25ff851f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ledc-6b46f0fe124b78c45162.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_mcpwm-33a8f32353fd9b77a659.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_mspi-3767e40ee03d2ff7c085.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_parlio-d3cac0142e3ee1b2aefb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_pcnt-ff8b3e484dcf8ebb55d1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_pmu-65070e050c24e4b6627c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ppa-a860bb881e60e4d8d2ab.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_rmt-beb419eddb9e6f2db05f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_rtc_timer-140f8df0f003c920e972.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_sd-2faec53ed71f33a23d45.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_security-d80cab06ebffea4b891c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_timg-60a3cef3e4b544b4b256.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_touch_sens-9feff84525b5c51dad14.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_twai-e5b2d398f9cd94c318c4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_uart-2dcc3ba57b5c8c8a288f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_usb-afe33b15d91ebd982ca8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hal_wdt-d1f7a0562bb246a9d0e2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hid-3ee23872b0f3f964b8ca.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_http_client-7ec9d7d73593565f7c5e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_http_server-9ed1b24a6ca413f728c2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_https_ota-c2ba2251976142d2e9d7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_https_server-0317ed1196e9b7235fb6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support-c4ae13644347d2c63d10.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support.lowpower-198b5e054ac8c4dfa488.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support.port.esp32c6-fd8b918b3a74d74a7b1d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_lcd-2eab2aef6e536ba00aa1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_libc-08924ebc8f2f63768645.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_libc.src.port-c7d086899d97aa6aa73e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_local_ctrl-51a8ee08e7b99e4ba61f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_mm-cc80ac6e4c82435de9d2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_netif_stack-ac719d04a6fe99499550.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_netif-d91797531bbdcca3380a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_partition-031998f6e24d0baa6e4e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_phy-eb32824826b2db4f8942.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_pm-8eebfbdaf6fa244180ae.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_psram-bc33b5d4b5c1c318398a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_ringbuf-41da982e3e753c63cbd4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_rom-70dc0fe500b71133bab3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_security-4dd307de01a913b63424.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_stdio-612bc589aab712de5586.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_system-48131c0a0cc4dda3fdc5.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_system.port-96972e457a8c930d669a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_system.port.soc.esp32c6-fe0519e47d9f1baf03fd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_tee-4af0648945e358b83741.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_timer-7fe2a46ce51cfebd1c56.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_trace-50fc9901d12035c673d8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_usb_cdc_rom_console-37907f8f6f1397b27586.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp_wifi-fc2a4c36fa0278d8036b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esp-tls-2ffaf58b0ce122d7c7ef.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.espcoredump-1ad2d041d1cb35fff107.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.esptool_py-cb9c96183b43178c44eb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.fatfs-8c4da8346fc072bdec5c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.freertos-1bac8ebb17ad9b910c48.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.hal-62f10b3adbe64c6cc55a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.heap-63d21f66eb0398bdd8ab.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.http_parser-930b018177c6be0443a1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.idf_test-f6ec168473ab4cb4ebd3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.ieee802154-6d74e120b8618739a478.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.log-04b3103e698e3174d66d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.lwip-4a2442fa4c8b45cc4241.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls-40cfad0264e1c2b3f1ac.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls-35d05898e2f774a117ad.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.include-cca763c6a50e7e5c8a26.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.library-36e080d57dde619347bd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.pkgconfig-c804e7d4b31a50b1eb41.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto-cb2a36dd9b5a65a383dc.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.core-a998746e6f449f13255f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.drivers-bcf78b262402faa520c5.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.drivers.builtin-203be630e62e17eaba9c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.drivers.builtin.src-be116086e029f67723b8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.drivers.everest-e52a488246f3ead678ad.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.drivers.p256-m-fe9477f35a2a7732863c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.include-6a39818ec33f7cbd8ab3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.mbedtls.mbedtls.tf-psa-crypto.pkgconfig-3d0d1e670984552cebe8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.nvs_flash-097bbbc40628c579c16d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.nvs_sec_provider-06d5ef78148968de4b2d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.openthread-0bcf8f477a4b99e941f3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.partition_table-ad85dfe927ba1d7ab232.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.protobuf-c-050f322f879533cc280b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.protocomm-1e6d51603c5550a1a51c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.pthread-541234ee1dd128e25672.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.riscv-50739041adb16f946fba.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.rt-68aa8f9e21ce7a1b6420.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.sdmmc-21e33dd4cce88e105729.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.soc-67f246b6a89bf9e5c72d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.spi_flash-67bc378cb41f2ecdc031.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.spiffs-e7534d2be755f8f20e66.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.src-3d3b30f1679bf29da8e7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.tcp_transport-570cae323299a7e053d2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.ulp-47ead1fc524bbf7c2345.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.unity-64459a6f1e3fd3e55a18.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.vfs-18a2fa381b11856be77e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.wear_levelling-906cb4e02eede3f76f3e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/directory-esp-idf.wpa_supplicant-d13db8d7e04097d9f6c0.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/index-2026-08-27T18-56-08-0680.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf___pio_env-9a76912a3cc5ee4064cd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_app_update-e2a2ec39cdba6ff14a5e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_bootloader_support-b671b30338c673e6a68e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_cmock-3b600544a22218765457.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_console-a6b11266ff9b8812a672.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_cxx-2b833915997eab507ec5.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_driver-12f01a984bc2c60d0c92.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_efuse-7c9aa29623d8769bd60d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_adc-927ad8b3d41f1d97cd27.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_app_format-bb33e862b38c03540b1d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_blockdev_util-b621d5cf147381216e07.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_bootloader_format-cc253cf354a7a8a86dc7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_coex-9dd03b4d339f94f19356.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_common-abed652effa4527e760b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_cam-6e73b0b212604aea588b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_dma-3c850ef4d4a47078b8ca.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_gpio-ba6ae695b3e26cd326fb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_gptimer-4c914335f266e88742a4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_i2c-9cc8d20b62a86e471a41.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_i2s-357f7a59954a423c7daa.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_ledc-cd4d550cd2972138deba.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_mcpwm-33439faf9f8ff680a5a1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_parlio-ae3018c93190170d817f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_pcnt-9619776e3b45e96520a1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_rmt-3a836861450ff4bdcfb6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_sd_intf-cb52cc709e4edf0f233a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_sdio-562db42d3100872e8ed8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_sdm-f5b5232e2cef037e364c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_sdspi-26a4b0be879de0d78a4a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_spi-9f3ec1e24bfa06c0c99a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_tsens-8d8c91f11159f79f7e65.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_twai-66cd53a343dc50929462.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_uart-7d42edcc0787b821adc5.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_driver_usb_serial_jtag-78ee3200618b4346c653.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_eth-15db0de3239ce564f257.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_event-4476e862151939541529.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_gdbstub-77c970c54495f8b97498.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_ana_conv-dc8ebeb06fe04f8cdfd7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_clock-bf9accbc236233b493fa.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_dma-1045dfc5c11fcd0308a8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_gpio-b0dcf48c53d6c09ef30f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_gpspi-c31478317e1d9d49d7c2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_i2c-bba766667b1945422b22.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_i2s-bd1b2d9885455045a187.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_ieee802154-e9e3d35bfb066c8d9784.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_ledc-8303ef6346b0589924d2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_mcpwm-6c039bfdf61ed8bff47e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_mspi-c3b44ad1a0ed766e2aff.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_parlio-92e911ad6f40484d9396.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_pcnt-b91e9c31f4e58bb110da.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_pmu-365f0eefa6a48b6df1d8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_rmt-285a00950ed8e0749a59.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_sd-abd21747132d18944b21.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_security-d79f06a2ef61f2696f65.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_timg-0e74729c1b6a9cd2db0d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_twai-902eb26977c62d02c5c3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_uart-8d4f576ecc72b7ac02d3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_usb-2603dbe49bbb2443a36b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hal_wdt-0bfa3d7934aff5bafa6f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hid-cda65ae645757dff374c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_http_client-52b974f42978d8f2d78a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_http_server-b7d457fc2957e9cabbc8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_https_ota-3647161d0f62e94785bb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_https_server-fbf80d66e5067b7a54d7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_hw_support-b3111925ebe613fe1add.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_lcd-68e73ac8e8495d6e4e62.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_libc-0733fa5efbbf46d446a8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_local_ctrl-68245e2a73ef6cdc161f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_mm-a71de30c7bfbcffda330.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_netif-5bc8a36812c53d67a70d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_partition-4d7b0936cf79c5c9a2dd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_phy-e3e5f05531a55b37fdb0.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_pm-0325cf24026af26e4c04.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_psram-2e4cd471ae5cc103a2de.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_ringbuf-0a98683fae7eebeb33ee.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_rom-1f9ed0d829b60f52cb0f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_security-726b7a9219c463c5e113.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_stdio-f39b16d432074fe6a78c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_system-a970cbfd09dd4f0c0208.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_timer-f007a86dab5fd28dcebd.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp_wifi-35e2b74039cc53e514c4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_esp-tls-e112e9b38c7593c945ca.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_fatfs-446d0d2e3e37d3956ad6.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_freertos-d901ed0ef6f9bc911697.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_hal-2ae00a168462aaea2681.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_heap-5e98551b746ede386160.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_http_parser-20e0a63a4d38ba6319d2.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_ieee802154-ed1261476fb9d04a0fed.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_log-0135d6700fc2332953f7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_lwip-24ca8f601c739bfe6ce5.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_mbedtls-e47aa73b16546daf7ac3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_nvs_flash-0e736e1682ab1deea45e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_nvs_sec_provider-ba221785fdf01b8d3c0c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_protobuf-c-539c3aad82d42234a019.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_protocomm-da65d183133c72f41003.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_pthread-c9b102e3a0e29207d22f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_riscv-68e3f34dddacf88592f0.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_rt-18fa9a5258a30650d77d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_sdmmc-67612b144f20b36f135e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_soc-6856f9a97181ed88a1e8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_spi_flash-85ea988602018141b4a4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_spiffs-b5f1f3a6ed4b08c0a4be.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_src-c4fb9166740b3201288f.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_tcp_transport-20dfe8deac0777fad00b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_unity-2b2a0df7cbb783d2ad30.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_vfs-2025f26b73248afaf1a8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_wear_levelling-1cc7828733bb64c89cc7.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__idf_wpa_supplicant-5abe0e943ef4c8b83fad.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-__ldgen_output_sections.ld-4d937e895adb067c012e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-_project_elf_src-8214e86910de206d57c3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-app_check_size-fd98390f5b3cae275747.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-app-c0788f1258af782e3537.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-app-flash-6787af85969b15a6dcd8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-battleship.elf-e7c6470723b4c24aacab.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-bootloader-51920868d37a1d40ea03.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-bootloader-flash-006ac9cce42e41227481.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-builtin-5a70ebbcc06b21cba1d3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-config-report-86d2b340465e39a15a78.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-confserver-33433810f171e80c4fad.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-custom_bundle-c418008180cab225ef73.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-efuse_common_table-6f28b40935c37ecf7347.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-efuse_custom_table-65acef021760fce81e86.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-efuse_test_table-a00dd9dfa937711bce7e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-efuse-common-table-2d13af7afd177194550a.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-efuse-custom-table-afb612f088da38476857.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-encrypted-app-flash-b942625a0fd68932697c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-encrypted-bootloader-flash-5e0a7a69ea79e68e9826.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-encrypted-flash-73216ce7241cab79da72.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-encrypted-partition-table-flash-c014a87a90da9b6d8782.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-erase-flash-b7b54567d2639776afbe.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-everest-463950c2d40f60583bfc.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-flash-a48a25b8f5f2b3029d37.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-gen_battleship_binary-f3dee294a3bfc260830e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-gen_project_binary-ac50c1c875d352f78863.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-lib-f2cd43b04b10301160cf.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-mbedtls-47eb248cf5ef9fba4bd4.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-mbedtls-apidoc-b38890e22c8b8ed4b33e.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-mbedx509-a3f9cbd63c6ff701849c.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-memory_ld_in_preprocess-9606a9dbe55b50dda406.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-menuconfig-7dd5ab556134e73f896b.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-merge-bin-eb35b6cb36dd0c375882.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-monitor-ed2e0867f2c7ff9b2530.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-p256m-3d8fb1f89f118aab36bb.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-partition_table_bin-91294fbeb917d38efad9.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-partition_table-7a1f41db07138d34d4c8.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-partition_table-flash-343bc00380f560c9e2c3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-partition-table-1a75938fc25c87edbb18.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-partition-table-flash-82b1613181d12081d517.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-save-defconfig-c691301fd32d7fd27ede.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-sections_ld_in_preprocess-ea22c96fd963bc1dadf0.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-show_efuse_table-ea1da476dc82ccd81a4d.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-show-efuse-table-661fbf590c80f32812f1.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-size-788cd7078ba6df0f7652.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-size-components-2b815fd7809c3f8ba9ff.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-size-files-ad3ce6013b00f46b6508.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-tfpsacrypto-198860402065c75325a3.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-tfpsacrypto-apidoc-d5f129f3b667e3a9b302.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-uf2-502e01fb396e818ec250.json +.pio/build/esp32-c6-devkitm-1/.cmake/api/v1/reply/target-uf2-app-d2f815c73d2413fe7035.json +.pio/build/esp32-c6-devkitm-1/.pio/build/esp32-c6-devkitm-1/x509_crt_bundle.S.o +.pio/build/esp32-c6-devkitm-1/CMakeFiles/clean_additional.cmake +.pio/build/esp32-c6-devkitm-1/CMakeFiles/cmake.check_cache +.pio/build/esp32-c6-devkitm-1/CMakeFiles/CMakeConfigureLog.yaml +.pio/build/esp32-c6-devkitm-1/CMakeFiles/rules.ninja +.pio/build/esp32-c6-devkitm-1/CMakeFiles/TargetDirectories.txt +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeASMCompiler.cmake +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeCCompiler.cmake +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeCXXCompiler.cmake +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeDetermineCompilerABI_C.bin +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeDetermineCompilerABI_CXX.bin +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CMakeSystem.cmake +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CompilerIdC/a.out +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CompilerIdC/CMakeCCompilerId.c +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CompilerIdCXX/a.out +.pio/build/esp32-c6-devkitm-1/CMakeFiles/3.30.2/CompilerIdCXX/CMakeCXXCompilerId.cpp +.pio/build/esp32-c6-devkitm-1/CMakeFiles/bootloader.dir/Labels.json +.pio/build/esp32-c6-devkitm-1/CMakeFiles/bootloader.dir/Labels.txt +.pio/build/esp32-c6-devkitm-1/__pio_env/__dummy.c.o +.pio/build/esp32-c6-devkitm-1/__pio_env/__dummy.cpp.o +.pio/build/esp32-c6-devkitm-1/__pio_env/__dummy.S.o +.pio/build/esp32-c6-devkitm-1/app_update/esp_ota_ops.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader.map +.pio/build/esp32-c6-devkitm-1/bootloader/build.ninja +.pio/build/esp32-c6-devkitm-1/bootloader/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeCache.txt +.pio/build/esp32-c6-devkitm-1/bootloader/compile_commands.json +.pio/build/esp32-c6-devkitm-1/bootloader/components_with_manifests_list.temp.overrides +.pio/build/esp32-c6-devkitm-1/bootloader/config.env +.pio/build/esp32-c6-devkitm-1/bootloader/hints.yml +.pio/build/esp32-c6-devkitm-1/bootloader/kconfigs_projbuild.in +.pio/build/esp32-c6-devkitm-1/bootloader/kconfigs.in +.pio/build/esp32-c6-devkitm-1/bootloader/project_description.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/query/codemodel-v2 +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/codemodel-v2-5051f43c437382fe5416.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-.-f5ebdc15457944623624.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf-cc45aa7090dbc5719927.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.bootloader_support-c013989f150d36046a02.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.bootloader-ba8e8545ce5c2f887e80.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.efuse-df91d7d68ec10cc0183f.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_app_format-d10c38fd378407d6e79a.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_blockdev-e1e9e204a27a01d77593.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_bootloader_format-8fc1222b66ce96420555.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_common-bbaa3fe22dba096e69de.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_ana_conv-4511ea0ede8e49214067.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_clock-b6290ef99473854bb46e.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_dma-62ff4884d1f6b83a99d7.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_gpio-c2d71acaf2ab17072223.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_gpspi-fc47ee39169e6ba8eaa2.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_mspi-3767e40ee03d2ff7c085.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_pmu-65070e050c24e4b6627c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_rtc_timer-140f8df0f003c920e972.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_security-d80cab06ebffea4b891c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_timg-60a3cef3e4b544b4b256.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_uart-2dcc3ba57b5c8c8a288f.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_usb-afe33b15d91ebd982ca8.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hal_wdt-d1f7a0562bb246a9d0e2.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support-c4ae13644347d2c63d10.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support.lowpower-198b5e054ac8c4dfa488.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_hw_support.port.esp32c6-fd8b918b3a74d74a7b1d.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_libc-08924ebc8f2f63768645.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_rom-70dc0fe500b71133bab3.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_security-4dd307de01a913b63424.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_stdio-612bc589aab712de5586.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_system-48131c0a0cc4dda3fdc5.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esp_tee-4af0648945e358b83741.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.esptool_py-cb9c96183b43178c44eb.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.freertos-1bac8ebb17ad9b910c48.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.hal-62f10b3adbe64c6cc55a.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.log-04b3103e698e3174d66d.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.main-f27928b5f5a70a8f4668.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.micro-ecc-412fb53d4b43013239af.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.partition_table-ad85dfe927ba1d7ab232.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.riscv-50739041adb16f946fba.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.soc-67f246b6a89bf9e5c72d.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/directory-esp-idf.spi_flash-67bc378cb41f2ecdc031.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/index-2026-08-27T18-56-12-0754.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_bootloader_support-50248eeca86329a3e53e.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_efuse-4a72ef0aabb1cbf74574.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_bootloader_format-bed745199980b58301dd.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_common-1fcc00cf5f9cacad0063.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_ana_conv-07c1c9dccca1ac088aea.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_clock-d1a51fde49d80304add2.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_dma-bb863844f5721fd75610.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_gpio-dc76269cd3de0ad9e0a1.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_gpspi-d9e0b9ab2b9fa7e18e6c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_pmu-406dc13606dcdde09805.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_timg-032493a7888e14f48870.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_uart-1acf0cbce03e90182246.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_usb-28a74e61c30798cd1b1a.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hal_wdt-5392b3d40c7e1955c874.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_hw_support-d9e94b06e2e90a0d18e2.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_rom-5e70539b6c248fc4631e.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_security-088bbc208c9f8f97c74f.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_esp_system-b5c59a7dff61efbdce82.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_hal-99145bc2709d439640c4.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_log-e75c913bd7690db86223.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_main-feef23cc783553c9e254.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_micro-ecc-2fe0184f97e529785930.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_riscv-8a78968185fcc6c453ce.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_soc-e6b0d9fd81e717afc772.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-__idf_spi_flash-967d2a0637cf02e288e9.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-_project_elf_src-eac4ee2d38811642f4d0.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-app-cc6302daf5699a527ffc.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-bootloader_check_size-f4d463fb1eb930cf7cc1.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-bootloader_ld_in_preprocess-0a78f16e0998d213925c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-bootloader.elf-2cd48fd08443ccf9ae7a.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-config-report-bc9eff1c5483eeaee64c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-confserver-e91cdda1588e29c4b9ae.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-efuse_common_table-9a592d68f61822993863.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-efuse_custom_table-22eddba3296dad3b7d7d.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-efuse_test_table-83f34598767c708f62eb.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-efuse-common-table-262245c8f510a0d9d9ae.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-efuse-custom-table-afb612f088da38476857.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-gen_bootloader_binary-3bd3eef19c8342fd02a1.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-gen_project_binary-dd80a0822fa863551d71.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-menuconfig-551c2b6509911ba25847.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-save-defconfig-e9f9ee3fc862c8b562f0.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-show_efuse_table-6a802305b32be525ec14.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-show-efuse-table-801f7f85515c3fdc4e1c.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-size-components-fbb3f8d8eee0b80280f3.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-size-d0bb9df2798a019996d1.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-size-files-1851413d0ef5cfe3c6ab.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-uf2-39e734f77a1e9e3a8807.json +.pio/build/esp32-c6-devkitm-1/bootloader/.cmake/api/v1/reply/target-uf2-app-5b1aa488aadfa3c6189a.json +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/clean_additional.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/cmake.check_cache +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/CMakeConfigureLog.yaml +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/rules.ninja +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/TargetDirectories.txt +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeASMCompiler.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeCCompiler.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeCXXCompiler.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeDetermineCompilerABI_C.bin +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeDetermineCompilerABI_CXX.bin +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CMakeSystem.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CompilerIdC/a.out +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CompilerIdC/CMakeCCompilerId.c +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CompilerIdCXX/a.out +.pio/build/esp32-c6-devkitm-1/bootloader/CMakeFiles/3.30.2/CompilerIdCXX/CMakeCXXCompilerId.cpp +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader/subproject/components/micro-ecc/uECC_verify_antifault.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader/subproject/main/bootloader_start.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/bootloader_flash/src/bootloader_flash.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/bootloader_flash/src/flash_qio_mode.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_clock_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_clock_loader.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_common_loader.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_common.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_console_loader.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_console.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_efuse.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_mem.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_panic.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_random_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_random.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_sha.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/bootloader_utility.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/esp_image_format.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/flash_encrypt.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/flash_partitions.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/secure_boot.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/esp32c6/bootloader_ecdsa.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/esp32c6/bootloader_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/bootloader_support/src/esp32c6/bootloader_soc.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/config/kconfig_menus.json +.pio/build/esp32-c6-devkitm-1/bootloader/config/sdkconfig.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/config/sdkconfig.h +.pio/build/esp32-c6-devkitm-1/bootloader/config/sdkconfig.json +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/esp32c6/esp_efuse_fields.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/esp32c6/esp_efuse_rtc_calib.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/esp32c6/esp_efuse_table.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/esp32c6/esp_efuse_utility.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/src/esp_efuse_api.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/src/esp_efuse_fields.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/src/esp_efuse_utility.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/efuse/src/efuse_controller/keys/with_key_purposes/esp_efuse_api_key.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/bootloader/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/bootloader_support/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/bootloader_support/libbootloader_support.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/efuse/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/efuse/libefuse.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_app_format/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_blockdev/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_bootloader_format/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_bootloader_format/libesp_bootloader_format.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_common/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_common/libesp_common.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_ana_conv/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_ana_conv/libesp_hal_ana_conv.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_clock/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_clock/libesp_hal_clock.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_dma/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_dma/libesp_hal_dma.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_gpio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_gpio/libesp_hal_gpio.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_gpspi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_gpspi/libesp_hal_gpspi.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_mspi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_pmu/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_pmu/libesp_hal_pmu.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_rtc_timer/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_security/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_timg/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_timg/libesp_hal_timg.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_uart/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_uart/libesp_hal_uart.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_usb/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_usb/libesp_hal_usb.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_wdt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hal_wdt/libesp_hal_wdt.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hw_support/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hw_support/libesp_hw_support.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hw_support/lowpower/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_hw_support/port/esp32c6/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_libc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_rom/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_rom/libesp_rom.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_security/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_security/libesp_security.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_stdio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_system/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_system/libesp_system.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esp_tee/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/esptool_py/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/freertos/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/hal/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/hal/libhal.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/log/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/log/liblog.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/main/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/main/libmain.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/micro-ecc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/micro-ecc/libmicro-ecc.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/partition_table/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/riscv/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/riscv/libriscv.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/soc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/soc/libsoc.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/spi_flash/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/bootloader/esp-idf/spi_flash/libspi_flash.a +.pio/build/esp32-c6-devkitm-1/bootloader/esp_bootloader_format/esp_bootloader_desc.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_common/src/esp_err_to_name.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/adc_hal_common.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/adc_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/adc_oneshot_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/temperature_sensor_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/esp32c6/adc_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_ana_conv/esp32c6/temperature_sensor_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_clock/esp32c6/clk_tree_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_dma/gdma_hal_ahb_v1.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_dma/gdma_hal_top.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_dma/esp32c6/gdma_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/gpio_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/rtc_io_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/sdm_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/esp32c6/dedic_gpio_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/esp32c6/rtc_io_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpio/esp32c6/sdm_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/spi_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/spi_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/spi_slave_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/spi_slave_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/spi_slave_hd_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_gpspi/esp32c6/spi_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_pmu/brownout_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_pmu/esp32c6/pau_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_pmu/esp32c6/pmu_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_timg/timer_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_timg/esp32c6/timer_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_uart/uart_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_uart/uart_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_uart/uhci_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_uart/esp32c6/uart_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_usb/usb_serial_jtag_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_wdt/rom_patch.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hal_wdt/esp32c6/mwdt_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/cpu.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/esp_memory_utils.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/chip_info.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/cpu_region_protect.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/esp_cpu_intr.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/ocode_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/pmu_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/pmu_param.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/pmu_sleep.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/rtc_clk_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/rtc_clk.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_hw_support/port/esp32c6/rtc_time.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_crc.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_efuse.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_gpio.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_hp_regi2c_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_print.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_serial_output.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_spiflash.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_sys.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_systimer.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_rom/patches/esp_rom_usb_serial.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_security/src/esp_crypto_lock.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_security/src/esp_crypto_periph_clk.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/esp_system/esp_err.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/gdbinit/connect +.pio/build/esp32-c6-devkitm-1/bootloader/gdbinit/gdbinit +.pio/build/esp32-c6-devkitm-1/bootloader/gdbinit/prefix_map +.pio/build/esp32-c6-devkitm-1/bootloader/gdbinit/py_extensions +.pio/build/esp32-c6-devkitm-1/bootloader/gdbinit/symbols +.pio/build/esp32-c6-devkitm-1/bootloader/hal/cache_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/hal/efuse_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/hal/hal_utils.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/hal/mmu_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/hal/esp32c6/efuse_hal.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/ld/bootloader.ld +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/log_format_text.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/log_print.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/log_timestamp_common.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/log.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/util.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/buffer/log_buffers.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/noos/log_lock.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/noos/log_timestamp.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/log/src/noos/util.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/riscv/rv_utils.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/dport_access_common.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/lldesc.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/esp32c6/gpio_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/esp32c6/interrupts.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/esp32c6/mpi_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/esp32c6/power_supply_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/soc/esp32c6/system_retention_periph.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/specs/picolibc.specs +.pio/build/esp32-c6-devkitm-1/bootloader/spi_flash/spi_flash_wrap.c.o +.pio/build/esp32-c6-devkitm-1/bootloader/toolchain/asmflags +.pio/build/esp32-c6-devkitm-1/bootloader/toolchain/cflags +.pio/build/esp32-c6-devkitm-1/bootloader/toolchain/cxxflags +.pio/build/esp32-c6-devkitm-1/bootloader/toolchain/ldflags +.pio/build/esp32-c6-devkitm-1/bootloader/toolchain/toolchain-esp32c6.cmake +.pio/build/esp32-c6-devkitm-1/bootloader-prefix/src/bootloader-stamp/bootloader-patch-info.txt +.pio/build/esp32-c6-devkitm-1/bootloader-prefix/src/bootloader-stamp/bootloader-source_dirinfo.txt +.pio/build/esp32-c6-devkitm-1/bootloader-prefix/src/bootloader-stamp/bootloader-update-info.txt +.pio/build/esp32-c6-devkitm-1/bootloader-prefix/tmp/bootloader-cfgcmd.txt +.pio/build/esp32-c6-devkitm-1/bootloader-prefix/tmp/bootloader-mkdirs.cmake +.pio/build/esp32-c6-devkitm-1/bootloader_support/bootloader_flash/src/bootloader_flash_config_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/bootloader_flash/src/bootloader_flash.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/bootloader_flash/src/flash_qio_mode.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_clock_init.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_common_loader.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_common.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_efuse.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_mem.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_random_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_random.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_sha.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/bootloader_utility.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/esp_image_format.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/flash_encrypt.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/flash_partitions.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/secure_boot.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/esp32c6/bootloader_ecdsa.c.o +.pio/build/esp32-c6-devkitm-1/bootloader_support/src/esp32c6/secure_boot_secure_features.c.o +.pio/build/esp32-c6-devkitm-1/cmock/CMock/src/cmock.c.o +.pio/build/esp32-c6-devkitm-1/config/kconfig_menus.json +.pio/build/esp32-c6-devkitm-1/config/sdkconfig.cmake +.pio/build/esp32-c6-devkitm-1/config/sdkconfig.h +.pio/build/esp32-c6-devkitm-1/config/sdkconfig.json +.pio/build/esp32-c6-devkitm-1/console/commands.c.o +.pio/build/esp32-c6-devkitm-1/console/esp_console_common.c.o +.pio/build/esp32-c6-devkitm-1/console/esp_console_repl_chip.c.o +.pio/build/esp32-c6-devkitm-1/console/esp_console_repl_internal.c.o +.pio/build/esp32-c6-devkitm-1/console/split_argv.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_cmd.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_date.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_dbl.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_dstr.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_end.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_file.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_hashtable.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_int.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_lit.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_rem.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_rex.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_str.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/arg_utils.c.o +.pio/build/esp32-c6-devkitm-1/console/argtable3/argtable3.c.o +.pio/build/esp32-c6-devkitm-1/console/linenoise/linenoise.c.o +.pio/build/esp32-c6-devkitm-1/cxx/cxx_exception_stubs.cpp.o +.pio/build/esp32-c6-devkitm-1/cxx/cxx_guards.cpp.o +.pio/build/esp32-c6-devkitm-1/cxx/cxx_init.cpp.o +.pio/build/esp32-c6-devkitm-1/driver/i2c/i2c.c.o +.pio/build/esp32-c6-devkitm-1/driver/twai/twai.c.o +.pio/build/esp32-c6-devkitm-1/efuse/esp32c6/esp_efuse_fields.c.o +.pio/build/esp32-c6-devkitm-1/efuse/esp32c6/esp_efuse_rtc_calib.c.o +.pio/build/esp32-c6-devkitm-1/efuse/esp32c6/esp_efuse_table.c.o +.pio/build/esp32-c6-devkitm-1/efuse/esp32c6/esp_efuse_utility.c.o +.pio/build/esp32-c6-devkitm-1/efuse/src/esp_efuse_api.c.o +.pio/build/esp32-c6-devkitm-1/efuse/src/esp_efuse_fields.c.o +.pio/build/esp32-c6-devkitm-1/efuse/src/esp_efuse_startup.c.o +.pio/build/esp32-c6-devkitm-1/efuse/src/esp_efuse_utility.c.o +.pio/build/esp32-c6-devkitm-1/efuse/src/efuse_controller/keys/with_key_purposes/esp_efuse_api_key.c.o +.pio/build/esp32-c6-devkitm-1/esp-idf/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/__pio_env/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/__pio_env/lib__pio_env.a +.pio/build/esp32-c6-devkitm-1/esp-idf/app_trace/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/app_update/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/app_update/libapp_update.a +.pio/build/esp32-c6-devkitm-1/esp-idf/bootloader/bootloader-flash_args.in +.pio/build/esp32-c6-devkitm-1/esp-idf/bootloader/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/bootloader_support/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/bootloader_support/libbootloader_support.a +.pio/build/esp32-c6-devkitm-1/esp-idf/bt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/cmock/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/cmock/libcmock.a +.pio/build/esp32-c6-devkitm-1/esp-idf/console/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/console/libconsole.a +.pio/build/esp32-c6-devkitm-1/esp-idf/cxx/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/cxx/libcxx.a +.pio/build/esp32-c6-devkitm-1/esp-idf/driver/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/driver/libdriver.a +.pio/build/esp32-c6-devkitm-1/esp-idf/efuse/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/efuse/libefuse.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp-tls/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp-tls/libesp-tls.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_adc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_adc/libesp_adc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_app_format/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_app_format/libesp_app_format.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_blockdev/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_blockdev_util/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_blockdev_util/libesp_blockdev_util.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_bootloader_format/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_bootloader_format/libesp_bootloader_format.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_coex/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_coex/libesp_coex.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_common/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_common/libesp_common.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_ana_cmpr/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_bitscrambler/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_cam/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_cam/libesp_driver_cam.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_dac/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_dma/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_dma/libesp_driver_dma.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_gpio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_gpio/libesp_driver_gpio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_gptimer/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_gptimer/libesp_driver_gptimer.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_i2c/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_i2c/libesp_driver_i2c.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_i2s/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_i2s/libesp_driver_i2s.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_i3c/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_isp/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_jpeg/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_ledc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_ledc/libesp_driver_ledc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_mcpwm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_mcpwm/libesp_driver_mcpwm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_parlio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_parlio/libesp_driver_parlio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_pcnt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_pcnt/libesp_driver_pcnt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_ppa/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_rmt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_rmt/libesp_driver_rmt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sd_intf/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sd_intf/libesp_driver_sd_intf.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdio/libesp_driver_sdio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdm/libesp_driver_sdm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdmmc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdspi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_sdspi/libesp_driver_sdspi.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_spi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_spi/libesp_driver_spi.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_touch_sens/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_tsens/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_tsens/libesp_driver_tsens.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_twai/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_twai/libesp_driver_twai.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_uart/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_uart/libesp_driver_uart.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_usb_serial_jtag/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_driver_usb_serial_jtag/libesp_driver_usb_serial_jtag.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_eth/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_eth/libesp_eth.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_event/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_event/libesp_event.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_gdbstub/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_gdbstub/libesp_gdbstub.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ana_cmpr/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ana_conv/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ana_conv/libesp_hal_ana_conv.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_cam/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_clock/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_clock/libesp_hal_clock.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_dma/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_dma/libesp_hal_dma.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_gpio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_gpio/libesp_hal_gpio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_gpspi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_gpspi/libesp_hal_gpspi.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_i2c/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_i2c/libesp_hal_i2c.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_i2s/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_i2s/libesp_hal_i2s.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ieee802154/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ieee802154/libesp_hal_ieee802154.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_jpeg/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_lcd/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ledc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ledc/libesp_hal_ledc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_mcpwm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_mcpwm/libesp_hal_mcpwm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_mspi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_mspi/libesp_hal_mspi.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_parlio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_parlio/libesp_hal_parlio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_pcnt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_pcnt/libesp_hal_pcnt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_pmu/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_pmu/libesp_hal_pmu.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_ppa/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_rmt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_rmt/libesp_hal_rmt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_rtc_timer/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_sd/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_sd/libesp_hal_sd.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_security/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_security/libesp_hal_security.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_timg/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_timg/libesp_hal_timg.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_touch_sens/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_twai/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_twai/libesp_hal_twai.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_uart/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_uart/libesp_hal_uart.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_usb/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_usb/libesp_hal_usb.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_wdt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hal_wdt/libesp_hal_wdt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hid/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hid/libesp_hid.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_http_client/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_http_client/libesp_http_client.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_http_server/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_http_server/libesp_http_server.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_https_ota/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_https_ota/libesp_https_ota.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_https_server/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_https_server/libesp_https_server.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hw_support/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hw_support/libesp_hw_support.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hw_support/lowpower/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_hw_support/port/esp32c6/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_lcd/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_lcd/libesp_lcd.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_libc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_libc/libesp_libc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_libc/src/port/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_local_ctrl/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_local_ctrl/libesp_local_ctrl.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_mm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_mm/libesp_mm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_netif/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_netif/libesp_netif.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_netif_stack/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_partition/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_partition/libesp_partition.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_phy/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_phy/libesp_phy.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_pm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_pm/libesp_pm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_psram/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_psram/libesp_psram.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_ringbuf/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_ringbuf/libesp_ringbuf.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_rom/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_rom/libesp_rom.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_security/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_security/libesp_security.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_stdio/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_stdio/libesp_stdio.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_system/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_system/libesp_system.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_system/ld/sections.ld.in +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_system/port/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_system/port/soc/esp32c6/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_tee/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_timer/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_timer/libesp_timer.a +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_trace/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_usb_cdc_rom_console/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_wifi/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esp_wifi/libesp_wifi.a +.pio/build/esp32-c6-devkitm-1/esp-idf/espcoredump/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/esptool_py/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/fatfs/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/fatfs/libfatfs.a +.pio/build/esp32-c6-devkitm-1/esp-idf/freertos/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/freertos/libfreertos.a +.pio/build/esp32-c6-devkitm-1/esp-idf/hal/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/hal/libhal.a +.pio/build/esp32-c6-devkitm-1/esp-idf/heap/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/heap/libheap.a +.pio/build/esp32-c6-devkitm-1/esp-idf/http_parser/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/http_parser/libhttp_parser.a +.pio/build/esp32-c6-devkitm-1/esp-idf/idf_test/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/ieee802154/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/ieee802154/libieee802154.a +.pio/build/esp32-c6-devkitm-1/esp-idf/log/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/log/liblog.a +.pio/build/esp32-c6-devkitm-1/esp-idf/lwip/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/lwip/liblwip.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/libmbedtls.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/include/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/library/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/library/libmbedtls.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/library/libmbedx509.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/pkgconfig/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/core/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/core/libtfpsacrypto.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/libmbed-builtin.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/everest/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/everest/libeverest.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/p256-m/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/drivers/p256-m/libp256m.a +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/include/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/mbedtls/mbedtls/tf-psa-crypto/pkgconfig/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/nvs_flash/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/nvs_flash/libnvs_flash.a +.pio/build/esp32-c6-devkitm-1/esp-idf/nvs_sec_provider/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/nvs_sec_provider/libnvs_sec_provider.a +.pio/build/esp32-c6-devkitm-1/esp-idf/openthread/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/partition_table/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/partition_table/partition-table-flash_args.in +.pio/build/esp32-c6-devkitm-1/esp-idf/protobuf-c/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/protobuf-c/libprotobuf-c.a +.pio/build/esp32-c6-devkitm-1/esp-idf/protocomm/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/protocomm/libprotocomm.a +.pio/build/esp32-c6-devkitm-1/esp-idf/pthread/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/pthread/libpthread.a +.pio/build/esp32-c6-devkitm-1/esp-idf/riscv/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/riscv/libriscv.a +.pio/build/esp32-c6-devkitm-1/esp-idf/rt/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/rt/librt.a +.pio/build/esp32-c6-devkitm-1/esp-idf/sdmmc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/sdmmc/libsdmmc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/soc/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/soc/libsoc.a +.pio/build/esp32-c6-devkitm-1/esp-idf/spi_flash/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/spi_flash/libspi_flash.a +.pio/build/esp32-c6-devkitm-1/esp-idf/spiffs/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/spiffs/libspiffs.a +.pio/build/esp32-c6-devkitm-1/esp-idf/src/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/tcp_transport/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/tcp_transport/libtcp_transport.a +.pio/build/esp32-c6-devkitm-1/esp-idf/ulp/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/unity/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/unity/libunity.a +.pio/build/esp32-c6-devkitm-1/esp-idf/vfs/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/vfs/libvfs.a +.pio/build/esp32-c6-devkitm-1/esp-idf/wear_levelling/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/wear_levelling/libwear_levelling.a +.pio/build/esp32-c6-devkitm-1/esp-idf/wpa_supplicant/cmake_install.cmake +.pio/build/esp32-c6-devkitm-1/esp-idf/wpa_supplicant/libwpa_supplicant.a +.pio/build/esp32-c6-devkitm-1/esp-tls/esp_tls_error_capture.c.o +.pio/build/esp32-c6-devkitm-1/esp-tls/esp_tls_mbedtls.c.o +.pio/build/esp32-c6-devkitm-1/esp-tls/esp_tls_platform_port.c.o +.pio/build/esp32-c6-devkitm-1/esp-tls/esp_tls.c.o +.pio/build/esp32-c6-devkitm-1/esp-tls/esp-tls-crypto/esp_tls_crypto.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_cali_curve_fitting.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_cali.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_continuous.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_filter.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_monitor.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/adc_oneshot.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/esp32c6/curve_fitting_coefficients.c.o +.pio/build/esp32-c6-devkitm-1/esp_adc/gdma/adc_dma.c.o +.pio/build/esp32-c6-devkitm-1/esp_app_format/esp_app_desc.c.o +.pio/build/esp32-c6-devkitm-1/esp_blockdev_util/generic_partition.c.o +.pio/build/esp32-c6-devkitm-1/esp_blockdev_util/memory.c.o +.pio/build/esp32-c6-devkitm-1/esp_bootloader_format/esp_bootloader_desc.c.o +.pio/build/esp32-c6-devkitm-1/esp_coex/esp32c6/esp_coex_adapter.c.o +.pio/build/esp32-c6-devkitm-1/esp_coex/src/coexist_debug_diagram.c.o +.pio/build/esp32-c6-devkitm-1/esp_coex/src/coexist_debug.c.o +.pio/build/esp32-c6-devkitm-1/esp_coex/src/coexist.c.o +.pio/build/esp32-c6-devkitm-1/esp_coex/src/lib_printf.c.o +.pio/build/esp32-c6-devkitm-1/esp_common/src/esp_err_to_name.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_cam/dvp_share_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_cam/esp_cam_ctlr.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/async_memcpy_gdma.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/esp_async_memcpy.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/esp_dma_utils.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/gdma_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/gdma_link.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/gdma_sleep_retention.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_dma/src/gdma.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/dedic_gpio.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/gpio_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/gpio_flex_glitch_filter.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/gpio_glitch_filter_ops.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/gpio_pin_glitch_filter.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/gpio.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gpio/src/rtc_io.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gptimer/src/gptimer_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gptimer/src/gptimer_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_gptimer/src/gptimer.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2c/i2c_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2c/i2c_master.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2c/i2c_slave.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_pdm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_platform.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_std.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_i2s/i2s_tdm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_ledc/src/ledc_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_ledc/src/ledc.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_cap.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_cmpr.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_com.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_fault.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_gen.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_oper.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_sync.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_mcpwm/src/mcpwm_timer.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_parlio/src/parlio_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_parlio/src/parlio_rx.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_parlio/src/parlio_tx.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_pcnt/src/pulse_cnt.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_encoder_bytes.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_encoder_copy.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_encoder_simple.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_encoder.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_rx.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_rmt/src/rmt_tx.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sd_intf/sd_host.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sdio/src/sdio_slave.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sdm/src/sdm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sdspi/src/sdspi_crc.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sdspi/src/sdspi_host.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_sdspi/src/sdspi_transaction.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_spi/src/gpspi/spi_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_spi/src/gpspi/spi_master.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_spi/src/gpspi/spi_slave_hd.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_spi/src/gpspi/spi_slave.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_tsens/src/temperature_sensor_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_tsens/src/temperature_sensor.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_twai/esp_twai_onchip.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_twai/esp_twai.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_uart/src/uart_vfs.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_uart/src/uart_wakeup.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_uart/src/uart.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_uart/src/uhci.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_usb_serial_jtag/src/usb_serial_jtag_connection_monitor.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_usb_serial_jtag/src/usb_serial_jtag_vfs.c.o +.pio/build/esp32-c6-devkitm-1/esp_driver_usb_serial_jtag/src/usb_serial_jtag.c.o +.pio/build/esp32-c6-devkitm-1/esp_eth/src/esp_eth_netif_glue.c.o +.pio/build/esp32-c6-devkitm-1/esp_eth/src/esp_eth.c.o +.pio/build/esp32-c6-devkitm-1/esp_eth/src/phy/esp_eth_phy_802_3.c.o +.pio/build/esp32-c6-devkitm-1/esp_event/default_event_loop.c.o +.pio/build/esp32-c6-devkitm-1/esp_event/esp_event_private.c.o +.pio/build/esp32-c6-devkitm-1/esp_event/esp_event.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/gdbstub_transport.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/gdbstub.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/packet.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/port/riscv/gdbstub_riscv.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/port/riscv/rv_decode.c.o +.pio/build/esp32-c6-devkitm-1/esp_gdbstub/src/port/riscv/target_xml.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/adc_hal_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/adc_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/adc_oneshot_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/temperature_sensor_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/esp32c6/adc_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ana_conv/esp32c6/temperature_sensor_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_clock/esp32c6/clk_tree_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_dma/gdma_hal_ahb_v1.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_dma/gdma_hal_top.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_dma/esp32c6/gdma_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/gpio_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/rtc_io_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/sdm_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/esp32c6/dedic_gpio_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/esp32c6/rtc_io_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpio/esp32c6/sdm_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/spi_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/spi_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/spi_slave_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/spi_slave_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/spi_slave_hd_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_gpspi/esp32c6/spi_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_i2c/i2c_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_i2c/i2c_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_i2c/esp32c6/i2c_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_i2s/i2s_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_i2s/esp32c6/i2s_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ieee802154/esp32c6/ieee802154_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ledc/ledc_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ledc/ledc_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_ledc/esp32c6/ledc_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mcpwm/mcpwm_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mcpwm/esp32c6/mcpwm_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mspi/spi_flash_encrypt_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mspi/spi_flash_hal_gpspi.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mspi/spi_flash_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_mspi/spi_flash_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_parlio/parlio_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_parlio/esp32c6/parlio_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_pcnt/pcnt_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_pcnt/esp32c6/pcnt_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_pmu/brownout_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_pmu/esp32c6/pau_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_pmu/esp32c6/pmu_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_rmt/rmt_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_rmt/esp32c6/rmt_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_sd/sdio_slave_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_sd/esp32c6/sdio_slave_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/aes_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/apm_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/ds_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/ecc_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/hmac_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/mpi_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_security/sha_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_timg/timer_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_timg/esp32c6/timer_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_twai/twai_hal_v1.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_twai/esp32c6/twai_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_uart/uart_hal_iram.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_uart/uart_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_uart/uhci_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_uart/esp32c6/uart_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_usb/usb_serial_jtag_hal.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_wdt/rom_patch.c.o +.pio/build/esp32-c6-devkitm-1/esp_hal_wdt/esp32c6/mwdt_periph.c.o +.pio/build/esp32-c6-devkitm-1/esp_hid/src/esp_hid_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_hid/src/esp_hidd.c.o +.pio/build/esp32-c6-devkitm-1/esp_hid/src/esp_hidh.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_client/esp_http_client.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_client/lib/http_auth.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_client/lib/http_header.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_client/lib/http_utils.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_main.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_parse.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_sess.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_txrx.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_uri.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/httpd_ws.c.o +.pio/build/esp32-c6-devkitm-1/esp_http_server/src/util/ctrl_sock.c.o +.pio/build/esp32-c6-devkitm-1/esp_https_ota/src/esp_https_ota.c.o +.pio/build/esp32-c6-devkitm-1/esp_https_server/src/https_server.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/adc_share_hw_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/clk_ctrl_os.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/clk_utils.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/cpu.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/esp_clk.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/esp_clock_output.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/esp_gpio_reserve.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/esp_memory_utils.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/heap_align_hw.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/hw_random.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/intr_alloc.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/mac_addr.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/modem_clock.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/periph_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/pmu_share_hw.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/regi2c_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/revision.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/rtc_module.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sar_tsens_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_console.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_event.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_gpio.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_modem.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_modes.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_mspi.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_retention.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_system_peripheral.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_uart.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_usb.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/sleep_wake_stub.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/spi_bus_lock.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/spi_share_hw_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/etm/esp_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/lowpower/port/esp32c6/sleep_clock.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/lowpower/port/esp32c6/sleep_cpu_asm.S.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/lowpower/port/esp32c6/sleep_cpu_dynamic.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/lowpower/port/esp32c6/sleep_cpu.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/lowpower/port/esp32c6/sleep_modem_state.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/mspi_timing_tuning/mspi_timing_tuning.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp_clk_tree_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/pau_regdma.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/regdma_link.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/chip_info.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/cpu_region_protect.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/esp_clk_tree.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/esp_cpu_intr.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/io_mux.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/ocode_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/peripheral_domain_pd.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/pmu_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/pmu_param.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/pmu_sleep.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/rtc_clk_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/rtc_clk.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/rtc_time.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/sar_periph_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/port/esp32c6/systimer.c.o +.pio/build/esp32-c6-devkitm-1/esp_hw_support/power_supply/brownout.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/i2c/esp_lcd_panel_io_i2c.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/spi/esp_lcd_panel_io_spi.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/src/esp_lcd_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/src/esp_lcd_panel_io.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/src/esp_lcd_panel_ops.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/src/esp_lcd_panel_ssd1306.c.o +.pio/build/esp32-c6-devkitm-1/esp_lcd/src/esp_lcd_panel_st7789.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/abort.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/assert.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/getentropy.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/heap.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/init.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/locks.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/poll.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/pthread.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/random.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/realpath.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/reent_syscalls.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/scandir.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/stdatomic.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/syscalls.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/sysconf.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/termios.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/time.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/bufio_setvbuf.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/errno.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/fopencookie.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/getreent.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/open_memstream.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/picolibc_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/picolibc/rand.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/port/esp_time_impl.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/port/riscv/memcpy.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/port/riscv/memmove.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/port/riscv/strcmp.S.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/port/riscv/strcpy.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/string/memcmp.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/string/strncmp.c.o +.pio/build/esp32-c6-devkitm-1/esp_libc/src/string/strncpy.c.o +.pio/build/esp32-c6-devkitm-1/esp_local_ctrl/proto-c/esp_local_ctrl.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/esp_local_ctrl/src/esp_local_ctrl_handler.c.o +.pio/build/esp32-c6-devkitm-1/esp_local_ctrl/src/esp_local_ctrl_transport_httpd.c.o +.pio/build/esp32-c6-devkitm-1/esp_local_ctrl/src/esp_local_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/esp_mm/esp_cache_msync.c.o +.pio/build/esp32-c6-devkitm-1/esp_mm/esp_cache_utils.c.o +.pio/build/esp32-c6-devkitm-1/esp_mm/esp_mmu_map.c.o +.pio/build/esp32-c6-devkitm-1/esp_mm/port/esp32c6/ext_mem_layout.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/esp_netif_defaults.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/esp_netif_handlers.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/esp_netif_objects.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/esp_netif_lwip_defaults.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/esp_netif_lwip.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/esp_netif_sntp.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/netif/esp_pbuf_ref.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/netif/ethernetif.c.o +.pio/build/esp32-c6-devkitm-1/esp_netif/lwip/netif/wlanif.c.o +.pio/build/esp32-c6-devkitm-1/esp_partition/partition_target.c.o +.pio/build/esp32-c6-devkitm-1/esp_partition/partition.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/esp32c6/phy_init_data.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/src/btbb_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/src/lib_printf.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/src/phy_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/src/phy_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_phy/src/phy_override.c.o +.pio/build/esp32-c6-devkitm-1/esp_pm/pm_impl.c.o +.pio/build/esp32-c6-devkitm-1/esp_pm/pm_locks.c.o +.pio/build/esp32-c6-devkitm-1/esp_pm/pm_trace.c.o +.pio/build/esp32-c6-devkitm-1/esp_psram/system_layer/esp_psram_mspi.c.o +.pio/build/esp32-c6-devkitm-1/esp_ringbuf/ringbuf.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_crc.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_efuse.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_gpio.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_hp_regi2c_esp32c6.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_multi_heap.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_print.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_serial_output.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_spiflash.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_sys.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_systimer.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_tlsf.c.o +.pio/build/esp32-c6-devkitm-1/esp_rom/patches/esp_rom_usb_serial.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/esp_crypto_lock.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/esp_crypto_periph_clk.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/esp_dpa_protection.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/esp_ds.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/esp_hmac.c.o +.pio/build/esp32-c6-devkitm-1/esp_security/src/init.c.o +.pio/build/esp32-c6-devkitm-1/esp_stdio/stdio_simple.c.o +.pio/build/esp32-c6-devkitm-1/esp_stdio/stdio_syscalls_simple.c.o +.pio/build/esp32-c6-devkitm-1/esp_stdio/stdio_vfs.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/crosscore_int.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/esp_err.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/esp_ipc.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/esp_system.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/freertos_hooks.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/hw_stack_guard.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/int_wdt.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/panic.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/stack_check.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/startup_funcs.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/startup.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/system_time.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/systick_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/ubsan.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/xt_wdt.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/cpu_start.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/esp_system_chip.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/image_process.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/panic_handler.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/arch/riscv/debug_helpers.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/arch/riscv/debug_stubs.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/arch/riscv/expression_with_stack.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/arch/riscv/panic_arch.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/soc/esp32c6/cache_err_int.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/soc/esp32c6/clk.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/soc/esp32c6/reset_reason.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/port/soc/esp32c6/system_internal.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/task_wdt/task_wdt_impl_timergroup.c.o +.pio/build/esp32-c6-devkitm-1/esp_system/task_wdt/task_wdt.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/esp_timer_etm.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/esp_timer_impl_common.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/esp_timer_impl_systimer.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/esp_timer_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/esp_timer.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/ets_timer_legacy.c.o +.pio/build/esp32-c6-devkitm-1/esp_timer/src/system_time.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/esp32c6/esp_adapter.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/regulatory/esp_wifi_regulatory.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/lib_printf.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/mesh_event.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/smartconfig_ack.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/smartconfig.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/wifi_default_ap.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/wifi_default.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/wifi_init.c.o +.pio/build/esp32-c6-devkitm-1/esp_wifi/src/wifi_netif.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/diskio/diskio_rawflash.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/diskio/diskio_sdmmc.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/diskio/diskio_wl.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/diskio/diskio.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/port/freertos/ffsystem.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/src/ff.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/src/ffunicode.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/vfs/vfs_fat_sdmmc.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/vfs/vfs_fat_spiflash.c.o +.pio/build/esp32-c6-devkitm-1/fatfs/vfs/vfs_fat.c.o +.pio/build/esp32-c6-devkitm-1/freertos/app_startup.c.o +.pio/build/esp32-c6-devkitm-1/freertos/heap_idf.c.o +.pio/build/esp32-c6-devkitm-1/freertos/port_common.c.o +.pio/build/esp32-c6-devkitm-1/freertos/port_systick.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/event_groups.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/list.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/queue.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/stream_buffer.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/tasks.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/timers.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/portable/riscv/port.c.o +.pio/build/esp32-c6-devkitm-1/freertos/FreeRTOS-Kernel/portable/riscv/portasm.S.o +.pio/build/esp32-c6-devkitm-1/freertos/esp_additions/idf_additions_event_groups.c.o +.pio/build/esp32-c6-devkitm-1/freertos/esp_additions/idf_additions.c.o +.pio/build/esp32-c6-devkitm-1/gdbinit/connect +.pio/build/esp32-c6-devkitm-1/gdbinit/gdbinit +.pio/build/esp32-c6-devkitm-1/gdbinit/prefix_map +.pio/build/esp32-c6-devkitm-1/gdbinit/py_extensions +.pio/build/esp32-c6-devkitm-1/gdbinit/symbols +.pio/build/esp32-c6-devkitm-1/hal/cache_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/color_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/efuse_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/etm_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/hal_utils.c.o +.pio/build/esp32-c6-devkitm-1/hal/mmu_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/esp32c6/efuse_hal.c.o +.pio/build/esp32-c6-devkitm-1/hal/esp32c6/etm_periph.c.o +.pio/build/esp32-c6-devkitm-1/hal/esp32c6/modem_clock_hal.c.o +.pio/build/esp32-c6-devkitm-1/heap/heap_caps_base.c.o +.pio/build/esp32-c6-devkitm-1/heap/heap_caps_init.c.o +.pio/build/esp32-c6-devkitm-1/heap/heap_caps.c.o +.pio/build/esp32-c6-devkitm-1/heap/multi_heap.c.o +.pio/build/esp32-c6-devkitm-1/heap/port/memory_layout_utils.c.o +.pio/build/esp32-c6-devkitm-1/heap/port/esp32c6/memory_layout.c.o +.pio/build/esp32-c6-devkitm-1/http_parser/http_parser.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/esp_ieee802154.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_ack.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_dev.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_event.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_frame.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_pib.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_sec.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_timer.c.o +.pio/build/esp32-c6-devkitm-1/ieee802154/driver/esp_ieee802154_util.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_format_text.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_print.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_timestamp_common.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log.c.o +.pio/build/esp32-c6-devkitm-1/log/src/util.c.o +.pio/build/esp32-c6-devkitm-1/log/src/buffer/log_buffers.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_level/log_level.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_level/tag_log_level/tag_log_level.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_level/tag_log_level/cache/log_binary_heap.c.o +.pio/build/esp32-c6-devkitm-1/log/src/log_level/tag_log_level/linked_list/log_linked_list.c.o +.pio/build/esp32-c6-devkitm-1/log/src/os/log_lock.c.o +.pio/build/esp32-c6-devkitm-1/log/src/os/log_timestamp.c.o +.pio/build/esp32-c6-devkitm-1/log/src/os/log_write.c.o +.pio/build/esp32-c6-devkitm-1/log/src/os/util.c.o +.pio/build/esp32-c6-devkitm-1/lwip/apps/dhcpserver/dhcpserver.c.o +.pio/build/esp32-c6-devkitm-1/lwip/apps/ping/ping_sock.c.o +.pio/build/esp32-c6-devkitm-1/lwip/apps/sntp/sntp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/api_lib.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/api_msg.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/err.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/if_api.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/netbuf.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/netdb.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/netifapi.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/sockets.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/api/tcpip.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/apps/netbiosns/netbiosns.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/apps/sntp/sntp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/def.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/dns.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/inet_chksum.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/init.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ip.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/mem.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/memp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/netif.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/pbuf.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/raw.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/stats.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/sys.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/tcp_in.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/tcp_out.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/tcp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/timeouts.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/udp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/autoip.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/dhcp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/etharp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/icmp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/igmp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/ip4_addr.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/ip4_frag.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/ip4_napt.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv4/ip4.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/dhcp6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/ethip6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/icmp6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/inet6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/ip6_addr.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/ip6_frag.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/ip6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/mld6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/core/ipv6/nd6.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/bridgeif_fdb.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/bridgeif.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ethernet.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/slipif.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/auth.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/ccp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/chap_ms.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/chap-md5.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/chap-new.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/demand.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/eap.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/ecp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/eui64.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/fsm.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/ipcp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/ipv6cp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/lcp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/magic.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/mppe.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/multilink.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/ppp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/pppapi.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/pppcrypt.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/pppoe.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/pppol2tp.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/pppos.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/upap.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/utils.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/vj.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/polarssl/arc4.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/polarssl/des.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/polarssl/md4.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/polarssl/md5.c.o +.pio/build/esp32-c6-devkitm-1/lwip/lwip/src/netif/ppp/polarssl/sha1.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/acd_dhcp_check.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/if_index.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/sockets_ext.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/debug/lwip_debug.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/esp32xx/vfs_lwip.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/freertos/sys_arch.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/hooks/lwip_default_hooks.c.o +.pio/build/esp32-c6-devkitm-1/lwip/port/hooks/tcp_isn_default.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/esp_crt_bundle/esp_crt_bundle.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/debug.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/error.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/mbedtls_config.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/mps_reader.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/mps_trace.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/pkcs7.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_cache.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_ciphersuites.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_client.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_cookie.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_debug_helpers_generated.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_msg.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_ticket.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls12_client.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls12_server.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls13_client.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls13_generic.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls13_keys.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/ssl_tls13_server.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/timing.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/version_features.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/version.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509_create.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509_crl.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509_crt.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509_csr.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509_oid.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509write_crt.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509write_csr.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/library/x509write.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_crypto_client.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_crypto_driver_wrappers_no_static.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_crypto_slot_management.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_crypto_storage.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_crypto.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/psa_its_file.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/tf_psa_crypto_config.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/core/tf_psa_crypto_version.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/aes.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/aesce.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/aesni.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/aria.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/asn1parse.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/asn1write.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/base64.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/bignum_core.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/bignum_mod_raw.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/bignum_mod.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/bignum.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/block_cipher.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/camellia.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ccm.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/chacha20.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/chachapoly.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/cipher_wrap.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/cipher.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/cmac.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/constant_time.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ctr_drbg.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecdh.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecdsa.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecjpake.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecp_curves_new.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecp_curves.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ecp.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/entropy_poll.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/entropy.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/gcm.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/hmac_drbg.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/lmots.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/lms.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/md.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/md5.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/memory_buffer_alloc.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/nist_kw.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/oid.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pem.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pk_ecc.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pk_rsa.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pk_wrap.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pk.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pkcs5.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pkparse.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/pkwrite.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/platform_util.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/platform.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/poly1305.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_aead.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_cipher.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_ecp.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_ffdh.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_hash.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_mac.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_pake.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_crypto_rsa.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/psa_util.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/ripemd160.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/rsa_alt_helpers.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/rsa.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/sha1.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/sha3.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/sha256.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/sha512.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/builtin/src/threading.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/everest/library/everest.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/everest/library/Hacl_Curve25519_joined.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/everest/library/x25519.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/p256-m/p256-m_driver_entrypoints.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/mbedtls/tf-psa-crypto/drivers/p256-m/p256-m/p256-m.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_hardware.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_hmac_pbkdf2.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_mem.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_platform_time.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_psa_crypto_init.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/esp_timing.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/mbedtls_debug.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/net_sockets.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/esp_aes_common.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/esp_aes_gcm.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/esp_aes_xts.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/esp_aes.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/dma/esp_aes_dma_core.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/aes/dma/esp_aes_gdma_impl.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/bignum/bignum_alt.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/bignum/esp_bignum.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/crypto_shared_gdma/esp_crypto_shared_gdma.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/ecc/ecc_alt.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/ecc/esp_ecc.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_crypto_storage/esp_psa_its.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_aes/psa_crypto_driver_esp_aes_gcm.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_aes/psa_crypto_driver_esp_aes.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_mac/psa_crypto_driver_esp_cmac.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_mac/psa_crypto_driver_esp_hmac_opaque.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_mac/psa_crypto_driver_esp_hmac_transparent.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_md/psa_crypto_driver_esp_md5.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_rsa_ds/psa_crypto_driver_esp_rsa_ds_utilities.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_rsa_ds/psa_crypto_driver_esp_rsa_ds.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_sha/psa_crypto_driver_esp_sha.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_sha/core/psa_crypto_driver_esp_sha1.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_sha/core/psa_crypto_driver_esp_sha256.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/psa_driver/esp_sha/core/psa_crypto_driver_esp_sha512.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/sha/esp_sha.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/sha/core/esp_sha_gdma_impl.c.o +.pio/build/esp32-c6-devkitm-1/mbedtls/port/sha/core/sha.c.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_api.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_bootloader_aes.c.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_bootloader_xts_aes.c.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_bootloader.c.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_cxx_api.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_encrypted_partition.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_handle_locked.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_handle_simple.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_item_hash_list.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_page.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_pagemanager.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_partition_lookup.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_partition_manager.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_partition.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_platform.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_storage.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_flash/src/nvs_types.cpp.o +.pio/build/esp32-c6-devkitm-1/nvs_sec_provider/nvs_sec_provider.c.o +.pio/build/esp32-c6-devkitm-1/protobuf-c/protobuf-c/protobuf-c/protobuf-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/proto-c/constants.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/proto-c/sec0.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/proto-c/sec1.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/proto-c/sec2.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/proto-c/session.pb-c.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/common/protocomm.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/crypto/srp6a/esp_srp_mpi.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/crypto/srp6a/esp_srp.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/security/security2.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/transports/protocomm_console.c.o +.pio/build/esp32-c6-devkitm-1/protocomm/src/transports/protocomm_httpd.c.o +.pio/build/esp32-c6-devkitm-1/pthread/pthread_cond_var.c.o +.pio/build/esp32-c6-devkitm-1/pthread/pthread_local_storage.c.o +.pio/build/esp32-c6-devkitm-1/pthread/pthread_rwlock.c.o +.pio/build/esp32-c6-devkitm-1/pthread/pthread_semaphore.c.o +.pio/build/esp32-c6-devkitm-1/pthread/pthread.c.o +.pio/build/esp32-c6-devkitm-1/riscv/instruction_decode.c.o +.pio/build/esp32-c6-devkitm-1/riscv/interrupt_plic.c.o +.pio/build/esp32-c6-devkitm-1/riscv/interrupt.c.o +.pio/build/esp32-c6-devkitm-1/riscv/rv_utils.c.o +.pio/build/esp32-c6-devkitm-1/riscv/vectors_intc.S.o +.pio/build/esp32-c6-devkitm-1/riscv/vectors.S.o +.pio/build/esp32-c6-devkitm-1/rt/FreeRTOS_POSIX_mqueue.c.o +.pio/build/esp32-c6-devkitm-1/rt/FreeRTOS_POSIX_utils.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_blockdev.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_cmd.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_common.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_init.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_io.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_mmc.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sdmmc_sd.c.o +.pio/build/esp32-c6-devkitm-1/sdmmc/sd_pwr_ctrl/sd_pwr_ctrl.c.o +.pio/build/esp32-c6-devkitm-1/soc/dport_access_common.c.o +.pio/build/esp32-c6-devkitm-1/soc/lldesc.c.o +.pio/build/esp32-c6-devkitm-1/soc/esp32c6/gpio_periph.c.o +.pio/build/esp32-c6-devkitm-1/soc/esp32c6/interrupts.c.o +.pio/build/esp32-c6-devkitm-1/soc/esp32c6/mpi_periph.c.o +.pio/build/esp32-c6-devkitm-1/soc/esp32c6/power_supply_periph.c.o +.pio/build/esp32-c6-devkitm-1/soc/esp32c6/system_retention_periph.c.o +.pio/build/esp32-c6-devkitm-1/specs/picolibc.specs +.pio/build/esp32-c6-devkitm-1/spi_flash/cache_utils.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/esp_flash_api.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/esp_flash_spi_init.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/flash_brownout_hook.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/flash_mmap.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/flash_ops.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/memspi_host_driver.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_blockdev.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_boya.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_drivers.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_gd.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_generic.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_issi.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_mxic_opi.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_mxic.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_th.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_chip_winbond.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_os_func_app.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_os_func_noos.c.o +.pio/build/esp32-c6-devkitm-1/spi_flash/spi_flash_wrap.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/esp_spiffs.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs_api.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs/src/spiffs_cache.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs/src/spiffs_check.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs/src/spiffs_gc.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs/src/spiffs_hydrogen.c.o +.pio/build/esp32-c6-devkitm-1/spiffs/spiffs/src/spiffs_nucleus.c.o +.pio/build/esp32-c6-devkitm-1/src/main.c.o +.pio/build/esp32-c6-devkitm-1/tcp_transport/transport_internal.c.o +.pio/build/esp32-c6-devkitm-1/tcp_transport/transport_socks_proxy.c.o +.pio/build/esp32-c6-devkitm-1/tcp_transport/transport_ssl.c.o +.pio/build/esp32-c6-devkitm-1/tcp_transport/transport_ws.c.o +.pio/build/esp32-c6-devkitm-1/tcp_transport/transport.c.o +.pio/build/esp32-c6-devkitm-1/toolchain/asmflags +.pio/build/esp32-c6-devkitm-1/toolchain/cflags +.pio/build/esp32-c6-devkitm-1/toolchain/cxxflags +.pio/build/esp32-c6-devkitm-1/toolchain/ldflags +.pio/build/esp32-c6-devkitm-1/toolchain/toolchain-esp32c6.cmake +.pio/build/esp32-c6-devkitm-1/unity/unity_compat.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity_port_esp32.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity_runner.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity_utils_cache.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity_utils_freertos.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity_utils_memory.c.o +.pio/build/esp32-c6-devkitm-1/unity/port/esp/unity_utils_memory_esp.c.o +.pio/build/esp32-c6-devkitm-1/unity/unity/src/unity.c.o +.pio/build/esp32-c6-devkitm-1/vfs/nullfs.c.o +.pio/build/esp32-c6-devkitm-1/vfs/vfs_calls.c.o +.pio/build/esp32-c6-devkitm-1/vfs/vfs_eventfd.c.o +.pio/build/esp32-c6-devkitm-1/vfs/vfs_semihost.c.o +.pio/build/esp32-c6-devkitm-1/vfs/vfs.c.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/BDL_Access.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/crc32.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/Partition.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/SPI_Flash.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/wear_levelling.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/wl_blockdev.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/WL_Ext_Perf.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/WL_Ext_Safe.cpp.o +.pio/build/esp32-c6-devkitm-1/wear_levelling/WL_Flash.cpp.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_eap_client.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_hostap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_owe.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_wpa_main.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_wpa2_api_port.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_wpa3.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_wpas_glue.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/esp_wps.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/crypto_mbedtls-bignum.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/crypto_mbedtls-ec.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/crypto_mbedtls-rsa.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/crypto_mbedtls.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/fastpbkdf2.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/fastpsk.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/esp_supplicant/src/crypto/tls_mbedtls.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/port/eloop.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/port/os_xtensa.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/ap_config.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/comeback_token.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/ieee802_1x.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/ieee802_11.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/pmksa_cache_auth.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/sta_info.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/wpa_auth_ie.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/ap/wpa_auth.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/common/dragonfly.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/common/ieee802_11_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/common/sae_pk.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/common/sae.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/common/wpa_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/aes-ccm.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/aes-gcm.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/aes-siv.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/aes-unwrap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/aes-wrap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/ccmp.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/crypto_ops.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/des-internal.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/dh_group5.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/dh_groups.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/md4-internal.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/ms_funcs.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/rc4.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha1-prf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha1-tlsprf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha1-tprf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha256-kdf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha256-prf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha256-tlsprf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha384-prf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/crypto/sha384-tlsprf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_common/eap_wsc_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/chap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_fast_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_fast_pac.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_fast.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_mschapv2.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_peap_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_peap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_tls_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_tls.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap_ttls.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/eap.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/eap_peer/mschapv2.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/rsn_supp/pmksa_cache.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/rsn_supp/wpa_ie.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/rsn_supp/wpa.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/base64.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/bitfield.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/ext_password.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/json.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/uuid.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/wpa_debug.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/utils/wpabuf.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_attr_build.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_attr_parse.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_attr_process.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_common.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_dev_attr.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps_enrollee.c.o +.pio/build/esp32-c6-devkitm-1/wpa_supplicant/src/wps/wps.c.o diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..f7b40dd --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,240 @@ +# AGENTS.md + +## Purpose + +This repository contains firmware and a web application for an ESP32-C6 Mini built with Visual Studio Code and PlatformIO. + +These instructions are intended for Codex and other coding agents working in this repository. Prefer small, reviewable changes and keep the firmware suitable for a resource-constrained embedded device. + +## Sources and instruction scope + +- Treat every file under `sources/` as read-only reference material. +- Do not edit, rename, move, or delete files under `sources/`. +- Files under `sources/` may be replaced when the ChatGPT project is synchronized. +- A more deeply nested `AGENTS.md`, if present, takes precedence for files in its directory tree. +- Read `MVP.md` before making architectural or gameplay changes. +- Once present, treat `platformio.ini` as the source of truth for the PlatformIO environments, board identifier, framework, build flags, dependency versions, flash layout, and upload settings. +- Do not assume that every board sold as “ESP32-C6 Mini” has the same flash size, pinout, LED polarity, or PlatformIO board identifier. + +## Expected project layout + +Use the conventional PlatformIO layout unless the existing project deliberately uses another structure: + +```text +. +├── platformio.ini # PlatformIO environments and dependencies +├── include/ # Public project headers +├── src/ # Firmware sources and main.cpp +├── lib/ # Project-specific reusable libraries +├── data/ # LittleFS web assets +├── test/ # PlatformIO unit tests +├── scripts/ # Build and validation helpers +├── MVP.md # Product and architecture requirements +└── AGENTS.md # Repository instructions +``` + +Do not edit generated content under `.pio/`. Do not commit build products, serial logs, local secrets, or editor-specific temporary files. + +## Working method + +Before editing: + +1. Read the relevant requirements and existing implementation. +2. Inspect `platformio.ini` and use an existing environment instead of inventing one. +3. Search for repository conventions, existing abstractions, and tests. +4. Identify whether the change affects firmware, browser assets, the API contract, stored data, or hardware configuration. + +While editing: + +- Make the smallest coherent change that satisfies the request. +- Preserve unrelated user changes and avoid broad formatting rewrites. +- Keep hardware-specific values in configuration rather than scattering them through the code. +- Update documentation and tests when behavior or public interfaces change. +- Do not add a dependency when a small, clear implementation using the existing stack is sufficient. +- Pin third-party PlatformIO dependencies to known compatible versions in `platformio.ini`. +- Never patch dependency sources inside `.pio/libdeps`. + +After editing: + +1. Run the narrowest relevant tests. +2. Build every affected PlatformIO environment. +3. Check compiler output for new warnings, memory pressure, and image-size regressions. +4. Summarize what changed, what was verified, and anything that still requires physical hardware. + +## PlatformIO commands + +Use the repository's actual environment names. List environments or inspect `platformio.ini` before supplying `-e `. + +Common non-destructive checks: + +```sh +pio run +pio run -e +pio test +pio test -e +pio run -t size +``` + +Use project-provided formatting, linting, or validation scripts when available. Do not invent a formatting command without checking the repository configuration. + +The following operations affect connected hardware and must only be performed when the user asks for them or clearly authorizes hardware interaction: + +```sh +pio run -e -t upload +pio run -e -t uploadfs +pio device monitor +pio run -t erase +``` + +Treat flash erase as destructive. Confirm the target device and environment before uploading or erasing. Never leave a serial monitor running indefinitely. + +## Firmware design rules + +### Architecture + +- Keep domain logic independent from Arduino callbacks and transport code where practical. +- Separate Wi-Fi, HTTP/WebSocket transport, session handling, persistence, device control, and application logic. +- Route all state-changing requests through a single validated application layer. +- Keep the ESP32 authoritative. Browser-side validation improves usability but must not enforce the only copy of a rule. +- Use explicit state machines for multi-step workflows rather than loosely related Boolean flags. +- Keep public headers small and avoid unnecessary global state. + +### Memory and performance + +- Prefer fixed-size arrays, fixed-width integer types, bounded buffers, and predictable ownership. +- Avoid unbounded `String` concatenation, repeated heap allocation, large temporary JSON documents, and unnecessary copies. +- Set explicit limits for sessions, WebSocket clients, request bodies, queue sizes, names, and messages. +- Parse all external input with bounds checks. +- Stream or serve files from LittleFS instead of embedding large duplicate assets in RAM. +- Measure rather than guess when changing task stacks, JSON capacity, filesystem partitions, or connection limits. +- Check final flash and RAM usage after meaningful changes. + +### Timing and responsiveness + +- Avoid long blocking calls and long `delay()` operations. +- Use `millis()`-based scheduling, timers, queues, or tasks for delayed work. +- Keep HTTP, WebSocket, timer, and interrupt callbacks short. +- Never perform filesystem writes, large serialization, or expensive game logic in an interrupt service routine. +- Ensure the main loop and network stack remain responsive under reconnects and multiple clients. +- Add timeouts to network and peripheral operations. + +### Concurrency + +- Document which task or callback owns mutable state. +- Protect state shared between callbacks or FreeRTOS tasks with an appropriate mutex, queue, or critical section. +- Do not hold locks while sending network data or performing slow I/O. +- Prefer taking a bounded snapshot before serializing state for clients. +- Make repeated requests idempotent where retries are expected. + +### C++ conventions + +- Follow the C++ standard and warning flags configured by the project. +- Use `enum class`, `constexpr`, `const`, fixed-width integers, and RAII where supported. +- Prefer clear value types and explicit ownership over raw heap allocation. +- Check return values from Wi-Fi, filesystem, JSON, and server operations. +- Avoid macros except for compile-time configuration, platform compatibility, or logging wrappers. +- Keep functions focused and name units in identifiers when values represent milliseconds, bytes, volts, or similar quantities. +- Do not enable exceptions or RTTI unless the project already uses and budgets for them. + +### Logging and errors + +- Use consistent log levels and concise messages. +- Never log Wi-Fi passwords, session tokens, private payloads, or other credentials. +- Avoid high-frequency logs in normal operation. +- Return stable machine-readable error codes from APIs and separate them from Russian user-facing messages. +- Fail safely: reject invalid commands without partially modifying application state. + +## Wi-Fi and configuration + +- The ESP32-C6 Mini operates as a station on the home Wi-Fi network unless requirements say otherwise. +- Keep SSIDs, passwords, tokens, certificates, and private endpoints out of tracked source files. +- Store local secrets in a gitignored file or inject them through build-time configuration. +- Provide a tracked example file with placeholder values when setup would otherwise be unclear. +- Never replace real credentials or erase device configuration unless explicitly requested. +- Reconnect with bounded exponential backoff; do not block the application indefinitely while Wi-Fi is unavailable. +- The application must handle a changing DHCP address. mDNS may be added as a convenience but must not be the only documented access method unless verified on the target network. + +## Web server and browser application + +- Store required HTML, CSS, and JavaScript locally in `data/` so the application does not depend on internet access or a CDN. +- Prefer framework-free browser code for small interfaces. Justify large client dependencies by a concrete requirement. +- Keep the HTTP API versionable and document changes to request and response schemas. +- Validate authentication token, role, current state, game ID, coordinates, lengths, and content type on the server. +- Generate role-specific responses. Never send hidden or privileged state and rely on CSS or JavaScript to conceal it. +- Escape user-provided text before rendering it in HTML. +- Use WebSocket for immediate updates and provide the HTTP polling fallback required by `MVP.md`. +- Implement reconnect backoff, heartbeat handling, state versioning, and full resynchronization after missed events. +- Avoid broadcasting one privileged payload to all clients; construct a safe view for each role. +- Set appropriate cache headers. Do not cache personalized API responses. +- Compress static assets during the build when supported, but keep the uncompressed sources maintainable. +- Design touch interactions for phones and tablets. Do not rely on hover or color alone. + +## Filesystem and persistence + +- Treat LittleFS layout and the flash partition table as part of the product configuration. +- Check mount failures and report them clearly; do not silently format a filesystem unless the product explicitly requires that behavior. +- Use atomic replace patterns for important persisted files where possible. +- Minimize flash writes and avoid writing frequently changing counters on every event. +- The MVP keeps active game state and statistics in RAM and resets them after reboot, as specified in `MVP.md`. + +## Testing expectations + +### Host or native tests + +Keep pure application logic buildable without ESP32 hardware where practical. Unit-test at least: + +- state transitions; +- bounds and malformed input; +- game or domain rules; +- random-generation invariants; +- serialization and role-specific data filtering; +- retry and idempotency behavior; +- bot or automation logic. + +Use a deterministic random seed in tests and do not use the production seed as an assertion target. + +### Device tests + +Features involving Wi-Fi, LittleFS, WebSocket, timing, heap behavior, or peripherals require a final device check. When hardware is available, verify: + +- cold boot and reconnect behavior; +- static asset loading from LittleFS; +- multiple simultaneous clients; +- WebSocket loss and HTTP fallback; +- repeated workflows without heap degradation; +- flash/RAM usage and watchdog stability; +- operation on the exact ESP32-C6 Mini variant. + +Do not claim device verification when only a local build or host test was performed. + +## Security and robustness + +- Treat every HTTP, WebSocket, serial, and persisted value as untrusted input. +- Reject oversized, malformed, stale, unauthorized, and out-of-state requests. +- Use cryptographically strong random session tokens when the platform API provides suitable entropy. +- Do not put credentials in browser assets, logs, examples, tests, or error responses. +- Avoid undefined behavior, unchecked indexing, integer overflow, and unsafe string functions. +- Add rate or queue limits where one client could exhaust device memory or monopolize processing. +- A home network is not a security boundary. Document any deliberately simplified MVP security assumptions. + +## Documentation + +- Keep setup steps reproducible for a new developer using VS Code and PlatformIO. +- Document the exact board variant, USB/serial behavior, flash size, PlatformIO environment, filesystem upload step, and access URL once known. +- Update `MVP.md` only when product scope or agreed behavior changes. +- Update API documentation whenever routes, messages, events, error codes, or authorization rules change. +- Record hardware-only verification steps rather than implying they were automated. + +## Definition of done + +A change is complete when all applicable conditions are met: + +- The requested behavior is implemented with no unrelated changes. +- Affected PlatformIO environments build successfully. +- Relevant automated tests pass. +- No new compiler warnings or exposed secrets are introduced. +- Input bounds, failure paths, reconnects, and role permissions are handled. +- Flash and RAM impact are acceptable for the target ESP32-C6 Mini. +- Web assets work without an external internet dependency. +- Documentation and examples reflect the new behavior. +- Any remaining physical-device checks are explicitly listed in the handoff. diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..376b49e --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,3 @@ +cmake_minimum_required(VERSION 3.16.0) +include($ENV{IDF_PATH}/tools/cmake/project.cmake) +project(battleship) diff --git a/PLANS.md b/PLANS.md new file mode 100644 index 0000000..1358a59 --- /dev/null +++ b/PLANS.md @@ -0,0 +1,286 @@ +# ESP32 Battleship Implementation Plan + +## Purpose of the initial milestones + +Before implementing the complete game, experimentally verify that the specific ESP32-C6 Mini board: + +- can be flashed and run reliably with the selected PlatformIO and Arduino stack; +- can connect to the home Wi-Fi network; +- can store and serve the web interface from LittleFS; +- can support HTTP, WebSocket, and HTTP polling fallback; +- has enough flash, RAM, and processing capacity for one game, two players, and up to eight spectators; +- can provide role-specific state without exposing hidden game data. + +Full MVP implementation may begin only after Milestone 004 is completed with a documented **Go** decision. + +## Codex execution rules + +This file is an ordered execution queue for Codex. + +1. Work on milestones strictly in numerical order. +2. In one task, execute only the first milestone whose status is `READY`. +3. Do not start the next milestone during the same task unless the user explicitly requests it. +4. A milestone may become `READY` only after all milestones listed under `Depends on` are `DONE`. +5. Before implementation, change the selected milestone status from `READY` to `IN PROGRESS`. +6. Do not mark a milestone `DONE` until every acceptance criterion has objective evidence. +7. If a criterion cannot be met, set the status to `BLOCKED` and record the reason, evidence, and proposed next action in that milestone's execution record. +8. If implementation changes the plan, preserve the intent and acceptance criteria of already completed milestones. +9. Add future milestones only at the end of this file. Do not insert or renumber milestones after work has started. +10. Never edit files under `sources/`; they are read-only reference material. +11. Never store Wi-Fi credentials or other secrets in tracked project files. + +Allowed statuses: + +- `BLOCKED` — work cannot proceed until a recorded issue is resolved; +- `READY` — all dependencies are complete and the milestone may be executed; +- `IN PROGRESS` — this is the milestone currently being executed; +- `DONE` — all acceptance criteria have passed and evidence is recorded. + +At most one milestone may have the status `IN PROGRESS`. + +## Execution record format + +When completing or blocking a milestone, append an execution record inside that milestone using this format: + +```text +Execution record +- Date: +- Board model and revision: +- Toolchain and library versions: +- Result: PASS | FAIL | BLOCKED +- Evidence: +- Measurements: +- Issues or deviations: +- Next action: +``` + +Evidence should include the exact test scenario, relevant logs, reset reasons, resource measurements, and paths to created project files. A statement such as “works in general” is not sufficient. + +--- + +## Milestone 000 — Identify the board and lock the technical baseline + +**Status:** `BLOCKED` +**Depends on:** none + +### Objective + +Remove the uncertainty hidden by the generic name “ESP32-C6 Mini” and establish a reproducible build configuration. + +### Work + +- Record the manufacturer, exact board model, and revision from the physical markings and authoritative documentation. +- Record the ESP32-C6 module variant, flash size, presence and size of PSRAM, USB connection type, and built-in LED. +- Locate the schematic or pinout and identify pins used by USB, UART, flash, and the built-in LED. +- Select the exact PlatformIO `board` identifier. If no exact profile exists, select the closest ESP32-C6 profile and explicitly configure flash and partition parameters. +- Pin the PlatformIO, Espressif 32 platform, and Arduino Core versions. +- Define an initial partition layout that provides space for both the application and LittleFS. +- Create a short board passport containing a photo of the markings, documentation links, and confirmed specifications. + +### Deliverables + +- A board passport in the project documentation. +- An initial `platformio.ini` with pinned versions. +- A documented memory map and selected partition layout. + +### Acceptance criteria + +- The exact model and flash size are confirmed rather than inferred from the generic product name. +- The build configuration does not depend on floating package versions. +- The partition layout includes both an application partition and LittleFS. +- Every unknown board parameter is either resolved or recorded as a specific risk to test in Milestone 001. + +### Blocking conditions + +- The flash size or a safe flashing configuration cannot be determined. +- The available toolchain has no usable ESP32-C6 support for this board. + +### Completion action + +If all criteria pass, set this milestone to `DONE`, append its execution record, and change Milestone 001 from `BLOCKED` to `READY`. + +Execution record +- Date: 2026-08-27 +- Board model and revision: Unknown; no physical markings or board photograph were supplied. +- Toolchain and library versions: PlatformIO Core 6.1.19; locally installed `platformio/espressif32` 7.0.1; ESP-IDF 6.0.1; Arduino Core not installed. +- Result: BLOCKED +- Evidence: `docs/BOARD_PASSPORT.md`; no `sources/` directory or board image exists; no `/dev/ttyACM*`, `/dev/ttyUSB*`, `/dev/serial/by-id`, or `/dev/serial/by-path` device is exposed; the local `esp32-c6-devkitm-1` profile declares 4 MB while `sdkconfig.esp32-c6-devkitm-1` declares 2 MB and a single-app partition table without LittleFS. +- Measurements: No hardware measurements possible. Repository metadata reports conflicting 4 MB and 2 MB flash configurations. +- Issues or deviations: Exact manufacturer/model/revision, module, flash, PSRAM, USB implementation, LED, and board pinout cannot be confirmed. A safe flash/partition configuration and pinned Arduino baseline therefore cannot be selected. No firmware or hardware configuration was changed. +- Next action: Supply clear photographs of both board sides and the matching manufacturer documentation, and expose the board for an `esptool.py flash_id` check. Then reconcile the flash size, select a LittleFS-capable partition CSV, pin the compatible PlatformIO platform and Arduino Core, and rerun Milestone 000. Milestone 001 remains `BLOCKED`. + +--- + +## Milestone 001 — Prove build, flashing, and stable basic operation + +**Status:** `BLOCKED` +**Depends on:** Milestone 000 + +### Objective + +Prove that the configuration selected in Milestone 000 works reliably on the physical board. + +### Work + +- Create a minimal firmware project with serial logging and reports for chip information, flash size, reset reason, and available heap. +- Flash the board and test startup after a manual reset, a full power cycle, and several repeated flashing cycles. +- Test the built-in LED if present and confirm that its pin does not conflict with USB or flash operation. +- Add uptime and periodic free-heap reporting. +- Run the firmware continuously for at least two hours without Wi-Fi and record every reset reason. + +### Required measurements + +- Firmware size and flash usage. +- Free heap immediately after startup and minimum free heap during the run. +- Boot and reset reasons. +- Any errors, watchdog resets, or unexpected restarts. + +### Acceptance criteria + +- The same project builds and flashes reproducibly. +- The board starts correctly after reset and full power loss. +- The two-hour run completes without a hang, watchdog reset, or unexpected restart. +- Free heap does not show a persistent downward trend. +- The detected flash size matches the configuration established in Milestone 000. + +### Failure path + +- First verify the board profile, USB mode, flash frequency, and partition layout. +- If Arduino Core is unstable on this board, repeat only this bring-up test with ESP-IDF before rejecting the board. + +### Completion action + +If all criteria pass, set this milestone to `DONE`, append its execution record, and change Milestone 002 from `BLOCKED` to `READY`. + +--- + +## Milestone 002 — Prove the Wi-Fi, LittleFS, and HTTP vertical slice + +**Status:** `BLOCKED` +**Depends on:** Milestone 001 + +### Objective + +Prove the MVP's basic delivery path: home Wi-Fi, LittleFS, and HTTP served directly by the ESP32. + +### Work + +- Connect the board to a predefined home Wi-Fi network in station mode. +- Keep Wi-Fi credentials in a local configuration file excluded from version control. +- Implement automatic reconnection after a temporary Wi-Fi outage without a manual reset. +- Mount LittleFS and upload test `index.html`, CSS, and JavaScript files. +- Implement `GET /`, static asset delivery, and `GET /api/health`. +- Return uptime, Wi-Fi state, RSSI, free heap, minimum free heap, and build version from `/api/health`, without exposing secrets. +- Open the page from at least one phone and one tablet or second client device on the same network. +- Verify MIME types, gzip delivery for static assets, and appropriate cache headers. + +### Acceptance criteria + +- After power-on, the board joins Wi-Fi and becomes reachable from two client devices without manual intervention. +- The page and all assets load locally without a CDN or internet access. +- After the router or Wi-Fi connection is interrupted and restored, the board becomes reachable again without reflashing or a user-triggered reset. +- `/api/health` remains responsive during repeated page reloads. +- A LittleFS mount failure is visible in the serial log and does not cause an endless reboot loop. +- Measured firmware, filesystem, and heap usage are recorded. + +### Blocking conditions + +- Wi-Fi or HTTP repeatedly hangs and cannot recover in software. +- The filesystem cannot hold the minimum interface while retaining safe space for firmware growth. + +### Completion action + +If all criteria pass, set this milestone to `DONE`, append its execution record, and change Milestone 003 from `BLOCKED` to `READY`. + +--- + +## Milestone 003 — Prove real-time transport, fallback, and state isolation + +**Status:** `BLOCKED` +**Depends on:** Milestone 002 + +### Objective + +Prove that the selected server stack works on ESP32-C6 and validate WebSocket delivery, HTTP fallback, versioning, and role-specific state before implementing game logic. + +### Work + +- Select and pin an HTTP/WebSocket library version compatible with the pinned Arduino Core and ESP32-C6. +- Implement a test state containing a monotonically increasing `version`, public data, and simulated hidden data. +- Add WebSocket endpoint `/ws`, role-specific state snapshots, and `GET /api/state?version=N`. +- In the test page, retry WebSocket after 1, 2, 5, and 10 seconds and poll HTTP every 2 seconds while WebSocket is unavailable. +- Connect two player clients and at least two spectator clients simultaneously. +- Deliberately interrupt WebSocket, verify the transition to HTTP polling, and then restore WebSocket. +- Inspect player and spectator traffic to confirm that simulated hidden data is absent. +- Limit incoming message size and reject malformed JSON without crashing or leaking memory. + +### Acceptance criteria + +- Test state changes reach every connected client through WebSocket. +- While WebSocket is unavailable, clients receive current state through HTTP within approximately one polling interval. +- After WebSocket recovers, polling stops and each client receives the current `version` without losing state. +- Hidden data is absent from HTTP responses, WebSocket messages, and client-side source files. +- Malformed and oversized messages are rejected while the server remains responsive. +- A 30-minute run with four clients completes without hangs, restarts, or a persistent downward trend in free heap. + +### Fallback path + +If the asynchronous server library is unstable with the pinned Arduino Core, repeat only this vertical slice with ESP-IDF and `esp_http_server`. Keep the protocol and acceptance criteria unchanged. + +### Completion action + +If all criteria pass, set this milestone to `DONE`, append its execution record, and change Milestone 004 from `BLOCKED` to `READY`. + +--- + +## Milestone 004 — Prove MVP capacity and make the Go/No-Go decision + +**Status:** `BLOCKED` +**Depends on:** Milestone 003 + +### Objective + +Test the expected worst-case MVP workload before investing in the complete game engine and user interface. + +### Work + +- Create a compact mock state for one game: two 10 × 10 boards, 20 ships, two player sessions, eight spectator sessions, statistics, and protocol metadata. +- Generate separate safe views for player 1, player 2, and spectators without keeping a complete JSON copy for every client at the same time. +- Connect two client devices and eight spectator connections. A local load script may simulate some spectator connections. +- Simulate a game start and at least 200 state changes with WebSocket broadcasts and HTTP polling from a subset of clients. +- Run at least 20 consecutive simulated games without rebooting the board. +- Record firmware and LittleFS sizes, current and minimum free heap, maximum JSON message size, state generation and delivery time, reconnection count, and reset reasons. +- Test recovery after Wi-Fi loss, client reconnections, and a sequence of malformed requests. +- Document a **Go**, **Go with constraints**, or **No-Go** decision. + +### Resource budgets + +Before running the capacity test, define numerical limits based on the board specifications and evidence from Milestones 000–003 for: + +- maximum firmware and static asset size; +- minimum acceptable free-heap reserve; +- maximum HTTP or WebSocket message size; +- maximum API response and update-delivery time; +- acceptable error and restart count. + +Do not adjust a threshold after seeing the result unless the execution record contains an explicit justification. + +### Acceptance criteria + +- Two players and eight spectators simultaneously receive the state intended for their roles. +- No client receives hidden opponent cells before the simulated game ends. +- Twenty simulated games complete without a hang, watchdog reset, or manual restart. +- After the tests, measured flash and heap reserves remain sufficient for `GameEngine`, `FleetGenerator`, `BotPlayer`, and the complete interface. +- Minimum free heap does not show a persistent game-to-game decline. +- State delivery recovers after Wi-Fi and WebSocket interruptions without rebooting the board. + +### Decision rules + +- **Go:** all acceptance criteria pass with sufficient measured resource reserves. Full game-engine implementation may begin. +- **Go with constraints:** the MVP is feasible only after reducing a nonessential target such as the spectator limit or interface size. Update `MVP.md` explicitly before further implementation. +- **No-Go for the current stack:** the board works, but the Arduino/server stack is unstable. Evaluate the ESP-IDF fallback. +- **No-Go for the board:** the fallback stack also fails the stability or resource criteria. Select a different board before implementing the complete game. + +### Completion action + +Set this milestone to `DONE` only for a documented **Go** decision. For any other decision, set it to `BLOCKED` and record the required scope or platform decision. Append every future milestone after this section without renumbering Milestones 000–004. diff --git a/docs/BOARD_PASSPORT.md b/docs/BOARD_PASSPORT.md new file mode 100644 index 0000000..ab65d69 --- /dev/null +++ b/docs/BOARD_PASSPORT.md @@ -0,0 +1,70 @@ +# Board passport + +## Identification status + +The target board has not been identified. No photograph of the physical +markings is available in the repository, no `sources/` directory is present, +and no serial device is exposed to the build environment. Consequently, the +manufacturer, exact board model and revision, module variant, flash size, +PSRAM, USB connection, built-in LED, and board-specific pinout cannot be +confirmed without guessing. + +Required evidence to unblock Milestone 000: + +- clear photographs of both sides of the board, including all PCB and module + markings; +- the manufacturer's product page, schematic, and pinout matching those + markings; +- the flash/module ordering code, or an `esptool.py flash_id` report from the + connected board. + +## Current repository baseline (not hardware confirmation) + +| Item | Observed value | Status | +|---|---|---| +| PlatformIO Core | 6.1.19 | Installed locally | +| PlatformIO platform | `platformio/espressif32` 7.0.1 | Installed locally; `platformio.ini` is not version-pinned | +| Framework | ESP-IDF 6.0.1 | Current project setting conflicts with the Arduino-first MVP baseline | +| Arduino Core | Not installed | Cannot be pinned and verified against this board yet | +| PlatformIO board | `esp32-c6-devkitm-1` | Unverified candidate, not evidence of the physical model | +| Board-profile flash size | 4 MB | Unverified; profile metadata only | +| Generated SDK flash size | 2 MB | Conflicts with the board profile | +| Generated partition table | Single application, no LittleFS | Does not meet Milestone 000 | + +The current configuration is not a safe flashing baseline. It must not be used +to upload firmware until the physical flash size and board identity are +confirmed. + +## Candidate reference only + +If the physical markings prove that the board is an Espressif +ESP32-C6-DevKitM-1, the matching authoritative references are: + +- [ESP32-C6-DevKitM-1 user guide](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/user_guide.html) +- [ESP32-C6-DevKitM-1 schematic](https://docs.espressif.com/projects/esp-dev-kits/en/latest/_static/esp32-c6-devkitm-1/schematics/esp32-c6-devkitm-1-schematics.pdf) +- [ESP32-C6-MINI-1 datasheet](https://www.espressif.com/sites/default/files/documentation/esp32-c6-mini-1_mini-1u_datasheet_en.pdf) + +For that board only, Espressif documents an ESP32-C6-MINI-1(U) module with +4 MB in-package SPI flash, no PSRAM, a USB-C connector connected through a +USB-to-UART bridge, UART0 on GPIO16/GPIO17, native USB D-/D+ on GPIO12/GPIO13, +and an addressable RGB LED on GPIO8. These values are deliberately not adopted +as the target specifications until the markings match. + +## Memory map and partition status + +No partition CSV has been selected because the physical flash capacity is +unknown. The eventual layout must reserve, at minimum, NVS, PHY initialization, +one application partition, and one LittleFS data partition, with offsets and +sizes validated against the confirmed flash capacity. Selecting a 4 MB layout +now could make flashing unsafe on a smaller device. + +## Risks carried to the next action + +- A generic “ESP32-C6 Mini” may not match Espressif's DevKitM-1 pinout, LED + polarity/type, USB bridge, or flash capacity. +- GPIO8, GPIO12, GPIO13, GPIO16, and GPIO17 must not be assigned from the + candidate documentation until the exact board is confirmed. +- Official `platformio/espressif32` 7.0.1 exposes the C6 DevKitM profile only + for ESP-IDF and its bundled Arduino Core 2.0.17 does not support ESP32-C6. + An exact Arduino-compatible PlatformIO platform/Core pairing must be chosen + and pinned after the board is identified, then proven by Milestone 001. diff --git a/docs/MVP.md b/docs/MVP.md new file mode 100644 index 0000000..fcff829 --- /dev/null +++ b/docs/MVP.md @@ -0,0 +1,535 @@ +# MVP: «Морской бой» на ESP32-C6 Mini + +## 1. Назначение + +Создать первую рабочую версию игры «Морской бой», полностью обслуживаемую одной платой ESP32-C6 Mini. Контроллер подключается к домашней Wi-Fi-сети, раздаёт веб-интерфейс и хранит всю игровую логику и текущее состояние в оперативной памяти. + +Играть можно с телефонов и планшетов в двух режимах: + +1. игрок против игрока с двух разных устройств; +2. игрок против ESP32. + +К активной партии могут подключаться зрители. Одновременно ESP32 обслуживает только одну партию. + +## 2. Цели MVP + +- Полностью провести партию от входа игроков до определения победителя. +- Поддержать режимы «игрок против игрока» и «игрок против ESP32». +- Обеспечить синхронное обновление интерфейсов через WebSocket. +- Использовать HTTP-опрос как автоматический резервный механизм при недоступности WebSocket. +- Не передавать игрокам и зрителям скрытое расположение неповреждённых кораблей соперника. +- Поддержать зрителей, повторную игру и статистику в пределах текущего запуска ESP32. +- Сделать русскоязычный адаптивный интерфейс прежде всего для телефонов и планшетов. + +## 3. Что не входит в MVP + +- Несколько одновременных игровых комнат. +- Игра через интернет без доступа к домашней сети. +- Регистрация, пароли и полноценные учётные записи. +- Сохранение партии и статистики после перезагрузки ESP32. +- Ручная расстановка кораблей. +- Чат, звук, таймер хода, рейтинги и история матчей. +- Отдельная точка доступа Wi-Fi, создаваемая ESP32. +- Гарантированная поддержка настольных компьютеров как целевой платформы. + +## 4. Принятые правила + +### 4.1. Поле и флот + +- Размер поля: 10 × 10 клеток. +- Столбцы обозначаются буквами А–К без буквы Ё, строки — числами 1–10. +- Классический флот каждого участника: + - 1 корабль длиной 4 клетки; + - 2 корабля длиной 3 клетки; + - 3 корабля длиной 2 клетки; + - 4 корабля длиной 1 клетку. +- Корабли располагаются только горизонтально или вертикально. +- Корабли не могут соприкасаться ни сторонами, ни углами. +- Расстановка создаётся сервером автоматически и случайно перед каждой партией. + +### 4.2. Ходы + +- Первый ход случайно назначается сервером после начала партии. +- Игрок выбирает одну ещё не обстрелянную клетку поля соперника. +- При попадании игрок сохраняет ход и стреляет снова. +- При промахе ход переходит сопернику. +- Потопленным считается корабль, у которого поражены все клетки. +- После потопления сервер автоматически отмечает окружающие корабль клетки как гарантированные промахи. +- Побеждает участник, первым уничтоживший все 10 кораблей соперника. +- Повторный выстрел по уже обработанной клетке отклоняется сервером и не меняет ход. + +Эти правила фиксируются для MVP и должны одинаково применяться к человеку и встроенному сопернику. + +## 5. Роли + +### Игрок 1 + +- Вводит отображаемое имя. +- Выбирает режим игры. +- Запускает партию, когда второй участник готов или выбран режим против ESP32. +- Видит полностью своё поле и только результаты выстрелов на поле соперника. + +### Игрок 2 + +- Доступен только в режиме «игрок против игрока». +- Вводит отображаемое имя и занимает свободное место второго игрока. +- Имеет тот же объём игровой информации, что и первый игрок. + +### Зритель + +- Вводит отображаемое имя и подключается без права выполнять игровые действия. +- Видит имена игроков, текущий ход, статистику и результаты уже выполненных выстрелов на обоих полях. +- Не видит неповреждённые корабли ни одного игрока во время партии. +- После завершения партии видит полностью раскрытые поля. + +### ESP32-соперник + +- Отображается под именем «ESP32». +- Ходит автоматически после небольшой задержки интерфейса, например 500–900 мс. +- Использует серверную стратегию и не раскрывает своё поле клиенту. + +## 6. Идентификация и сессии + +- При первом открытии пользователь вводит имя длиной 1–20 символов. +- Сервер очищает имя от управляющих символов и HTML-разметки. +- После входа сервер выдаёт случайный непрозрачный `sessionToken` и назначает роль. +- Браузер хранит токен и имя в `localStorage`. +- При кратковременной потере связи пользователь может вернуться в прежнюю роль по токену, пока ESP32 не перезагружена и место не освобождено. +- Одинаковые отображаемые имена допустимы: сервер различает клиентов по токену. +- Если оба игровых места заняты, новый пользователь может подключиться только зрителем. +- Рекомендуемый лимит MVP: до 2 игроков и 8 одновременно подключённых зрителей. Значение должно быть конфигурируемым. +- После перезагрузки ESP32 все токены, партия и статистика сбрасываются. + +Полноценная авторизация не требуется: приложение предназначено для доверенной домашней сети. Токен нужен для сохранения роли и предотвращения случайной отправки хода чужим браузером. + +## 7. Пользовательские сценарии + +### 7.1. Игрок против игрока + +1. Первый пользователь открывает адрес ESP32, вводит имя и становится игроком 1. +2. Он выбирает режим «Два игрока». +3. Второй пользователь открывает тот же адрес, вводит имя и занимает место игрока 2. +4. Сервер сообщает обоим игрокам, что партия готова к запуску. +5. Игрок 1 нажимает «Начать игру». +6. Сервер автоматически и независимо расставляет оба флота, выбирает первого игрока и рассылает разрешённое состояние всем клиентам. +7. Игроки по очереди стреляют до победы одного из них. +8. На экране результата показываются победитель, итоговая статистика и кнопка «Сыграть ещё». + +### 7.2. Игрок против ESP32 + +1. Пользователь входит как игрок 1 и выбирает режим «Против ESP32». +2. Место второго участника автоматически занимает ESP32. +3. Игрок запускает партию. +4. Сервер расставляет оба флота и выбирает первого участника. +5. Во время хода ESP32 сервер сам выполняет один или несколько выстрелов с учётом правила продолжения хода после попадания. +6. После завершения доступна повторная игра. + +### 7.3. Зритель + +1. Пользователь выбирает «Наблюдать» или автоматически получает роль зрителя, если игровые места заняты. +2. Сервер отправляет ему публичное представление текущей партии. +3. Зритель получает обновления в реальном времени, но сервер отклоняет любые команды выстрела, старта или повторной игры. + +### 7.4. Повторная игра + +- После завершения любой игрок может предложить повторную игру. +- В режиме двух игроков новый матч начинается после подтверждения обоих игроков. +- В режиме против ESP32 достаточно подтверждения человека. +- Для нового матча сервер создаёт новые случайные расстановки и заново выбирает первого участника. +- Имена, роли и накопленная статистика текущего запуска сохраняются. + +## 8. Состояния игры + +```text +LOBBY -> PREPARING -> IN_PROGRESS -> FINISHED -> REMATCH_WAIT + ^ | + +------------------------------------------------+ +``` + +- `LOBBY`: выбор режима и ожидание участников. +- `PREPARING`: генерация и проверка расстановок. +- `IN_PROGRESS`: активная партия. +- `FINISHED`: победитель определён, поля раскрыты. +- `REMATCH_WAIT`: ожидание подтверждений повторной игры. + +Каждое изменение состояния увеличивает монотонный номер `version`. Клиенты используют его для обнаружения пропущенных событий и резервного HTTP-опроса. + +## 9. Интерфейс + +### 9.1. Экраны + +1. **Подключение** — имя, кнопки «Играть» и «Наблюдать», сообщение о доступности мест. +2. **Лобби** — участники, выбор режима игроком 1, состояние готовности и запуск. +3. **Игра** — собственное поле, поле выстрелов, имя текущего игрока, статус последнего выстрела и краткая статистика. +4. **Наблюдение** — два публичных поля и ход партии без элементов управления. +5. **Результат** — победитель, раскрытые поля, статистика матча и повторная игра. + +### 9.2. Адаптивность + +- На телефоне поля показываются по одному с переключателем «Моё поле / Поле соперника». +- На планшете при достаточной ширине поля показываются рядом. +- Размер игрового поля подстраивается под ширину экрана, клетки остаются квадратными. +- Основные кнопки имеют крупную сенсорную область. +- Нельзя полагаться только на цвет: попадание, промах и корабль дополнительно различаются символом или формой. +- Перед отправкой выстрела выбранная клетка визуально подтверждается. Для уменьшения ошибочных касаний допустим режим «выбрать клетку → нажать “Огонь”». +- Интерфейс и все сообщения — только на русском языке. + +### 9.3. Обозначения клеток + +- вода — пустая синяя клетка; +- собственный корабль — контрастная заливка; +- промах — точка; +- попадание — крест; +- потопленный корабль — кресты с отдельным оформлением контура; +- выбранная цель — заметная рамка до подтверждения выстрела. + +## 10. Предлагаемая техническая реализация + +### 10.1. Базовый стек + +- **Среда:** Visual Studio Code + PlatformIO. +- **Целевая плата:** ESP32-C6 Mini. +- **Платформа:** Espressif 32. Точный идентификатор `board` в `platformio.ini` выбирается по производителю и маркировке конкретной ESP32-C6 Mini; если готового описания платы нет, используется совместимая конфигурация ESP32-C6 с явно заданными параметрами flash и разделов памяти. +- **Фреймворк:** Arduino для ESP32 как наиболее быстрый путь к MVP в PlatformIO. +- **Сеть:** штатный `WiFi` в режиме клиента домашней сети. +- **Файловая система:** LittleFS для HTML, CSS и JavaScript. +- **HTTP и WebSocket:** асинхронный веб-сервер с поддержкой ESP32-C6; конкретную совместимую библиотеку следует закрепить по версии в `platformio.ini`. +- **JSON:** ArduinoJson либо небольшой собственный сериализатор с контролируемыми буферами. +- **Фронтенд:** нативные HTML, CSS и JavaScript без обязательного фреймворка. + +Vanilla JavaScript рекомендуется для MVP, потому что игровому интерфейсу не нужен крупный UI-фреймворк. Это уменьшает размер файлов, потребление памяти и зависимость от доступа в интернет. Все необходимые ресурсы должны храниться на ESP32; CDN не должен быть обязательным для запуска игры. + +Если выбранная асинхронная библиотека окажется нестабильной на конкретной версии Arduino Core для ESP32-C6, запасной вариант — PlatformIO с ESP-IDF и встроенным `esp_http_server`, который поддерживает WebSocket. Игровая модель и протокол при этом останутся теми же. + +### 10.2. Компоненты прошивки + +- `WiFiManager` — подключение к заранее заданной домашней сети и отображение состояния связи. +- `WebServer` — статические файлы, HTTP API и WebSocket. +- `SessionManager` — токены, имена, роли, подключения и переподключения. +- `GameEngine` — правила, очередь хода, выстрелы, победа и повторная игра. +- `FleetGenerator` — случайная корректная расстановка флота. +- `BotPlayer` — выбор цели ESP32. +- `StatePresenter` — формирует отдельное безопасное представление состояния для каждого игрока и зрителей. +- `Statistics` — статистика матча и накопительные показатели до перезагрузки. + +Сетевая обработка не должна напрямую изменять массивы поля. Любая команда сначала проходит проверку сессии, роли, фазы, номера партии и очереди хода, после чего передаётся в `GameEngine`. + +## 11. Модель данных + +Пример внутренних структур на уровне концепции: + +```cpp +enum class Cell : uint8_t { Water, Ship, Miss, Hit }; +enum class Phase : uint8_t { Lobby, Preparing, InProgress, Finished, RematchWait }; +enum class Mode : uint8_t { HumanVsHuman, HumanVsBot }; +enum class Role : uint8_t { Player1, Player2, Spectator }; + +struct Ship { + uint8_t x; + uint8_t y; + uint8_t length; + bool horizontal; + uint8_t hits; +}; + +struct Board { + Cell cells[10][10]; + Ship ships[10]; + uint8_t shipsAlive; +}; +``` + +Для каждой партии сервер хранит: + +- уникальный `gameId`; +- фазу и режим; +- два внутренних поля; +- текущего участника; +- победителя; +- номер версии состояния; +- подтверждения повторной игры; +- статистику обоих участников; +- последнее публичное событие. + +Координаты внутри прошивки и протокола рекомендуется хранить числами `x` и `y` от 0 до 9. Буквенные обозначения формирует интерфейс. + +## 12. Скрытие информации + +Сервер не должен отправлять единый полный объект партии всем клиентам. + +- Игрок получает своё полное поле и только известные клетки поля соперника. +- Зритель получает только известные клетки обоих полей. +- Внутренняя расстановка ESP32 никогда не попадает в браузер до завершения партии. +- После `FINISHED` сервер может включить в представление полные поля обоих участников. +- Все игровые проверки выполняются на ESP32. Клиентская проверка нужна только для удобства интерфейса и не считается защитой. + +## 13. HTTP API + +Предлагаемый минимальный набор: + +| Метод | Путь | Назначение | +|---|---|---| +| `GET` | `/` | Основная страница | +| `GET` | `/assets/*` | CSS, JavaScript и локальные ресурсы | +| `GET` | `/api/info` | Состояние устройства и доступность мест без скрытых данных | +| `POST` | `/api/session/join` | Вход по имени и желаемой роли | +| `POST` | `/api/session/resume` | Восстановление роли по токену | +| `POST` | `/api/game/config` | Выбор режима игроком 1 | +| `POST` | `/api/game/start` | Запуск готовой партии | +| `POST` | `/api/game/shot` | Выстрел по координатам | +| `POST` | `/api/game/rematch` | Подтверждение повторной игры | +| `GET` | `/api/state?version=N` | Снимок разрешённого состояния и резервный опрос | +| `GET` | `/api/health` | Проверка доступности сервера | + +Все изменяющие запросы содержат токен сессии и `gameId`. Сервер возвращает JSON с полями `ok`, `code`, `message` и при необходимости новой `version`. + +Основные коды ошибок: + +- `INVALID_NAME`; +- `NO_PLAYER_SLOT`; +- `UNAUTHORIZED`; +- `FORBIDDEN_ROLE`; +- `WRONG_PHASE`; +- `NOT_YOUR_TURN`; +- `CELL_ALREADY_SHOT`; +- `STALE_GAME`; +- `SERVER_BUSY`. + +## 14. WebSocket и резервный опрос + +- Точка подключения: `/ws`. +- После открытия клиент передаёт токен сессии и последнюю известную `version`. +- Сервер подтверждает сессию и отправляет персонализированный снимок состояния. +- После каждого принятого действия сервер увеличивает `version` и рассылает новые безопасные представления всем подключённым клиентам. + +Рекомендуемые серверные события: + +- `state` — полный разрешённый снимок; +- `player_joined` и `player_left`; +- `game_started`; +- `shot_result`; +- `turn_changed`; +- `ship_sunk`; +- `game_finished`; +- `rematch_status`; +- `error`; +- `ping`/`pong`. + +Клиентская стратегия соединения: + +1. открыть WebSocket; +2. при обрыве выполнить повторные подключения с растущей задержкой, например 1, 2, 5 и 10 секунд; +3. пока WebSocket недоступен, запрашивать `/api/state` каждые 2 секунды; +4. после восстановления WebSocket прекратить опрос; +5. если полученная версия не следует за текущей, запросить полный снимок. + +HTTP остаётся каналом для команд и резервной синхронизации, а WebSocket используется для немедленной доставки изменений. Такой подход проще отлаживать и позволяет выполнить ход даже во время кратковременного восстановления WebSocket. + +## 15. Алгоритмы + +### 15.1. Автоматическая расстановка + +1. Очистить поле. +2. Перемешать порядок кораблей или обрабатывать их от длинных к коротким. +3. Случайно выбрать ориентацию и начальную клетку. +4. Проверить границы поля. +5. Проверить клетки корабля и все соседние клетки вокруг него. +6. Разместить корабль либо повторить попытку. +7. Если лимит попыток исчерпан, очистить поле и запустить генерацию заново. +8. Перед стартом проверить количество и длины кораблей, отсутствие касаний и выходов за границы. + +### 15.2. Соперник ESP32 + +Для MVP предлагается стратегия `hunt/target`: + +- в режиме поиска выбирать случайную необстрелянную клетку, предпочтительно по шахматному шаблону; +- после попадания добавлять соседние клетки по вертикали и горизонтали в очередь целей; +- после второго попадания определять ориентацию корабля и продолжать стрелять вдоль неё; +- после потопления удалять из кандидатов клетки вокруг корабля и возвращаться в режим поиска; +- никогда не использовать скрытое знание о расположении кораблей человека при выборе выстрела. + +Стратегия достаточно понятна и интереснее чистого случайного выбора, но остаётся небольшой по объёму кода и памяти. + +## 16. Статистика + +Для каждого участника в текущем матче показываются: + +- количество выстрелов; +- попадания; +- промахи; +- точность в процентах; +- число потопленных кораблей; +- результат матча. + +До перезагрузки ESP32 дополнительно накапливаются: + +- сыгранные партии; +- победы и поражения; +- общие выстрелы и попадания; +- общая точность. + +Статистика обновляется только сервером. Для зрителя доступна симметричная статистика обоих игроков. При повторной игре статистика матча обнуляется, накопительная — сохраняется. + +## 17. Обработка отключений и ошибок + +- При отключении игрока активная партия не завершается сразу; его место и состояние сохраняются в памяти ESP32. +- Интерфейс остальных клиентов показывает статус «Игрок переподключается». +- После возвращения с тем же токеном игрок получает актуальный снимок и продолжает партию. +- Для MVP партия может ожидать отключившегося игрока неограниченно; игрок 1 может вернуть систему в лобби отдельной командой подтверждения. +- Отключение зрителя не влияет на игру. +- Потеря WebSocket автоматически включает HTTP-опрос. +- Потеря Wi-Fi или перезапуск ESP32 завершает текущую партию. После восстановления пользователи входят заново. +- При переполнении лимита подключений новый зритель получает понятное сообщение, а действующая партия продолжается. + +## 18. Предлагаемая структура проекта + +```text +esp32-battleship/ +├── platformio.ini +├── include/ +│ ├── AppConfig.h +│ ├── GameTypes.h +│ ├── GameEngine.h +│ ├── FleetGenerator.h +│ ├── BotPlayer.h +│ ├── SessionManager.h +│ ├── StatePresenter.h +│ └── Statistics.h +├── src/ +│ ├── main.cpp +│ ├── GameEngine.cpp +│ ├── FleetGenerator.cpp +│ ├── BotPlayer.cpp +│ ├── SessionManager.cpp +│ ├── StatePresenter.cpp +│ └── WebApi.cpp +├── data/ +│ ├── index.html +│ └── assets/ +│ ├── app.css +│ └── app.js +└── test/ + ├── test_fleet_generator/ + ├── test_game_engine/ + └── test_bot_player/ +``` + +Wi-Fi-данные не следует фиксировать в публичном репозитории. Для MVP их можно вынести в локальный файл конфигурации, исключённый из Git. В дальнейшем можно добавить страницу первичной настройки сети. + +## 19. Ограничения для ESP32-C6 Mini + +До начала реализации необходимо зафиксировать точного производителя/модель платы, объём flash и наличие встроенного светодиода. Название «ESP32-C6 Mini» используется несколькими платами, поэтому эти параметры нельзя надёжно определить только по общему названию. Игровая архитектура от них не зависит, но они влияют на `platformio.ini`, таблицу разделов и назначение выводов. + +- Хранить игровые поля в компактных фиксированных массивах, а не в динамических коллекциях. +- Не создавать отдельную полную JSON-копию состояния для каждого клиента одновременно. +- Ограничить размер входящих HTTP- и WebSocket-сообщений. +- Не загружать изображения и крупные внешние библиотеки без необходимости. +- Сжимать статические файлы (`gzip`) при сборке и отдавать их с правильными заголовками. +- Настроить кэширование CSS и JavaScript, но не кэшировать персонализированное API-состояние. +- Не выполнять длительные циклы генерации, хода бота или рассылки внутри критического сетевого обработчика. +- Добавить периодическую очистку истёкших зрительских сессий. + +## 20. Этапы реализации + +### Этап 1. Каркас устройства + +- Создать PlatformIO-проект и конфигурацию конкретной ESP32-C6 Mini. +- Подключить ESP32 к домашней сети. +- Настроить LittleFS и выдачу тестовой страницы. +- Добавить `/api/health` и журналирование через Serial. + +### Этап 2. Игровое ядро + +- Реализовать структуры поля и кораблей. +- Реализовать и протестировать генератор флота. +- Реализовать выстрел, попадание, промах, потопление, смену хода и победу. +- Реализовать статистику матча. + +### Этап 3. Сессии и API + +- Реализовать вход по имени, роли и токены. +- Добавить лобби и запуск партии. +- Добавить персонализированные представления состояния. +- Реализовать HTTP-команды и проверки доступа. + +### Этап 4. Синхронизация + +- Подключить WebSocket. +- Добавить версионирование состояния и рассылку событий. +- Реализовать переподключение и HTTP fallback. + +### Этап 5. Веб-интерфейс + +- Реализовать экраны подключения, лобби, игры и результата. +- Добавить адаптивные поля для телефона и планшета. +- Добавить режим зрителя и понятные сообщения об ошибках. + +### Этап 6. Бот и повторная игра + +- Реализовать стратегию `hunt/target`. +- Добавить задержку и визуализацию хода ESP32. +- Добавить подтверждение повторной игры и накопительную статистику. + +### Этап 7. Проверка на устройстве + +- Проверить два телефона и несколько зрителей одновременно. +- Проверить переподключение, потерю WebSocket и переход на опрос. +- Проверить расход памяти и устойчивость нескольких последовательных партий. +- Оптимизировать и сжать статические ресурсы. + +## 21. Тестирование + +### Автоматические тесты логики + +- Генератор создаёт ровно 10 кораблей нужных размеров. +- Ни один корабль не выходит за поле и не касается другого. +- Выстрел по воде создаёт промах и меняет ход. +- Попадание сохраняет ход. +- Повторный выстрел отклоняется без изменения состояния. +- Потопление корректно отмечает корабль и соседние клетки. +- Уничтожение последнего корабля завершает партию. +- Бот никогда не стреляет дважды в одну клетку. +- Представление игрока и зрителя не содержит скрытых кораблей. + +### Ручные сценарии + +- Полная партия «игрок против игрока» с двух устройств. +- Полная партия против ESP32. +- Подключение и отключение нескольких зрителей во время партии. +- Обновление страницы игроком и восстановление по токену. +- Отключение WebSocket с продолжением через HTTP-опрос. +- Повторная игра в обоих режимах. +- Перезапуск ESP32 с ожидаемым сбросом партии. +- Проверка интерфейса на узком телефоне и планшете в обеих ориентациях. + +## 22. Критерии готовности MVP + +MVP считается готовым, когда: + +1. ESP32-C6 Mini стабильно подключается к заданной домашней Wi-Fi-сети и открывает русскоязычный интерфейс. +2. Два пользователя могут войти по именам и полностью сыграть одну партию с разных устройств. +3. Один пользователь может полностью сыграть партию против ESP32. +4. Все расстановки соответствуют классическому набору и запрету касаний. +5. Сервер отклоняет недопустимые и несвоевременные выстрелы. +6. Скрытые корабли не присутствуют в сетевых ответах для соперника или зрителя. +7. Минимум два зрителя могут наблюдать партию без влияния на неё; целевая конфигурация поддерживает до восьми. +8. Изменения обычно появляются через WebSocket, а при его отключении интерфейс автоматически продолжает обновляться через HTTP. +9. Обновление страницы восстанавливает роль и актуальное состояние, если ESP32 не перезагружалась. +10. После окончания отображаются победитель и корректная статистика. +11. Повторная игра создаёт новые расстановки и сохраняет накопительную статистику до перезагрузки. +12. Интерфейс остаётся удобным на телефоне и планшете. +13. Не менее 20 последовательных тестовых партий проходят без зависания, заметной утечки памяти или необходимости перезапуска устройства. + +## 23. Возможные расширения после MVP + +- Настройка Wi-Fi через временную точку доступа и captive portal. +- Сохранение статистики в NVS. +- Несколько комнат и больше одновременных игроков. +- PIN-код партии и управление зрительским доступом. +- Ручная расстановка кораблей. +- Выбор варианта правил, включая строго один выстрел за ход. +- Таймер хода, чат, звук и анимации. +- Уровни сложности ESP32. +- Локальное имя устройства через mDNS, например `battleship.local`. +- OTA-обновление прошивки и веб-ресурсов. +- Режим собственной точки доступа для игры без домашнего роутера. diff --git a/include/README b/include/README new file mode 100644 index 0000000..49819c0 --- /dev/null +++ b/include/README @@ -0,0 +1,37 @@ + +This directory is intended for project header files. + +A header file is a file containing C declarations and macro definitions +to be shared between several project source files. You request the use of a +header file in your project source file (C, C++, etc) located in `src` folder +by including it, with the C preprocessing directive `#include'. + +```src/main.c + +#include "header.h" + +int main (void) +{ + ... +} +``` + +Including a header file produces the same results as copying the header file +into each source file that needs it. Such copying would be time-consuming +and error-prone. With a header file, the related declarations appear +in only one place. If they need to be changed, they can be changed in one +place, and programs that include the header file will automatically use the +new version when next recompiled. The header file eliminates the labor of +finding and changing all the copies as well as the risk that a failure to +find one copy will result in inconsistencies within a program. + +In C, the convention is to give header files names that end with `.h'. + +Read more about using header files in official GCC documentation: + +* Include Syntax +* Include Operation +* Once-Only Headers +* Computed Includes + +https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html diff --git a/lib/README b/lib/README new file mode 100644 index 0000000..9379397 --- /dev/null +++ b/lib/README @@ -0,0 +1,46 @@ + +This directory is intended for project specific (private) libraries. +PlatformIO will compile them to static libraries and link into the executable file. + +The source code of each library should be placed in a separate directory +("lib/your_library_name/[Code]"). + +For example, see the structure of the following example libraries `Foo` and `Bar`: + +|--lib +| | +| |--Bar +| | |--docs +| | |--examples +| | |--src +| | |- Bar.c +| | |- Bar.h +| | |- library.json (optional. for custom build options, etc) https://docs.platformio.org/page/librarymanager/config.html +| | +| |--Foo +| | |- Foo.c +| | |- Foo.h +| | +| |- README --> THIS FILE +| +|- platformio.ini +|--src + |- main.c + +Example contents of `src/main.c` using Foo and Bar: +``` +#include +#include + +int main (void) +{ + ... +} + +``` + +The PlatformIO Library Dependency Finder will find automatically dependent +libraries by scanning project source files. + +More information about PlatformIO Library Dependency Finder +- https://docs.platformio.org/page/librarymanager/ldf.html diff --git a/platformio.ini b/platformio.ini new file mode 100644 index 0000000..fa46822 --- /dev/null +++ b/platformio.ini @@ -0,0 +1,14 @@ +; PlatformIO Project Configuration File +; +; Build options: build flags, source filter +; Upload options: custom upload port, speed and extra flags +; Library options: dependencies, extra library storages +; Advanced options: extra scripting +; +; Please visit documentation for the other options and examples +; https://docs.platformio.org/page/projectconf.html + +[env:esp32-c6-devkitm-1] +platform = espressif32 +board = esp32-c6-devkitm-1 +framework = espidf diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..483bc0c --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,6 @@ +# This file was automatically generated for projects +# without default 'CMakeLists.txt' file. + +FILE(GLOB_RECURSE app_sources ${CMAKE_SOURCE_DIR}/src/*.*) + +idf_component_register(SRCS ${app_sources}) diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..3b5b685 --- /dev/null +++ b/src/main.c @@ -0,0 +1 @@ +void app_main() {} \ No newline at end of file diff --git a/test/README b/test/README new file mode 100644 index 0000000..9b1e87b --- /dev/null +++ b/test/README @@ -0,0 +1,11 @@ + +This directory is intended for PlatformIO Test Runner and project tests. + +Unit Testing is a software testing method by which individual units of +source code, sets of one or more MCU program modules together with associated +control data, usage procedures, and operating procedures, are tested to +determine whether they are fit for use. Unit testing finds problems early +in the development cycle. + +More information about PlatformIO Unit Testing: +- https://docs.platformio.org/en/latest/advanced/unit-testing/index.html