From 26292f91e38f3de7943cb881dbe8994b80bf8431 Mon Sep 17 00:00:00 2001 From: Will Warren Date: Thu, 1 Feb 2024 13:38:05 -0500 Subject: [PATCH] initial --- .github/ISSUE_TEMPLATE/Feature-request.yml | 62 - .github/ISSUE_TEMPLATE/Issue-report.yml | 144 - .github/ISSUE_TEMPLATE/config.yml | 8 - .github/workflows/build_py_tools.yml | 141 - .github/workflows/dangerjs.yml | 22 - .github/workflows/docs_build.yml | 44 - .github/workflows/docs_deploy.yml | 51 - .github/workflows/gh-pages.yml | 23 - .github/workflows/hil.yml | 118 - .github/workflows/lib.json | 66 - .github/workflows/lib.yml | 135 - .github/workflows/publish.yml | 38 - .github/workflows/publishlib.yml | 41 - .github/workflows/push.yml | 112 - .github/workflows/release.yml | 22 - .github/workflows/upload-idf-component.yml | 20 - .readthedocs.yaml | 20 - boards.txt | 33745 +--------------- package.json | 6 +- platform.txt | 4 +- variants/AirM2M_CORE_ESP32C3/pins_arduino.h | 30 - variants/AirM2M_CORE_ESP32C3/variant.cpp | 7 - variants/Aventen_S3_Sync/pins_arduino.h | 62 - variants/Bee_Data_Logger/pins_arduino.h | 79 - variants/Bee_Motion/pins_arduino.h | 55 - variants/Bee_Motion_Mini/pins_arduino.h | 28 - variants/Bee_Motion_S3/pins_arduino.h | 86 - variants/Bee_S3/pins_arduino.h | 78 - variants/ET-Board/pins_arduino.h | 43 - variants/Edgebox-ESP-100/pins_arduino.h | 59 - variants/Microduino-esp32/pins_arduino.h | 82 - variants/Nebula_S3/pins_arduino.h | 58 - variants/S_ODI_Ultra_v1/pins_arduino.h | 56 - .../VALTRACK_V4_MFW_ESP32_C3/pins_arduino.h | 49 - .../VALTRACK_V4_VTS_ESP32_C3/pins_arduino.h | 49 - variants/XIAO_ESP32C3/pins_arduino.h | 34 - variants/XIAO_ESP32S3/bootloader-tinyuf2.bin | Bin 21408 -> 0 bytes variants/XIAO_ESP32S3/partitions-8MB.csv | 10 - variants/XIAO_ESP32S3/pins_arduino.h | 56 - variants/XIAO_ESP32S3/tinyuf2.bin | Bin 141936 -> 0 bytes .../bootloader-tinyuf2.bin | Bin 22112 -> 0 bytes .../adafruit_camera_esp32s3/pins_arduino.h | 85 - variants/adafruit_camera_esp32s3/tinyuf2.bin | Bin 193520 -> 0 bytes variants/adafruit_camera_esp32s3/variant.cpp | 45 - .../adafruit_feather_esp32_v2/pins_arduino.h | 70 - .../adafruit_feather_esp32_v2/variant.cpp | 40 - .../bootloader-tinyuf2.bin | Bin 22016 -> 0 bytes .../adafruit_feather_esp32s2/pins_arduino.h | 63 - variants/adafruit_feather_esp32s2/tinyuf2.bin | Bin 155104 -> 0 bytes variants/adafruit_feather_esp32s2/variant.cpp | 46 - .../bootloader-tinyuf2.bin | Bin 22016 -> 0 bytes .../pins_arduino.h | 66 - .../tinyuf2.bin | Bin 174256 -> 0 bytes .../variant.cpp | 42 - .../bootloader-tinyuf2.bin | Bin 22048 -> 0 bytes .../pins_arduino.h | 68 - .../adafruit_feather_esp32s2_tft/tinyuf2.bin | Bin 174224 -> 0 bytes .../adafruit_feather_esp32s2_tft/variant.cpp | 42 - .../bootloader-tinyuf2.bin | Bin 22624 -> 0 bytes .../adafruit_feather_esp32s3/pins_arduino.h | 71 - variants/adafruit_feather_esp32s3/tinyuf2.bin | Bin 165520 -> 0 bytes variants/adafruit_feather_esp32s3/variant.cpp | 43 - .../bootloader-tinyuf2.bin | Bin 22624 -> 0 bytes .../pins_arduino.h | 71 - .../tinyuf2.bin | Bin 165536 -> 0 bytes .../variant.cpp | 43 - .../bootloader-tinyuf2.bin | Bin 22320 -> 0 bytes .../pins_arduino.h | 66 - .../tinyuf2.bin | Bin 187808 -> 0 bytes .../variant.cpp | 42 - .../bootloader-tinyuf2.bin | Bin 22656 -> 0 bytes .../pins_arduino.h | 68 - .../adafruit_feather_esp32s3_tft/tinyuf2.bin | Bin 185328 -> 0 bytes .../adafruit_feather_esp32s3_tft/variant.cpp | 42 - .../bootloader-tinyuf2.bin | Bin 22080 -> 0 bytes .../adafruit_funhouse_esp32s2/pins_arduino.h | 70 - .../adafruit_funhouse_esp32s2/tinyuf2.bin | Bin 164528 -> 0 bytes .../adafruit_funhouse_esp32s2/variant.cpp | 37 - .../adafruit_itsybitsy_esp32/pins_arduino.h | 56 - variants/adafruit_itsybitsy_esp32/variant.cpp | 40 - .../bootloader-tinyuf2.bin | Bin 21968 -> 0 bytes .../adafruit_magtag29_esp32s2/pins_arduino.h | 95 - .../adafruit_magtag29_esp32s2/tinyuf2.bin | Bin 155136 -> 0 bytes .../adafruit_magtag29_esp32s2/variant.cpp | 37 - .../bootloader-tinyuf2.bin | Bin 22112 -> 0 bytes .../pins_arduino.h | 56 - .../adafruit_matrixportal_esp32s3/tinyuf2.bin | Bin 174352 -> 0 bytes .../bootloader-tinyuf2.bin | Bin 22000 -> 0 bytes .../adafruit_metro_esp32s2/pins_arduino.h | 79 - variants/adafruit_metro_esp32s2/tinyuf2.bin | Bin 151232 -> 0 bytes variants/adafruit_metro_esp32s2/variant.cpp | 37 - .../bootloader-tinyuf2.bin | Bin 22256 -> 0 bytes .../adafruit_metro_esp32s3/pins_arduino.h | 76 - variants/adafruit_metro_esp32s3/tinyuf2.bin | Bin 174736 -> 0 bytes variants/adafruit_metro_esp32s3/variant.cpp | 38 - variants/adafruit_qtpy_esp32/pins_arduino.h | 64 - variants/adafruit_qtpy_esp32/variant.cpp | 40 - variants/adafruit_qtpy_esp32c3/pins_arduino.h | 37 - .../bootloader-tinyuf2.bin | Bin 21936 -> 0 bytes variants/adafruit_qtpy_esp32s2/pins_arduino.h | 61 - variants/adafruit_qtpy_esp32s2/tinyuf2.bin | Bin 150624 -> 0 bytes variants/adafruit_qtpy_esp32s2/variant.cpp | 40 - .../bootloader-tinyuf2.bin | Bin 22240 -> 0 bytes .../adafruit_qtpy_esp32s3_n4r2/pins_arduino.h | 57 - .../adafruit_qtpy_esp32s3_n4r2/tinyuf2.bin | Bin 173584 -> 0 bytes .../adafruit_qtpy_esp32s3_n4r2/variant.cpp | 39 - .../bootloader-tinyuf2.bin | Bin 22544 -> 0 bytes .../pins_arduino.h | 57 - .../adafruit_qtpy_esp32s3_nopsram/tinyuf2.bin | Bin 160832 -> 0 bytes .../adafruit_qtpy_esp32s3_nopsram/variant.cpp | 39 - .../bootloader-tinyuf2.bin | Bin 21696 -> 0 bytes .../adafruit_qualia_s3_rgb666/pins_arduino.h | 67 - .../adafruit_qualia_s3_rgb666/tinyuf2.bin | Bin 157728 -> 0 bytes .../adafruit_qualia_s3_rgb666/variant.cpp | 37 - variants/alksesp32/pins_arduino.h | 78 - variants/arduino_nano_nora/dfu_callbacks.cpp | 116 - variants/arduino_nano_nora/double_tap.c | 68 - variants/arduino_nano_nora/double_tap.h | 20 - .../extra/nora_recovery/README.md | 49 - .../extra/nora_recovery/nora_recovery.ino | 99 - .../extra/nora_recovery/nora_recovery.ino.bin | Bin 302800 -> 0 bytes variants/arduino_nano_nora/io_pin_remap.cpp | 72 - variants/arduino_nano_nora/pins_arduino.h | 114 - variants/arduino_nano_nora/variant.cpp | 104 - variants/atd147_s3/pins_arduino.h | 67 - .../atmegazero_esp32s2/bootloader-tinyuf2.bin | Bin 21808 -> 0 bytes .../partitions-16MB-tinyuf2.csv | 10 - variants/atmegazero_esp32s2/pins_arduino.h | 60 - variants/atmegazero_esp32s2/tinyuf2.bin | Bin 139088 -> 0 bytes variants/bpi-bit/pins_arduino.h | 62 - variants/bpi_leaf_s3/pins_arduino.h | 72 - variants/ch_denky/pins_arduino.h | 71 - variants/cnrs_aw2eth/pins_arduino.h | 48 - variants/connaxio_espoir/pins_arduino.h | 77 - variants/crabik_slot_esp32_s3/pins_arduino.h | 80 - .../bootloader-tinyuf2.bin | Bin 21840 -> 0 bytes .../partitions-8MB-tinyuf2.csv | 10 - .../pins_arduino.h | 72 - .../cytron_maker_feather_aiot_s3/tinyuf2.bin | Bin 157008 -> 0 bytes .../cytron_maker_feather_aiot_s3/variant.cpp | 38 - variants/d-duino-32/pins_arduino.h | 56 - variants/d1_mini32/pins_arduino.h | 34 - variants/d1_uno32/pins_arduino.h | 55 - variants/d32/d32_core.h | 46 - variants/d32/pins_arduino.h | 12 - variants/d32_pro/pins_arduino.h | 22 - variants/deneyapkart/pins_arduino.h | 89 - variants/deneyapkart1A/pins_arduino.h | 89 - variants/deneyapkart1Av2/pins_arduino.h | 106 - variants/deneyapkartg/pins_arduino.h | 57 - variants/deneyapmini/pins_arduino.h | 88 - variants/deneyapminiv2/pins_arduino.h | 88 - .../bootloader-tinyuf2.bin | Bin 22016 -> 0 bytes .../partitions-4MB-tinyuf2.csv | 11 - .../pins_arduino.h | 64 - .../tinyuf2.bin | Bin 147376 -> 0 bytes .../variant.cpp | 39 - .../dfrobot_beetle_esp32c3/pins_arduino.h | 51 - .../dfrobot_beetle_esp32c6/pins_arduino.h | 24 - .../pins_arduino.h | 57 - .../dfrobot_firebeetle2_esp32e/pins_arduino.h | 70 - .../pins_arduino.h | 83 - variants/dfrobot_romeo_esp32s3/pins_arduino.h | 74 - variants/doitESP32devkitV1/pins_arduino.h | 52 - variants/doitESPduino32/pins_arduino.h | 95 - variants/dpu_esp32/pins_arduino.h | 56 - variants/esp32-devkit-lipo/pins_arduino.h | 54 - variants/esp32-evb/pins_arduino.h | 25 - variants/esp32-gateway/pins_arduino.h | 39 - variants/esp32-poe-iso/pins_arduino.h | 30 - variants/esp32-poe/pins_arduino.h | 30 - .../pins_arduino.h | 45 - .../pins_arduino.h | 45 - .../esp32-trueverit-iot-driver/pins_arduino.h | 45 - variants/esp32/pins_arduino.h | 48 - variants/esp320/pins_arduino.h | 21 - variants/esp32_s3r8n16/gen4esp32_16MBapp.csv | 5 - .../gen4esp32_2MBapp_2MBota_12MBspiffs.csv | 7 - .../gen4esp32_4MBapp_4MBota_7MBspiffs.csv | 7 - .../esp32_s3r8n16/gen4esp32_8MBapp_8MBota.csv | 6 - variants/esp32_s3r8n16/pins_arduino.h | 23 - variants/esp32c2/pins_arduino.h | 29 - variants/esp32c3-devkit-lipo/pins_arduino.h | 38 - variants/esp32c6-evb/pins_arduino.h | 49 - variants/esp32c6/pins_arduino.h | 35 - variants/esp32da/pins_arduino.h | 52 - variants/esp32h2/pins_arduino.h | 33 - variants/esp32micromod/pins_arduino.h | 69 - .../esp32s2-devkit-lipo-usb/pins_arduino.h | 70 - variants/esp32s2-devkit-lipo/pins_arduino.h | 72 - variants/esp32s2/pins_arduino.h | 69 - variants/esp32s2thing_plus/pins_arduino.h | 70 - variants/esp32s2usb/pins_arduino.h | 72 - variants/esp32s3-devkit-lipo/pins_arduino.h | 75 - variants/esp32s3/pins_arduino.h | 70 - variants/esp32s3_powerfeather/pins_arduino.h | 51 - variants/esp32s3box/pins_arduino.h | 61 - variants/esp32s3camlcd/pins_arduino.h | 63 - variants/esp32s3usbotg/pins_arduino.h | 90 - variants/esp32s3usbotg/variant.cpp | 46 - variants/esp32thing/pins_arduino.h | 54 - variants/esp32thing_plus/pins_arduino.h | 54 - variants/esp32thing_plus_c/pins_arduino.h | 59 - variants/esp32vn-iot-uno/pins_arduino.h | 45 - variants/esp_c3_m1_i_kit/pins_arduino.h | 43 - variants/espea32/pins_arduino.h | 54 - variants/espectro32/pins_arduino.h | 57 - variants/espino32/pins_arduino.h | 54 - variants/feather_esp32/pins_arduino.h | 58 - variants/firebeetle32/pins_arduino.h | 65 - variants/fm-devkit/pins_arduino.h | 47 - .../franzininho_wifi_esp32s2/pins_arduino.h | 73 - .../pins_arduino.h | 80 - variants/frog32/pins_arduino.h | 48 - .../{esp32c3 => garaginator}/pins_arduino.h | 17 +- variants/gpy/pins_arduino.h | 73 - variants/healthypi4/pins_arduino.h | 65 - variants/heltec_wifi_kit_32/pins_arduino.h | 67 - variants/heltec_wifi_kit_32_V3/pins_arduino.h | 71 - variants/heltec_wifi_lora_32/pins_arduino.h | 69 - .../heltec_wifi_lora_32_V2/pins_arduino.h | 69 - .../heltec_wifi_lora_32_V3/pins_arduino.h | 74 - variants/heltec_wireless_stick/pins_arduino.h | 68 - .../heltec_wireless_stick_lite/pins_arduino.h | 65 - .../pins_arduino.h | 52 - .../heltec_wireless_tracker/pins_arduino.h | 71 - variants/honeylemon/pins_arduino.h | 54 - variants/hornbill32dev/pins_arduino.h | 54 - variants/hornbill32minima/pins_arduino.h | 41 - variants/imbrios-logsens-v1p1/pins_arduino.h | 95 - variants/intorobot-fig/pins_arduino.h | 57 - variants/ioxesp32/pins_arduino.h | 54 - variants/lilygo_t_display/pins_arduino.h | 59 - variants/lilygo_t_display_s3/pins_arduino.h | 83 - variants/lionbit/pins_arduino.h | 87 - variants/lionbits3/pins_arduino.h | 94 - variants/lolin32-lite/pins_arduino.h | 52 - variants/lolin32/pins_arduino.h | 52 - variants/lolin_c3_mini/pins_arduino.h | 28 - variants/lolin_s2_mini/pins_arduino.h | 75 - variants/lolin_s2_pico/pins_arduino.h | 77 - variants/lolin_s3/pins_arduino.h | 61 - variants/lolin_s3_mini/pins_arduino.h | 61 - variants/lolin_s3_pro/pins_arduino.h | 69 - variants/lopy/pins_arduino.h | 73 - variants/lopy4/pins_arduino.h | 73 - variants/m5stack_atom/pins_arduino.h | 42 - variants/m5stack_atoms3/pins_arduino.h | 52 - variants/m5stack_capsule/pins_arduino.h | 51 - variants/m5stack_cardputer/pins_arduino.h | 53 - variants/m5stack_core/pins_arduino.h | 47 - variants/m5stack_core2/pins_arduino.h | 52 - variants/m5stack_coreink/pins_arduino.h | 49 - variants/m5stack_cores3/pins_arduino.h | 63 - variants/m5stack_dial/pins_arduino.h | 53 - variants/m5stack_fire/pins_arduino.h | 44 - variants/m5stack_paper/pins_arduino.h | 48 - variants/m5stack_poe_cam/pins_arduino.h | 48 - variants/m5stack_stamp_c3/pins_arduino.h | 24 - variants/m5stack_stamp_pico/pins_arduino.h | 31 - variants/m5stack_stamp_s3/pins_arduino.h | 52 - variants/m5stack_station/pins_arduino.h | 50 - variants/m5stack_stickc/pins_arduino.h | 33 - variants/m5stack_stickc_plus/pins_arduino.h | 33 - variants/m5stack_stickc_plus2/pins_arduino.h | 33 - variants/m5stack_timer_cam/pins_arduino.h | 50 - variants/m5stack_tough/pins_arduino.h | 52 - variants/m5stack_unit_cam/pins_arduino.h | 50 - variants/m5stack_unit_cams3/pins_arduino.h | 52 - variants/magicbit/pins_arduino.h | 66 - variants/makergo_c3_supermini/pins_arduino.h | 34 - variants/metro_esp-32/pins_arduino.h | 22 - variants/mgbot-iotik32a/pins_arduino.h | 59 - variants/mgbot-iotik32b/pins_arduino.h | 64 - variants/mhetesp32devkit/pins_arduino.h | 52 - variants/mhetesp32minikit/pins_arduino.h | 52 - variants/micro_s2/pins_arduino.h | 75 - variants/mpython/pins_arduino.h | 82 - variants/namino_arancio/pins_arduino.h | 197 - variants/namino_bianco/pins_arduino.h | 198 - variants/namino_rosso/pins_arduino.h | 197 - variants/nano32/pins_arduino.h | 54 - variants/nina_w10/pins_arduino.h | 78 - variants/node32s/pins_arduino.h | 54 - variants/nodemcu-32s/pins_arduino.h | 54 - .../nologo_esp32c3_super_mini/pins_arduino.h | 28 - variants/nologo_esp32s3_pico/pins_arduino.h | 37 - variants/nora_w10/pins_arduino.h | 84 - variants/odroid_esp32/pins_arduino.h | 27 - variants/onehorse32dev/pins_arduino.h | 52 - variants/openkb/pins_arduino.h | 84 - variants/oroca_edubot/pins_arduino.h | 55 - variants/pico32/pins_arduino.h | 48 - variants/piranha_esp-32/pins_arduino.h | 40 - variants/pocket_32/pins_arduino.h | 52 - variants/quantum/pins_arduino.h | 48 - variants/redpill_esp32s3/pins_arduino.h | 63 - variants/redpill_esp32s3/tinyuf2.bin | Bin 151648 -> 0 bytes variants/roboheart_hercules/pins_arduino.h | 95 - .../bootloader-tinyuf2.bin | Bin 22848 -> 0 bytes .../partitions-4MB-tinyuf2.csv | 12 - variants/sensebox_mcu_esp32s2/pins_arduino.h | 135 - variants/sensebox_mcu_esp32s2/tinyuf2.bin | Bin 154912 -> 0 bytes variants/sensebox_mcu_esp32s2/variant.cpp | 55 - variants/sonoff_dualr3/pins_arduino.h | 19 - .../pins_arduino.h | 58 - .../pins_arduino.h | 31 - .../pins_arduino.h | 35 - .../pins_arduino.h | 52 - .../sparkfun_pro_micro_esp32c3/pins_arduino.h | 48 - variants/tamc_termod_s3/pins_arduino.h | 101 - variants/tamc_termod_s3/variant.cpp | 38 - variants/tbeam/pins_arduino.h | 58 - variants/ttgo-lora32-v1/pins_arduino.h | 70 - variants/ttgo-lora32-v2/pins_arduino.h | 75 - variants/ttgo-lora32-v21new/pins_arduino.h | 83 - variants/ttgo-t-oi-plus/pins_arduino.h | 27 - variants/ttgo-t1/pins_arduino.h | 55 - variants/ttgo-t7-v13-mini32/pins_arduino.h | 52 - variants/ttgo-t7-v14-mini32/pins_arduino.h | 52 - variants/turta_iot_node/pins_arduino.h | 66 - variants/twatch/pins_arduino.h | 35 - variants/uPesy_edu_esp32/pins_arduino.h | 54 - .../uPesy_esp32_wroom_devkit/pins_arduino.h | 52 - .../uPesy_esp32_wrover_devkit/pins_arduino.h | 52 - variants/uPesy_esp32c3_basic/pins_arduino.h | 32 - variants/uPesy_esp32c3_mini/pins_arduino.h | 31 - variants/uPesy_esp32s3_basic/pins_arduino.h | 82 - variants/um_feathers2/pins_arduino.h | 69 - variants/um_feathers2neo/pins_arduino.h | 71 - variants/um_feathers3/bootloader_tinyuf2.bin | Bin 22736 -> 0 bytes variants/um_feathers3/partitions_tinyuf2.csv | 10 - variants/um_feathers3/pins_arduino.h | 68 - variants/um_feathers3/tinyuf2.bin | Bin 157296 -> 0 bytes variants/um_nanos3/bootloader_tinyuf2.bin | Bin 22576 -> 0 bytes variants/um_nanos3/partitions_tinyuf2.csv | 10 - variants/um_nanos3/pins_arduino.h | 57 - variants/um_nanos3/tinyuf2.bin | Bin 152608 -> 0 bytes variants/um_pros3/bootloader_tinyuf2.bin | Bin 22576 -> 0 bytes variants/um_pros3/partitions_tinyuf2.csv | 10 - variants/um_pros3/pins_arduino.h | 69 - variants/um_pros3/tinyuf2.bin | Bin 152608 -> 0 bytes variants/um_rmp/pins_arduino.h | 79 - variants/um_tinyc6/pins_arduino.h | 60 - variants/um_tinypico/pins_arduino.h | 54 - variants/um_tinys2/pins_arduino.h | 79 - variants/um_tinys3/bootloader_tinyuf2.bin | Bin 22576 -> 0 bytes variants/um_tinys3/partitions_tinyuf2.csv | 10 - variants/um_tinys3/pins_arduino.h | 60 - variants/um_tinys3/tinyuf2.bin | Bin 152608 -> 0 bytes variants/unphone8/pins_arduino.h | 59 - variants/unphone9/pins_arduino.h | 59 - variants/vintlabsdevkitv1/pins_arduino.h | 62 - variants/watchy/pins_arduino.h | 52 - variants/wesp32/pins_arduino.h | 41 - variants/widora-air/pins_arduino.h | 53 - variants/wifiduino32/pins_arduino.h | 60 - variants/wifiduino32s3/pins_arduino.h | 44 - variants/wifiduinov2/pins_arduino.h | 43 - variants/wipy3/pins_arduino.h | 63 - variants/wt32-eth01/pins_arduino.h | 57 - variants/xinabox/pins_arduino.h | 21 - 362 files changed, 184 insertions(+), 50824 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/Feature-request.yml delete mode 100644 .github/ISSUE_TEMPLATE/Issue-report.yml delete mode 100644 .github/ISSUE_TEMPLATE/config.yml delete mode 100644 .github/workflows/build_py_tools.yml delete mode 100644 .github/workflows/dangerjs.yml delete mode 100644 .github/workflows/docs_build.yml delete mode 100644 .github/workflows/docs_deploy.yml delete mode 100644 .github/workflows/gh-pages.yml delete mode 100644 .github/workflows/hil.yml delete mode 100644 .github/workflows/lib.json delete mode 100644 .github/workflows/lib.yml delete mode 100644 .github/workflows/publish.yml delete mode 100644 .github/workflows/publishlib.yml delete mode 100644 .github/workflows/push.yml delete mode 100644 .github/workflows/release.yml delete mode 100644 .github/workflows/upload-idf-component.yml delete mode 100644 .readthedocs.yaml delete mode 100644 variants/AirM2M_CORE_ESP32C3/pins_arduino.h delete mode 100644 variants/AirM2M_CORE_ESP32C3/variant.cpp delete mode 100644 variants/Aventen_S3_Sync/pins_arduino.h delete mode 100644 variants/Bee_Data_Logger/pins_arduino.h delete mode 100644 variants/Bee_Motion/pins_arduino.h delete mode 100644 variants/Bee_Motion_Mini/pins_arduino.h delete mode 100644 variants/Bee_Motion_S3/pins_arduino.h delete mode 100644 variants/Bee_S3/pins_arduino.h delete mode 100644 variants/ET-Board/pins_arduino.h delete mode 100644 variants/Edgebox-ESP-100/pins_arduino.h delete mode 100644 variants/Microduino-esp32/pins_arduino.h delete mode 100644 variants/Nebula_S3/pins_arduino.h delete mode 100644 variants/S_ODI_Ultra_v1/pins_arduino.h delete mode 100644 variants/VALTRACK_V4_MFW_ESP32_C3/pins_arduino.h delete mode 100644 variants/VALTRACK_V4_VTS_ESP32_C3/pins_arduino.h delete mode 100644 variants/XIAO_ESP32C3/pins_arduino.h delete mode 100644 variants/XIAO_ESP32S3/bootloader-tinyuf2.bin delete mode 100644 variants/XIAO_ESP32S3/partitions-8MB.csv delete mode 100644 variants/XIAO_ESP32S3/pins_arduino.h delete mode 100644 variants/XIAO_ESP32S3/tinyuf2.bin delete mode 100644 variants/adafruit_camera_esp32s3/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_camera_esp32s3/pins_arduino.h delete mode 100644 variants/adafruit_camera_esp32s3/tinyuf2.bin delete mode 100644 variants/adafruit_camera_esp32s3/variant.cpp delete mode 100644 variants/adafruit_feather_esp32_v2/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32_v2/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s2/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s2_reversetft/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2_reversetft/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s2_reversetft/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2_reversetft/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s2_tft/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2_tft/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s2_tft/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s2_tft/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s3/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s3/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s3_nopsram/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_nopsram/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s3_nopsram/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_nopsram/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s3_reversetft/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_reversetft/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s3_reversetft/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_reversetft/variant.cpp delete mode 100644 variants/adafruit_feather_esp32s3_tft/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_tft/pins_arduino.h delete mode 100644 variants/adafruit_feather_esp32s3_tft/tinyuf2.bin delete mode 100644 variants/adafruit_feather_esp32s3_tft/variant.cpp delete mode 100644 variants/adafruit_funhouse_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_funhouse_esp32s2/pins_arduino.h delete mode 100644 variants/adafruit_funhouse_esp32s2/tinyuf2.bin delete mode 100644 variants/adafruit_funhouse_esp32s2/variant.cpp delete mode 100644 variants/adafruit_itsybitsy_esp32/pins_arduino.h delete mode 100644 variants/adafruit_itsybitsy_esp32/variant.cpp delete mode 100644 variants/adafruit_magtag29_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_magtag29_esp32s2/pins_arduino.h delete mode 100644 variants/adafruit_magtag29_esp32s2/tinyuf2.bin delete mode 100644 variants/adafruit_magtag29_esp32s2/variant.cpp delete mode 100644 variants/adafruit_matrixportal_esp32s3/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_matrixportal_esp32s3/pins_arduino.h delete mode 100644 variants/adafruit_matrixportal_esp32s3/tinyuf2.bin delete mode 100644 variants/adafruit_metro_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_metro_esp32s2/pins_arduino.h delete mode 100644 variants/adafruit_metro_esp32s2/tinyuf2.bin delete mode 100644 variants/adafruit_metro_esp32s2/variant.cpp delete mode 100644 variants/adafruit_metro_esp32s3/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_metro_esp32s3/pins_arduino.h delete mode 100644 variants/adafruit_metro_esp32s3/tinyuf2.bin delete mode 100644 variants/adafruit_metro_esp32s3/variant.cpp delete mode 100644 variants/adafruit_qtpy_esp32/pins_arduino.h delete mode 100644 variants/adafruit_qtpy_esp32/variant.cpp delete mode 100644 variants/adafruit_qtpy_esp32c3/pins_arduino.h delete mode 100644 variants/adafruit_qtpy_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s2/pins_arduino.h delete mode 100644 variants/adafruit_qtpy_esp32s2/tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s2/variant.cpp delete mode 100644 variants/adafruit_qtpy_esp32s3_n4r2/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s3_n4r2/pins_arduino.h delete mode 100644 variants/adafruit_qtpy_esp32s3_n4r2/tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s3_n4r2/variant.cpp delete mode 100644 variants/adafruit_qtpy_esp32s3_nopsram/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s3_nopsram/pins_arduino.h delete mode 100644 variants/adafruit_qtpy_esp32s3_nopsram/tinyuf2.bin delete mode 100644 variants/adafruit_qtpy_esp32s3_nopsram/variant.cpp delete mode 100644 variants/adafruit_qualia_s3_rgb666/bootloader-tinyuf2.bin delete mode 100644 variants/adafruit_qualia_s3_rgb666/pins_arduino.h delete mode 100644 variants/adafruit_qualia_s3_rgb666/tinyuf2.bin delete mode 100644 variants/adafruit_qualia_s3_rgb666/variant.cpp delete mode 100644 variants/alksesp32/pins_arduino.h delete mode 100644 variants/arduino_nano_nora/dfu_callbacks.cpp delete mode 100644 variants/arduino_nano_nora/double_tap.c delete mode 100644 variants/arduino_nano_nora/double_tap.h delete mode 100644 variants/arduino_nano_nora/extra/nora_recovery/README.md delete mode 100644 variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino delete mode 100644 variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino.bin delete mode 100644 variants/arduino_nano_nora/io_pin_remap.cpp delete mode 100644 variants/arduino_nano_nora/pins_arduino.h delete mode 100644 variants/arduino_nano_nora/variant.cpp delete mode 100644 variants/atd147_s3/pins_arduino.h delete mode 100644 variants/atmegazero_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/atmegazero_esp32s2/partitions-16MB-tinyuf2.csv delete mode 100644 variants/atmegazero_esp32s2/pins_arduino.h delete mode 100644 variants/atmegazero_esp32s2/tinyuf2.bin delete mode 100644 variants/bpi-bit/pins_arduino.h delete mode 100644 variants/bpi_leaf_s3/pins_arduino.h delete mode 100644 variants/ch_denky/pins_arduino.h delete mode 100644 variants/cnrs_aw2eth/pins_arduino.h delete mode 100644 variants/connaxio_espoir/pins_arduino.h delete mode 100644 variants/crabik_slot_esp32_s3/pins_arduino.h delete mode 100644 variants/cytron_maker_feather_aiot_s3/bootloader-tinyuf2.bin delete mode 100644 variants/cytron_maker_feather_aiot_s3/partitions-8MB-tinyuf2.csv delete mode 100644 variants/cytron_maker_feather_aiot_s3/pins_arduino.h delete mode 100644 variants/cytron_maker_feather_aiot_s3/tinyuf2.bin delete mode 100644 variants/cytron_maker_feather_aiot_s3/variant.cpp delete mode 100644 variants/d-duino-32/pins_arduino.h delete mode 100644 variants/d1_mini32/pins_arduino.h delete mode 100644 variants/d1_uno32/pins_arduino.h delete mode 100644 variants/d32/d32_core.h delete mode 100644 variants/d32/pins_arduino.h delete mode 100644 variants/d32_pro/pins_arduino.h delete mode 100644 variants/deneyapkart/pins_arduino.h delete mode 100644 variants/deneyapkart1A/pins_arduino.h delete mode 100644 variants/deneyapkart1Av2/pins_arduino.h delete mode 100644 variants/deneyapkartg/pins_arduino.h delete mode 100644 variants/deneyapmini/pins_arduino.h delete mode 100644 variants/deneyapminiv2/pins_arduino.h delete mode 100644 variants/department_of_alchemy_minimain_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/department_of_alchemy_minimain_esp32s2/partitions-4MB-tinyuf2.csv delete mode 100644 variants/department_of_alchemy_minimain_esp32s2/pins_arduino.h delete mode 100644 variants/department_of_alchemy_minimain_esp32s2/tinyuf2.bin delete mode 100644 variants/department_of_alchemy_minimain_esp32s2/variant.cpp delete mode 100644 variants/dfrobot_beetle_esp32c3/pins_arduino.h delete mode 100644 variants/dfrobot_beetle_esp32c6/pins_arduino.h delete mode 100644 variants/dfrobot_firebeetle2_esp32c6/pins_arduino.h delete mode 100644 variants/dfrobot_firebeetle2_esp32e/pins_arduino.h delete mode 100644 variants/dfrobot_firebeetle2_esp32s3/pins_arduino.h delete mode 100644 variants/dfrobot_romeo_esp32s3/pins_arduino.h delete mode 100644 variants/doitESP32devkitV1/pins_arduino.h delete mode 100644 variants/doitESPduino32/pins_arduino.h delete mode 100644 variants/dpu_esp32/pins_arduino.h delete mode 100644 variants/esp32-devkit-lipo/pins_arduino.h delete mode 100644 variants/esp32-evb/pins_arduino.h delete mode 100644 variants/esp32-gateway/pins_arduino.h delete mode 100644 variants/esp32-poe-iso/pins_arduino.h delete mode 100644 variants/esp32-poe/pins_arduino.h delete mode 100644 variants/esp32-trueverit-iot-driver-mkii/pins_arduino.h delete mode 100644 variants/esp32-trueverit-iot-driver-mkiii/pins_arduino.h delete mode 100644 variants/esp32-trueverit-iot-driver/pins_arduino.h delete mode 100644 variants/esp32/pins_arduino.h delete mode 100644 variants/esp320/pins_arduino.h delete mode 100644 variants/esp32_s3r8n16/gen4esp32_16MBapp.csv delete mode 100644 variants/esp32_s3r8n16/gen4esp32_2MBapp_2MBota_12MBspiffs.csv delete mode 100644 variants/esp32_s3r8n16/gen4esp32_4MBapp_4MBota_7MBspiffs.csv delete mode 100644 variants/esp32_s3r8n16/gen4esp32_8MBapp_8MBota.csv delete mode 100644 variants/esp32_s3r8n16/pins_arduino.h delete mode 100644 variants/esp32c2/pins_arduino.h delete mode 100644 variants/esp32c3-devkit-lipo/pins_arduino.h delete mode 100644 variants/esp32c6-evb/pins_arduino.h delete mode 100644 variants/esp32c6/pins_arduino.h delete mode 100644 variants/esp32da/pins_arduino.h delete mode 100644 variants/esp32h2/pins_arduino.h delete mode 100755 variants/esp32micromod/pins_arduino.h delete mode 100644 variants/esp32s2-devkit-lipo-usb/pins_arduino.h delete mode 100644 variants/esp32s2-devkit-lipo/pins_arduino.h delete mode 100644 variants/esp32s2/pins_arduino.h delete mode 100644 variants/esp32s2thing_plus/pins_arduino.h delete mode 100644 variants/esp32s2usb/pins_arduino.h delete mode 100644 variants/esp32s3-devkit-lipo/pins_arduino.h delete mode 100644 variants/esp32s3/pins_arduino.h delete mode 100644 variants/esp32s3_powerfeather/pins_arduino.h delete mode 100644 variants/esp32s3box/pins_arduino.h delete mode 100644 variants/esp32s3camlcd/pins_arduino.h delete mode 100644 variants/esp32s3usbotg/pins_arduino.h delete mode 100644 variants/esp32s3usbotg/variant.cpp delete mode 100644 variants/esp32thing/pins_arduino.h delete mode 100644 variants/esp32thing_plus/pins_arduino.h delete mode 100644 variants/esp32thing_plus_c/pins_arduino.h delete mode 100644 variants/esp32vn-iot-uno/pins_arduino.h delete mode 100644 variants/esp_c3_m1_i_kit/pins_arduino.h delete mode 100644 variants/espea32/pins_arduino.h delete mode 100644 variants/espectro32/pins_arduino.h delete mode 100644 variants/espino32/pins_arduino.h delete mode 100644 variants/feather_esp32/pins_arduino.h delete mode 100644 variants/firebeetle32/pins_arduino.h delete mode 100644 variants/fm-devkit/pins_arduino.h delete mode 100644 variants/franzininho_wifi_esp32s2/pins_arduino.h delete mode 100644 variants/franzininho_wifi_msc_esp32s2/pins_arduino.h delete mode 100644 variants/frog32/pins_arduino.h rename variants/{esp32c3 => garaginator}/pins_arduino.h (65%) delete mode 100644 variants/gpy/pins_arduino.h delete mode 100644 variants/healthypi4/pins_arduino.h delete mode 100644 variants/heltec_wifi_kit_32/pins_arduino.h delete mode 100644 variants/heltec_wifi_kit_32_V3/pins_arduino.h delete mode 100644 variants/heltec_wifi_lora_32/pins_arduino.h delete mode 100644 variants/heltec_wifi_lora_32_V2/pins_arduino.h delete mode 100644 variants/heltec_wifi_lora_32_V3/pins_arduino.h delete mode 100644 variants/heltec_wireless_stick/pins_arduino.h delete mode 100644 variants/heltec_wireless_stick_lite/pins_arduino.h delete mode 100644 variants/heltec_wireless_stick_lite_v3/pins_arduino.h delete mode 100644 variants/heltec_wireless_tracker/pins_arduino.h delete mode 100644 variants/honeylemon/pins_arduino.h delete mode 100644 variants/hornbill32dev/pins_arduino.h delete mode 100644 variants/hornbill32minima/pins_arduino.h delete mode 100644 variants/imbrios-logsens-v1p1/pins_arduino.h delete mode 100644 variants/intorobot-fig/pins_arduino.h delete mode 100644 variants/ioxesp32/pins_arduino.h delete mode 100644 variants/lilygo_t_display/pins_arduino.h delete mode 100644 variants/lilygo_t_display_s3/pins_arduino.h delete mode 100644 variants/lionbit/pins_arduino.h delete mode 100644 variants/lionbits3/pins_arduino.h delete mode 100755 variants/lolin32-lite/pins_arduino.h delete mode 100644 variants/lolin32/pins_arduino.h delete mode 100644 variants/lolin_c3_mini/pins_arduino.h delete mode 100644 variants/lolin_s2_mini/pins_arduino.h delete mode 100644 variants/lolin_s2_pico/pins_arduino.h delete mode 100644 variants/lolin_s3/pins_arduino.h delete mode 100644 variants/lolin_s3_mini/pins_arduino.h delete mode 100644 variants/lolin_s3_pro/pins_arduino.h delete mode 100644 variants/lopy/pins_arduino.h delete mode 100644 variants/lopy4/pins_arduino.h delete mode 100644 variants/m5stack_atom/pins_arduino.h delete mode 100644 variants/m5stack_atoms3/pins_arduino.h delete mode 100644 variants/m5stack_capsule/pins_arduino.h delete mode 100644 variants/m5stack_cardputer/pins_arduino.h delete mode 100644 variants/m5stack_core/pins_arduino.h delete mode 100644 variants/m5stack_core2/pins_arduino.h delete mode 100644 variants/m5stack_coreink/pins_arduino.h delete mode 100644 variants/m5stack_cores3/pins_arduino.h delete mode 100644 variants/m5stack_dial/pins_arduino.h delete mode 100644 variants/m5stack_fire/pins_arduino.h delete mode 100644 variants/m5stack_paper/pins_arduino.h delete mode 100644 variants/m5stack_poe_cam/pins_arduino.h delete mode 100644 variants/m5stack_stamp_c3/pins_arduino.h delete mode 100644 variants/m5stack_stamp_pico/pins_arduino.h delete mode 100644 variants/m5stack_stamp_s3/pins_arduino.h delete mode 100644 variants/m5stack_station/pins_arduino.h delete mode 100644 variants/m5stack_stickc/pins_arduino.h delete mode 100644 variants/m5stack_stickc_plus/pins_arduino.h delete mode 100644 variants/m5stack_stickc_plus2/pins_arduino.h delete mode 100644 variants/m5stack_timer_cam/pins_arduino.h delete mode 100644 variants/m5stack_tough/pins_arduino.h delete mode 100644 variants/m5stack_unit_cam/pins_arduino.h delete mode 100644 variants/m5stack_unit_cams3/pins_arduino.h delete mode 100644 variants/magicbit/pins_arduino.h delete mode 100644 variants/makergo_c3_supermini/pins_arduino.h delete mode 100644 variants/metro_esp-32/pins_arduino.h delete mode 100644 variants/mgbot-iotik32a/pins_arduino.h delete mode 100644 variants/mgbot-iotik32b/pins_arduino.h delete mode 100644 variants/mhetesp32devkit/pins_arduino.h delete mode 100644 variants/mhetesp32minikit/pins_arduino.h delete mode 100644 variants/micro_s2/pins_arduino.h delete mode 100644 variants/mpython/pins_arduino.h delete mode 100644 variants/namino_arancio/pins_arduino.h delete mode 100644 variants/namino_bianco/pins_arduino.h delete mode 100644 variants/namino_rosso/pins_arduino.h delete mode 100644 variants/nano32/pins_arduino.h delete mode 100644 variants/nina_w10/pins_arduino.h delete mode 100644 variants/node32s/pins_arduino.h delete mode 100644 variants/nodemcu-32s/pins_arduino.h delete mode 100644 variants/nologo_esp32c3_super_mini/pins_arduino.h delete mode 100644 variants/nologo_esp32s3_pico/pins_arduino.h delete mode 100644 variants/nora_w10/pins_arduino.h delete mode 100644 variants/odroid_esp32/pins_arduino.h delete mode 100644 variants/onehorse32dev/pins_arduino.h delete mode 100644 variants/openkb/pins_arduino.h delete mode 100644 variants/oroca_edubot/pins_arduino.h delete mode 100644 variants/pico32/pins_arduino.h delete mode 100644 variants/piranha_esp-32/pins_arduino.h delete mode 100644 variants/pocket_32/pins_arduino.h delete mode 100644 variants/quantum/pins_arduino.h delete mode 100644 variants/redpill_esp32s3/pins_arduino.h delete mode 100644 variants/redpill_esp32s3/tinyuf2.bin delete mode 100644 variants/roboheart_hercules/pins_arduino.h delete mode 100644 variants/sensebox_mcu_esp32s2/bootloader-tinyuf2.bin delete mode 100644 variants/sensebox_mcu_esp32s2/partitions-4MB-tinyuf2.csv delete mode 100644 variants/sensebox_mcu_esp32s2/pins_arduino.h delete mode 100644 variants/sensebox_mcu_esp32s2/tinyuf2.bin delete mode 100644 variants/sensebox_mcu_esp32s2/variant.cpp delete mode 100644 variants/sonoff_dualr3/pins_arduino.h delete mode 100644 variants/sparkfun_esp32_iot_redboard/pins_arduino.h delete mode 100644 variants/sparkfun_esp32c6_qwiic_pocket/pins_arduino.h delete mode 100644 variants/sparkfun_esp32c6_thing_plus/pins_arduino.h delete mode 100755 variants/sparkfun_lora_gateway_1-channel/pins_arduino.h delete mode 100644 variants/sparkfun_pro_micro_esp32c3/pins_arduino.h delete mode 100644 variants/tamc_termod_s3/pins_arduino.h delete mode 100644 variants/tamc_termod_s3/variant.cpp delete mode 100644 variants/tbeam/pins_arduino.h delete mode 100644 variants/ttgo-lora32-v1/pins_arduino.h delete mode 100644 variants/ttgo-lora32-v2/pins_arduino.h delete mode 100644 variants/ttgo-lora32-v21new/pins_arduino.h delete mode 100644 variants/ttgo-t-oi-plus/pins_arduino.h delete mode 100644 variants/ttgo-t1/pins_arduino.h delete mode 100755 variants/ttgo-t7-v13-mini32/pins_arduino.h delete mode 100755 variants/ttgo-t7-v14-mini32/pins_arduino.h delete mode 100644 variants/turta_iot_node/pins_arduino.h delete mode 100644 variants/twatch/pins_arduino.h delete mode 100644 variants/uPesy_edu_esp32/pins_arduino.h delete mode 100644 variants/uPesy_esp32_wroom_devkit/pins_arduino.h delete mode 100644 variants/uPesy_esp32_wrover_devkit/pins_arduino.h delete mode 100644 variants/uPesy_esp32c3_basic/pins_arduino.h delete mode 100644 variants/uPesy_esp32c3_mini/pins_arduino.h delete mode 100644 variants/uPesy_esp32s3_basic/pins_arduino.h delete mode 100644 variants/um_feathers2/pins_arduino.h delete mode 100644 variants/um_feathers2neo/pins_arduino.h delete mode 100644 variants/um_feathers3/bootloader_tinyuf2.bin delete mode 100644 variants/um_feathers3/partitions_tinyuf2.csv delete mode 100644 variants/um_feathers3/pins_arduino.h delete mode 100644 variants/um_feathers3/tinyuf2.bin delete mode 100644 variants/um_nanos3/bootloader_tinyuf2.bin delete mode 100644 variants/um_nanos3/partitions_tinyuf2.csv delete mode 100644 variants/um_nanos3/pins_arduino.h delete mode 100644 variants/um_nanos3/tinyuf2.bin delete mode 100644 variants/um_pros3/bootloader_tinyuf2.bin delete mode 100644 variants/um_pros3/partitions_tinyuf2.csv delete mode 100644 variants/um_pros3/pins_arduino.h delete mode 100644 variants/um_pros3/tinyuf2.bin delete mode 100644 variants/um_rmp/pins_arduino.h delete mode 100644 variants/um_tinyc6/pins_arduino.h delete mode 100644 variants/um_tinypico/pins_arduino.h delete mode 100644 variants/um_tinys2/pins_arduino.h delete mode 100644 variants/um_tinys3/bootloader_tinyuf2.bin delete mode 100644 variants/um_tinys3/partitions_tinyuf2.csv delete mode 100644 variants/um_tinys3/pins_arduino.h delete mode 100644 variants/um_tinys3/tinyuf2.bin delete mode 100644 variants/unphone8/pins_arduino.h delete mode 100644 variants/unphone9/pins_arduino.h delete mode 100644 variants/vintlabsdevkitv1/pins_arduino.h delete mode 100644 variants/watchy/pins_arduino.h delete mode 100644 variants/wesp32/pins_arduino.h delete mode 100644 variants/widora-air/pins_arduino.h delete mode 100644 variants/wifiduino32/pins_arduino.h delete mode 100644 variants/wifiduino32s3/pins_arduino.h delete mode 100644 variants/wifiduinov2/pins_arduino.h delete mode 100644 variants/wipy3/pins_arduino.h delete mode 100644 variants/wt32-eth01/pins_arduino.h delete mode 100644 variants/xinabox/pins_arduino.h diff --git a/.github/ISSUE_TEMPLATE/Feature-request.yml b/.github/ISSUE_TEMPLATE/Feature-request.yml deleted file mode 100644 index 0788288036c..00000000000 --- a/.github/ISSUE_TEMPLATE/Feature-request.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: Feature request -description: Suggest an idea for this project -labels: ["Type: Feature request"] -body: - - type: markdown - attributes: - value: | - * We welcome any ideas or feature requests! It is helpful if you can explain exactly why the feature would be useful. - * There are usually some outstanding feature requests in the [existing issues list](https://github.com/espressif/arduino-esp32/issues?q=is%3Aopen+is%3Aissue+label%3A%22Type%3A+Feature+request%22), feel free to add comments to them. - * If you would like to contribute, please read the [contributions guide](https://docs.espressif.com/projects/arduino-esp32/en/latest/contributing.html). - - type: input - id: Area - attributes: - label: Related area - description: Please briefly explain the area of your Feature Request. - placeholder: eg. Board support, specific Peripheral, BT, Wifi... - validations: - required: true - - type: input - id: HW - attributes: - label: Hardware specification - description: Please provide if your proposal depends on specific Hardware. - placeholder: eg. Support for ESP32 DevKitC, ESP32-C3 DevKitM... - validations: - required: true - - type: textarea - id: problem-related - attributes: - label: Is your feature request related to a problem? - description: Please provide a clear and concise description of what the problem is. Add relevant issue link. - placeholder: ex. I'm facing the issue/missing function... - validations: - required: true - - type: textarea - id: solution - attributes: - label: Describe the solution you'd like - description: Please provide a clear and concise description of what you want to happen. - placeholder: ex. When using this function... - validations: - required: true - - type: textarea - id: alternatives - attributes: - label: Describe alternatives you've considered - description: Please provide a clear and concise description of any alternative solutions or features you've considered. - placeholder: ex. Choosing other approach wouldn't work, because... - - type: textarea - id: context - attributes: - label: Additional context - description: Please add any other context or screenshots about the feature request here. - placeholder: ex. This would work only when ... - - type: checkboxes - id: confirmation - attributes: - label: I have checked existing list of Feature requests and the Contribution Guide - description: You agree to check all the resources above before opening a new Feature request. - options: - - label: I confirm I have checked existing list of Feature requests and Contribution Guide. - required: true diff --git a/.github/ISSUE_TEMPLATE/Issue-report.yml b/.github/ISSUE_TEMPLATE/Issue-report.yml deleted file mode 100644 index f870646e647..00000000000 --- a/.github/ISSUE_TEMPLATE/Issue-report.yml +++ /dev/null @@ -1,144 +0,0 @@ -name: Issue report -description: Report any problem here -labels: ["Status: Awaiting triage"] -body: - - type: markdown - attributes: - value: | - * Before reporting a new issue please check and search in [List of existing issues](https://github.com/espressif/arduino-esp32/issues?q=is%3Aissue) - * Please check [Online Documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/index.html) - * Take a look on [Troubleshooting guide](https://docs.espressif.com/projects/arduino-esp32/en/latest/troubleshooting.html) - * If still experiencing the issue, please provide as many details as possible below about your hardware, computer setup and code. - - type: input - id: Board - attributes: - label: Board - description: On which Board does this issue occur? - placeholder: eg. ESP32 Dev Module, ESP32-S2, LilyGo TTGO LoRa32... - validations: - required: true - - type: textarea - id: devboard - attributes: - label: Device Description - description: What development board or other hardware is the chip attached to? - placeholder: ex. DevKitC, plain module on breadboard, etc. If your hardware is custom or unusual, please attach a photo. - validations: - required: true - - type: textarea - id: other-hw - attributes: - label: Hardware Configuration - description: Is anything else attached to the development board? - placeholder: ex. GPIO 18 & 19 are connected to I2C devices. - validations: - required: true - - type: dropdown - id: version - attributes: - label: Version - description: What version of Arduino ESP32 are you running? If possible, consider updating to the latest version. - options: - - latest master (checkout manually) - - latest development Release Candidate (RC-X) - - v2.0.14 - - v2.0.13 - - v2.0.12 - - v2.0.11 - - v2.0.10 - - v2.0.9 - - v2.0.8 - - v2.0.7 - - v2.0.6 - - v2.0.5 - - v2.0.4 - - v2.0.3 - - v2.0.2 - - v2.0.1 - - v2.0.0 - - v1.0.6 - - other - validations: - required: true - - type: input - id: IDE - attributes: - label: IDE Name - description: What IDE are you using? - placeholder: eg. Arduino IDE, PlatformIO, Sloeber... - validations: - required: true - - type: input - id: os - attributes: - label: Operating System - description: On which OS does this issue occur? - placeholder: ex. macOS 12.1, Windows 10... - validations: - required: true - - type: input - id: Flash - attributes: - label: Flash frequency - description: What flash frequency is used? - placeholder: eg. 40Mhz - validations: - required: true - - type: dropdown - id: PSRAM - attributes: - label: PSRAM enabled - description: Is PSRAM enabled? - options: - - 'yes' - - 'no' - validations: - required: true - - type: input - id: Upload - attributes: - label: Upload speed - description: What upload speed is used? - placeholder: eg. 115200 - validations: - required: true - - type: textarea - id: Description - attributes: - label: Description - description: Please describe your problem here and expected behaviour - placeholder: ex. Can't connect/weird behaviour/wrong function/missing parameter.. - validations: - required: true - - type: textarea - id: sketch - attributes: - label: Sketch - description: Please provide full minimal sketch/code which can be run to reproduce your issue - placeholder: ex. Related part of the code to replicate the issue - render: cpp - validations: - required: true - - type: textarea - id: Debug - attributes: - label: Debug Message - description: Please provide a debug message or error message. If you have a Guru Meditation Error or Backtrace, please decode it with [ExceptionDecoder](https://github.com/me-no-dev/EspExceptionDecoder) - placeholder: Enable Core debug level - Debug on tools menu of Arduino IDE, then put the serial output here. - render: plain - validations: - required: true - - type: textarea - id: other-remarks - attributes: - label: Other Steps to Reproduce - description: Is there any other information you can think of which will help us reproduce this problem? Any additional info can be added as well. - placeholder: ex. I also tried on other OS, HW...it works correctly on that setup. - - type: checkboxes - id: confirmation - attributes: - label: I have checked existing issues, online documentation and the Troubleshooting Guide - description: You agree to check all the resources above before opening a new issue. - options: - - label: I confirm I have checked existing issues, online documentation and Troubleshooting guide. - required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml deleted file mode 100644 index 2a9b0ef82e0..00000000000 --- a/.github/ISSUE_TEMPLATE/config.yml +++ /dev/null @@ -1,8 +0,0 @@ -blank_issues_enabled: false -contact_links: - - name: Arduino ESP32 Gitter Channel - url: https://gitter.im/espressif/arduino-esp32 - about: Community channel for questions and help - - name: ESP32 Forum - Arduino - url: https://esp32.com/viewforum.php?f=19 - about: Official Forum for questions \ No newline at end of file diff --git a/.github/workflows/build_py_tools.yml b/.github/workflows/build_py_tools.yml deleted file mode 100644 index e83f566e170..00000000000 --- a/.github/workflows/build_py_tools.yml +++ /dev/null @@ -1,141 +0,0 @@ -name: Build Python Tools - -on: - pull_request: - paths: - - 'tools/get.py' - - 'tools/espota.py' - - 'tools/gen_esp32part.py' - - 'tools/gen_insights_package.py' - -jobs: - find-changed-tools: - name: Check if tools have been changed - runs-on: ubuntu-20.04 - outputs: - any_changed: ${{ steps.verify-changed-files.outputs.any_changed }} - all_changed_files: ${{ steps.verify-changed-files.outputs.all_changed_files }} - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 2 - ref: ${{ github.event.pull_request.head.ref }} - - name: Verify Python Tools Changed - uses: tj-actions/changed-files@v41 - id: verify-changed-files - with: - fetch_depth: '2' - since_last_remote_commit: 'true' - files: | - tools/get.py - tools/espota.py - tools/gen_esp32part.py - tools/gen_insights_package.py - - name: List all changed files - shell: bash - run: | - for file in ${{ steps.verify-changed-files.outputs.all_changed_files }}; do - echo "$file was changed" - done - - build-pytools-binaries: - name: Build python tools binaries for ${{ matrix.os }} - runs-on: ${{ matrix.os }} - needs: find-changed-tools - if: needs.find-changed-tools.outputs.any_changed == 'true' - strategy: - fail-fast: false - matrix: - os: [windows-latest, macos-latest, ubuntu-20.04, ARM, ARM64] - include: - - os: windows-latest - TARGET: win64 - EXTEN: .exe - SEPARATOR: ';' - - os: macos-latest - TARGET: macos - SEPARATOR: ':' - - os: ubuntu-20.04 - TARGET: linux-amd64 - SEPARATOR: ':' - - os: ARM - CONTAINER: python:3.8-bullseye - TARGET: arm - SEPARATOR: ':' - - os: ARM64 - CONTAINER: python:3.8-bullseye - TARGET: arm64 - SEPARATOR: ':' - container: ${{ matrix.CONTAINER }} # use python container on ARM - env: - DISTPATH: pytools-${{ matrix.TARGET }} - PIP_EXTRA_INDEX_URL: "https://dl.espressif.com/pypi" - steps: - - name: List changed tools - shell: bash - run: | - CHANGED_FILES=() - for file in ${{ needs.find-changed-tools.outputs.all_changed_files }}; do - file="${file#*\/}" - file="${file%\.*}" - CHANGED_FILES+=("$file") - done - CHANGED_FILES="${CHANGED_FILES[@]}" - echo "CHANGED_TOOLS=$CHANGED_FILES" >> "$GITHUB_ENV" - for tool in ${{ env.CHANGED_TOOLS }}; do - echo "tool $tool was changed" - done - - name: Checkout repository - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.head.ref }} - - name: Set up Python 3.8 - # Skip setting python on ARM because of missing compatibility: https://github.com/actions/setup-python/issues/108 - if: matrix.os != 'ARM' && matrix.os != 'ARM64' - uses: actions/setup-python@master - with: - python-version: 3.8 - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install pyinstaller requests - - name: Build with PyInstaller - shell: bash - run: | - for tool in ${{ env.CHANGED_TOOLS }}; do - pyinstaller --distpath ./${{ env.DISTPATH }} -F --icon=.github/pytools/espressif.ico tools/$tool.py - done - - name: Sign binaries - if: matrix.os == 'windows-latest' - env: - CERTIFICATE: ${{ secrets.CERTIFICATE }} - CERTIFICATE_PASSWORD: ${{ secrets.CERTIFICATE_PASSWORD }} - shell: pwsh - run: | - $data = Write-Output ${{ env.CHANGED_TOOLS }} - foreach ( $node in $data ) - { - ./.github/pytools/Sign-File.ps1 -Path ./${{ env.DISTPATH }}/$node.exe - } - - name: Test binaries - shell: bash - run: | - for tool in ${{ env.CHANGED_TOOLS }}; do - ./${{ env.DISTPATH }}/$tool${{ matrix.EXTEN }} -h - done - - name: Push binary to tools - if: matrix.os == 'windows-latest' - env: - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - shell: bash - run: | - for tool in ${{ env.CHANGED_TOOLS }}; do - cp -f ./${{ env.DISTPATH }}/$tool.exe tools/$tool.exe - done - bash .github/scripts/upload_py_tools.sh "${{ env.CHANGED_TOOLS }}" - - name: Archive artifact - uses: actions/upload-artifact@master - with: - name: ${{ env.DISTPATH }} - path: ${{ env.DISTPATH }} diff --git a/.github/workflows/dangerjs.yml b/.github/workflows/dangerjs.yml deleted file mode 100644 index 9f7360bc34f..00000000000 --- a/.github/workflows/dangerjs.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: DangerJS Pull Request linter -on: - pull_request_target: - types: [opened, edited, reopened, synchronize] - -permissions: - pull-requests: write - contents: write - -jobs: - pull-request-style-linter: - runs-on: ubuntu-latest - steps: - - name: Check out PR head - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.head.sha }} - - - name: DangerJS pull request linter - uses: espressif/shared-github-dangerjs@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/docs_build.yml b/.github/workflows/docs_build.yml deleted file mode 100644 index d5cd652f3df..00000000000 --- a/.github/workflows/docs_build.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Documentation Build and Deploy CI - -on: - push: - branches: - - master - - release/* - paths: - - 'docs/**' - - '.github/workflows/docs_build.yml' - pull_request: - paths: - - 'docs/**' - - '.github/workflows/docs_build.yml' - -jobs: - - build-docs: - name: Build ESP-Docs - runs-on: ubuntu-22.04 - defaults: - run: - shell: bash - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - name: Build - run: | - sudo apt update - sudo apt install python3-pip python3-setuptools - # GitHub CI installs pip3 and setuptools outside the path. - # Update the path to include them and run. - cd ./docs - PATH=/home/runner/.local/bin:$PATH pip3 install -r requirements.txt --prefer-binary - PATH=/home/runner/.local/bin:$PATH SPHINXOPTS="-W" build-docs -l en - - name: Archive Docs - uses: actions/upload-artifact@v2 - with: - name: docs - path: docs diff --git a/.github/workflows/docs_deploy.yml b/.github/workflows/docs_deploy.yml deleted file mode 100644 index 07dc03ba547..00000000000 --- a/.github/workflows/docs_deploy.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: Documentation Build and Production Deploy CI - -on: - release: - types: [published] - push: - branches: - - release/* - - master - paths: - - 'docs/**' - - '.github/workflows/docs_deploy.yml' - -jobs: - - deploy-prod-docs: - name: Deploy Documentation on Production - runs-on: ubuntu-22.04 - defaults: - run: - shell: bash - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - name: Deploy Documentation - env: - # Deploy to production server - # DOCS_BUILD_DIR: "./docs/_build/" - DOCS_DEPLOY_PRIVATEKEY: ${{ secrets.DOCS_KEY }} - DOCS_DEPLOY_PATH: ${{ secrets.DOCS_PATH }} - DOCS_DEPLOY_SERVER: ${{ secrets.DOCS_SERVER }} - DOCS_DEPLOY_SERVER_USER: ${{ secrets.DOCS_USER }} - DOCS_DEPLOY_URL_BASE: ${{ secrets.DOCS_URL }} - run: | - sudo apt update - sudo apt install python3-pip python3-setuptools - source ./docs/utils.sh - add_doc_server_ssh_keys $DOCS_DEPLOY_PRIVATEKEY $DOCS_DEPLOY_SERVER $DOCS_DEPLOY_SERVER_USER - export GIT_VER=$(git describe --always) - echo "PIP install requirements..." - pip3 install --user -r ./docs/requirements.txt - echo "Building the Docs..." - cd ./docs && build-docs -l en - echo "Deploy the Docs..." - export DOCS_BUILD_DIR=$GITHUB_WORKSPACE/docs/ - cd $GITHUB_WORKSPACE/docs - deploy-docs diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml deleted file mode 100644 index 5d8e1794a8a..00000000000 --- a/.github/workflows/gh-pages.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: GitHub Pages CI - -on: - push: - branches: - - master - - pages - paths: - - 'README.md' - - '.github/scripts/on-pages.sh' - - '.github/workflows/gh-pages.yml' - -jobs: - - build-pages: - name: Build GitHub Pages - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Copy Files - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: bash ./.github/scripts/on-pages.sh diff --git a/.github/workflows/hil.yml b/.github/workflows/hil.yml deleted file mode 100644 index 0b29d4aafb9..00000000000 --- a/.github/workflows/hil.yml +++ /dev/null @@ -1,118 +0,0 @@ -name: Run tests in hardware - -on: - pull_request: - types: [opened, reopened, synchronize, labeled] - - schedule: - - cron: '0 2 * * *' - -env: - MAX_CHUNKS: 15 - -concurrency: - group: hil-${{github.event.pull_request.number || github.ref}} - cancel-in-progress: true - -jobs: - gen_chunks: - if: | - contains(github.event.pull_request.labels.*.name, 'hil_test') || - (github.event_name == 'schedule' && github.repository == 'espressif/arduino-esp32') - name: Generate Chunks matrix - runs-on: ubuntu-latest - outputs: - chunks: ${{ steps.gen-chunks.outputs.chunks }} - steps: - - name: Checkout Repository - uses: actions/checkout@v4 - - - name: Generate Chunks matrix - id: gen-chunks - run: | - set +e - .github/scripts/sketch_utils.sh count tests - sketches=$? - if [[ $sketches -ge ${{env.MAX_CHUNKS}} ]]; then - $sketches=${{env.MAX_CHUNKS}} - fi - set -e - rm sketches.txt - CHUNKS=$(jq -c -n '$ARGS.positional' --args `seq 0 1 $((sketches - 1))`) - echo "chunks=${CHUNKS}" >>$GITHUB_OUTPUT - - Build: - needs: gen_chunks - name: ${{matrix.chip}}-Build#${{matrix.chunks}} - runs-on: ubuntu-latest - strategy: - matrix: - chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2'] - chunks: ${{fromJson(needs.gen_chunks.outputs.chunks)}} - steps: - - name: Checkout Repository - uses: actions/checkout@v4 - - name: Build sketches - run: | - bash .github/scripts/tests_build.sh -c -t ${{matrix.chip}} -i ${{matrix.chunks}} -m ${{env.MAX_CHUNKS}} - - name: Upload ${{matrix.chip}}-${{matrix.chunks}} artifacts - uses: actions/upload-artifact@v3 - with: - name: ${{matrix.chip}}-${{matrix.chunks}}.artifacts - path: | - ~/.arduino/tests/*/build*.tmp/*.bin - ~/.arduino/tests/*/build*.tmp/*.json - if-no-files-found: error - Test: - needs: [gen_chunks, Build] - name: ${{matrix.chip}}-Test#${{matrix.chunks}} - strategy: - fail-fast: false - matrix: - chip: ['esp32', 'esp32s2', 'esp32s3', 'esp32c3', 'esp32c6', 'esp32h2'] - chunks: ${{fromJson(needs.gen_chunks.outputs.chunks)}} - runs-on: [arduino, "${{matrix.chip}}"] - container: - image: python:3.10.1-bullseye - options: --privileged - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Download ${{matrix.chip}}-${{matrix.chunks}} artifacts - uses: actions/download-artifact@v3 - with: - name: ${{matrix.chip}}-${{matrix.chunks}}.artifacts - path: ~/.arduino/tests/ - - - name: Install dependencies - run: | - pip install -U pip - pip install -r tests/requirements.txt --extra-index-url https://dl.espressif.com/pypi - apt update && apt install -y -qq jq - - - name: Run Tests - run: | - bash .github/scripts/tests_run.sh -c -t ${{matrix.chip}} -i ${{matrix.chunks}} -m ${{env.MAX_CHUNKS}} -e - - - name: Upload test result artifacts - uses: actions/upload-artifact@v3 - if: always() - with: - name: test_results-${{matrix.chip}}-${{matrix.chunks}} - path: tests/*/*.xml - - event_file: - name: "Event File" - if: | - contains(github.event.pull_request.labels.*.name, 'hil_test') || - github.event_name == 'schedule' - needs: Test - runs-on: ubuntu-latest - steps: - - name: Upload - uses: actions/upload-artifact@v3 - with: - name: Event File - path: ${{github.event_path}} diff --git a/.github/workflows/lib.json b/.github/workflows/lib.json deleted file mode 100644 index 453267a2d2d..00000000000 --- a/.github/workflows/lib.json +++ /dev/null @@ -1,66 +0,0 @@ -[ - { - "name": "Adafruit NeoPixel", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/Adafruit_NeoPixel/examples/strandtest/strandtest.ino" - ] - }, - { - "name": "ArduinoBLE", - "exclude_targets": [ - "esp32s2" - ], - "sketch_path": [ - "~/Arduino/libraries/ArduinoBLE/examples/Central/Scan/Scan.ino" - ] - }, - { - "name": "ESP32Servo", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/ESP32Servo/examples/Multiple-Servo-Example-Arduino/Multiple-Servo-Example-Arduino.ino" - ] - }, - { - "source-url": "https://github.com/me-no-dev/ESPAsyncWebServer.git", - "required-libs": [ - {"source-url": "https://github.com/me-no-dev/AsyncTCP.git"} - ], - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/ESPAsyncWebServer/examples/CaptivePortal/CaptivePortal.ino", - "~/Arduino/libraries/ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino", - "~/Arduino/libraries/ESPAsyncWebServer/examples/regex_patterns/regex_patterns.ino", - "~/Arduino/libraries/ESPAsyncWebServer/examples/simple_server/simple_server.ino" - ] - }, - { - "name": "FastLED", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/FastLED/examples/Blink/Blink.ino" - ] - }, - { - "name": "IRremote", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/IRremote/examples/SendDemo/SendDemo.ino" - ] - }, - { - "name": "MFRC522", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/MFRC522/examples/ReadUidMultiReader/ReadUidMultiReader.ino" - ] - }, - { - "name": "WS2812FX", - "exclude_targets": [], - "sketch_path": [ - "~/Arduino/libraries/WS2812FX/examples/ws2812fx_spi/ws2812fx_spi.ino" - ] - } -] \ No newline at end of file diff --git a/.github/workflows/lib.yml b/.github/workflows/lib.yml deleted file mode 100644 index 3995aaad4fd..00000000000 --- a/.github/workflows/lib.yml +++ /dev/null @@ -1,135 +0,0 @@ -name: External Libraries Test - -# The workflow will run on schedule and labeled pull requests -on: - pull_request: - types: [opened, reopened, synchronize, labeled] - - # Schedule weekly builds on every Sunday at 4 am - schedule: - - cron: '0 4 * * SUN' - -env: - # It's convenient to set variables for values used multiple times in the workflow - SKETCHES_REPORTS_PATH: libraries-report - SKETCHES_REPORTS_ARTIFACT_NAME: libraries-report - RESULT_LIBRARY_TEST_FILE: LIBRARIES_TEST.md - JSON_LIBRARY_LIST_FILE: .github/workflows/lib.json - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - -jobs: - compile-sketch: - if: | - contains(github.event.pull_request.labels.*.name, 'lib_test') || - (github.event_name == 'schedule' && github.repository == 'espressif/arduino-esp32') - runs-on: ubuntu-latest - - env: - REPOSITORY: | - - source-path: '.' - name: "espressif:esp32" - - strategy: - matrix: - target: - - esp32 - - esp32s2 - - esp32c3 - - esp32s3 - - esp32c6 - - esp32h2 - - include: - - target: esp32 - fqbn: espressif:esp32:esp32 - - target: esp32s2 - fqbn: espressif:esp32:esp32s2 - - target: esp32c3 - fqbn: espressif:esp32:esp32c3 - - target: esp32s3 - fqbn: espressif:esp32:esp32s3 - - target: esp32c6 - fqbn: espressif:esp32:esp32c6 - - target: esp32h2 - fqbn: espressif:esp32:esp32h2 - - - steps: - # This step makes the contents of the repository available to the workflow - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Compile sketch - uses: P-R-O-C-H-Y/compile-sketches@main - with: - platforms: | - ${{ env.REPOSITORY }} - target: ${{ matrix.target }} - fqbn: ${{ matrix.fqbn }} - use-json-file: true - json-path: ${{ env.JSON_LIBRARY_LIST_FILE }} - enable-deltas-report: true - sketches-report-path: ${{ env.SKETCHES_REPORTS_PATH }} - enable-warnings-report: true - cli-compile-flags: | - - --warnings="all" - - - name: Upload artifact - uses: actions/upload-artifact@v3 - with: - name: ${{ env.SKETCHES_REPORTS_ARTIFACT_NAME }} - path: ${{ env.SKETCHES_REPORTS_PATH }} - - report-to-file: - needs: compile-sketch # Wait for the compile job to finish to get the data for the report - if: github.event_name == 'schedule' # Only run the job when the workflow is triggered by a schedule - runs-on: ubuntu-latest - steps: - # Check out repository - - name: Checkout repository - uses: actions/checkout@v4 - with: - token: ${{ env.GITHUB_TOKEN }} - fetch-depth: '0' - - - name: Switch branch - run: - git checkout remotes/origin/gh-pages - - # This step is needed to get the size data produced by the compile jobs - - name: Download sketches reports artifact - uses: actions/download-artifact@v3 - with: - name: ${{ env.SKETCHES_REPORTS_ARTIFACT_NAME }} - path: ${{ env.SKETCHES_REPORTS_PATH }} - - - name: Report results - uses: P-R-O-C-H-Y/report-size-deltas@main - with: - sketches-reports-source: ${{ env.SKETCHES_REPORTS_PATH }} - destination-file: ${{ env.RESULT_LIBRARY_TEST_FILE }} - - - name: Append file with action URL - run: - echo "/ [GitHub Action Link](https://github.com/${{github.repository}}/actions/runs/${{github.run_id}})" >> ${{ env.RESULT_LIBRARY_TEST_FILE }} - - - name: Push to github repo - run: | - git config user.name github-actions - git config user.email github-actions@github.com - git add ${{ env.RESULT_LIBRARY_TEST_FILE }} - git commit -m "Generated External Libraries Test Results" - git push origin HEAD:gh-pages - - event_file: - name: "Event File" - if: | - contains(github.event.pull_request.labels.*.name, 'lib_test') - needs: compile-sketch - runs-on: ubuntu-latest - steps: - - name: Upload - uses: actions/upload-artifact@v2 - with: - name: Event File - path: ${{github.event_path}} \ No newline at end of file diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml deleted file mode 100644 index 34d3564c4a8..00000000000 --- a/.github/workflows/publish.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Unit Test Results - -on: - workflow_run: - workflows: [Run tests in hardware] - branches-ignore: [master] - - types: - - completed - -jobs: - unit-test-results: - name: Unit Test Results - runs-on: ubuntu-latest - if: | - github.event.workflow_run.event == 'pull_request' && - (github.event.workflow_run.conclusion == 'success' || - github.event.workflow_run.conclusion == 'failure') - steps: - - name: Download and Extract Artifacts - env: - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - run: | - mkdir -p artifacts && cd artifacts - artifacts_url=${{ github.event.workflow_run.artifacts_url }} - gh api "$artifacts_url" -q '.artifacts[] | [.name, .archive_download_url] | @tsv' | while read artifact - do - IFS=$'\t' read name url <<< "$artifact" - gh api $url > "$name.zip" - unzip -d "$name" "$name.zip" - done - - name: Publish Unit Test Results - uses: EnricoMi/publish-unit-test-result-action@v1 - with: - commit: ${{ github.event.workflow_run.head_sha }} - event_file: artifacts/Event File/event.json - event_name: ${{ github.event.workflow_run.event }} - files: "artifacts/**/*.xml" diff --git a/.github/workflows/publishlib.yml b/.github/workflows/publishlib.yml deleted file mode 100644 index e4c75aefe34..00000000000 --- a/.github/workflows/publishlib.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: External Libraries Results - -on: - workflow_run: - workflows: [External Libraries Test] - types: - - completed - - workflow_dispatch: -env: - # It's convenient to set variables for values used multiple times in the workflow - SKETCHES_REPORTS_PATH: artifacts/libraries-report - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - PR_EVENT_PATH: artifacts/Event File/event.json - -jobs: - lib-test-results: - name: External Libraries Test Results - runs-on: ubuntu-latest - if: | - github.event.workflow_run.event == 'pull_request' && - github.event.workflow_run.conclusion == 'success' - - steps: - - name: Download and Extract Artifacts - run: | - mkdir -p artifacts && cd artifacts - artifacts_url=${{ github.event.workflow_run.artifacts_url }} - gh api "$artifacts_url" -q '.artifacts[] | [.name, .archive_download_url] | @tsv' | while read artifact - do - IFS=$'\t' read name url <<< "$artifact" - gh api $url > "$name.zip" - unzip -d "$name" "$name.zip" - done - - - name: Report results - uses: P-R-O-C-H-Y/report-size-deltas@main - with: - sketches-reports-source: ${{ env.SKETCHES_REPORTS_PATH }} - github-token: ${{ env.GITHUB_TOKEN }} - pr-event-path: ${{ env.PR_EVENT_PATH }} diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml deleted file mode 100644 index c7c48225ca4..00000000000 --- a/.github/workflows/push.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: ESP32 Arduino CI - -on: - workflow_dispatch: - push: - branches: - - master - - release/* - pull_request: - -concurrency: - group: build-${{github.event.pull_request.number || github.ref}} - cancel-in-progress: true - -jobs: - - cmake-check: - name: Check cmake file - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - run: bash ./.github/scripts/check-cmakelists.sh - - # Ubuntu - build-arduino-linux: - name: Arduino ${{ matrix.chunk }} on ubuntu-latest - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - chunk: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] - - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - name: Cache tools - id: cache-linux - uses: actions/cache@v4 - with: - path: | - ./tools/dist - ~/arduino_ide - key: ${{ runner.os }}-${{ hashFiles('package/package_esp32_index.template.json', - 'tools/get.py', - '.github/scripts/install-arduino-ide.sh') }} - - name: Build Sketches - run: bash ./.github/scripts/on-push.sh ${{ matrix.chunk }} 15 - - # Windows and MacOS - build-arduino-win-mac: - name: Arduino on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [windows-latest, macOS-latest] - - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - name: Build Sketches - run: bash ./.github/scripts/on-push.sh - - # PlatformIO on Windows, Ubuntu and Mac - build-platformio: - name: PlatformIO on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest, macOS-latest] - - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - name: Build Sketches - run: bash ./.github/scripts/on-push.sh 1 1 #equal and non-zero to trigger PIO - - build-esp-idf-component: - name: Build with ESP-IDF ${{ matrix.idf_ver }} for ${{ matrix.idf_target }} - runs-on: ubuntu-20.04 - strategy: - fail-fast: false - matrix: - # The version names here correspond to the versions of espressif/idf Docker image. - # See https://hub.docker.com/r/espressif/idf/tags and - # https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/tools/idf-docker-image.html - # for details. - idf_ver: ["release-v5.1"] - idf_target: ["esp32", "esp32s2", "esp32s3", "esp32c2", "esp32c3", "esp32c6", "esp32h2"] - container: espressif/idf:${{ matrix.idf_ver }} - steps: - - name: Check out arduino-esp32 as a component - uses: actions/checkout@v4 - with: - submodules: recursive - path: components/arduino-esp32 - - name: Build - env: - IDF_TARGET: ${{ matrix.idf_target }} - shell: bash - run: | - . ${IDF_PATH}/export.sh - idf.py create-project test - echo CONFIG_FREERTOS_HZ=1000 > test/sdkconfig.defaults - idf.py -C test -DEXTRA_COMPONENT_DIRS=$PWD/components build diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 3a59d7a7dc4..00000000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: ESP32 Arduino Release - -on: - release: - types: published - -jobs: - build: - name: Publish Release - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - name: Build Release - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: bash ./.github/scripts/on-release.sh diff --git a/.github/workflows/upload-idf-component.yml b/.github/workflows/upload-idf-component.yml deleted file mode 100644 index ca21361689f..00000000000 --- a/.github/workflows/upload-idf-component.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Push components to https://components.espressif.com -on: - push: - tags: - - '*' -jobs: - upload_components: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: "recursive" - - - name: Upload components to the component registry - uses: espressif/upload-components-ci-action@v1 - with: - name: arduino-esp32 - version: ${{ github.ref_name }} - namespace: espressif - api_token: ${{ secrets.IDF_COMPONENT_API_TOKEN }} diff --git a/.readthedocs.yaml b/.readthedocs.yaml deleted file mode 100644 index 115b9e7122a..00000000000 --- a/.readthedocs.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# .readthedocs.yaml -# Read the Docs configuration file -# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required -version: 2 - -# Set the version of Python and other tools you might need -build: - os: ubuntu-22.04 - tools: - python: "3.12" - -# Build documentation in the docs/ directory with Sphinx -sphinx: - configuration: docs/source/conf.py - -python: - install: - - requirements: docs/requirements.txt diff --git a/boards.txt b/boards.txt index 3261b181bf7..7eb40b9d203 100644 --- a/boards.txt +++ b/boards.txt @@ -20,33577 +20,176 @@ menu.JTAGAdapter=JTAG Adapter menu.ZigbeeMode=Zigbee Mode menu.PinNumbers=Pin Numbering -# Custom options -menu.Revision=Board Revision -menu.LORAWAN_REGION=LoRaWan Region -menu.LoRaWanDebugLevel=LoRaWan Debug Level -menu.LORAWAN_DEVEUI=LoRaWan DevEUI -menu.LORAWAN_PREAMBLE_LENGTH=LoRaWan Preamble Length - -############################################################## -### DO NOT PUT BOARDS ABOVE THE OFFICIAL ESPRESSIF BOARDS! ### -############################################################## - -esp32c2.name=ESP32C2 Dev Module -esp32c2.hide=true - -esp32c2.bootloader.tool=esptool_py -esp32c2.bootloader.tool.default=esptool_py - -esp32c2.upload.tool=esptool_py -esp32c2.upload.tool.default=esptool_py -esp32c2.upload.tool.network=esp_ota - -esp32c2.upload.maximum_size=1310720 -esp32c2.upload.maximum_data_size=327680 -esp32c2.upload.flags= -esp32c2.upload.extra_flags= -esp32c2.upload.use_1200bps_touch=false -esp32c2.upload.wait_for_upload_port=false - -esp32c2.serial.disableDTR=false -esp32c2.serial.disableRTS=false - -esp32c2.build.tarch=riscv32 -esp32c2.build.target=esp -esp32c2.build.mcu=esp32c2 -esp32c2.build.core=esp32 -esp32c2.build.variant=esp32c2 -esp32c2.build.board=ESP32C2_DEV -esp32c2.build.bootloader_addr=0x0 - -esp32c2.build.cdc_on_boot=0 -esp32c2.build.f_cpu=120000000L -esp32c2.build.flash_size=2MB -esp32c2.build.flash_freq=60m -esp32c2.build.flash_mode=qio -esp32c2.build.boot=qio -esp32c2.build.partitions=minimal -esp32c2.build.defines= - -esp32c2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c2.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c2.menu.PartitionScheme.default.build.partitions=default -esp32c2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c2.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c2.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32c2.menu.FlashMode.qio=QIO -esp32c2.menu.FlashMode.qio.build.flash_mode=dio -esp32c2.menu.FlashMode.qio.build.boot=qio -esp32c2.menu.FlashMode.dio=DIO -esp32c2.menu.FlashMode.dio.build.flash_mode=dio -esp32c2.menu.FlashMode.dio.build.boot=dio - -esp32c2.menu.FlashFreq.60=60MHz -esp32c2.menu.FlashFreq.60.build.flash_freq=60m -esp32c2.menu.FlashFreq.30=30MHz -esp32c2.menu.FlashFreq.30.build.flash_freq=30m - -esp32c2.menu.FlashSize.2M=2MB (16Mb) -esp32c2.menu.FlashSize.2M.build.flash_size=2MB -esp32c2.menu.FlashSize.2M.build.partitions=minimal -esp32c2.menu.FlashSize.4M=4MB (32Mb) -esp32c2.menu.FlashSize.4M.build.flash_size=4MB - -esp32c2.menu.UploadSpeed.921600=921600 -esp32c2.menu.UploadSpeed.921600.upload.speed=921600 -esp32c2.menu.UploadSpeed.115200=115200 -esp32c2.menu.UploadSpeed.115200.upload.speed=115200 -esp32c2.menu.UploadSpeed.256000.windows=256000 -esp32c2.menu.UploadSpeed.256000.upload.speed=256000 -esp32c2.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c2.menu.UploadSpeed.230400=230400 -esp32c2.menu.UploadSpeed.230400.upload.speed=230400 -esp32c2.menu.UploadSpeed.460800.linux=460800 -esp32c2.menu.UploadSpeed.460800.macosx=460800 -esp32c2.menu.UploadSpeed.460800.upload.speed=460800 -esp32c2.menu.UploadSpeed.512000.windows=512000 -esp32c2.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c2.menu.DebugLevel.none=None -esp32c2.menu.DebugLevel.none.build.code_debug=0 -esp32c2.menu.DebugLevel.error=Error -esp32c2.menu.DebugLevel.error.build.code_debug=1 -esp32c2.menu.DebugLevel.warn=Warn -esp32c2.menu.DebugLevel.warn.build.code_debug=2 -esp32c2.menu.DebugLevel.info=Info -esp32c2.menu.DebugLevel.info.build.code_debug=3 -esp32c2.menu.DebugLevel.debug=Debug -esp32c2.menu.DebugLevel.debug.build.code_debug=4 -esp32c2.menu.DebugLevel.verbose=Verbose -esp32c2.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c2.menu.EraseFlash.none=Disabled -esp32c2.menu.EraseFlash.none.upload.erase_cmd= -esp32c2.menu.EraseFlash.all=Enabled -esp32c2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32h2.name=ESP32H2 Dev Module -esp32h2.vid.0=0x303a -esp32h2.pid.0=0x1001 - -esp32h2.bootloader.tool=esptool_py -esp32h2.bootloader.tool.default=esptool_py - -esp32h2.upload.tool=esptool_py -esp32h2.upload.tool.default=esptool_py -esp32h2.upload.tool.network=esp_ota - -esp32h2.upload.maximum_size=1310720 -esp32h2.upload.maximum_data_size=327680 -esp32h2.upload.flags= -esp32h2.upload.extra_flags= -esp32h2.upload.use_1200bps_touch=false -esp32h2.upload.wait_for_upload_port=false - -esp32h2.serial.disableDTR=false -esp32h2.serial.disableRTS=false - -esp32h2.build.tarch=riscv32 -esp32h2.build.target=esp -esp32h2.build.mcu=esp32h2 -esp32h2.build.core=esp32 -esp32h2.build.variant=esp32h2 -esp32h2.build.board=ESP32H2_DEV -esp32h2.build.bootloader_addr=0x0 - -esp32h2.build.cdc_on_boot=0 -esp32h2.build.f_cpu=96000000L -esp32h2.build.flash_size=4MB -esp32h2.build.flash_freq=64m -esp32h2.build.img_freq=48m -esp32h2.build.flash_mode=qio -esp32h2.build.boot=qio -esp32h2.build.partitions=default -esp32h2.build.defines= - -## IDE 2.0 Seems to not update the value -esp32h2.menu.JTAGAdapter.default=Disabled -esp32h2.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32h2.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32h2.menu.JTAGAdapter.builtin.build.openocdscript=esp32h2-builtin.cfg -esp32h2.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32h2.menu.JTAGAdapter.external=FTDI Adapter -esp32h2.menu.JTAGAdapter.external.build.openocdscript=esp32h2-ftdi.cfg -esp32h2.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32h2.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32h2.menu.JTAGAdapter.bridge.build.openocdscript=esp32h2-bridge.cfg -esp32h2.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32h2.menu.CDCOnBoot.default=Disabled -esp32h2.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32h2.menu.CDCOnBoot.cdc=Enabled -esp32h2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32h2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32h2.menu.PartitionScheme.default.build.partitions=default -esp32h2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32h2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32h2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32h2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32h2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32h2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32h2.menu.PartitionScheme.minimal.build.partitions=minimal -esp32h2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32h2.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32h2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32h2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32h2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32h2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32h2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32h2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32h2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32h2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32h2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32h2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32h2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32h2.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32h2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32h2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32h2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32h2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32h2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32h2.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32h2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32h2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32h2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32h2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32h2.menu.PartitionScheme.rainmaker=RainMaker -esp32h2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32h2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32h2.menu.PartitionScheme.zigbee=Zigbee 4MB with spiffs -esp32h2.menu.PartitionScheme.zigbee.build.partitions=zigbee -esp32h2.menu.PartitionScheme.zigbee.upload.maximum_size=1310720 -esp32h2.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32h2.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32h2.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32h2.menu.PartitionScheme.custom=Custom -esp32h2.menu.PartitionScheme.custom.build.partitions= -esp32h2.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32h2.menu.FlashMode.qio=QIO -esp32h2.menu.FlashMode.qio.build.flash_mode=dio -esp32h2.menu.FlashMode.qio.build.boot=qio -esp32h2.menu.FlashMode.dio=DIO -esp32h2.menu.FlashMode.dio.build.flash_mode=dio -esp32h2.menu.FlashMode.dio.build.boot=dio - -esp32h2.menu.FlashFreq.64=64MHz -esp32h2.menu.FlashFreq.64.build.flash_freq=64m -esp32h2.menu.FlashFreq.64.build.img_freq=48m -#esp32h2.menu.FlashFreq.32=32MHz -#esp32h2.menu.FlashFreq.32.build.flash_freq=32m -#esp32h2.menu.FlashFreq.32.build.img_freq=24m -esp32h2.menu.FlashFreq.16=16MHz -esp32h2.menu.FlashFreq.16.build.flash_freq=16m -esp32h2.menu.FlashFreq.16.build.img_freq=12m - -esp32h2.menu.FlashSize.4M=4MB (32Mb) -esp32h2.menu.FlashSize.4M.build.flash_size=4MB -esp32h2.menu.FlashSize.8M=8MB (64Mb) -esp32h2.menu.FlashSize.8M.build.flash_size=8MB -esp32h2.menu.FlashSize.8M.build.partitions=default_8MB -esp32h2.menu.FlashSize.2M=2MB (16Mb) -esp32h2.menu.FlashSize.2M.build.flash_size=2MB -esp32h2.menu.FlashSize.2M.build.partitions=minimal -esp32h2.menu.FlashSize.16M=16MB (128Mb) -esp32h2.menu.FlashSize.16M.build.flash_size=16MB - -esp32h2.menu.UploadSpeed.921600=921600 -esp32h2.menu.UploadSpeed.921600.upload.speed=921600 -esp32h2.menu.UploadSpeed.115200=115200 -esp32h2.menu.UploadSpeed.115200.upload.speed=115200 -esp32h2.menu.UploadSpeed.256000.windows=256000 -esp32h2.menu.UploadSpeed.256000.upload.speed=256000 -esp32h2.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32h2.menu.UploadSpeed.230400=230400 -esp32h2.menu.UploadSpeed.230400.upload.speed=230400 -esp32h2.menu.UploadSpeed.460800.linux=460800 -esp32h2.menu.UploadSpeed.460800.macosx=460800 -esp32h2.menu.UploadSpeed.460800.upload.speed=460800 -esp32h2.menu.UploadSpeed.512000.windows=512000 -esp32h2.menu.UploadSpeed.512000.upload.speed=512000 - -esp32h2.menu.DebugLevel.none=None -esp32h2.menu.DebugLevel.none.build.code_debug=0 -esp32h2.menu.DebugLevel.error=Error -esp32h2.menu.DebugLevel.error.build.code_debug=1 -esp32h2.menu.DebugLevel.warn=Warn -esp32h2.menu.DebugLevel.warn.build.code_debug=2 -esp32h2.menu.DebugLevel.info=Info -esp32h2.menu.DebugLevel.info.build.code_debug=3 -esp32h2.menu.DebugLevel.debug=Debug -esp32h2.menu.DebugLevel.debug.build.code_debug=4 -esp32h2.menu.DebugLevel.verbose=Verbose -esp32h2.menu.DebugLevel.verbose.build.code_debug=5 - -esp32h2.menu.EraseFlash.none=Disabled -esp32h2.menu.EraseFlash.none.upload.erase_cmd= -esp32h2.menu.EraseFlash.all=Enabled -esp32h2.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32h2.menu.ZigbeeMode.default=Disabled -esp32h2.menu.ZigbeeMode.default.build.zigbee_mode= -esp32h2.menu.ZigbeeMode.default.build.zigbee_libs= -esp32h2.menu.ZigbeeMode.ed=Zigbee ED (end device) -esp32h2.menu.ZigbeeMode.ed.build.zigbee_mode=-DZIGBEE_MODE_ED -esp32h2.menu.ZigbeeMode.ed.build.zigbee_libs=-lesp_zb_api_ed -lesp_zb_cli_command -lzboss_stack.ed.trace -lzboss_stack.ed -lzboss_port -esp32h2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32h2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32h2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port -esp32h2.menu.ZigbeeMode.rcp=Zigbee RCP (radio co-processor) -esp32h2.menu.ZigbeeMode.rcp.build.zigbee_mode=-DZIGBEE_MODE_RCP -esp32h2.menu.ZigbeeMode.rcp.build.zigbee_libs=-lesp_zb_api_rcp -lesp_zb_cli_command -lzboss_stack.rcp -lzboss_port - - -############################################################## - -esp32c6.name=ESP32C6 Dev Module -esp32c6.vid.0=0x303a -esp32c6.pid.0=0x1001 - -esp32c6.bootloader.tool=esptool_py -esp32c6.bootloader.tool.default=esptool_py - -esp32c6.upload.tool=esptool_py -esp32c6.upload.tool.default=esptool_py -esp32c6.upload.tool.network=esp_ota - -esp32c6.upload.maximum_size=1310720 -esp32c6.upload.maximum_data_size=327680 -esp32c6.upload.flags= -esp32c6.upload.extra_flags= -esp32c6.upload.use_1200bps_touch=false -esp32c6.upload.wait_for_upload_port=false - -esp32c6.serial.disableDTR=false -esp32c6.serial.disableRTS=false - -esp32c6.build.tarch=riscv32 -esp32c6.build.target=esp -esp32c6.build.mcu=esp32c6 -esp32c6.build.core=esp32 -esp32c6.build.variant=esp32c6 -esp32c6.build.board=ESP32C6_DEV -esp32c6.build.bootloader_addr=0x0 - -esp32c6.build.cdc_on_boot=0 -esp32c6.build.f_cpu=160000000L -esp32c6.build.flash_size=4MB -esp32c6.build.flash_freq=80m -esp32c6.build.flash_mode=qio -esp32c6.build.boot=qio -esp32c6.build.partitions=default -esp32c6.build.defines= - -## IDE 2.0 Seems to not update the value -esp32c6.menu.JTAGAdapter.default=Disabled -esp32c6.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32c6.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32c6.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -esp32c6.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32c6.menu.JTAGAdapter.external=FTDI Adapter -esp32c6.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -esp32c6.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32c6.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32c6.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -esp32c6.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32c6.menu.CDCOnBoot.default=Disabled -esp32c6.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32c6.menu.CDCOnBoot.cdc=Enabled -esp32c6.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32c6.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c6.menu.PartitionScheme.default.build.partitions=default -esp32c6.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c6.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c6.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32c6.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32c6.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32c6.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c6.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c6.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c6.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c6.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c6.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c6.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c6.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c6.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c6.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c6.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c6.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c6.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c6.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c6.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c6.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c6.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c6.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c6.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c6.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32c6.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32c6.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32c6.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32c6.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32c6.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32c6.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32c6.menu.PartitionScheme.rainmaker=RainMaker -esp32c6.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32c6.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32c6.menu.PartitionScheme.zigbee=Zigbee 4MB with spiffs -esp32c6.menu.PartitionScheme.zigbee.build.partitions=zigbee -esp32c6.menu.PartitionScheme.zigbee.upload.maximum_size=1310720 -esp32c6.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32c6.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32c6.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32c6.menu.PartitionScheme.custom=Custom -esp32c6.menu.PartitionScheme.custom.build.partitions= -esp32c6.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32c6.menu.CPUFreq.160=160MHz (WiFi) -esp32c6.menu.CPUFreq.160.build.f_cpu=160000000L -esp32c6.menu.CPUFreq.120=120MHz (WiFi) -esp32c6.menu.CPUFreq.120.build.f_cpu=120000000L -esp32c6.menu.CPUFreq.80=80MHz (WiFi) -esp32c6.menu.CPUFreq.80.build.f_cpu=80000000L -esp32c6.menu.CPUFreq.40=40MHz -esp32c6.menu.CPUFreq.40.build.f_cpu=40000000L -esp32c6.menu.CPUFreq.20=20MHz -esp32c6.menu.CPUFreq.20.build.f_cpu=20000000L -esp32c6.menu.CPUFreq.10=10MHz -esp32c6.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32c6.menu.FlashMode.qio=QIO -esp32c6.menu.FlashMode.qio.build.flash_mode=dio -esp32c6.menu.FlashMode.qio.build.boot=qio -esp32c6.menu.FlashMode.dio=DIO -esp32c6.menu.FlashMode.dio.build.flash_mode=dio -esp32c6.menu.FlashMode.dio.build.boot=dio - -esp32c6.menu.FlashFreq.80=80MHz -esp32c6.menu.FlashFreq.80.build.flash_freq=80m -esp32c6.menu.FlashFreq.40=40MHz -esp32c6.menu.FlashFreq.40.build.flash_freq=40m - -esp32c6.menu.FlashSize.4M=4MB (32Mb) -esp32c6.menu.FlashSize.4M.build.flash_size=4MB -esp32c6.menu.FlashSize.8M=8MB (64Mb) -esp32c6.menu.FlashSize.8M.build.flash_size=8MB -esp32c6.menu.FlashSize.8M.build.partitions=default_8MB -esp32c6.menu.FlashSize.2M=2MB (16Mb) -esp32c6.menu.FlashSize.2M.build.flash_size=2MB -esp32c6.menu.FlashSize.2M.build.partitions=minimal -esp32c6.menu.FlashSize.16M=16MB (128Mb) -esp32c6.menu.FlashSize.16M.build.flash_size=16MB - -esp32c6.menu.UploadSpeed.921600=921600 -esp32c6.menu.UploadSpeed.921600.upload.speed=921600 -esp32c6.menu.UploadSpeed.115200=115200 -esp32c6.menu.UploadSpeed.115200.upload.speed=115200 -esp32c6.menu.UploadSpeed.256000.windows=256000 -esp32c6.menu.UploadSpeed.256000.upload.speed=256000 -esp32c6.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c6.menu.UploadSpeed.230400=230400 -esp32c6.menu.UploadSpeed.230400.upload.speed=230400 -esp32c6.menu.UploadSpeed.460800.linux=460800 -esp32c6.menu.UploadSpeed.460800.macosx=460800 -esp32c6.menu.UploadSpeed.460800.upload.speed=460800 -esp32c6.menu.UploadSpeed.512000.windows=512000 -esp32c6.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c6.menu.DebugLevel.none=None -esp32c6.menu.DebugLevel.none.build.code_debug=0 -esp32c6.menu.DebugLevel.error=Error -esp32c6.menu.DebugLevel.error.build.code_debug=1 -esp32c6.menu.DebugLevel.warn=Warn -esp32c6.menu.DebugLevel.warn.build.code_debug=2 -esp32c6.menu.DebugLevel.info=Info -esp32c6.menu.DebugLevel.info.build.code_debug=3 -esp32c6.menu.DebugLevel.debug=Debug -esp32c6.menu.DebugLevel.debug.build.code_debug=4 -esp32c6.menu.DebugLevel.verbose=Verbose -esp32c6.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c6.menu.EraseFlash.none=Disabled -esp32c6.menu.EraseFlash.none.upload.erase_cmd= -esp32c6.menu.EraseFlash.all=Enabled -esp32c6.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32c6.menu.ZigbeeMode.default=Disabled -esp32c6.menu.ZigbeeMode.default.build.zigbee_mode= -esp32c6.menu.ZigbeeMode.default.build.zigbee_libs= -esp32c6.menu.ZigbeeMode.ed=Zigbee ED (end device) -esp32c6.menu.ZigbeeMode.ed.build.zigbee_mode=-DZIGBEE_MODE_ED -esp32c6.menu.ZigbeeMode.ed.build.zigbee_libs=-lesp_zb_api_ed -lesp_zb_cli_command -lzboss_stack.ed.trace -lzboss_stack.ed -lzboss_port -esp32c6.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32c6.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32c6.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port -esp32c6.menu.ZigbeeMode.rcp=Zigbee RCP (radio co-processor) -esp32c6.menu.ZigbeeMode.rcp.build.zigbee_mode=-DZIGBEE_MODE_RCP -esp32c6.menu.ZigbeeMode.rcp.build.zigbee_libs=-lesp_zb_api_rcp -lesp_zb_cli_command -lzboss_stack.rcp -lzboss_port - -############################################################## - -esp32s3.name=ESP32S3 Dev Module -esp32s3.vid.0=0x303a -esp32s3.pid.0=0x1001 - -esp32s3.bootloader.tool=esptool_py -esp32s3.bootloader.tool.default=esptool_py - -esp32s3.upload.tool=esptool_py -esp32s3.upload.tool.default=esptool_py -esp32s3.upload.tool.network=esp_ota - -esp32s3.upload.maximum_size=1310720 -esp32s3.upload.maximum_data_size=327680 -esp32s3.upload.flags= -esp32s3.upload.extra_flags= -esp32s3.upload.use_1200bps_touch=false -esp32s3.upload.wait_for_upload_port=false - -esp32s3.serial.disableDTR=false -esp32s3.serial.disableRTS=false - -esp32s3.build.tarch=xtensa -esp32s3.build.bootloader_addr=0x0 -esp32s3.build.target=esp32s3 -esp32s3.build.mcu=esp32s3 -esp32s3.build.core=esp32 -esp32s3.build.variant=esp32s3 -esp32s3.build.board=ESP32S3_DEV - -esp32s3.build.usb_mode=1 -esp32s3.build.cdc_on_boot=0 -esp32s3.build.msc_on_boot=0 -esp32s3.build.dfu_on_boot=0 -esp32s3.build.f_cpu=240000000L -esp32s3.build.flash_size=4MB -esp32s3.build.flash_freq=80m -esp32s3.build.flash_mode=dio -esp32s3.build.boot=qio -esp32s3.build.boot_freq=80m -esp32s3.build.partitions=default -esp32s3.build.defines= -esp32s3.build.loop_core= -esp32s3.build.event_core= -esp32s3.build.psram_type=qspi -esp32s3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -esp32s3.menu.JTAGAdapter.default=Disabled -esp32s3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s3.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32s3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -esp32s3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32s3.menu.JTAGAdapter.external=FTDI Adapter -esp32s3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -esp32s3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s3.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -esp32s3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s3.menu.PSRAM.disabled=Disabled -esp32s3.menu.PSRAM.disabled.build.defines= -esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -esp32s3.menu.PSRAM.enabled=QSPI PSRAM -esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -esp32s3.menu.PSRAM.opi=OPI PSRAM -esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -esp32s3.menu.PSRAM.opi.build.psram_type=opi - -esp32s3.menu.FlashMode.qio=QIO 80MHz -esp32s3.menu.FlashMode.qio.build.flash_mode=dio -esp32s3.menu.FlashMode.qio.build.boot=qio -esp32s3.menu.FlashMode.qio.build.boot_freq=80m -esp32s3.menu.FlashMode.qio.build.flash_freq=80m -esp32s3.menu.FlashMode.qio120=QIO 120MHz -esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -esp32s3.menu.FlashMode.qio120.build.boot=qio -esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -esp32s3.menu.FlashMode.dio=DIO 80MHz -esp32s3.menu.FlashMode.dio.build.flash_mode=dio -esp32s3.menu.FlashMode.dio.build.boot=dio -esp32s3.menu.FlashMode.dio.build.boot_freq=80m -esp32s3.menu.FlashMode.dio.build.flash_freq=80m -esp32s3.menu.FlashMode.opi=OPI 80MHz -esp32s3.menu.FlashMode.opi.build.flash_mode=dout -esp32s3.menu.FlashMode.opi.build.boot=opi -esp32s3.menu.FlashMode.opi.build.boot_freq=80m -esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -esp32s3.menu.FlashSize.4M=4MB (32Mb) -esp32s3.menu.FlashSize.4M.build.flash_size=4MB -esp32s3.menu.FlashSize.8M=8MB (64Mb) -esp32s3.menu.FlashSize.8M.build.flash_size=8MB -esp32s3.menu.FlashSize.8M.build.partitions=default_8MB -esp32s3.menu.FlashSize.16M=16MB (128Mb) -esp32s3.menu.FlashSize.16M.build.flash_size=16MB -esp32s3.menu.FlashSize.32M=32MB (256Mb) -esp32s3.menu.FlashSize.32M.build.flash_size=32MB -esp32s3.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -esp32s3.menu.LoopCore.1=Core 1 -esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3.menu.LoopCore.0=Core 0 -esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32s3.menu.EventsCore.1=Core 1 -esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32s3.menu.EventsCore.0=Core 0 -esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -esp32s3.menu.USBMode.default.build.usb_mode=0 - -esp32s3.menu.CDCOnBoot.default=Disabled -esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32s3.menu.CDCOnBoot.cdc=Enabled -esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32s3.menu.MSCOnBoot.default=Disabled -esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s3.menu.DFUOnBoot.default=Disabled -esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s3.menu.PartitionScheme.default.build.partitions=default -esp32s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s3.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s3.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s3.menu.PartitionScheme.rainmaker=RainMaker -esp32s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s3.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -esp32s3.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -esp32s3.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -esp32s3.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -esp32s3.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -esp32s3.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -esp32s3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -esp32s3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -esp32s3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -esp32s3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -esp32s3.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32s3.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32s3.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32s3.menu.PartitionScheme.custom=Custom -esp32s3.menu.PartitionScheme.custom.build.partitions= -esp32s3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s3.menu.CPUFreq.240=240MHz (WiFi) -esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s3.menu.CPUFreq.160=160MHz (WiFi) -esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s3.menu.CPUFreq.80=80MHz (WiFi) -esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s3.menu.CPUFreq.40=40MHz -esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s3.menu.CPUFreq.20=20MHz -esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s3.menu.CPUFreq.10=10MHz -esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s3.menu.UploadSpeed.921600=921600 -esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -esp32s3.menu.UploadSpeed.115200=115200 -esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -esp32s3.menu.UploadSpeed.256000.windows=256000 -esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s3.menu.UploadSpeed.230400=230400 -esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -esp32s3.menu.UploadSpeed.460800.linux=460800 -esp32s3.menu.UploadSpeed.460800.macosx=460800 -esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -esp32s3.menu.UploadSpeed.512000.windows=512000 -esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s3.menu.DebugLevel.none=None -esp32s3.menu.DebugLevel.none.build.code_debug=0 -esp32s3.menu.DebugLevel.error=Error -esp32s3.menu.DebugLevel.error.build.code_debug=1 -esp32s3.menu.DebugLevel.warn=Warn -esp32s3.menu.DebugLevel.warn.build.code_debug=2 -esp32s3.menu.DebugLevel.info=Info -esp32s3.menu.DebugLevel.info.build.code_debug=3 -esp32s3.menu.DebugLevel.debug=Debug -esp32s3.menu.DebugLevel.debug.build.code_debug=4 -esp32s3.menu.DebugLevel.verbose=Verbose -esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3.menu.EraseFlash.none=Disabled -esp32s3.menu.EraseFlash.none.upload.erase_cmd= -esp32s3.menu.EraseFlash.all=Enabled -esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32s3.menu.ZigbeeMode.default=Disabled -esp32s3.menu.ZigbeeMode.default.build.zigbee_mode= -esp32s3.menu.ZigbeeMode.default.build.zigbee_libs= -esp32s3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32s3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32s3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## - -esp32c3.name=ESP32C3 Dev Module -esp32c3.vid.0=0x303a -esp32c3.pid.0=0x1001 - -esp32c3.bootloader.tool=esptool_py -esp32c3.bootloader.tool.default=esptool_py - -esp32c3.upload.tool=esptool_py -esp32c3.upload.tool.default=esptool_py -esp32c3.upload.tool.network=esp_ota - -esp32c3.upload.maximum_size=1310720 -esp32c3.upload.maximum_data_size=327680 -esp32c3.upload.flags= -esp32c3.upload.extra_flags= -esp32c3.upload.use_1200bps_touch=false -esp32c3.upload.wait_for_upload_port=false - -esp32c3.serial.disableDTR=false -esp32c3.serial.disableRTS=false - -esp32c3.build.tarch=riscv32 -esp32c3.build.target=esp -esp32c3.build.mcu=esp32c3 -esp32c3.build.core=esp32 -esp32c3.build.variant=esp32c3 -esp32c3.build.board=ESP32C3_DEV -esp32c3.build.bootloader_addr=0x0 - -esp32c3.build.cdc_on_boot=0 -esp32c3.build.f_cpu=160000000L -esp32c3.build.flash_size=4MB -esp32c3.build.flash_freq=80m -esp32c3.build.flash_mode=qio -esp32c3.build.boot=qio -esp32c3.build.partitions=default -esp32c3.build.defines= - -## IDE 2.0 Seems to not update the value -esp32c3.menu.JTAGAdapter.default=Disabled -esp32c3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32c3.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32c3.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -esp32c3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32c3.menu.JTAGAdapter.external=FTDI Adapter -esp32c3.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -esp32c3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32c3.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32c3.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -esp32c3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32c3.menu.CDCOnBoot.default=Disabled -esp32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32c3.menu.CDCOnBoot.cdc=Enabled -esp32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c3.menu.PartitionScheme.default.build.partitions=default -esp32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32c3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32c3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c3.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32c3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32c3.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32c3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32c3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32c3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32c3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32c3.menu.PartitionScheme.rainmaker=RainMaker -esp32c3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32c3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32c3.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32c3.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32c3.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32c3.menu.PartitionScheme.custom=Custom -esp32c3.menu.PartitionScheme.custom.build.partitions= -esp32c3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32c3.menu.CPUFreq.160=160MHz (WiFi) -esp32c3.menu.CPUFreq.160.build.f_cpu=160000000L -esp32c3.menu.CPUFreq.80=80MHz (WiFi) -esp32c3.menu.CPUFreq.80.build.f_cpu=80000000L -esp32c3.menu.CPUFreq.40=40MHz -esp32c3.menu.CPUFreq.40.build.f_cpu=40000000L -esp32c3.menu.CPUFreq.20=20MHz -esp32c3.menu.CPUFreq.20.build.f_cpu=20000000L -esp32c3.menu.CPUFreq.10=10MHz -esp32c3.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32c3.menu.FlashMode.qio=QIO -esp32c3.menu.FlashMode.qio.build.flash_mode=dio -esp32c3.menu.FlashMode.qio.build.boot=qio -esp32c3.menu.FlashMode.dio=DIO -esp32c3.menu.FlashMode.dio.build.flash_mode=dio -esp32c3.menu.FlashMode.dio.build.boot=dio - -esp32c3.menu.FlashFreq.80=80MHz -esp32c3.menu.FlashFreq.80.build.flash_freq=80m -esp32c3.menu.FlashFreq.40=40MHz -esp32c3.menu.FlashFreq.40.build.flash_freq=40m - -esp32c3.menu.FlashSize.4M=4MB (32Mb) -esp32c3.menu.FlashSize.4M.build.flash_size=4MB -esp32c3.menu.FlashSize.8M=8MB (64Mb) -esp32c3.menu.FlashSize.8M.build.flash_size=8MB -esp32c3.menu.FlashSize.8M.build.partitions=default_8MB -esp32c3.menu.FlashSize.2M=2MB (16Mb) -esp32c3.menu.FlashSize.2M.build.flash_size=2MB -esp32c3.menu.FlashSize.2M.build.partitions=minimal -esp32c3.menu.FlashSize.16M=16MB (128Mb) -esp32c3.menu.FlashSize.16M.build.flash_size=16MB - -esp32c3.menu.UploadSpeed.921600=921600 -esp32c3.menu.UploadSpeed.921600.upload.speed=921600 -esp32c3.menu.UploadSpeed.115200=115200 -esp32c3.menu.UploadSpeed.115200.upload.speed=115200 -esp32c3.menu.UploadSpeed.256000.windows=256000 -esp32c3.menu.UploadSpeed.256000.upload.speed=256000 -esp32c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c3.menu.UploadSpeed.230400=230400 -esp32c3.menu.UploadSpeed.230400.upload.speed=230400 -esp32c3.menu.UploadSpeed.460800.linux=460800 -esp32c3.menu.UploadSpeed.460800.macosx=460800 -esp32c3.menu.UploadSpeed.460800.upload.speed=460800 -esp32c3.menu.UploadSpeed.512000.windows=512000 -esp32c3.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c3.menu.DebugLevel.none=None -esp32c3.menu.DebugLevel.none.build.code_debug=0 -esp32c3.menu.DebugLevel.error=Error -esp32c3.menu.DebugLevel.error.build.code_debug=1 -esp32c3.menu.DebugLevel.warn=Warn -esp32c3.menu.DebugLevel.warn.build.code_debug=2 -esp32c3.menu.DebugLevel.info=Info -esp32c3.menu.DebugLevel.info.build.code_debug=3 -esp32c3.menu.DebugLevel.debug=Debug -esp32c3.menu.DebugLevel.debug.build.code_debug=4 -esp32c3.menu.DebugLevel.verbose=Verbose -esp32c3.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c3.menu.EraseFlash.none=Disabled -esp32c3.menu.EraseFlash.none.upload.erase_cmd= -esp32c3.menu.EraseFlash.all=Enabled -esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32c3.menu.ZigbeeMode.default=Disabled -esp32c3.menu.ZigbeeMode.default.build.zigbee_mode= -esp32c3.menu.ZigbeeMode.default.build.zigbee_libs= -esp32c3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32c3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32c3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port -############################################################## - -esp32s2.name=ESP32S2 Dev Module -esp32s2.vid.0=0x303a -esp32s2.pid.0=0x0002 - -esp32s2.bootloader.tool=esptool_py -esp32s2.bootloader.tool.default=esptool_py - -esp32s2.upload.tool=esptool_py -esp32s2.upload.tool.default=esptool_py -esp32s2.upload.tool.network=esp_ota - -esp32s2.upload.maximum_size=1310720 -esp32s2.upload.maximum_data_size=327680 -esp32s2.upload.flags= -esp32s2.upload.extra_flags= -esp32s2.upload.use_1200bps_touch=false -esp32s2.upload.wait_for_upload_port=false - -esp32s2.serial.disableDTR=false -esp32s2.serial.disableRTS=false - -esp32s2.build.tarch=xtensa -esp32s2.build.bootloader_addr=0x1000 -esp32s2.build.target=esp32s2 -esp32s2.build.mcu=esp32s2 -esp32s2.build.core=esp32 -esp32s2.build.variant=esp32s2 -esp32s2.build.board=ESP32S2_DEV - -esp32s2.build.cdc_on_boot=0 -esp32s2.build.msc_on_boot=0 -esp32s2.build.dfu_on_boot=0 -esp32s2.build.f_cpu=240000000L -esp32s2.build.flash_size=4MB -esp32s2.build.flash_freq=80m -esp32s2.build.flash_mode=dio -esp32s2.build.boot=qio -esp32s2.build.partitions=default -esp32s2.build.defines= - -## IDE 2.0 Seems to not update the value -esp32s2.menu.JTAGAdapter.default=Disabled -esp32s2.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s2.menu.JTAGAdapter.external=FTDI Adapter -esp32s2.menu.JTAGAdapter.external.build.openocdscript=esp32s2-kaluga-1.cfg -esp32s2.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s2.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s2.menu.JTAGAdapter.bridge.build.openocdscript=esp32s2-bridge.cfg -esp32s2.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s2.menu.CDCOnBoot.default=Disabled -esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32s2.menu.CDCOnBoot.cdc=Enabled -esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32s2.menu.MSCOnBoot.default=Disabled -esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s2.menu.MSCOnBoot.msc=Enabled -esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s2.menu.DFUOnBoot.default=Disabled -esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s2.menu.DFUOnBoot.dfu=Enabled -esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s2.menu.UploadMode.default=UART0 -esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s2.menu.UploadMode.cdc=Internal USB -esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s2.menu.PSRAM.disabled=Disabled -esp32s2.menu.PSRAM.disabled.build.defines= -esp32s2.menu.PSRAM.enabled=Enabled -esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s2.menu.PartitionScheme.default.build.partitions=default -esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s2.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s2.menu.PartitionScheme.rainmaker=RainMaker -esp32s2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s2.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32s2.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32s2.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32s2.menu.PartitionScheme.custom=Custom -esp32s2.menu.PartitionScheme.custom.build.partitions= -esp32s2.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s2.menu.CPUFreq.240=240MHz (WiFi) -esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s2.menu.CPUFreq.160=160MHz (WiFi) -esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s2.menu.CPUFreq.80=80MHz (WiFi) -esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s2.menu.CPUFreq.40=40MHz -esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s2.menu.CPUFreq.20=20MHz -esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s2.menu.CPUFreq.10=10MHz -esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s2.menu.FlashMode.qio=QIO -esp32s2.menu.FlashMode.qio.build.flash_mode=dio -esp32s2.menu.FlashMode.qio.build.boot=qio -esp32s2.menu.FlashMode.dio=DIO -esp32s2.menu.FlashMode.dio.build.flash_mode=dio -esp32s2.menu.FlashMode.dio.build.boot=dio - -esp32s2.menu.FlashFreq.80=80MHz -esp32s2.menu.FlashFreq.80.build.flash_freq=80m -esp32s2.menu.FlashFreq.40=40MHz -esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -esp32s2.menu.FlashSize.4M=4MB (32Mb) -esp32s2.menu.FlashSize.4M.build.flash_size=4MB -esp32s2.menu.FlashSize.8M=8MB (64Mb) -esp32s2.menu.FlashSize.8M.build.flash_size=8MB -esp32s2.menu.FlashSize.8M.build.partitions=default_8MB -esp32s2.menu.FlashSize.2M=2MB (16Mb) -esp32s2.menu.FlashSize.2M.build.flash_size=2MB -esp32s2.menu.FlashSize.2M.build.partitions=minimal -esp32s2.menu.FlashSize.16M=16MB (128Mb) -esp32s2.menu.FlashSize.16M.build.flash_size=16MB - -esp32s2.menu.UploadSpeed.921600=921600 -esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -esp32s2.menu.UploadSpeed.115200=115200 -esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -esp32s2.menu.UploadSpeed.256000.windows=256000 -esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s2.menu.UploadSpeed.230400=230400 -esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -esp32s2.menu.UploadSpeed.460800.linux=460800 -esp32s2.menu.UploadSpeed.460800.macosx=460800 -esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -esp32s2.menu.UploadSpeed.512000.windows=512000 -esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s2.menu.DebugLevel.none=None -esp32s2.menu.DebugLevel.none.build.code_debug=0 -esp32s2.menu.DebugLevel.error=Error -esp32s2.menu.DebugLevel.error.build.code_debug=1 -esp32s2.menu.DebugLevel.warn=Warn -esp32s2.menu.DebugLevel.warn.build.code_debug=2 -esp32s2.menu.DebugLevel.info=Info -esp32s2.menu.DebugLevel.info.build.code_debug=3 -esp32s2.menu.DebugLevel.debug=Debug -esp32s2.menu.DebugLevel.debug.build.code_debug=4 -esp32s2.menu.DebugLevel.verbose=Verbose -esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s2.menu.EraseFlash.none=Disabled -esp32s2.menu.EraseFlash.none.upload.erase_cmd= -esp32s2.menu.EraseFlash.all=Enabled -esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32s2.menu.ZigbeeMode.default=Disabled -esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## - -esp32.name=ESP32 Dev Module - -esp32.bootloader.tool=esptool_py -esp32.bootloader.tool.default=esptool_py - -esp32.upload.tool=esptool_py -esp32.upload.tool.default=esptool_py -esp32.upload.tool.network=esp_ota - -esp32.upload.maximum_size=1310720 -esp32.upload.maximum_data_size=327680 -esp32.upload.flags= -esp32.upload.extra_flags= - -esp32.serial.disableDTR=true -esp32.serial.disableRTS=true - -esp32.build.tarch=xtensa -esp32.build.bootloader_addr=0x1000 -esp32.build.target=esp32 -esp32.build.mcu=esp32 -esp32.build.core=esp32 -esp32.build.variant=esp32 -esp32.build.board=ESP32_DEV - -esp32.build.f_cpu=240000000L -esp32.build.flash_size=4MB -esp32.build.flash_freq=40m -esp32.build.flash_mode=dio -esp32.build.boot=dio -esp32.build.partitions=default -esp32.build.defines= -esp32.build.loop_core= -esp32.build.event_core= - -## IDE 2.0 Seems to not update the value -esp32.menu.JTAGAdapter.default=Disabled -esp32.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32.menu.JTAGAdapter.external=FTDI Adapter -esp32.menu.JTAGAdapter.external.build.openocdscript=esp32-wrover-kit-3.3v.cfg -esp32.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32.menu.JTAGAdapter.bridge.build.openocdscript=esp32-bridge.cfg -esp32.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32.menu.PSRAM.disabled=Disabled -esp32.menu.PSRAM.disabled.build.defines= -esp32.menu.PSRAM.disabled.build.extra_libs= -esp32.menu.PSRAM.enabled=Enabled -esp32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -esp32.menu.PSRAM.enabled.build.extra_libs= - -esp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32.menu.PartitionScheme.default.build.partitions=default -esp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32.menu.PartitionScheme.minimal.build.partitions=minimal -esp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32.menu.PartitionScheme.rainmaker=RainMaker -esp32.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -esp32.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -esp32.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -esp32.menu.PartitionScheme.custom=Custom -esp32.menu.PartitionScheme.custom.build.partitions= -esp32.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32.menu.CPUFreq.240=240MHz (WiFi/BT) -esp32.menu.CPUFreq.240.build.f_cpu=240000000L -esp32.menu.CPUFreq.160=160MHz (WiFi/BT) -esp32.menu.CPUFreq.160.build.f_cpu=160000000L -esp32.menu.CPUFreq.80=80MHz (WiFi/BT) -esp32.menu.CPUFreq.80.build.f_cpu=80000000L -esp32.menu.CPUFreq.40=40MHz (40MHz XTAL) -esp32.menu.CPUFreq.40.build.f_cpu=40000000L -esp32.menu.CPUFreq.26=26MHz (26MHz XTAL) -esp32.menu.CPUFreq.26.build.f_cpu=26000000L -esp32.menu.CPUFreq.20=20MHz (40MHz XTAL) -esp32.menu.CPUFreq.20.build.f_cpu=20000000L -esp32.menu.CPUFreq.13=13MHz (26MHz XTAL) -esp32.menu.CPUFreq.13.build.f_cpu=13000000L -esp32.menu.CPUFreq.10=10MHz (40MHz XTAL) -esp32.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32.menu.FlashMode.qio=QIO -esp32.menu.FlashMode.qio.build.flash_mode=dio -esp32.menu.FlashMode.qio.build.boot=qio -esp32.menu.FlashMode.dio=DIO -esp32.menu.FlashMode.dio.build.flash_mode=dio -esp32.menu.FlashMode.dio.build.boot=dio - -esp32.menu.FlashFreq.80=80MHz -esp32.menu.FlashFreq.80.build.flash_freq=80m -esp32.menu.FlashFreq.40=40MHz -esp32.menu.FlashFreq.40.build.flash_freq=40m - -esp32.menu.FlashSize.4M=4MB (32Mb) -esp32.menu.FlashSize.4M.build.flash_size=4MB -esp32.menu.FlashSize.8M=8MB (64Mb) -esp32.menu.FlashSize.8M.build.flash_size=8MB -esp32.menu.FlashSize.8M.build.partitions=default_8MB -esp32.menu.FlashSize.2M=2MB (16Mb) -esp32.menu.FlashSize.2M.build.flash_size=2MB -esp32.menu.FlashSize.2M.build.partitions=minimal -esp32.menu.FlashSize.16M=16MB (128Mb) -esp32.menu.FlashSize.16M.build.flash_size=16MB - -esp32.menu.UploadSpeed.921600=921600 -esp32.menu.UploadSpeed.921600.upload.speed=921600 -esp32.menu.UploadSpeed.115200=115200 -esp32.menu.UploadSpeed.115200.upload.speed=115200 -esp32.menu.UploadSpeed.256000.windows=256000 -esp32.menu.UploadSpeed.256000.upload.speed=256000 -esp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32.menu.UploadSpeed.230400=230400 -esp32.menu.UploadSpeed.230400.upload.speed=230400 -esp32.menu.UploadSpeed.460800.linux=460800 -esp32.menu.UploadSpeed.460800.macosx=460800 -esp32.menu.UploadSpeed.460800.upload.speed=460800 -esp32.menu.UploadSpeed.512000.windows=512000 -esp32.menu.UploadSpeed.512000.upload.speed=512000 - -esp32.menu.LoopCore.1=Core 1 -esp32.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32.menu.LoopCore.0=Core 0 -esp32.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32.menu.EventsCore.1=Core 1 -esp32.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32.menu.EventsCore.0=Core 0 -esp32.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32.menu.DebugLevel.none=None -esp32.menu.DebugLevel.none.build.code_debug=0 -esp32.menu.DebugLevel.error=Error -esp32.menu.DebugLevel.error.build.code_debug=1 -esp32.menu.DebugLevel.warn=Warn -esp32.menu.DebugLevel.warn.build.code_debug=2 -esp32.menu.DebugLevel.info=Info -esp32.menu.DebugLevel.info.build.code_debug=3 -esp32.menu.DebugLevel.debug=Debug -esp32.menu.DebugLevel.debug.build.code_debug=4 -esp32.menu.DebugLevel.verbose=Verbose -esp32.menu.DebugLevel.verbose.build.code_debug=5 - -esp32.menu.EraseFlash.none=Disabled -esp32.menu.EraseFlash.none.upload.erase_cmd= -esp32.menu.EraseFlash.all=Enabled -esp32.menu.EraseFlash.all.upload.erase_cmd=-e - -esp32.menu.ZigbeeMode.default=Disabled -esp32.menu.ZigbeeMode.default.build.zigbee_mode= -esp32.menu.ZigbeeMode.default.build.zigbee_libs= -esp32.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -esp32.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -esp32.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## - -esp32da.name=ESP32-WROOM-DA Module - -esp32da.bootloader.tool=esptool_py -esp32da.bootloader.tool.default=esptool_py - -esp32da.upload.tool=esptool_py -esp32da.upload.tool.default=esptool_py -esp32da.upload.tool.network=esp_ota - -esp32da.upload.maximum_size=1310720 -esp32da.upload.maximum_data_size=327680 -esp32da.upload.flags= -esp32da.upload.extra_flags= - -esp32da.serial.disableDTR=true -esp32da.serial.disableRTS=true - -esp32da.build.tarch=xtensa -esp32da.build.bootloader_addr=0x1000 -esp32da.build.target=esp32 -esp32da.build.mcu=esp32 -esp32da.build.core=esp32 -esp32da.build.variant=esp32da -esp32da.build.board=ESP32_WROOM_DA - -esp32da.build.f_cpu=240000000L -esp32da.build.flash_size=4MB -esp32da.build.flash_freq=40m -esp32da.build.flash_mode=dio -esp32da.build.boot=dio -esp32da.build.partitions=default -esp32da.build.defines= -esp32da.build.loop_core= -esp32da.build.event_core= - -esp32da.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32da.menu.PartitionScheme.default.build.partitions=default -esp32da.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32da.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32da.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32da.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32da.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32da.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32da.menu.PartitionScheme.minimal.build.partitions=minimal -esp32da.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32da.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32da.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32da.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32da.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32da.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32da.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32da.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32da.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32da.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32da.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32da.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32da.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32da.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32da.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32da.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32da.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32da.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32da.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32da.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32da.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32da.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32da.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32da.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32da.menu.PartitionScheme.rainmaker=RainMaker -esp32da.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32da.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32da.menu.PartitionScheme.custom=Custom -esp32da.menu.PartitionScheme.custom.build.partitions= -esp32da.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32da.menu.CPUFreq.240=240MHz (WiFi/BT) -esp32da.menu.CPUFreq.240.build.f_cpu=240000000L -esp32da.menu.CPUFreq.160=160MHz (WiFi/BT) -esp32da.menu.CPUFreq.160.build.f_cpu=160000000L -esp32da.menu.CPUFreq.80=80MHz (WiFi/BT) -esp32da.menu.CPUFreq.80.build.f_cpu=80000000L -esp32da.menu.CPUFreq.40=40MHz (40MHz XTAL) -esp32da.menu.CPUFreq.40.build.f_cpu=40000000L -esp32da.menu.CPUFreq.26=26MHz (26MHz XTAL) -esp32da.menu.CPUFreq.26.build.f_cpu=26000000L -esp32da.menu.CPUFreq.20=20MHz (40MHz XTAL) -esp32da.menu.CPUFreq.20.build.f_cpu=20000000L -esp32da.menu.CPUFreq.13=13MHz (26MHz XTAL) -esp32da.menu.CPUFreq.13.build.f_cpu=13000000L -esp32da.menu.CPUFreq.10=10MHz (40MHz XTAL) -esp32da.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32da.menu.FlashMode.qio=QIO -esp32da.menu.FlashMode.qio.build.flash_mode=dio -esp32da.menu.FlashMode.qio.build.boot=qio -esp32da.menu.FlashMode.dio=DIO -esp32da.menu.FlashMode.dio.build.flash_mode=dio -esp32da.menu.FlashMode.dio.build.boot=dio - -esp32da.menu.FlashFreq.80=80MHz -esp32da.menu.FlashFreq.80.build.flash_freq=80m -esp32da.menu.FlashFreq.40=40MHz -esp32da.menu.FlashFreq.40.build.flash_freq=40m - -esp32da.menu.FlashSize.4M=4MB (32Mb) -esp32da.menu.FlashSize.4M.build.flash_size=4MB -esp32da.menu.FlashSize.8M=8MB (64Mb) -esp32da.menu.FlashSize.8M.build.flash_size=8MB -esp32da.menu.FlashSize.8M.build.partitions=default_8MB -esp32da.menu.FlashSize.16M=16MB (128Mb) -esp32da.menu.FlashSize.16M.build.flash_size=16MB - -esp32da.menu.UploadSpeed.921600=921600 -esp32da.menu.UploadSpeed.921600.upload.speed=921600 -esp32da.menu.UploadSpeed.115200=115200 -esp32da.menu.UploadSpeed.115200.upload.speed=115200 -esp32da.menu.UploadSpeed.256000.windows=256000 -esp32da.menu.UploadSpeed.256000.upload.speed=256000 -esp32da.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32da.menu.UploadSpeed.230400=230400 -esp32da.menu.UploadSpeed.230400.upload.speed=230400 -esp32da.menu.UploadSpeed.460800.linux=460800 -esp32da.menu.UploadSpeed.460800.macosx=460800 -esp32da.menu.UploadSpeed.460800.upload.speed=460800 -esp32da.menu.UploadSpeed.512000.windows=512000 -esp32da.menu.UploadSpeed.512000.upload.speed=512000 - -esp32da.menu.LoopCore.1=Core 1 -esp32da.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32da.menu.LoopCore.0=Core 0 -esp32da.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32da.menu.EventsCore.1=Core 1 -esp32da.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32da.menu.EventsCore.0=Core 0 -esp32da.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32da.menu.DebugLevel.none=None -esp32da.menu.DebugLevel.none.build.code_debug=0 -esp32da.menu.DebugLevel.error=Error -esp32da.menu.DebugLevel.error.build.code_debug=1 -esp32da.menu.DebugLevel.warn=Warn -esp32da.menu.DebugLevel.warn.build.code_debug=2 -esp32da.menu.DebugLevel.info=Info -esp32da.menu.DebugLevel.info.build.code_debug=3 -esp32da.menu.DebugLevel.debug=Debug -esp32da.menu.DebugLevel.debug.build.code_debug=4 -esp32da.menu.DebugLevel.verbose=Verbose -esp32da.menu.DebugLevel.verbose.build.code_debug=5 - -esp32da.menu.EraseFlash.none=Disabled -esp32da.menu.EraseFlash.none.upload.erase_cmd= -esp32da.menu.EraseFlash.all=Enabled -esp32da.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32wrover.name=ESP32 Wrover Module - -esp32wrover.bootloader.tool=esptool_py -esp32wrover.bootloader.tool.default=esptool_py - -esp32wrover.upload.tool=esptool_py -esp32wrover.upload.tool.default=esptool_py -esp32wrover.upload.tool.network=esp_ota - -esp32wrover.upload.maximum_size=1310720 -esp32wrover.upload.maximum_data_size=327680 -esp32wrover.upload.flags= -esp32wrover.upload.extra_flags= - -esp32wrover.serial.disableDTR=true -esp32wrover.serial.disableRTS=true - -esp32wrover.build.tarch=xtensa -esp32wrover.build.bootloader_addr=0x1000 -esp32wrover.build.target=esp32 -esp32wrover.build.mcu=esp32 -esp32wrover.build.core=esp32 -esp32wrover.build.variant=esp32 -esp32wrover.build.board=ESP32_DEV - -esp32wrover.build.f_cpu=240000000L -esp32wrover.build.flash_size=4MB -esp32wrover.build.flash_freq=40m -esp32wrover.build.flash_mode=dio -esp32wrover.build.boot=dio -esp32wrover.build.partitions=default -esp32wrover.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -esp32wrover.build.extra_libs= - -esp32wrover.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32wrover.menu.PartitionScheme.default.build.partitions=default -esp32wrover.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32wrover.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32wrover.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32wrover.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32wrover.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32wrover.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32wrover.menu.PartitionScheme.minimal.build.partitions=minimal -esp32wrover.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32wrover.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32wrover.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32wrover.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32wrover.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32wrover.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32wrover.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32wrover.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32wrover.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32wrover.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32wrover.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32wrover.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32wrover.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32wrover.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32wrover.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32wrover.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32wrover.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32wrover.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32wrover.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32wrover.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32wrover.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32wrover.menu.PartitionScheme.rainmaker=RainMaker -esp32wrover.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32wrover.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32wrover.menu.PartitionScheme.custom=Custom -esp32wrover.menu.PartitionScheme.custom.build.partitions= -esp32wrover.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32wrover.menu.FlashMode.qio=QIO -esp32wrover.menu.FlashMode.qio.build.flash_mode=dio -esp32wrover.menu.FlashMode.qio.build.boot=qio -esp32wrover.menu.FlashMode.dio=DIO -esp32wrover.menu.FlashMode.dio.build.flash_mode=dio -esp32wrover.menu.FlashMode.dio.build.boot=dio - -esp32wrover.menu.FlashFreq.80=80MHz -esp32wrover.menu.FlashFreq.80.build.flash_freq=80m -esp32wrover.menu.FlashFreq.40=40MHz -esp32wrover.menu.FlashFreq.40.build.flash_freq=40m - -esp32wrover.menu.UploadSpeed.921600=921600 -esp32wrover.menu.UploadSpeed.921600.upload.speed=921600 -esp32wrover.menu.UploadSpeed.115200=115200 -esp32wrover.menu.UploadSpeed.115200.upload.speed=115200 -esp32wrover.menu.UploadSpeed.256000.windows=256000 -esp32wrover.menu.UploadSpeed.256000.upload.speed=256000 -esp32wrover.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32wrover.menu.UploadSpeed.230400=230400 -esp32wrover.menu.UploadSpeed.230400.upload.speed=230400 -esp32wrover.menu.UploadSpeed.460800.linux=460800 -esp32wrover.menu.UploadSpeed.460800.macosx=460800 -esp32wrover.menu.UploadSpeed.460800.upload.speed=460800 -esp32wrover.menu.UploadSpeed.512000.windows=512000 -esp32wrover.menu.UploadSpeed.512000.upload.speed=512000 - -esp32wrover.menu.DebugLevel.none=None -esp32wrover.menu.DebugLevel.none.build.code_debug=0 -esp32wrover.menu.DebugLevel.error=Error -esp32wrover.menu.DebugLevel.error.build.code_debug=1 -esp32wrover.menu.DebugLevel.warn=Warn -esp32wrover.menu.DebugLevel.warn.build.code_debug=2 -esp32wrover.menu.DebugLevel.info=Info -esp32wrover.menu.DebugLevel.info.build.code_debug=3 -esp32wrover.menu.DebugLevel.debug=Debug -esp32wrover.menu.DebugLevel.debug.build.code_debug=4 -esp32wrover.menu.DebugLevel.verbose=Verbose -esp32wrover.menu.DebugLevel.verbose.build.code_debug=5 - -esp32wrover.menu.EraseFlash.none=Disabled -esp32wrover.menu.EraseFlash.none.upload.erase_cmd= -esp32wrover.menu.EraseFlash.all=Enabled -esp32wrover.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -pico32.name=ESP32 PICO-D4 - -pico32.bootloader.tool=esptool_py -pico32.bootloader.tool.default=esptool_py - -pico32.upload.tool=esptool_py -pico32.upload.tool.default=esptool_py -pico32.upload.tool.network=esp_ota - -pico32.upload.maximum_size=1310720 -pico32.upload.maximum_data_size=327680 -pico32.upload.flags= -pico32.upload.extra_flags= - -pico32.serial.disableDTR=true -pico32.serial.disableRTS=true - -pico32.build.tarch=xtensa -pico32.build.bootloader_addr=0x1000 -pico32.build.target=esp32 -pico32.build.mcu=esp32 -pico32.build.core=esp32 -pico32.build.variant=pico32 -pico32.build.board=ESP32_PICO - -pico32.build.f_cpu=240000000L -pico32.build.flash_size=4MB -pico32.build.flash_freq=80m -pico32.build.flash_mode=dio -pico32.build.boot=dio -pico32.build.partitions=default -pico32.build.defines= - -pico32.menu.PartitionScheme.default=Default -pico32.menu.PartitionScheme.default.build.partitions=default -pico32.menu.PartitionScheme.no_ota=No OTA (Large APP) -pico32.menu.PartitionScheme.no_ota.build.partitions=no_ota -pico32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -pico32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -pico32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -pico32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -pico32.menu.PartitionScheme.custom=Custom -pico32.menu.PartitionScheme.custom.build.partitions= -pico32.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -pico32.menu.UploadSpeed.921600=921600 -pico32.menu.UploadSpeed.921600.upload.speed=921600 -pico32.menu.UploadSpeed.115200=115200 -pico32.menu.UploadSpeed.115200.upload.speed=115200 -pico32.menu.UploadSpeed.256000.windows=256000 -pico32.menu.UploadSpeed.256000.upload.speed=256000 -pico32.menu.UploadSpeed.230400.windows.upload.speed=256000 -pico32.menu.UploadSpeed.230400=230400 -pico32.menu.UploadSpeed.230400.upload.speed=230400 -pico32.menu.UploadSpeed.460800.linux=460800 -pico32.menu.UploadSpeed.460800.macosx=460800 -pico32.menu.UploadSpeed.460800.upload.speed=460800 -pico32.menu.UploadSpeed.512000.windows=512000 -pico32.menu.UploadSpeed.512000.upload.speed=512000 - -pico32.menu.DebugLevel.none=None -pico32.menu.DebugLevel.none.build.code_debug=0 -pico32.menu.DebugLevel.error=Error -pico32.menu.DebugLevel.error.build.code_debug=1 -pico32.menu.DebugLevel.warn=Warn -pico32.menu.DebugLevel.warn.build.code_debug=2 -pico32.menu.DebugLevel.info=Info -pico32.menu.DebugLevel.info.build.code_debug=3 -pico32.menu.DebugLevel.debug=Debug -pico32.menu.DebugLevel.debug.build.code_debug=4 -pico32.menu.DebugLevel.verbose=Verbose -pico32.menu.DebugLevel.verbose.build.code_debug=5 - -pico32.menu.EraseFlash.none=Disabled -pico32.menu.EraseFlash.none.upload.erase_cmd= -pico32.menu.EraseFlash.all=Enabled -pico32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s3-octal.name=ESP32S3 Dev Module Octal (WROOM2) -esp32s3-octal.vid.0=0x303a -esp32s3-octal.pid.0=0x1001 - -esp32s3-octal.bootloader.tool=esptool_py -esp32s3-octal.bootloader.tool.default=esptool_py - -esp32s3-octal.upload.tool=esptool_py -esp32s3-octal.upload.tool.default=esptool_py -esp32s3-octal.upload.tool.network=esp_ota -esp32s3-octal.upload.maximum_size=1310720 -esp32s3-octal.upload.maximum_data_size=327680 -esp32s3-octal.upload.flags= -esp32s3-octal.upload.extra_flags= -esp32s3-octal.upload.use_1200bps_touch=false -esp32s3-octal.upload.wait_for_upload_port=false - -esp32s3-octal.serial.disableDTR=false -esp32s3-octal.serial.disableRTS=false - -esp32s3-octal.build.tarch=xtensa -esp32s3-octal.build.bootloader_addr=0x0 -esp32s3-octal.build.target=esp32s3 -esp32s3-octal.build.mcu=esp32s3 -esp32s3-octal.build.core=esp32 -esp32s3-octal.build.variant=esp32s3 -esp32s3-octal.build.board=ESP32S3_DEV - -esp32s3-octal.build.usb_mode=1 -esp32s3-octal.build.cdc_on_boot=0 -esp32s3-octal.build.msc_on_boot=0 -esp32s3-octal.build.dfu_on_boot=0 -esp32s3-octal.build.f_cpu=240000000L -esp32s3-octal.build.flash_size=4MB -esp32s3-octal.build.flash_freq=80m -esp32s3-octal.build.flash_mode=dio - -esp32s3-octal.build.boot=opi -esp32s3-octal.build.boot_freq=80m -esp32s3-octal.build.partitions=default -esp32s3-octal.build.defines= -esp32s3-octal.build.loop_core= -esp32s3-octal.build.event_core= -esp32s3-octal.build.psram_type=opi -esp32s3-octal.build.memory_type={build.boot}_{build.psram_type} - -esp32s3-octal.menu.JTAGAdapter.default=Disabled -esp32s3-octal.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s3-octal.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32s3-octal.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -esp32s3-octal.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32s3-octal.menu.JTAGAdapter.external=FTDI Adapter -esp32s3-octal.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -esp32s3-octal.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s3-octal.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s3-octal.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -esp32s3-octal.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s3-octal.menu.PSRAM.opi=OPI PSRAM -esp32s3-octal.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -esp32s3-octal.menu.PSRAM.opi.build.psram_type=opi -esp32s3-octal.menu.PSRAM.enabled=QSPI PSRAM -esp32s3-octal.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -esp32s3-octal.menu.PSRAM.enabled.build.psram_type=qspi -esp32s3-octal.menu.PSRAM.disabled=Disabled -esp32s3-octal.menu.PSRAM.disabled.build.defines= -esp32s3-octal.menu.PSRAM.disabled.build.psram_type=qspi - -esp32s3-octal.menu.FlashMode.opi=OPI 80MHz -esp32s3-octal.menu.FlashMode.opi.build.flash_mode=dout -esp32s3-octal.menu.FlashMode.opi.build.boot=opi -esp32s3-octal.menu.FlashMode.opi.build.boot_freq=80m -esp32s3-octal.menu.FlashMode.opi.build.flash_freq=80m -esp32s3-octal.menu.FlashMode.qio=QIO 80MHz -esp32s3-octal.menu.FlashMode.qio.build.flash_mode=dio -esp32s3-octal.menu.FlashMode.qio.build.boot=qio -esp32s3-octal.menu.FlashMode.qio.build.boot_freq=80m -esp32s3-octal.menu.FlashMode.qio.build.flash_freq=80m -esp32s3-octal.menu.FlashMode.qio120=QIO 120MHz -esp32s3-octal.menu.FlashMode.qio120.build.flash_mode=dio -esp32s3-octal.menu.FlashMode.qio120.build.boot=qio -esp32s3-octal.menu.FlashMode.qio120.build.boot_freq=120m -esp32s3-octal.menu.FlashMode.qio120.build.flash_freq=80m -esp32s3-octal.menu.FlashMode.dio=DIO 80MHz -esp32s3-octal.menu.FlashMode.dio.build.flash_mode=dio -esp32s3-octal.menu.FlashMode.dio.build.boot=dio -esp32s3-octal.menu.FlashMode.dio.build.boot_freq=80m -esp32s3-octal.menu.FlashMode.dio.build.flash_freq=80m - -esp32s3-octal.menu.FlashSize.16M=16MB (128Mb) -esp32s3-octal.menu.FlashSize.4M=4MB (32Mb) -esp32s3-octal.menu.FlashSize.4M.build.flash_size=4MB -esp32s3-octal.menu.FlashSize.8M=8MB (64Mb) -esp32s3-octal.menu.FlashSize.8M.build.flash_size=8MB -esp32s3-octal.menu.FlashSize.8M.build.partitions=default_8MB -esp32s3-octal.menu.FlashSize.16M=16MB (128Mb) -esp32s3-octal.menu.FlashSize.16M.build.flash_size=16MB -esp32s3-octal.menu.FlashSize.32M=32MB (256Mb) -esp32s3-octal.menu.FlashSize.32M.build.flash_size=32MB -esp32s3-octal.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -esp32s3-octal.menu.LoopCore.1=Core 1 -esp32s3-octal.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3-octal.menu.LoopCore.0=Core 0 -esp32s3-octal.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32s3-octal.menu.EventsCore.1=Core 1 -esp32s3-octal.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32s3-octal.menu.EventsCore.0=Core 0 -esp32s3-octal.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32s3-octal.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3-octal.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3-octal.menu.USBMode.default=USB-OTG (TinyUSB) -esp32s3-octal.menu.USBMode.default.build.usb_mode=0 - -esp32s3-octal.menu.CDCOnBoot.default=Disabled -esp32s3-octal.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32s3-octal.menu.CDCOnBoot.cdc=Enabled -esp32s3-octal.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32s3-octal.menu.MSCOnBoot.default=Disabled -esp32s3-octal.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s3-octal.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -esp32s3-octal.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s3-octal.menu.DFUOnBoot.default=Disabled -esp32s3-octal.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s3-octal.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -esp32s3-octal.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s3-octal.menu.UploadMode.default=UART0 / Hardware CDC -esp32s3-octal.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s3-octal.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s3-octal.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -esp32s3-octal.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s3-octal.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s3-octal.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3-octal.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s3-octal.menu.PartitionScheme.default.build.partitions=default -esp32s3-octal.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s3-octal.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s3-octal.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3-octal.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3-octal.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3-octal.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s3-octal.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s3-octal.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s3-octal.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s3-octal.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s3-octal.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s3-octal.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s3-octal.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s3-octal.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s3-octal.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s3-octal.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s3-octal.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s3-octal.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s3-octal.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s3-octal.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s3-octal.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s3-octal.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s3-octal.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s3-octal.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s3-octal.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s3-octal.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s3-octal.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s3-octal.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s3-octal.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3-octal.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3-octal.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s3-octal.menu.PartitionScheme.rainmaker=RainMaker -esp32s3-octal.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s3-octal.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s3-octal.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -esp32s3-octal.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -esp32s3-octal.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -esp32s3-octal.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -esp32s3-octal.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -esp32s3-octal.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 - -esp32s3-octal.menu.CPUFreq.240=240MHz (WiFi) -esp32s3-octal.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s3-octal.menu.CPUFreq.160=160MHz (WiFi) -esp32s3-octal.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s3-octal.menu.CPUFreq.80=80MHz (WiFi) -esp32s3-octal.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s3-octal.menu.CPUFreq.40=40MHz -esp32s3-octal.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s3-octal.menu.CPUFreq.20=20MHz -esp32s3-octal.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s3-octal.menu.CPUFreq.10=10MHz -esp32s3-octal.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s3-octal.menu.UploadSpeed.921600=921600 -esp32s3-octal.menu.UploadSpeed.921600.upload.speed=921600 -esp32s3-octal.menu.UploadSpeed.115200=115200 -esp32s3-octal.menu.UploadSpeed.115200.upload.speed=115200 -esp32s3-octal.menu.UploadSpeed.256000.windows=256000 -esp32s3-octal.menu.UploadSpeed.256000.upload.speed=256000 -esp32s3-octal.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s3-octal.menu.UploadSpeed.230400=230400 -esp32s3-octal.menu.UploadSpeed.230400.upload.speed=230400 -esp32s3-octal.menu.UploadSpeed.460800.linux=460800 -esp32s3-octal.menu.UploadSpeed.460800.macosx=460800 -esp32s3-octal.menu.UploadSpeed.460800.upload.speed=460800 -esp32s3-octal.menu.UploadSpeed.512000.windows=512000 -esp32s3-octal.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s3-octal.menu.DebugLevel.none=None -esp32s3-octal.menu.DebugLevel.none.build.code_debug=0 -esp32s3-octal.menu.DebugLevel.error=Error -esp32s3-octal.menu.DebugLevel.error.build.code_debug=1 -esp32s3-octal.menu.DebugLevel.warn=Warn -esp32s3-octal.menu.DebugLevel.warn.build.code_debug=2 -esp32s3-octal.menu.DebugLevel.info=Info -esp32s3-octal.menu.DebugLevel.info.build.code_debug=3 -esp32s3-octal.menu.DebugLevel.debug=Debug -esp32s3-octal.menu.DebugLevel.debug.build.code_debug=4 -esp32s3-octal.menu.DebugLevel.verbose=Verbose -esp32s3-octal.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3-octal.menu.EraseFlash.none=Disabled -esp32s3-octal.menu.EraseFlash.none.upload.erase_cmd= -esp32s3-octal.menu.EraseFlash.all=Enabled -esp32s3-octal.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s3box.name=ESP32-S3-Box -esp32s3box.vid.0=0x303a -esp32s3box.pid.0=0x1001 - -esp32s3box.bootloader.tool=esptool_py -esp32s3box.bootloader.tool.default=esptool_py - -esp32s3box.upload.tool=esptool_py -esp32s3box.upload.tool.default=esptool_py -esp32s3box.upload.tool.network=esp_ota - -esp32s3box.upload.maximum_size=3145728 -esp32s3box.upload.maximum_data_size=327680 -esp32s3box.upload.speed=921600 -esp32s3box.upload.flags= -esp32s3box.upload.extra_flags= -esp32s3box.upload.use_1200bps_touch=false -esp32s3box.upload.wait_for_upload_port=false - -esp32s3box.serial.disableDTR=false -esp32s3box.serial.disableRTS=false - -esp32s3box.build.tarch=xtensa -esp32s3box.build.bootloader_addr=0x0 -esp32s3box.build.target=esp32s3 -esp32s3box.build.mcu=esp32s3 -esp32s3box.build.core=esp32 -esp32s3box.build.variant=esp32s3box -esp32s3box.build.board=ESP32_S3_BOX - -esp32s3box.build.usb_mode=1 -esp32s3box.build.cdc_on_boot=1 -esp32s3box.build.msc_on_boot=0 -esp32s3box.build.dfu_on_boot=0 -esp32s3box.build.f_cpu=240000000L -esp32s3box.build.flash_size=16MB -esp32s3box.build.flash_freq=80m -esp32s3box.build.flash_mode=dio -esp32s3box.build.boot=qio -esp32s3box.build.partitions=default -esp32s3box.build.defines=-DBOARD_HAS_PSRAM -esp32s3box.build.memory_type=qio_opi -esp32s3box.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3box.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 - -esp32s3box.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3box.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3box.menu.USBMode.hwcdc.upload.use_1200bps_touch=false -esp32s3box.menu.USBMode.hwcdc.upload.wait_for_upload_port=false -esp32s3box.menu.USBMode.default=USB-OTG -esp32s3box.menu.USBMode.default.build.usb_mode=0 -esp32s3box.menu.USBMode.default.upload.use_1200bps_touch=true -esp32s3box.menu.USBMode.default.upload.wait_for_upload_port=true - -esp32s3box.menu.MSCOnBoot.default=Disabled -esp32s3box.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s3box.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -esp32s3box.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s3box.menu.DFUOnBoot.default=Disabled -esp32s3box.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s3box.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -esp32s3box.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s3box.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3box.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3box.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s3box.menu.PartitionScheme.rainmaker=RainMaker -esp32s3box.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s3box.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s3box.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -esp32s3box.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -esp32s3box.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -esp32s3box.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -esp32s3box.menu.PartitionScheme.custom=Custom -esp32s3box.menu.PartitionScheme.custom.build.partitions= -esp32s3box.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s3box.menu.DebugLevel.none=None -esp32s3box.menu.DebugLevel.none.build.code_debug=0 -esp32s3box.menu.DebugLevel.error=Error -esp32s3box.menu.DebugLevel.error.build.code_debug=1 -esp32s3box.menu.DebugLevel.warn=Warn -esp32s3box.menu.DebugLevel.warn.build.code_debug=2 -esp32s3box.menu.DebugLevel.info=Info -esp32s3box.menu.DebugLevel.info.build.code_debug=3 -esp32s3box.menu.DebugLevel.debug=Debug -esp32s3box.menu.DebugLevel.debug.build.code_debug=4 -esp32s3box.menu.DebugLevel.verbose=Verbose -esp32s3box.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3box.menu.EraseFlash.none=Disabled -esp32s3box.menu.EraseFlash.none.upload.erase_cmd= -esp32s3box.menu.EraseFlash.all=Enabled -esp32s3box.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s3usbotg.name=ESP32-S3-USB-OTG -esp32s3usbotg.vid.0=0x303a -esp32s3usbotg.pid.0=0x1001 - -esp32s3usbotg.bootloader.tool=esptool_py -esp32s3usbotg.bootloader.tool.default=esptool_py - -esp32s3usbotg.upload.tool=esptool_py -esp32s3usbotg.upload.tool.default=esptool_py -esp32s3usbotg.upload.tool.network=esp_ota - -esp32s3usbotg.upload.maximum_size=1310720 -esp32s3usbotg.upload.maximum_data_size=327680 -esp32s3usbotg.upload.speed=921600 -esp32s3usbotg.upload.flags= -esp32s3usbotg.upload.extra_flags= -esp32s3usbotg.upload.use_1200bps_touch=false -esp32s3usbotg.upload.wait_for_upload_port=false - -esp32s3usbotg.serial.disableDTR=false -esp32s3usbotg.serial.disableRTS=false - -esp32s3usbotg.build.tarch=xtensa -esp32s3usbotg.build.bootloader_addr=0x0 -esp32s3usbotg.build.target=esp32s3 -esp32s3usbotg.build.mcu=esp32s3 -esp32s3usbotg.build.core=esp32 -esp32s3usbotg.build.variant=esp32s3usbotg -esp32s3usbotg.build.board=ESP32_S3_USB_OTG - -esp32s3usbotg.build.usb_mode=0 -esp32s3usbotg.build.cdc_on_boot=0 -esp32s3usbotg.build.msc_on_boot=0 -esp32s3usbotg.build.dfu_on_boot=0 -esp32s3usbotg.build.f_cpu=240000000L -esp32s3usbotg.build.flash_size=8MB -esp32s3usbotg.build.flash_freq=80m -esp32s3usbotg.build.flash_mode=dio -esp32s3usbotg.build.boot=qio -esp32s3usbotg.build.partitions=default -esp32s3usbotg.build.defines= -esp32s3usbotg.build.memory_type=qio_qspi -esp32s3usbotg.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3usbotg.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 - -esp32s3usbotg.menu.USBMode.default=USB-OTG -esp32s3usbotg.menu.USBMode.default.build.usb_mode=0 -esp32s3usbotg.menu.USBMode.default.build.cdc_on_boot=0 -esp32s3usbotg.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3usbotg.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3usbotg.menu.USBMode.hwcdc.build.cdc_on_boot=1 - -esp32s3usbotg.menu.UploadMode.default=UART0 / Hardware CDC -esp32s3usbotg.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s3usbotg.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s3usbotg.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -esp32s3usbotg.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s3usbotg.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s3usbotg.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.default.build.partitions=default -esp32s3usbotg.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s3usbotg.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s3usbotg.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3usbotg.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3usbotg.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s3usbotg.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s3usbotg.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s3usbotg.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s3usbotg.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s3usbotg.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s3usbotg.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s3usbotg.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s3usbotg.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s3usbotg.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s3usbotg.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s3usbotg.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s3usbotg.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s3usbotg.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s3usbotg.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s3usbotg.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s3usbotg.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s3usbotg.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s3usbotg.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3usbotg.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3usbotg.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s3usbotg.menu.PartitionScheme.custom=Custom -esp32s3usbotg.menu.PartitionScheme.custom.build.partitions= -esp32s3usbotg.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s3usbotg.menu.DebugLevel.none=None -esp32s3usbotg.menu.DebugLevel.none.build.code_debug=0 -esp32s3usbotg.menu.DebugLevel.error=Error -esp32s3usbotg.menu.DebugLevel.error.build.code_debug=1 -esp32s3usbotg.menu.DebugLevel.warn=Warn -esp32s3usbotg.menu.DebugLevel.warn.build.code_debug=2 -esp32s3usbotg.menu.DebugLevel.info=Info -esp32s3usbotg.menu.DebugLevel.info.build.code_debug=3 -esp32s3usbotg.menu.DebugLevel.debug=Debug -esp32s3usbotg.menu.DebugLevel.debug.build.code_debug=4 -esp32s3usbotg.menu.DebugLevel.verbose=Verbose -esp32s3usbotg.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3usbotg.menu.EraseFlash.none=Disabled -esp32s3usbotg.menu.EraseFlash.none.upload.erase_cmd= -esp32s3usbotg.menu.EraseFlash.all=Enabled -esp32s3usbotg.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s3camlcd.name=ESP32S3 CAM LCD -esp32s3camlcd.vid.0=0x303a -esp32s3camlcd.pid.0=0x1001 - -esp32s3camlcd.bootloader.tool=esptool_py -esp32s3camlcd.bootloader.tool.default=esptool_py - -esp32s3camlcd.upload.tool=esptool_py -esp32s3camlcd.upload.tool.default=esptool_py -esp32s3camlcd.upload.tool.network=esp_ota - -esp32s3camlcd.upload.maximum_size=1310720 -esp32s3camlcd.upload.maximum_data_size=327680 -esp32s3camlcd.upload.flags= -esp32s3camlcd.upload.extra_flags= -esp32s3camlcd.upload.use_1200bps_touch=false -esp32s3camlcd.upload.wait_for_upload_port=false - -esp32s3camlcd.serial.disableDTR=false -esp32s3camlcd.serial.disableRTS=false - -esp32s3camlcd.build.tarch=xtensa -esp32s3camlcd.build.bootloader_addr=0x0 -esp32s3camlcd.build.target=esp32s3 -esp32s3camlcd.build.mcu=esp32s3 -esp32s3camlcd.build.core=esp32 -esp32s3camlcd.build.variant=esp32s3camlcd -esp32s3camlcd.build.board=ESP32S3_CAM_LCD - -esp32s3camlcd.build.usb_mode=1 -esp32s3camlcd.build.cdc_on_boot=0 -esp32s3camlcd.build.msc_on_boot=0 -esp32s3camlcd.build.dfu_on_boot=0 -esp32s3camlcd.build.f_cpu=240000000L -esp32s3camlcd.build.flash_size=4MB -esp32s3camlcd.build.flash_freq=80m -esp32s3camlcd.build.flash_mode=dout -esp32s3camlcd.build.boot=opi -esp32s3camlcd.build.partitions=default -esp32s3camlcd.build.defines=-DBOARD_HAS_PSRAM -esp32s3camlcd.build.memory_type=opi_opi -esp32s3camlcd.build.loop_core= -esp32s3camlcd.build.event_core= - -esp32s3camlcd.menu.LoopCore.1=Core 1 -esp32s3camlcd.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3camlcd.menu.LoopCore.0=Core 0 -esp32s3camlcd.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32s3camlcd.menu.EventsCore.1=Core 1 -esp32s3camlcd.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32s3camlcd.menu.EventsCore.0=Core 0 -esp32s3camlcd.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32s3camlcd.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.default.build.partitions=default -esp32s3camlcd.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s3camlcd.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s3camlcd.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3camlcd.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3camlcd.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s3camlcd.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s3camlcd.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s3camlcd.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s3camlcd.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s3camlcd.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s3camlcd.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s3camlcd.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s3camlcd.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s3camlcd.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s3camlcd.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s3camlcd.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s3camlcd.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s3camlcd.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s3camlcd.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s3camlcd.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s3camlcd.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s3camlcd.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s3camlcd.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s3camlcd.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3camlcd.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3camlcd.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -esp32s3camlcd.menu.UploadSpeed.921600=921600 -esp32s3camlcd.menu.UploadSpeed.921600.upload.speed=921600 -esp32s3camlcd.menu.UploadSpeed.115200=115200 -esp32s3camlcd.menu.UploadSpeed.115200.upload.speed=115200 -esp32s3camlcd.menu.UploadSpeed.256000.windows=256000 -esp32s3camlcd.menu.UploadSpeed.256000.upload.speed=256000 -esp32s3camlcd.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s3camlcd.menu.UploadSpeed.230400=230400 -esp32s3camlcd.menu.UploadSpeed.230400.upload.speed=230400 -esp32s3camlcd.menu.UploadSpeed.460800.linux=460800 -esp32s3camlcd.menu.UploadSpeed.460800.macosx=460800 -esp32s3camlcd.menu.UploadSpeed.460800.upload.speed=460800 -esp32s3camlcd.menu.UploadSpeed.512000.windows=512000 -esp32s3camlcd.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s3camlcd.menu.DebugLevel.none=None -esp32s3camlcd.menu.DebugLevel.none.build.code_debug=0 -esp32s3camlcd.menu.DebugLevel.error=Error -esp32s3camlcd.menu.DebugLevel.error.build.code_debug=1 -esp32s3camlcd.menu.DebugLevel.warn=Warn -esp32s3camlcd.menu.DebugLevel.warn.build.code_debug=2 -esp32s3camlcd.menu.DebugLevel.info=Info -esp32s3camlcd.menu.DebugLevel.info.build.code_debug=3 -esp32s3camlcd.menu.DebugLevel.debug=Debug -esp32s3camlcd.menu.DebugLevel.debug.build.code_debug=4 -esp32s3camlcd.menu.DebugLevel.verbose=Verbose -esp32s3camlcd.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3camlcd.menu.EraseFlash.none=Disabled -esp32s3camlcd.menu.EraseFlash.none.upload.erase_cmd= -esp32s3camlcd.menu.EraseFlash.all=Enabled -esp32s3camlcd.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s2usb.name=ESP32S2 Native USB -esp32s2usb.vid.0=0x303a -esp32s2usb.pid.0=0x0003 - -esp32s2usb.bootloader.tool=esptool_py -esp32s2usb.bootloader.tool.default=esptool_py - -esp32s2usb.upload.tool=esptool_py -esp32s2usb.upload.tool.default=esptool_py -esp32s2usb.upload.tool.network=esp_ota - -esp32s2usb.upload.maximum_size=1310720 -esp32s2usb.upload.maximum_data_size=327680 -esp32s2usb.upload.flags= -esp32s2usb.upload.extra_flags= -esp32s2usb.upload.use_1200bps_touch=true -esp32s2usb.upload.wait_for_upload_port=true -esp32s2usb.upload.speed=921600 - -esp32s2usb.serial.disableDTR=false -esp32s2usb.serial.disableRTS=false - -esp32s2usb.build.tarch=xtensa -esp32s2usb.build.bootloader_addr=0x1000 -esp32s2usb.build.target=esp32s2 -esp32s2usb.build.mcu=esp32s2 -esp32s2usb.build.core=esp32 -esp32s2usb.build.variant=esp32s2usb -esp32s2usb.build.board=ESP32S2_USB - -esp32s2usb.build.cdc_on_boot=1 -esp32s2usb.build.msc_on_boot=1 -esp32s2usb.build.dfu_on_boot=1 -esp32s2usb.build.f_cpu=240000000L -esp32s2usb.build.flash_size=4MB -esp32s2usb.build.flash_freq=80m -esp32s2usb.build.flash_mode=dio -esp32s2usb.build.boot=qio -esp32s2usb.build.partitions=default -esp32s2usb.build.defines= - -esp32s2usb.menu.PSRAM.disabled=Disabled -esp32s2usb.menu.PSRAM.disabled.build.defines= -esp32s2usb.menu.PSRAM.enabled=Enabled -esp32s2usb.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -esp32s2usb.menu.FlashSize.4M=4MB (32Mb) -esp32s2usb.menu.FlashSize.4M.build.flash_size=4MB -esp32s2usb.menu.FlashSize.8M=8MB (64Mb) -esp32s2usb.menu.FlashSize.8M.build.flash_size=8MB -esp32s2usb.menu.FlashSize.8M.build.partitions=default_8MB -esp32s2usb.menu.FlashSize.16M=16MB (128Mb) -esp32s2usb.menu.FlashSize.16M.build.flash_size=16MB - -esp32s2usb.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s2usb.menu.PartitionScheme.default.build.partitions=default -esp32s2usb.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s2usb.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s2usb.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s2usb.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s2usb.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s2usb.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s2usb.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s2usb.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s2usb.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s2usb.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s2usb.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s2usb.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s2usb.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s2usb.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s2usb.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s2usb.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s2usb.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s2usb.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s2usb.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s2usb.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s2usb.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s2usb.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s2usb.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s2usb.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s2usb.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s2usb.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s2usb.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s2usb.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s2usb.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s2usb.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s2usb.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -esp32s2usb.menu.DebugLevel.none=None -esp32s2usb.menu.DebugLevel.none.build.code_debug=0 -esp32s2usb.menu.DebugLevel.error=Error -esp32s2usb.menu.DebugLevel.error.build.code_debug=1 -esp32s2usb.menu.DebugLevel.warn=Warn -esp32s2usb.menu.DebugLevel.warn.build.code_debug=2 -esp32s2usb.menu.DebugLevel.info=Info -esp32s2usb.menu.DebugLevel.info.build.code_debug=3 -esp32s2usb.menu.DebugLevel.debug=Debug -esp32s2usb.menu.DebugLevel.debug.build.code_debug=4 -esp32s2usb.menu.DebugLevel.verbose=Verbose -esp32s2usb.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s2usb.menu.EraseFlash.none=Disabled -esp32s2usb.menu.EraseFlash.none.upload.erase_cmd= -esp32s2usb.menu.EraseFlash.all=Enabled -esp32s2usb.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32wroverkit.name=ESP32 Wrover Kit (all versions) - -esp32wroverkit.bootloader.tool=esptool_py -esp32wroverkit.bootloader.tool.default=esptool_py - -esp32wroverkit.upload.tool=esptool_py -esp32wroverkit.upload.tool.default=esptool_py -esp32wroverkit.upload.tool.network=esp_ota - -esp32wroverkit.upload.maximum_size=1310720 -esp32wroverkit.upload.maximum_data_size=327680 -esp32wroverkit.upload.flags= -esp32wroverkit.upload.extra_flags= - -esp32wroverkit.serial.disableDTR=true -esp32wroverkit.serial.disableRTS=true - -esp32wroverkit.build.tarch=xtensa -esp32wroverkit.build.bootloader_addr=0x1000 -esp32wroverkit.build.target=esp32 -esp32wroverkit.build.mcu=esp32 -esp32wroverkit.build.core=esp32 -esp32wroverkit.build.variant=esp32 -esp32wroverkit.build.board=ESP32_WROVER_KIT - -esp32wroverkit.build.f_cpu=240000000L -esp32wroverkit.build.flash_size=4MB -esp32wroverkit.build.flash_freq=40m -esp32wroverkit.build.flash_mode=dio -esp32wroverkit.build.boot=dio -esp32wroverkit.build.partitions=default - -esp32wroverkit.menu.FlashSize.4M=4MB (32Mb) -esp32wroverkit.menu.FlashSize.4M.build.flash_size=4MB -esp32wroverkit.menu.FlashSize.8M=8MB (64Mb) -esp32wroverkit.menu.FlashSize.8M.build.flash_size=8MB -esp32wroverkit.menu.FlashSize.8M.build.partitions=default_8MB -esp32wroverkit.menu.FlashSize.2M=2MB (16Mb) -esp32wroverkit.menu.FlashSize.2M.build.flash_size=2MB -esp32wroverkit.menu.FlashSize.2M.build.partitions=minimal -esp32wroverkit.menu.FlashSize.16M=16MB (128Mb) -esp32wroverkit.menu.FlashSize.16M.build.flash_size=16MB - -esp32wroverkit.menu.PSRAM.enabled=Enabled -esp32wroverkit.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -esp32wroverkit.menu.PSRAM.disabled=Disabled -esp32wroverkit.menu.PSRAM.disabled.build.defines= - -esp32wroverkit.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32wroverkit.menu.PartitionScheme.default.build.partitions=default -esp32wroverkit.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32wroverkit.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32wroverkit.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32wroverkit.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32wroverkit.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32wroverkit.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32wroverkit.menu.PartitionScheme.minimal.build.partitions=minimal -esp32wroverkit.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32wroverkit.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32wroverkit.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32wroverkit.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32wroverkit.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32wroverkit.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32wroverkit.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32wroverkit.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32wroverkit.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32wroverkit.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32wroverkit.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32wroverkit.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32wroverkit.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32wroverkit.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32wroverkit.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32wroverkit.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32wroverkit.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32wroverkit.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32wroverkit.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32wroverkit.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32wroverkit.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32wroverkit.menu.PartitionScheme.rainmaker=RainMaker -esp32wroverkit.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32wroverkit.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -esp32wroverkit.menu.CPUFreq.240=240MHz (WiFi/BT) -esp32wroverkit.menu.CPUFreq.240.build.f_cpu=240000000L -esp32wroverkit.menu.CPUFreq.160=160MHz (WiFi/BT) -esp32wroverkit.menu.CPUFreq.160.build.f_cpu=160000000L -esp32wroverkit.menu.CPUFreq.80=80MHz (WiFi/BT) -esp32wroverkit.menu.CPUFreq.80.build.f_cpu=80000000L -esp32wroverkit.menu.CPUFreq.40=40MHz (40MHz XTAL) -esp32wroverkit.menu.CPUFreq.40.build.f_cpu=40000000L -esp32wroverkit.menu.CPUFreq.26=26MHz (26MHz XTAL) -esp32wroverkit.menu.CPUFreq.26.build.f_cpu=26000000L -esp32wroverkit.menu.CPUFreq.20=20MHz (40MHz XTAL) -esp32wroverkit.menu.CPUFreq.20.build.f_cpu=20000000L -esp32wroverkit.menu.CPUFreq.13=13MHz (26MHz XTAL) -esp32wroverkit.menu.CPUFreq.13.build.f_cpu=13000000L -esp32wroverkit.menu.CPUFreq.10=10MHz (40MHz XTAL) -esp32wroverkit.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32wroverkit.menu.FlashMode.qio=QIO -esp32wroverkit.menu.FlashMode.qio.build.flash_mode=dio -esp32wroverkit.menu.FlashMode.qio.build.boot=qio -esp32wroverkit.menu.FlashMode.dio=DIO -esp32wroverkit.menu.FlashMode.dio.build.flash_mode=dio -esp32wroverkit.menu.FlashMode.dio.build.boot=dio -esp32wroverkit.menu.FlashFreq.80=80MHz -esp32wroverkit.menu.FlashFreq.80.build.flash_freq=80m -esp32wroverkit.menu.FlashFreq.40=40MHz -esp32wroverkit.menu.FlashFreq.40.build.flash_freq=40m - -esp32wroverkit.menu.UploadSpeed.921600=921600 -esp32wroverkit.menu.UploadSpeed.921600.upload.speed=921600 -esp32wroverkit.menu.UploadSpeed.115200=115200 -esp32wroverkit.menu.UploadSpeed.115200.upload.speed=115200 -esp32wroverkit.menu.UploadSpeed.256000.windows=256000 -esp32wroverkit.menu.UploadSpeed.256000.upload.speed=256000 -esp32wroverkit.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32wroverkit.menu.UploadSpeed.230400=230400 -esp32wroverkit.menu.UploadSpeed.230400.upload.speed=230400 -esp32wroverkit.menu.UploadSpeed.460800.linux=460800 -esp32wroverkit.menu.UploadSpeed.460800.macosx=460800 -esp32wroverkit.menu.UploadSpeed.460800.upload.speed=460800 -esp32wroverkit.menu.UploadSpeed.512000.windows=512000 -esp32wroverkit.menu.UploadSpeed.512000.upload.speed=512000 - -esp32wroverkit.menu.DebugLevel.none=None -esp32wroverkit.menu.DebugLevel.none.build.code_debug=0 -esp32wroverkit.menu.DebugLevel.error=Error -esp32wroverkit.menu.DebugLevel.error.build.code_debug=1 -esp32wroverkit.menu.DebugLevel.warn=Warn -esp32wroverkit.menu.DebugLevel.warn.build.code_debug=2 -esp32wroverkit.menu.DebugLevel.info=Info -esp32wroverkit.menu.DebugLevel.info.build.code_debug=3 -esp32wroverkit.menu.DebugLevel.debug=Debug -esp32wroverkit.menu.DebugLevel.debug.build.code_debug=4 -esp32wroverkit.menu.DebugLevel.verbose=Verbose -esp32wroverkit.menu.DebugLevel.verbose.build.code_debug=5 - -esp32wroverkit.menu.EraseFlash.none=Disabled -esp32wroverkit.menu.EraseFlash.none.upload.erase_cmd= -esp32wroverkit.menu.EraseFlash.all=Enabled -esp32wroverkit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -aventen_s3_sync.name=Aventen S3 Sync -aventen_s3_sync.vid.0=0x303a -aventen_s3_sync.pid.0=0x1001 -## Based upon ESP32-S3 Dev Board - -aventen_s3_sync.bootloader.tool=esptool_py -aventen_s3_sync.bootloader.tool.default=esptool_py - -aventen_s3_sync.upload.tool=esptool_py -aventen_s3_sync.upload.tool.default=esptool_py -aventen_s3_sync.upload.tool.network=esp_ota - -aventen_s3_sync.upload.maximum_size=1310720 -aventen_s3_sync.upload.maximum_data_size=327680 -aventen_s3_sync.upload.flags= -aventen_s3_sync.upload.extra_flags= -aventen_s3_sync.upload.use_1200bps_touch=false -aventen_s3_sync.upload.wait_for_upload_port=false - -aventen_s3_sync.serial.disableDTR=false -aventen_s3_sync.serial.disableRTS=false - -aventen_s3_sync.build.tarch=xtensa -aventen_s3_sync.build.bootloader_addr=0x0 -aventen_s3_sync.build.target=esp32s3 -aventen_s3_sync.build.mcu=esp32s3 -aventen_s3_sync.build.core=esp32 -aventen_s3_sync.build.variant=Aventen_S3_Sync -aventen_s3_sync.build.board=AVENTEN_S3_SYNC - -aventen_s3_sync.build.usb_mode=1 -aventen_s3_sync.build.cdc_on_boot=0 -aventen_s3_sync.build.msc_on_boot=0 -aventen_s3_sync.build.dfu_on_boot=0 -aventen_s3_sync.build.f_cpu=240000000L -aventen_s3_sync.build.flash_size=16MB -aventen_s3_sync.build.flash_freq=80m -aventen_s3_sync.build.flash_mode=dio -aventen_s3_sync.build.boot=qio -aventen_s3_sync.build.boot_freq=80m -aventen_s3_sync.build.partitions=default -aventen_s3_sync.build.defines= -aventen_s3_sync.build.loop_core= -aventen_s3_sync.build.event_core= -aventen_s3_sync.build.psram_type=qspi -aventen_s3_sync.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 -aventen_s3_sync.menu.JTAGAdapter.default=Disabled -aventen_s3_sync.menu.JTAGAdapter.default.build.copy_jtag_files=0 -aventen_s3_sync.menu.JTAGAdapter.builtin=Integrated USB JTAG -aventen_s3_sync.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -aventen_s3_sync.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -aventen_s3_sync.menu.JTAGAdapter.external=FTDI Adapter -aventen_s3_sync.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -aventen_s3_sync.menu.JTAGAdapter.external.build.copy_jtag_files=1 -aventen_s3_sync.menu.JTAGAdapter.bridge=ESP USB Bridge -aventen_s3_sync.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -aventen_s3_sync.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -aventen_s3_sync.menu.PSRAM.disabled=Disabled -aventen_s3_sync.menu.PSRAM.disabled.build.defines= -aventen_s3_sync.menu.PSRAM.disabled.build.psram_type=qspi -aventen_s3_sync.menu.PSRAM.enabled=QSPI PSRAM -aventen_s3_sync.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -aventen_s3_sync.menu.PSRAM.enabled.build.psram_type=qspi -aventen_s3_sync.menu.PSRAM.opi=OPI PSRAM -aventen_s3_sync.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -aventen_s3_sync.menu.PSRAM.opi.build.psram_type=opi - -aventen_s3_sync.menu.FlashMode.qio=QIO 80MHz -aventen_s3_sync.menu.FlashMode.qio.build.flash_mode=dio -aventen_s3_sync.menu.FlashMode.qio.build.boot=qio -aventen_s3_sync.menu.FlashMode.qio.build.boot_freq=80m -aventen_s3_sync.menu.FlashMode.qio.build.flash_freq=80m -aventen_s3_sync.menu.FlashMode.qio120=QIO 120MHz -aventen_s3_sync.menu.FlashMode.qio120.build.flash_mode=dio -aventen_s3_sync.menu.FlashMode.qio120.build.boot=qio -aventen_s3_sync.menu.FlashMode.qio120.build.boot_freq=120m -aventen_s3_sync.menu.FlashMode.qio120.build.flash_freq=80m -aventen_s3_sync.menu.FlashMode.dio=DIO 80MHz -aventen_s3_sync.menu.FlashMode.dio.build.flash_mode=dio -aventen_s3_sync.menu.FlashMode.dio.build.boot=dio -aventen_s3_sync.menu.FlashMode.dio.build.boot_freq=80m -aventen_s3_sync.menu.FlashMode.dio.build.flash_freq=80m -aventen_s3_sync.menu.FlashMode.opi=OPI 80MHz -aventen_s3_sync.menu.FlashMode.opi.build.flash_mode=dout -aventen_s3_sync.menu.FlashMode.opi.build.boot=opi -aventen_s3_sync.menu.FlashMode.opi.build.boot_freq=80m -aventen_s3_sync.menu.FlashMode.opi.build.flash_freq=80m - -aventen_s3_sync.menu.FlashSize.16M=16MB (128Mb) -aventen_s3_sync.menu.FlashSize.16M.build.flash_size=16MB - -aventen_s3_sync.menu.LoopCore.1=Core 1 -aventen_s3_sync.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -aventen_s3_sync.menu.LoopCore.0=Core 0 -aventen_s3_sync.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -aventen_s3_sync.menu.EventsCore.1=Core 1 -aventen_s3_sync.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -aventen_s3_sync.menu.EventsCore.0=Core 0 -aventen_s3_sync.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -aventen_s3_sync.menu.USBMode.hwcdc=Hardware CDC and JTAG -aventen_s3_sync.menu.USBMode.hwcdc.build.usb_mode=1 -aventen_s3_sync.menu.USBMode.default=USB-OTG (TinyUSB) -aventen_s3_sync.menu.USBMode.default.build.usb_mode=0 - -aventen_s3_sync.menu.CDCOnBoot.default=Disabled -aventen_s3_sync.menu.CDCOnBoot.default.build.cdc_on_boot=0 -aventen_s3_sync.menu.CDCOnBoot.cdc=Enabled -aventen_s3_sync.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -aventen_s3_sync.menu.MSCOnBoot.default=Disabled -aventen_s3_sync.menu.MSCOnBoot.default.build.msc_on_boot=0 -aventen_s3_sync.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -aventen_s3_sync.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -aventen_s3_sync.menu.DFUOnBoot.default=Disabled -aventen_s3_sync.menu.DFUOnBoot.default.build.dfu_on_boot=0 -aventen_s3_sync.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -aventen_s3_sync.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -aventen_s3_sync.menu.UploadMode.default=UART0 / Hardware CDC -aventen_s3_sync.menu.UploadMode.default.upload.use_1200bps_touch=false -aventen_s3_sync.menu.UploadMode.default.upload.wait_for_upload_port=false -aventen_s3_sync.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -aventen_s3_sync.menu.UploadMode.cdc.upload.use_1200bps_touch=true -aventen_s3_sync.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -aventen_s3_sync.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.default.build.partitions=default -aventen_s3_sync.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -aventen_s3_sync.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -aventen_s3_sync.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -aventen_s3_sync.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -aventen_s3_sync.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.minimal.build.partitions=minimal -aventen_s3_sync.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.no_ota.build.partitions=no_ota -aventen_s3_sync.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -aventen_s3_sync.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -aventen_s3_sync.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -aventen_s3_sync.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -aventen_s3_sync.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -aventen_s3_sync.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -aventen_s3_sync.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -aventen_s3_sync.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -aventen_s3_sync.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -aventen_s3_sync.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.huge_app.build.partitions=huge_app -aventen_s3_sync.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -aventen_s3_sync.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -aventen_s3_sync.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -aventen_s3_sync.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -aventen_s3_sync.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -aventen_s3_sync.menu.PartitionScheme.fatflash.build.partitions=ffat -aventen_s3_sync.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -aventen_s3_sync.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -aventen_s3_sync.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -aventen_s3_sync.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -aventen_s3_sync.menu.PartitionScheme.rainmaker=RainMaker -aventen_s3_sync.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -aventen_s3_sync.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -aventen_s3_sync.menu.CPUFreq.240=240MHz (WiFi) -aventen_s3_sync.menu.CPUFreq.240.build.f_cpu=240000000L -aventen_s3_sync.menu.CPUFreq.160=160MHz (WiFi) -aventen_s3_sync.menu.CPUFreq.160.build.f_cpu=160000000L -aventen_s3_sync.menu.CPUFreq.80=80MHz (WiFi) -aventen_s3_sync.menu.CPUFreq.80.build.f_cpu=80000000L -aventen_s3_sync.menu.CPUFreq.40=40MHz -aventen_s3_sync.menu.CPUFreq.40.build.f_cpu=40000000L -aventen_s3_sync.menu.CPUFreq.20=20MHz -aventen_s3_sync.menu.CPUFreq.20.build.f_cpu=20000000L -aventen_s3_sync.menu.CPUFreq.10=10MHz -aventen_s3_sync.menu.CPUFreq.10.build.f_cpu=10000000L - -aventen_s3_sync.menu.UploadSpeed.921600=921600 -aventen_s3_sync.menu.UploadSpeed.921600.upload.speed=921600 -aventen_s3_sync.menu.UploadSpeed.115200=115200 -aventen_s3_sync.menu.UploadSpeed.115200.upload.speed=115200 -aventen_s3_sync.menu.UploadSpeed.256000.windows=256000 -aventen_s3_sync.menu.UploadSpeed.256000.upload.speed=256000 -aventen_s3_sync.menu.UploadSpeed.230400.windows.upload.speed=256000 -aventen_s3_sync.menu.UploadSpeed.230400=230400 -aventen_s3_sync.menu.UploadSpeed.230400.upload.speed=230400 -aventen_s3_sync.menu.UploadSpeed.460800.linux=460800 -aventen_s3_sync.menu.UploadSpeed.460800.macosx=460800 -aventen_s3_sync.menu.UploadSpeed.460800.upload.speed=460800 -aventen_s3_sync.menu.UploadSpeed.512000.windows=512000 -aventen_s3_sync.menu.UploadSpeed.512000.upload.speed=512000 - -aventen_s3_sync.menu.DebugLevel.none=None -aventen_s3_sync.menu.DebugLevel.none.build.code_debug=0 -aventen_s3_sync.menu.DebugLevel.error=Error -aventen_s3_sync.menu.DebugLevel.error.build.code_debug=1 -aventen_s3_sync.menu.DebugLevel.warn=Warn -aventen_s3_sync.menu.DebugLevel.warn.build.code_debug=2 -aventen_s3_sync.menu.DebugLevel.info=Info -aventen_s3_sync.menu.DebugLevel.info.build.code_debug=3 -aventen_s3_sync.menu.DebugLevel.debug=Debug -aventen_s3_sync.menu.DebugLevel.debug.build.code_debug=4 -aventen_s3_sync.menu.DebugLevel.verbose=Verbose -aventen_s3_sync.menu.DebugLevel.verbose.build.code_debug=5 - -aventen_s3_sync.menu.EraseFlash.none=Disabled -aventen_s3_sync.menu.EraseFlash.none.upload.erase_cmd= -aventen_s3_sync.menu.EraseFlash.all=Enabled -aventen_s3_sync.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_feathers2.name=UM FeatherS2 -um_feathers2.vid.0=0x239A -um_feathers2.pid.0=0x80AB - -um_feathers2.bootloader.tool=esptool_py -um_feathers2.bootloader.tool.default=esptool_py - -um_feathers2.upload.tool=esptool_py -um_feathers2.upload.tool.default=esptool_py -um_feathers2.upload.tool.network=esp_ota - -um_feathers2.upload.maximum_size=1310720 -um_feathers2.upload.maximum_data_size=327680 -um_feathers2.upload.flags= -um_feathers2.upload.extra_flags= -um_feathers2.upload.use_1200bps_touch=true -um_feathers2.upload.wait_for_upload_port=true - -um_feathers2.serial.disableDTR=false -um_feathers2.serial.disableRTS=false - -um_feathers2.build.tarch=xtensa -um_feathers2.build.bootloader_addr=0x1000 -um_feathers2.build.target=esp32s2 -um_feathers2.build.mcu=esp32s2 -um_feathers2.build.core=esp32 -um_feathers2.build.variant=um_feathers2 -um_feathers2.build.board=FEATHERS2 - -um_feathers2.build.cdc_on_boot=1 -um_feathers2.build.msc_on_boot=0 -um_feathers2.build.dfu_on_boot=0 -um_feathers2.build.f_cpu=240000000L -um_feathers2.build.flash_size=16MB -um_feathers2.build.flash_freq=80m -um_feathers2.build.flash_mode=dio -um_feathers2.build.boot=qio -um_feathers2.build.partitions=fatflash -um_feathers2.build.defines= - -um_feathers2.menu.CDCOnBoot.cdc=Enabled -um_feathers2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_feathers2.menu.CDCOnBoot.default=Disabled -um_feathers2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_feathers2.menu.MSCOnBoot.default=Disabled -um_feathers2.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_feathers2.menu.MSCOnBoot.msc=Enabled -um_feathers2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_feathers2.menu.DFUOnBoot.default=Disabled -um_feathers2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_feathers2.menu.DFUOnBoot.dfu=Enabled -um_feathers2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_feathers2.menu.PSRAM.enabled=Enabled -um_feathers2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_feathers2.menu.PSRAM.disabled=Disabled -um_feathers2.menu.PSRAM.disabled.build.defines= - -um_feathers2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -um_feathers2.menu.PartitionScheme.fatflash.build.partitions=ffat -um_feathers2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -um_feathers2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -um_feathers2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -um_feathers2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -um_feathers2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -um_feathers2.menu.PartitionScheme.default.build.partitions=default -um_feathers2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -um_feathers2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -um_feathers2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -um_feathers2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -um_feathers2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -um_feathers2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -um_feathers2.menu.PartitionScheme.minimal.build.partitions=minimal -um_feathers2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -um_feathers2.menu.PartitionScheme.no_ota.build.partitions=no_ota -um_feathers2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -um_feathers2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -um_feathers2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -um_feathers2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -um_feathers2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -um_feathers2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -um_feathers2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -um_feathers2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -um_feathers2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -um_feathers2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -um_feathers2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -um_feathers2.menu.PartitionScheme.huge_app.build.partitions=huge_app -um_feathers2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -um_feathers2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -um_feathers2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -um_feathers2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -um_feathers2.menu.CPUFreq.240=240MHz (WiFi) -um_feathers2.menu.CPUFreq.240.build.f_cpu=240000000L -um_feathers2.menu.CPUFreq.160=160MHz (WiFi) -um_feathers2.menu.CPUFreq.160.build.f_cpu=160000000L -um_feathers2.menu.CPUFreq.80=80MHz (WiFi) -um_feathers2.menu.CPUFreq.80.build.f_cpu=80000000L -um_feathers2.menu.CPUFreq.40=40MHz -um_feathers2.menu.CPUFreq.40.build.f_cpu=40000000L -um_feathers2.menu.CPUFreq.20=20MHz -um_feathers2.menu.CPUFreq.20.build.f_cpu=20000000L -um_feathers2.menu.CPUFreq.10=10MHz -um_feathers2.menu.CPUFreq.10.build.f_cpu=10000000L - -um_feathers2.menu.FlashSize.16M=16MB (128Mb) -um_feathers2.menu.FlashSize.16M.build.flash_size=16MB -um_feathers2.menu.FlashSize.4M=4MB (32Mb) -um_feathers2.menu.FlashSize.4M.build.flash_size=4MB -um_feathers2.menu.FlashSize.8M=8MB (64Mb) -um_feathers2.menu.FlashSize.8M.build.flash_size=8MB -um_feathers2.menu.FlashSize.8M.build.partitions=default_8MB -um_feathers2.menu.FlashSize.2M=2MB (16Mb) -um_feathers2.menu.FlashSize.2M.build.flash_size=2MB -um_feathers2.menu.FlashSize.2M.build.partitions=minimal - -um_feathers2.menu.UploadSpeed.921600=921600 -um_feathers2.menu.UploadSpeed.921600.upload.speed=921600 -um_feathers2.menu.UploadSpeed.115200=115200 -um_feathers2.menu.UploadSpeed.115200.upload.speed=115200 -um_feathers2.menu.UploadSpeed.256000.windows=256000 -um_feathers2.menu.UploadSpeed.256000.upload.speed=256000 -um_feathers2.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_feathers2.menu.UploadSpeed.230400=230400 -um_feathers2.menu.UploadSpeed.230400.upload.speed=230400 -um_feathers2.menu.UploadSpeed.460800.linux=460800 -um_feathers2.menu.UploadSpeed.460800.macosx=460800 -um_feathers2.menu.UploadSpeed.460800.upload.speed=460800 - -um_feathers2.menu.DebugLevel.none=None -um_feathers2.menu.DebugLevel.none.build.code_debug=0 -um_feathers2.menu.DebugLevel.error=Error -um_feathers2.menu.DebugLevel.error.build.code_debug=1 -um_feathers2.menu.DebugLevel.warn=Warn -um_feathers2.menu.DebugLevel.warn.build.code_debug=2 -um_feathers2.menu.DebugLevel.info=Info -um_feathers2.menu.DebugLevel.info.build.code_debug=3 -um_feathers2.menu.DebugLevel.debug=Debug -um_feathers2.menu.DebugLevel.debug.build.code_debug=4 -um_feathers2.menu.DebugLevel.verbose=Verbose -um_feathers2.menu.DebugLevel.verbose.build.code_debug=5 - -um_feathers2.menu.EraseFlash.none=Disabled -um_feathers2.menu.EraseFlash.none.upload.erase_cmd= -um_feathers2.menu.EraseFlash.all=Enabled -um_feathers2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_feathers2neo.name=UM FeatherS2 Neo -um_feathers2neo.vid.0=0x303a -um_feathers2neo.pid.0=0x80B4 - -um_feathers2neo.bootloader.tool=esptool_py -um_feathers2neo.bootloader.tool.default=esptool_py - -um_feathers2neo.upload.tool=esptool_py -um_feathers2neo.upload.tool.default=esptool_py -um_feathers2neo.upload.tool.network=esp_ota - -um_feathers2neo.upload.maximum_size=1310720 -um_feathers2neo.upload.maximum_data_size=327680 -um_feathers2neo.upload.flags= -um_feathers2neo.upload.extra_flags= -um_feathers2neo.upload.use_1200bps_touch=true -um_feathers2neo.upload.wait_for_upload_port=true - -um_feathers2neo.serial.disableDTR=false -um_feathers2neo.serial.disableRTS=false - -um_feathers2neo.build.tarch=xtensa -um_feathers2neo.build.bootloader_addr=0x1000 -um_feathers2neo.build.target=esp32s2 -um_feathers2neo.build.mcu=esp32s2 -um_feathers2neo.build.core=esp32 -um_feathers2neo.build.variant=um_feathers2neo -um_feathers2neo.build.board=FEATHERS2NEO - -um_feathers2neo.build.cdc_on_boot=1 -um_feathers2neo.build.msc_on_boot=0 -um_feathers2neo.build.dfu_on_boot=0 -um_feathers2neo.build.f_cpu=240000000L -um_feathers2neo.build.flash_size=4MB -um_feathers2neo.build.flash_freq=80m -um_feathers2neo.build.flash_mode=dio -um_feathers2neo.build.boot=qio -um_feathers2neo.build.partitions=default -um_feathers2neo.build.defines= - -um_feathers2neo.menu.CDCOnBoot.cdc=Enabled -um_feathers2neo.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_feathers2neo.menu.CDCOnBoot.default=Disabled -um_feathers2neo.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_feathers2neo.menu.MSCOnBoot.default=Disabled -um_feathers2neo.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_feathers2neo.menu.MSCOnBoot.msc=Enabled -um_feathers2neo.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_feathers2neo.menu.DFUOnBoot.default=Disabled -um_feathers2neo.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_feathers2neo.menu.DFUOnBoot.dfu=Enabled -um_feathers2neo.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_feathers2neo.menu.PSRAM.enabled=Enabled -um_feathers2neo.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_feathers2neo.menu.PSRAM.disabled=Disabled -um_feathers2neo.menu.PSRAM.disabled.build.defines= - -um_feathers2neo.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -um_feathers2neo.menu.PartitionScheme.default.build.partitions=default -um_feathers2neo.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -um_feathers2neo.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -um_feathers2neo.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -um_feathers2neo.menu.PartitionScheme.minimal.build.partitions=minimal -um_feathers2neo.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -um_feathers2neo.menu.PartitionScheme.no_ota.build.partitions=no_ota -um_feathers2neo.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -um_feathers2neo.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -um_feathers2neo.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -um_feathers2neo.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -um_feathers2neo.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -um_feathers2neo.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -um_feathers2neo.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -um_feathers2neo.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -um_feathers2neo.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -um_feathers2neo.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -um_feathers2neo.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -um_feathers2neo.menu.PartitionScheme.huge_app.build.partitions=huge_app -um_feathers2neo.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -um_feathers2neo.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -um_feathers2neo.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -um_feathers2neo.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -um_feathers2neo.menu.CPUFreq.240=240MHz (WiFi) -um_feathers2neo.menu.CPUFreq.240.build.f_cpu=240000000L -um_feathers2neo.menu.CPUFreq.160=160MHz (WiFi) -um_feathers2neo.menu.CPUFreq.160.build.f_cpu=160000000L -um_feathers2neo.menu.CPUFreq.80=80MHz (WiFi) -um_feathers2neo.menu.CPUFreq.80.build.f_cpu=80000000L -um_feathers2neo.menu.CPUFreq.40=40MHz -um_feathers2neo.menu.CPUFreq.40.build.f_cpu=40000000L -um_feathers2neo.menu.CPUFreq.20=20MHz -um_feathers2neo.menu.CPUFreq.20.build.f_cpu=20000000L -um_feathers2neo.menu.CPUFreq.10=10MHz -um_feathers2neo.menu.CPUFreq.10.build.f_cpu=10000000L - -um_feathers2neo.menu.FlashSize.4M=4MB (32Mb) -um_feathers2neo.menu.FlashSize.4M.build.flash_size=4MB -um_feathers2neo.menu.FlashSize.2M=2MB (16Mb) -um_feathers2neo.menu.FlashSize.2M.build.flash_size=2MB -um_feathers2neo.menu.FlashSize.2M.build.partitions=minimal - -um_feathers2neo.menu.UploadSpeed.921600=921600 -um_feathers2neo.menu.UploadSpeed.921600.upload.speed=921600 -um_feathers2neo.menu.UploadSpeed.115200=115200 -um_feathers2neo.menu.UploadSpeed.115200.upload.speed=115200 -um_feathers2neo.menu.UploadSpeed.256000.windows=256000 -um_feathers2neo.menu.UploadSpeed.256000.upload.speed=256000 -um_feathers2neo.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_feathers2neo.menu.UploadSpeed.230400=230400 -um_feathers2neo.menu.UploadSpeed.230400.upload.speed=230400 -um_feathers2neo.menu.UploadSpeed.460800.linux=460800 -um_feathers2neo.menu.UploadSpeed.460800.macosx=460800 -um_feathers2neo.menu.UploadSpeed.460800.upload.speed=460800 - -um_feathers2neo.menu.DebugLevel.none=None -um_feathers2neo.menu.DebugLevel.none.build.code_debug=0 -um_feathers2neo.menu.DebugLevel.error=Error -um_feathers2neo.menu.DebugLevel.error.build.code_debug=1 -um_feathers2neo.menu.DebugLevel.warn=Warn -um_feathers2neo.menu.DebugLevel.warn.build.code_debug=2 -um_feathers2neo.menu.DebugLevel.info=Info -um_feathers2neo.menu.DebugLevel.info.build.code_debug=3 -um_feathers2neo.menu.DebugLevel.debug=Debug -um_feathers2neo.menu.DebugLevel.debug.build.code_debug=4 -um_feathers2neo.menu.DebugLevel.verbose=Verbose -um_feathers2neo.menu.DebugLevel.verbose.build.code_debug=5 - -um_feathers2neo.menu.EraseFlash.none=Disabled -um_feathers2neo.menu.EraseFlash.none.upload.erase_cmd= -um_feathers2neo.menu.EraseFlash.all=Enabled -um_feathers2neo.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_feathers3.name=UM FeatherS3 -um_feathers3.vid.0=0x303a -um_feathers3.pid.0=0x80D6 - -um_feathers3.bootloader.tool=esptool_py -um_feathers3.bootloader.tool.default=esptool_py - -um_feathers3.upload.tool=esptool_py -um_feathers3.upload.tool.default=esptool_py -um_feathers3.upload.tool.network=esp_ota - -um_feathers3.upload.maximum_size=1310720 -um_feathers3.upload.maximum_data_size=327680 -um_feathers3.upload.flags= -um_feathers3.upload.extra_flags= -um_feathers3.upload.use_1200bps_touch=false -um_feathers3.upload.wait_for_upload_port=false - -um_feathers3.serial.disableDTR=false -um_feathers3.serial.disableRTS=false - -um_feathers3.build.tarch=xtensa -um_feathers3.build.bootloader_addr=0x0 -um_feathers3.build.target=esp32s3 -um_feathers3.build.mcu=esp32s3 -um_feathers3.build.core=esp32 -um_feathers3.build.variant=um_feathers3 -um_feathers3.build.board=FEATHERS3 - -um_feathers3.build.usb_mode=1 -um_feathers3.build.cdc_on_boot=0 -um_feathers3.build.msc_on_boot=0 -um_feathers3.build.dfu_on_boot=0 -um_feathers3.build.f_cpu=240000000L -um_feathers3.build.flash_size=16MB -um_feathers3.build.flash_freq=80m -um_feathers3.build.flash_mode=dio -um_feathers3.build.boot=qio -um_feathers3.build.partitions=default -um_feathers3.build.defines= -um_feathers3.build.loop_core= -um_feathers3.build.event_core= -um_feathers3.build.flash_type=qio -um_feathers3.build.psram_type=qspi -um_feathers3.build.memory_type=qio_qspi - -um_feathers3.menu.LoopCore.1=Core 1 -um_feathers3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -um_feathers3.menu.LoopCore.0=Core 0 -um_feathers3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -um_feathers3.menu.EventsCore.1=Core 1 -um_feathers3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -um_feathers3.menu.EventsCore.0=Core 0 -um_feathers3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -um_feathers3.menu.USBMode.default=USB-OTG (TinyUSB) -um_feathers3.menu.USBMode.default.build.usb_mode=0 -um_feathers3.menu.USBMode.hwcdc=Hardware CDC and JTAG -um_feathers3.menu.USBMode.hwcdc.build.usb_mode=1 - -um_feathers3.menu.CDCOnBoot.cdc=Enabled -um_feathers3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_feathers3.menu.CDCOnBoot.default=Disabled -um_feathers3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_feathers3.menu.MSCOnBoot.default=Disabled -um_feathers3.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_feathers3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -um_feathers3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_feathers3.menu.DFUOnBoot.default=Disabled -um_feathers3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_feathers3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -um_feathers3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_feathers3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -um_feathers3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -um_feathers3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -um_feathers3.menu.UploadMode.default=UART0 / Hardware CDC -um_feathers3.menu.UploadMode.default.upload.use_1200bps_touch=false -um_feathers3.menu.UploadMode.default.upload.wait_for_upload_port=false - -um_feathers3.menu.PSRAM.enabled=Enabled -um_feathers3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_feathers3.menu.PSRAM.disabled=Disabled -um_feathers3.menu.PSRAM.disabled.build.defines= - -um_feathers3.menu.PartitionScheme.default_16MB=Default (6.25MB APP/3.43MB SPIFFS) -um_feathers3.menu.PartitionScheme.default_16MB.build.partitions=default_16MB -um_feathers3.menu.PartitionScheme.default_16MB.upload.maximum_size=6553600 -um_feathers3.menu.PartitionScheme.tinyuf2=TinyUF2 Compatibility (2MB APP/12MB FFAT) -um_feathers3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader_tinyuf2 -um_feathers3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions_tinyuf2 -um_feathers3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -um_feathers3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -um_feathers3.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/6.93MB SPIFFS) -um_feathers3.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -um_feathers3.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 -um_feathers3.menu.PartitionScheme.app3M_fat9M_16MB=FFAT (3MB APP/9MB FATFS) -um_feathers3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -um_feathers3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -um_feathers3.menu.PartitionScheme.fatflash=Large FFAT (2MB APP/12.5MB FATFS) -um_feathers3.menu.PartitionScheme.fatflash.build.partitions=ffat -um_feathers3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 - -um_feathers3.menu.CPUFreq.240=240MHz (WiFi) -um_feathers3.menu.CPUFreq.240.build.f_cpu=240000000L -um_feathers3.menu.CPUFreq.160=160MHz (WiFi) -um_feathers3.menu.CPUFreq.160.build.f_cpu=160000000L -um_feathers3.menu.CPUFreq.80=80MHz (WiFi) -um_feathers3.menu.CPUFreq.80.build.f_cpu=80000000L -um_feathers3.menu.CPUFreq.40=40MHz -um_feathers3.menu.CPUFreq.40.build.f_cpu=40000000L -um_feathers3.menu.CPUFreq.20=20MHz -um_feathers3.menu.CPUFreq.20.build.f_cpu=20000000L -um_feathers3.menu.CPUFreq.10=10MHz -um_feathers3.menu.CPUFreq.10.build.f_cpu=10000000L - -um_feathers3.menu.FlashMode.qio=QIO -um_feathers3.menu.FlashMode.qio.build.flash_mode=dio -um_feathers3.menu.FlashMode.qio.build.boot=qio -um_feathers3.menu.FlashMode.dio=DIO -um_feathers3.menu.FlashMode.dio.build.flash_mode=dio -um_feathers3.menu.FlashMode.dio.build.boot=dio - -um_feathers3.menu.UploadSpeed.921600=921600 -um_feathers3.menu.UploadSpeed.921600.upload.speed=921600 -um_feathers3.menu.UploadSpeed.115200=115200 -um_feathers3.menu.UploadSpeed.115200.upload.speed=115200 -um_feathers3.menu.UploadSpeed.256000.windows=256000 -um_feathers3.menu.UploadSpeed.256000.upload.speed=256000 -um_feathers3.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_feathers3.menu.UploadSpeed.230400=230400 -um_feathers3.menu.UploadSpeed.230400.upload.speed=230400 -um_feathers3.menu.UploadSpeed.460800.linux=460800 -um_feathers3.menu.UploadSpeed.460800.macosx=460800 -um_feathers3.menu.UploadSpeed.460800.upload.speed=460800 -um_feathers3.menu.UploadSpeed.512000.windows=512000 -um_feathers3.menu.UploadSpeed.512000.upload.speed=512000 - -um_feathers3.menu.DebugLevel.none=None -um_feathers3.menu.DebugLevel.none.build.code_debug=0 -um_feathers3.menu.DebugLevel.error=Error -um_feathers3.menu.DebugLevel.error.build.code_debug=1 -um_feathers3.menu.DebugLevel.warn=Warn -um_feathers3.menu.DebugLevel.warn.build.code_debug=2 -um_feathers3.menu.DebugLevel.info=Info -um_feathers3.menu.DebugLevel.info.build.code_debug=3 -um_feathers3.menu.DebugLevel.debug=Debug -um_feathers3.menu.DebugLevel.debug.build.code_debug=4 -um_feathers3.menu.DebugLevel.verbose=Verbose -um_feathers3.menu.DebugLevel.verbose.build.code_debug=5 - -um_feathers3.menu.EraseFlash.none=Disabled -um_feathers3.menu.EraseFlash.none.upload.erase_cmd= -um_feathers3.menu.EraseFlash.all=Enabled -um_feathers3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_nanos3.name=UM NanoS3 -um_nanos3.vid.0=0x303a -um_nanos3.pid.0=0x8179 - -um_nanos3.bootloader.tool=esptool_py -um_nanos3.bootloader.tool.default=esptool_py - -um_nanos3.upload.tool=esptool_py -um_nanos3.upload.tool.default=esptool_py -um_nanos3.upload.tool.network=esp_ota - -um_nanos3.upload.maximum_size=1310720 -um_nanos3.upload.maximum_data_size=327680 -um_nanos3.upload.flags= -um_nanos3.upload.extra_flags= -um_nanos3.upload.use_1200bps_touch=false -um_nanos3.upload.wait_for_upload_port=false - -um_nanos3.serial.disableDTR=false -um_nanos3.serial.disableRTS=false - -um_nanos3.build.tarch=xtensa -um_nanos3.build.bootloader_addr=0x0 -um_nanos3.build.target=esp32s3 -um_nanos3.build.mcu=esp32s3 -um_nanos3.build.core=esp32 -um_nanos3.build.variant=um_nanos3 -um_nanos3.build.board=NANOS3 - -um_nanos3.build.usb_mode=1 -um_nanos3.build.cdc_on_boot=0 -um_nanos3.build.msc_on_boot=0 -um_nanos3.build.dfu_on_boot=0 -um_nanos3.build.f_cpu=240000000L -um_nanos3.build.flash_size=8MB -um_nanos3.build.flash_freq=80m -um_nanos3.build.flash_mode=dio -um_nanos3.build.boot=qio -um_nanos3.build.partitions=default -um_nanos3.build.defines= -um_nanos3.build.loop_core= -um_nanos3.build.event_core= -um_nanos3.build.flash_type=qio -um_nanos3.build.psram_type=qspi -um_nanos3.build.memory_type=qio_qspi - -um_nanos3.menu.LoopCore.1=Core 1 -um_nanos3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -um_nanos3.menu.LoopCore.0=Core 0 -um_nanos3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -um_nanos3.menu.EventsCore.1=Core 1 -um_nanos3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -um_nanos3.menu.EventsCore.0=Core 0 -um_nanos3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -um_nanos3.menu.USBMode.default=USB-OTG (TinyUSB) -um_nanos3.menu.USBMode.default.build.usb_mode=0 -um_nanos3.menu.USBMode.hwcdc=Hardware CDC and JTAG -um_nanos3.menu.USBMode.hwcdc.build.usb_mode=1 - -um_nanos3.menu.CDCOnBoot.cdc=Enabled -um_nanos3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_nanos3.menu.CDCOnBoot.default=Disabled -um_nanos3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_nanos3.menu.MSCOnBoot.default=Disabled -um_nanos3.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_nanos3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -um_nanos3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_nanos3.menu.DFUOnBoot.default=Disabled -um_nanos3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_nanos3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -um_nanos3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_nanos3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -um_nanos3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -um_nanos3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -um_nanos3.menu.UploadMode.default=UART0 / Hardware CDC -um_nanos3.menu.UploadMode.default.upload.use_1200bps_touch=false -um_nanos3.menu.UploadMode.default.upload.wait_for_upload_port=false - -um_nanos3.menu.PSRAM.enabled=Enabled -um_nanos3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_nanos3.menu.PSRAM.disabled=Disabled -um_nanos3.menu.PSRAM.disabled.build.defines= - -um_nanos3.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -um_nanos3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -um_nanos3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -um_nanos3.menu.PartitionScheme.tinyuf2=TinyUF2 Compatibility (2MB APP/3.7MB FFAT) -um_nanos3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader_tinyuf2 -um_nanos3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions_tinyuf2 -um_nanos3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -um_nanos3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 - -um_nanos3.menu.CPUFreq.240=240MHz (WiFi) -um_nanos3.menu.CPUFreq.240.build.f_cpu=240000000L -um_nanos3.menu.CPUFreq.160=160MHz (WiFi) -um_nanos3.menu.CPUFreq.160.build.f_cpu=160000000L -um_nanos3.menu.CPUFreq.80=80MHz (WiFi) -um_nanos3.menu.CPUFreq.80.build.f_cpu=80000000L -um_nanos3.menu.CPUFreq.40=40MHz -um_nanos3.menu.CPUFreq.40.build.f_cpu=40000000L -um_nanos3.menu.CPUFreq.20=20MHz -um_nanos3.menu.CPUFreq.20.build.f_cpu=20000000L -um_nanos3.menu.CPUFreq.10=10MHz -um_nanos3.menu.CPUFreq.10.build.f_cpu=10000000L - -um_nanos3.menu.FlashMode.qio=QIO -um_nanos3.menu.FlashMode.qio.build.flash_mode=dio -um_nanos3.menu.FlashMode.qio.build.boot=qio -um_nanos3.menu.FlashMode.dio=DIO -um_nanos3.menu.FlashMode.dio.build.flash_mode=dio -um_nanos3.menu.FlashMode.dio.build.boot=dio - -um_nanos3.menu.UploadSpeed.921600=921600 -um_nanos3.menu.UploadSpeed.921600.upload.speed=921600 -um_nanos3.menu.UploadSpeed.115200=115200 -um_nanos3.menu.UploadSpeed.115200.upload.speed=115200 -um_nanos3.menu.UploadSpeed.256000.windows=256000 -um_nanos3.menu.UploadSpeed.256000.upload.speed=256000 -um_nanos3.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_nanos3.menu.UploadSpeed.230400=230400 -um_nanos3.menu.UploadSpeed.230400.upload.speed=230400 -um_nanos3.menu.UploadSpeed.460800.linux=460800 -um_nanos3.menu.UploadSpeed.460800.macosx=460800 -um_nanos3.menu.UploadSpeed.460800.upload.speed=460800 -um_nanos3.menu.UploadSpeed.512000.windows=512000 -um_nanos3.menu.UploadSpeed.512000.upload.speed=512000 - -um_nanos3.menu.DebugLevel.none=None -um_nanos3.menu.DebugLevel.none.build.code_debug=0 -um_nanos3.menu.DebugLevel.error=Error -um_nanos3.menu.DebugLevel.error.build.code_debug=1 -um_nanos3.menu.DebugLevel.warn=Warn -um_nanos3.menu.DebugLevel.warn.build.code_debug=2 -um_nanos3.menu.DebugLevel.info=Info -um_nanos3.menu.DebugLevel.info.build.code_debug=3 -um_nanos3.menu.DebugLevel.debug=Debug -um_nanos3.menu.DebugLevel.debug.build.code_debug=4 -um_nanos3.menu.DebugLevel.verbose=Verbose -um_nanos3.menu.DebugLevel.verbose.build.code_debug=5 - -um_nanos3.menu.EraseFlash.none=Disabled -um_nanos3.menu.EraseFlash.none.upload.erase_cmd= -um_nanos3.menu.EraseFlash.all=Enabled -um_nanos3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_pros3.name=UM PROS3 -um_pros3.vid.0=0x303a -um_pros3.pid.0=0x80D3 - -um_pros3.bootloader.tool=esptool_py -um_pros3.bootloader.tool.default=esptool_py - -um_pros3.upload.tool=esptool_py -um_pros3.upload.tool.default=esptool_py -um_pros3.upload.tool.network=esp_ota - -um_pros3.upload.maximum_size=1310720 -um_pros3.upload.maximum_data_size=327680 -um_pros3.upload.flags= -um_pros3.upload.extra_flags= -um_pros3.upload.use_1200bps_touch=false -um_pros3.upload.wait_for_upload_port=false - -um_pros3.serial.disableDTR=false -um_pros3.serial.disableRTS=false - -um_pros3.build.tarch=xtensa -um_pros3.build.bootloader_addr=0x0 -um_pros3.build.target=esp32s3 -um_pros3.build.mcu=esp32s3 -um_pros3.build.core=esp32 -um_pros3.build.variant=um_pros3 -um_pros3.build.board=PROS3 - -um_pros3.build.usb_mode=1 -um_pros3.build.cdc_on_boot=0 -um_pros3.build.msc_on_boot=0 -um_pros3.build.dfu_on_boot=0 -um_pros3.build.f_cpu=240000000L -um_pros3.build.flash_size=16MB -um_pros3.build.flash_freq=80m -um_pros3.build.flash_mode=dio -um_pros3.build.boot=qio -um_pros3.build.partitions=default -um_pros3.build.defines= -um_pros3.build.loop_core= -um_pros3.build.event_core= -um_pros3.build.flash_type=qio -um_pros3.build.psram_type=qspi -um_pros3.build.memory_type=qio_qspi - -um_pros3.menu.LoopCore.1=Core 1 -um_pros3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -um_pros3.menu.LoopCore.0=Core 0 -um_pros3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -um_pros3.menu.EventsCore.1=Core 1 -um_pros3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -um_pros3.menu.EventsCore.0=Core 0 -um_pros3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -um_pros3.menu.USBMode.default=USB-OTG (TinyUSB) -um_pros3.menu.USBMode.default.build.usb_mode=0 -um_pros3.menu.USBMode.hwcdc=Hardware CDC and JTAG -um_pros3.menu.USBMode.hwcdc.build.usb_mode=1 - -um_pros3.menu.CDCOnBoot.cdc=Enabled -um_pros3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_pros3.menu.CDCOnBoot.default=Disabled -um_pros3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_pros3.menu.MSCOnBoot.default=Disabled -um_pros3.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_pros3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -um_pros3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_pros3.menu.DFUOnBoot.default=Disabled -um_pros3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_pros3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -um_pros3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_pros3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -um_pros3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -um_pros3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -um_pros3.menu.UploadMode.default=UART0 / Hardware CDC -um_pros3.menu.UploadMode.default.upload.use_1200bps_touch=false -um_pros3.menu.UploadMode.default.upload.wait_for_upload_port=false - -um_pros3.menu.PSRAM.enabled=Enabled -um_pros3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_pros3.menu.PSRAM.disabled=Disabled -um_pros3.menu.PSRAM.disabled.build.defines= - -um_pros3.menu.PartitionScheme.default_16MB=Default (6.25MB APP/3.43MB SPIFFS) -um_pros3.menu.PartitionScheme.default_16MB.build.partitions=default_16MB -um_pros3.menu.PartitionScheme.default_16MB.upload.maximum_size=6553600 -um_pros3.menu.PartitionScheme.tinyuf2=TinyUF2 Compatibility (2MB APP/12MB FFAT) -um_pros3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader_tinyuf2 -um_pros3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions_tinyuf2 -um_pros3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -um_pros3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -um_pros3.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/6.93MB SPIFFS) -um_pros3.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -um_pros3.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 -um_pros3.menu.PartitionScheme.app3M_fat9M_16MB=FFAT (3MB APP/9MB FATFS) -um_pros3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -um_pros3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -um_pros3.menu.PartitionScheme.fatflash=Large FFAT (2MB APP/12.5MB FATFS) -um_pros3.menu.PartitionScheme.fatflash.build.partitions=ffat -um_pros3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 - -um_pros3.menu.CPUFreq.240=240MHz (WiFi) -um_pros3.menu.CPUFreq.240.build.f_cpu=240000000L -um_pros3.menu.CPUFreq.160=160MHz (WiFi) -um_pros3.menu.CPUFreq.160.build.f_cpu=160000000L -um_pros3.menu.CPUFreq.80=80MHz (WiFi) -um_pros3.menu.CPUFreq.80.build.f_cpu=80000000L -um_pros3.menu.CPUFreq.40=40MHz -um_pros3.menu.CPUFreq.40.build.f_cpu=40000000L -um_pros3.menu.CPUFreq.20=20MHz -um_pros3.menu.CPUFreq.20.build.f_cpu=20000000L -um_pros3.menu.CPUFreq.10=10MHz -um_pros3.menu.CPUFreq.10.build.f_cpu=10000000L - -um_pros3.menu.FlashMode.qio=QIO -um_pros3.menu.FlashMode.qio.build.flash_mode=dio -um_pros3.menu.FlashMode.qio.build.boot=qio -um_pros3.menu.FlashMode.dio=DIO -um_pros3.menu.FlashMode.dio.build.flash_mode=dio -um_pros3.menu.FlashMode.dio.build.boot=dio - -um_pros3.menu.UploadSpeed.921600=921600 -um_pros3.menu.UploadSpeed.921600.upload.speed=921600 -um_pros3.menu.UploadSpeed.115200=115200 -um_pros3.menu.UploadSpeed.115200.upload.speed=115200 -um_pros3.menu.UploadSpeed.256000.windows=256000 -um_pros3.menu.UploadSpeed.256000.upload.speed=256000 -um_pros3.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_pros3.menu.UploadSpeed.230400=230400 -um_pros3.menu.UploadSpeed.230400.upload.speed=230400 -um_pros3.menu.UploadSpeed.460800.linux=460800 -um_pros3.menu.UploadSpeed.460800.macosx=460800 -um_pros3.menu.UploadSpeed.460800.upload.speed=460800 -um_pros3.menu.UploadSpeed.512000.windows=512000 -um_pros3.menu.UploadSpeed.512000.upload.speed=512000 - -um_pros3.menu.DebugLevel.none=None -um_pros3.menu.DebugLevel.none.build.code_debug=0 -um_pros3.menu.DebugLevel.error=Error -um_pros3.menu.DebugLevel.error.build.code_debug=1 -um_pros3.menu.DebugLevel.warn=Warn -um_pros3.menu.DebugLevel.warn.build.code_debug=2 -um_pros3.menu.DebugLevel.info=Info -um_pros3.menu.DebugLevel.info.build.code_debug=3 -um_pros3.menu.DebugLevel.debug=Debug -um_pros3.menu.DebugLevel.debug.build.code_debug=4 -um_pros3.menu.DebugLevel.verbose=Verbose -um_pros3.menu.DebugLevel.verbose.build.code_debug=5 - -um_pros3.menu.EraseFlash.none=Disabled -um_pros3.menu.EraseFlash.none.upload.erase_cmd= -um_pros3.menu.EraseFlash.all=Enabled -um_pros3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_rmp.name=UM RMP -um_rmp.vid.0=0x303a -um_rmp.pid.0=0x80F6 - -um_rmp.upload.tool=esptool_py -um_rmp.upload.tool.default=esptool_py -um_rmp.upload.tool.network=esp_ota - -um_rmp.upload.maximum_size=1310720 -um_rmp.upload.maximum_data_size=327680 -um_rmp.upload.flags= -um_rmp.upload.extra_flags= -um_rmp.upload.use_1200bps_touch=true -um_rmp.upload.wait_for_upload_port=true - -um_rmp.serial.disableDTR=false -um_rmp.serial.disableRTS=false - -um_rmp.build.tarch=xtensa -um_rmp.build.bootloader_addr=0x1000 -um_rmp.build.target=esp32s2 -um_rmp.build.mcu=esp32s2 -um_rmp.build.core=esp32 -um_rmp.build.variant=um_rmp -um_rmp.build.board=RMP - -um_rmp.build.cdc_on_boot=1 -um_rmp.build.msc_on_boot=0 -um_rmp.build.dfu_on_boot=0 -um_rmp.build.f_cpu=240000000L -um_rmp.build.flash_size=4MB -um_rmp.build.flash_freq=80m -um_rmp.build.flash_mode=dio -um_rmp.build.boot=qio -um_rmp.build.partitions=default -um_rmp.build.defines= - -um_rmp.menu.CDCOnBoot.cdc=Enabled -um_rmp.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_rmp.menu.CDCOnBoot.default=Disabled -um_rmp.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_rmp.menu.MSCOnBoot.default=Disabled -um_rmp.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_rmp.menu.MSCOnBoot.msc=Enabled -um_rmp.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_rmp.menu.DFUOnBoot.default=Disabled -um_rmp.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_rmp.menu.DFUOnBoot.dfu=Enabled -um_rmp.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_rmp.menu.PSRAM.enabled=Enabled -um_rmp.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_rmp.menu.PSRAM.disabled=Disabled -um_rmp.menu.PSRAM.disabled.build.defines= - -um_rmp.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -um_rmp.menu.PartitionScheme.default.build.partitions=default -um_rmp.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -um_rmp.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -um_rmp.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -um_rmp.menu.PartitionScheme.minimal.build.partitions=minimal -um_rmp.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -um_rmp.menu.PartitionScheme.no_ota.build.partitions=no_ota -um_rmp.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -um_rmp.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -um_rmp.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -um_rmp.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -um_rmp.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -um_rmp.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -um_rmp.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -um_rmp.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -um_rmp.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -um_rmp.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -um_rmp.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -um_rmp.menu.PartitionScheme.huge_app.build.partitions=huge_app -um_rmp.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -um_rmp.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -um_rmp.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -um_rmp.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -um_rmp.menu.CPUFreq.240=240MHz (WiFi) -um_rmp.menu.CPUFreq.240.build.f_cpu=240000000L -um_rmp.menu.CPUFreq.160=160MHz (WiFi) -um_rmp.menu.CPUFreq.160.build.f_cpu=160000000L -um_rmp.menu.CPUFreq.80=80MHz (WiFi) -um_rmp.menu.CPUFreq.80.build.f_cpu=80000000L -um_rmp.menu.CPUFreq.40=40MHz -um_rmp.menu.CPUFreq.40.build.f_cpu=40000000L -um_rmp.menu.CPUFreq.20=20MHz -um_rmp.menu.CPUFreq.20.build.f_cpu=20000000L -um_rmp.menu.CPUFreq.10=10MHz -um_rmp.menu.CPUFreq.10.build.f_cpu=10000000L - -um_rmp.menu.FlashSize.4M=4MB (32Mb) -um_rmp.menu.FlashSize.4M.build.flash_size=4MB -um_rmp.menu.FlashSize.2M=2MB (16Mb) -um_rmp.menu.FlashSize.2M.build.flash_size=2MB -um_rmp.menu.FlashSize.2M.build.partitions=minimal - -um_rmp.menu.UploadSpeed.921600=921600 -um_rmp.menu.UploadSpeed.921600.upload.speed=921600 -um_rmp.menu.UploadSpeed.115200=115200 -um_rmp.menu.UploadSpeed.115200.upload.speed=115200 -um_rmp.menu.UploadSpeed.256000.windows=256000 -um_rmp.menu.UploadSpeed.256000.upload.speed=256000 -um_rmp.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_rmp.menu.UploadSpeed.230400=230400 -um_rmp.menu.UploadSpeed.230400.upload.speed=230400 -um_rmp.menu.UploadSpeed.460800.linux=460800 -um_rmp.menu.UploadSpeed.460800.macosx=460800 -um_rmp.menu.UploadSpeed.460800.upload.speed=460800 - -um_rmp.menu.DebugLevel.none=None -um_rmp.menu.DebugLevel.none.build.code_debug=0 -um_rmp.menu.DebugLevel.error=Error -um_rmp.menu.DebugLevel.error.build.code_debug=1 -um_rmp.menu.DebugLevel.warn=Warn -um_rmp.menu.DebugLevel.warn.build.code_debug=2 -um_rmp.menu.DebugLevel.info=Info -um_rmp.menu.DebugLevel.info.build.code_debug=3 -um_rmp.menu.DebugLevel.debug=Debug -um_rmp.menu.DebugLevel.debug.build.code_debug=4 -um_rmp.menu.DebugLevel.verbose=Verbose -um_rmp.menu.DebugLevel.verbose.build.code_debug=5 - -um_rmp.menu.EraseFlash.none=Disabled -um_rmp.menu.EraseFlash.none.upload.erase_cmd= -um_rmp.menu.EraseFlash.all=Enabled -um_rmp.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_tinypico.name=UM TinyPICO - -um_tinypico.bootloader.tool=esptool_py -um_tinypico.bootloader.tool.default=esptool_py - -um_tinypico.upload.tool=esptool_py -um_tinypico.upload.tool.default=esptool_py -um_tinypico.upload.tool.network=esp_ota - -um_tinypico.upload.maximum_size=1310720 -um_tinypico.upload.maximum_data_size=327680 -um_tinypico.upload.flags= -um_tinypico.upload.extra_flags= - -um_tinypico.serial.disableDTR=true -um_tinypico.serial.disableRTS=true - -um_tinypico.build.tarch=xtensa -um_tinypico.build.bootloader_addr=0x1000 -um_tinypico.build.target=esp32 -um_tinypico.build.mcu=esp32 -um_tinypico.build.core=esp32 -um_tinypico.build.variant=um_tinypico -um_tinypico.build.board=TINYPICO - -um_tinypico.build.f_cpu=240000000L -um_tinypico.build.flash_size=4MB -um_tinypico.build.flash_freq=80m -um_tinypico.build.flash_mode=dio -um_tinypico.build.boot=dio -um_tinypico.build.partitions=default -um_tinypico.build.defines= - -um_tinypico.menu.PartitionScheme.default=Default -um_tinypico.menu.PartitionScheme.default.build.partitions=default -um_tinypico.menu.PartitionScheme.no_ota=No OTA (Large APP) -um_tinypico.menu.PartitionScheme.no_ota.build.partitions=no_ota -um_tinypico.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -um_tinypico.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -um_tinypico.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -um_tinypico.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -um_tinypico.menu.UploadSpeed.921600=921600 -um_tinypico.menu.UploadSpeed.921600.upload.speed=921600 -um_tinypico.menu.UploadSpeed.115200=115200 -um_tinypico.menu.UploadSpeed.115200.upload.speed=115200 -um_tinypico.menu.UploadSpeed.256000.windows=256000 -um_tinypico.menu.UploadSpeed.256000.upload.speed=256000 -um_tinypico.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_tinypico.menu.UploadSpeed.230400=230400 -um_tinypico.menu.UploadSpeed.230400.upload.speed=230400 -um_tinypico.menu.UploadSpeed.460800.linux=460800 -um_tinypico.menu.UploadSpeed.460800.macosx=460800 -um_tinypico.menu.UploadSpeed.460800.upload.speed=460800 -um_tinypico.menu.UploadSpeed.512000.windows=512000 -um_tinypico.menu.UploadSpeed.512000.upload.speed=512000 - -um_tinypico.menu.FlashMode.qio=QIO -um_tinypico.menu.FlashMode.qio.build.flash_mode=dio -um_tinypico.menu.FlashMode.qio.build.boot=qio -um_tinypico.menu.FlashMode.dio=DIO -um_tinypico.menu.FlashMode.dio.build.flash_mode=dio -um_tinypico.menu.FlashMode.dio.build.boot=dio - -um_tinypico.menu.FlashFreq.80=80MHz -um_tinypico.menu.FlashFreq.80.build.flash_freq=80m -um_tinypico.menu.FlashFreq.40=40MHz -um_tinypico.menu.FlashFreq.40.build.flash_freq=40m - -um_tinypico.menu.PSRAM.enabled=Enabled -um_tinypico.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -um_tinypico.menu.PSRAM.enabled.build.extra_libs= -um_tinypico.menu.PSRAM.disabled=Disabled -um_tinypico.menu.PSRAM.disabled.build.defines= -um_tinypico.menu.PSRAM.disabled.build.extra_libs= - -um_tinypico.menu.DebugLevel.none=None -um_tinypico.menu.DebugLevel.none.build.code_debug=0 -um_tinypico.menu.DebugLevel.error=Error -um_tinypico.menu.DebugLevel.error.build.code_debug=1 -um_tinypico.menu.DebugLevel.warn=Warn -um_tinypico.menu.DebugLevel.warn.build.code_debug=2 -um_tinypico.menu.DebugLevel.info=Info -um_tinypico.menu.DebugLevel.info.build.code_debug=3 -um_tinypico.menu.DebugLevel.debug=Debug -um_tinypico.menu.DebugLevel.debug.build.code_debug=4 -um_tinypico.menu.DebugLevel.verbose=Verbose -um_tinypico.menu.DebugLevel.verbose.build.code_debug=5 - -um_tinypico.menu.EraseFlash.none=Disabled -um_tinypico.menu.EraseFlash.none.upload.erase_cmd= -um_tinypico.menu.EraseFlash.all=Enabled -um_tinypico.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_tinyc6.name=UM TinyC6 -um_tinyc6.vid.0=0x303a -um_tinyc6.pid.0=0x1001 - -um_tinyc6.bootloader.tool=esptool_py -um_tinyc6.bootloader.tool.default=esptool_py - -um_tinyc6.upload.tool=esptool_py -um_tinyc6.upload.tool.default=esptool_py -um_tinyc6.upload.tool.network=esp_ota - -um_tinyc6.upload.maximum_size=1310720 -um_tinyc6.upload.maximum_data_size=327680 -um_tinyc6.upload.flags= -um_tinyc6.upload.extra_flags= -um_tinyc6.upload.use_1200bps_touch=false -um_tinyc6.upload.wait_for_upload_port=false - -um_tinyc6.serial.disableDTR=false -um_tinyc6.serial.disableRTS=false - -um_tinyc6.build.tarch=riscv32 -um_tinyc6.build.target=esp -um_tinyc6.build.mcu=esp32c6 -um_tinyc6.build.core=esp32 -um_tinyc6.build.variant=um_tinyc6 -um_tinyc6.build.board=TINYC6 -um_tinyc6.build.bootloader_addr=0x0 - -um_tinyc6.build.cdc_on_boot=1 -um_tinyc6.build.f_cpu=160000000L -um_tinyc6.build.flash_size=4MB -um_tinyc6.build.flash_freq=80m -um_tinyc6.build.flash_mode=qio -um_tinyc6.build.boot=qio -um_tinyc6.build.partitions=default -um_tinyc6.build.defines= - -## IDE 2.0 Seems to not update the value -um_tinyc6.menu.JTAGAdapter.default=Disabled -um_tinyc6.menu.JTAGAdapter.default.build.copy_jtag_files=0 -um_tinyc6.menu.JTAGAdapter.builtin=Integrated USB JTAG -um_tinyc6.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -um_tinyc6.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -um_tinyc6.menu.JTAGAdapter.external=FTDI Adapter -um_tinyc6.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -um_tinyc6.menu.JTAGAdapter.external.build.copy_jtag_files=1 -um_tinyc6.menu.JTAGAdapter.bridge=ESP USB Bridge -um_tinyc6.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -um_tinyc6.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -um_tinyc6.menu.CDCOnBoot.cdc=Enabled -um_tinyc6.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_tinyc6.menu.CDCOnBoot.default=Disabled -um_tinyc6.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_tinyc6.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -um_tinyc6.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -um_tinyc6.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -um_tinyc6.menu.PartitionScheme.rainmaker=RainMaker -um_tinyc6.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -um_tinyc6.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -um_tinyc6.menu.PartitionScheme.custom=Custom -um_tinyc6.menu.PartitionScheme.custom.build.partitions= -um_tinyc6.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -um_tinyc6.menu.CPUFreq.160=160MHz (WiFi) -um_tinyc6.menu.CPUFreq.160.build.f_cpu=160000000L -um_tinyc6.menu.CPUFreq.80=80MHz (WiFi) -um_tinyc6.menu.CPUFreq.80.build.f_cpu=80000000L -um_tinyc6.menu.CPUFreq.40=40MHz -um_tinyc6.menu.CPUFreq.40.build.f_cpu=40000000L -um_tinyc6.menu.CPUFreq.20=20MHz -um_tinyc6.menu.CPUFreq.20.build.f_cpu=20000000L -um_tinyc6.menu.CPUFreq.10=10MHz -um_tinyc6.menu.CPUFreq.10.build.f_cpu=10000000L - -um_tinyc6.menu.FlashMode.qio=QIO -um_tinyc6.menu.FlashMode.qio.build.flash_mode=dio -um_tinyc6.menu.FlashMode.qio.build.boot=qio -um_tinyc6.menu.FlashMode.dio=DIO -um_tinyc6.menu.FlashMode.dio.build.flash_mode=dio -um_tinyc6.menu.FlashMode.dio.build.boot=dio - -um_tinyc6.menu.FlashFreq.80=80MHz -um_tinyc6.menu.FlashFreq.80.build.flash_freq=80m -um_tinyc6.menu.FlashFreq.40=40MHz -um_tinyc6.menu.FlashFreq.40.build.flash_freq=40m - -um_tinyc6.menu.FlashSize.8M=8MB (64Mb) -um_tinyc6.menu.FlashSize.8M.build.flash_size=8MB -um_tinyc6.menu.FlashSize.8M.build.partitions=default_8MB - -um_tinyc6.menu.UploadSpeed.921600=921600 -um_tinyc6.menu.UploadSpeed.921600.upload.speed=921600 -um_tinyc6.menu.UploadSpeed.115200=115200 -um_tinyc6.menu.UploadSpeed.115200.upload.speed=115200 -um_tinyc6.menu.UploadSpeed.256000.windows=256000 -um_tinyc6.menu.UploadSpeed.256000.upload.speed=256000 -um_tinyc6.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_tinyc6.menu.UploadSpeed.230400=230400 -um_tinyc6.menu.UploadSpeed.230400.upload.speed=230400 -um_tinyc6.menu.UploadSpeed.460800.linux=460800 -um_tinyc6.menu.UploadSpeed.460800.macosx=460800 -um_tinyc6.menu.UploadSpeed.460800.upload.speed=460800 -um_tinyc6.menu.UploadSpeed.512000.windows=512000 -um_tinyc6.menu.UploadSpeed.512000.upload.speed=512000 - -um_tinyc6.menu.DebugLevel.none=None -um_tinyc6.menu.DebugLevel.none.build.code_debug=0 -um_tinyc6.menu.DebugLevel.error=Error -um_tinyc6.menu.DebugLevel.error.build.code_debug=1 -um_tinyc6.menu.DebugLevel.warn=Warn -um_tinyc6.menu.DebugLevel.warn.build.code_debug=2 -um_tinyc6.menu.DebugLevel.info=Info -um_tinyc6.menu.DebugLevel.info.build.code_debug=3 -um_tinyc6.menu.DebugLevel.debug=Debug -um_tinyc6.menu.DebugLevel.debug.build.code_debug=4 -um_tinyc6.menu.DebugLevel.verbose=Verbose -um_tinyc6.menu.DebugLevel.verbose.build.code_debug=5 - -um_tinyc6.menu.EraseFlash.none=Disabled -um_tinyc6.menu.EraseFlash.none.upload.erase_cmd= -um_tinyc6.menu.EraseFlash.all=Enabled -um_tinyc6.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_tinys2.name=UM TinyS2 -um_tinys2.vid.0=0x303a -um_tinys2.pid.0=0x8001 - -um_tinys2.bootloader.tool=esptool_py -um_tinys2.bootloader.tool.default=esptool_py - -um_tinys2.upload.tool=esptool_py -um_tinys2.upload.tool.default=esptool_py -um_tinys2.upload.tool.network=esp_ota - -um_tinys2.upload.maximum_size=1310720 -um_tinys2.upload.maximum_data_size=327680 -um_tinys2.upload.flags= -um_tinys2.upload.extra_flags= -um_tinys2.upload.use_1200bps_touch=true -um_tinys2.upload.wait_for_upload_port=true - -um_tinys2.serial.disableDTR=false -um_tinys2.serial.disableRTS=false - -um_tinys2.build.tarch=xtensa -um_tinys2.build.bootloader_addr=0x1000 -um_tinys2.build.target=esp32s2 -um_tinys2.build.mcu=esp32s2 -um_tinys2.build.core=esp32 -um_tinys2.build.variant=um_tinys2 -um_tinys2.build.board=TINYS2 - -um_tinys2.build.cdc_on_boot=1 -um_tinys2.build.msc_on_boot=0 -um_tinys2.build.dfu_on_boot=0 -um_tinys2.build.f_cpu=240000000L -um_tinys2.build.flash_size=4MB -um_tinys2.build.flash_freq=80m -um_tinys2.build.flash_mode=dio -um_tinys2.build.boot=qio -um_tinys2.build.partitions=default -um_tinys2.build.defines= - -um_tinys2.menu.CDCOnBoot.cdc=Enabled -um_tinys2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_tinys2.menu.CDCOnBoot.default=Disabled -um_tinys2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_tinys2.menu.MSCOnBoot.default=Disabled -um_tinys2.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_tinys2.menu.MSCOnBoot.msc=Enabled -um_tinys2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_tinys2.menu.DFUOnBoot.default=Disabled -um_tinys2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_tinys2.menu.DFUOnBoot.dfu=Enabled -um_tinys2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_tinys2.menu.PSRAM.enabled=Enabled -um_tinys2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_tinys2.menu.PSRAM.disabled=Disabled -um_tinys2.menu.PSRAM.disabled.build.defines= - -um_tinys2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -um_tinys2.menu.PartitionScheme.default.build.partitions=default -um_tinys2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -um_tinys2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -um_tinys2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -um_tinys2.menu.PartitionScheme.minimal.build.partitions=minimal -um_tinys2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -um_tinys2.menu.PartitionScheme.no_ota.build.partitions=no_ota -um_tinys2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -um_tinys2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -um_tinys2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -um_tinys2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -um_tinys2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -um_tinys2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -um_tinys2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -um_tinys2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -um_tinys2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -um_tinys2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -um_tinys2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -um_tinys2.menu.PartitionScheme.huge_app.build.partitions=huge_app -um_tinys2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -um_tinys2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -um_tinys2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -um_tinys2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -um_tinys2.menu.CPUFreq.240=240MHz (WiFi) -um_tinys2.menu.CPUFreq.240.build.f_cpu=240000000L -um_tinys2.menu.CPUFreq.160=160MHz (WiFi) -um_tinys2.menu.CPUFreq.160.build.f_cpu=160000000L -um_tinys2.menu.CPUFreq.80=80MHz (WiFi) -um_tinys2.menu.CPUFreq.80.build.f_cpu=80000000L -um_tinys2.menu.CPUFreq.40=40MHz -um_tinys2.menu.CPUFreq.40.build.f_cpu=40000000L -um_tinys2.menu.CPUFreq.20=20MHz -um_tinys2.menu.CPUFreq.20.build.f_cpu=20000000L -um_tinys2.menu.CPUFreq.10=10MHz -um_tinys2.menu.CPUFreq.10.build.f_cpu=10000000L - -um_tinys2.menu.FlashSize.4M=4MB (32Mb) -um_tinys2.menu.FlashSize.4M.build.flash_size=4MB -um_tinys2.menu.FlashSize.2M=2MB (16Mb) -um_tinys2.menu.FlashSize.2M.build.flash_size=2MB -um_tinys2.menu.FlashSize.2M.build.partitions=minimal - -um_tinys2.menu.UploadSpeed.921600=921600 -um_tinys2.menu.UploadSpeed.921600.upload.speed=921600 -um_tinys2.menu.UploadSpeed.115200=115200 -um_tinys2.menu.UploadSpeed.115200.upload.speed=115200 -um_tinys2.menu.UploadSpeed.256000.windows=256000 -um_tinys2.menu.UploadSpeed.256000.upload.speed=256000 -um_tinys2.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_tinys2.menu.UploadSpeed.230400=230400 -um_tinys2.menu.UploadSpeed.230400.upload.speed=230400 -um_tinys2.menu.UploadSpeed.460800.linux=460800 -um_tinys2.menu.UploadSpeed.460800.macosx=460800 -um_tinys2.menu.UploadSpeed.460800.upload.speed=460800 - -um_tinys2.menu.DebugLevel.none=None -um_tinys2.menu.DebugLevel.none.build.code_debug=0 -um_tinys2.menu.DebugLevel.error=Error -um_tinys2.menu.DebugLevel.error.build.code_debug=1 -um_tinys2.menu.DebugLevel.warn=Warn -um_tinys2.menu.DebugLevel.warn.build.code_debug=2 -um_tinys2.menu.DebugLevel.info=Info -um_tinys2.menu.DebugLevel.info.build.code_debug=3 -um_tinys2.menu.DebugLevel.debug=Debug -um_tinys2.menu.DebugLevel.debug.build.code_debug=4 -um_tinys2.menu.DebugLevel.verbose=Verbose -um_tinys2.menu.DebugLevel.verbose.build.code_debug=5 - -um_tinys2.menu.EraseFlash.none=Disabled -um_tinys2.menu.EraseFlash.none.upload.erase_cmd= -um_tinys2.menu.EraseFlash.all=Enabled -um_tinys2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -um_tinys3.name=UM TinyS3 -um_tinys3.vid.0=0x303a -um_tinys3.pid.0=0x80D0 - -um_tinys3.bootloader.tool=esptool_py -um_tinys3.bootloader.tool.default=esptool_py - -um_tinys3.upload.tool=esptool_py -um_tinys3.upload.tool.default=esptool_py -um_tinys3.upload.tool.network=esp_ota - -um_tinys3.upload.maximum_size=1310720 -um_tinys3.upload.maximum_data_size=327680 -um_tinys3.upload.flags= -um_tinys3.upload.extra_flags= -um_tinys3.upload.use_1200bps_touch=false -um_tinys3.upload.wait_for_upload_port=false - -um_tinys3.serial.disableDTR=false -um_tinys3.serial.disableRTS=false - -um_tinys3.build.tarch=xtensa -um_tinys3.build.bootloader_addr=0x0 -um_tinys3.build.target=esp32s3 -um_tinys3.build.mcu=esp32s3 -um_tinys3.build.core=esp32 -um_tinys3.build.variant=um_tinys3 -um_tinys3.build.board=TINYS3 - -um_tinys3.build.usb_mode=1 -um_tinys3.build.cdc_on_boot=0 -um_tinys3.build.msc_on_boot=0 -um_tinys3.build.dfu_on_boot=0 -um_tinys3.build.f_cpu=240000000L -um_tinys3.build.flash_size=8MB -um_tinys3.build.flash_freq=80m -um_tinys3.build.flash_mode=dio -um_tinys3.build.boot=qio -um_tinys3.build.partitions=default -um_tinys3.build.defines= -um_tinys3.build.loop_core= -um_tinys3.build.event_core= -um_tinys3.build.flash_type=qio -um_tinys3.build.psram_type=qspi -um_tinys3.build.memory_type=qio_qspi - -um_tinys3.menu.LoopCore.1=Core 1 -um_tinys3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -um_tinys3.menu.LoopCore.0=Core 0 -um_tinys3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -um_tinys3.menu.EventsCore.1=Core 1 -um_tinys3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -um_tinys3.menu.EventsCore.0=Core 0 -um_tinys3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -um_tinys3.menu.USBMode.default=USB-OTG (TinyUSB) -um_tinys3.menu.USBMode.default.build.usb_mode=0 -um_tinys3.menu.USBMode.hwcdc=Hardware CDC and JTAG -um_tinys3.menu.USBMode.hwcdc.build.usb_mode=1 - -um_tinys3.menu.CDCOnBoot.cdc=Enabled -um_tinys3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -um_tinys3.menu.CDCOnBoot.default=Disabled -um_tinys3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -um_tinys3.menu.MSCOnBoot.default=Disabled -um_tinys3.menu.MSCOnBoot.default.build.msc_on_boot=0 -um_tinys3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -um_tinys3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -um_tinys3.menu.DFUOnBoot.default=Disabled -um_tinys3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -um_tinys3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -um_tinys3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -um_tinys3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -um_tinys3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -um_tinys3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -um_tinys3.menu.UploadMode.default=UART0 / Hardware CDC -um_tinys3.menu.UploadMode.default.upload.use_1200bps_touch=false -um_tinys3.menu.UploadMode.default.upload.wait_for_upload_port=false - -um_tinys3.menu.PSRAM.enabled=Enabled -um_tinys3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -um_tinys3.menu.PSRAM.disabled=Disabled -um_tinys3.menu.PSRAM.disabled.build.defines= - -um_tinys3.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -um_tinys3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -um_tinys3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -um_tinys3.menu.PartitionScheme.tinyuf2=TinyUF2 Compatibility (2MB APP/3.7MB FFAT) -um_tinys3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader_tinyuf2 -um_tinys3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions_tinyuf2 -um_tinys3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -um_tinys3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 - -um_tinys3.menu.CPUFreq.240=240MHz (WiFi) -um_tinys3.menu.CPUFreq.240.build.f_cpu=240000000L -um_tinys3.menu.CPUFreq.160=160MHz (WiFi) -um_tinys3.menu.CPUFreq.160.build.f_cpu=160000000L -um_tinys3.menu.CPUFreq.80=80MHz (WiFi) -um_tinys3.menu.CPUFreq.80.build.f_cpu=80000000L -um_tinys3.menu.CPUFreq.40=40MHz -um_tinys3.menu.CPUFreq.40.build.f_cpu=40000000L -um_tinys3.menu.CPUFreq.20=20MHz -um_tinys3.menu.CPUFreq.20.build.f_cpu=20000000L -um_tinys3.menu.CPUFreq.10=10MHz -um_tinys3.menu.CPUFreq.10.build.f_cpu=10000000L - -um_tinys3.menu.FlashMode.qio=QIO -um_tinys3.menu.FlashMode.qio.build.flash_mode=dio -um_tinys3.menu.FlashMode.qio.build.boot=qio -um_tinys3.menu.FlashMode.dio=DIO -um_tinys3.menu.FlashMode.dio.build.flash_mode=dio -um_tinys3.menu.FlashMode.dio.build.boot=dio - -um_tinys3.menu.UploadSpeed.921600=921600 -um_tinys3.menu.UploadSpeed.921600.upload.speed=921600 -um_tinys3.menu.UploadSpeed.115200=115200 -um_tinys3.menu.UploadSpeed.115200.upload.speed=115200 -um_tinys3.menu.UploadSpeed.256000.windows=256000 -um_tinys3.menu.UploadSpeed.256000.upload.speed=256000 -um_tinys3.menu.UploadSpeed.230400.windows.upload.speed=256000 -um_tinys3.menu.UploadSpeed.230400=230400 -um_tinys3.menu.UploadSpeed.230400.upload.speed=230400 -um_tinys3.menu.UploadSpeed.460800.linux=460800 -um_tinys3.menu.UploadSpeed.460800.macosx=460800 -um_tinys3.menu.UploadSpeed.460800.upload.speed=460800 -um_tinys3.menu.UploadSpeed.512000.windows=512000 -um_tinys3.menu.UploadSpeed.512000.upload.speed=512000 - -um_tinys3.menu.DebugLevel.none=None -um_tinys3.menu.DebugLevel.none.build.code_debug=0 -um_tinys3.menu.DebugLevel.error=Error -um_tinys3.menu.DebugLevel.error.build.code_debug=1 -um_tinys3.menu.DebugLevel.warn=Warn -um_tinys3.menu.DebugLevel.warn.build.code_debug=2 -um_tinys3.menu.DebugLevel.info=Info -um_tinys3.menu.DebugLevel.info.build.code_debug=3 -um_tinys3.menu.DebugLevel.debug=Debug -um_tinys3.menu.DebugLevel.debug.build.code_debug=4 -um_tinys3.menu.DebugLevel.verbose=Verbose -um_tinys3.menu.DebugLevel.verbose.build.code_debug=5 - -um_tinys3.menu.EraseFlash.none=Disabled -um_tinys3.menu.EraseFlash.none.upload.erase_cmd= -um_tinys3.menu.EraseFlash.all=Enabled -um_tinys3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -S_ODI_Ultra.name=S.ODI Ultra v1 - -S_ODI_Ultra.bootloader.tool=esptool_py -S_ODI_Ultra.bootloader.tool.default=esptool_py - -S_ODI_Ultra.upload.tool=esptool_py -S_ODI_Ultra.upload.tool.default=esptool_py -S_ODI_Ultra.upload.tool.network=esp_ota - -S_ODI_Ultra.upload.maximum_size=1310720 -S_ODI_Ultra.upload.maximum_data_size=327680 -S_ODI_Ultra.upload.wait_for_upload_port=true -S_ODI_Ultra.upload.flags= -S_ODI_Ultra.upload.extra_flags= - -S_ODI_Ultra.serial.disableDTR=true -S_ODI_Ultra.serial.disableRTS=true - -S_ODI_Ultra.build.tarch=xtensa -S_ODI_Ultra.build.bootloader_addr=0x1000 -S_ODI_Ultra.build.target=esp32 -S_ODI_Ultra.build.mcu=esp32 -S_ODI_Ultra.build.core=esp32 -S_ODI_Ultra.build.variant=S_ODI_Ultra_v1 -S_ODI_Ultra.build.board=ESP32_DEV - -S_ODI_Ultra.build.f_cpu=240000000L -S_ODI_Ultra.build.flash_mode=dio -S_ODI_Ultra.build.flash_size=4MB -S_ODI_Ultra.build.boot=dio -S_ODI_Ultra.build.partitions=default -S_ODI_Ultra.build.defines= - -S_ODI_Ultra.menu.FlashFreq.80=80MHz -S_ODI_Ultra.menu.FlashFreq.80.build.flash_freq=80m -S_ODI_Ultra.menu.FlashFreq.40=40MHz -S_ODI_Ultra.menu.FlashFreq.40.build.flash_freq=40m - -S_ODI_Ultra.menu.UploadSpeed.921600=921600 -S_ODI_Ultra.menu.UploadSpeed.921600.upload.speed=921600 -S_ODI_Ultra.menu.UploadSpeed.115200=115200 -S_ODI_Ultra.menu.UploadSpeed.115200.upload.speed=115200 -S_ODI_Ultra.menu.UploadSpeed.256000.windows=256000 -S_ODI_Ultra.menu.UploadSpeed.256000.upload.speed=256000 -S_ODI_Ultra.menu.UploadSpeed.230400.windows.upload.speed=256000 -S_ODI_Ultra.menu.UploadSpeed.230400=230400 -S_ODI_Ultra.menu.UploadSpeed.230400.upload.speed=230400 -S_ODI_Ultra.menu.UploadSpeed.460800.linux=460800 -S_ODI_Ultra.menu.UploadSpeed.460800.macosx=460800 -S_ODI_Ultra.menu.UploadSpeed.460800.upload.speed=460800 -S_ODI_Ultra.menu.UploadSpeed.512000.windows=512000 -S_ODI_Ultra.menu.UploadSpeed.512000.upload.speed=512000 - -S_ODI_Ultra.menu.DebugLevel.none=None -S_ODI_Ultra.menu.DebugLevel.none.build.code_debug=0 -S_ODI_Ultra.menu.DebugLevel.error=Error -S_ODI_Ultra.menu.DebugLevel.error.build.code_debug=1 -S_ODI_Ultra.menu.DebugLevel.warn=Warn -S_ODI_Ultra.menu.DebugLevel.warn.build.code_debug=2 -S_ODI_Ultra.menu.DebugLevel.info=Info -S_ODI_Ultra.menu.DebugLevel.info.build.code_debug=3 -S_ODI_Ultra.menu.DebugLevel.debug=Debug -S_ODI_Ultra.menu.DebugLevel.debug.build.code_debug=4 - -S_ODI_Ultra.menu.EraseFlash.none=Disabled -S_ODI_Ultra.menu.EraseFlash.none.upload.erase_cmd= -S_ODI_Ultra.menu.EraseFlash.all=Enabled -S_ODI_Ultra.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lilygo_t_display.name=LilyGo T-Display -lilygo_t_display.vid.0=0x1a86 -lilygo_t_display.pid.0=0x55d4 - -lilygo_t_display.upload.tool=esptool_py -lilygo_t_display.upload.tool.default=esptool_py -lilygo_t_display.upload.tool.network=esp_ota -lilygo_t_display.upload.maximum_size=1310720 -lilygo_t_display.upload.maximum_data_size=327680 -lilygo_t_display.upload.wait_for_upload_port=true -lilygo_t_display.upload.speed=460800 -lilygo_t_display.upload.flags= -lilygo_t_display.upload.extra_flags= - -lilygo_t_display.bootloader.tool=esptool_py -lilygo_t_display.bootloader.tool.default=esptool_py - -lilygo_t_display.serial.disableDTR=true -lilygo_t_display.serial.disableRTS=true - -lilygo_t_display.build.tarch=xtensa -lilygo_t_display.build.bootloader_addr=0x1000 -lilygo_t_display.build.mcu=esp32 -lilygo_t_display.build.core=esp32 -lilygo_t_display.build.target=esp32 -lilygo_t_display.build.variant=lilygo_t_display -lilygo_t_display.build.board=LILYGO_T_DISPLAY - -lilygo_t_display.build.f_cpu=240000000L -lilygo_t_display.build.flash_size=4MB -lilygo_t_display.build.flash_freq=80m -lilygo_t_display.build.flash_mode=dio -lilygo_t_display.build.boot=dio -lilygo_t_display.build.partitions=default - -lilygo_t_display.menu.PSRAM.disabled=Disabled -lilygo_t_display.menu.PSRAM.disabled.build.defines= -lilygo_t_display.menu.PSRAM.enabled=Enabled -lilygo_t_display.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -lilygo_t_display.menu.PSRAM.enabled.build.extra_libs= - -lilygo_t_display.menu.LoopCore.1=Core 1 -lilygo_t_display.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lilygo_t_display.menu.LoopCore.0=Core 0 -lilygo_t_display.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lilygo_t_display.menu.EventsCore.1=Core 1 -lilygo_t_display.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lilygo_t_display.menu.EventsCore.0=Core 0 -lilygo_t_display.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lilygo_t_display.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lilygo_t_display.menu.PartitionScheme.default.build.partitions=default -lilygo_t_display.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lilygo_t_display.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lilygo_t_display.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -lilygo_t_display.menu.PartitionScheme.minimal.build.partitions=minimal -lilygo_t_display.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lilygo_t_display.menu.PartitionScheme.no_ota.build.partitions=no_ota -lilygo_t_display.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lilygo_t_display.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lilygo_t_display.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lilygo_t_display.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lilygo_t_display.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lilygo_t_display.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lilygo_t_display.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lilygo_t_display.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lilygo_t_display.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lilygo_t_display.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lilygo_t_display.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lilygo_t_display.menu.PartitionScheme.huge_app.build.partitions=huge_app -lilygo_t_display.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -lilygo_t_display.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -lilygo_t_display.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lilygo_t_display.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -lilygo_t_display.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -lilygo_t_display.menu.PartitionScheme.fatflash.build.partitions=ffat -lilygo_t_display.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -lilygo_t_display.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -lilygo_t_display.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lilygo_t_display.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -lilygo_t_display.menu.CPUFreq.240=240MHz (WiFi/BT) -lilygo_t_display.menu.CPUFreq.240.build.f_cpu=240000000L -lilygo_t_display.menu.CPUFreq.160=160MHz (WiFi/BT) -lilygo_t_display.menu.CPUFreq.160.build.f_cpu=160000000L -lilygo_t_display.menu.CPUFreq.80=80MHz (WiFi/BT) -lilygo_t_display.menu.CPUFreq.80.build.f_cpu=80000000L -lilygo_t_display.menu.CPUFreq.40=40MHz (40MHz XTAL) -lilygo_t_display.menu.CPUFreq.40.build.f_cpu=40000000L -lilygo_t_display.menu.CPUFreq.26=26MHz (26MHz XTAL) -lilygo_t_display.menu.CPUFreq.26.build.f_cpu=26000000L -lilygo_t_display.menu.CPUFreq.20=20MHz (40MHz XTAL) -lilygo_t_display.menu.CPUFreq.20.build.f_cpu=20000000L -lilygo_t_display.menu.CPUFreq.13=13MHz (26MHz XTAL) -lilygo_t_display.menu.CPUFreq.13.build.f_cpu=13000000L -lilygo_t_display.menu.CPUFreq.10=10MHz (40MHz XTAL) -lilygo_t_display.menu.CPUFreq.10.build.f_cpu=10000000L - -lilygo_t_display.menu.FlashMode.qio=QIO -lilygo_t_display.menu.FlashMode.qio.build.flash_mode=dio -lilygo_t_display.menu.FlashMode.qio.build.boot=qio -lilygo_t_display.menu.FlashMode.dio=DIO -lilygo_t_display.menu.FlashMode.dio.build.flash_mode=dio -lilygo_t_display.menu.FlashMode.dio.build.boot=dio - -lilygo_t_display.menu.FlashFreq.80=80MHz -lilygo_t_display.menu.FlashFreq.80.build.flash_freq=80m -lilygo_t_display.menu.FlashFreq.40=40MHz -lilygo_t_display.menu.FlashFreq.40.build.flash_freq=40m - -lilygo_t_display.menu.FlashSize.4M=4MB (32Mb) -lilygo_t_display.menu.FlashSize.4M.build.flash_size=4MB -lilygo_t_display.menu.FlashSize.16M=16MB (128Mb) -lilygo_t_display.menu.FlashSize.16M.build.flash_size=16MB - -lilygo_t_display.menu.UploadSpeed.921600=921600 -lilygo_t_display.menu.UploadSpeed.921600.upload.speed=921600 -lilygo_t_display.menu.UploadSpeed.115200=115200 -lilygo_t_display.menu.UploadSpeed.115200.upload.speed=115200 -lilygo_t_display.menu.UploadSpeed.256000.windows=256000 -lilygo_t_display.menu.UploadSpeed.256000.upload.speed=256000 -lilygo_t_display.menu.UploadSpeed.230400.windows.upload.speed=256000 -lilygo_t_display.menu.UploadSpeed.230400=230400 -lilygo_t_display.menu.UploadSpeed.230400.upload.speed=230400 -lilygo_t_display.menu.UploadSpeed.460800.linux=460800 -lilygo_t_display.menu.UploadSpeed.460800.macosx=460800 -lilygo_t_display.menu.UploadSpeed.460800.upload.speed=460800 -lilygo_t_display.menu.UploadSpeed.512000.windows=512000 -lilygo_t_display.menu.UploadSpeed.512000.upload.speed=512000 - -lilygo_t_display.menu.DebugLevel.none=None -lilygo_t_display.menu.DebugLevel.none.build.code_debug=0 -lilygo_t_display.menu.DebugLevel.error=Error -lilygo_t_display.menu.DebugLevel.error.build.code_debug=1 -lilygo_t_display.menu.DebugLevel.warn=Warn -lilygo_t_display.menu.DebugLevel.warn.build.code_debug=2 -lilygo_t_display.menu.DebugLevel.info=Info -lilygo_t_display.menu.DebugLevel.info.build.code_debug=3 -lilygo_t_display.menu.DebugLevel.debug=Debug -lilygo_t_display.menu.DebugLevel.debug.build.code_debug=4 -lilygo_t_display.menu.DebugLevel.verbose=Verbose -lilygo_t_display.menu.DebugLevel.verbose.build.code_debug=5 - -lilygo_t_display.menu.EraseFlash.none=Disabled -lilygo_t_display.menu.EraseFlash.none.upload.erase_cmd= -lilygo_t_display.menu.EraseFlash.all=Enabled -lilygo_t_display.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lilygo_t_display_s3.name=LilyGo T-Display-S3 -lilygo_t_display_s3.vid.0=0x303a -lilygo_t_display_s3.pid.0=0x1001 - -lilygo_t_display_s3.bootloader.tool=esptool_py -lilygo_t_display_s3.bootloader.tool.default=esptool_py - -lilygo_t_display_s3.upload.tool=esptool_py -lilygo_t_display_s3.upload.tool.default=esptool_py -lilygo_t_display_s3.upload.tool.network=esp_ota - -lilygo_t_display_s3.upload.maximum_size=3145728 -lilygo_t_display_s3.upload.maximum_data_size=327680 -lilygo_t_display_s3.upload.speed=921600 -lilygo_t_display_s3.upload.flags= -lilygo_t_display_s3.upload.extra_flags= -lilygo_t_display_s3.upload.use_1200bps_touch=false -lilygo_t_display_s3.upload.wait_for_upload_port=false - -lilygo_t_display_s3.serial.disableDTR=false -lilygo_t_display_s3.serial.disableRTS=false - -lilygo_t_display_s3.build.tarch=xtensa -lilygo_t_display_s3.build.bootloader_addr=0x0 -lilygo_t_display_s3.build.target=esp32s3 -lilygo_t_display_s3.build.mcu=esp32s3 -lilygo_t_display_s3.build.core=esp32 -lilygo_t_display_s3.build.variant=lilygo_t_display_s3 -lilygo_t_display_s3.build.board=LILYGO_T_DISPLAY_S3 - -lilygo_t_display_s3.build.usb_mode=1 -lilygo_t_display_s3.build.cdc_on_boot=1 -lilygo_t_display_s3.build.msc_on_boot=0 -lilygo_t_display_s3.build.dfu_on_boot=0 -lilygo_t_display_s3.build.f_cpu=240000000L -lilygo_t_display_s3.build.flash_size=16MB -lilygo_t_display_s3.build.flash_freq=80m -lilygo_t_display_s3.build.flash_mode=dio -lilygo_t_display_s3.build.boot=qio -lilygo_t_display_s3.build.boot_freq=80m -lilygo_t_display_s3.build.partitions=app3M_fat9M_16MB -lilygo_t_display_s3.build.defines= -lilygo_t_display_s3.build.loop_core= -lilygo_t_display_s3.build.event_core= -lilygo_t_display_s3.build.psram_type=opi -lilygo_t_display_s3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -lilygo_t_display_s3.menu.JTAGAdapter.default=Disabled -lilygo_t_display_s3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -lilygo_t_display_s3.menu.JTAGAdapter.builtin=Integrated USB JTAG -lilygo_t_display_s3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -lilygo_t_display_s3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 - -lilygo_t_display_s3.menu.LoopCore.1=Core 1 -lilygo_t_display_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lilygo_t_display_s3.menu.LoopCore.0=Core 0 -lilygo_t_display_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lilygo_t_display_s3.menu.EventsCore.1=Core 1 -lilygo_t_display_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lilygo_t_display_s3.menu.EventsCore.0=Core 0 -lilygo_t_display_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lilygo_t_display_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -lilygo_t_display_s3.menu.USBMode.hwcdc.build.usb_mode=1 -lilygo_t_display_s3.menu.USBMode.default=USB-OTG (TinyUSB) -lilygo_t_display_s3.menu.USBMode.default.build.usb_mode=0 - -lilygo_t_display_s3.menu.CDCOnBoot.cdc=Enabled -lilygo_t_display_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -lilygo_t_display_s3.menu.CDCOnBoot.default=Disabled -lilygo_t_display_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -lilygo_t_display_s3.menu.MSCOnBoot.default=Disabled -lilygo_t_display_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -lilygo_t_display_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -lilygo_t_display_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lilygo_t_display_s3.menu.DFUOnBoot.default=Disabled -lilygo_t_display_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lilygo_t_display_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -lilygo_t_display_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lilygo_t_display_s3.menu.UploadMode.default=UART0 / Hardware CDC -lilygo_t_display_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -lilygo_t_display_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -lilygo_t_display_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -lilygo_t_display_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -lilygo_t_display_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -lilygo_t_display_s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -lilygo_t_display_s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lilygo_t_display_s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -lilygo_t_display_s3.menu.PartitionScheme.rainmaker=RainMaker -lilygo_t_display_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lilygo_t_display_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lilygo_t_display_s3.menu.DebugLevel.none=None -lilygo_t_display_s3.menu.DebugLevel.none.build.code_debug=0 -lilygo_t_display_s3.menu.DebugLevel.error=Error -lilygo_t_display_s3.menu.DebugLevel.error.build.code_debug=1 -lilygo_t_display_s3.menu.DebugLevel.warn=Warn -lilygo_t_display_s3.menu.DebugLevel.warn.build.code_debug=2 -lilygo_t_display_s3.menu.DebugLevel.info=Info -lilygo_t_display_s3.menu.DebugLevel.info.build.code_debug=3 -lilygo_t_display_s3.menu.DebugLevel.debug=Debug -lilygo_t_display_s3.menu.DebugLevel.debug.build.code_debug=4 -lilygo_t_display_s3.menu.DebugLevel.verbose=Verbose -lilygo_t_display_s3.menu.DebugLevel.verbose.build.code_debug=5 - -lilygo_t_display_s3.menu.EraseFlash.none=Disabled -lilygo_t_display_s3.menu.EraseFlash.none.upload.erase_cmd= -lilygo_t_display_s3.menu.EraseFlash.all=Enabled -lilygo_t_display_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -micros2.name=microS2 -micros2.vid.0=0x239A -micros2.pid.0=0x80C5 - -micros2.bootloader.tool=esptool_py -micros2.bootloader.tool.default=esptool_py - -micros2.upload.tool=esptool_py -micros2.upload.tool.default=esptool_py -micros2.upload.tool.network=esp_ota - -micros2.upload.maximum_size=1310720 -micros2.upload.maximum_data_size=327680 -micros2.upload.flags= -micros2.upload.extra_flags= -micros2.upload.use_1200bps_touch=true -micros2.upload.wait_for_upload_port=true - -micros2.serial.disableDTR=false -micros2.serial.disableRTS=false - -micros2.build.tarch=xtensa -micros2.build.bootloader_addr=0x1000 -micros2.build.target=esp32s2 -micros2.build.mcu=esp32s2 -micros2.build.core=esp32 -micros2.build.variant=micro_s2 -micros2.build.board=MICROS2 - -micros2.build.cdc_on_boot=1 -micros2.build.msc_on_boot=1 -micros2.build.dfu_on_boot=0 -micros2.build.f_cpu=240000000L -micros2.build.flash_size=16MB -micros2.build.flash_freq=80m -micros2.build.flash_mode=dio -micros2.build.boot=qio -micros2.build.partitions=fatflash -micros2.build.defines= - -micros2.menu.CDCOnBoot.cdc=Enabled -micros2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -micros2.menu.CDCOnBoot.default=Disabled -micros2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -micros2.menu.MSCOnBoot.msc=Enabled -micros2.menu.MSCOnBoot.msc.build.msc_on_boot=1 -micros2.menu.MSCOnBoot.default=Disabled -micros2.menu.MSCOnBoot.default.build.msc_on_boot=0 - -micros2.menu.DFUOnBoot.default=Disabled -micros2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -micros2.menu.DFUOnBoot.dfu=Enabled -micros2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -micros2.menu.PSRAM.enabled=Enabled -micros2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -micros2.menu.PSRAM.disabled=Disabled -micros2.menu.PSRAM.disabled.build.defines= - -micros2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -micros2.menu.PartitionScheme.fatflash.build.partitions=ffat -micros2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -micros2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -micros2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -micros2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -micros2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -micros2.menu.PartitionScheme.default.build.partitions=default -micros2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -micros2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -micros2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -micros2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -micros2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -micros2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -micros2.menu.PartitionScheme.minimal.build.partitions=minimal -micros2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -micros2.menu.PartitionScheme.no_ota.build.partitions=no_ota -micros2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -micros2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -micros2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -micros2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -micros2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -micros2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -micros2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -micros2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -micros2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -micros2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -micros2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -micros2.menu.PartitionScheme.huge_app.build.partitions=huge_app -micros2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -micros2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -micros2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -micros2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -micros2.menu.CPUFreq.240=240MHz (WiFi) -micros2.menu.CPUFreq.240.build.f_cpu=240000000L -micros2.menu.CPUFreq.160=160MHz (WiFi) -micros2.menu.CPUFreq.160.build.f_cpu=160000000L -micros2.menu.CPUFreq.80=80MHz (WiFi) -micros2.menu.CPUFreq.80.build.f_cpu=80000000L -micros2.menu.CPUFreq.40=40MHz -micros2.menu.CPUFreq.40.build.f_cpu=40000000L -micros2.menu.CPUFreq.20=20MHz -micros2.menu.CPUFreq.20.build.f_cpu=20000000L -micros2.menu.CPUFreq.10=10MHz -micros2.menu.CPUFreq.10.build.f_cpu=10000000L - -micros2.menu.FlashSize.16M=16MB (128Mb) -micros2.menu.FlashSize.16M.build.flash_size=16MB -micros2.menu.FlashSize.4M=4MB (32Mb) -micros2.menu.FlashSize.4M.build.flash_size=4MB -micros2.menu.FlashSize.8M=8MB (64Mb) -micros2.menu.FlashSize.8M.build.flash_size=8MB -micros2.menu.FlashSize.8M.build.partitions=default_8MB -micros2.menu.FlashSize.2M=2MB (16Mb) -micros2.menu.FlashSize.2M.build.flash_size=2MB -micros2.menu.FlashSize.2M.build.partitions=minimal - -micros2.menu.UploadSpeed.921600=921600 -micros2.menu.UploadSpeed.921600.upload.speed=921600 -micros2.menu.UploadSpeed.115200=115200 -micros2.menu.UploadSpeed.115200.upload.speed=115200 -micros2.menu.UploadSpeed.256000.windows=256000 -micros2.menu.UploadSpeed.256000.upload.speed=256000 -micros2.menu.UploadSpeed.230400.windows.upload.speed=256000 -micros2.menu.UploadSpeed.230400=230400 -micros2.menu.UploadSpeed.230400.upload.speed=230400 -micros2.menu.UploadSpeed.460800.linux=460800 -micros2.menu.UploadSpeed.460800.macosx=460800 -micros2.menu.UploadSpeed.460800.upload.speed=460800 - -micros2.menu.DebugLevel.none=None -micros2.menu.DebugLevel.none.build.code_debug=0 -micros2.menu.DebugLevel.error=Error -micros2.menu.DebugLevel.error.build.code_debug=1 -micros2.menu.DebugLevel.warn=Warn -micros2.menu.DebugLevel.warn.build.code_debug=2 -micros2.menu.DebugLevel.info=Info -micros2.menu.DebugLevel.info.build.code_debug=3 -micros2.menu.DebugLevel.debug=Debug -micros2.menu.DebugLevel.debug.build.code_debug=4 -micros2.menu.DebugLevel.verbose=Verbose -micros2.menu.DebugLevel.verbose.build.code_debug=5 - -micros2.menu.EraseFlash.none=Disabled -micros2.menu.EraseFlash.none.upload.erase_cmd= -micros2.menu.EraseFlash.all=Enabled -micros2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -magicbit.name=MagicBit - -magicbit.bootloader.tool=esptool_py -magicbit.bootloader.tool.default=esptool_py - -magicbit.upload.tool=esptool_py -magicbit.upload.tool.default=esptool_py -magicbit.upload.tool.network=esp_ota - -magicbit.upload.maximum_size=1310720 -magicbit.upload.maximum_data_size=327680 -magicbit.upload.flags= -magicbit.upload.extra_flags= - -magicbit.serial.disableDTR=true -magicbit.serial.disableRTS=true - -magicbit.build.tarch=xtensa -magicbit.build.bootloader_addr=0x1000 -magicbit.build.target=esp32 -magicbit.build.mcu=esp32 -magicbit.build.core=esp32 -magicbit.build.variant=magicbit -magicbit.build.board=ESP32_DEV - -magicbit.build.f_cpu=240000000L -magicbit.build.flash_size=4MB -magicbit.build.flash_freq=40m -magicbit.build.flash_mode=dio -magicbit.build.boot=dio -magicbit.build.partitions=default - -magicbit.menu.CPUFreq.240=240MHz (WiFi/BT) -magicbit.menu.CPUFreq.240.build.f_cpu=240000000L -magicbit.menu.CPUFreq.160=160MHz (WiFi/BT) -magicbit.menu.CPUFreq.160.build.f_cpu=160000000L -magicbit.menu.CPUFreq.80=80MHz (WiFi/BT) -magicbit.menu.CPUFreq.80.build.f_cpu=80000000L -magicbit.menu.CPUFreq.40=40MHz (40MHz XTAL) - -magicbit.menu.UploadSpeed.921600=921600 -magicbit.menu.UploadSpeed.921600.upload.speed=921600 -magicbit.menu.UploadSpeed.115200=115200 -magicbit.menu.UploadSpeed.115200.upload.speed=115200 - -magicbit.menu.DebugLevel.none=None -magicbit.menu.DebugLevel.none.build.code_debug=0 -magicbit.menu.DebugLevel.error=Error -magicbit.menu.DebugLevel.error.build.code_debug=1 -magicbit.menu.DebugLevel.warn=Warn -magicbit.menu.DebugLevel.warn.build.code_debug=2 -magicbit.menu.DebugLevel.info=Info -magicbit.menu.DebugLevel.info.build.code_debug=3 -magicbit.menu.DebugLevel.debug=Debug -magicbit.menu.DebugLevel.debug.build.code_debug=4 -magicbit.menu.DebugLevel.verbose=Verbose -magicbit.menu.DebugLevel.verbose.build.code_debug=5 - -magicbit.menu.EraseFlash.none=Disabled -magicbit.menu.EraseFlash.none.upload.erase_cmd= -magicbit.menu.EraseFlash.all=Enabled -magicbit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -turta_iot_node.name=Turta IoT Node - -turta_iot_node.bootloader.tool=esptool_py -turta_iot_node.bootloader.tool.default=esptool_py - -turta_iot_node.upload.tool=esptool_py -turta_iot_node.upload.tool.default=esptool_py -turta_iot_node.upload.tool.network=esp_ota - -turta_iot_node.upload.maximum_size=1310720 -turta_iot_node.upload.maximum_data_size=327680 -turta_iot_node.upload.flags= -turta_iot_node.upload.extra_flags= - -turta_iot_node.serial.disableDTR=true -turta_iot_node.serial.disableRTS=true - -turta_iot_node.build.tarch=xtensa -turta_iot_node.build.bootloader_addr=0x1000 -turta_iot_node.build.target=esp32 -turta_iot_node.build.mcu=esp32 -turta_iot_node.build.core=esp32 -turta_iot_node.build.variant=pico32 -turta_iot_node.build.board=ESP32_PICO - -turta_iot_node.build.f_cpu=240000000L -turta_iot_node.build.flash_size=4MB -turta_iot_node.build.flash_freq=80m -turta_iot_node.build.flash_mode=dio -turta_iot_node.build.boot=dio -turta_iot_node.build.partitions=default -turta_iot_node.build.defines= - -turta_iot_node.menu.UploadSpeed.921600=921600 -turta_iot_node.menu.UploadSpeed.921600.upload.speed=921600 -turta_iot_node.menu.UploadSpeed.115200=115200 -turta_iot_node.menu.UploadSpeed.115200.upload.speed=115200 - -turta_iot_node.menu.DebugLevel.none=None -turta_iot_node.menu.DebugLevel.none.build.code_debug=0 -turta_iot_node.menu.DebugLevel.error=Error -turta_iot_node.menu.DebugLevel.error.build.code_debug=1 -turta_iot_node.menu.DebugLevel.warn=Warn -turta_iot_node.menu.DebugLevel.warn.build.code_debug=2 -turta_iot_node.menu.DebugLevel.info=Info -turta_iot_node.menu.DebugLevel.info.build.code_debug=3 -turta_iot_node.menu.DebugLevel.debug=Debug -turta_iot_node.menu.DebugLevel.debug.build.code_debug=4 -turta_iot_node.menu.DebugLevel.verbose=Verbose -turta_iot_node.menu.DebugLevel.verbose.build.code_debug=5 - -turta_iot_node.menu.EraseFlash.none=Disabled -turta_iot_node.menu.EraseFlash.none.upload.erase_cmd= -turta_iot_node.menu.EraseFlash.all=Enabled -turta_iot_node.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ttgo-lora32.name=TTGO LoRa32-OLED - -ttgo-lora32.bootloader.tool=esptool_py -ttgo-lora32.bootloader.tool.default=esptool_py - -ttgo-lora32.upload.tool=esptool_py -ttgo-lora32.upload.tool.default=esptool_py -ttgo-lora32.upload.tool.network=esp_ota - -ttgo-lora32.upload.maximum_size=1310720 -ttgo-lora32.upload.maximum_data_size=294912 -ttgo-lora32.upload.flags= -ttgo-lora32.upload.extra_flags= - -ttgo-lora32.serial.disableDTR=true -ttgo-lora32.serial.disableRTS=true - -ttgo-lora32.build.tarch=xtensa -ttgo-lora32.build.bootloader_addr=0x1000 -ttgo-lora32.build.target=esp32 -ttgo-lora32.build.mcu=esp32 -ttgo-lora32.build.core=esp32 -ttgo-lora32.build.board=TTGO_LoRa32 - -ttgo-lora32.menu.Revision.TTGO_LoRa32_V1=TTGO LoRa32 V1 (No TFCard) -ttgo-lora32.menu.Revision.TTGO_LoRa32_V1.build.board=TTGO_LoRa32_V1 -ttgo-lora32.menu.Revision.TTGO_LoRa32_V1.build.variant=ttgo-lora32-v1 - -ttgo-lora32.menu.Revision.TTGO_LoRa32_V2=TTGO LoRa32 V2 -ttgo-lora32.menu.Revision.TTGO_LoRa32_V2.build.board=TTGO_LoRa32_V2 -ttgo-lora32.menu.Revision.TTGO_LoRa32_V2.build.variant=ttgo-lora32-v2 - -ttgo-lora32.menu.Revision.TTGO_LoRa32_v21new=TTGO LoRa32 V2.1 (1.6.1) -ttgo-lora32.menu.Revision.TTGO_LoRa32_v21new.build.board=TTGO_LoRa32_v21new -ttgo-lora32.menu.Revision.TTGO_LoRa32_v21new.build.variant=ttgo-lora32-v21new - -ttgo-lora32.build.f_cpu=240000000L -ttgo-lora32.build.flash_mode=dio -ttgo-lora32.build.flash_size=4MB -ttgo-lora32.build.boot=dio -ttgo-lora32.build.partitions=default - -ttgo-lora32.menu.FlashFreq.80=80MHz -ttgo-lora32.menu.FlashFreq.80.build.flash_freq=80m -ttgo-lora32.menu.FlashFreq.40=40MHz -ttgo-lora32.menu.FlashFreq.40.build.flash_freq=40m - -ttgo-lora32.menu.UploadSpeed.921600=921600 -ttgo-lora32.menu.UploadSpeed.921600.upload.speed=921600 -ttgo-lora32.menu.UploadSpeed.115200=115200 -ttgo-lora32.menu.UploadSpeed.115200.upload.speed=115200 -ttgo-lora32.menu.UploadSpeed.256000.windows=256000 -ttgo-lora32.menu.UploadSpeed.256000.upload.speed=256000 -ttgo-lora32.menu.UploadSpeed.230400.windows.upload.speed=256000 -ttgo-lora32.menu.UploadSpeed.230400=230400 -ttgo-lora32.menu.UploadSpeed.230400.upload.speed=230400 -ttgo-lora32.menu.UploadSpeed.460800.linux=460800 -ttgo-lora32.menu.UploadSpeed.460800.macosx=460800 -ttgo-lora32.menu.UploadSpeed.460800.upload.speed=460800 -ttgo-lora32.menu.UploadSpeed.512000.windows=512000 -ttgo-lora32.menu.UploadSpeed.512000.upload.speed=512000 - -ttgo-lora32.menu.DebugLevel.none=None -ttgo-lora32.menu.DebugLevel.none.build.code_debug=0 -ttgo-lora32.menu.DebugLevel.error=Error -ttgo-lora32.menu.DebugLevel.error.build.code_debug=1 -ttgo-lora32.menu.DebugLevel.warn=Warn -ttgo-lora32.menu.DebugLevel.warn.build.code_debug=2 -ttgo-lora32.menu.DebugLevel.info=Info -ttgo-lora32.menu.DebugLevel.info.build.code_debug=3 -ttgo-lora32.menu.DebugLevel.debug=Debug -ttgo-lora32.menu.DebugLevel.debug.build.code_debug=4 -ttgo-lora32.menu.DebugLevel.verbose=Verbose -ttgo-lora32.menu.DebugLevel.verbose.build.code_debug=5 - -ttgo-lora32.menu.EraseFlash.none=Disabled -ttgo-lora32.menu.EraseFlash.none.upload.erase_cmd= -ttgo-lora32.menu.EraseFlash.all=Enabled -ttgo-lora32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ttgo-t1.name=TTGO T1 - -ttgo-t1.bootloader.tool=esptool_py -ttgo-t1.bootloader.tool.default=esptool_py - -ttgo-t1.upload.tool=esptool_py -ttgo-t1.upload.tool.default=esptool_py -ttgo-t1.upload.tool.network=esp_ota - -ttgo-t1.upload.maximum_size=1310720 -ttgo-t1.upload.maximum_data_size=327680 -ttgo-t1.upload.flags= -ttgo-t1.upload.extra_flags= - -ttgo-t1.serial.disableDTR=true -ttgo-t1.serial.disableRTS=true - -ttgo-t1.build.tarch=xtensa -ttgo-t1.build.bootloader_addr=0x1000 -ttgo-t1.build.target=esp32 -ttgo-t1.build.mcu=esp32 -ttgo-t1.build.core=esp32 -ttgo-t1.build.variant=ttgo-t1 -ttgo-t1.build.board=TTGO_T1 - -ttgo-t1.build.f_cpu=240000000L -ttgo-t1.build.flash_size=4MB -ttgo-t1.build.flash_freq=40m -ttgo-t1.build.flash_mode=dio -ttgo-t1.build.boot=dio -ttgo-t1.build.partitions=default -ttgo-t1.build.defines= - -ttgo-t1.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ttgo-t1.menu.PartitionScheme.default.build.partitions=default -ttgo-t1.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ttgo-t1.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ttgo-t1.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ttgo-t1.menu.PartitionScheme.minimal.build.partitions=minimal -ttgo-t1.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ttgo-t1.menu.PartitionScheme.no_ota.build.partitions=no_ota -ttgo-t1.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ttgo-t1.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ttgo-t1.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ttgo-t1.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ttgo-t1.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ttgo-t1.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ttgo-t1.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ttgo-t1.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ttgo-t1.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ttgo-t1.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ttgo-t1.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ttgo-t1.menu.PartitionScheme.huge_app.build.partitions=huge_app -ttgo-t1.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ttgo-t1.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ttgo-t1.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ttgo-t1.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ttgo-t1.menu.CPUFreq.240=240MHz (WiFi/BT) -ttgo-t1.menu.CPUFreq.240.build.f_cpu=240000000L -ttgo-t1.menu.CPUFreq.160=160MHz (WiFi/BT) -ttgo-t1.menu.CPUFreq.160.build.f_cpu=160000000L -ttgo-t1.menu.CPUFreq.80=80MHz (WiFi/BT) -ttgo-t1.menu.CPUFreq.80.build.f_cpu=80000000L -ttgo-t1.menu.CPUFreq.40=40MHz (40MHz XTAL) -ttgo-t1.menu.CPUFreq.40.build.f_cpu=40000000L -ttgo-t1.menu.CPUFreq.26=26MHz (26MHz XTAL) -ttgo-t1.menu.CPUFreq.26.build.f_cpu=26000000L -ttgo-t1.menu.CPUFreq.20=20MHz (40MHz XTAL) -ttgo-t1.menu.CPUFreq.20.build.f_cpu=20000000L -ttgo-t1.menu.CPUFreq.13=13MHz (26MHz XTAL) -ttgo-t1.menu.CPUFreq.13.build.f_cpu=13000000L -ttgo-t1.menu.CPUFreq.10=10MHz (40MHz XTAL) -ttgo-t1.menu.CPUFreq.10.build.f_cpu=10000000L - -ttgo-t1.menu.FlashMode.qio=QIO -ttgo-t1.menu.FlashMode.qio.build.flash_mode=dio -ttgo-t1.menu.FlashMode.qio.build.boot=qio -ttgo-t1.menu.FlashMode.dio=DIO -ttgo-t1.menu.FlashMode.dio.build.flash_mode=dio -ttgo-t1.menu.FlashMode.dio.build.boot=dio - -ttgo-t1.menu.FlashFreq.80=80MHz -ttgo-t1.menu.FlashFreq.80.build.flash_freq=80m -ttgo-t1.menu.FlashFreq.40=40MHz -ttgo-t1.menu.FlashFreq.40.build.flash_freq=40m - -ttgo-t1.menu.FlashSize.4M=4MB (32Mb) -ttgo-t1.menu.FlashSize.4M.build.flash_size=4MB -ttgo-t1.menu.FlashSize.2M=2MB (16Mb) -ttgo-t1.menu.FlashSize.2M.build.flash_size=2MB -ttgo-t1.menu.FlashSize.2M.build.partitions=minimal -ttgo-t1.menu.FlashSize.16M=16MB (128Mb) -ttgo-t1.menu.FlashSize.16M.build.flash_size=16MB -ttgo-t1.menu.FlashSize.16M.build.partitions=ffat - -ttgo-t1.menu.UploadSpeed.921600=921600 -ttgo-t1.menu.UploadSpeed.921600.upload.speed=921600 -ttgo-t1.menu.UploadSpeed.115200=115200 -ttgo-t1.menu.UploadSpeed.115200.upload.speed=115200 -ttgo-t1.menu.UploadSpeed.256000.windows=256000 -ttgo-t1.menu.UploadSpeed.256000.upload.speed=256000 -ttgo-t1.menu.UploadSpeed.230400.windows.upload.speed=256000 -ttgo-t1.menu.UploadSpeed.230400=230400 -ttgo-t1.menu.UploadSpeed.230400.upload.speed=230400 -ttgo-t1.menu.UploadSpeed.460800.linux=460800 -ttgo-t1.menu.UploadSpeed.460800.macosx=460800 -ttgo-t1.menu.UploadSpeed.460800.upload.speed=460800 -ttgo-t1.menu.UploadSpeed.512000.windows=512000 -ttgo-t1.menu.UploadSpeed.512000.upload.speed=512000 - -ttgo-t1.menu.DebugLevel.none=None -ttgo-t1.menu.DebugLevel.none.build.code_debug=0 -ttgo-t1.menu.DebugLevel.error=Error -ttgo-t1.menu.DebugLevel.error.build.code_debug=1 -ttgo-t1.menu.DebugLevel.warn=Warn -ttgo-t1.menu.DebugLevel.warn.build.code_debug=2 -ttgo-t1.menu.DebugLevel.info=Info -ttgo-t1.menu.DebugLevel.info.build.code_debug=3 -ttgo-t1.menu.DebugLevel.debug=Debug -ttgo-t1.menu.DebugLevel.debug.build.code_debug=4 -ttgo-t1.menu.DebugLevel.verbose=Verbose -ttgo-t1.menu.DebugLevel.verbose.build.code_debug=5 - -ttgo-t1.menu.EraseFlash.none=Disabled -ttgo-t1.menu.EraseFlash.none.upload.erase_cmd= -ttgo-t1.menu.EraseFlash.all=Enabled -ttgo-t1.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ttgo-t7-v13-mini32.name=TTGO T7 V1.3 Mini32 - -ttgo-t7-v13-mini32.bootloader.tool=esptool_py -ttgo-t7-v13-mini32.bootloader.tool.default=esptool_py - -ttgo-t7-v13-mini32.upload.tool=esptool_py -ttgo-t7-v13-mini32.upload.tool.default=esptool_py -ttgo-t7-v13-mini32.upload.tool.network=esp_ota - -ttgo-t7-v13-mini32.upload.maximum_size=1310720 -ttgo-t7-v13-mini32.upload.maximum_data_size=327680 -ttgo-t7-v13-mini32.upload.wait_for_upload_port=true -ttgo-t7-v13-mini32.upload.flags= -ttgo-t7-v13-mini32.upload.extra_flags= - -ttgo-t7-v13-mini32.serial.disableDTR=true -ttgo-t7-v13-mini32.serial.disableRTS=true - -ttgo-t7-v13-mini32.build.tarch=xtensa -ttgo-t7-v13-mini32.build.bootloader_addr=0x1000 -ttgo-t7-v13-mini32.build.target=esp32 -ttgo-t7-v13-mini32.build.mcu=esp32 -ttgo-t7-v13-mini32.build.core=esp32 -ttgo-t7-v13-mini32.build.variant=ttgo-t7-v13-mini32 -ttgo-t7-v13-mini32.build.board=TTGO_T7_V13_Mini32 - -ttgo-t7-v13-mini32.build.f_cpu=240000000L -ttgo-t7-v13-mini32.build.flash_size=4MB -ttgo-t7-v13-mini32.build.flash_freq=40m -ttgo-t7-v13-mini32.build.flash_mode=dio -ttgo-t7-v13-mini32.build.boot=dio -ttgo-t7-v13-mini32.build.partitions=default -ttgo-t7-v13-mini32.build.defines= - -ttgo-t7-v13-mini32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.default.build.partitions=default -ttgo-t7-v13-mini32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ttgo-t7-v13-mini32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.minimal.build.partitions=minimal -ttgo-t7-v13-mini32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.no_ota.build.partitions=no_ota -ttgo-t7-v13-mini32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ttgo-t7-v13-mini32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ttgo-t7-v13-mini32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.huge_app.build.partitions=huge_app -ttgo-t7-v13-mini32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ttgo-t7-v13-mini32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ttgo-t7-v13-mini32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ttgo-t7-v13-mini32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ttgo-t7-v13-mini32.menu.CPUFreq.240=240MHz (WiFi/BT) -ttgo-t7-v13-mini32.menu.CPUFreq.240.build.f_cpu=240000000L -ttgo-t7-v13-mini32.menu.CPUFreq.160=160MHz (WiFi/BT) -ttgo-t7-v13-mini32.menu.CPUFreq.160.build.f_cpu=160000000L -ttgo-t7-v13-mini32.menu.CPUFreq.80=80MHz (WiFi/BT) -ttgo-t7-v13-mini32.menu.CPUFreq.80.build.f_cpu=80000000L -ttgo-t7-v13-mini32.menu.CPUFreq.40=40MHz (40MHz XTAL) -ttgo-t7-v13-mini32.menu.CPUFreq.40.build.f_cpu=40000000L -ttgo-t7-v13-mini32.menu.CPUFreq.26=26MHz (26MHz XTAL) -ttgo-t7-v13-mini32.menu.CPUFreq.26.build.f_cpu=26000000L -ttgo-t7-v13-mini32.menu.CPUFreq.20=20MHz (40MHz XTAL) -ttgo-t7-v13-mini32.menu.CPUFreq.20.build.f_cpu=20000000L -ttgo-t7-v13-mini32.menu.CPUFreq.13=13MHz (26MHz XTAL) -ttgo-t7-v13-mini32.menu.CPUFreq.13.build.f_cpu=13000000L -ttgo-t7-v13-mini32.menu.CPUFreq.10=10MHz (40MHz XTAL) -ttgo-t7-v13-mini32.menu.CPUFreq.10.build.f_cpu=10000000L - -ttgo-t7-v13-mini32.menu.FlashMode.qio=QIO -ttgo-t7-v13-mini32.menu.FlashMode.qio.build.flash_mode=dio -ttgo-t7-v13-mini32.menu.FlashMode.qio.build.boot=qio -ttgo-t7-v13-mini32.menu.FlashMode.dio=DIO -ttgo-t7-v13-mini32.menu.FlashMode.dio.build.flash_mode=dio -ttgo-t7-v13-mini32.menu.FlashMode.dio.build.boot=dio - -ttgo-t7-v13-mini32.menu.FlashFreq.80=80MHz -ttgo-t7-v13-mini32.menu.FlashFreq.80.build.flash_freq=80m -ttgo-t7-v13-mini32.menu.FlashFreq.40=40MHz -ttgo-t7-v13-mini32.menu.FlashFreq.40.build.flash_freq=40m - -ttgo-t7-v13-mini32.menu.FlashSize.4M=4MB (32Mb) -ttgo-t7-v13-mini32.menu.FlashSize.4M.build.flash_size=4MB - -ttgo-t7-v13-mini32.menu.UploadSpeed.921600=921600 -ttgo-t7-v13-mini32.menu.UploadSpeed.921600.upload.speed=921600 -ttgo-t7-v13-mini32.menu.UploadSpeed.115200=115200 -ttgo-t7-v13-mini32.menu.UploadSpeed.115200.upload.speed=115200 -ttgo-t7-v13-mini32.menu.UploadSpeed.256000.windows=256000 -ttgo-t7-v13-mini32.menu.UploadSpeed.256000.upload.speed=256000 -ttgo-t7-v13-mini32.menu.UploadSpeed.230400.windows.upload.speed=256000 -ttgo-t7-v13-mini32.menu.UploadSpeed.230400=230400 -ttgo-t7-v13-mini32.menu.UploadSpeed.230400.upload.speed=230400 -ttgo-t7-v13-mini32.menu.UploadSpeed.460800.linux=460800 -ttgo-t7-v13-mini32.menu.UploadSpeed.460800.macosx=460800 -ttgo-t7-v13-mini32.menu.UploadSpeed.460800.upload.speed=460800 -ttgo-t7-v13-mini32.menu.UploadSpeed.512000.windows=512000 -ttgo-t7-v13-mini32.menu.UploadSpeed.512000.upload.speed=512000 - -ttgo-t7-v13-mini32.menu.DebugLevel.none=None -ttgo-t7-v13-mini32.menu.DebugLevel.none.build.code_debug=0 -ttgo-t7-v13-mini32.menu.DebugLevel.error=Error -ttgo-t7-v13-mini32.menu.DebugLevel.error.build.code_debug=1 -ttgo-t7-v13-mini32.menu.DebugLevel.warn=Warn -ttgo-t7-v13-mini32.menu.DebugLevel.warn.build.code_debug=2 -ttgo-t7-v13-mini32.menu.DebugLevel.info=Info -ttgo-t7-v13-mini32.menu.DebugLevel.info.build.code_debug=3 -ttgo-t7-v13-mini32.menu.DebugLevel.debug=Debug -ttgo-t7-v13-mini32.menu.DebugLevel.debug.build.code_debug=4 -ttgo-t7-v13-mini32.menu.DebugLevel.verbose=Verbose -ttgo-t7-v13-mini32.menu.DebugLevel.verbose.build.code_debug=5 - -ttgo-t7-v13-mini32.menu.EraseFlash.none=Disabled -ttgo-t7-v13-mini32.menu.EraseFlash.none.upload.erase_cmd= -ttgo-t7-v13-mini32.menu.EraseFlash.all=Enabled -ttgo-t7-v13-mini32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ttgo-t7-v14-mini32.name=TTGO T7 V1.4 Mini32 - -ttgo-t7-v14-mini32.bootloader.tool=esptool_py -ttgo-t7-v14-mini32.bootloader.tool.default=esptool_py - -ttgo-t7-v14-mini32.upload.tool=esptool_py -ttgo-t7-v14-mini32.upload.tool.default=esptool_py -ttgo-t7-v14-mini32.upload.tool.network=esp_ota - -ttgo-t7-v14-mini32.upload.maximum_size=1310720 -ttgo-t7-v14-mini32.upload.maximum_data_size=327680 -ttgo-t7-v14-mini32.upload.wait_for_upload_port=true -ttgo-t7-v14-mini32.upload.flags= -ttgo-t7-v14-mini32.upload.extra_flags= - -ttgo-t7-v14-mini32.serial.disableDTR=true -ttgo-t7-v14-mini32.serial.disableRTS=true - -ttgo-t7-v14-mini32.build.tarch=xtensa -ttgo-t7-v14-mini32.build.bootloader_addr=0x1000 -ttgo-t7-v14-mini32.build.target=esp32 -ttgo-t7-v14-mini32.build.mcu=esp32 -ttgo-t7-v14-mini32.build.core=esp32 -ttgo-t7-v14-mini32.build.variant=ttgo-t7-v14-mini32 -ttgo-t7-v14-mini32.build.board=TTGO_T7_V14_Mini32 - -ttgo-t7-v14-mini32.build.f_cpu=240000000L -ttgo-t7-v14-mini32.build.flash_size=4MB -ttgo-t7-v14-mini32.build.flash_freq=40m -ttgo-t7-v14-mini32.build.flash_mode=dio -ttgo-t7-v14-mini32.build.boot=dio -ttgo-t7-v14-mini32.build.partitions=default -ttgo-t7-v14-mini32.build.defines= - -ttgo-t7-v14-mini32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.default.build.partitions=default -ttgo-t7-v14-mini32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ttgo-t7-v14-mini32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.minimal.build.partitions=minimal -ttgo-t7-v14-mini32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.no_ota.build.partitions=no_ota -ttgo-t7-v14-mini32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ttgo-t7-v14-mini32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ttgo-t7-v14-mini32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.huge_app.build.partitions=huge_app -ttgo-t7-v14-mini32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ttgo-t7-v14-mini32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ttgo-t7-v14-mini32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ttgo-t7-v14-mini32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ttgo-t7-v14-mini32.menu.CPUFreq.240=240MHz (WiFi/BT) -ttgo-t7-v14-mini32.menu.CPUFreq.240.build.f_cpu=240000000L -ttgo-t7-v14-mini32.menu.CPUFreq.160=160MHz (WiFi/BT) -ttgo-t7-v14-mini32.menu.CPUFreq.160.build.f_cpu=160000000L -ttgo-t7-v14-mini32.menu.CPUFreq.80=80MHz (WiFi/BT) -ttgo-t7-v14-mini32.menu.CPUFreq.80.build.f_cpu=80000000L -ttgo-t7-v14-mini32.menu.CPUFreq.40=40MHz (40MHz XTAL) -ttgo-t7-v14-mini32.menu.CPUFreq.40.build.f_cpu=40000000L -ttgo-t7-v14-mini32.menu.CPUFreq.26=26MHz (26MHz XTAL) -ttgo-t7-v14-mini32.menu.CPUFreq.26.build.f_cpu=26000000L -ttgo-t7-v14-mini32.menu.CPUFreq.20=20MHz (40MHz XTAL) -ttgo-t7-v14-mini32.menu.CPUFreq.20.build.f_cpu=20000000L -ttgo-t7-v14-mini32.menu.CPUFreq.13=13MHz (26MHz XTAL) -ttgo-t7-v14-mini32.menu.CPUFreq.13.build.f_cpu=13000000L -ttgo-t7-v14-mini32.menu.CPUFreq.10=10MHz (40MHz XTAL) -ttgo-t7-v14-mini32.menu.CPUFreq.10.build.f_cpu=10000000L - -ttgo-t7-v14-mini32.menu.FlashMode.qio=QIO -ttgo-t7-v14-mini32.menu.FlashMode.qio.build.flash_mode=dio -ttgo-t7-v14-mini32.menu.FlashMode.qio.build.boot=qio -ttgo-t7-v14-mini32.menu.FlashMode.dio=DIO -ttgo-t7-v14-mini32.menu.FlashMode.dio.build.flash_mode=dio -ttgo-t7-v14-mini32.menu.FlashMode.dio.build.boot=dio - -ttgo-t7-v14-mini32.menu.FlashFreq.80=80MHz -ttgo-t7-v14-mini32.menu.FlashFreq.80.build.flash_freq=80m -ttgo-t7-v14-mini32.menu.FlashFreq.40=40MHz -ttgo-t7-v14-mini32.menu.FlashFreq.40.build.flash_freq=40m - -ttgo-t7-v14-mini32.menu.FlashSize.4M=4MB (32Mb) -ttgo-t7-v14-mini32.menu.FlashSize.4M.build.flash_size=4MB - -ttgo-t7-v14-mini32.menu.UploadSpeed.921600=921600 -ttgo-t7-v14-mini32.menu.UploadSpeed.921600.upload.speed=921600 -ttgo-t7-v14-mini32.menu.UploadSpeed.115200=115200 -ttgo-t7-v14-mini32.menu.UploadSpeed.115200.upload.speed=115200 -ttgo-t7-v14-mini32.menu.UploadSpeed.256000.windows=256000 -ttgo-t7-v14-mini32.menu.UploadSpeed.256000.upload.speed=256000 -ttgo-t7-v14-mini32.menu.UploadSpeed.230400.windows.upload.speed=256000 -ttgo-t7-v14-mini32.menu.UploadSpeed.230400=230400 -ttgo-t7-v14-mini32.menu.UploadSpeed.230400.upload.speed=230400 -ttgo-t7-v14-mini32.menu.UploadSpeed.460800.linux=460800 -ttgo-t7-v14-mini32.menu.UploadSpeed.460800.macosx=460800 -ttgo-t7-v14-mini32.menu.UploadSpeed.460800.upload.speed=460800 -ttgo-t7-v14-mini32.menu.UploadSpeed.512000.windows=512000 -ttgo-t7-v14-mini32.menu.UploadSpeed.512000.upload.speed=512000 - -ttgo-t7-v14-mini32.menu.DebugLevel.none=None -ttgo-t7-v14-mini32.menu.DebugLevel.none.build.code_debug=0 -ttgo-t7-v14-mini32.menu.DebugLevel.error=Error -ttgo-t7-v14-mini32.menu.DebugLevel.error.build.code_debug=1 -ttgo-t7-v14-mini32.menu.DebugLevel.warn=Warn -ttgo-t7-v14-mini32.menu.DebugLevel.warn.build.code_debug=2 -ttgo-t7-v14-mini32.menu.DebugLevel.info=Info -ttgo-t7-v14-mini32.menu.DebugLevel.info.build.code_debug=3 -ttgo-t7-v14-mini32.menu.DebugLevel.debug=Debug -ttgo-t7-v14-mini32.menu.DebugLevel.debug.build.code_debug=4 -ttgo-t7-v14-mini32.menu.DebugLevel.verbose=Verbose -ttgo-t7-v14-mini32.menu.DebugLevel.verbose.build.code_debug=5 - -ttgo-t7-v14-mini32.menu.EraseFlash.none=Disabled -ttgo-t7-v14-mini32.menu.EraseFlash.none.upload.erase_cmd= -ttgo-t7-v14-mini32.menu.EraseFlash.all=Enabled -ttgo-t7-v14-mini32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ttgo-t-oi-plus.name=TTGO T-OI PLUS RISC-V ESP32-C3 - -ttgo-t-oi-plus.bootloader.tool=esptool_py -ttgo-t-oi-plus.bootloader.tool.default=esptool_py - -ttgo-t-oi-plus.upload.tool=esptool_py -ttgo-t-oi-plus.upload.tool.default=esptool_py -ttgo-t-oi-plus.upload.tool.network=esp_ota - -ttgo-t-oi-plus.upload.maximum_size=1310720 -ttgo-t-oi-plus.upload.maximum_data_size=327680 -ttgo-t-oi-plus.upload.flags= -ttgo-t-oi-plus.upload.extra_flags= - -ttgo-t-oi-plus.serial.disableDTR=false -ttgo-t-oi-plus.serial.disableRTS=false - -ttgo-t-oi-plus.build.tarch=riscv32 -ttgo-t-oi-plus.build.target=esp -ttgo-t-oi-plus.build.mcu=esp32c3 -ttgo-t-oi-plus.build.core=esp32 -ttgo-t-oi-plus.build.variant=ttgo-t-oi-plus -ttgo-t-oi-plus.build.board=TTGO-T-OI-PLUS_DEV -ttgo-t-oi-plus.build.bootloader_addr=0x0 - -ttgo-t-oi-plus.build.cdc_on_boot=0 -ttgo-t-oi-plus.build.f_cpu=160000000L -ttgo-t-oi-plus.build.flash_size=4MB -ttgo-t-oi-plus.build.flash_freq=80m -ttgo-t-oi-plus.build.flash_mode=qio -ttgo-t-oi-plus.build.boot=qio -ttgo-t-oi-plus.build.partitions=default -ttgo-t-oi-plus.build.defines= - -ttgo-t-oi-plus.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.default.build.partitions=default -ttgo-t-oi-plus.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ttgo-t-oi-plus.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ttgo-t-oi-plus.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.minimal.build.partitions=minimal -ttgo-t-oi-plus.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.no_ota.build.partitions=no_ota -ttgo-t-oi-plus.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ttgo-t-oi-plus.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ttgo-t-oi-plus.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ttgo-t-oi-plus.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ttgo-t-oi-plus.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ttgo-t-oi-plus.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ttgo-t-oi-plus.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ttgo-t-oi-plus.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ttgo-t-oi-plus.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ttgo-t-oi-plus.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.huge_app.build.partitions=huge_app -ttgo-t-oi-plus.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ttgo-t-oi-plus.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ttgo-t-oi-plus.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ttgo-t-oi-plus.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ttgo-t-oi-plus.menu.CPUFreq.160=160MHz (WiFi) -ttgo-t-oi-plus.menu.CPUFreq.160.build.f_cpu=160000000L -ttgo-t-oi-plus.menu.CPUFreq.80=80MHz (WiFi) -ttgo-t-oi-plus.menu.CPUFreq.80.build.f_cpu=80000000L -ttgo-t-oi-plus.menu.CPUFreq.40=40MHz -ttgo-t-oi-plus.menu.CPUFreq.40.build.f_cpu=40000000L -ttgo-t-oi-plus.menu.CPUFreq.20=20MHz -ttgo-t-oi-plus.menu.CPUFreq.20.build.f_cpu=20000000L -ttgo-t-oi-plus.menu.CPUFreq.10=10MHz -ttgo-t-oi-plus.menu.CPUFreq.10.build.f_cpu=10000000L - -ttgo-t-oi-plus.menu.FlashMode.qio=QIO -ttgo-t-oi-plus.menu.FlashMode.qio.build.flash_mode=dio -ttgo-t-oi-plus.menu.FlashMode.qio.build.boot=qio -ttgo-t-oi-plus.menu.FlashMode.dio=DIO -ttgo-t-oi-plus.menu.FlashMode.dio.build.flash_mode=dio -ttgo-t-oi-plus.menu.FlashMode.dio.build.boot=dio - -ttgo-t-oi-plus.menu.FlashFreq.80=80MHz -ttgo-t-oi-plus.menu.FlashFreq.80.build.flash_freq=80m -ttgo-t-oi-plus.menu.FlashFreq.40=40MHz -ttgo-t-oi-plus.menu.FlashFreq.40.build.flash_freq=40m - -ttgo-t-oi-plus.menu.FlashSize.4M=4MB (32Mb) -ttgo-t-oi-plus.menu.FlashSize.4M.build.flash_size=4MB - -ttgo-t-oi-plus.menu.UploadSpeed.921600=921600 -ttgo-t-oi-plus.menu.UploadSpeed.921600.upload.speed=921600 -ttgo-t-oi-plus.menu.UploadSpeed.115200=115200 -ttgo-t-oi-plus.menu.UploadSpeed.115200.upload.speed=115200 -ttgo-t-oi-plus.menu.UploadSpeed.256000.windows=256000 -ttgo-t-oi-plus.menu.UploadSpeed.256000.upload.speed=256000 -ttgo-t-oi-plus.menu.UploadSpeed.230400.windows.upload.speed=256000 -ttgo-t-oi-plus.menu.UploadSpeed.230400=230400 -ttgo-t-oi-plus.menu.UploadSpeed.230400.upload.speed=230400 -ttgo-t-oi-plus.menu.UploadSpeed.460800.linux=460800 -ttgo-t-oi-plus.menu.UploadSpeed.460800.macosx=460800 -ttgo-t-oi-plus.menu.UploadSpeed.460800.upload.speed=460800 -ttgo-t-oi-plus.menu.UploadSpeed.512000.windows=512000 -ttgo-t-oi-plus.menu.UploadSpeed.512000.upload.speed=512000 - -ttgo-t-oi-plus.menu.DebugLevel.none=None -ttgo-t-oi-plus.menu.DebugLevel.none.build.code_debug=0 -ttgo-t-oi-plus.menu.DebugLevel.error=Error -ttgo-t-oi-plus.menu.DebugLevel.error.build.code_debug=1 -ttgo-t-oi-plus.menu.DebugLevel.warn=Warn -ttgo-t-oi-plus.menu.DebugLevel.warn.build.code_debug=2 -ttgo-t-oi-plus.menu.DebugLevel.info=Info -ttgo-t-oi-plus.menu.DebugLevel.info.build.code_debug=3 -ttgo-t-oi-plus.menu.DebugLevel.debug=Debug -ttgo-t-oi-plus.menu.DebugLevel.debug.build.code_debug=4 -ttgo-t-oi-plus.menu.DebugLevel.verbose=Verbose -ttgo-t-oi-plus.menu.DebugLevel.verbose.build.code_debug=5 - -ttgo-t-oi-plus.menu.EraseFlash.none=Disabled -ttgo-t-oi-plus.menu.EraseFlash.none.upload.erase_cmd= -ttgo-t-oi-plus.menu.EraseFlash.all=Enabled -ttgo-t-oi-plus.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -cw02.name=XinaBox CW02 - -cw02.bootloader.tool=esptool_py -cw02.bootloader.tool.default=esptool_py - -cw02.upload.tool=esptool_py -cw02.upload.tool.default=esptool_py -cw02.upload.tool.network=esp_ota - -cw02.upload.maximum_size=1310720 -cw02.upload.maximum_data_size=294912 -cw02.upload.flags= -cw02.upload.extra_flags= - -cw02.serial.disableDTR=true -cw02.serial.disableRTS=true - -cw02.build.tarch=xtensa -cw02.build.bootloader_addr=0x1000 -cw02.build.target=esp32 -cw02.build.mcu=esp32 -cw02.build.core=esp32 -cw02.build.variant=xinabox -cw02.build.board=ESP32_DEV - -cw02.build.f_cpu=240000000L -cw02.build.flash_size=4MB -cw02.build.flash_freq=40m -cw02.build.flash_mode=dio -cw02.build.boot=dio -cw02.build.partitions=default - -cw02.menu.FlashMode.qio=QIO -cw02.menu.FlashMode.qio.build.flash_mode=dio -cw02.menu.FlashMode.qio.build.boot=qio -cw02.menu.FlashMode.dio=DIO -cw02.menu.FlashMode.dio.build.flash_mode=dio -cw02.menu.FlashMode.dio.build.boot=dio - -cw02.menu.FlashFreq.80=80MHz -cw02.menu.FlashFreq.80.build.flash_freq=80m -cw02.menu.FlashFreq.40=40MHz -cw02.menu.FlashFreq.40.build.flash_freq=40m - -cw02.menu.FlashSize.4M=4MB (32Mb) -cw02.menu.FlashSize.4M.build.flash_size=4MB -cw02.menu.FlashSize.2M=2MB (16Mb) -cw02.menu.FlashSize.2M.build.flash_size=2MB -cw02.menu.FlashSize.2M.build.partitions=minimal - -cw02.menu.UploadSpeed.921600=921600 -cw02.menu.UploadSpeed.921600.upload.speed=921600 -cw02.menu.UploadSpeed.115200=115200 -cw02.menu.UploadSpeed.115200.upload.speed=115200 -cw02.menu.UploadSpeed.256000.windows=256000 -cw02.menu.UploadSpeed.256000.upload.speed=256000 -cw02.menu.UploadSpeed.230400.windows.upload.speed=256000 -cw02.menu.UploadSpeed.230400=230400 -cw02.menu.UploadSpeed.230400.upload.speed=230400 -cw02.menu.UploadSpeed.460800.linux=460800 -cw02.menu.UploadSpeed.460800.macosx=460800 -cw02.menu.UploadSpeed.460800.upload.speed=460800 -cw02.menu.UploadSpeed.512000.windows=512000 -cw02.menu.UploadSpeed.512000.upload.speed=512000 - -cw02.menu.DebugLevel.none=None -cw02.menu.DebugLevel.none.build.code_debug=0 -cw02.menu.DebugLevel.error=Error -cw02.menu.DebugLevel.error.build.code_debug=1 -cw02.menu.DebugLevel.warn=Warn -cw02.menu.DebugLevel.warn.build.code_debug=2 -cw02.menu.DebugLevel.info=Info -cw02.menu.DebugLevel.info.build.code_debug=3 -cw02.menu.DebugLevel.debug=Debug -cw02.menu.DebugLevel.debug.build.code_debug=4 -cw02.menu.DebugLevel.verbose=Verbose -cw02.menu.DebugLevel.verbose.build.code_debug=5 - -cw02.menu.EraseFlash.none=Disabled -cw02.menu.EraseFlash.none.upload.erase_cmd= -cw02.menu.EraseFlash.all=Enabled -cw02.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32thing.name=SparkFun ESP32 Thing - -esp32thing.bootloader.tool=esptool_py -esp32thing.bootloader.tool.default=esptool_py - -esp32thing.upload.tool=esptool_py -esp32thing.upload.tool.default=esptool_py -esp32thing.upload.tool.network=esp_ota - -esp32thing.upload.maximum_size=1310720 -esp32thing.upload.maximum_data_size=327680 -esp32thing.upload.flags= -esp32thing.upload.extra_flags= - -esp32thing.serial.disableDTR=true -esp32thing.serial.disableRTS=true - -esp32thing.build.tarch=xtensa -esp32thing.build.bootloader_addr=0x1000 -esp32thing.build.target=esp32 -esp32thing.build.mcu=esp32 -esp32thing.build.core=esp32 -esp32thing.build.variant=esp32thing -esp32thing.build.board=ESP32_THING - -esp32thing.build.f_cpu=240000000L -esp32thing.build.flash_mode=dio -esp32thing.build.flash_size=4MB -esp32thing.build.boot=dio -esp32thing.build.partitions=default -esp32thing.build.defines= - -esp32thing.menu.FlashFreq.80=80MHz -esp32thing.menu.FlashFreq.80.build.flash_freq=80m -esp32thing.menu.FlashFreq.40=40MHz -esp32thing.menu.FlashFreq.40.build.flash_freq=40m - -esp32thing.menu.PartitionScheme.default=Default -esp32thing.menu.PartitionScheme.default.build.partitions=default -esp32thing.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32thing.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32thing.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32thing.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32thing.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32thing.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32thing.menu.UploadSpeed.921600=921600 -esp32thing.menu.UploadSpeed.921600.upload.speed=921600 -esp32thing.menu.UploadSpeed.115200=115200 -esp32thing.menu.UploadSpeed.115200.upload.speed=115200 -esp32thing.menu.UploadSpeed.256000.windows=256000 -esp32thing.menu.UploadSpeed.256000.upload.speed=256000 -esp32thing.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32thing.menu.UploadSpeed.230400=230400 -esp32thing.menu.UploadSpeed.230400.upload.speed=230400 -esp32thing.menu.UploadSpeed.460800.linux=460800 -esp32thing.menu.UploadSpeed.460800.macosx=460800 -esp32thing.menu.UploadSpeed.460800.upload.speed=460800 -esp32thing.menu.UploadSpeed.512000.windows=512000 -esp32thing.menu.UploadSpeed.512000.upload.speed=512000 - -esp32thing.menu.DebugLevel.none=None -esp32thing.menu.DebugLevel.none.build.code_debug=0 -esp32thing.menu.DebugLevel.error=Error -esp32thing.menu.DebugLevel.error.build.code_debug=1 -esp32thing.menu.DebugLevel.warn=Warn -esp32thing.menu.DebugLevel.warn.build.code_debug=2 -esp32thing.menu.DebugLevel.info=Info -esp32thing.menu.DebugLevel.info.build.code_debug=3 -esp32thing.menu.DebugLevel.debug=Debug -esp32thing.menu.DebugLevel.debug.build.code_debug=4 -esp32thing.menu.DebugLevel.verbose=Verbose -esp32thing.menu.DebugLevel.verbose.build.code_debug=5 - -esp32thing.menu.EraseFlash.none=Disabled -esp32thing.menu.EraseFlash.none.upload.erase_cmd= -esp32thing.menu.EraseFlash.all=Enabled -esp32thing.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32thing_plus.name=SparkFun ESP32 Thing Plus - -esp32thing_plus.bootloader.tool=esptool_py -esp32thing_plus.bootloader.tool.default=esptool_py - -esp32thing_plus.upload.tool=esptool_py -esp32thing_plus.upload.tool.default=esptool_py -esp32thing_plus.upload.tool.network=esp_ota - -esp32thing_plus.upload.maximum_size=1310720 -esp32thing_plus.upload.maximum_data_size=327680 -esp32thing_plus.upload.wait_for_upload_port=true -esp32thing_plus.upload.flags= -esp32thing_plus.upload.extra_flags= - -esp32thing_plus.serial.disableDTR=true -esp32thing_plus.serial.disableRTS=true - -esp32thing_plus.build.tarch=xtensa -esp32thing_plus.build.bootloader_addr=0x1000 -esp32thing_plus.build.target=esp32 -esp32thing_plus.build.mcu=esp32 -esp32thing_plus.build.core=esp32 -esp32thing_plus.build.variant=esp32thing_plus -esp32thing_plus.build.board=ESP32_THING_PLUS - -esp32thing_plus.build.f_cpu=240000000L -esp32thing_plus.build.flash_mode=dio -esp32thing_plus.build.flash_size=16MB -esp32thing_plus.build.boot=dio -esp32thing_plus.build.partitions=default -esp32thing_plus.build.defines= - -esp32thing_plus.menu.FlashFreq.80=80MHz -esp32thing_plus.menu.FlashFreq.80.build.flash_freq=80m -esp32thing_plus.menu.FlashFreq.40=40MHz -esp32thing_plus.menu.FlashFreq.40.build.flash_freq=40m - -esp32thing_plus.menu.PartitionScheme.default=Default (6.25MB APP/OTA/3.43MB SPIFFS) -esp32thing_plus.menu.PartitionScheme.default.build.partitions=default_16MB -esp32thing_plus.menu.PartitionScheme.default.upload.maximum_size=6553600 -esp32thing_plus.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/OTA/6.93MB SPIFFS) -esp32thing_plus.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -esp32thing_plus.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 - -esp32thing_plus.menu.UploadSpeed.921600=921600 -esp32thing_plus.menu.UploadSpeed.921600.upload.speed=921600 -esp32thing_plus.menu.UploadSpeed.115200=115200 -esp32thing_plus.menu.UploadSpeed.115200.upload.speed=115200 -esp32thing_plus.menu.UploadSpeed.256000.windows=256000 -esp32thing_plus.menu.UploadSpeed.256000.upload.speed=256000 -esp32thing_plus.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32thing_plus.menu.UploadSpeed.230400=230400 -esp32thing_plus.menu.UploadSpeed.230400.upload.speed=230400 -esp32thing_plus.menu.UploadSpeed.460800.linux=460800 -esp32thing_plus.menu.UploadSpeed.460800.macosx=460800 -esp32thing_plus.menu.UploadSpeed.460800.upload.speed=460800 -esp32thing_plus.menu.UploadSpeed.512000.windows=512000 -esp32thing_plus.menu.UploadSpeed.512000.upload.speed=512000 - -esp32thing_plus.menu.DebugLevel.none=None -esp32thing_plus.menu.DebugLevel.none.build.code_debug=0 -esp32thing_plus.menu.DebugLevel.error=Error -esp32thing_plus.menu.DebugLevel.error.build.code_debug=1 -esp32thing_plus.menu.DebugLevel.warn=Warn -esp32thing_plus.menu.DebugLevel.warn.build.code_debug=2 -esp32thing_plus.menu.DebugLevel.info=Info -esp32thing_plus.menu.DebugLevel.info.build.code_debug=3 -esp32thing_plus.menu.DebugLevel.debug=Debug -esp32thing_plus.menu.DebugLevel.debug.build.code_debug=4 -esp32thing_plus.menu.DebugLevel.verbose=Verbose -esp32thing_plus.menu.DebugLevel.verbose.build.code_debug=5 - -esp32thing_plus.menu.EraseFlash.none=Disabled -esp32thing_plus.menu.EraseFlash.none.upload.erase_cmd= -esp32thing_plus.menu.EraseFlash.all=Enabled -esp32thing_plus.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32thing_plus_c.name=SparkFun ESP32 Thing Plus C - -esp32thing_plus_c.bootloader.tool=esptool_py -esp32thing_plus_c.bootloader.tool.default=esptool_py - -esp32thing_plus_c.upload.tool=esptool_py -esp32thing_plus_c.upload.tool.default=esptool_py -esp32thing_plus_c.upload.tool.network=esp_ota - -esp32thing_plus_c.upload.maximum_size=1310720 -esp32thing_plus_c.upload.maximum_data_size=327680 -esp32thing_plus_c.upload.wait_for_upload_port=true -esp32thing_plus_c.upload.flags= -esp32thing_plus_c.upload.extra_flags= - -esp32thing_plus_c.serial.disableDTR=true -esp32thing_plus_c.serial.disableRTS=true - -esp32thing_plus_c.build.tarch=xtensa -esp32thing_plus_c.build.bootloader_addr=0x1000 -esp32thing_plus_c.build.target=esp32 -esp32thing_plus_c.build.mcu=esp32 -esp32thing_plus_c.build.core=esp32 -esp32thing_plus_c.build.variant=esp32thing_plus_c -esp32thing_plus_c.build.board=ESP32_THING_PLUS_C - -esp32thing_plus_c.build.f_cpu=240000000L -esp32thing_plus_c.build.flash_mode=dio -esp32thing_plus_c.build.flash_size=16MB -esp32thing_plus_c.build.boot=dio -esp32thing_plus_c.build.partitions=default -esp32thing_plus_c.build.defines= - -esp32thing_plus_c.menu.FlashFreq.80=80MHz -esp32thing_plus_c.menu.FlashFreq.80.build.flash_freq=80m -esp32thing_plus_c.menu.FlashFreq.40=40MHz -esp32thing_plus_c.menu.FlashFreq.40.build.flash_freq=40m - -esp32thing_plus_c.menu.PartitionScheme.default=Default (6.25MB APP/OTA/3.43MB SPIFFS) -esp32thing_plus_c.menu.PartitionScheme.default.build.partitions=default_16MB -esp32thing_plus_c.menu.PartitionScheme.default.upload.maximum_size=6553600 -esp32thing_plus_c.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/OTA/6.93MB SPIFFS) -esp32thing_plus_c.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -esp32thing_plus_c.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 - -esp32thing_plus_c.menu.UploadSpeed.921600=921600 -esp32thing_plus_c.menu.UploadSpeed.921600.upload.speed=921600 -esp32thing_plus_c.menu.UploadSpeed.115200=115200 -esp32thing_plus_c.menu.UploadSpeed.115200.upload.speed=115200 -esp32thing_plus_c.menu.UploadSpeed.256000.windows=256000 -esp32thing_plus_c.menu.UploadSpeed.256000.upload.speed=256000 -esp32thing_plus_c.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32thing_plus_c.menu.UploadSpeed.230400=230400 -esp32thing_plus_c.menu.UploadSpeed.230400.upload.speed=230400 -esp32thing_plus_c.menu.UploadSpeed.460800.linux=460800 -esp32thing_plus_c.menu.UploadSpeed.460800.macosx=460800 -esp32thing_plus_c.menu.UploadSpeed.460800.upload.speed=460800 -esp32thing_plus_c.menu.UploadSpeed.512000.windows=512000 -esp32thing_plus_c.menu.UploadSpeed.512000.upload.speed=512000 - -esp32thing_plus_c.menu.DebugLevel.none=None -esp32thing_plus_c.menu.DebugLevel.none.build.code_debug=0 -esp32thing_plus_c.menu.DebugLevel.error=Error -esp32thing_plus_c.menu.DebugLevel.error.build.code_debug=1 -esp32thing_plus_c.menu.DebugLevel.warn=Warn -esp32thing_plus_c.menu.DebugLevel.warn.build.code_debug=2 -esp32thing_plus_c.menu.DebugLevel.info=Info -esp32thing_plus_c.menu.DebugLevel.info.build.code_debug=3 -esp32thing_plus_c.menu.DebugLevel.debug=Debug -esp32thing_plus_c.menu.DebugLevel.debug.build.code_debug=4 -esp32thing_plus_c.menu.DebugLevel.verbose=Verbose -esp32thing_plus_c.menu.DebugLevel.verbose.build.code_debug=5 - -esp32thing_plus_c.menu.EraseFlash.none=Disabled -esp32thing_plus_c.menu.EraseFlash.none.upload.erase_cmd= -esp32thing_plus_c.menu.EraseFlash.all=Enabled -esp32thing_plus_c.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sparkfun_esp32s2_thing_plus.name=SparkFun ESP32-S2 Thing Plus -sparkfun_esp32s2_thing_plus.vid.0=0x1B4F -sparkfun_esp32s2_thing_plus.pid.0=0x0027 - -sparkfun_esp32s2_thing_plus.bootloader.tool=esptool_py -sparkfun_esp32s2_thing_plus.bootloader.tool.default=esptool_py - -sparkfun_esp32s2_thing_plus.upload.tool=esptool_py -sparkfun_esp32s2_thing_plus.upload.tool.default=esptool_py -sparkfun_esp32s2_thing_plus.upload.tool.network=esp_ota - -sparkfun_esp32s2_thing_plus.upload.maximum_size=1310720 -sparkfun_esp32s2_thing_plus.upload.maximum_data_size=327680 -sparkfun_esp32s2_thing_plus.upload.flags= -sparkfun_esp32s2_thing_plus.upload.extra_flags= -sparkfun_esp32s2_thing_plus.upload.use_1200bps_touch=true -sparkfun_esp32s2_thing_plus.upload.wait_for_upload_port=true - -sparkfun_esp32s2_thing_plus.serial.disableDTR=false -sparkfun_esp32s2_thing_plus.serial.disableRTS=false - -sparkfun_esp32s2_thing_plus.build.tarch=xtensa -sparkfun_esp32s2_thing_plus.build.bootloader_addr=0x1000 -sparkfun_esp32s2_thing_plus.build.target=esp32s2 -sparkfun_esp32s2_thing_plus.build.mcu=esp32s2 -sparkfun_esp32s2_thing_plus.build.core=esp32 -sparkfun_esp32s2_thing_plus.build.variant=esp32s2thing_plus -sparkfun_esp32s2_thing_plus.build.board=ESP32S2_THING_PLUS - -sparkfun_esp32s2_thing_plus.build.cdc_on_boot=0 -sparkfun_esp32s2_thing_plus.build.msc_on_boot=0 -sparkfun_esp32s2_thing_plus.build.dfu_on_boot=0 -sparkfun_esp32s2_thing_plus.build.f_cpu=240000000L -sparkfun_esp32s2_thing_plus.build.flash_size=4MB -sparkfun_esp32s2_thing_plus.build.flash_freq=80m -sparkfun_esp32s2_thing_plus.build.flash_mode=qio -sparkfun_esp32s2_thing_plus.build.boot=qio -sparkfun_esp32s2_thing_plus.build.partitions=default -sparkfun_esp32s2_thing_plus.build.defines= - -sparkfun_esp32s2_thing_plus.menu.CDCOnBoot.default=Disabled -sparkfun_esp32s2_thing_plus.menu.CDCOnBoot.default.build.cdc_on_boot=0 -sparkfun_esp32s2_thing_plus.menu.CDCOnBoot.cdc=Enabled -sparkfun_esp32s2_thing_plus.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -sparkfun_esp32s2_thing_plus.menu.MSCOnBoot.default=Disabled -sparkfun_esp32s2_thing_plus.menu.MSCOnBoot.default.build.msc_on_boot=0 -sparkfun_esp32s2_thing_plus.menu.MSCOnBoot.msc=Enabled -sparkfun_esp32s2_thing_plus.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -sparkfun_esp32s2_thing_plus.menu.DFUOnBoot.default=Disabled -sparkfun_esp32s2_thing_plus.menu.DFUOnBoot.default.build.dfu_on_boot=0 -sparkfun_esp32s2_thing_plus.menu.DFUOnBoot.dfu=Enabled -sparkfun_esp32s2_thing_plus.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -sparkfun_esp32s2_thing_plus.menu.PSRAM.disabled=Disabled -sparkfun_esp32s2_thing_plus.menu.PSRAM.disabled.build.defines= -sparkfun_esp32s2_thing_plus.menu.PSRAM.enabled=Enabled -sparkfun_esp32s2_thing_plus.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.default.build.partitions=default -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.huge_app.build.partitions=huge_app -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.fatflash.build.partitions=ffat -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -sparkfun_esp32s2_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -sparkfun_esp32s2_thing_plus.menu.CPUFreq.240=240MHz (WiFi) -sparkfun_esp32s2_thing_plus.menu.CPUFreq.240.build.f_cpu=240000000L -sparkfun_esp32s2_thing_plus.menu.CPUFreq.160=160MHz (WiFi) -sparkfun_esp32s2_thing_plus.menu.CPUFreq.160.build.f_cpu=160000000L -sparkfun_esp32s2_thing_plus.menu.CPUFreq.80=80MHz (WiFi) -sparkfun_esp32s2_thing_plus.menu.CPUFreq.80.build.f_cpu=80000000L -sparkfun_esp32s2_thing_plus.menu.CPUFreq.40=40MHz -sparkfun_esp32s2_thing_plus.menu.CPUFreq.40.build.f_cpu=40000000L -sparkfun_esp32s2_thing_plus.menu.CPUFreq.20=20MHz -sparkfun_esp32s2_thing_plus.menu.CPUFreq.20.build.f_cpu=20000000L -sparkfun_esp32s2_thing_plus.menu.CPUFreq.10=10MHz -sparkfun_esp32s2_thing_plus.menu.CPUFreq.10.build.f_cpu=10000000L - -sparkfun_esp32s2_thing_plus.menu.FlashMode.qio=QIO -sparkfun_esp32s2_thing_plus.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_esp32s2_thing_plus.menu.FlashMode.qio.build.boot=qio -sparkfun_esp32s2_thing_plus.menu.FlashMode.dio=DIO -sparkfun_esp32s2_thing_plus.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_esp32s2_thing_plus.menu.FlashMode.dio.build.boot=dio - -sparkfun_esp32s2_thing_plus.menu.FlashFreq.80=80MHz -sparkfun_esp32s2_thing_plus.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_esp32s2_thing_plus.menu.FlashFreq.40=40MHz -sparkfun_esp32s2_thing_plus.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_esp32s2_thing_plus.menu.FlashSize.4M=4MB (32Mb) -sparkfun_esp32s2_thing_plus.menu.FlashSize.4M.build.flash_size=4MB -sparkfun_esp32s2_thing_plus.menu.FlashSize.8M=8MB (64Mb) -sparkfun_esp32s2_thing_plus.menu.FlashSize.8M.build.flash_size=8MB -sparkfun_esp32s2_thing_plus.menu.FlashSize.8M.build.partitions=default_8MB -sparkfun_esp32s2_thing_plus.menu.FlashSize.2M=2MB (16Mb) -sparkfun_esp32s2_thing_plus.menu.FlashSize.2M.build.flash_size=2MB -sparkfun_esp32s2_thing_plus.menu.FlashSize.2M.build.partitions=minimal -sparkfun_esp32s2_thing_plus.menu.FlashSize.16M=16MB (128Mb) -sparkfun_esp32s2_thing_plus.menu.FlashSize.16M.build.flash_size=16MB - -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.921600=921600 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.115200=115200 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.256000.windows=256000 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.230400=230400 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.460800.linux=460800 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.460800.macosx=460800 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.512000.windows=512000 -sparkfun_esp32s2_thing_plus.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_esp32s2_thing_plus.menu.DebugLevel.none=None -sparkfun_esp32s2_thing_plus.menu.DebugLevel.none.build.code_debug=0 -sparkfun_esp32s2_thing_plus.menu.DebugLevel.error=Error -sparkfun_esp32s2_thing_plus.menu.DebugLevel.error.build.code_debug=1 -sparkfun_esp32s2_thing_plus.menu.DebugLevel.warn=Warn -sparkfun_esp32s2_thing_plus.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_esp32s2_thing_plus.menu.DebugLevel.info=Info -sparkfun_esp32s2_thing_plus.menu.DebugLevel.info.build.code_debug=3 -sparkfun_esp32s2_thing_plus.menu.DebugLevel.debug=Debug -sparkfun_esp32s2_thing_plus.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_esp32s2_thing_plus.menu.DebugLevel.verbose=Verbose -sparkfun_esp32s2_thing_plus.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_esp32s2_thing_plus.menu.EraseFlash.none=Disabled -sparkfun_esp32s2_thing_plus.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_esp32s2_thing_plus.menu.EraseFlash.all=Enabled -sparkfun_esp32s2_thing_plus.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sparkfun_esp32c6_thing_plus.name=SparkFun ESP32-C6 Thing Plus -sparkfun_esp32c6_thing_plus.vid.0=0x303a -sparkfun_esp32c6_thing_plus.pid.0=0x1001 - -sparkfun_esp32c6_thing_plus.bootloader.tool=esptool_py -sparkfun_esp32c6_thing_plus.bootloader.tool.default=esptool_py - -sparkfun_esp32c6_thing_plus.upload.tool=esptool_py -sparkfun_esp32c6_thing_plus.upload.tool.default=esptool_py -sparkfun_esp32c6_thing_plus.upload.tool.network=esp_ota - -sparkfun_esp32c6_thing_plus.upload.maximum_size=1310720 -sparkfun_esp32c6_thing_plus.upload.maximum_data_size=327680 -sparkfun_esp32c6_thing_plus.upload.flags= -sparkfun_esp32c6_thing_plus.upload.extra_flags= -sparkfun_esp32c6_thing_plus.upload.use_1200bps_touch=false -sparkfun_esp32c6_thing_plus.upload.wait_for_upload_port=false - -sparkfun_esp32c6_thing_plus.serial.disableDTR=false -sparkfun_esp32c6_thing_plus.serial.disableRTS=false - -sparkfun_esp32c6_thing_plus.build.tarch=riscv32 -sparkfun_esp32c6_thing_plus.build.target=esp -sparkfun_esp32c6_thing_plus.build.mcu=esp32c6 -sparkfun_esp32c6_thing_plus.build.core=esp32 -sparkfun_esp32c6_thing_plus.build.variant=sparkfun_esp32c6_thing_plus -sparkfun_esp32c6_thing_plus.build.board=ESP32C6_THING_PLUS -sparkfun_esp32c6_thing_plus.build.bootloader_addr=0x0 - -sparkfun_esp32c6_thing_plus.build.cdc_on_boot=0 -sparkfun_esp32c6_thing_plus.build.f_cpu=160000000L -sparkfun_esp32c6_thing_plus.build.flash_size=4MB -sparkfun_esp32c6_thing_plus.build.flash_freq=80m -sparkfun_esp32c6_thing_plus.build.flash_mode=qio -sparkfun_esp32c6_thing_plus.build.boot=qio -sparkfun_esp32c6_thing_plus.build.partitions=default -sparkfun_esp32c6_thing_plus.build.defines= - -## IDE 2.0 Seems to not update the value -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.default=Disabled -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.default.build.copy_jtag_files=0 -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.builtin=Integrated USB JTAG -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.external=FTDI Adapter -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.external.build.copy_jtag_files=1 -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.bridge=ESP USB Bridge -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -sparkfun_esp32c6_thing_plus.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -sparkfun_esp32c6_thing_plus.menu.CDCOnBoot.default=Enabled -sparkfun_esp32c6_thing_plus.menu.CDCOnBoot.default.build.cdc_on_boot=1 -sparkfun_esp32c6_thing_plus.menu.CDCOnBoot.cdc=Disabled -sparkfun_esp32c6_thing_plus.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.default.build.partitions=default -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.huge_app.build.partitions=huge_app -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.fatflash.build.partitions=ffat -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.rainmaker=RainMaker -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.custom=Custom -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.custom.build.partitions= -sparkfun_esp32c6_thing_plus.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -sparkfun_esp32c6_thing_plus.menu.CPUFreq.160=160MHz (WiFi) -sparkfun_esp32c6_thing_plus.menu.CPUFreq.160.build.f_cpu=160000000L -sparkfun_esp32c6_thing_plus.menu.CPUFreq.80=80MHz (WiFi) -sparkfun_esp32c6_thing_plus.menu.CPUFreq.80.build.f_cpu=80000000L -sparkfun_esp32c6_thing_plus.menu.CPUFreq.40=40MHz -sparkfun_esp32c6_thing_plus.menu.CPUFreq.40.build.f_cpu=40000000L -sparkfun_esp32c6_thing_plus.menu.CPUFreq.20=20MHz -sparkfun_esp32c6_thing_plus.menu.CPUFreq.20.build.f_cpu=20000000L -sparkfun_esp32c6_thing_plus.menu.CPUFreq.10=10MHz -sparkfun_esp32c6_thing_plus.menu.CPUFreq.10.build.f_cpu=10000000L - -sparkfun_esp32c6_thing_plus.menu.FlashMode.qio=QIO -sparkfun_esp32c6_thing_plus.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_esp32c6_thing_plus.menu.FlashMode.qio.build.boot=qio -sparkfun_esp32c6_thing_plus.menu.FlashMode.dio=DIO -sparkfun_esp32c6_thing_plus.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_esp32c6_thing_plus.menu.FlashMode.dio.build.boot=dio - -sparkfun_esp32c6_thing_plus.menu.FlashFreq.80=80MHz -sparkfun_esp32c6_thing_plus.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_esp32c6_thing_plus.menu.FlashFreq.40=40MHz -sparkfun_esp32c6_thing_plus.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_esp32c6_thing_plus.menu.FlashSize.4M=4MB (32Mb) -sparkfun_esp32c6_thing_plus.menu.FlashSize.4M.build.flash_size=4MB -sparkfun_esp32c6_thing_plus.menu.FlashSize.8M=8MB (64Mb) -sparkfun_esp32c6_thing_plus.menu.FlashSize.8M.build.flash_size=8MB -sparkfun_esp32c6_thing_plus.menu.FlashSize.8M.build.partitions=default_8MB -sparkfun_esp32c6_thing_plus.menu.FlashSize.2M=2MB (16Mb) -sparkfun_esp32c6_thing_plus.menu.FlashSize.2M.build.flash_size=2MB -sparkfun_esp32c6_thing_plus.menu.FlashSize.2M.build.partitions=minimal -sparkfun_esp32c6_thing_plus.menu.FlashSize.16M=16MB (128Mb) -sparkfun_esp32c6_thing_plus.menu.FlashSize.16M.build.flash_size=16MB - -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.921600=921600 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.115200=115200 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.256000.windows=256000 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.230400=230400 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.460800.linux=460800 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.460800.macosx=460800 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.512000.windows=512000 -sparkfun_esp32c6_thing_plus.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_esp32c6_thing_plus.menu.DebugLevel.none=None -sparkfun_esp32c6_thing_plus.menu.DebugLevel.none.build.code_debug=0 -sparkfun_esp32c6_thing_plus.menu.DebugLevel.error=Error -sparkfun_esp32c6_thing_plus.menu.DebugLevel.error.build.code_debug=1 -sparkfun_esp32c6_thing_plus.menu.DebugLevel.warn=Warn -sparkfun_esp32c6_thing_plus.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_esp32c6_thing_plus.menu.DebugLevel.info=Info -sparkfun_esp32c6_thing_plus.menu.DebugLevel.info.build.code_debug=3 -sparkfun_esp32c6_thing_plus.menu.DebugLevel.debug=Debug -sparkfun_esp32c6_thing_plus.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_esp32c6_thing_plus.menu.DebugLevel.verbose=Verbose -sparkfun_esp32c6_thing_plus.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_esp32c6_thing_plus.menu.EraseFlash.none=Disabled -sparkfun_esp32c6_thing_plus.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_esp32c6_thing_plus.menu.EraseFlash.all=Enabled -sparkfun_esp32c6_thing_plus.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32micromod.name=SparkFun ESP32 MicroMod - -esp32micromod.bootloader.tool=esptool_py -esp32micromod.bootloader.tool.default=esptool_py - -esp32micromod.upload.tool=esptool_py -esp32micromod.upload.tool.default=esptool_py -esp32micromod.upload.tool.network=esp_ota - -esp32micromod.upload.maximum_size=1310720 -esp32micromod.upload.maximum_data_size=327680 -esp32micromod.upload.wait_for_upload_port=true -esp32micromod.upload.flags= -esp32micromod.upload.extra_flags= - -esp32micromod.serial.disableDTR=true -esp32micromod.serial.disableRTS=true - -esp32micromod.build.tarch=xtensa -esp32micromod.build.bootloader_addr=0x1000 -esp32micromod.build.target=esp32 -esp32micromod.build.mcu=esp32 -esp32micromod.build.core=esp32 -esp32micromod.build.variant=esp32micromod -esp32micromod.build.board=ESP32_MICROMOD - -esp32micromod.build.f_cpu=240000000L -esp32micromod.build.flash_size=4MB -esp32micromod.build.flash_freq=40m -esp32micromod.build.flash_mode=dio -esp32micromod.build.boot=dio -esp32micromod.build.partitions=default -esp32micromod.build.defines= - -esp32micromod.menu.PSRAM.disabled=Disabled -esp32micromod.menu.PSRAM.disabled.build.defines= -esp32micromod.menu.PSRAM.enabled=Enabled -esp32micromod.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue - -esp32micromod.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32micromod.menu.PartitionScheme.default.build.partitions=default -esp32micromod.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32micromod.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32micromod.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32micromod.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32micromod.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32micromod.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32micromod.menu.PartitionScheme.minimal.build.partitions=minimal -esp32micromod.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32micromod.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32micromod.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32micromod.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32micromod.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32micromod.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32micromod.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32micromod.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32micromod.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32micromod.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32micromod.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32micromod.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32micromod.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32micromod.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32micromod.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32micromod.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32micromod.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32micromod.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32micromod.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32micromod.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32micromod.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32micromod.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32micromod.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32micromod.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -esp32micromod.menu.CPUFreq.240=240MHz (WiFi/BT) -esp32micromod.menu.CPUFreq.240.build.f_cpu=240000000L -esp32micromod.menu.CPUFreq.160=160MHz (WiFi/BT) -esp32micromod.menu.CPUFreq.160.build.f_cpu=160000000L -esp32micromod.menu.CPUFreq.80=80MHz (WiFi/BT) -esp32micromod.menu.CPUFreq.80.build.f_cpu=80000000L -esp32micromod.menu.CPUFreq.40=40MHz (40MHz XTAL) -esp32micromod.menu.CPUFreq.40.build.f_cpu=40000000L -esp32micromod.menu.CPUFreq.26=26MHz (26MHz XTAL) -esp32micromod.menu.CPUFreq.26.build.f_cpu=26000000L -esp32micromod.menu.CPUFreq.20=20MHz (40MHz XTAL) -esp32micromod.menu.CPUFreq.20.build.f_cpu=20000000L -esp32micromod.menu.CPUFreq.13=13MHz (26MHz XTAL) -esp32micromod.menu.CPUFreq.13.build.f_cpu=13000000L -esp32micromod.menu.CPUFreq.10=10MHz (40MHz XTAL) -esp32micromod.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32micromod.menu.FlashMode.qio=QIO -esp32micromod.menu.FlashMode.qio.build.flash_mode=dio -esp32micromod.menu.FlashMode.qio.build.boot=qio -esp32micromod.menu.FlashMode.dio=DIO -esp32micromod.menu.FlashMode.dio.build.flash_mode=dio -esp32micromod.menu.FlashMode.dio.build.boot=dio - -esp32micromod.menu.FlashFreq.80=80MHz -esp32micromod.menu.FlashFreq.80.build.flash_freq=80m -esp32micromod.menu.FlashFreq.40=40MHz -esp32micromod.menu.FlashFreq.40.build.flash_freq=40m - -esp32micromod.menu.FlashSize.4M=4MB (32Mb) -esp32micromod.menu.FlashSize.4M.build.flash_size=4MB -esp32micromod.menu.FlashSize.8M=8MB (64Mb) -esp32micromod.menu.FlashSize.8M.build.flash_size=8MB -esp32micromod.menu.FlashSize.8M.build.partitions=default_8MB -esp32micromod.menu.FlashSize.2M=2MB (16Mb) -esp32micromod.menu.FlashSize.2M.build.flash_size=2MB -esp32micromod.menu.FlashSize.2M.build.partitions=minimal -esp32micromod.menu.FlashSize.16M=16MB (128Mb) -esp32micromod.menu.FlashSize.16M.build.flash_size=16MB - -esp32micromod.menu.UploadSpeed.921600=921600 -esp32micromod.menu.UploadSpeed.921600.upload.speed=921600 -esp32micromod.menu.UploadSpeed.115200=115200 -esp32micromod.menu.UploadSpeed.115200.upload.speed=115200 -esp32micromod.menu.UploadSpeed.256000.windows=256000 -esp32micromod.menu.UploadSpeed.256000.upload.speed=256000 -esp32micromod.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32micromod.menu.UploadSpeed.230400=230400 -esp32micromod.menu.UploadSpeed.230400.upload.speed=230400 -esp32micromod.menu.UploadSpeed.460800.linux=460800 -esp32micromod.menu.UploadSpeed.460800.macosx=460800 -esp32micromod.menu.UploadSpeed.460800.upload.speed=460800 -esp32micromod.menu.UploadSpeed.512000.windows=512000 -esp32micromod.menu.UploadSpeed.512000.upload.speed=512000 - -esp32micromod.menu.DebugLevel.none=None -esp32micromod.menu.DebugLevel.none.build.code_debug=0 -esp32micromod.menu.DebugLevel.error=Error -esp32micromod.menu.DebugLevel.error.build.code_debug=1 -esp32micromod.menu.DebugLevel.warn=Warn -esp32micromod.menu.DebugLevel.warn.build.code_debug=2 -esp32micromod.menu.DebugLevel.info=Info -esp32micromod.menu.DebugLevel.info.build.code_debug=3 -esp32micromod.menu.DebugLevel.debug=Debug -esp32micromod.menu.DebugLevel.debug.build.code_debug=4 -esp32micromod.menu.DebugLevel.verbose=Verbose -esp32micromod.menu.DebugLevel.verbose.build.code_debug=5 - -esp32micromod.menu.EraseFlash.none=Disabled -esp32micromod.menu.EraseFlash.none.upload.erase_cmd= -esp32micromod.menu.EraseFlash.all=Enabled -esp32micromod.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sparkfun_lora_gateway_1-channel.name=SparkFun LoRa Gateway 1-Channel - -sparkfun_lora_gateway_1-channel.bootloader.tool=esptool_py -sparkfun_lora_gateway_1-channel.bootloader.tool.default=esptool_py - -sparkfun_lora_gateway_1-channel.upload.tool=esptool_py -sparkfun_lora_gateway_1-channel.upload.tool.default=esptool_py -sparkfun_lora_gateway_1-channel.upload.tool.network=esp_ota - -sparkfun_lora_gateway_1-channel.upload.maximum_size=1310720 -sparkfun_lora_gateway_1-channel.upload.maximum_data_size=294912 -sparkfun_lora_gateway_1-channel.upload.flags= -sparkfun_lora_gateway_1-channel.upload.extra_flags= - -sparkfun_lora_gateway_1-channel.serial.disableDTR=true -sparkfun_lora_gateway_1-channel.serial.disableRTS=true - -sparkfun_lora_gateway_1-channel.build.tarch=xtensa -sparkfun_lora_gateway_1-channel.build.bootloader_addr=0x1000 -sparkfun_lora_gateway_1-channel.build.target=esp32 -sparkfun_lora_gateway_1-channel.build.mcu=esp32 -sparkfun_lora_gateway_1-channel.build.core=esp32 -sparkfun_lora_gateway_1-channel.build.variant=sparkfun_lora_gateway_1-channel -sparkfun_lora_gateway_1-channel.build.board=ESP32_DEV - -sparkfun_lora_gateway_1-channel.build.f_cpu=240000000L -sparkfun_lora_gateway_1-channel.build.flash_size=4MB -sparkfun_lora_gateway_1-channel.build.flash_freq=40m -sparkfun_lora_gateway_1-channel.build.flash_mode=dio -sparkfun_lora_gateway_1-channel.build.boot=dio -sparkfun_lora_gateway_1-channel.build.partitions=default - -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.default=Default -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.default.build.partitions=default -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.no_ota=No OTA (Large APP) -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_lora_gateway_1-channel.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -sparkfun_lora_gateway_1-channel.menu.FlashMode.qio=QIO -sparkfun_lora_gateway_1-channel.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_lora_gateway_1-channel.menu.FlashMode.qio.build.boot=qio -sparkfun_lora_gateway_1-channel.menu.FlashMode.dio=DIO -sparkfun_lora_gateway_1-channel.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_lora_gateway_1-channel.menu.FlashMode.dio.build.boot=dio - -sparkfun_lora_gateway_1-channel.menu.FlashFreq.80=80MHz -sparkfun_lora_gateway_1-channel.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_lora_gateway_1-channel.menu.FlashFreq.40=40MHz -sparkfun_lora_gateway_1-channel.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_lora_gateway_1-channel.menu.FlashSize.4M=4MB (32Mb) -sparkfun_lora_gateway_1-channel.menu.FlashSize.4M.build.flash_size=4MB - -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.921600=921600 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.115200=115200 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.256000.windows=256000 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.230400=230400 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.460800.linux=460800 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.460800.macosx=460800 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.512000.windows=512000 -sparkfun_lora_gateway_1-channel.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_lora_gateway_1-channel.menu.DebugLevel.none=None -sparkfun_lora_gateway_1-channel.menu.DebugLevel.none.build.code_debug=0 -sparkfun_lora_gateway_1-channel.menu.DebugLevel.error=Error -sparkfun_lora_gateway_1-channel.menu.DebugLevel.error.build.code_debug=1 -sparkfun_lora_gateway_1-channel.menu.DebugLevel.warn=Warn -sparkfun_lora_gateway_1-channel.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_lora_gateway_1-channel.menu.DebugLevel.info=Info -sparkfun_lora_gateway_1-channel.menu.DebugLevel.info.build.code_debug=3 -sparkfun_lora_gateway_1-channel.menu.DebugLevel.debug=Debug -sparkfun_lora_gateway_1-channel.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_lora_gateway_1-channel.menu.DebugLevel.verbose=Verbose -sparkfun_lora_gateway_1-channel.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_lora_gateway_1-channel.menu.EraseFlash.none=Disabled -sparkfun_lora_gateway_1-channel.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_lora_gateway_1-channel.menu.EraseFlash.all=Enabled -sparkfun_lora_gateway_1-channel.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sparkfun_esp32_iot_redboard.name=SparkFun ESP32 IoT RedBoard - -sparkfun_esp32_iot_redboard.bootloader.tool=esptool_py -sparkfun_esp32_iot_redboard.bootloader.tool.default=esptool_py - -sparkfun_esp32_iot_redboard.upload.tool=esptool_py -sparkfun_esp32_iot_redboard.upload.tool.default=esptool_py -sparkfun_esp32_iot_redboard.upload.tool.network=esp_ota - -sparkfun_esp32_iot_redboard.upload.maximum_size=1310720 -sparkfun_esp32_iot_redboard.upload.maximum_data_size=327680 -sparkfun_esp32_iot_redboard.upload.flags= -sparkfun_esp32_iot_redboard.upload.extra_flags= - -sparkfun_esp32_iot_redboard.serial.disableDTR=true -sparkfun_esp32_iot_redboard.serial.disableRTS=true - -sparkfun_esp32_iot_redboard.build.tarch=xtensa -sparkfun_esp32_iot_redboard.build.bootloader_addr=0x1000 -sparkfun_esp32_iot_redboard.build.target=esp32 -sparkfun_esp32_iot_redboard.build.mcu=esp32 -sparkfun_esp32_iot_redboard.build.core=esp32 -sparkfun_esp32_iot_redboard.build.variant=sparkfun_esp32_iot_redboard -sparkfun_esp32_iot_redboard.build.board=ESP32_IOT_REDBOARD - -sparkfun_esp32_iot_redboard.build.f_cpu=240000000L -sparkfun_esp32_iot_redboard.build.flash_size=4MB -sparkfun_esp32_iot_redboard.build.flash_freq=40m -sparkfun_esp32_iot_redboard.build.flash_mode=dio -sparkfun_esp32_iot_redboard.build.boot=dio -sparkfun_esp32_iot_redboard.build.partitions=default -sparkfun_esp32_iot_redboard.build.defines= -sparkfun_esp32_iot_redboard.build.loop_core= -sparkfun_esp32_iot_redboard.build.event_core= - -sparkfun_esp32_iot_redboard.menu.PSRAM.disabled=Disabled -sparkfun_esp32_iot_redboard.menu.PSRAM.disabled.build.defines= -sparkfun_esp32_iot_redboard.menu.PSRAM.disabled.build.extra_libs= -sparkfun_esp32_iot_redboard.menu.PSRAM.enabled=Enabled -sparkfun_esp32_iot_redboard.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -sparkfun_esp32_iot_redboard.menu.PSRAM.enabled.build.extra_libs= - -sparkfun_esp32_iot_redboard.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.default.build.partitions=default -sparkfun_esp32_iot_redboard.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sparkfun_esp32_iot_redboard.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -sparkfun_esp32_iot_redboard.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_esp32_iot_redboard.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_esp32_iot_redboard.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sparkfun_esp32_iot_redboard.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.huge_app.build.partitions=huge_app -sparkfun_esp32_iot_redboard.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_esp32_iot_redboard.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.fatflash.build.partitions=ffat -sparkfun_esp32_iot_redboard.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -sparkfun_esp32_iot_redboard.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -sparkfun_esp32_iot_redboard.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -sparkfun_esp32_iot_redboard.menu.PartitionScheme.rainmaker=RainMaker -sparkfun_esp32_iot_redboard.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -sparkfun_esp32_iot_redboard.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -sparkfun_esp32_iot_redboard.menu.CPUFreq.240=240MHz (WiFi/BT) -sparkfun_esp32_iot_redboard.menu.CPUFreq.240.build.f_cpu=240000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.160=160MHz (WiFi/BT) -sparkfun_esp32_iot_redboard.menu.CPUFreq.160.build.f_cpu=160000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.80=80MHz (WiFi/BT) -sparkfun_esp32_iot_redboard.menu.CPUFreq.80.build.f_cpu=80000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.40=40MHz (40MHz XTAL) -sparkfun_esp32_iot_redboard.menu.CPUFreq.40.build.f_cpu=40000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.26=26MHz (26MHz XTAL) -sparkfun_esp32_iot_redboard.menu.CPUFreq.26.build.f_cpu=26000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.20=20MHz (40MHz XTAL) -sparkfun_esp32_iot_redboard.menu.CPUFreq.20.build.f_cpu=20000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.13=13MHz (26MHz XTAL) -sparkfun_esp32_iot_redboard.menu.CPUFreq.13.build.f_cpu=13000000L -sparkfun_esp32_iot_redboard.menu.CPUFreq.10=10MHz (40MHz XTAL) -sparkfun_esp32_iot_redboard.menu.CPUFreq.10.build.f_cpu=10000000L - -sparkfun_esp32_iot_redboard.menu.FlashMode.qio=QIO -sparkfun_esp32_iot_redboard.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_esp32_iot_redboard.menu.FlashMode.qio.build.boot=qio -sparkfun_esp32_iot_redboard.menu.FlashMode.dio=DIO -sparkfun_esp32_iot_redboard.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_esp32_iot_redboard.menu.FlashMode.dio.build.boot=dio - -sparkfun_esp32_iot_redboard.menu.FlashFreq.80=80MHz -sparkfun_esp32_iot_redboard.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_esp32_iot_redboard.menu.FlashFreq.40=40MHz -sparkfun_esp32_iot_redboard.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_esp32_iot_redboard.menu.FlashSize.4M=4MB (32Mb) -sparkfun_esp32_iot_redboard.menu.FlashSize.4M.build.flash_size=4MB -sparkfun_esp32_iot_redboard.menu.FlashSize.8M=8MB (64Mb) -sparkfun_esp32_iot_redboard.menu.FlashSize.8M.build.flash_size=8MB -sparkfun_esp32_iot_redboard.menu.FlashSize.8M.build.partitions=default_8MB -sparkfun_esp32_iot_redboard.menu.FlashSize.2M=2MB (16Mb) -sparkfun_esp32_iot_redboard.menu.FlashSize.2M.build.flash_size=2MB -sparkfun_esp32_iot_redboard.menu.FlashSize.2M.build.partitions=minimal -sparkfun_esp32_iot_redboard.menu.FlashSize.16M=16MB (128Mb) -sparkfun_esp32_iot_redboard.menu.FlashSize.16M.build.flash_size=16MB - -sparkfun_esp32_iot_redboard.menu.UploadSpeed.921600=921600 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.115200=115200 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.256000.windows=256000 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.230400=230400 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.460800.linux=460800 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.460800.macosx=460800 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.512000.windows=512000 -sparkfun_esp32_iot_redboard.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_esp32_iot_redboard.menu.LoopCore.1=Core 1 -sparkfun_esp32_iot_redboard.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -sparkfun_esp32_iot_redboard.menu.LoopCore.0=Core 0 -sparkfun_esp32_iot_redboard.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -sparkfun_esp32_iot_redboard.menu.EventsCore.1=Core 1 -sparkfun_esp32_iot_redboard.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -sparkfun_esp32_iot_redboard.menu.EventsCore.0=Core 0 -sparkfun_esp32_iot_redboard.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -sparkfun_esp32_iot_redboard.menu.DebugLevel.none=None -sparkfun_esp32_iot_redboard.menu.DebugLevel.none.build.code_debug=0 -sparkfun_esp32_iot_redboard.menu.DebugLevel.error=Error -sparkfun_esp32_iot_redboard.menu.DebugLevel.error.build.code_debug=1 -sparkfun_esp32_iot_redboard.menu.DebugLevel.warn=Warn -sparkfun_esp32_iot_redboard.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_esp32_iot_redboard.menu.DebugLevel.info=Info -sparkfun_esp32_iot_redboard.menu.DebugLevel.info.build.code_debug=3 -sparkfun_esp32_iot_redboard.menu.DebugLevel.debug=Debug -sparkfun_esp32_iot_redboard.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_esp32_iot_redboard.menu.DebugLevel.verbose=Verbose -sparkfun_esp32_iot_redboard.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_esp32_iot_redboard.menu.EraseFlash.none=Disabled -sparkfun_esp32_iot_redboard.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_esp32_iot_redboard.menu.EraseFlash.all=Enabled -sparkfun_esp32_iot_redboard.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sparkfun_esp32c6_qwiic_pocket.name=SparkFun ESP32-C6 Qwiic Pocket -sparkfun_esp32c6_qwiic_pocket.vid.0=0x303a -sparkfun_esp32c6_qwiic_pocket.pid.0=0x1001 - -sparkfun_esp32c6_qwiic_pocket.bootloader.tool=esptool_py -sparkfun_esp32c6_qwiic_pocket.bootloader.tool.default=esptool_py - -sparkfun_esp32c6_qwiic_pocket.upload.tool=esptool_py -sparkfun_esp32c6_qwiic_pocket.upload.tool.default=esptool_py -sparkfun_esp32c6_qwiic_pocket.upload.tool.network=esp_ota - -sparkfun_esp32c6_qwiic_pocket.upload.maximum_size=1310720 -sparkfun_esp32c6_qwiic_pocket.upload.maximum_data_size=327680 -sparkfun_esp32c6_qwiic_pocket.upload.flags= -sparkfun_esp32c6_qwiic_pocket.upload.extra_flags= -sparkfun_esp32c6_qwiic_pocket.upload.use_1200bps_touch=false -sparkfun_esp32c6_qwiic_pocket.upload.wait_for_upload_port=false - -sparkfun_esp32c6_qwiic_pocket.serial.disableDTR=false -sparkfun_esp32c6_qwiic_pocket.serial.disableRTS=false - -sparkfun_esp32c6_qwiic_pocket.build.tarch=riscv32 -sparkfun_esp32c6_qwiic_pocket.build.target=esp -sparkfun_esp32c6_qwiic_pocket.build.mcu=esp32c6 -sparkfun_esp32c6_qwiic_pocket.build.core=esp32 -sparkfun_esp32c6_qwiic_pocket.build.variant=sparkfun_esp32c6_qwiic_pocket -sparkfun_esp32c6_qwiic_pocket.build.board=ESP32C6_QWIIC_POCKET -sparkfun_esp32c6_qwiic_pocket.build.bootloader_addr=0x0 - -sparkfun_esp32c6_qwiic_pocket.build.cdc_on_boot=0 -sparkfun_esp32c6_qwiic_pocket.build.f_cpu=160000000L -sparkfun_esp32c6_qwiic_pocket.build.flash_size=4MB -sparkfun_esp32c6_qwiic_pocket.build.flash_freq=80m -sparkfun_esp32c6_qwiic_pocket.build.flash_mode=qio -sparkfun_esp32c6_qwiic_pocket.build.boot=qio -sparkfun_esp32c6_qwiic_pocket.build.partitions=default -sparkfun_esp32c6_qwiic_pocket.build.defines= - -## IDE 2.0 Seems to not update the value -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.default=Disabled -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.default.build.copy_jtag_files=0 -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.builtin=Integrated USB JTAG -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.external=FTDI Adapter -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.external.build.copy_jtag_files=1 -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.bridge=ESP USB Bridge -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -sparkfun_esp32c6_qwiic_pocket.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -sparkfun_esp32c6_qwiic_pocket.menu.CDCOnBoot.default=Enabled -sparkfun_esp32c6_qwiic_pocket.menu.CDCOnBoot.default.build.cdc_on_boot=1 -sparkfun_esp32c6_qwiic_pocket.menu.CDCOnBoot.cdc=Disabled -sparkfun_esp32c6_qwiic_pocket.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.default.build.partitions=default -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.huge_app.build.partitions=huge_app -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.fatflash.build.partitions=ffat -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.rainmaker=RainMaker -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.custom=Custom -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.custom.build.partitions= -sparkfun_esp32c6_qwiic_pocket.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.160=160MHz (WiFi) -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.160.build.f_cpu=160000000L -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.80=80MHz (WiFi) -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.80.build.f_cpu=80000000L -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.40=40MHz -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.40.build.f_cpu=40000000L -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.20=20MHz -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.20.build.f_cpu=20000000L -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.10=10MHz -sparkfun_esp32c6_qwiic_pocket.menu.CPUFreq.10.build.f_cpu=10000000L - -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.qio=QIO -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.qio.build.boot=qio -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.dio=DIO -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_esp32c6_qwiic_pocket.menu.FlashMode.dio.build.boot=dio - -sparkfun_esp32c6_qwiic_pocket.menu.FlashFreq.80=80MHz -sparkfun_esp32c6_qwiic_pocket.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_esp32c6_qwiic_pocket.menu.FlashFreq.40=40MHz -sparkfun_esp32c6_qwiic_pocket.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.4M=4MB (32Mb) -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.4M.build.flash_size=4MB -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.8M=8MB (64Mb) -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.8M.build.flash_size=8MB -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.8M.build.partitions=default_8MB -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.2M=2MB (16Mb) -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.2M.build.flash_size=2MB -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.2M.build.partitions=minimal -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.16M=16MB (128Mb) -sparkfun_esp32c6_qwiic_pocket.menu.FlashSize.16M.build.flash_size=16MB - -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.921600=921600 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.115200=115200 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.256000.windows=256000 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.230400=230400 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.460800.linux=460800 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.460800.macosx=460800 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.512000.windows=512000 -sparkfun_esp32c6_qwiic_pocket.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.none=None -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.none.build.code_debug=0 -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.error=Error -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.error.build.code_debug=1 -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.warn=Warn -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.info=Info -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.info.build.code_debug=3 -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.debug=Debug -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.verbose=Verbose -sparkfun_esp32c6_qwiic_pocket.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_esp32c6_qwiic_pocket.menu.EraseFlash.none=Disabled -sparkfun_esp32c6_qwiic_pocket.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_esp32c6_qwiic_pocket.menu.EraseFlash.all=Enabled -sparkfun_esp32c6_qwiic_pocket.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -# SparkFun Pro Micro ESP32C3 - -sparkfun_pro_micro_esp32c3.name=SparkFun Pro Micro - ESP32C3 -sparkfun_pro_micro_esp32c3.vid.0=0x1B4F -sparkfun_pro_micro_esp32c3.pid.0=0x0035 - -sparkfun_pro_micro_esp32c3.bootloader.tool=esptool_py -sparkfun_pro_micro_esp32c3.bootloader.tool.default=esptool_py - -sparkfun_pro_micro_esp32c3.upload.tool=esptool_py -sparkfun_pro_micro_esp32c3.upload.tool.default=esptool_py -sparkfun_pro_micro_esp32c3.upload.tool.network=esp_ota - -sparkfun_pro_micro_esp32c3.upload.maximum_size=1310720 -sparkfun_pro_micro_esp32c3.upload.maximum_data_size=327680 -sparkfun_pro_micro_esp32c3.upload.flags= -sparkfun_pro_micro_esp32c3.upload.extra_flags= -sparkfun_pro_micro_esp32c3.upload.use_1200bps_touch=false -sparkfun_pro_micro_esp32c3.upload.wait_for_upload_port=false - -sparkfun_pro_micro_esp32c3.serial.disableDTR=false -sparkfun_pro_micro_esp32c3.serial.disableRTS=false - -sparkfun_pro_micro_esp32c3.build.tarch=riscv32 -sparkfun_pro_micro_esp32c3.build.bootloader_addr=0x0 -sparkfun_pro_micro_esp32c3.build.target=esp -sparkfun_pro_micro_esp32c3.build.mcu=esp32c3 -sparkfun_pro_micro_esp32c3.build.core=esp32 -sparkfun_pro_micro_esp32c3.build.variant=sparkfun_pro_micro_esp32c3 -sparkfun_pro_micro_esp32c3.build.board=SPARKFUN_PRO_MICRO_ESP32C3 - -sparkfun_pro_micro_esp32c3.build.cdc_on_boot=1 -sparkfun_pro_micro_esp32c3.build.f_cpu=160000000L -sparkfun_pro_micro_esp32c3.build.flash_size=4MB -sparkfun_pro_micro_esp32c3.build.flash_freq=80m -sparkfun_pro_micro_esp32c3.build.flash_mode=dio -sparkfun_pro_micro_esp32c3.build.boot=qio -sparkfun_pro_micro_esp32c3.build.partitions=default -sparkfun_pro_micro_esp32c3.build.defines= - -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.default=Disabled -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.builtin=Integrated USB JTAG -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.external=FTDI Adapter -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.bridge=ESP USB Bridge -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -sparkfun_pro_micro_esp32c3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -sparkfun_pro_micro_esp32c3.menu.CDCOnBoot.cdc=Enabled -sparkfun_pro_micro_esp32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -sparkfun_pro_micro_esp32c3.menu.CDCOnBoot.default=Enabled -sparkfun_pro_micro_esp32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.default.build.partitions=default -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.minimal.build.partitions=minimal -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sparkfun_pro_micro_esp32c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -sparkfun_pro_micro_esp32c3.menu.CPUFreq.160=160MHz (WiFi) -sparkfun_pro_micro_esp32c3.menu.CPUFreq.160.build.f_cpu=160000000L -sparkfun_pro_micro_esp32c3.menu.CPUFreq.80=80MHz (WiFi) -sparkfun_pro_micro_esp32c3.menu.CPUFreq.80.build.f_cpu=80000000L -sparkfun_pro_micro_esp32c3.menu.CPUFreq.40=40MHz -sparkfun_pro_micro_esp32c3.menu.CPUFreq.40.build.f_cpu=40000000L -sparkfun_pro_micro_esp32c3.menu.CPUFreq.20=20MHz -sparkfun_pro_micro_esp32c3.menu.CPUFreq.20.build.f_cpu=20000000L -sparkfun_pro_micro_esp32c3.menu.CPUFreq.10=10MHz -sparkfun_pro_micro_esp32c3.menu.CPUFreq.10.build.f_cpu=10000000L - -sparkfun_pro_micro_esp32c3.menu.FlashMode.qio=QIO -sparkfun_pro_micro_esp32c3.menu.FlashMode.qio.build.flash_mode=dio -sparkfun_pro_micro_esp32c3.menu.FlashMode.qio.build.boot=qio -sparkfun_pro_micro_esp32c3.menu.FlashMode.dio=DIO -sparkfun_pro_micro_esp32c3.menu.FlashMode.dio.build.flash_mode=dio -sparkfun_pro_micro_esp32c3.menu.FlashMode.dio.build.boot=dio -sparkfun_pro_micro_esp32c3.menu.FlashMode.qout=QOUT -sparkfun_pro_micro_esp32c3.menu.FlashMode.qout.build.flash_mode=dout -sparkfun_pro_micro_esp32c3.menu.FlashMode.qout.build.boot=qout -sparkfun_pro_micro_esp32c3.menu.FlashMode.dout=DOUT -sparkfun_pro_micro_esp32c3.menu.FlashMode.dout.build.flash_mode=dout -sparkfun_pro_micro_esp32c3.menu.FlashMode.dout.build.boot=dout - -sparkfun_pro_micro_esp32c3.menu.FlashFreq.80=80MHz -sparkfun_pro_micro_esp32c3.menu.FlashFreq.80.build.flash_freq=80m -sparkfun_pro_micro_esp32c3.menu.FlashFreq.40=40MHz -sparkfun_pro_micro_esp32c3.menu.FlashFreq.40.build.flash_freq=40m - -sparkfun_pro_micro_esp32c3.menu.FlashSize.4M=4MB (32Mb) -sparkfun_pro_micro_esp32c3.menu.FlashSize.4M.build.flash_size=4MB - -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.921600=921600 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.921600.upload.speed=921600 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.115200=115200 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.115200.upload.speed=115200 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.256000.windows=256000 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.256000.upload.speed=256000 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.230400=230400 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.230400.upload.speed=230400 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.460800.linux=460800 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.460800.macosx=460800 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.460800.upload.speed=460800 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.512000.windows=512000 -sparkfun_pro_micro_esp32c3.menu.UploadSpeed.512000.upload.speed=512000 - -sparkfun_pro_micro_esp32c3.menu.DebugLevel.none=None -sparkfun_pro_micro_esp32c3.menu.DebugLevel.none.build.code_debug=0 -sparkfun_pro_micro_esp32c3.menu.DebugLevel.error=Error -sparkfun_pro_micro_esp32c3.menu.DebugLevel.error.build.code_debug=1 -sparkfun_pro_micro_esp32c3.menu.DebugLevel.warn=Warn -sparkfun_pro_micro_esp32c3.menu.DebugLevel.warn.build.code_debug=2 -sparkfun_pro_micro_esp32c3.menu.DebugLevel.info=Info -sparkfun_pro_micro_esp32c3.menu.DebugLevel.info.build.code_debug=3 -sparkfun_pro_micro_esp32c3.menu.DebugLevel.debug=Debug -sparkfun_pro_micro_esp32c3.menu.DebugLevel.debug.build.code_debug=4 -sparkfun_pro_micro_esp32c3.menu.DebugLevel.verbose=Verbose -sparkfun_pro_micro_esp32c3.menu.DebugLevel.verbose.build.code_debug=5 - -sparkfun_pro_micro_esp32c3.menu.EraseFlash.none=Disabled -sparkfun_pro_micro_esp32c3.menu.EraseFlash.none.upload.erase_cmd= -sparkfun_pro_micro_esp32c3.menu.EraseFlash.all=Enabled -sparkfun_pro_micro_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nina_w10.name=u-blox NINA-W10 series (ESP32) - -nina_w10.bootloader.tool=esptool_py -nina_w10.bootloader.tool.default=esptool_py - -nina_w10.upload.tool=esptool_py -nina_w10.upload.tool.default=esptool_py -nina_w10.upload.tool.network=esp_ota - -nina_w10.upload.maximum_size=1310720 -nina_w10.upload.maximum_data_size=327680 -nina_w10.upload.flags= -nina_w10.upload.extra_flags= - -nina_w10.serial.disableDTR=true -nina_w10.serial.disableRTS=true - -nina_w10.build.tarch=xtensa -nina_w10.build.bootloader_addr=0x1000 -nina_w10.build.target=esp32 -nina_w10.build.mcu=esp32 -nina_w10.build.core=esp32 -nina_w10.build.variant=nina_w10 -nina_w10.build.board=UBLOX_NINA_W10 -nina_w10.build.f_cpu=240000000L -nina_w10.build.boot=dio -nina_w10.build.partitions=minimal -nina_w10.build.flash_mode=dio -nina_w10.build.flash_size=2MB -nina_w10.build.flash_freq=40m -nina_w10.build.defines= -nina_w10.build.extra_libs= -nina_w10.build.loop_core= -nina_w10.build.event_core= - -nina_w10.menu.UploadSpeed.921600=921600 -nina_w10.menu.UploadSpeed.921600.upload.speed=921600 -nina_w10.menu.UploadSpeed.115200=115200 -nina_w10.menu.UploadSpeed.115200.upload.speed=115200 -nina_w10.menu.UploadSpeed.256000.windows=256000 -nina_w10.menu.UploadSpeed.256000.upload.speed=256000 -nina_w10.menu.UploadSpeed.230400.windows.upload.speed=256000 -nina_w10.menu.UploadSpeed.230400=230400 -nina_w10.menu.UploadSpeed.230400.upload.speed=230400 -nina_w10.menu.UploadSpeed.460800.linux=460800 -nina_w10.menu.UploadSpeed.460800.macosx=460800 -nina_w10.menu.UploadSpeed.460800.upload.speed=460800 -nina_w10.menu.UploadSpeed.512000.windows=512000 -nina_w10.menu.UploadSpeed.512000.upload.speed=512000 - -nina_w10.menu.FlashSize.2M=2MB (16Mb, NINA-W101/W102) -nina_w10.menu.FlashSize.2M.build.flash_size=2MB -nina_w10.menu.FlashSize.2M.build.partitions=minimal -nina_w10.menu.FlashSize.4M=4MB (32Mb, NINA-W106-00B) -nina_w10.menu.FlashSize.4M.build.flash_size=4MB -nina_w10.menu.FlashSize.4M.build.partitions=default -nina_w10.menu.FlashSize.8M=8MB (64Mb, NINA-W106-10B) -nina_w10.menu.FlashSize.8M.build.flash_size=8MB -nina_w10.menu.FlashSize.8M.build.partitions=default_8MB - -nina_w10.menu.FlashFreq.80=80MHz -nina_w10.menu.FlashFreq.80.build.flash_freq=80m -nina_w10.menu.FlashFreq.40=40MHz -nina_w10.menu.FlashFreq.40.build.flash_freq=40m - -nina_w10.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -nina_w10.menu.PartitionScheme.minimal.build.partitions=minimal -nina_w10.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -nina_w10.menu.PartitionScheme.default.build.partitions=default -nina_w10.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -nina_w10.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -nina_w10.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -nina_w10.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -nina_w10.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -nina_w10.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -nina_w10.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -nina_w10.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -nina_w10.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -nina_w10.menu.PartitionScheme.no_ota.build.partitions=no_ota -nina_w10.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -nina_w10.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -nina_w10.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -nina_w10.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -nina_w10.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -nina_w10.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -nina_w10.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -nina_w10.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -nina_w10.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -nina_w10.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -nina_w10.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -nina_w10.menu.PartitionScheme.huge_app.build.partitions=huge_app -nina_w10.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -nina_w10.menu.PartitionScheme.rainmaker=RainMaker -nina_w10.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -nina_w10.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -nina_w10.menu.CPUFreq.240=240MHz (WiFi/BT) -nina_w10.menu.CPUFreq.240.build.f_cpu=240000000L -nina_w10.menu.CPUFreq.160=160MHz (WiFi/BT) -nina_w10.menu.CPUFreq.160.build.f_cpu=160000000L -nina_w10.menu.CPUFreq.80=80MHz (WiFi/BT) -nina_w10.menu.CPUFreq.80.build.f_cpu=80000000L -nina_w10.menu.CPUFreq.40=40MHz (40MHz XTAL) -nina_w10.menu.CPUFreq.40.build.f_cpu=40000000L -nina_w10.menu.CPUFreq.26=26MHz (26MHz XTAL) -nina_w10.menu.CPUFreq.26.build.f_cpu=26000000L -nina_w10.menu.CPUFreq.20=20MHz (40MHz XTAL) -nina_w10.menu.CPUFreq.20.build.f_cpu=20000000L -nina_w10.menu.CPUFreq.13=13MHz (26MHz XTAL) -nina_w10.menu.CPUFreq.13.build.f_cpu=13000000L -nina_w10.menu.CPUFreq.10=10MHz (40MHz XTAL) -nina_w10.menu.CPUFreq.10.build.f_cpu=10000000L - -nina_w10.menu.LoopCore.1=Core 1 -nina_w10.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -nina_w10.menu.LoopCore.0=Core 0 -nina_w10.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -nina_w10.menu.EventsCore.1=Core 1 -nina_w10.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -nina_w10.menu.EventsCore.0=Core 0 -nina_w10.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -nina_w10.menu.DebugLevel.none=None -nina_w10.menu.DebugLevel.none.build.code_debug=0 -nina_w10.menu.DebugLevel.error=Error -nina_w10.menu.DebugLevel.error.build.code_debug=1 -nina_w10.menu.DebugLevel.warn=Warn -nina_w10.menu.DebugLevel.warn.build.code_debug=2 -nina_w10.menu.DebugLevel.info=Info -nina_w10.menu.DebugLevel.info.build.code_debug=3 -nina_w10.menu.DebugLevel.debug=Debug -nina_w10.menu.DebugLevel.debug.build.code_debug=4 -nina_w10.menu.DebugLevel.verbose=Verbose -nina_w10.menu.DebugLevel.verbose.build.code_debug=5 - -nina_w10.menu.EraseFlash.none=Disabled -nina_w10.menu.EraseFlash.none.upload.erase_cmd= -nina_w10.menu.EraseFlash.all=Enabled -nina_w10.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nora_w10.name=u-blox NORA-W10 series (ESP32-S3) -nora_w10.vid.0=0x303a -nora_w10.pid.0=0x1001 - -nora_w10.bootloader.tool=esptool_py -nora_w10.bootloader.tool.default=esptool_py - -nora_w10.upload.tool=esptool_py -nora_w10.upload.tool.default=esptool_py -nora_w10.upload.tool.network=esp_ota - -nora_w10.upload.maximum_size=1310720 -nora_w10.upload.maximum_data_size=327680 -nora_w10.upload.flags= -nora_w10.upload.extra_flags= -nora_w10.upload.use_1200bps_touch=false -nora_w10.upload.wait_for_upload_port=false - -nora_w10.serial.disableDTR=false -nora_w10.serial.disableRTS=false - -nora_w10.build.tarch=xtensa -nora_w10.build.bootloader_addr=0x0 -nora_w10.build.target=esp32s3 -nora_w10.build.mcu=esp32s3 -nora_w10.build.core=esp32 -nora_w10.build.variant=nora_w10 -nora_w10.build.board=UBLOX_NORA_W10 - -nora_w10.build.usb_mode=1 -nora_w10.build.cdc_on_boot=0 -nora_w10.build.msc_on_boot=0 -nora_w10.build.dfu_on_boot=0 -nora_w10.build.f_cpu=240000000L -nora_w10.build.flash_size=4MB -nora_w10.build.flash_freq=80m -nora_w10.build.flash_mode=dio -nora_w10.build.boot=qio -nora_w10.build.boot_freq=80m -nora_w10.build.partitions=default -nora_w10.build.defines= -nora_w10.build.loop_core= -nora_w10.build.event_core= -nora_w10.build.psram_type=qspi -nora_w10.build.memory_type={build.boot}_{build.psram_type} - -nora_w10.menu.PSRAM.disabled=Disabled -nora_w10.menu.PSRAM.disabled.build.defines= -nora_w10.menu.PSRAM.disabled.build.psram_type=qspi -nora_w10.menu.PSRAM.enabled=QSPI PSRAM -nora_w10.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -nora_w10.menu.PSRAM.enabled.build.psram_type=qspi -nora_w10.menu.PSRAM.opi=OPI PSRAM -nora_w10.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -nora_w10.menu.PSRAM.opi.build.psram_type=opi - -nora_w10.menu.FlashMode.qio=QIO 80MHz -nora_w10.menu.FlashMode.qio.build.flash_mode=dio -nora_w10.menu.FlashMode.qio.build.boot=qio -nora_w10.menu.FlashMode.qio.build.boot_freq=80m -nora_w10.menu.FlashMode.qio.build.flash_freq=80m -nora_w10.menu.FlashMode.qio120=QIO 120MHz -nora_w10.menu.FlashMode.qio120.build.flash_mode=dio -nora_w10.menu.FlashMode.qio120.build.boot=qio -nora_w10.menu.FlashMode.qio120.build.boot_freq=120m -nora_w10.menu.FlashMode.qio120.build.flash_freq=80m -nora_w10.menu.FlashMode.dio=DIO 80MHz -nora_w10.menu.FlashMode.dio.build.flash_mode=dio -nora_w10.menu.FlashMode.dio.build.boot=dio -nora_w10.menu.FlashMode.dio.build.boot_freq=80m -nora_w10.menu.FlashMode.dio.build.flash_freq=80m -nora_w10.menu.FlashMode.opi=OPI 80MHz -nora_w10.menu.FlashMode.opi.build.flash_mode=dout -nora_w10.menu.FlashMode.opi.build.boot=opi -nora_w10.menu.FlashMode.opi.build.boot_freq=80m -nora_w10.menu.FlashMode.opi.build.flash_freq=80m - -nora_w10.menu.FlashSize.4M=4MB (32Mb) -nora_w10.menu.FlashSize.4M.build.flash_size=4MB -nora_w10.menu.FlashSize.8M=8MB (64Mb) -nora_w10.menu.FlashSize.8M.build.flash_size=8MB -nora_w10.menu.FlashSize.8M.build.partitions=default_8MB -#nora_w10.menu.FlashSize.16M=16MB (128Mb) -#nora_w10.menu.FlashSize.16M.build.flash_size=16MB -#nora_w10.menu.FlashSize.32M=32MB (256Mb) -#nora_w10.menu.FlashSize.32M.build.flash_size=32MB - -nora_w10.menu.LoopCore.1=Core 1 -nora_w10.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -nora_w10.menu.LoopCore.0=Core 0 -nora_w10.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -nora_w10.menu.EventsCore.1=Core 1 -nora_w10.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -nora_w10.menu.EventsCore.0=Core 0 -nora_w10.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -nora_w10.menu.USBMode.hwcdc=Hardware CDC and JTAG -nora_w10.menu.USBMode.hwcdc.build.usb_mode=1 -nora_w10.menu.USBMode.default=USB-OTG (TinyUSB) -nora_w10.menu.USBMode.default.build.usb_mode=0 - -nora_w10.menu.CDCOnBoot.default=Disabled -nora_w10.menu.CDCOnBoot.default.build.cdc_on_boot=0 -nora_w10.menu.CDCOnBoot.cdc=Enabled -nora_w10.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -nora_w10.menu.MSCOnBoot.default=Disabled -nora_w10.menu.MSCOnBoot.default.build.msc_on_boot=0 -nora_w10.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -nora_w10.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -nora_w10.menu.DFUOnBoot.default=Disabled -nora_w10.menu.DFUOnBoot.default.build.dfu_on_boot=0 -nora_w10.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -nora_w10.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -nora_w10.menu.UploadMode.default=UART0 / Hardware CDC -nora_w10.menu.UploadMode.default.upload.use_1200bps_touch=false -nora_w10.menu.UploadMode.default.upload.wait_for_upload_port=false -nora_w10.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -nora_w10.menu.UploadMode.cdc.upload.use_1200bps_touch=true -nora_w10.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -nora_w10.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -nora_w10.menu.PartitionScheme.default.build.partitions=default -nora_w10.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -nora_w10.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -nora_w10.menu.PartitionScheme.default_8MB=8M Flash (3MB APP/1.5MB FAT) -nora_w10.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -nora_w10.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -nora_w10.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -nora_w10.menu.PartitionScheme.minimal.build.partitions=minimal -nora_w10.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -nora_w10.menu.PartitionScheme.no_ota.build.partitions=no_ota -nora_w10.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -nora_w10.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -nora_w10.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -nora_w10.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -nora_w10.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -nora_w10.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -nora_w10.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -nora_w10.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -nora_w10.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -nora_w10.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -nora_w10.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -nora_w10.menu.PartitionScheme.huge_app.build.partitions=huge_app -nora_w10.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -nora_w10.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -nora_w10.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -nora_w10.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -#nora_w10.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -#nora_w10.menu.PartitionScheme.fatflash.build.partitions=ffat -#nora_w10.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -#nora_w10.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -#nora_w10.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -#nora_w10.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -nora_w10.menu.PartitionScheme.rainmaker=RainMaker -nora_w10.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -nora_w10.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -nora_w10.menu.CPUFreq.240=240MHz (WiFi) -nora_w10.menu.CPUFreq.240.build.f_cpu=240000000L -nora_w10.menu.CPUFreq.160=160MHz (WiFi) -nora_w10.menu.CPUFreq.160.build.f_cpu=160000000L -nora_w10.menu.CPUFreq.80=80MHz (WiFi) -nora_w10.menu.CPUFreq.80.build.f_cpu=80000000L -nora_w10.menu.CPUFreq.40=40MHz -nora_w10.menu.CPUFreq.40.build.f_cpu=40000000L -nora_w10.menu.CPUFreq.20=20MHz -nora_w10.menu.CPUFreq.20.build.f_cpu=20000000L -nora_w10.menu.CPUFreq.10=10MHz -nora_w10.menu.CPUFreq.10.build.f_cpu=10000000L - -nora_w10.menu.UploadSpeed.921600=921600 -nora_w10.menu.UploadSpeed.921600.upload.speed=921600 -nora_w10.menu.UploadSpeed.115200=115200 -nora_w10.menu.UploadSpeed.115200.upload.speed=115200 -nora_w10.menu.UploadSpeed.256000.windows=256000 -nora_w10.menu.UploadSpeed.256000.upload.speed=256000 -nora_w10.menu.UploadSpeed.230400.windows.upload.speed=256000 -nora_w10.menu.UploadSpeed.230400=230400 -nora_w10.menu.UploadSpeed.230400.upload.speed=230400 -nora_w10.menu.UploadSpeed.460800.linux=460800 -nora_w10.menu.UploadSpeed.460800.macosx=460800 -nora_w10.menu.UploadSpeed.460800.upload.speed=460800 -nora_w10.menu.UploadSpeed.512000.windows=512000 -nora_w10.menu.UploadSpeed.512000.upload.speed=512000 - -nora_w10.menu.DebugLevel.none=None -nora_w10.menu.DebugLevel.none.build.code_debug=0 -nora_w10.menu.DebugLevel.error=Error -nora_w10.menu.DebugLevel.error.build.code_debug=1 -nora_w10.menu.DebugLevel.warn=Warn -nora_w10.menu.DebugLevel.warn.build.code_debug=2 -nora_w10.menu.DebugLevel.info=Info -nora_w10.menu.DebugLevel.info.build.code_debug=3 -nora_w10.menu.DebugLevel.debug=Debug -nora_w10.menu.DebugLevel.debug.build.code_debug=4 -nora_w10.menu.DebugLevel.verbose=Verbose -nora_w10.menu.DebugLevel.verbose.build.code_debug=5 - -nora_w10.menu.EraseFlash.none=Disabled -nora_w10.menu.EraseFlash.none.upload.erase_cmd= -nora_w10.menu.EraseFlash.all=Enabled -nora_w10.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -widora-air.name=Widora AIR - -widora-air.bootloader.tool=esptool_py -widora-air.bootloader.tool.default=esptool_py - -widora-air.upload.tool=esptool_py -widora-air.upload.tool.default=esptool_py -widora-air.upload.tool.network=esp_ota - -widora-air.upload.maximum_size=1310720 -widora-air.upload.maximum_data_size=327680 -widora-air.upload.flags= -widora-air.upload.extra_flags= - -widora-air.serial.disableDTR=true -widora-air.serial.disableRTS=true - -widora-air.build.tarch=xtensa -widora-air.build.bootloader_addr=0x1000 -widora-air.build.target=esp32 -widora-air.build.mcu=esp32 -widora-air.build.core=esp32 -widora-air.build.variant=widora-air -widora-air.build.board=WIDORA_AIR - -widora-air.build.f_cpu=240000000L -widora-air.build.flash_mode=dio -widora-air.build.flash_size=16MB -widora-air.build.boot=dio -widora-air.build.partitions=default -widora-air.build.defines= - -widora-air.menu.FlashFreq.80=80MHz -widora-air.menu.FlashFreq.80.build.flash_freq=80m -widora-air.menu.FlashFreq.40=40MHz -widora-air.menu.FlashFreq.40.build.flash_freq=40m - -widora-air.menu.UploadSpeed.921600=921600 -widora-air.menu.UploadSpeed.921600.upload.speed=921600 -widora-air.menu.UploadSpeed.115200=115200 -widora-air.menu.UploadSpeed.115200.upload.speed=115200 -widora-air.menu.UploadSpeed.256000.windows=256000 -widora-air.menu.UploadSpeed.256000.upload.speed=256000 -widora-air.menu.UploadSpeed.230400.windows.upload.speed=256000 -widora-air.menu.UploadSpeed.230400=230400 -widora-air.menu.UploadSpeed.230400.upload.speed=230400 -widora-air.menu.UploadSpeed.460800.linux=460800 -widora-air.menu.UploadSpeed.460800.macosx=460800 -widora-air.menu.UploadSpeed.460800.upload.speed=460800 -widora-air.menu.UploadSpeed.512000.windows=512000 -widora-air.menu.UploadSpeed.512000.upload.speed=512000 - -widora-air.menu.DebugLevel.none=None -widora-air.menu.DebugLevel.none.build.code_debug=0 -widora-air.menu.DebugLevel.error=Error -widora-air.menu.DebugLevel.error.build.code_debug=1 -widora-air.menu.DebugLevel.warn=Warn -widora-air.menu.DebugLevel.warn.build.code_debug=2 -widora-air.menu.DebugLevel.info=Info -widora-air.menu.DebugLevel.info.build.code_debug=3 -widora-air.menu.DebugLevel.debug=Debug -widora-air.menu.DebugLevel.debug.build.code_debug=4 -widora-air.menu.DebugLevel.verbose=Verbose -widora-air.menu.DebugLevel.verbose.build.code_debug=5 - -widora-air.menu.EraseFlash.none=Disabled -widora-air.menu.EraseFlash.none.upload.erase_cmd= -widora-air.menu.EraseFlash.all=Enabled -widora-air.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp320.name=Electronic SweetPeas - ESP320 - -esp320.bootloader.tool=esptool_py -esp320.bootloader.tool.default=esptool_py - -esp320.upload.tool=esptool_py -esp320.upload.tool.default=esptool_py -esp320.upload.tool.network=esp_ota - -esp320.upload.maximum_size=1310720 -esp320.upload.maximum_data_size=327680 -esp320.upload.flags= -esp320.upload.extra_flags= - -esp320.serial.disableDTR=true -esp320.serial.disableRTS=true - -esp320.build.tarch=xtensa -esp320.build.bootloader_addr=0x1000 -esp320.build.target=esp32 -esp320.build.mcu=esp32 -esp320.build.core=esp32 -esp320.build.variant=esp320 -esp320.build.board=ESP320 - -esp320.build.f_cpu=240000000L -esp320.build.flash_mode=qio -esp320.build.flash_size=4MB -esp320.build.boot=dio -esp320.build.partitions=default -esp320.build.defines= - -esp320.menu.FlashFreq.80=80MHz -esp320.menu.FlashFreq.80.build.flash_freq=80m -esp320.menu.FlashFreq.40=40MHz -esp320.menu.FlashFreq.40.build.flash_freq=40m - -esp320.menu.UploadSpeed.921600=921600 -esp320.menu.UploadSpeed.921600.upload.speed=921600 -esp320.menu.UploadSpeed.115200=115200 -esp320.menu.UploadSpeed.115200.upload.speed=115200 -esp320.menu.UploadSpeed.256000.windows=256000 -esp320.menu.UploadSpeed.256000.upload.speed=256000 -esp320.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp320.menu.UploadSpeed.230400=230400 -esp320.menu.UploadSpeed.230400.upload.speed=230400 -esp320.menu.UploadSpeed.460800.linux=460800 -esp320.menu.UploadSpeed.460800.macosx=460800 -esp320.menu.UploadSpeed.460800.upload.speed=460800 -esp320.menu.UploadSpeed.512000.windows=512000 -esp320.menu.UploadSpeed.512000.upload.speed=512000 - -esp320.menu.DebugLevel.none=None -esp320.menu.DebugLevel.none.build.code_debug=0 -esp320.menu.DebugLevel.error=Error -esp320.menu.DebugLevel.error.build.code_debug=1 -esp320.menu.DebugLevel.warn=Warn -esp320.menu.DebugLevel.warn.build.code_debug=2 -esp320.menu.DebugLevel.info=Info -esp320.menu.DebugLevel.info.build.code_debug=3 -esp320.menu.DebugLevel.debug=Debug -esp320.menu.DebugLevel.debug.build.code_debug=4 -esp320.menu.DebugLevel.verbose=Verbose -esp320.menu.DebugLevel.verbose.build.code_debug=5 - -esp320.menu.EraseFlash.none=Disabled -esp320.menu.EraseFlash.none.upload.erase_cmd= -esp320.menu.EraseFlash.all=Enabled -esp320.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nano32.name=Nano32 - -nano32.bootloader.tool=esptool_py -nano32.bootloader.tool.default=esptool_py - -nano32.upload.tool=esptool_py -nano32.upload.tool.default=esptool_py -nano32.upload.tool.network=esp_ota - -nano32.upload.maximum_size=1310720 -nano32.upload.maximum_data_size=327680 -nano32.upload.flags= -nano32.upload.extra_flags= - -nano32.serial.disableDTR=true -nano32.serial.disableRTS=true - -nano32.build.tarch=xtensa -nano32.build.bootloader_addr=0x1000 -nano32.build.target=esp32 -nano32.build.mcu=esp32 -nano32.build.core=esp32 -nano32.build.variant=nano32 -nano32.build.board=NANO32 - -nano32.build.f_cpu=240000000L -nano32.build.flash_mode=dio -nano32.build.flash_size=4MB -nano32.build.boot=dio -nano32.build.partitions=default -nano32.build.defines= - -nano32.menu.FlashFreq.80=80MHz -nano32.menu.FlashFreq.80.build.flash_freq=80m -nano32.menu.FlashFreq.40=40MHz -nano32.menu.FlashFreq.40.build.flash_freq=40m - -nano32.menu.UploadSpeed.921600=921600 -nano32.menu.UploadSpeed.921600.upload.speed=921600 -nano32.menu.UploadSpeed.115200=115200 -nano32.menu.UploadSpeed.115200.upload.speed=115200 -nano32.menu.UploadSpeed.256000.windows=256000 -nano32.menu.UploadSpeed.256000.upload.speed=256000 -nano32.menu.UploadSpeed.230400.windows.upload.speed=256000 -nano32.menu.UploadSpeed.230400=230400 -nano32.menu.UploadSpeed.230400.upload.speed=230400 -nano32.menu.UploadSpeed.460800.linux=460800 -nano32.menu.UploadSpeed.460800.macosx=460800 -nano32.menu.UploadSpeed.460800.upload.speed=460800 -nano32.menu.UploadSpeed.512000.windows=512000 -nano32.menu.UploadSpeed.512000.upload.speed=512000 - -nano32.menu.DebugLevel.none=None -nano32.menu.DebugLevel.none.build.code_debug=0 -nano32.menu.DebugLevel.error=Error -nano32.menu.DebugLevel.error.build.code_debug=1 -nano32.menu.DebugLevel.warn=Warn -nano32.menu.DebugLevel.warn.build.code_debug=2 -nano32.menu.DebugLevel.info=Info -nano32.menu.DebugLevel.info.build.code_debug=3 -nano32.menu.DebugLevel.debug=Debug -nano32.menu.DebugLevel.debug.build.code_debug=4 -nano32.menu.DebugLevel.verbose=Verbose -nano32.menu.DebugLevel.verbose.build.code_debug=5 - -nano32.menu.EraseFlash.none=Disabled -nano32.menu.EraseFlash.none.upload.erase_cmd= -nano32.menu.EraseFlash.all=Enabled -nano32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -d32.name=LOLIN D32 - -d32.bootloader.tool=esptool_py -d32.bootloader.tool.default=esptool_py - -d32.upload.tool=esptool_py -d32.upload.tool.default=esptool_py -d32.upload.tool.network=esp_ota - -d32.upload.maximum_size=1310720 -d32.upload.maximum_data_size=327680 -d32.upload.flags= -d32.upload.extra_flags= - -d32.serial.disableDTR=true -d32.serial.disableRTS=true - -d32.build.tarch=xtensa -d32.build.bootloader_addr=0x1000 -d32.build.target=esp32 -d32.build.mcu=esp32 -d32.build.core=esp32 -d32.build.variant=d32 -d32.build.board=LOLIN_D32 - -d32.build.f_cpu=240000000L -d32.build.flash_size=4MB -d32.build.flash_freq=40m -d32.build.flash_mode=dio -d32.build.boot=dio -d32.build.partitions=default -d32.build.defines= - -d32.menu.PartitionScheme.default=Default -d32.menu.PartitionScheme.default.build.partitions=default -d32.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -d32.menu.PartitionScheme.minimal.build.partitions=minimal -d32.menu.PartitionScheme.no_ota=No OTA (Large APP) -d32.menu.PartitionScheme.no_ota.build.partitions=no_ota -d32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -d32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -d32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -d32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -d32.menu.FlashFreq.80=80MHz -d32.menu.FlashFreq.80.build.flash_freq=80m -d32.menu.FlashFreq.40=40MHz -d32.menu.FlashFreq.40.build.flash_freq=40m - -d32.menu.UploadSpeed.921600=921600 -d32.menu.UploadSpeed.921600.upload.speed=921600 -d32.menu.UploadSpeed.115200=115200 -d32.menu.UploadSpeed.115200.upload.speed=115200 -d32.menu.UploadSpeed.256000.windows=256000 -d32.menu.UploadSpeed.256000.upload.speed=256000 -d32.menu.UploadSpeed.230400.windows.upload.speed=256000 -d32.menu.UploadSpeed.230400=230400 -d32.menu.UploadSpeed.230400.upload.speed=230400 -d32.menu.UploadSpeed.460800.linux=460800 -d32.menu.UploadSpeed.460800.macosx=460800 -d32.menu.UploadSpeed.460800.upload.speed=460800 -d32.menu.UploadSpeed.512000.windows=512000 -d32.menu.UploadSpeed.512000.upload.speed=512000 - -d32.menu.DebugLevel.none=None -d32.menu.DebugLevel.none.build.code_debug=0 -d32.menu.DebugLevel.error=Error -d32.menu.DebugLevel.error.build.code_debug=1 -d32.menu.DebugLevel.warn=Warn -d32.menu.DebugLevel.warn.build.code_debug=2 -d32.menu.DebugLevel.info=Info -d32.menu.DebugLevel.info.build.code_debug=3 -d32.menu.DebugLevel.debug=Debug -d32.menu.DebugLevel.debug.build.code_debug=4 -d32.menu.DebugLevel.verbose=Verbose -d32.menu.DebugLevel.verbose.build.code_debug=5 - -d32.menu.EraseFlash.none=Disabled -d32.menu.EraseFlash.none.upload.erase_cmd= -d32.menu.EraseFlash.all=Enabled -d32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -d32_pro.name=LOLIN D32 PRO - -d32_pro.bootloader.tool=esptool_py -d32_pro.bootloader.tool.default=esptool_py - -d32_pro.upload.tool=esptool_py -d32_pro.upload.tool.default=esptool_py -d32_pro.upload.tool.network=esp_ota - -d32_pro.upload.maximum_size=1310720 -d32_pro.upload.maximum_data_size=327680 -d32_pro.upload.flags= -d32_pro.upload.extra_flags= - -d32_pro.serial.disableDTR=true -d32_pro.serial.disableRTS=true - -d32_pro.build.tarch=xtensa -d32_pro.build.bootloader_addr=0x1000 -d32_pro.build.target=esp32 -d32_pro.build.mcu=esp32 -d32_pro.build.core=esp32 -d32_pro.build.variant=d32_pro -d32_pro.build.board=LOLIN_D32_PRO - -d32_pro.build.f_cpu=240000000L -d32_pro.build.flash_size=4MB -d32_pro.build.flash_freq=40m -d32_pro.build.flash_mode=dio -d32_pro.build.boot=dio -d32_pro.build.partitions=default -d32_pro.build.defines= - -d32_pro.menu.PSRAM.disabled=Disabled -d32_pro.menu.PSRAM.disabled.build.defines= -d32_pro.menu.PSRAM.disabled.build.extra_libs= -d32_pro.menu.PSRAM.enabled=Enabled -d32_pro.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -d32_pro.menu.PSRAM.enabled.build.extra_libs= - -d32_pro.menu.PartitionScheme.default=Default -d32_pro.menu.PartitionScheme.default.build.partitions=default -d32_pro.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -d32_pro.menu.PartitionScheme.minimal.build.partitions=minimal -d32_pro.menu.PartitionScheme.no_ota=No OTA (Large APP) -d32_pro.menu.PartitionScheme.no_ota.build.partitions=no_ota -d32_pro.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -d32_pro.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -d32_pro.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -d32_pro.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -d32_pro.menu.FlashFreq.80=80MHz -d32_pro.menu.FlashFreq.80.build.flash_freq=80m -d32_pro.menu.FlashFreq.40=40MHz -d32_pro.menu.FlashFreq.40.build.flash_freq=40m - -d32_pro.menu.UploadSpeed.921600=921600 -d32_pro.menu.UploadSpeed.921600.upload.speed=921600 -d32_pro.menu.UploadSpeed.115200=115200 -d32_pro.menu.UploadSpeed.115200.upload.speed=115200 -d32_pro.menu.UploadSpeed.256000.windows=256000 -d32_pro.menu.UploadSpeed.256000.upload.speed=256000 -d32_pro.menu.UploadSpeed.230400.windows.upload.speed=256000 -d32_pro.menu.UploadSpeed.230400=230400 -d32_pro.menu.UploadSpeed.230400.upload.speed=230400 -d32_pro.menu.UploadSpeed.460800.linux=460800 -d32_pro.menu.UploadSpeed.460800.macosx=460800 -d32_pro.menu.UploadSpeed.460800.upload.speed=460800 -d32_pro.menu.UploadSpeed.512000.windows=512000 -d32_pro.menu.UploadSpeed.512000.upload.speed=512000 -d32_pro.menu.UploadSpeed.1500000=1500000 -d32_pro.menu.UploadSpeed.1500000.upload.speed=1500000 - -d32_pro.menu.DebugLevel.none=None -d32_pro.menu.DebugLevel.none.build.code_debug=0 -d32_pro.menu.DebugLevel.error=Error -d32_pro.menu.DebugLevel.error.build.code_debug=1 -d32_pro.menu.DebugLevel.warn=Warn -d32_pro.menu.DebugLevel.warn.build.code_debug=2 -d32_pro.menu.DebugLevel.info=Info -d32_pro.menu.DebugLevel.info.build.code_debug=3 -d32_pro.menu.DebugLevel.debug=Debug -d32_pro.menu.DebugLevel.debug.build.code_debug=4 -d32_pro.menu.DebugLevel.verbose=Verbose -d32_pro.menu.DebugLevel.verbose.build.code_debug=5 - -d32_pro.menu.EraseFlash.none=Disabled -d32_pro.menu.EraseFlash.none.upload.erase_cmd= -d32_pro.menu.EraseFlash.all=Enabled -d32_pro.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_c3_mini.name=LOLIN C3 Mini -lolin_c3_mini.vid.0=0x303a -lolin_c3_mini.pid.0=0x1001 - -lolin_c3_mini.bootloader.tool=esptool_py -lolin_c3_mini.bootloader.tool.default=esptool_py - -lolin_c3_mini.upload.tool=esptool_py -lolin_c3_mini.upload.tool.default=esptool_py -lolin_c3_mini.upload.tool.network=esp_ota - -lolin_c3_mini.upload.maximum_size=1310720 -lolin_c3_mini.upload.maximum_data_size=327680 -lolin_c3_mini.upload.flags= -lolin_c3_mini.upload.extra_flags= -lolin_c3_mini.upload.use_1200bps_touch=false -lolin_c3_mini.upload.wait_for_upload_port=false - -lolin_c3_mini.serial.disableDTR=true -lolin_c3_mini.serial.disableRTS=true - -lolin_c3_mini.build.tarch=riscv32 -lolin_c3_mini.build.target=esp -lolin_c3_mini.build.mcu=esp32c3 -lolin_c3_mini.build.core=esp32 -lolin_c3_mini.build.variant=lolin_c3_mini -lolin_c3_mini.build.board=LOLIN_C3_MINI -lolin_c3_mini.build.bootloader_addr=0x0 - -lolin_c3_mini.build.cdc_on_boot=1 -lolin_c3_mini.build.f_cpu=160000000L -lolin_c3_mini.build.flash_size=4MB -lolin_c3_mini.build.flash_freq=80m -lolin_c3_mini.build.flash_mode=dio -lolin_c3_mini.build.boot=qio -lolin_c3_mini.build.partitions=default -lolin_c3_mini.build.defines= - -lolin_c3_mini.menu.CDCOnBoot.default=Enabled -lolin_c3_mini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -lolin_c3_mini.menu.CDCOnBoot.dis_cdc=Disabled -lolin_c3_mini.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -lolin_c3_mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lolin_c3_mini.menu.PartitionScheme.default.build.partitions=default -lolin_c3_mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lolin_c3_mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lolin_c3_mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lolin_c3_mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin_c3_mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin_c3_mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lolin_c3_mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lolin_c3_mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lolin_c3_mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lolin_c3_mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lolin_c3_mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lolin_c3_mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lolin_c3_mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lolin_c3_mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lolin_c3_mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lolin_c3_mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -lolin_c3_mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - - -lolin_c3_mini.menu.CPUFreq.160=160MHz (WiFi) -lolin_c3_mini.menu.CPUFreq.160.build.f_cpu=160000000L -lolin_c3_mini.menu.CPUFreq.80=80MHz (WiFi) -lolin_c3_mini.menu.CPUFreq.80.build.f_cpu=80000000L -lolin_c3_mini.menu.CPUFreq.40=40MHz -lolin_c3_mini.menu.CPUFreq.40.build.f_cpu=40000000L -lolin_c3_mini.menu.CPUFreq.20=20MHz -lolin_c3_mini.menu.CPUFreq.20.build.f_cpu=20000000L -lolin_c3_mini.menu.CPUFreq.10=10MHz -lolin_c3_mini.menu.CPUFreq.10.build.f_cpu=10000000L - - - -lolin_c3_mini.menu.FlashFreq.80=80MHz -lolin_c3_mini.menu.FlashFreq.80.build.flash_freq=80m -lolin_c3_mini.menu.FlashFreq.40=40MHz -lolin_c3_mini.menu.FlashFreq.40.build.flash_freq=40m - -lolin_c3_mini.menu.UploadSpeed.921600=921600 -lolin_c3_mini.menu.UploadSpeed.921600.upload.speed=921600 -lolin_c3_mini.menu.UploadSpeed.115200=115200 -lolin_c3_mini.menu.UploadSpeed.115200.upload.speed=115200 -lolin_c3_mini.menu.UploadSpeed.256000.windows=256000 -lolin_c3_mini.menu.UploadSpeed.256000.upload.speed=256000 -lolin_c3_mini.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin_c3_mini.menu.UploadSpeed.230400=230400 -lolin_c3_mini.menu.UploadSpeed.230400.upload.speed=230400 -lolin_c3_mini.menu.UploadSpeed.460800.linux=460800 -lolin_c3_mini.menu.UploadSpeed.460800.macosx=460800 -lolin_c3_mini.menu.UploadSpeed.460800.upload.speed=460800 -lolin_c3_mini.menu.UploadSpeed.512000.windows=512000 -lolin_c3_mini.menu.UploadSpeed.512000.upload.speed=512000 - -lolin_c3_mini.menu.DebugLevel.none=None -lolin_c3_mini.menu.DebugLevel.none.build.code_debug=0 -lolin_c3_mini.menu.DebugLevel.error=Error -lolin_c3_mini.menu.DebugLevel.error.build.code_debug=1 -lolin_c3_mini.menu.DebugLevel.warn=Warn -lolin_c3_mini.menu.DebugLevel.warn.build.code_debug=2 -lolin_c3_mini.menu.DebugLevel.info=Info -lolin_c3_mini.menu.DebugLevel.info.build.code_debug=3 -lolin_c3_mini.menu.DebugLevel.debug=Debug -lolin_c3_mini.menu.DebugLevel.debug.build.code_debug=4 -lolin_c3_mini.menu.DebugLevel.verbose=Verbose -lolin_c3_mini.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_c3_mini.menu.EraseFlash.none=Disabled -lolin_c3_mini.menu.EraseFlash.none.upload.erase_cmd= -lolin_c3_mini.menu.EraseFlash.all=Enabled -lolin_c3_mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_s2_mini.name=LOLIN S2 Mini -lolin_s2_mini.vid.0=0x303a -lolin_s2_mini.pid.0=0x80C2 - -lolin_s2_mini.bootloader.tool=esptool_py -lolin_s2_mini.bootloader.tool.default=esptool_py - -lolin_s2_mini.upload.tool=esptool_py -lolin_s2_mini.upload.tool.default=esptool_py -lolin_s2_mini.upload.tool.network=esp_ota - -lolin_s2_mini.upload.maximum_size=1310720 -lolin_s2_mini.upload.maximum_data_size=327680 -lolin_s2_mini.upload.flags= -lolin_s2_mini.upload.extra_flags= -lolin_s2_mini.upload.use_1200bps_touch=true -lolin_s2_mini.upload.wait_for_upload_port=true -lolin_s2_mini.upload.speed=921600 - -lolin_s2_mini.serial.disableDTR=false -lolin_s2_mini.serial.disableRTS=false - -lolin_s2_mini.build.tarch=xtensa -lolin_s2_mini.build.bootloader_addr=0x1000 -lolin_s2_mini.build.target=esp32s2 -lolin_s2_mini.build.mcu=esp32s2 -lolin_s2_mini.build.core=esp32 -lolin_s2_mini.build.variant=lolin_s2_mini -lolin_s2_mini.build.board=LOLIN_S2_MINI - -lolin_s2_mini.build.cdc_on_boot=1 -lolin_s2_mini.build.msc_on_boot=1 -lolin_s2_mini.build.dfu_on_boot=1 -lolin_s2_mini.build.f_cpu=240000000L -lolin_s2_mini.build.flash_size=4MB -lolin_s2_mini.build.flash_freq=80m -lolin_s2_mini.build.flash_mode=dio -lolin_s2_mini.build.boot=qio -lolin_s2_mini.build.partitions=default -lolin_s2_mini.build.defines= - -lolin_s2_mini.build.defines=-DBOARD_HAS_PSRAM - -lolin_s2_mini.menu.CDCOnBoot.default=Enabled -lolin_s2_mini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -lolin_s2_mini.menu.CDCOnBoot.dis_cdc=Disabled -lolin_s2_mini.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -lolin_s2_mini.menu.MSCOnBoot.default=Disabled -lolin_s2_mini.menu.MSCOnBoot.default.build.msc_on_boot=0 -lolin_s2_mini.menu.MSCOnBoot.msc=Enabled -lolin_s2_mini.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lolin_s2_mini.menu.DFUOnBoot.default=Disabled -lolin_s2_mini.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lolin_s2_mini.menu.DFUOnBoot.dfu=Enabled -lolin_s2_mini.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lolin_s2_mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lolin_s2_mini.menu.PartitionScheme.default.build.partitions=default -lolin_s2_mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lolin_s2_mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lolin_s2_mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lolin_s2_mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin_s2_mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin_s2_mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lolin_s2_mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lolin_s2_mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lolin_s2_mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lolin_s2_mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lolin_s2_mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lolin_s2_mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lolin_s2_mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lolin_s2_mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lolin_s2_mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lolin_s2_mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -lolin_s2_mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -lolin_s2_mini.menu.DebugLevel.none=None -lolin_s2_mini.menu.DebugLevel.none.build.code_debug=0 -lolin_s2_mini.menu.DebugLevel.error=Error -lolin_s2_mini.menu.DebugLevel.error.build.code_debug=1 -lolin_s2_mini.menu.DebugLevel.warn=Warn -lolin_s2_mini.menu.DebugLevel.warn.build.code_debug=2 -lolin_s2_mini.menu.DebugLevel.info=Info -lolin_s2_mini.menu.DebugLevel.info.build.code_debug=3 -lolin_s2_mini.menu.DebugLevel.debug=Debug -lolin_s2_mini.menu.DebugLevel.debug.build.code_debug=4 -lolin_s2_mini.menu.DebugLevel.verbose=Verbose -lolin_s2_mini.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_s2_mini.menu.EraseFlash.none=Disabled -lolin_s2_mini.menu.EraseFlash.none.upload.erase_cmd= -lolin_s2_mini.menu.EraseFlash.all=Enabled -lolin_s2_mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_s2_pico.name=LOLIN S2 PICO -lolin_s2_pico.vid.0=0x303a -lolin_s2_pico.pid.0=0x80C5 - -lolin_s2_pico.bootloader.tool=esptool_py -lolin_s2_pico.bootloader.tool.default=esptool_py - -lolin_s2_pico.upload.tool=esptool_py -lolin_s2_pico.upload.tool.default=esptool_py -lolin_s2_pico.upload.tool.network=esp_ota - -lolin_s2_pico.upload.maximum_size=1310720 -lolin_s2_pico.upload.maximum_data_size=327680 -lolin_s2_pico.upload.flags= -lolin_s2_pico.upload.extra_flags= -lolin_s2_pico.upload.use_1200bps_touch=true -lolin_s2_pico.upload.wait_for_upload_port=true -lolin_s2_pico.upload.speed=921600 - -lolin_s2_pico.serial.disableDTR=false -lolin_s2_pico.serial.disableRTS=false - -lolin_s2_pico.build.tarch=xtensa -lolin_s2_pico.build.bootloader_addr=0x1000 -lolin_s2_pico.build.target=esp32s2 -lolin_s2_pico.build.mcu=esp32s2 -lolin_s2_pico.build.core=esp32 -lolin_s2_pico.build.variant=lolin_s2_pico -lolin_s2_pico.build.board=LOLIN_S2_PICO - -lolin_s2_pico.build.cdc_on_boot=1 -lolin_s2_pico.build.msc_on_boot=1 -lolin_s2_pico.build.dfu_on_boot=1 -lolin_s2_pico.build.f_cpu=240000000L -lolin_s2_pico.build.flash_size=4MB -lolin_s2_pico.build.flash_freq=80m -lolin_s2_pico.build.flash_mode=dio -lolin_s2_pico.build.boot=qio -lolin_s2_pico.build.partitions=default -lolin_s2_pico.build.defines= - -lolin_s2_pico.build.defines=-DBOARD_HAS_PSRAM - -lolin_s2_pico.menu.CDCOnBoot.default=Enabled -lolin_s2_pico.menu.CDCOnBoot.default.build.cdc_on_boot=1 -lolin_s2_pico.menu.CDCOnBoot.dis_cdc=Disabled -lolin_s2_pico.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -lolin_s2_pico.menu.MSCOnBoot.default=Disabled -lolin_s2_pico.menu.MSCOnBoot.default.build.msc_on_boot=0 -lolin_s2_pico.menu.MSCOnBoot.msc=Enabled -lolin_s2_pico.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lolin_s2_pico.menu.DFUOnBoot.default=Disabled -lolin_s2_pico.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lolin_s2_pico.menu.DFUOnBoot.dfu=Enabled -lolin_s2_pico.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lolin_s2_pico.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lolin_s2_pico.menu.PartitionScheme.default.build.partitions=default -lolin_s2_pico.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lolin_s2_pico.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lolin_s2_pico.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lolin_s2_pico.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin_s2_pico.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin_s2_pico.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lolin_s2_pico.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lolin_s2_pico.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lolin_s2_pico.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lolin_s2_pico.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lolin_s2_pico.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lolin_s2_pico.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lolin_s2_pico.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lolin_s2_pico.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lolin_s2_pico.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lolin_s2_pico.menu.PartitionScheme.huge_app.build.partitions=huge_app -lolin_s2_pico.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -lolin_s2_pico.menu.DebugLevel.none=None -lolin_s2_pico.menu.DebugLevel.none.build.code_debug=0 -lolin_s2_pico.menu.DebugLevel.error=Error -lolin_s2_pico.menu.DebugLevel.error.build.code_debug=1 -lolin_s2_pico.menu.DebugLevel.warn=Warn -lolin_s2_pico.menu.DebugLevel.warn.build.code_debug=2 -lolin_s2_pico.menu.DebugLevel.info=Info -lolin_s2_pico.menu.DebugLevel.info.build.code_debug=3 -lolin_s2_pico.menu.DebugLevel.debug=Debug -lolin_s2_pico.menu.DebugLevel.debug.build.code_debug=4 -lolin_s2_pico.menu.DebugLevel.verbose=Verbose -lolin_s2_pico.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_s2_pico.menu.EraseFlash.none=Disabled -lolin_s2_pico.menu.EraseFlash.none.upload.erase_cmd= -lolin_s2_pico.menu.EraseFlash.all=Enabled -lolin_s2_pico.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_s3.name=LOLIN S3 -lolin_s3.vid.0=0x303a -lolin_s3.pid.0=0x1001 - -lolin_s3.bootloader.tool=esptool_py -lolin_s3.bootloader.tool.default=esptool_py - -lolin_s3.upload.tool=esptool_py -lolin_s3.upload.tool.default=esptool_py -lolin_s3.upload.tool.network=esp_ota - -lolin_s3.upload.maximum_size=1310720 -lolin_s3.upload.maximum_data_size=327680 -lolin_s3.upload.flags= -lolin_s3.upload.extra_flags= -lolin_s3.upload.use_1200bps_touch=false -lolin_s3.upload.wait_for_upload_port=false - -lolin_s3.serial.disableDTR=false -lolin_s3.serial.disableRTS=false - -lolin_s3.build.tarch=xtensa -lolin_s3.build.bootloader_addr=0x0 -lolin_s3.build.target=esp32s3 -lolin_s3.build.mcu=esp32s3 -lolin_s3.build.core=esp32 -lolin_s3.build.variant=lolin_s3 -lolin_s3.build.board=LOLIN_S3 - -lolin_s3.build.usb_mode=1 -lolin_s3.build.cdc_on_boot=0 -lolin_s3.build.msc_on_boot=0 -lolin_s3.build.dfu_on_boot=0 -lolin_s3.build.f_cpu=240000000L -lolin_s3.build.flash_size=16MB -lolin_s3.build.flash_freq=80m -lolin_s3.build.flash_mode=dio -lolin_s3.build.boot=qio -lolin_s3.build.boot_freq=80m -lolin_s3.build.partitions=default -lolin_s3.build.defines=-DBOARD_HAS_PSRAM -lolin_s3.build.loop_core= -lolin_s3.build.event_core= -lolin_s3.build.psram_type=opi -lolin_s3.build.memory_type={build.boot}_{build.psram_type} - -lolin_s3.menu.FlashMode.qio=QIO 80MHz -lolin_s3.menu.FlashMode.qio.build.flash_mode=dio -lolin_s3.menu.FlashMode.qio.build.boot=qio -lolin_s3.menu.FlashMode.qio.build.boot_freq=80m -lolin_s3.menu.FlashMode.qio.build.flash_freq=80m -lolin_s3.menu.FlashMode.qio120=QIO 120MHz -lolin_s3.menu.FlashMode.qio120.build.flash_mode=dio -lolin_s3.menu.FlashMode.qio120.build.boot=qio -lolin_s3.menu.FlashMode.qio120.build.boot_freq=120m -lolin_s3.menu.FlashMode.qio120.build.flash_freq=80m - -lolin_s3.menu.LoopCore.1=Core 1 -lolin_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lolin_s3.menu.LoopCore.0=Core 0 -lolin_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lolin_s3.menu.EventsCore.1=Core 1 -lolin_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lolin_s3.menu.EventsCore.0=Core 0 -lolin_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lolin_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -lolin_s3.menu.USBMode.hwcdc.build.usb_mode=1 -lolin_s3.menu.USBMode.default=USB-OTG (TinyUSB) -lolin_s3.menu.USBMode.default.build.usb_mode=0 - -lolin_s3.menu.CDCOnBoot.default=Disabled -lolin_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -lolin_s3.menu.CDCOnBoot.cdc=Enabled -lolin_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -lolin_s3.menu.MSCOnBoot.default=Disabled -lolin_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -lolin_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -lolin_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lolin_s3.menu.DFUOnBoot.default=Disabled -lolin_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lolin_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -lolin_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lolin_s3.menu.UploadMode.default=UART0 / Hardware CDC -lolin_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -lolin_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -lolin_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -lolin_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -lolin_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -lolin_s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -lolin_s3.menu.PartitionScheme.fatflash.build.partitions=ffat -lolin_s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -lolin_s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -lolin_s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lolin_s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -lolin_s3.menu.PartitionScheme.rainmaker=RainMaker -lolin_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lolin_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lolin_s3.menu.CPUFreq.240=240MHz (WiFi) -lolin_s3.menu.CPUFreq.240.build.f_cpu=240000000L -lolin_s3.menu.CPUFreq.160=160MHz (WiFi) -lolin_s3.menu.CPUFreq.160.build.f_cpu=160000000L -lolin_s3.menu.CPUFreq.80=80MHz (WiFi) -lolin_s3.menu.CPUFreq.80.build.f_cpu=80000000L -lolin_s3.menu.CPUFreq.40=40MHz -lolin_s3.menu.CPUFreq.40.build.f_cpu=40000000L -lolin_s3.menu.CPUFreq.20=20MHz -lolin_s3.menu.CPUFreq.20.build.f_cpu=20000000L -lolin_s3.menu.CPUFreq.10=10MHz -lolin_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -lolin_s3.menu.UploadSpeed.921600=921600 -lolin_s3.menu.UploadSpeed.921600.upload.speed=921600 -lolin_s3.menu.UploadSpeed.115200=115200 -lolin_s3.menu.UploadSpeed.115200.upload.speed=115200 -lolin_s3.menu.UploadSpeed.256000.windows=256000 -lolin_s3.menu.UploadSpeed.256000.upload.speed=256000 -lolin_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin_s3.menu.UploadSpeed.230400=230400 -lolin_s3.menu.UploadSpeed.230400.upload.speed=230400 -lolin_s3.menu.UploadSpeed.460800.linux=460800 -lolin_s3.menu.UploadSpeed.460800.macosx=460800 -lolin_s3.menu.UploadSpeed.460800.upload.speed=460800 -lolin_s3.menu.UploadSpeed.512000.windows=512000 -lolin_s3.menu.UploadSpeed.512000.upload.speed=512000 - -lolin_s3.menu.DebugLevel.none=None -lolin_s3.menu.DebugLevel.none.build.code_debug=0 -lolin_s3.menu.DebugLevel.error=Error -lolin_s3.menu.DebugLevel.error.build.code_debug=1 -lolin_s3.menu.DebugLevel.warn=Warn -lolin_s3.menu.DebugLevel.warn.build.code_debug=2 -lolin_s3.menu.DebugLevel.info=Info -lolin_s3.menu.DebugLevel.info.build.code_debug=3 -lolin_s3.menu.DebugLevel.debug=Debug -lolin_s3.menu.DebugLevel.debug.build.code_debug=4 -lolin_s3.menu.DebugLevel.verbose=Verbose -lolin_s3.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_s3.menu.EraseFlash.none=Disabled -lolin_s3.menu.EraseFlash.none.upload.erase_cmd= -lolin_s3.menu.EraseFlash.all=Enabled -lolin_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_s3_mini.name=LOLIN S3 Mini -lolin_s3_mini.vid.0=0x303a -lolin_s3_mini.pid.0=0x8167 - -lolin_s3_mini.bootloader.tool=esptool_py -lolin_s3_mini.bootloader.tool.default=esptool_py - -lolin_s3_mini.upload.tool=esptool_py -lolin_s3_mini.upload.tool.default=esptool_py -lolin_s3_mini.upload.tool.network=esp_ota - -lolin_s3_mini.upload.maximum_size=1310720 -lolin_s3_mini.upload.maximum_data_size=327680 -lolin_s3_mini.upload.flags= -lolin_s3_mini.upload.extra_flags= -lolin_s3_mini.upload.use_1200bps_touch=false -lolin_s3_mini.upload.wait_for_upload_port=false - -lolin_s3_mini.serial.disableDTR=false -lolin_s3_mini.serial.disableRTS=false - -lolin_s3_mini.build.tarch=xtensa -lolin_s3_mini.build.bootloader_addr=0x0 -lolin_s3_mini.build.target=esp32s3 -lolin_s3_mini.build.mcu=esp32s3 -lolin_s3_mini.build.core=esp32 -lolin_s3_mini.build.variant=lolin_s3_mini -lolin_s3_mini.build.board=LOLIN_S3_MINI - -lolin_s3_mini.build.usb_mode=1 -lolin_s3_mini.build.cdc_on_boot=0 -lolin_s3_mini.build.msc_on_boot=0 -lolin_s3_mini.build.dfu_on_boot=0 -lolin_s3_mini.build.f_cpu=240000000L -lolin_s3_mini.build.flash_size=4MB -lolin_s3_mini.build.flash_freq=80m -lolin_s3_mini.build.flash_mode=dio -lolin_s3_mini.build.boot=qio -lolin_s3_mini.build.boot_freq=80m -lolin_s3_mini.build.partitions=default -lolin_s3_mini.build.defines=-DBOARD_HAS_PSRAM -lolin_s3_mini.build.loop_core= -lolin_s3_mini.build.event_core= -lolin_s3_mini.build.psram_type=qspi -lolin_s3_mini.build.memory_type={build.boot}_{build.psram_type} - -lolin_s3_mini.menu.FlashMode.qio=QIO 80MHz -lolin_s3_mini.menu.FlashMode.qio.build.flash_mode=dio -lolin_s3_mini.menu.FlashMode.qio.build.boot=qio -lolin_s3_mini.menu.FlashMode.qio.build.boot_freq=80m -lolin_s3_mini.menu.FlashMode.qio.build.flash_freq=80m -lolin_s3_mini.menu.FlashMode.qio120=QIO 120MHz -lolin_s3_mini.menu.FlashMode.qio120.build.flash_mode=dio -lolin_s3_mini.menu.FlashMode.qio120.build.boot=qio -lolin_s3_mini.menu.FlashMode.qio120.build.boot_freq=120m -lolin_s3_mini.menu.FlashMode.qio120.build.flash_freq=80m - -lolin_s3_mini.menu.LoopCore.1=Core 1 -lolin_s3_mini.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lolin_s3_mini.menu.LoopCore.0=Core 0 -lolin_s3_mini.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lolin_s3_mini.menu.EventsCore.1=Core 1 -lolin_s3_mini.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lolin_s3_mini.menu.EventsCore.0=Core 0 -lolin_s3_mini.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lolin_s3_mini.menu.USBMode.hwcdc=Hardware CDC and JTAG -lolin_s3_mini.menu.USBMode.hwcdc.build.usb_mode=1 -lolin_s3_mini.menu.USBMode.default=USB-OTG (TinyUSB) -lolin_s3_mini.menu.USBMode.default.build.usb_mode=0 - -lolin_s3_mini.menu.CDCOnBoot.default=Disabled -lolin_s3_mini.menu.CDCOnBoot.default.build.cdc_on_boot=0 -lolin_s3_mini.menu.CDCOnBoot.cdc=Enabled -lolin_s3_mini.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -lolin_s3_mini.menu.MSCOnBoot.default=Disabled -lolin_s3_mini.menu.MSCOnBoot.default.build.msc_on_boot=0 -lolin_s3_mini.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -lolin_s3_mini.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lolin_s3_mini.menu.DFUOnBoot.default=Disabled -lolin_s3_mini.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lolin_s3_mini.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -lolin_s3_mini.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lolin_s3_mini.menu.UploadMode.default=UART0 / Hardware CDC -lolin_s3_mini.menu.UploadMode.default.upload.use_1200bps_touch=false -lolin_s3_mini.menu.UploadMode.default.upload.wait_for_upload_port=false -lolin_s3_mini.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -lolin_s3_mini.menu.UploadMode.cdc.upload.use_1200bps_touch=true -lolin_s3_mini.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -lolin_s3_mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lolin_s3_mini.menu.PartitionScheme.default.build.partitions=default -lolin_s3_mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lolin_s3_mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lolin_s3_mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lolin_s3_mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin_s3_mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin_s3_mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lolin_s3_mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lolin_s3_mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lolin_s3_mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lolin_s3_mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lolin_s3_mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lolin_s3_mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lolin_s3_mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lolin_s3_mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lolin_s3_mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lolin_s3_mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -lolin_s3_mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -lolin_s3_mini.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -lolin_s3_mini.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lolin_s3_mini.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -lolin_s3_mini.menu.PartitionScheme.rainmaker=RainMaker -lolin_s3_mini.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lolin_s3_mini.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lolin_s3_mini.menu.CPUFreq.240=240MHz (WiFi) -lolin_s3_mini.menu.CPUFreq.240.build.f_cpu=240000000L -lolin_s3_mini.menu.CPUFreq.160=160MHz (WiFi) -lolin_s3_mini.menu.CPUFreq.160.build.f_cpu=160000000L -lolin_s3_mini.menu.CPUFreq.80=80MHz (WiFi) -lolin_s3_mini.menu.CPUFreq.80.build.f_cpu=80000000L -lolin_s3_mini.menu.CPUFreq.40=40MHz -lolin_s3_mini.menu.CPUFreq.40.build.f_cpu=40000000L -lolin_s3_mini.menu.CPUFreq.20=20MHz -lolin_s3_mini.menu.CPUFreq.20.build.f_cpu=20000000L -lolin_s3_mini.menu.CPUFreq.10=10MHz -lolin_s3_mini.menu.CPUFreq.10.build.f_cpu=10000000L - -lolin_s3_mini.menu.UploadSpeed.921600=921600 -lolin_s3_mini.menu.UploadSpeed.921600.upload.speed=921600 -lolin_s3_mini.menu.UploadSpeed.115200=115200 -lolin_s3_mini.menu.UploadSpeed.115200.upload.speed=115200 -lolin_s3_mini.menu.UploadSpeed.256000.windows=256000 -lolin_s3_mini.menu.UploadSpeed.256000.upload.speed=256000 -lolin_s3_mini.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin_s3_mini.menu.UploadSpeed.230400=230400 -lolin_s3_mini.menu.UploadSpeed.230400.upload.speed=230400 -lolin_s3_mini.menu.UploadSpeed.460800.linux=460800 -lolin_s3_mini.menu.UploadSpeed.460800.macosx=460800 -lolin_s3_mini.menu.UploadSpeed.460800.upload.speed=460800 -lolin_s3_mini.menu.UploadSpeed.512000.windows=512000 -lolin_s3_mini.menu.UploadSpeed.512000.upload.speed=512000 - -lolin_s3_mini.menu.DebugLevel.none=None -lolin_s3_mini.menu.DebugLevel.none.build.code_debug=0 -lolin_s3_mini.menu.DebugLevel.error=Error -lolin_s3_mini.menu.DebugLevel.error.build.code_debug=1 -lolin_s3_mini.menu.DebugLevel.warn=Warn -lolin_s3_mini.menu.DebugLevel.warn.build.code_debug=2 -lolin_s3_mini.menu.DebugLevel.info=Info -lolin_s3_mini.menu.DebugLevel.info.build.code_debug=3 -lolin_s3_mini.menu.DebugLevel.debug=Debug -lolin_s3_mini.menu.DebugLevel.debug.build.code_debug=4 -lolin_s3_mini.menu.DebugLevel.verbose=Verbose -lolin_s3_mini.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_s3_mini.menu.EraseFlash.none=Disabled -lolin_s3_mini.menu.EraseFlash.none.upload.erase_cmd= -lolin_s3_mini.menu.EraseFlash.all=Enabled -lolin_s3_mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin_s3_pro.name=LOLIN S3 Pro -lolin_s3_pro.vid.0=0x303a -lolin_s3_pro.pid.0=0x8161 - -lolin_s3_pro.bootloader.tool=esptool_py -lolin_s3_pro.bootloader.tool.default=esptool_py - -lolin_s3_pro.upload.tool=esptool_py -lolin_s3_pro.upload.tool.default=esptool_py -lolin_s3_pro.upload.tool.network=esp_ota - -lolin_s3_pro.upload.maximum_size=1310720 -lolin_s3_pro.upload.maximum_data_size=327680 -lolin_s3_pro.upload.flags= -lolin_s3_pro.upload.extra_flags= -lolin_s3_pro.upload.use_1200bps_touch=false -lolin_s3_pro.upload.wait_for_upload_port=false - -lolin_s3_pro.serial.disableDTR=false -lolin_s3_pro.serial.disableRTS=false - -lolin_s3_pro.build.tarch=xtensa -lolin_s3_pro.build.bootloader_addr=0x0 -lolin_s3_pro.build.target=esp32s3 -lolin_s3_pro.build.mcu=esp32s3 -lolin_s3_pro.build.core=esp32 -lolin_s3_pro.build.variant=lolin_s3_pro -lolin_s3_pro.build.board=LOLIN_S3_PRO - -lolin_s3_pro.build.usb_mode=1 -lolin_s3_pro.build.cdc_on_boot=0 -lolin_s3_pro.build.msc_on_boot=0 -lolin_s3_pro.build.dfu_on_boot=0 -lolin_s3_pro.build.f_cpu=240000000L -lolin_s3_pro.build.flash_size=16MB -lolin_s3_pro.build.flash_freq=80m -lolin_s3_pro.build.flash_mode=dio -lolin_s3_pro.build.boot=qio -lolin_s3_pro.build.boot_freq=80m -lolin_s3_pro.build.partitions=default -lolin_s3_pro.build.defines=-DBOARD_HAS_PSRAM -lolin_s3_pro.build.loop_core= -lolin_s3_pro.build.event_core= -lolin_s3_pro.build.psram_type=opi -lolin_s3_pro.build.memory_type={build.boot}_{build.psram_type} - -lolin_s3_pro.menu.FlashMode.qio=QIO 80MHz -lolin_s3_pro.menu.FlashMode.qio.build.flash_mode=dio -lolin_s3_pro.menu.FlashMode.qio.build.boot=qio -lolin_s3_pro.menu.FlashMode.qio.build.boot_freq=80m -lolin_s3_pro.menu.FlashMode.qio.build.flash_freq=80m -lolin_s3_pro.menu.FlashMode.qio120=QIO 120MHz -lolin_s3_pro.menu.FlashMode.qio120.build.flash_mode=dio -lolin_s3_pro.menu.FlashMode.qio120.build.boot=qio -lolin_s3_pro.menu.FlashMode.qio120.build.boot_freq=120m -lolin_s3_pro.menu.FlashMode.qio120.build.flash_freq=80m - -lolin_s3_pro.menu.LoopCore.1=Core 1 -lolin_s3_pro.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lolin_s3_pro.menu.LoopCore.0=Core 0 -lolin_s3_pro.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lolin_s3_pro.menu.EventsCore.1=Core 1 -lolin_s3_pro.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lolin_s3_pro.menu.EventsCore.0=Core 0 -lolin_s3_pro.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lolin_s3_pro.menu.USBMode.hwcdc=Hardware CDC and JTAG -lolin_s3_pro.menu.USBMode.hwcdc.build.usb_mode=1 -lolin_s3_pro.menu.USBMode.default=USB-OTG (TinyUSB) -lolin_s3_pro.menu.USBMode.default.build.usb_mode=0 - -lolin_s3_pro.menu.CDCOnBoot.default=Disabled -lolin_s3_pro.menu.CDCOnBoot.default.build.cdc_on_boot=0 -lolin_s3_pro.menu.CDCOnBoot.cdc=Enabled -lolin_s3_pro.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -lolin_s3_pro.menu.MSCOnBoot.default=Disabled -lolin_s3_pro.menu.MSCOnBoot.default.build.msc_on_boot=0 -lolin_s3_pro.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -lolin_s3_pro.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lolin_s3_pro.menu.DFUOnBoot.default=Disabled -lolin_s3_pro.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lolin_s3_pro.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -lolin_s3_pro.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lolin_s3_pro.menu.UploadMode.default=UART0 / Hardware CDC -lolin_s3_pro.menu.UploadMode.default.upload.use_1200bps_touch=false -lolin_s3_pro.menu.UploadMode.default.upload.wait_for_upload_port=false -lolin_s3_pro.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -lolin_s3_pro.menu.UploadMode.cdc.upload.use_1200bps_touch=true -lolin_s3_pro.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -lolin_s3_pro.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -lolin_s3_pro.menu.PartitionScheme.fatflash.build.partitions=ffat -lolin_s3_pro.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -lolin_s3_pro.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -lolin_s3_pro.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lolin_s3_pro.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -lolin_s3_pro.menu.PartitionScheme.rainmaker=RainMaker -lolin_s3_pro.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lolin_s3_pro.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lolin_s3_pro.menu.CPUFreq.240=240MHz (WiFi) -lolin_s3_pro.menu.CPUFreq.240.build.f_cpu=240000000L -lolin_s3_pro.menu.CPUFreq.160=160MHz (WiFi) -lolin_s3_pro.menu.CPUFreq.160.build.f_cpu=160000000L -lolin_s3_pro.menu.CPUFreq.80=80MHz (WiFi) -lolin_s3_pro.menu.CPUFreq.80.build.f_cpu=80000000L -lolin_s3_pro.menu.CPUFreq.40=40MHz -lolin_s3_pro.menu.CPUFreq.40.build.f_cpu=40000000L -lolin_s3_pro.menu.CPUFreq.20=20MHz -lolin_s3_pro.menu.CPUFreq.20.build.f_cpu=20000000L -lolin_s3_pro.menu.CPUFreq.10=10MHz -lolin_s3_pro.menu.CPUFreq.10.build.f_cpu=10000000L - -lolin_s3_pro.menu.UploadSpeed.921600=921600 -lolin_s3_pro.menu.UploadSpeed.921600.upload.speed=921600 -lolin_s3_pro.menu.UploadSpeed.115200=115200 -lolin_s3_pro.menu.UploadSpeed.115200.upload.speed=115200 -lolin_s3_pro.menu.UploadSpeed.256000.windows=256000 -lolin_s3_pro.menu.UploadSpeed.256000.upload.speed=256000 -lolin_s3_pro.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin_s3_pro.menu.UploadSpeed.230400=230400 -lolin_s3_pro.menu.UploadSpeed.230400.upload.speed=230400 -lolin_s3_pro.menu.UploadSpeed.460800.linux=460800 -lolin_s3_pro.menu.UploadSpeed.460800.macosx=460800 -lolin_s3_pro.menu.UploadSpeed.460800.upload.speed=460800 -lolin_s3_pro.menu.UploadSpeed.512000.windows=512000 -lolin_s3_pro.menu.UploadSpeed.512000.upload.speed=512000 - -lolin_s3_pro.menu.DebugLevel.none=None -lolin_s3_pro.menu.DebugLevel.none.build.code_debug=0 -lolin_s3_pro.menu.DebugLevel.error=Error -lolin_s3_pro.menu.DebugLevel.error.build.code_debug=1 -lolin_s3_pro.menu.DebugLevel.warn=Warn -lolin_s3_pro.menu.DebugLevel.warn.build.code_debug=2 -lolin_s3_pro.menu.DebugLevel.info=Info -lolin_s3_pro.menu.DebugLevel.info.build.code_debug=3 -lolin_s3_pro.menu.DebugLevel.debug=Debug -lolin_s3_pro.menu.DebugLevel.debug.build.code_debug=4 -lolin_s3_pro.menu.DebugLevel.verbose=Verbose -lolin_s3_pro.menu.DebugLevel.verbose.build.code_debug=5 - -lolin_s3_pro.menu.EraseFlash.none=Disabled -lolin_s3_pro.menu.EraseFlash.none.upload.erase_cmd= -lolin_s3_pro.menu.EraseFlash.all=Enabled -lolin_s3_pro.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin32.name=WEMOS LOLIN32 - -lolin32.bootloader.tool=esptool_py -lolin32.bootloader.tool.default=esptool_py - -lolin32.upload.tool=esptool_py -lolin32.upload.tool.default=esptool_py -lolin32.upload.tool.network=esp_ota - -lolin32.upload.maximum_size=1310720 -lolin32.upload.maximum_data_size=327680 -lolin32.upload.flags= -lolin32.upload.extra_flags= - -lolin32.serial.disableDTR=true -lolin32.serial.disableRTS=true - -lolin32.build.tarch=xtensa -lolin32.build.bootloader_addr=0x1000 -lolin32.build.target=esp32 -lolin32.build.mcu=esp32 -lolin32.build.core=esp32 -lolin32.build.variant=lolin32 -lolin32.build.board=LOLIN32 - -lolin32.build.f_cpu=240000000L -lolin32.build.flash_mode=dio -lolin32.build.flash_size=4MB -lolin32.build.boot=dio -lolin32.build.partitions=default -lolin32.build.defines= - -lolin32.menu.FlashFreq.80=80MHz -lolin32.menu.FlashFreq.80.build.flash_freq=80m -lolin32.menu.FlashFreq.40=40MHz -lolin32.menu.FlashFreq.40.build.flash_freq=40m - -lolin32.menu.PartitionScheme.default=Default -lolin32.menu.PartitionScheme.default.build.partitions=default -lolin32.menu.PartitionScheme.no_ota=No OTA (Large APP) -lolin32.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -lolin32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lolin32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -lolin32.menu.CPUFreq.240=240MHz (WiFi/BT) -lolin32.menu.CPUFreq.240.build.f_cpu=240000000L -lolin32.menu.CPUFreq.160=160MHz (WiFi/BT) -lolin32.menu.CPUFreq.160.build.f_cpu=160000000L -lolin32.menu.CPUFreq.80=80MHz (WiFi/BT) -lolin32.menu.CPUFreq.80.build.f_cpu=80000000L -lolin32.menu.CPUFreq.40=40MHz (40MHz XTAL) -lolin32.menu.CPUFreq.40.build.f_cpu=40000000L -lolin32.menu.CPUFreq.26=26MHz (26MHz XTAL) -lolin32.menu.CPUFreq.26.build.f_cpu=26000000L -lolin32.menu.CPUFreq.20=20MHz (40MHz XTAL) -lolin32.menu.CPUFreq.20.build.f_cpu=20000000L -lolin32.menu.CPUFreq.13=13MHz (26MHz XTAL) -lolin32.menu.CPUFreq.13.build.f_cpu=13000000L -lolin32.menu.CPUFreq.10=10MHz (40MHz XTAL) -lolin32.menu.CPUFreq.10.build.f_cpu=10000000L - -lolin32.menu.UploadSpeed.921600=921600 -lolin32.menu.UploadSpeed.921600.upload.speed=921600 -lolin32.menu.UploadSpeed.115200=115200 -lolin32.menu.UploadSpeed.115200.upload.speed=115200 -lolin32.menu.UploadSpeed.256000.windows=256000 -lolin32.menu.UploadSpeed.256000.upload.speed=256000 -lolin32.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin32.menu.UploadSpeed.230400=230400 -lolin32.menu.UploadSpeed.230400.upload.speed=230400 -lolin32.menu.UploadSpeed.460800.linux=460800 -lolin32.menu.UploadSpeed.460800.macosx=460800 -lolin32.menu.UploadSpeed.460800.upload.speed=460800 -lolin32.menu.UploadSpeed.512000.windows=512000 -lolin32.menu.UploadSpeed.512000.upload.speed=512000 - -lolin32.menu.DebugLevel.none=None -lolin32.menu.DebugLevel.none.build.code_debug=0 -lolin32.menu.DebugLevel.error=Error -lolin32.menu.DebugLevel.error.build.code_debug=1 -lolin32.menu.DebugLevel.warn=Warn -lolin32.menu.DebugLevel.warn.build.code_debug=2 -lolin32.menu.DebugLevel.info=Info -lolin32.menu.DebugLevel.info.build.code_debug=3 -lolin32.menu.DebugLevel.debug=Debug -lolin32.menu.DebugLevel.debug.build.code_debug=4 -lolin32.menu.DebugLevel.verbose=Verbose -lolin32.menu.DebugLevel.verbose.build.code_debug=5 - -lolin32.menu.EraseFlash.none=Disabled -lolin32.menu.EraseFlash.none.upload.erase_cmd= -lolin32.menu.EraseFlash.all=Enabled -lolin32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lolin32-lite.name=WEMOS LOLIN32 Lite - -lolin32-lite.bootloader.tool=esptool_py -lolin32-lite.bootloader.tool.default=esptool_py - -lolin32-lite.upload.tool=esptool_py -lolin32-lite.upload.tool.default=esptool_py -lolin32-lite.upload.tool.network=esp_ota - -lolin32-lite.upload.maximum_size=1310720 -lolin32-lite.upload.maximum_data_size=327680 -lolin32-lite.upload.wait_for_upload_port=true -lolin32-lite.upload.flags= -lolin32-lite.upload.extra_flags= - -lolin32-lite.serial.disableDTR=true -lolin32-lite.serial.disableRTS=true - -lolin32-lite.build.tarch=xtensa -lolin32-lite.build.bootloader_addr=0x1000 -lolin32-lite.build.target=esp32 -lolin32-lite.build.mcu=esp32 -lolin32-lite.build.core=esp32 -lolin32-lite.build.variant=lolin32-lite -lolin32-lite.build.board=LOLIN32_LITE - -lolin32-lite.build.f_cpu=240000000L -lolin32-lite.build.flash_mode=dio -lolin32-lite.build.flash_size=4MB -lolin32-lite.build.boot=dio -lolin32-lite.build.partitions=default -lolin32-lite.build.defines= - -lolin32-lite.menu.FlashFreq.80=80MHz -lolin32-lite.menu.FlashFreq.80.build.flash_freq=80m -lolin32-lite.menu.FlashFreq.40=40MHz -lolin32-lite.menu.FlashFreq.40.build.flash_freq=40m - -lolin32-lite.menu.PartitionScheme.default=Default -lolin32-lite.menu.PartitionScheme.default.build.partitions=default -lolin32-lite.menu.PartitionScheme.no_ota=No OTA (Large APP) -lolin32-lite.menu.PartitionScheme.no_ota.build.partitions=no_ota -lolin32-lite.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lolin32-lite.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -lolin32-lite.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lolin32-lite.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -lolin32-lite.menu.CPUFreq.240=240MHz (WiFi/BT) -lolin32-lite.menu.CPUFreq.240.build.f_cpu=240000000L -lolin32-lite.menu.CPUFreq.160=160MHz (WiFi/BT) -lolin32-lite.menu.CPUFreq.160.build.f_cpu=160000000L -lolin32-lite.menu.CPUFreq.80=80MHz (WiFi/BT) -lolin32-lite.menu.CPUFreq.80.build.f_cpu=80000000L -lolin32-lite.menu.CPUFreq.40=40MHz (40MHz XTAL) -lolin32-lite.menu.CPUFreq.40.build.f_cpu=40000000L -lolin32-lite.menu.CPUFreq.26=26MHz (26MHz XTAL) -lolin32-lite.menu.CPUFreq.26.build.f_cpu=26000000L -lolin32-lite.menu.CPUFreq.20=20MHz (40MHz XTAL) -lolin32-lite.menu.CPUFreq.20.build.f_cpu=20000000L -lolin32-lite.menu.CPUFreq.13=13MHz (26MHz XTAL) -lolin32-lite.menu.CPUFreq.13.build.f_cpu=13000000L -lolin32-lite.menu.CPUFreq.10=10MHz (40MHz XTAL) -lolin32-lite.menu.CPUFreq.10.build.f_cpu=10000000L - -lolin32-lite.menu.UploadSpeed.921600=921600 -lolin32-lite.menu.UploadSpeed.921600.upload.speed=921600 -lolin32-lite.menu.UploadSpeed.115200=115200 -lolin32-lite.menu.UploadSpeed.115200.upload.speed=115200 -lolin32-lite.menu.UploadSpeed.256000.windows=256000 -lolin32-lite.menu.UploadSpeed.256000.upload.speed=256000 -lolin32-lite.menu.UploadSpeed.230400.windows.upload.speed=256000 -lolin32-lite.menu.UploadSpeed.230400=230400 -lolin32-lite.menu.UploadSpeed.230400.upload.speed=230400 -lolin32-lite.menu.UploadSpeed.460800.linux=460800 -lolin32-lite.menu.UploadSpeed.460800.macosx=460800 -lolin32-lite.menu.UploadSpeed.460800.upload.speed=460800 -lolin32-lite.menu.UploadSpeed.512000.windows=512000 -lolin32-lite.menu.UploadSpeed.512000.upload.speed=512000 - -lolin32-lite.menu.DebugLevel.none=None -lolin32-lite.menu.DebugLevel.none.build.code_debug=0 -lolin32-lite.menu.DebugLevel.error=Error -lolin32-lite.menu.DebugLevel.error.build.code_debug=1 -lolin32-lite.menu.DebugLevel.warn=Warn -lolin32-lite.menu.DebugLevel.warn.build.code_debug=2 -lolin32-lite.menu.DebugLevel.info=Info -lolin32-lite.menu.DebugLevel.info.build.code_debug=3 -lolin32-lite.menu.DebugLevel.debug=Debug -lolin32-lite.menu.DebugLevel.debug.build.code_debug=4 -lolin32-lite.menu.DebugLevel.verbose=Verbose -lolin32-lite.menu.DebugLevel.verbose.build.code_debug=5 - -lolin32-lite.menu.EraseFlash.none=Disabled -lolin32-lite.menu.EraseFlash.none.upload.erase_cmd= -lolin32-lite.menu.EraseFlash.all=Enabled -lolin32-lite.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -pocket_32.name=Dongsen Tech Pocket 32 - -pocket_32.bootloader.tool=esptool_py -pocket_32.bootloader.tool.default=esptool_py - -pocket_32.upload.tool=esptool_py -pocket_32.upload.tool.default=esptool_py -pocket_32.upload.tool.network=esp_ota - -pocket_32.upload.maximum_size=1310720 -pocket_32.upload.maximum_data_size=327680 -pocket_32.upload.flags= -pocket_32.upload.extra_flags= - -pocket_32.serial.disableDTR=true -pocket_32.serial.disableRTS=true - -pocket_32.build.tarch=xtensa -pocket_32.build.bootloader_addr=0x1000 -pocket_32.build.target=esp32 -pocket_32.build.mcu=esp32 -pocket_32.build.core=esp32 -pocket_32.build.variant=pocket_32 -pocket_32.build.board=Pocket32 - -pocket_32.build.f_cpu=240000000L -pocket_32.build.flash_mode=dio -pocket_32.build.flash_size=4MB -pocket_32.build.boot=dio -pocket_32.build.partitions=default -pocket_32.build.defines= - -pocket_32.menu.FlashFreq.80=80MHz -pocket_32.menu.FlashFreq.80.build.flash_freq=80m -pocket_32.menu.FlashFreq.40=40MHz -pocket_32.menu.FlashFreq.40.build.flash_freq=40m - -pocket_32.menu.UploadSpeed.921600=921600 -pocket_32.menu.UploadSpeed.921600.upload.speed=921600 -pocket_32.menu.UploadSpeed.115200=115200 -pocket_32.menu.UploadSpeed.115200.upload.speed=115200 -pocket_32.menu.UploadSpeed.256000.windows=256000 -pocket_32.menu.UploadSpeed.256000.upload.speed=256000 -pocket_32.menu.UploadSpeed.230400.windows.upload.speed=256000 -pocket_32.menu.UploadSpeed.230400=230400 -pocket_32.menu.UploadSpeed.230400.upload.speed=230400 -pocket_32.menu.UploadSpeed.460800.linux=460800 -pocket_32.menu.UploadSpeed.460800.macosx=460800 -pocket_32.menu.UploadSpeed.460800.upload.speed=460800 -pocket_32.menu.UploadSpeed.512000.windows=512000 -pocket_32.menu.UploadSpeed.512000.upload.speed=512000 - -pocket_32.menu.DebugLevel.none=None -pocket_32.menu.DebugLevel.none.build.code_debug=0 -pocket_32.menu.DebugLevel.error=Error -pocket_32.menu.DebugLevel.error.build.code_debug=1 -pocket_32.menu.DebugLevel.warn=Warn -pocket_32.menu.DebugLevel.warn.build.code_debug=2 -pocket_32.menu.DebugLevel.info=Info -pocket_32.menu.DebugLevel.info.build.code_debug=3 -pocket_32.menu.DebugLevel.debug=Debug -pocket_32.menu.DebugLevel.debug.build.code_debug=4 -pocket_32.menu.DebugLevel.verbose=Verbose -pocket_32.menu.DebugLevel.verbose.build.code_debug=5 - -pocket_32.menu.EraseFlash.none=Disabled -pocket_32.menu.EraseFlash.none.upload.erase_cmd= -pocket_32.menu.EraseFlash.all=Enabled -pocket_32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -WeMosBat.name=WeMos WiFi&Bluetooth Battery - -WeMosBat.bootloader.tool=esptool_py -WeMosBat.bootloader.tool.default=esptool_py - -WeMosBat.upload.tool=esptool_py -WeMosBat.upload.tool.default=esptool_py -WeMosBat.upload.tool.network=esp_ota - -WeMosBat.upload.maximum_size=1310720 -WeMosBat.upload.maximum_data_size=327680 -WeMosBat.upload.flags= -WeMosBat.upload.extra_flags= - -WeMosBat.serial.disableDTR=true -WeMosBat.serial.disableRTS=true - -WeMosBat.build.tarch=xtensa -WeMosBat.build.bootloader_addr=0x1000 -WeMosBat.build.target=esp32 -WeMosBat.build.mcu=esp32 -WeMosBat.build.core=esp32 -WeMosBat.build.variant=pocket_32 -WeMosBat.build.board=Pocket32 - -WeMosBat.build.f_cpu=240000000L -WeMosBat.build.flash_mode=dio -WeMosBat.build.flash_size=4MB -WeMosBat.build.boot=dio -WeMosBat.build.partitions=default -WeMosBat.build.defines= - -WeMosBat.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -WeMosBat.menu.PartitionScheme.default.build.partitions=default -WeMosBat.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -WeMosBat.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -WeMosBat.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -WeMosBat.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -WeMosBat.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -WeMosBat.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -WeMosBat.menu.PartitionScheme.minimal.build.partitions=minimal -WeMosBat.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -WeMosBat.menu.PartitionScheme.no_ota.build.partitions=no_ota -WeMosBat.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -WeMosBat.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -WeMosBat.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -WeMosBat.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -WeMosBat.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -WeMosBat.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -WeMosBat.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -WeMosBat.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -WeMosBat.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -WeMosBat.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -WeMosBat.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -WeMosBat.menu.PartitionScheme.huge_app.build.partitions=huge_app -WeMosBat.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -WeMosBat.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -WeMosBat.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -WeMosBat.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -WeMosBat.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -WeMosBat.menu.PartitionScheme.fatflash.build.partitions=ffat -WeMosBat.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -WeMosBat.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -WeMosBat.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -WeMosBat.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -WeMosBat.menu.PartitionScheme.rainmaker=RainMaker -WeMosBat.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -WeMosBat.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -WeMosBat.menu.FlashFreq.80=80MHz -WeMosBat.menu.FlashFreq.80.build.flash_freq=80m -WeMosBat.menu.FlashFreq.40=40MHz -WeMosBat.menu.FlashFreq.40.build.flash_freq=40m - -WeMosBat.menu.UploadSpeed.921600=921600 -WeMosBat.menu.UploadSpeed.921600.upload.speed=921600 -WeMosBat.menu.UploadSpeed.115200=115200 -WeMosBat.menu.UploadSpeed.115200.upload.speed=115200 -WeMosBat.menu.UploadSpeed.256000.windows=256000 -WeMosBat.menu.UploadSpeed.256000.upload.speed=256000 -WeMosBat.menu.UploadSpeed.230400.windows.upload.speed=256000 -WeMosBat.menu.UploadSpeed.230400=230400 -WeMosBat.menu.UploadSpeed.230400.upload.speed=230400 -WeMosBat.menu.UploadSpeed.460800.linux=460800 -WeMosBat.menu.UploadSpeed.460800.macosx=460800 -WeMosBat.menu.UploadSpeed.460800.upload.speed=460800 -WeMosBat.menu.UploadSpeed.512000.windows=512000 -WeMosBat.menu.UploadSpeed.512000.upload.speed=512000 - -WeMosBat.menu.DebugLevel.none=None -WeMosBat.menu.DebugLevel.none.build.code_debug=0 -WeMosBat.menu.DebugLevel.error=Error -WeMosBat.menu.DebugLevel.error.build.code_debug=1 -WeMosBat.menu.DebugLevel.warn=Warn -WeMosBat.menu.DebugLevel.warn.build.code_debug=2 -WeMosBat.menu.DebugLevel.info=Info -WeMosBat.menu.DebugLevel.info.build.code_debug=3 -WeMosBat.menu.DebugLevel.debug=Debug -WeMosBat.menu.DebugLevel.debug.build.code_debug=4 -WeMosBat.menu.DebugLevel.verbose=Verbose -WeMosBat.menu.DebugLevel.verbose.build.code_debug=5 - -WeMosBat.menu.EraseFlash.none=Disabled -WeMosBat.menu.EraseFlash.none.upload.erase_cmd= -WeMosBat.menu.EraseFlash.all=Enabled -WeMosBat.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -espea32.name=ESPea32 - -espea32.bootloader.tool=esptool_py -espea32.bootloader.tool.default=esptool_py - -espea32.upload.tool=esptool_py -espea32.upload.tool.default=esptool_py -espea32.upload.tool.network=esp_ota - -espea32.upload.maximum_size=1310720 -espea32.upload.maximum_data_size=327680 -espea32.upload.flags= -espea32.upload.extra_flags= - -espea32.serial.disableDTR=true -espea32.serial.disableRTS=true - -espea32.build.tarch=xtensa -espea32.build.bootloader_addr=0x1000 -espea32.build.target=esp32 -espea32.build.mcu=esp32 -espea32.build.core=esp32 -espea32.build.variant=espea32 -espea32.build.board=ESPea32 - -espea32.build.f_cpu=240000000L -espea32.build.flash_mode=dio -espea32.build.flash_size=4MB -espea32.build.boot=dio -espea32.build.partitions=default -espea32.build.defines= - -espea32.menu.FlashFreq.80=80MHz -espea32.menu.FlashFreq.80.build.flash_freq=80m -espea32.menu.FlashFreq.40=40MHz -espea32.menu.FlashFreq.40.build.flash_freq=40m - -espea32.menu.UploadSpeed.921600=921600 -espea32.menu.UploadSpeed.921600.upload.speed=921600 -espea32.menu.UploadSpeed.115200=115200 -espea32.menu.UploadSpeed.115200.upload.speed=115200 -espea32.menu.UploadSpeed.256000.windows=256000 -espea32.menu.UploadSpeed.256000.upload.speed=256000 -espea32.menu.UploadSpeed.230400.windows.upload.speed=256000 -espea32.menu.UploadSpeed.230400=230400 -espea32.menu.UploadSpeed.230400.upload.speed=230400 -espea32.menu.UploadSpeed.460800.linux=460800 -espea32.menu.UploadSpeed.460800.macosx=460800 -espea32.menu.UploadSpeed.460800.upload.speed=460800 -espea32.menu.UploadSpeed.512000.windows=512000 -espea32.menu.UploadSpeed.512000.upload.speed=512000 - -espea32.menu.DebugLevel.none=None -espea32.menu.DebugLevel.none.build.code_debug=0 -espea32.menu.DebugLevel.error=Error -espea32.menu.DebugLevel.error.build.code_debug=1 -espea32.menu.DebugLevel.warn=Warn -espea32.menu.DebugLevel.warn.build.code_debug=2 -espea32.menu.DebugLevel.info=Info -espea32.menu.DebugLevel.info.build.code_debug=3 -espea32.menu.DebugLevel.debug=Debug -espea32.menu.DebugLevel.debug.build.code_debug=4 -espea32.menu.DebugLevel.verbose=Verbose -espea32.menu.DebugLevel.verbose.build.code_debug=5 - -espea32.menu.EraseFlash.none=Disabled -espea32.menu.EraseFlash.none.upload.erase_cmd= -espea32.menu.EraseFlash.all=Enabled -espea32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -quantum.name=Noduino Quantum - -quantum.bootloader.tool=esptool_py -quantum.bootloader.tool.default=esptool_py - -quantum.upload.tool=esptool_py -quantum.upload.tool.default=esptool_py -quantum.upload.tool.network=esp_ota - -quantum.upload.maximum_size=1310720 -quantum.upload.maximum_data_size=327680 -quantum.upload.flags= -quantum.upload.extra_flags= - -quantum.serial.disableDTR=true -quantum.serial.disableRTS=true - -quantum.build.tarch=xtensa -quantum.build.bootloader_addr=0x1000 -quantum.build.target=esp32 -quantum.build.mcu=esp32 -quantum.build.core=esp32 -quantum.build.variant=quantum -quantum.build.board=QUANTUM - -quantum.build.f_cpu=240000000L -quantum.build.flash_mode=qio -quantum.build.flash_size=16MB -quantum.build.boot=dio -quantum.build.partitions=default -quantum.build.defines= - -quantum.menu.FlashFreq.80=80MHz -quantum.menu.FlashFreq.80.build.flash_freq=80m -quantum.menu.FlashFreq.40=40MHz -quantum.menu.FlashFreq.40.build.flash_freq=40m - -quantum.menu.UploadSpeed.921600=921600 -quantum.menu.UploadSpeed.921600.upload.speed=921600 -quantum.menu.UploadSpeed.115200=115200 -quantum.menu.UploadSpeed.115200.upload.speed=115200 -quantum.menu.UploadSpeed.256000.windows=256000 -quantum.menu.UploadSpeed.256000.upload.speed=256000 -quantum.menu.UploadSpeed.230400.windows.upload.speed=256000 -quantum.menu.UploadSpeed.230400=230400 -quantum.menu.UploadSpeed.230400.upload.speed=230400 -quantum.menu.UploadSpeed.460800.linux=460800 -quantum.menu.UploadSpeed.460800.macosx=460800 -quantum.menu.UploadSpeed.460800.upload.speed=460800 -quantum.menu.UploadSpeed.512000.windows=512000 -quantum.menu.UploadSpeed.512000.upload.speed=512000 - -quantum.menu.DebugLevel.none=None -quantum.menu.DebugLevel.none.build.code_debug=0 -quantum.menu.DebugLevel.error=Error -quantum.menu.DebugLevel.error.build.code_debug=1 -quantum.menu.DebugLevel.warn=Warn -quantum.menu.DebugLevel.warn.build.code_debug=2 -quantum.menu.DebugLevel.info=Info -quantum.menu.DebugLevel.info.build.code_debug=3 -quantum.menu.DebugLevel.debug=Debug -quantum.menu.DebugLevel.debug.build.code_debug=4 -quantum.menu.DebugLevel.verbose=Verbose -quantum.menu.DebugLevel.verbose.build.code_debug=5 - -quantum.menu.EraseFlash.none=Disabled -quantum.menu.EraseFlash.none.upload.erase_cmd= -quantum.menu.EraseFlash.all=Enabled -quantum.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -node32s.name=Node32s - -node32s.bootloader.tool=esptool_py -node32s.bootloader.tool.default=esptool_py - -node32s.upload.tool=esptool_py -node32s.upload.tool.default=esptool_py -node32s.upload.tool.network=esp_ota - -node32s.upload.maximum_size=1310720 -node32s.upload.maximum_data_size=327680 -node32s.upload.flags= -node32s.upload.extra_flags= - -node32s.serial.disableDTR=true -node32s.serial.disableRTS=true - -node32s.build.tarch=xtensa -node32s.build.bootloader_addr=0x1000 -node32s.build.target=esp32 -node32s.build.mcu=esp32 -node32s.build.core=esp32 -node32s.build.variant=node32s -node32s.build.board=Node32s - -node32s.build.f_cpu=240000000L -node32s.build.flash_mode=dio -node32s.build.flash_size=4MB -node32s.build.boot=dio -node32s.build.partitions=default -node32s.build.defines= - -node32s.menu.PartitionScheme.default=Default -node32s.menu.PartitionScheme.default.build.partitions=default -node32s.menu.PartitionScheme.no_ota=No OTA (Large APP) -node32s.menu.PartitionScheme.no_ota.build.partitions=no_ota -node32s.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -node32s.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -node32s.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -node32s.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -node32s.menu.FlashFreq.80=80MHz -node32s.menu.FlashFreq.80.build.flash_freq=80m -node32s.menu.FlashFreq.40=40MHz -node32s.menu.FlashFreq.40.build.flash_freq=40m - -node32s.menu.UploadSpeed.921600=921600 -node32s.menu.UploadSpeed.921600.upload.speed=921600 -node32s.menu.UploadSpeed.115200=115200 -node32s.menu.UploadSpeed.115200.upload.speed=115200 -node32s.menu.UploadSpeed.256000.windows=256000 -node32s.menu.UploadSpeed.256000.upload.speed=256000 -node32s.menu.UploadSpeed.230400.windows.upload.speed=256000 -node32s.menu.UploadSpeed.230400=230400 -node32s.menu.UploadSpeed.230400.upload.speed=230400 -node32s.menu.UploadSpeed.460800.linux=460800 -node32s.menu.UploadSpeed.460800.macosx=460800 -node32s.menu.UploadSpeed.460800.upload.speed=460800 -node32s.menu.UploadSpeed.512000.windows=512000 -node32s.menu.UploadSpeed.512000.upload.speed=512000 - -node32s.menu.DebugLevel.none=None -node32s.menu.DebugLevel.none.build.code_debug=0 -node32s.menu.DebugLevel.error=Error -node32s.menu.DebugLevel.error.build.code_debug=1 -node32s.menu.DebugLevel.warn=Warn -node32s.menu.DebugLevel.warn.build.code_debug=2 -node32s.menu.DebugLevel.info=Info -node32s.menu.DebugLevel.info.build.code_debug=3 -node32s.menu.DebugLevel.debug=Debug -node32s.menu.DebugLevel.debug.build.code_debug=4 -node32s.menu.DebugLevel.verbose=Verbose -node32s.menu.DebugLevel.verbose.build.code_debug=5 - -node32s.menu.EraseFlash.none=Disabled -node32s.menu.EraseFlash.none.upload.erase_cmd= -node32s.menu.EraseFlash.all=Enabled -node32s.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -hornbill32dev.name=Hornbill ESP32 Dev - -hornbill32dev.bootloader.tool=esptool_py -hornbill32dev.bootloader.tool.default=esptool_py - -hornbill32dev.upload.tool=esptool_py -hornbill32dev.upload.tool.default=esptool_py -hornbill32dev.upload.tool.network=esp_ota - -hornbill32dev.upload.maximum_size=1310720 -hornbill32dev.upload.maximum_data_size=327680 -hornbill32dev.upload.flags= -hornbill32dev.upload.extra_flags= - -hornbill32dev.serial.disableDTR=true -hornbill32dev.serial.disableRTS=true - -hornbill32dev.build.tarch=xtensa -hornbill32dev.build.bootloader_addr=0x1000 -hornbill32dev.build.target=esp32 -hornbill32dev.build.mcu=esp32 -hornbill32dev.build.core=esp32 -hornbill32dev.build.variant=hornbill32dev -hornbill32dev.build.board=HORNBILL_ESP32_DEV - -hornbill32dev.build.f_cpu=240000000L -hornbill32dev.build.flash_mode=dio -hornbill32dev.build.flash_size=4MB -hornbill32dev.build.boot=dio -hornbill32dev.build.partitions=default -hornbill32dev.build.defines= - -hornbill32dev.menu.FlashFreq.80=80MHz -hornbill32dev.menu.FlashFreq.80.build.flash_freq=80m -hornbill32dev.menu.FlashFreq.40=40MHz -hornbill32dev.menu.FlashFreq.40.build.flash_freq=40m - -hornbill32dev.menu.UploadSpeed.921600=921600 -hornbill32dev.menu.UploadSpeed.921600.upload.speed=921600 -hornbill32dev.menu.UploadSpeed.115200=115200 -hornbill32dev.menu.UploadSpeed.115200.upload.speed=115200 -hornbill32dev.menu.UploadSpeed.256000.windows=256000 -hornbill32dev.menu.UploadSpeed.256000.upload.speed=256000 -hornbill32dev.menu.UploadSpeed.230400.windows.upload.speed=256000 -hornbill32dev.menu.UploadSpeed.230400=230400 -hornbill32dev.menu.UploadSpeed.230400.upload.speed=230400 -hornbill32dev.menu.UploadSpeed.460800.linux=460800 -hornbill32dev.menu.UploadSpeed.460800.macosx=460800 -hornbill32dev.menu.UploadSpeed.460800.upload.speed=460800 -hornbill32dev.menu.UploadSpeed.512000.windows=512000 -hornbill32dev.menu.UploadSpeed.512000.upload.speed=512000 - -hornbill32dev.menu.DebugLevel.none=None -hornbill32dev.menu.DebugLevel.none.build.code_debug=0 -hornbill32dev.menu.DebugLevel.error=Error -hornbill32dev.menu.DebugLevel.error.build.code_debug=1 -hornbill32dev.menu.DebugLevel.warn=Warn -hornbill32dev.menu.DebugLevel.warn.build.code_debug=2 -hornbill32dev.menu.DebugLevel.info=Info -hornbill32dev.menu.DebugLevel.info.build.code_debug=3 -hornbill32dev.menu.DebugLevel.debug=Debug -hornbill32dev.menu.DebugLevel.debug.build.code_debug=4 -hornbill32dev.menu.DebugLevel.verbose=Verbose -hornbill32dev.menu.DebugLevel.verbose.build.code_debug=5 - -hornbill32dev.menu.EraseFlash.none=Disabled -hornbill32dev.menu.EraseFlash.none.upload.erase_cmd= -hornbill32dev.menu.EraseFlash.all=Enabled -hornbill32dev.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -hornbill32minima.name=Hornbill ESP32 Minima - -hornbill32minima.bootloader.tool=esptool_py -hornbill32minima.bootloader.tool.default=esptool_py - -hornbill32minima.upload.tool=esptool_py -hornbill32minima.upload.tool.default=esptool_py -hornbill32minima.upload.tool.network=esp_ota - -hornbill32minima.upload.maximum_size=1310720 -hornbill32minima.upload.maximum_data_size=327680 -hornbill32minima.upload.flags= -hornbill32minima.upload.extra_flags= - -hornbill32minima.serial.disableDTR=true -hornbill32minima.serial.disableRTS=true - -hornbill32minima.build.tarch=xtensa -hornbill32minima.build.bootloader_addr=0x1000 -hornbill32minima.build.target=esp32 -hornbill32minima.build.mcu=esp32 -hornbill32minima.build.core=esp32 -hornbill32minima.build.variant=hornbill32minima -hornbill32minima.build.board=HORNBILL_ESP32_MINIMA -hornbill32minima.build.f_cpu=240000000L -hornbill32minima.build.flash_mode=dio -hornbill32minima.build.flash_size=4MB -hornbill32minima.build.boot=dio -hornbill32minima.build.partitions=default -hornbill32minima.build.defines= - -hornbill32minima.menu.FlashFreq.80=80MHz -hornbill32minima.menu.FlashFreq.80.build.flash_freq=80m -hornbill32minima.menu.FlashFreq.40=40MHz -hornbill32minima.menu.FlashFreq.40.build.flash_freq=40m - -hornbill32minima.menu.UploadSpeed.921600=921600 -hornbill32minima.menu.UploadSpeed.921600.upload.speed=921600 -hornbill32minima.menu.UploadSpeed.115200=115200 -hornbill32minima.menu.UploadSpeed.115200.upload.speed=115200 -hornbill32minima.menu.UploadSpeed.256000.windows=256000 -hornbill32minima.menu.UploadSpeed.256000.upload.speed=256000 -hornbill32minima.menu.UploadSpeed.230400.windows.upload.speed=256000 -hornbill32minima.menu.UploadSpeed.230400=230400 -hornbill32minima.menu.UploadSpeed.230400.upload.speed=230400 -hornbill32minima.menu.UploadSpeed.460800.linux=460800 -hornbill32minima.menu.UploadSpeed.460800.macosx=460800 -hornbill32minima.menu.UploadSpeed.460800.upload.speed=460800 -hornbill32minima.menu.UploadSpeed.512000.windows=512000 -hornbill32minima.menu.UploadSpeed.512000.upload.speed=512000 - -hornbill32minima.menu.DebugLevel.none=None -hornbill32minima.menu.DebugLevel.none.build.code_debug=0 -hornbill32minima.menu.DebugLevel.error=Error -hornbill32minima.menu.DebugLevel.error.build.code_debug=1 -hornbill32minima.menu.DebugLevel.warn=Warn -hornbill32minima.menu.DebugLevel.warn.build.code_debug=2 -hornbill32minima.menu.DebugLevel.info=Info -hornbill32minima.menu.DebugLevel.info.build.code_debug=3 -hornbill32minima.menu.DebugLevel.debug=Debug -hornbill32minima.menu.DebugLevel.debug.build.code_debug=4 -hornbill32minima.menu.DebugLevel.verbose=Verbose -hornbill32minima.menu.DebugLevel.verbose.build.code_debug=5 - -hornbill32minima.menu.EraseFlash.none=Disabled -hornbill32minima.menu.EraseFlash.none.upload.erase_cmd= -hornbill32minima.menu.EraseFlash.all=Enabled -hornbill32minima.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -dfrobot_beetle_esp32c3.name=DFRobot Beetle ESP32-C3 -#dfrobot_beetle_esp32c3.vid.0=0x3343 -#dfrobot_beetle_esp32c3.pid.0=0x8364 -dfrobot_beetle_esp32c3.vid.0=0x303a -dfrobot_beetle_esp32c3.pid.0=0x1001 - -dfrobot_beetle_esp32c3.bootloader.tool=esptool_py -dfrobot_beetle_esp32c3.bootloader.tool.default=esptool_py - -dfrobot_beetle_esp32c3.upload.tool=esptool_py -dfrobot_beetle_esp32c3.upload.tool.default=esptool_py -dfrobot_beetle_esp32c3.upload.tool.network=esp_ota - -dfrobot_beetle_esp32c3.upload.maximum_size=1310720 -dfrobot_beetle_esp32c3.upload.maximum_data_size=327680 -dfrobot_beetle_esp32c3.upload.flags= -dfrobot_beetle_esp32c3.upload.extra_flags= -dfrobot_beetle_esp32c3.upload.use_1200bps_touch=false -dfrobot_beetle_esp32c3.upload.wait_for_upload_port=false - -dfrobot_beetle_esp32c3.serial.disableDTR=false -dfrobot_beetle_esp32c3.serial.disableRTS=false - -dfrobot_beetle_esp32c3.build.tarch=riscv32 -dfrobot_beetle_esp32c3.build.target=esp -dfrobot_beetle_esp32c3.build.mcu=esp32c3 -dfrobot_beetle_esp32c3.build.core=esp32 -dfrobot_beetle_esp32c3.build.variant=dfrobot_beetle_esp32c3 -#dfrobot_beetle_esp32c3.build.board=DFROBOT_BEETLE_ESP32_C3 -dfrobot_beetle_esp32c3.build.board=ESP32C3_DEV -dfrobot_beetle_esp32c3.build.bootloader_addr=0x0 - -dfrobot_beetle_esp32c3.build.cdc_on_boot=0 -dfrobot_beetle_esp32c3.build.f_cpu=160000000L -dfrobot_beetle_esp32c3.build.flash_size=4MB -dfrobot_beetle_esp32c3.build.flash_freq=80m -dfrobot_beetle_esp32c3.build.flash_mode=qio -dfrobot_beetle_esp32c3.build.boot=qio -dfrobot_beetle_esp32c3.build.partitions=default -dfrobot_beetle_esp32c3.build.defines= - -dfrobot_beetle_esp32c3.menu.CDCOnBoot.default=Disabled -dfrobot_beetle_esp32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -dfrobot_beetle_esp32c3.menu.CDCOnBoot.cdc=Enabled -dfrobot_beetle_esp32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -dfrobot_beetle_esp32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.default.build.partitions=default -dfrobot_beetle_esp32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dfrobot_beetle_esp32c3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -dfrobot_beetle_esp32c3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -dfrobot_beetle_esp32c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_beetle_esp32c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -dfrobot_beetle_esp32c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dfrobot_beetle_esp32c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dfrobot_beetle_esp32c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_beetle_esp32c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_beetle_esp32c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_beetle_esp32c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_beetle_esp32c3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.fatflash.build.partitions=ffat -dfrobot_beetle_esp32c3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -dfrobot_beetle_esp32c3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -dfrobot_beetle_esp32c3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -dfrobot_beetle_esp32c3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -dfrobot_beetle_esp32c3.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_beetle_esp32c3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_beetle_esp32c3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -dfrobot_beetle_esp32c3.menu.CPUFreq.160=160MHz (WiFi) -dfrobot_beetle_esp32c3.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_beetle_esp32c3.menu.CPUFreq.80=80MHz (WiFi) -dfrobot_beetle_esp32c3.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_beetle_esp32c3.menu.CPUFreq.40=40MHz -dfrobot_beetle_esp32c3.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_beetle_esp32c3.menu.CPUFreq.20=20MHz -dfrobot_beetle_esp32c3.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_beetle_esp32c3.menu.CPUFreq.10=10MHz -dfrobot_beetle_esp32c3.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_beetle_esp32c3.menu.FlashMode.qio=QIO -dfrobot_beetle_esp32c3.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_beetle_esp32c3.menu.FlashMode.qio.build.boot=qio -dfrobot_beetle_esp32c3.menu.FlashMode.dio=DIO -dfrobot_beetle_esp32c3.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_beetle_esp32c3.menu.FlashMode.dio.build.boot=dio - -dfrobot_beetle_esp32c3.menu.FlashFreq.80=80MHz -dfrobot_beetle_esp32c3.menu.FlashFreq.80.build.flash_freq=80m -dfrobot_beetle_esp32c3.menu.FlashFreq.40=40MHz -dfrobot_beetle_esp32c3.menu.FlashFreq.40.build.flash_freq=40m - -dfrobot_beetle_esp32c3.menu.FlashSize.4M=4MB (32Mb) -dfrobot_beetle_esp32c3.menu.FlashSize.4M.build.flash_size=4MB - -dfrobot_beetle_esp32c3.menu.UploadSpeed.921600=921600 -dfrobot_beetle_esp32c3.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_beetle_esp32c3.menu.UploadSpeed.115200=115200 -dfrobot_beetle_esp32c3.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_beetle_esp32c3.menu.UploadSpeed.256000.windows=256000 -dfrobot_beetle_esp32c3.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_beetle_esp32c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_beetle_esp32c3.menu.UploadSpeed.230400=230400 -dfrobot_beetle_esp32c3.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_beetle_esp32c3.menu.UploadSpeed.460800.linux=460800 -dfrobot_beetle_esp32c3.menu.UploadSpeed.460800.macosx=460800 -dfrobot_beetle_esp32c3.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_beetle_esp32c3.menu.UploadSpeed.512000.windows=512000 -dfrobot_beetle_esp32c3.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_beetle_esp32c3.menu.DebugLevel.none=None -dfrobot_beetle_esp32c3.menu.DebugLevel.none.build.code_debug=0 -dfrobot_beetle_esp32c3.menu.DebugLevel.error=Error -dfrobot_beetle_esp32c3.menu.DebugLevel.error.build.code_debug=1 -dfrobot_beetle_esp32c3.menu.DebugLevel.warn=Warn -dfrobot_beetle_esp32c3.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_beetle_esp32c3.menu.DebugLevel.info=Info -dfrobot_beetle_esp32c3.menu.DebugLevel.info.build.code_debug=3 -dfrobot_beetle_esp32c3.menu.DebugLevel.debug=Debug -dfrobot_beetle_esp32c3.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_beetle_esp32c3.menu.DebugLevel.verbose=Verbose -dfrobot_beetle_esp32c3.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_beetle_esp32c3.menu.EraseFlash.none=Disabled -dfrobot_beetle_esp32c3.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_beetle_esp32c3.menu.EraseFlash.all=Enabled -dfrobot_beetle_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -dfrobot_beetle_esp32c6.name=DFRobot Beetle ESP32-C6 -dfrobot_beetle_esp32c6.vid.0=0x303a -dfrobot_beetle_esp32c6.pid.0=0x1001 - -dfrobot_beetle_esp32c6.bootloader.tool=esptool_py -dfrobot_beetle_esp32c6.bootloader.tool.default=esptool_py - -dfrobot_beetle_esp32c6.upload.tool=esptool_py -dfrobot_beetle_esp32c6.upload.tool.default=esptool_py -dfrobot_beetle_esp32c6.upload.tool.network=esp_ota - -dfrobot_beetle_esp32c6.upload.maximum_size=1310720 -dfrobot_beetle_esp32c6.upload.maximum_data_size=327680 -dfrobot_beetle_esp32c6.upload.flags= -dfrobot_beetle_esp32c6.upload.extra_flags= -dfrobot_beetle_esp32c6.upload.use_1200bps_touch=false -dfrobot_beetle_esp32c6.upload.wait_for_upload_port=false - -dfrobot_beetle_esp32c6.serial.disableDTR=false -dfrobot_beetle_esp32c6.serial.disableRTS=false - -dfrobot_beetle_esp32c6.build.tarch=riscv32 -dfrobot_beetle_esp32c6.build.target=esp -dfrobot_beetle_esp32c6.build.mcu=esp32c6 -dfrobot_beetle_esp32c6.build.core=esp32 -dfrobot_beetle_esp32c6.build.variant=dfrobot_beetle_esp32c6 -dfrobot_beetle_esp32c6.build.board=DFROBOT_BEETLE_ESP32C6 -dfrobot_beetle_esp32c6.build.bootloader_addr=0x0 - -dfrobot_beetle_esp32c6.build.cdc_on_boot=0 -dfrobot_beetle_esp32c6.build.f_cpu=160000000L -dfrobot_beetle_esp32c6.build.flash_size=4MB -dfrobot_beetle_esp32c6.build.flash_freq=80m -dfrobot_beetle_esp32c6.build.flash_mode=qio -dfrobot_beetle_esp32c6.build.boot=qio -dfrobot_beetle_esp32c6.build.partitions=default -dfrobot_beetle_esp32c6.build.defines= - -## IDE 2.0 Seems to not update the value -dfrobot_beetle_esp32c6.menu.JTAGAdapter.default=Disabled -dfrobot_beetle_esp32c6.menu.JTAGAdapter.default.build.copy_jtag_files=0 -dfrobot_beetle_esp32c6.menu.JTAGAdapter.builtin=Integrated USB JTAG -dfrobot_beetle_esp32c6.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -dfrobot_beetle_esp32c6.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -dfrobot_beetle_esp32c6.menu.JTAGAdapter.external=FTDI Adapter -dfrobot_beetle_esp32c6.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -dfrobot_beetle_esp32c6.menu.JTAGAdapter.external.build.copy_jtag_files=1 -dfrobot_beetle_esp32c6.menu.JTAGAdapter.bridge=ESP USB Bridge -dfrobot_beetle_esp32c6.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -dfrobot_beetle_esp32c6.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -dfrobot_beetle_esp32c6.menu.CDCOnBoot.default=Disabled -dfrobot_beetle_esp32c6.menu.CDCOnBoot.default.build.cdc_on_boot=0 -dfrobot_beetle_esp32c6.menu.CDCOnBoot.cdc=Enabled -dfrobot_beetle_esp32c6.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -dfrobot_beetle_esp32c6.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.default.build.partitions=default -dfrobot_beetle_esp32c6.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dfrobot_beetle_esp32c6.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_beetle_esp32c6.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.no_ota.build.partitions=no_ota -dfrobot_beetle_esp32c6.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dfrobot_beetle_esp32c6.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dfrobot_beetle_esp32c6.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_beetle_esp32c6.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_beetle_esp32c6.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_beetle_esp32c6.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_beetle_esp32c6.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_beetle_esp32c6.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_beetle_esp32c6.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_beetle_esp32c6.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -dfrobot_beetle_esp32c6.menu.PartitionScheme.custom=Custom -dfrobot_beetle_esp32c6.menu.PartitionScheme.custom.build.partitions= -dfrobot_beetle_esp32c6.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -dfrobot_beetle_esp32c6.menu.CPUFreq.160=160MHz (WiFi) -dfrobot_beetle_esp32c6.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_beetle_esp32c6.menu.CPUFreq.80=80MHz (WiFi) -dfrobot_beetle_esp32c6.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_beetle_esp32c6.menu.CPUFreq.40=40MHz -dfrobot_beetle_esp32c6.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_beetle_esp32c6.menu.CPUFreq.20=20MHz -dfrobot_beetle_esp32c6.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_beetle_esp32c6.menu.CPUFreq.10=10MHz -dfrobot_beetle_esp32c6.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_beetle_esp32c6.menu.FlashMode.qio=QIO -dfrobot_beetle_esp32c6.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_beetle_esp32c6.menu.FlashMode.qio.build.boot=qio -dfrobot_beetle_esp32c6.menu.FlashMode.dio=DIO -dfrobot_beetle_esp32c6.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_beetle_esp32c6.menu.FlashMode.dio.build.boot=dio - -dfrobot_beetle_esp32c6.menu.FlashFreq.80=80MHz -dfrobot_beetle_esp32c6.menu.FlashFreq.80.build.flash_freq=80m -dfrobot_beetle_esp32c6.menu.FlashFreq.40=40MHz -dfrobot_beetle_esp32c6.menu.FlashFreq.40.build.flash_freq=40m - -dfrobot_beetle_esp32c6.menu.FlashSize.4M=4MB (32Mb) -dfrobot_beetle_esp32c6.menu.FlashSize.4M.build.flash_size=4MB - -dfrobot_beetle_esp32c6.menu.UploadSpeed.921600=921600 -dfrobot_beetle_esp32c6.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_beetle_esp32c6.menu.UploadSpeed.115200=115200 -dfrobot_beetle_esp32c6.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_beetle_esp32c6.menu.UploadSpeed.256000.windows=256000 -dfrobot_beetle_esp32c6.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_beetle_esp32c6.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_beetle_esp32c6.menu.UploadSpeed.230400=230400 -dfrobot_beetle_esp32c6.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_beetle_esp32c6.menu.UploadSpeed.460800.linux=460800 -dfrobot_beetle_esp32c6.menu.UploadSpeed.460800.macosx=460800 -dfrobot_beetle_esp32c6.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_beetle_esp32c6.menu.UploadSpeed.512000.windows=512000 -dfrobot_beetle_esp32c6.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_beetle_esp32c6.menu.DebugLevel.none=None -dfrobot_beetle_esp32c6.menu.DebugLevel.none.build.code_debug=0 -dfrobot_beetle_esp32c6.menu.DebugLevel.error=Error -dfrobot_beetle_esp32c6.menu.DebugLevel.error.build.code_debug=1 -dfrobot_beetle_esp32c6.menu.DebugLevel.warn=Warn -dfrobot_beetle_esp32c6.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_beetle_esp32c6.menu.DebugLevel.info=Info -dfrobot_beetle_esp32c6.menu.DebugLevel.info.build.code_debug=3 -dfrobot_beetle_esp32c6.menu.DebugLevel.debug=Debug -dfrobot_beetle_esp32c6.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_beetle_esp32c6.menu.DebugLevel.verbose=Verbose -dfrobot_beetle_esp32c6.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_beetle_esp32c6.menu.EraseFlash.none=Disabled -dfrobot_beetle_esp32c6.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_beetle_esp32c6.menu.EraseFlash.all=Enabled -dfrobot_beetle_esp32c6.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -dfrobot_firebeetle2_esp32e.name=FireBeetle 2 ESP32-E - -dfrobot_firebeetle2_esp32e.upload.tool=esptool_py -dfrobot_firebeetle2_esp32e.upload.tool.default=esptool_py -dfrobot_firebeetle2_esp32e.upload.maximum_size=1310720 -dfrobot_firebeetle2_esp32e.upload.maximum_data_size=327680 -dfrobot_firebeetle2_esp32e.upload.flags= -dfrobot_firebeetle2_esp32e.upload.extra_flags= - -dfrobot_firebeetle2_esp32e.serial.disableDTR=true -dfrobot_firebeetle2_esp32e.serial.disableRTS=true - -dfrobot_firebeetle2_esp32e.build.tarch=xtensa -dfrobot_firebeetle2_esp32e.build.bootloader_addr=0x1000 -dfrobot_firebeetle2_esp32e.build.target=esp32 -dfrobot_firebeetle2_esp32e.build.mcu=esp32 -dfrobot_firebeetle2_esp32e.build.core=esp32 -dfrobot_firebeetle2_esp32e.build.variant=dfrobot_firebeetle2_esp32e -dfrobot_firebeetle2_esp32e.build.board=DFROBOT_FIREBEETLE_2_ESP32E - -dfrobot_firebeetle2_esp32e.build.f_cpu=240000000L -dfrobot_firebeetle2_esp32e.build.flash_size=4MB -dfrobot_firebeetle2_esp32e.build.flash_freq=40m -dfrobot_firebeetle2_esp32e.build.flash_mode=dio -dfrobot_firebeetle2_esp32e.build.boot=dio -dfrobot_firebeetle2_esp32e.build.partitions=default -dfrobot_firebeetle2_esp32e.build.defines= -dfrobot_firebeetle2_esp32e.build.loop_core= -dfrobot_firebeetle2_esp32e.build.event_core= - -dfrobot_firebeetle2_esp32e.menu.PSRAM.disabled=Disabled -dfrobot_firebeetle2_esp32e.menu.PSRAM.disabled.build.defines= -dfrobot_firebeetle2_esp32e.menu.PSRAM.disabled.build.extra_libs= -dfrobot_firebeetle2_esp32e.menu.PSRAM.enabled=Enabled -dfrobot_firebeetle2_esp32e.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -dfrobot_firebeetle2_esp32e.menu.PSRAM.enabled.build.extra_libs= - -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.default.build.partitions=default -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.default_8MB=8M Flash (3MB APP/1.5MB FAT) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.no_ota.build.partitions=no_ota -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.fatflash.build.partitions=ffat -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_firebeetle2_esp32e.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -dfrobot_firebeetle2_esp32e.menu.CPUFreq.240=240MHz (WiFi/BT) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.240.build.f_cpu=240000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.160=160MHz (WiFi/BT) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.80=80MHz (WiFi/BT) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.40=40MHz (40MHz XTAL) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.26=26MHz (26MHz XTAL) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.26.build.f_cpu=26000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.20=20MHz (40MHz XTAL) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.13=13MHz (26MHz XTAL) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.13.build.f_cpu=13000000L -dfrobot_firebeetle2_esp32e.menu.CPUFreq.10=10MHz (40MHz XTAL) -dfrobot_firebeetle2_esp32e.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_firebeetle2_esp32e.menu.FlashMode.qio=QIO -dfrobot_firebeetle2_esp32e.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_firebeetle2_esp32e.menu.FlashMode.qio.build.boot=qio -dfrobot_firebeetle2_esp32e.menu.FlashMode.dio=DIO -dfrobot_firebeetle2_esp32e.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_firebeetle2_esp32e.menu.FlashMode.dio.build.boot=dio - -dfrobot_firebeetle2_esp32e.menu.FlashFreq.80=80MHz -dfrobot_firebeetle2_esp32e.menu.FlashFreq.80.build.flash_freq=80m -dfrobot_firebeetle2_esp32e.menu.FlashFreq.40=40MHz -dfrobot_firebeetle2_esp32e.menu.FlashFreq.40.build.flash_freq=40m - -dfrobot_firebeetle2_esp32e.menu.FlashSize.4M=4MB (32Mb) -dfrobot_firebeetle2_esp32e.menu.FlashSize.4M.build.flash_size=4MB -dfrobot_firebeetle2_esp32e.menu.FlashSize.8M=8MB (64Mb) -dfrobot_firebeetle2_esp32e.menu.FlashSize.8M.build.flash_size=8MB -dfrobot_firebeetle2_esp32e.menu.FlashSize.8M.build.partitions=default_8MB -dfrobot_firebeetle2_esp32e.menu.FlashSize.2M=2MB (16Mb) -dfrobot_firebeetle2_esp32e.menu.FlashSize.2M.build.flash_size=2MB -dfrobot_firebeetle2_esp32e.menu.FlashSize.2M.build.partitions=minimal -dfrobot_firebeetle2_esp32e.menu.FlashSize.16M=16MB (128Mb) -dfrobot_firebeetle2_esp32e.menu.FlashSize.16M.build.flash_size=16MB - -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.921600=921600 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.115200=115200 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.256000.windows=256000 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.230400=230400 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.460800.linux=460800 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.460800.macosx=460800 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.512000.windows=512000 -dfrobot_firebeetle2_esp32e.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_firebeetle2_esp32e.menu.LoopCore.1=Core 1 -dfrobot_firebeetle2_esp32e.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -dfrobot_firebeetle2_esp32e.menu.LoopCore.0=Core 0 -dfrobot_firebeetle2_esp32e.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -dfrobot_firebeetle2_esp32e.menu.EventsCore.1=Core 1 -dfrobot_firebeetle2_esp32e.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -dfrobot_firebeetle2_esp32e.menu.EventsCore.0=Core 0 -dfrobot_firebeetle2_esp32e.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -dfrobot_firebeetle2_esp32e.menu.DebugLevel.none=None -dfrobot_firebeetle2_esp32e.menu.DebugLevel.none.build.code_debug=0 -dfrobot_firebeetle2_esp32e.menu.DebugLevel.error=Error -dfrobot_firebeetle2_esp32e.menu.DebugLevel.error.build.code_debug=1 -dfrobot_firebeetle2_esp32e.menu.DebugLevel.warn=Warn -dfrobot_firebeetle2_esp32e.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_firebeetle2_esp32e.menu.DebugLevel.info=Info -dfrobot_firebeetle2_esp32e.menu.DebugLevel.info.build.code_debug=3 -dfrobot_firebeetle2_esp32e.menu.DebugLevel.debug=Debug -dfrobot_firebeetle2_esp32e.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_firebeetle2_esp32e.menu.DebugLevel.verbose=Verbose -dfrobot_firebeetle2_esp32e.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_firebeetle2_esp32e.menu.EraseFlash.none=Disabled -dfrobot_firebeetle2_esp32e.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_firebeetle2_esp32e.menu.EraseFlash.all=Enabled -dfrobot_firebeetle2_esp32e.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -dfrobot_firebeetle2_esp32s3.name=DFRobot Firebeetle 2 ESP32-S3 -#dfrobot_firebeetle2_esp32s3.vid.0=0x3343 -#dfrobot_firebeetle2_esp32s3.pid.0=0x83CF -dfrobot_firebeetle2_esp32s3.vid.0=0x303a -dfrobot_firebeetle2_esp32s3.pid.0=0x1001 - -dfrobot_firebeetle2_esp32s3.bootloader.tool=esptool_py -dfrobot_firebeetle2_esp32s3.bootloader.tool.default=esptool_py - -dfrobot_firebeetle2_esp32s3.upload.tool=esptool_py -dfrobot_firebeetle2_esp32s3.upload.tool.default=esptool_py -dfrobot_firebeetle2_esp32s3.upload.tool.network=esp_ota - -dfrobot_firebeetle2_esp32s3.upload.maximum_size=1310720 -dfrobot_firebeetle2_esp32s3.upload.maximum_data_size=327680 -dfrobot_firebeetle2_esp32s3.upload.flags= -dfrobot_firebeetle2_esp32s3.upload.extra_flags= -dfrobot_firebeetle2_esp32s3.upload.use_1200bps_touch=false -dfrobot_firebeetle2_esp32s3.upload.wait_for_upload_port=false - -dfrobot_firebeetle2_esp32s3.serial.disableDTR=false -dfrobot_firebeetle2_esp32s3.serial.disableRTS=false - -dfrobot_firebeetle2_esp32s3.build.tarch=xtensa -dfrobot_firebeetle2_esp32s3.build.bootloader_addr=0x0 -dfrobot_firebeetle2_esp32s3.build.target=esp32s3 -dfrobot_firebeetle2_esp32s3.build.mcu=esp32s3 -dfrobot_firebeetle2_esp32s3.build.core=esp32 -dfrobot_firebeetle2_esp32s3.build.variant=dfrobot_firebeetle2_esp32s3 -dfrobot_firebeetle2_esp32s3.build.board=ESP32S3_DEV -#dfrobot_firebeetle2_esp32s3.build.board=DFROBOT_FIREBEETLE_2_ESP32S3 - -dfrobot_firebeetle2_esp32s3.build.usb_mode=1 -dfrobot_firebeetle2_esp32s3.build.cdc_on_boot=0 -dfrobot_firebeetle2_esp32s3.build.msc_on_boot=0 -dfrobot_firebeetle2_esp32s3.build.dfu_on_boot=0 -dfrobot_firebeetle2_esp32s3.build.f_cpu=240000000L -dfrobot_firebeetle2_esp32s3.build.flash_size=4MB -dfrobot_firebeetle2_esp32s3.build.flash_freq=80m -dfrobot_firebeetle2_esp32s3.build.flash_mode=dio -dfrobot_firebeetle2_esp32s3.build.boot=qio -dfrobot_firebeetle2_esp32s3.build.boot_freq=80m -dfrobot_firebeetle2_esp32s3.build.partitions=default -dfrobot_firebeetle2_esp32s3.build.defines= -dfrobot_firebeetle2_esp32s3.build.loop_core= -dfrobot_firebeetle2_esp32s3.build.event_core= -dfrobot_firebeetle2_esp32s3.build.flash_type=qio -dfrobot_firebeetle2_esp32s3.build.psram_type=qspi -dfrobot_firebeetle2_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -dfrobot_firebeetle2_esp32s3.menu.PSRAM.disabled=Disabled -dfrobot_firebeetle2_esp32s3.menu.PSRAM.disabled.build.defines= -dfrobot_firebeetle2_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -dfrobot_firebeetle2_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -dfrobot_firebeetle2_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -dfrobot_firebeetle2_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -dfrobot_firebeetle2_esp32s3.menu.PSRAM.opi=OPI PSRAM -dfrobot_firebeetle2_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -dfrobot_firebeetle2_esp32s3.menu.PSRAM.opi.build.psram_type=opi - -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio=QIO 80MHz -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio.build.boot=qio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio.build.flash_type=qio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120=QIO 120MHz -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120.build.boot=qio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.qio120.build.flash_type=qio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio=DIO 80MHz -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio.build.boot=dio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.dio.build.flash_type=qio -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi=OPI 80MHz -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi.build.boot=opi -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi.build.flash_freq=80m -dfrobot_firebeetle2_esp32s3.menu.FlashMode.opi.build.flash_type=opi - -dfrobot_firebeetle2_esp32s3.menu.FlashSize.4M=4MB (32Mb) -dfrobot_firebeetle2_esp32s3.menu.FlashSize.4M.build.flash_size=4MB -dfrobot_firebeetle2_esp32s3.menu.FlashSize.8M=8MB (64Mb) -dfrobot_firebeetle2_esp32s3.menu.FlashSize.8M.build.flash_size=8MB -dfrobot_firebeetle2_esp32s3.menu.FlashSize.8M.build.partitions=default_8MB -dfrobot_firebeetle2_esp32s3.menu.FlashSize.16M=16MB (128Mb) -dfrobot_firebeetle2_esp32s3.menu.FlashSize.16M.build.flash_size=16MB -#dfrobot_firebeetle2_esp32s3.menu.FlashSize.32M=32MB (256Mb) -#dfrobot_firebeetle2_esp32s3.menu.FlashSize.32M.build.flash_size=32MB - -dfrobot_firebeetle2_esp32s3.menu.LoopCore.1=Core 1 -dfrobot_firebeetle2_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -dfrobot_firebeetle2_esp32s3.menu.LoopCore.0=Core 0 -dfrobot_firebeetle2_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -dfrobot_firebeetle2_esp32s3.menu.EventsCore.1=Core 1 -dfrobot_firebeetle2_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -dfrobot_firebeetle2_esp32s3.menu.EventsCore.0=Core 0 -dfrobot_firebeetle2_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -dfrobot_firebeetle2_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -dfrobot_firebeetle2_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 -dfrobot_firebeetle2_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -dfrobot_firebeetle2_esp32s3.menu.USBMode.default.build.usb_mode=0 - -dfrobot_firebeetle2_esp32s3.menu.CDCOnBoot.default=Disabled -dfrobot_firebeetle2_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -dfrobot_firebeetle2_esp32s3.menu.CDCOnBoot.cdc=Enabled -dfrobot_firebeetle2_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -dfrobot_firebeetle2_esp32s3.menu.MSCOnBoot.default=Disabled -dfrobot_firebeetle2_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -dfrobot_firebeetle2_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -dfrobot_firebeetle2_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -dfrobot_firebeetle2_esp32s3.menu.DFUOnBoot.default=Disabled -dfrobot_firebeetle2_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -dfrobot_firebeetle2_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -dfrobot_firebeetle2_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -dfrobot_firebeetle2_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -dfrobot_firebeetle2_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -dfrobot_firebeetle2_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false -dfrobot_firebeetle2_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -dfrobot_firebeetle2_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -dfrobot_firebeetle2_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.default.build.partitions=default -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.fatflash.build.partitions=ffat -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_firebeetle2_esp32s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.40=40MHz -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.20=20MHz -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.10=10MHz -dfrobot_firebeetle2_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.921600=921600 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.115200=115200 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.256000.windows=256000 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.230400=230400 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.460800.linux=460800 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.460800.macosx=460800 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.512000.windows=512000 -dfrobot_firebeetle2_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.none=None -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.none.build.code_debug=0 -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.error=Error -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.error.build.code_debug=1 -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.warn=Warn -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.info=Info -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.info.build.code_debug=3 -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.debug=Debug -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.verbose=Verbose -dfrobot_firebeetle2_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_firebeetle2_esp32s3.menu.EraseFlash.none=Disabled -dfrobot_firebeetle2_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_firebeetle2_esp32s3.menu.EraseFlash.all=Enabled -dfrobot_firebeetle2_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -dfrobot_firebeetle2_esp32c6.name=DFRobot FireBeetle 2 ESP32-C6 -dfrobot_firebeetle2_esp32c6.vid.0=0x303a -dfrobot_firebeetle2_esp32c6.pid.0=0x1001 - -dfrobot_firebeetle2_esp32c6.bootloader.tool=esptool_py -dfrobot_firebeetle2_esp32c6.bootloader.tool.default=esptool_py - -dfrobot_firebeetle2_esp32c6.upload.tool=esptool_py -dfrobot_firebeetle2_esp32c6.upload.tool.default=esptool_py -dfrobot_firebeetle2_esp32c6.upload.tool.network=esp_ota - -dfrobot_firebeetle2_esp32c6.upload.maximum_size=1310720 -dfrobot_firebeetle2_esp32c6.upload.maximum_data_size=327680 -dfrobot_firebeetle2_esp32c6.upload.flags= -dfrobot_firebeetle2_esp32c6.upload.extra_flags= -dfrobot_firebeetle2_esp32c6.upload.use_1200bps_touch=false -dfrobot_firebeetle2_esp32c6.upload.wait_for_upload_port=false - -dfrobot_firebeetle2_esp32c6.serial.disableDTR=false -dfrobot_firebeetle2_esp32c6.serial.disableRTS=false - -dfrobot_firebeetle2_esp32c6.build.tarch=riscv32 -dfrobot_firebeetle2_esp32c6.build.target=esp -dfrobot_firebeetle2_esp32c6.build.mcu=esp32c6 -dfrobot_firebeetle2_esp32c6.build.core=esp32 -dfrobot_firebeetle2_esp32c6.build.variant=dfrobot_firebeetle2_esp32c6 -dfrobot_firebeetle2_esp32c6.build.board=DFROBOT_FIREBEETLE_2_ESP32C6 -dfrobot_firebeetle2_esp32c6.build.bootloader_addr=0x0 - -dfrobot_firebeetle2_esp32c6.build.cdc_on_boot=0 -dfrobot_firebeetle2_esp32c6.build.f_cpu=160000000L -dfrobot_firebeetle2_esp32c6.build.flash_size=4MB -dfrobot_firebeetle2_esp32c6.build.flash_freq=80m -dfrobot_firebeetle2_esp32c6.build.flash_mode=qio -dfrobot_firebeetle2_esp32c6.build.boot=qio -dfrobot_firebeetle2_esp32c6.build.partitions=default -dfrobot_firebeetle2_esp32c6.build.defines= - -## IDE 2.0 Seems to not update the value -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.default=Disabled -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.default.build.copy_jtag_files=0 -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.builtin=Integrated USB JTAG -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.external=FTDI Adapter -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.external.build.copy_jtag_files=1 -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.bridge=ESP USB Bridge -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -dfrobot_firebeetle2_esp32c6.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -dfrobot_firebeetle2_esp32c6.menu.CDCOnBoot.default=Disabled -dfrobot_firebeetle2_esp32c6.menu.CDCOnBoot.default.build.cdc_on_boot=0 -dfrobot_firebeetle2_esp32c6.menu.CDCOnBoot.cdc=Enabled -dfrobot_firebeetle2_esp32c6.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.default.build.partitions=default -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.no_ota.build.partitions=no_ota -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.custom=Custom -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.custom.build.partitions= -dfrobot_firebeetle2_esp32c6.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.160=160MHz (WiFi) -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.80=80MHz (WiFi) -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.40=40MHz -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.20=20MHz -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.10=10MHz -dfrobot_firebeetle2_esp32c6.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_firebeetle2_esp32c6.menu.FlashMode.qio=QIO -dfrobot_firebeetle2_esp32c6.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_firebeetle2_esp32c6.menu.FlashMode.qio.build.boot=qio -dfrobot_firebeetle2_esp32c6.menu.FlashMode.dio=DIO -dfrobot_firebeetle2_esp32c6.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_firebeetle2_esp32c6.menu.FlashMode.dio.build.boot=dio - -dfrobot_firebeetle2_esp32c6.menu.FlashFreq.80=80MHz -dfrobot_firebeetle2_esp32c6.menu.FlashFreq.80.build.flash_freq=80m -dfrobot_firebeetle2_esp32c6.menu.FlashFreq.40=40MHz -dfrobot_firebeetle2_esp32c6.menu.FlashFreq.40.build.flash_freq=40m - -dfrobot_firebeetle2_esp32c6.menu.FlashSize.4M=4MB (32Mb) -dfrobot_firebeetle2_esp32c6.menu.FlashSize.4M.build.flash_size=4MB - -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.921600=921600 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.115200=115200 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.256000.windows=256000 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.230400=230400 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.460800.linux=460800 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.460800.macosx=460800 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.512000.windows=512000 -dfrobot_firebeetle2_esp32c6.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.none=None -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.none.build.code_debug=0 -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.error=Error -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.error.build.code_debug=1 -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.warn=Warn -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.info=Info -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.info.build.code_debug=3 -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.debug=Debug -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.verbose=Verbose -dfrobot_firebeetle2_esp32c6.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_firebeetle2_esp32c6.menu.EraseFlash.none=Disabled -dfrobot_firebeetle2_esp32c6.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_firebeetle2_esp32c6.menu.EraseFlash.all=Enabled -dfrobot_firebeetle2_esp32c6.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -# dfrobot Romeo ESP32-S3 -dfrobot_romeo_esp32s3.name=DFRobot Romeo ESP32-S3 -dfrobot_romeo_esp32s3.vid.0=0x303a -dfrobot_romeo_esp32s3.pid.0=0x1001 - -dfrobot_romeo_esp32s3.bootloader.tool=esptool_py -dfrobot_romeo_esp32s3.bootloader.tool.default=esptool_py - -dfrobot_romeo_esp32s3.upload.tool=esptool_py -dfrobot_romeo_esp32s3.upload.tool.default=esptool_py -dfrobot_romeo_esp32s3.upload.tool.network=esp_ota - -dfrobot_romeo_esp32s3.upload.maximum_size=1310720 -dfrobot_romeo_esp32s3.upload.maximum_data_size=327680 -dfrobot_romeo_esp32s3.upload.flags= -dfrobot_romeo_esp32s3.upload.extra_flags= -dfrobot_romeo_esp32s3.upload.use_1200bps_touch=false -dfrobot_romeo_esp32s3.upload.wait_for_upload_port=false - -dfrobot_romeo_esp32s3.serial.disableDTR=false -dfrobot_romeo_esp32s3.serial.disableRTS=false - -dfrobot_romeo_esp32s3.build.tarch=xtensa -dfrobot_romeo_esp32s3.build.bootloader_addr=0x0 -dfrobot_romeo_esp32s3.build.target=esp32s3 -dfrobot_romeo_esp32s3.build.mcu=esp32s3 -dfrobot_romeo_esp32s3.build.core=esp32 -dfrobot_romeo_esp32s3.build.variant=dfrobot_romeo_esp32s3 -dfrobot_romeo_esp32s3.build.board=DFROBOT_ROMEO_ESP32S3 - - -dfrobot_romeo_esp32s3.build.usb_mode=1 -dfrobot_romeo_esp32s3.build.cdc_on_boot=0 -dfrobot_romeo_esp32s3.build.msc_on_boot=0 -dfrobot_romeo_esp32s3.build.dfu_on_boot=0 -dfrobot_romeo_esp32s3.build.f_cpu=240000000L -dfrobot_romeo_esp32s3.build.flash_size=16MB -dfrobot_romeo_esp32s3.build.flash_freq=80m -dfrobot_romeo_esp32s3.build.flash_mode=qio -dfrobot_romeo_esp32s3.build.boot=qio -dfrobot_romeo_esp32s3.build.boot_freq=80m -dfrobot_romeo_esp32s3.build.partitions=default -dfrobot_romeo_esp32s3.build.defines= -dfrobot_romeo_esp32s3.build.loop_core= -dfrobot_romeo_esp32s3.build.event_core= -dfrobot_romeo_esp32s3.build.flash_type=qio -dfrobot_romeo_esp32s3.build.psram_type=qspi -dfrobot_romeo_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -dfrobot_romeo_esp32s3.menu.PSRAM.opi=OPI PSRAM -dfrobot_romeo_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -dfrobot_romeo_esp32s3.menu.PSRAM.opi.build.psram_type=opi -dfrobot_romeo_esp32s3.menu.PSRAM.disabled=Disabled -dfrobot_romeo_esp32s3.menu.PSRAM.disabled.build.defines= -dfrobot_romeo_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -dfrobot_romeo_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -dfrobot_romeo_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -dfrobot_romeo_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi - - -dfrobot_romeo_esp32s3.menu.FlashMode.qio=QIO 80MHz -dfrobot_romeo_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -dfrobot_romeo_esp32s3.menu.FlashMode.qio.build.boot=qio -dfrobot_romeo_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.qio.build.flash_type=qio -dfrobot_romeo_esp32s3.menu.FlashMode.qio120=QIO 120MHz -dfrobot_romeo_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -dfrobot_romeo_esp32s3.menu.FlashMode.qio120.build.boot=qio -dfrobot_romeo_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -dfrobot_romeo_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.qio120.build.flash_type=qio -dfrobot_romeo_esp32s3.menu.FlashMode.dio=DIO 80MHz -dfrobot_romeo_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -dfrobot_romeo_esp32s3.menu.FlashMode.dio.build.boot=dio -dfrobot_romeo_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.dio.build.flash_type=qio -dfrobot_romeo_esp32s3.menu.FlashMode.opi=OPI 80MHz -dfrobot_romeo_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -dfrobot_romeo_esp32s3.menu.FlashMode.opi.build.boot=opi -dfrobot_romeo_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.opi.build.flash_freq=80m -dfrobot_romeo_esp32s3.menu.FlashMode.opi.build.flash_type=opi - -dfrobot_romeo_esp32s3.menu.FlashSize.16M=16MB (128Mb) -dfrobot_romeo_esp32s3.menu.FlashSize.16M.build.flash_size=16MB - - -dfrobot_romeo_esp32s3.menu.LoopCore.1=Core 1 -dfrobot_romeo_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -dfrobot_romeo_esp32s3.menu.LoopCore.0=Core 0 -dfrobot_romeo_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -dfrobot_romeo_esp32s3.menu.EventsCore.1=Core 1 -dfrobot_romeo_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -dfrobot_romeo_esp32s3.menu.EventsCore.0=Core 0 -dfrobot_romeo_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -dfrobot_romeo_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -dfrobot_romeo_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 -dfrobot_romeo_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -dfrobot_romeo_esp32s3.menu.USBMode.default.build.usb_mode=0 - -dfrobot_romeo_esp32s3.menu.CDCOnBoot.cdc=Enabled -dfrobot_romeo_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -dfrobot_romeo_esp32s3.menu.CDCOnBoot.default=Disabled -dfrobot_romeo_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - - -dfrobot_romeo_esp32s3.menu.MSCOnBoot.default=Disabled -dfrobot_romeo_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -dfrobot_romeo_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -dfrobot_romeo_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -dfrobot_romeo_esp32s3.menu.DFUOnBoot.default=Disabled -dfrobot_romeo_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -dfrobot_romeo_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -dfrobot_romeo_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -dfrobot_romeo_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -dfrobot_romeo_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -dfrobot_romeo_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false -dfrobot_romeo_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -dfrobot_romeo_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -dfrobot_romeo_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -dfrobot_romeo_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -dfrobot_romeo_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -dfrobot_romeo_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -dfrobot_romeo_esp32s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -dfrobot_romeo_esp32s3.menu.PartitionScheme.fatflash.build.partitions=ffat -dfrobot_romeo_esp32s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -dfrobot_romeo_esp32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dfrobot_romeo_esp32s3.menu.PartitionScheme.minimal.build.partitions=minimal -dfrobot_romeo_esp32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dfrobot_romeo_esp32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -dfrobot_romeo_esp32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dfrobot_romeo_esp32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dfrobot_romeo_esp32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dfrobot_romeo_esp32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dfrobot_romeo_esp32s3.menu.PartitionScheme.rainmaker=RainMaker -dfrobot_romeo_esp32s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -dfrobot_romeo_esp32s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -dfrobot_romeo_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -dfrobot_romeo_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -dfrobot_romeo_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -dfrobot_romeo_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -dfrobot_romeo_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -dfrobot_romeo_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -dfrobot_romeo_esp32s3.menu.CPUFreq.40=40MHz -dfrobot_romeo_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -dfrobot_romeo_esp32s3.menu.CPUFreq.20=20MHz -dfrobot_romeo_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -dfrobot_romeo_esp32s3.menu.CPUFreq.10=10MHz -dfrobot_romeo_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -dfrobot_romeo_esp32s3.menu.UploadSpeed.921600=921600 -dfrobot_romeo_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -dfrobot_romeo_esp32s3.menu.UploadSpeed.115200=115200 -dfrobot_romeo_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -dfrobot_romeo_esp32s3.menu.UploadSpeed.256000.windows=256000 -dfrobot_romeo_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -dfrobot_romeo_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -dfrobot_romeo_esp32s3.menu.UploadSpeed.230400=230400 -dfrobot_romeo_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -dfrobot_romeo_esp32s3.menu.UploadSpeed.460800.linux=460800 -dfrobot_romeo_esp32s3.menu.UploadSpeed.460800.macosx=460800 -dfrobot_romeo_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -dfrobot_romeo_esp32s3.menu.UploadSpeed.512000.windows=512000 -dfrobot_romeo_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -dfrobot_romeo_esp32s3.menu.DebugLevel.none=None -dfrobot_romeo_esp32s3.menu.DebugLevel.none.build.code_debug=0 -dfrobot_romeo_esp32s3.menu.DebugLevel.error=Error -dfrobot_romeo_esp32s3.menu.DebugLevel.error.build.code_debug=1 -dfrobot_romeo_esp32s3.menu.DebugLevel.warn=Warn -dfrobot_romeo_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -dfrobot_romeo_esp32s3.menu.DebugLevel.info=Info -dfrobot_romeo_esp32s3.menu.DebugLevel.info.build.code_debug=3 -dfrobot_romeo_esp32s3.menu.DebugLevel.debug=Debug -dfrobot_romeo_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -dfrobot_romeo_esp32s3.menu.DebugLevel.verbose=Verbose -dfrobot_romeo_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -dfrobot_romeo_esp32s3.menu.EraseFlash.none=Disabled -dfrobot_romeo_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -dfrobot_romeo_esp32s3.menu.EraseFlash.all=Enabled -dfrobot_romeo_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -firebeetle32.name=FireBeetle-ESP32 - -firebeetle32.bootloader.tool=esptool_py -firebeetle32.bootloader.tool.default=esptool_py - -firebeetle32.upload.tool=esptool_py -firebeetle32.upload.tool.default=esptool_py -firebeetle32.upload.tool.network=esp_ota - -firebeetle32.upload.maximum_size=1310720 -firebeetle32.upload.maximum_data_size=327680 -firebeetle32.upload.flags= -firebeetle32.upload.extra_flags= - -firebeetle32.serial.disableDTR=true -firebeetle32.serial.disableRTS=true - -firebeetle32.build.tarch=xtensa -firebeetle32.build.bootloader_addr=0x1000 -firebeetle32.build.target=esp32 -firebeetle32.build.mcu=esp32 -firebeetle32.build.core=esp32 -firebeetle32.build.variant=firebeetle32 -firebeetle32.build.board=ESP32_DEV - -firebeetle32.build.f_cpu=240000000L -firebeetle32.build.flash_mode=dio -firebeetle32.build.flash_size=4MB -firebeetle32.build.boot=dio -firebeetle32.build.partitions=default -firebeetle32.build.defines= - -firebeetle32.menu.FlashFreq.80=80MHz -firebeetle32.menu.FlashFreq.80.build.flash_freq=80m -firebeetle32.menu.FlashFreq.40=40MHz -firebeetle32.menu.FlashFreq.40.build.flash_freq=40m - -firebeetle32.menu.UploadSpeed.921600=921600 -firebeetle32.menu.UploadSpeed.921600.upload.speed=921600 -firebeetle32.menu.UploadSpeed.115200=115200 -firebeetle32.menu.UploadSpeed.115200.upload.speed=115200 -firebeetle32.menu.UploadSpeed.256000.windows=256000 -firebeetle32.menu.UploadSpeed.256000.upload.speed=256000 -firebeetle32.menu.UploadSpeed.230400.windows.upload.speed=256000 -firebeetle32.menu.UploadSpeed.230400=230400 -firebeetle32.menu.UploadSpeed.230400.upload.speed=230400 -firebeetle32.menu.UploadSpeed.460800.linux=460800 -firebeetle32.menu.UploadSpeed.460800.macosx=460800 -firebeetle32.menu.UploadSpeed.460800.upload.speed=460800 -firebeetle32.menu.UploadSpeed.512000.windows=512000 -firebeetle32.menu.UploadSpeed.512000.upload.speed=512000 - -firebeetle32.menu.DebugLevel.none=None -firebeetle32.menu.DebugLevel.none.build.code_debug=0 -firebeetle32.menu.DebugLevel.error=Error -firebeetle32.menu.DebugLevel.error.build.code_debug=1 -firebeetle32.menu.DebugLevel.warn=Warn -firebeetle32.menu.DebugLevel.warn.build.code_debug=2 -firebeetle32.menu.DebugLevel.info=Info -firebeetle32.menu.DebugLevel.info.build.code_debug=3 -firebeetle32.menu.DebugLevel.debug=Debug -firebeetle32.menu.DebugLevel.debug.build.code_debug=4 -firebeetle32.menu.DebugLevel.verbose=Verbose -firebeetle32.menu.DebugLevel.verbose.build.code_debug=5 - -firebeetle32.menu.EraseFlash.none=Disabled -firebeetle32.menu.EraseFlash.none.upload.erase_cmd= -firebeetle32.menu.EraseFlash.all=Enabled -firebeetle32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -intorobot-fig.name=IntoRobot Fig - -intorobot-fig.bootloader.tool=esptool_py -intorobot-fig.bootloader.tool.default=esptool_py - -intorobot-fig.upload.tool=esptool_py -intorobot-fig.upload.tool.default=esptool_py -intorobot-fig.upload.tool.network=esp_ota - -intorobot-fig.upload.maximum_size=1310720 -intorobot-fig.upload.maximum_data_size=327680 -intorobot-fig.upload.flags= -intorobot-fig.upload.extra_flags= - -intorobot-fig.serial.disableDTR=true -intorobot-fig.serial.disableRTS=true - -intorobot-fig.build.tarch=xtensa -intorobot-fig.build.bootloader_addr=0x1000 -intorobot-fig.build.target=esp32 -intorobot-fig.build.mcu=esp32 -intorobot-fig.build.core=esp32 -intorobot-fig.build.variant=intorobot-fig -intorobot-fig.build.board=INTOROBOT_ESP32_DEV - -intorobot-fig.build.f_cpu=240000000L -intorobot-fig.build.flash_mode=dio -intorobot-fig.build.flash_size=4MB -intorobot-fig.build.boot=dio -intorobot-fig.build.partitions=default -intorobot-fig.build.defines= - -intorobot-fig.menu.FlashFreq.80=80MHz -intorobot-fig.menu.FlashFreq.80.build.flash_freq=80m -intorobot-fig.menu.FlashFreq.40=40MHz -intorobot-fig.menu.FlashFreq.40.build.flash_freq=40m - -intorobot-fig.menu.UploadSpeed.921600=921600 -intorobot-fig.menu.UploadSpeed.921600.upload.speed=921600 -intorobot-fig.menu.UploadSpeed.115200=115200 -intorobot-fig.menu.UploadSpeed.115200.upload.speed=115200 -intorobot-fig.menu.UploadSpeed.256000.windows=256000 -intorobot-fig.menu.UploadSpeed.256000.upload.speed=256000 -intorobot-fig.menu.UploadSpeed.230400.windows.upload.speed=256000 -intorobot-fig.menu.UploadSpeed.230400=230400 -intorobot-fig.menu.UploadSpeed.230400.upload.speed=230400 -intorobot-fig.menu.UploadSpeed.460800.linux=460800 -intorobot-fig.menu.UploadSpeed.460800.macosx=460800 -intorobot-fig.menu.UploadSpeed.460800.upload.speed=460800 -intorobot-fig.menu.UploadSpeed.512000.windows=512000 -intorobot-fig.menu.UploadSpeed.512000.upload.speed=512000 - -intorobot-fig.menu.DebugLevel.none=None -intorobot-fig.menu.DebugLevel.none.build.code_debug=0 -intorobot-fig.menu.DebugLevel.error=Error -intorobot-fig.menu.DebugLevel.error.build.code_debug=1 -intorobot-fig.menu.DebugLevel.warn=Warn -intorobot-fig.menu.DebugLevel.warn.build.code_debug=2 -intorobot-fig.menu.DebugLevel.info=Info -intorobot-fig.menu.DebugLevel.info.build.code_debug=3 -intorobot-fig.menu.DebugLevel.debug=Debug -intorobot-fig.menu.DebugLevel.debug.build.code_debug=4 -intorobot-fig.menu.DebugLevel.verbose=Verbose -intorobot-fig.menu.DebugLevel.verbose.build.code_debug=5 - -intorobot-fig.menu.EraseFlash.none=Disabled -intorobot-fig.menu.EraseFlash.none.upload.erase_cmd= -intorobot-fig.menu.EraseFlash.all=Enabled -intorobot-fig.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -onehorse32dev.name=Onehorse ESP32 Dev Module - -onehorse32dev.bootloader.tool=esptool_py -onehorse32dev.bootloader.tool.default=esptool_py - -onehorse32dev.upload.tool=esptool_py -onehorse32dev.upload.tool.default=esptool_py -onehorse32dev.upload.tool.network=esp_ota - -onehorse32dev.upload.maximum_size=1310720 -onehorse32dev.upload.maximum_data_size=327680 -onehorse32dev.upload.flags= -onehorse32dev.upload.extra_flags= - -onehorse32dev.serial.disableDTR=true -onehorse32dev.serial.disableRTS=true - -onehorse32dev.build.tarch=xtensa -onehorse32dev.build.bootloader_addr=0x1000 -onehorse32dev.build.target=esp32 -onehorse32dev.build.mcu=esp32 -onehorse32dev.build.core=esp32 -onehorse32dev.build.variant=onehorse32dev -onehorse32dev.build.board=ONEHORSE_ESP32_DEV - -onehorse32dev.build.f_cpu=240000000L -onehorse32dev.build.flash_mode=dout -onehorse32dev.build.flash_size=4MB -onehorse32dev.build.boot=dio -onehorse32dev.build.partitions=default -onehorse32dev.build.defines= - -onehorse32dev.menu.FlashFreq.80=80MHz -onehorse32dev.menu.FlashFreq.80.build.flash_freq=80m -onehorse32dev.menu.FlashFreq.40=40MHz -onehorse32dev.menu.FlashFreq.40.build.flash_freq=40m - -onehorse32dev.menu.UploadSpeed.921600=921600 -onehorse32dev.menu.UploadSpeed.921600.upload.speed=921600 -onehorse32dev.menu.UploadSpeed.115200=115200 -onehorse32dev.menu.UploadSpeed.115200.upload.speed=115200 -onehorse32dev.menu.UploadSpeed.256000.windows=256000 -onehorse32dev.menu.UploadSpeed.256000.upload.speed=256000 -onehorse32dev.menu.UploadSpeed.230400.windows.upload.speed=256000 -onehorse32dev.menu.UploadSpeed.230400=230400 -onehorse32dev.menu.UploadSpeed.230400.upload.speed=230400 -onehorse32dev.menu.UploadSpeed.460800.linux=460800 -onehorse32dev.menu.UploadSpeed.460800.macosx=460800 -onehorse32dev.menu.UploadSpeed.460800.upload.speed=460800 -onehorse32dev.menu.UploadSpeed.512000.windows=512000 -onehorse32dev.menu.UploadSpeed.512000.upload.speed=512000 - -onehorse32dev.menu.DebugLevel.none=None -onehorse32dev.menu.DebugLevel.none.build.code_debug=0 -onehorse32dev.menu.DebugLevel.error=Error -onehorse32dev.menu.DebugLevel.error.build.code_debug=1 -onehorse32dev.menu.DebugLevel.warn=Warn -onehorse32dev.menu.DebugLevel.warn.build.code_debug=2 -onehorse32dev.menu.DebugLevel.info=Info -onehorse32dev.menu.DebugLevel.info.build.code_debug=3 -onehorse32dev.menu.DebugLevel.debug=Debug -onehorse32dev.menu.DebugLevel.debug.build.code_debug=4 -onehorse32dev.menu.DebugLevel.verbose=Verbose -onehorse32dev.menu.DebugLevel.verbose.build.code_debug=5 - -onehorse32dev.menu.EraseFlash.none=Disabled -onehorse32dev.menu.EraseFlash.none.upload.erase_cmd= -onehorse32dev.menu.EraseFlash.all=Enabled -onehorse32dev.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# Adafruit Metro ESP32-S2 - -adafruit_metro_esp32s2.name=Adafruit Metro ESP32-S2 -adafruit_metro_esp32s2.vid.0=0x239A -adafruit_metro_esp32s2.pid.0=0x80DF -adafruit_metro_esp32s2.vid.1=0x239A -adafruit_metro_esp32s2.pid.1=0x00DF -adafruit_metro_esp32s2.vid.2=0x239A -adafruit_metro_esp32s2.pid.2=0x80E0 - -adafruit_metro_esp32s2.bootloader.tool=esptool_py -adafruit_metro_esp32s2.bootloader.tool.default=esptool_py - -adafruit_metro_esp32s2.upload.tool=esptool_py -adafruit_metro_esp32s2.upload.tool.default=esptool_py -adafruit_metro_esp32s2.upload.tool.network=esp_ota - -adafruit_metro_esp32s2.upload.maximum_size=1310720 -adafruit_metro_esp32s2.upload.maximum_data_size=327680 -adafruit_metro_esp32s2.upload.flags= -adafruit_metro_esp32s2.upload.extra_flags= -adafruit_metro_esp32s2.upload.use_1200bps_touch=true -adafruit_metro_esp32s2.upload.wait_for_upload_port=true - -adafruit_metro_esp32s2.serial.disableDTR=false -adafruit_metro_esp32s2.serial.disableRTS=false - -adafruit_metro_esp32s2.build.tarch=xtensa -adafruit_metro_esp32s2.build.bootloader_addr=0x1000 -adafruit_metro_esp32s2.build.target=esp32s2 -adafruit_metro_esp32s2.build.mcu=esp32s2 -adafruit_metro_esp32s2.build.core=esp32 -adafruit_metro_esp32s2.build.variant=adafruit_metro_esp32s2 -adafruit_metro_esp32s2.build.board=METRO_ESP32S2 - -adafruit_metro_esp32s2.build.cdc_on_boot=1 -adafruit_metro_esp32s2.build.msc_on_boot=0 -adafruit_metro_esp32s2.build.dfu_on_boot=0 -adafruit_metro_esp32s2.build.f_cpu=240000000L -adafruit_metro_esp32s2.build.flash_size=4MB -adafruit_metro_esp32s2.build.flash_freq=80m -adafruit_metro_esp32s2.build.flash_mode=dio -adafruit_metro_esp32s2.build.boot=qio -adafruit_metro_esp32s2.build.partitions=default -adafruit_metro_esp32s2.build.defines= - -adafruit_metro_esp32s2.menu.CDCOnBoot.cdc=Enabled -adafruit_metro_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_metro_esp32s2.menu.CDCOnBoot.default=Disabled -adafruit_metro_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_metro_esp32s2.menu.MSCOnBoot.default=Disabled -adafruit_metro_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_metro_esp32s2.menu.MSCOnBoot.msc=Enabled -adafruit_metro_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_metro_esp32s2.menu.DFUOnBoot.default=Disabled -adafruit_metro_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_metro_esp32s2.menu.DFUOnBoot.dfu=Enabled -adafruit_metro_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_metro_esp32s2.menu.UploadMode.cdc=Internal USB -adafruit_metro_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_metro_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_metro_esp32s2.menu.UploadMode.default=UART0 -adafruit_metro_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_metro_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_metro_esp32s2.menu.PSRAM.enabled=Enabled -adafruit_metro_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_metro_esp32s2.menu.PSRAM.disabled=Disabled -adafruit_metro_esp32s2.menu.PSRAM.disabled.build.defines= - -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_metro_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_metro_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.default.build.partitions=default -adafruit_metro_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_metro_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_metro_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_metro_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_metro_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_metro_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_metro_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_metro_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_metro_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_metro_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_metro_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_metro_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_metro_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_metro_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_metro_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_metro_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_metro_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_metro_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_metro_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_metro_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_metro_esp32s2.menu.CPUFreq.40=40MHz -adafruit_metro_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_metro_esp32s2.menu.CPUFreq.20=20MHz -adafruit_metro_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_metro_esp32s2.menu.CPUFreq.10=10MHz -adafruit_metro_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_metro_esp32s2.menu.FlashMode.qio=QIO -adafruit_metro_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_metro_esp32s2.menu.FlashMode.qio.build.boot=qio -adafruit_metro_esp32s2.menu.FlashMode.dio=DIO -adafruit_metro_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_metro_esp32s2.menu.FlashMode.dio.build.boot=dio - -adafruit_metro_esp32s2.menu.FlashFreq.80=80MHz -adafruit_metro_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_metro_esp32s2.menu.FlashFreq.40=40MHz -adafruit_metro_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_metro_esp32s2.menu.FlashSize.4M=4MB (32Mb) -adafruit_metro_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_metro_esp32s2.menu.UploadSpeed.921600=921600 -adafruit_metro_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_metro_esp32s2.menu.UploadSpeed.115200=115200 -adafruit_metro_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_metro_esp32s2.menu.UploadSpeed.256000.windows=256000 -adafruit_metro_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_metro_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_metro_esp32s2.menu.UploadSpeed.230400=230400 -adafruit_metro_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_metro_esp32s2.menu.UploadSpeed.460800.linux=460800 -adafruit_metro_esp32s2.menu.UploadSpeed.460800.macosx=460800 -adafruit_metro_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_metro_esp32s2.menu.UploadSpeed.512000.windows=512000 -adafruit_metro_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_metro_esp32s2.menu.DebugLevel.none=None -adafruit_metro_esp32s2.menu.DebugLevel.none.build.code_debug=0 -adafruit_metro_esp32s2.menu.DebugLevel.error=Error -adafruit_metro_esp32s2.menu.DebugLevel.error.build.code_debug=1 -adafruit_metro_esp32s2.menu.DebugLevel.warn=Warn -adafruit_metro_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_metro_esp32s2.menu.DebugLevel.info=Info -adafruit_metro_esp32s2.menu.DebugLevel.info.build.code_debug=3 -adafruit_metro_esp32s2.menu.DebugLevel.debug=Debug -adafruit_metro_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_metro_esp32s2.menu.DebugLevel.verbose=Verbose -adafruit_metro_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_metro_esp32s2.menu.EraseFlash.none=Disabled -adafruit_metro_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_metro_esp32s2.menu.EraseFlash.all=Enabled -adafruit_metro_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_metro_esp32s2.menu.ZigbeeMode.default=Disabled -adafruit_metro_esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_metro_esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_metro_esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_metro_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_metro_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Metro ESP32-S3 - -adafruit_metro_esp32s3.name=Adafruit Metro ESP32-S3 -adafruit_metro_esp32s3.vid.0=0x239A -adafruit_metro_esp32s3.pid.0=0x8145 -adafruit_metro_esp32s3.vid.1=0x239A -adafruit_metro_esp32s3.pid.1=0x0145 -adafruit_metro_esp32s3.vid.2=0x239A -adafruit_metro_esp32s3.pid.2=0x8146 - -adafruit_metro_esp32s3.bootloader.tool=esptool_py -adafruit_metro_esp32s3.bootloader.tool.default=esptool_py - -adafruit_metro_esp32s3.upload.tool=esptool_py -adafruit_metro_esp32s3.upload.tool.default=esptool_py -adafruit_metro_esp32s3.upload.tool.network=esp_ota - -adafruit_metro_esp32s3.upload.maximum_size=1310720 -adafruit_metro_esp32s3.upload.maximum_data_size=327680 -adafruit_metro_esp32s3.upload.flags= -adafruit_metro_esp32s3.upload.extra_flags= -adafruit_metro_esp32s3.upload.use_1200bps_touch=true -adafruit_metro_esp32s3.upload.wait_for_upload_port=true - -adafruit_metro_esp32s3.serial.disableDTR=false -adafruit_metro_esp32s3.serial.disableRTS=false - -adafruit_metro_esp32s3.build.tarch=xtensa -adafruit_metro_esp32s3.build.bootloader_addr=0x0 -adafruit_metro_esp32s3.build.target=esp32s3 -adafruit_metro_esp32s3.build.mcu=esp32s3 -adafruit_metro_esp32s3.build.core=esp32 -adafruit_metro_esp32s3.build.variant=adafruit_metro_esp32s3 -adafruit_metro_esp32s3.build.board=METRO_ESP32S3 - -adafruit_metro_esp32s3.build.usb_mode=0 -adafruit_metro_esp32s3.build.cdc_on_boot=1 -adafruit_metro_esp32s3.build.msc_on_boot=0 -adafruit_metro_esp32s3.build.dfu_on_boot=0 -adafruit_metro_esp32s3.build.f_cpu=240000000L -adafruit_metro_esp32s3.build.flash_size=16MB -adafruit_metro_esp32s3.build.flash_freq=80m -adafruit_metro_esp32s3.build.flash_mode=dio -adafruit_metro_esp32s3.build.boot=qio -adafruit_metro_esp32s3.build.partitions=default -adafruit_metro_esp32s3.build.defines= -adafruit_metro_esp32s3.build.loop_core= -adafruit_metro_esp32s3.build.event_core= -adafruit_metro_esp32s3.build.flash_type=qio -adafruit_metro_esp32s3.build.psram_type=opi -adafruit_metro_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_metro_esp32s3.menu.LoopCore.1=Core 1 -adafruit_metro_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_metro_esp32s3.menu.LoopCore.0=Core 0 -adafruit_metro_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_metro_esp32s3.menu.EventsCore.1=Core 1 -adafruit_metro_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_metro_esp32s3.menu.EventsCore.0=Core 0 -adafruit_metro_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_metro_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_metro_esp32s3.menu.USBMode.default.build.usb_mode=0 -adafruit_metro_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_metro_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_metro_esp32s3.menu.CDCOnBoot.cdc=Enabled -adafruit_metro_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_metro_esp32s3.menu.CDCOnBoot.default=Disabled -adafruit_metro_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_metro_esp32s3.menu.MSCOnBoot.default=Disabled -adafruit_metro_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_metro_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_metro_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_metro_esp32s3.menu.DFUOnBoot.default=Disabled -adafruit_metro_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_metro_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_metro_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_metro_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_metro_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_metro_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_metro_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_metro_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_metro_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_metro_esp32s3.menu.PSRAM.opi=OPI PSRAM -adafruit_metro_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_metro_esp32s3.menu.PSRAM.opi.build.psram_type=opi -adafruit_metro_esp32s3.menu.PSRAM.disabled=Disabled -adafruit_metro_esp32s3.menu.PSRAM.disabled.build.defines= -adafruit_metro_esp32s3.menu.PSRAM.disabled.build.psram_type=opi - -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2=TinyUF2 16MB (2MB APP/11.6MB FATFS) -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-16MB -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2_noota=TinyUF2 16MB No OTA(4MB APP/11.6MB FATFS) -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-16MB-noota -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=4194304 -adafruit_metro_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_metro_esp32s3.menu.PartitionScheme.default_16MB=Default (6.25MB APP/3.43MB SPIFFS) -adafruit_metro_esp32s3.menu.PartitionScheme.default_16MB.build.partitions=default_16MB -adafruit_metro_esp32s3.menu.PartitionScheme.default_16MB.upload.maximum_size=6553600 -adafruit_metro_esp32s3.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/6.93MB SPIFFS) -adafruit_metro_esp32s3.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -adafruit_metro_esp32s3.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 -adafruit_metro_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -adafruit_metro_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -adafruit_metro_esp32s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -adafruit_metro_esp32s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -adafruit_metro_esp32s3.menu.PartitionScheme.fatflash.build.partitions=ffat -adafruit_metro_esp32s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 - -adafruit_metro_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -adafruit_metro_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_metro_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -adafruit_metro_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_metro_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -adafruit_metro_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_metro_esp32s3.menu.CPUFreq.40=40MHz -adafruit_metro_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_metro_esp32s3.menu.CPUFreq.20=20MHz -adafruit_metro_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_metro_esp32s3.menu.CPUFreq.10=10MHz -adafruit_metro_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_metro_esp32s3.menu.FlashMode.qio=QIO 80MHz -adafruit_metro_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -adafruit_metro_esp32s3.menu.FlashMode.qio.build.boot=qio -adafruit_metro_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.qio120=QIO 120MHz -adafruit_metro_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_metro_esp32s3.menu.FlashMode.qio120.build.boot=qio -adafruit_metro_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_metro_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.dio=DIO 80MHz -adafruit_metro_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -adafruit_metro_esp32s3.menu.FlashMode.dio.build.boot=dio -adafruit_metro_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.opi=OPI 80MHz -adafruit_metro_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -adafruit_metro_esp32s3.menu.FlashMode.opi.build.boot=opi -adafruit_metro_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -adafruit_metro_esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_metro_esp32s3.menu.FlashSize.16M=16MB (128Mb) -adafruit_metro_esp32s3.menu.FlashSize.16M.build.flash_size=16MB - -adafruit_metro_esp32s3.menu.UploadSpeed.921600=921600 -adafruit_metro_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_metro_esp32s3.menu.UploadSpeed.115200=115200 -adafruit_metro_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_metro_esp32s3.menu.UploadSpeed.256000.windows=256000 -adafruit_metro_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_metro_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_metro_esp32s3.menu.UploadSpeed.230400=230400 -adafruit_metro_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_metro_esp32s3.menu.UploadSpeed.460800.linux=460800 -adafruit_metro_esp32s3.menu.UploadSpeed.460800.macosx=460800 -adafruit_metro_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_metro_esp32s3.menu.UploadSpeed.512000.windows=512000 -adafruit_metro_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_metro_esp32s3.menu.DebugLevel.none=None -adafruit_metro_esp32s3.menu.DebugLevel.none.build.code_debug=0 -adafruit_metro_esp32s3.menu.DebugLevel.error=Error -adafruit_metro_esp32s3.menu.DebugLevel.error.build.code_debug=1 -adafruit_metro_esp32s3.menu.DebugLevel.warn=Warn -adafruit_metro_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -adafruit_metro_esp32s3.menu.DebugLevel.info=Info -adafruit_metro_esp32s3.menu.DebugLevel.info.build.code_debug=3 -adafruit_metro_esp32s3.menu.DebugLevel.debug=Debug -adafruit_metro_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -adafruit_metro_esp32s3.menu.DebugLevel.verbose=Verbose -adafruit_metro_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_metro_esp32s3.menu.EraseFlash.none=Disabled -adafruit_metro_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -adafruit_metro_esp32s3.menu.EraseFlash.all=Enabled -adafruit_metro_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_metro_esp32s3.menu.ZigbeeMode.default=Disabled -adafruit_metro_esp32s3.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_metro_esp32s3.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_metro_esp32s3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_metro_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_metro_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit MagTag 2.9" - -adafruit_magtag29_esp32s2.name=Adafruit MagTag 2.9" -adafruit_magtag29_esp32s2.vid.0=0x239A -adafruit_magtag29_esp32s2.pid.0=0x80E5 -adafruit_magtag29_esp32s2.vid.1=0x239A -adafruit_magtag29_esp32s2.pid.1=0x00E5 -adafruit_magtag29_esp32s2.vid.2=0x239A -adafruit_magtag29_esp32s2.pid.2=0x80E6 - -adafruit_magtag29_esp32s2.bootloader.tool=esptool_py -adafruit_magtag29_esp32s2.bootloader.tool.default=esptool_py - -adafruit_magtag29_esp32s2.upload.tool=esptool_py -adafruit_magtag29_esp32s2.upload.tool.default=esptool_py -adafruit_magtag29_esp32s2.upload.tool.network=esp_ota - -adafruit_magtag29_esp32s2.upload.maximum_size=1310720 -adafruit_magtag29_esp32s2.upload.maximum_data_size=327680 -adafruit_magtag29_esp32s2.upload.flags= -adafruit_magtag29_esp32s2.upload.extra_flags= -adafruit_magtag29_esp32s2.upload.use_1200bps_touch=true -adafruit_magtag29_esp32s2.upload.wait_for_upload_port=true - -adafruit_magtag29_esp32s2.serial.disableDTR=false -adafruit_magtag29_esp32s2.serial.disableRTS=false - -adafruit_magtag29_esp32s2.build.tarch=xtensa -adafruit_magtag29_esp32s2.build.bootloader_addr=0x1000 -adafruit_magtag29_esp32s2.build.target=esp32s2 -adafruit_magtag29_esp32s2.build.mcu=esp32s2 -adafruit_magtag29_esp32s2.build.core=esp32 -adafruit_magtag29_esp32s2.build.variant=adafruit_magtag29_esp32s2 -adafruit_magtag29_esp32s2.build.board=MAGTAG29_ESP32S2 - -adafruit_magtag29_esp32s2.build.cdc_on_boot=1 -adafruit_magtag29_esp32s2.build.msc_on_boot=0 -adafruit_magtag29_esp32s2.build.dfu_on_boot=0 -adafruit_magtag29_esp32s2.build.f_cpu=240000000L -adafruit_magtag29_esp32s2.build.flash_size=4MB -adafruit_magtag29_esp32s2.build.flash_freq=80m -adafruit_magtag29_esp32s2.build.flash_mode=dio -adafruit_magtag29_esp32s2.build.boot=qio -adafruit_magtag29_esp32s2.build.partitions=default -adafruit_magtag29_esp32s2.build.defines= - -adafruit_magtag29_esp32s2.menu.CDCOnBoot.cdc=Enabled -adafruit_magtag29_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_magtag29_esp32s2.menu.CDCOnBoot.default=Disabled -adafruit_magtag29_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_magtag29_esp32s2.menu.MSCOnBoot.default=Disabled -adafruit_magtag29_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_magtag29_esp32s2.menu.MSCOnBoot.msc=Enabled -adafruit_magtag29_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_magtag29_esp32s2.menu.DFUOnBoot.default=Disabled -adafruit_magtag29_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_magtag29_esp32s2.menu.DFUOnBoot.dfu=Enabled -adafruit_magtag29_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_magtag29_esp32s2.menu.UploadMode.cdc=Internal USB -adafruit_magtag29_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_magtag29_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_magtag29_esp32s2.menu.UploadMode.default=UART0 -adafruit_magtag29_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_magtag29_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_magtag29_esp32s2.menu.PSRAM.enabled=Enabled -adafruit_magtag29_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_magtag29_esp32s2.menu.PSRAM.disabled=Disabled -adafruit_magtag29_esp32s2.menu.PSRAM.disabled.build.defines= - -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_magtag29_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_magtag29_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.default.build.partitions=default -adafruit_magtag29_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_magtag29_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_magtag29_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_magtag29_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_magtag29_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_magtag29_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_magtag29_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_magtag29_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_magtag29_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_magtag29_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_magtag29_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_magtag29_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_magtag29_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_magtag29_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_magtag29_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_magtag29_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_magtag29_esp32s2.menu.CPUFreq.40=40MHz -adafruit_magtag29_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_magtag29_esp32s2.menu.CPUFreq.20=20MHz -adafruit_magtag29_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_magtag29_esp32s2.menu.CPUFreq.10=10MHz -adafruit_magtag29_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_magtag29_esp32s2.menu.FlashMode.qio=QIO -adafruit_magtag29_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_magtag29_esp32s2.menu.FlashMode.qio.build.boot=qio -adafruit_magtag29_esp32s2.menu.FlashMode.dio=DIO -adafruit_magtag29_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_magtag29_esp32s2.menu.FlashMode.dio.build.boot=dio - -adafruit_magtag29_esp32s2.menu.FlashFreq.80=80MHz -adafruit_magtag29_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_magtag29_esp32s2.menu.FlashFreq.40=40MHz -adafruit_magtag29_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_magtag29_esp32s2.menu.FlashSize.4M=4MB (32Mb) -adafruit_magtag29_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_magtag29_esp32s2.menu.UploadSpeed.921600=921600 -adafruit_magtag29_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_magtag29_esp32s2.menu.UploadSpeed.115200=115200 -adafruit_magtag29_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_magtag29_esp32s2.menu.UploadSpeed.256000.windows=256000 -adafruit_magtag29_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_magtag29_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_magtag29_esp32s2.menu.UploadSpeed.230400=230400 -adafruit_magtag29_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_magtag29_esp32s2.menu.UploadSpeed.460800.linux=460800 -adafruit_magtag29_esp32s2.menu.UploadSpeed.460800.macosx=460800 -adafruit_magtag29_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_magtag29_esp32s2.menu.UploadSpeed.512000.windows=512000 -adafruit_magtag29_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_magtag29_esp32s2.menu.DebugLevel.none=None -adafruit_magtag29_esp32s2.menu.DebugLevel.none.build.code_debug=0 -adafruit_magtag29_esp32s2.menu.DebugLevel.error=Error -adafruit_magtag29_esp32s2.menu.DebugLevel.error.build.code_debug=1 -adafruit_magtag29_esp32s2.menu.DebugLevel.warn=Warn -adafruit_magtag29_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_magtag29_esp32s2.menu.DebugLevel.info=Info -adafruit_magtag29_esp32s2.menu.DebugLevel.info.build.code_debug=3 -adafruit_magtag29_esp32s2.menu.DebugLevel.debug=Debug -adafruit_magtag29_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_magtag29_esp32s2.menu.DebugLevel.verbose=Verbose -adafruit_magtag29_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_magtag29_esp32s2.menu.EraseFlash.none=Disabled -adafruit_magtag29_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_magtag29_esp32s2.menu.EraseFlash.all=Enabled -adafruit_magtag29_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_magtag29_esp32s2.menu.ZigbeeMode.default=Disabled -adafruit_magtag29_esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_magtag29_esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_magtag29_esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_magtag29_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_magtag29_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit FunHouse - -adafruit_funhouse_esp32s2.name=Adafruit FunHouse -adafruit_funhouse_esp32s2.vid.0=0x239A -adafruit_funhouse_esp32s2.pid.0=0x80F9 -adafruit_funhouse_esp32s2.vid.1=0x239A -adafruit_funhouse_esp32s2.pid.1=0x00F9 -adafruit_funhouse_esp32s2.vid.2=0x239A -adafruit_funhouse_esp32s2.pid.2=0x80FA - -adafruit_funhouse_esp32s2.bootloader.tool=esptool_py -adafruit_funhouse_esp32s2.bootloader.tool.default=esptool_py - -adafruit_funhouse_esp32s2.upload.tool=esptool_py -adafruit_funhouse_esp32s2.upload.tool.default=esptool_py -adafruit_funhouse_esp32s2.upload.tool.network=esp_ota - -adafruit_funhouse_esp32s2.upload.maximum_size=1310720 -adafruit_funhouse_esp32s2.upload.maximum_data_size=327680 -adafruit_funhouse_esp32s2.upload.flags= -adafruit_funhouse_esp32s2.upload.extra_flags= -adafruit_funhouse_esp32s2.upload.use_1200bps_touch=true -adafruit_funhouse_esp32s2.upload.wait_for_upload_port=true - -adafruit_funhouse_esp32s2.serial.disableDTR=false -adafruit_funhouse_esp32s2.serial.disableRTS=false - -adafruit_funhouse_esp32s2.build.tarch=xtensa -adafruit_funhouse_esp32s2.build.bootloader_addr=0x1000 -adafruit_funhouse_esp32s2.build.target=esp32s2 -adafruit_funhouse_esp32s2.build.mcu=esp32s2 -adafruit_funhouse_esp32s2.build.core=esp32 -adafruit_funhouse_esp32s2.build.variant=adafruit_funhouse_esp32s2 -adafruit_funhouse_esp32s2.build.board=FUNHOUSE_ESP32S2 - -adafruit_funhouse_esp32s2.build.cdc_on_boot=1 -adafruit_funhouse_esp32s2.build.msc_on_boot=0 -adafruit_funhouse_esp32s2.build.dfu_on_boot=0 -adafruit_funhouse_esp32s2.build.f_cpu=240000000L -adafruit_funhouse_esp32s2.build.flash_size=4MB -adafruit_funhouse_esp32s2.build.flash_freq=80m -adafruit_funhouse_esp32s2.build.flash_mode=dio -adafruit_funhouse_esp32s2.build.boot=qio -adafruit_funhouse_esp32s2.build.partitions=default -adafruit_funhouse_esp32s2.build.defines= - -adafruit_funhouse_esp32s2.menu.CDCOnBoot.cdc=Enabled -adafruit_funhouse_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_funhouse_esp32s2.menu.CDCOnBoot.default=Disabled -adafruit_funhouse_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_funhouse_esp32s2.menu.MSCOnBoot.default=Disabled -adafruit_funhouse_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_funhouse_esp32s2.menu.MSCOnBoot.msc=Enabled -adafruit_funhouse_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_funhouse_esp32s2.menu.DFUOnBoot.default=Disabled -adafruit_funhouse_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_funhouse_esp32s2.menu.DFUOnBoot.dfu=Enabled -adafruit_funhouse_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_funhouse_esp32s2.menu.UploadMode.cdc=Internal USB -adafruit_funhouse_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_funhouse_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_funhouse_esp32s2.menu.UploadMode.default=UART0 -adafruit_funhouse_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_funhouse_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_funhouse_esp32s2.menu.PSRAM.enabled=Enabled -adafruit_funhouse_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_funhouse_esp32s2.menu.PSRAM.disabled=Disabled -adafruit_funhouse_esp32s2.menu.PSRAM.disabled.build.defines= - -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_funhouse_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_funhouse_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.default.build.partitions=default -adafruit_funhouse_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_funhouse_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_funhouse_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_funhouse_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_funhouse_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_funhouse_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_funhouse_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_funhouse_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_funhouse_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_funhouse_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_funhouse_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_funhouse_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_funhouse_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_funhouse_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_funhouse_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_funhouse_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_funhouse_esp32s2.menu.CPUFreq.40=40MHz -adafruit_funhouse_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_funhouse_esp32s2.menu.CPUFreq.20=20MHz -adafruit_funhouse_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_funhouse_esp32s2.menu.CPUFreq.10=10MHz -adafruit_funhouse_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_funhouse_esp32s2.menu.FlashMode.qio=QIO -adafruit_funhouse_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_funhouse_esp32s2.menu.FlashMode.qio.build.boot=qio -adafruit_funhouse_esp32s2.menu.FlashMode.dio=DIO -adafruit_funhouse_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_funhouse_esp32s2.menu.FlashMode.dio.build.boot=dio - -adafruit_funhouse_esp32s2.menu.FlashFreq.80=80MHz -adafruit_funhouse_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_funhouse_esp32s2.menu.FlashFreq.40=40MHz -adafruit_funhouse_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_funhouse_esp32s2.menu.FlashSize.4M=4MB (32Mb) -adafruit_funhouse_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_funhouse_esp32s2.menu.UploadSpeed.921600=921600 -adafruit_funhouse_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_funhouse_esp32s2.menu.UploadSpeed.115200=115200 -adafruit_funhouse_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_funhouse_esp32s2.menu.UploadSpeed.256000.windows=256000 -adafruit_funhouse_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_funhouse_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_funhouse_esp32s2.menu.UploadSpeed.230400=230400 -adafruit_funhouse_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_funhouse_esp32s2.menu.UploadSpeed.460800.linux=460800 -adafruit_funhouse_esp32s2.menu.UploadSpeed.460800.macosx=460800 -adafruit_funhouse_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_funhouse_esp32s2.menu.UploadSpeed.512000.windows=512000 -adafruit_funhouse_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_funhouse_esp32s2.menu.DebugLevel.none=None -adafruit_funhouse_esp32s2.menu.DebugLevel.none.build.code_debug=0 -adafruit_funhouse_esp32s2.menu.DebugLevel.error=Error -adafruit_funhouse_esp32s2.menu.DebugLevel.error.build.code_debug=1 -adafruit_funhouse_esp32s2.menu.DebugLevel.warn=Warn -adafruit_funhouse_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_funhouse_esp32s2.menu.DebugLevel.info=Info -adafruit_funhouse_esp32s2.menu.DebugLevel.info.build.code_debug=3 -adafruit_funhouse_esp32s2.menu.DebugLevel.debug=Debug -adafruit_funhouse_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_funhouse_esp32s2.menu.DebugLevel.verbose=Verbose -adafruit_funhouse_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_funhouse_esp32s2.menu.EraseFlash.none=Disabled -adafruit_funhouse_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_funhouse_esp32s2.menu.EraseFlash.all=Enabled -adafruit_funhouse_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_funhouse_esp32s2.menu.ZigbeeMode.default=Disabled -adafruit_funhouse_esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_funhouse_esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_funhouse_esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_funhouse_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_funhouse_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit ESP32 Feather - -featheresp32.name=Adafruit ESP32 Feather - -featheresp32.bootloader.tool=esptool_py -featheresp32.bootloader.tool.default=esptool_py - -featheresp32.upload.tool=esptool_py -featheresp32.upload.tool.default=esptool_py -featheresp32.upload.tool.network=esp_ota - -featheresp32.upload.maximum_size=1310720 -featheresp32.upload.maximum_data_size=327680 -featheresp32.upload.flags= -featheresp32.upload.extra_flags= - -featheresp32.serial.disableDTR=true -featheresp32.serial.disableRTS=true - -featheresp32.build.tarch=xtensa -featheresp32.build.bootloader_addr=0x1000 -featheresp32.build.target=esp32 -featheresp32.build.mcu=esp32 -featheresp32.build.core=esp32 -featheresp32.build.variant=feather_esp32 -featheresp32.build.board=FEATHER_ESP32 - -featheresp32.build.f_cpu=240000000L -featheresp32.build.flash_size=4MB -featheresp32.build.flash_freq=80m -featheresp32.build.flash_mode=dio -featheresp32.build.boot=dio -featheresp32.build.partitions=default -featheresp32.build.defines= -featheresp32.build.loop_core= -featheresp32.build.event_core= - -featheresp32.menu.LoopCore.1=Core 1 -featheresp32.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -featheresp32.menu.LoopCore.0=Core 0 -featheresp32.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -featheresp32.menu.EventsCore.1=Core 1 -featheresp32.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -featheresp32.menu.EventsCore.0=Core 0 -featheresp32.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -featheresp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -featheresp32.menu.PartitionScheme.default.build.partitions=default -featheresp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -featheresp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -featheresp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -featheresp32.menu.PartitionScheme.minimal.build.partitions=minimal -featheresp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -featheresp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -featheresp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -featheresp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -featheresp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -featheresp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -featheresp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -featheresp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -featheresp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -featheresp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -featheresp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -featheresp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -featheresp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -featheresp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -featheresp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -featheresp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -featheresp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -featheresp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -featheresp32.menu.CPUFreq.240=240MHz (WiFi/BT) -featheresp32.menu.CPUFreq.240.build.f_cpu=240000000L -featheresp32.menu.CPUFreq.160=160MHz (WiFi/BT) -featheresp32.menu.CPUFreq.160.build.f_cpu=160000000L -featheresp32.menu.CPUFreq.80=80MHz (WiFi/BT) -featheresp32.menu.CPUFreq.80.build.f_cpu=80000000L -featheresp32.menu.CPUFreq.40=40MHz -featheresp32.menu.CPUFreq.40.build.f_cpu=40000000L -featheresp32.menu.CPUFreq.20=20MHz -featheresp32.menu.CPUFreq.20.build.f_cpu=20000000L -featheresp32.menu.CPUFreq.10=10MHz -featheresp32.menu.CPUFreq.10.build.f_cpu=10000000L - -featheresp32.menu.FlashFreq.80=80MHz -featheresp32.menu.FlashFreq.80.build.flash_freq=80m -featheresp32.menu.FlashFreq.40=40MHz -featheresp32.menu.FlashFreq.40.build.flash_freq=40m - -featheresp32.menu.FlashSize.4M=4MB (32Mb) -featheresp32.menu.FlashSize.4M.build.flash_size=4MB - -featheresp32.menu.UploadSpeed.921600=921600 -featheresp32.menu.UploadSpeed.921600.upload.speed=921600 -featheresp32.menu.UploadSpeed.115200=115200 -featheresp32.menu.UploadSpeed.115200.upload.speed=115200 -featheresp32.menu.UploadSpeed.256000.windows=256000 -featheresp32.menu.UploadSpeed.256000.upload.speed=256000 -featheresp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -featheresp32.menu.UploadSpeed.230400=230400 -featheresp32.menu.UploadSpeed.230400.upload.speed=230400 -featheresp32.menu.UploadSpeed.460800.linux=460800 -featheresp32.menu.UploadSpeed.460800.macosx=460800 -featheresp32.menu.UploadSpeed.460800.upload.speed=460800 -featheresp32.menu.UploadSpeed.512000.windows=512000 -featheresp32.menu.UploadSpeed.512000.upload.speed=512000 - -featheresp32.menu.DebugLevel.none=None -featheresp32.menu.DebugLevel.none.build.code_debug=0 -featheresp32.menu.DebugLevel.error=Error -featheresp32.menu.DebugLevel.error.build.code_debug=1 -featheresp32.menu.DebugLevel.warn=Warn -featheresp32.menu.DebugLevel.warn.build.code_debug=2 -featheresp32.menu.DebugLevel.info=Info -featheresp32.menu.DebugLevel.info.build.code_debug=3 -featheresp32.menu.DebugLevel.debug=Debug -featheresp32.menu.DebugLevel.debug.build.code_debug=4 -featheresp32.menu.DebugLevel.verbose=Verbose -featheresp32.menu.DebugLevel.verbose.build.code_debug=5 - -featheresp32.menu.EraseFlash.none=Disabled -featheresp32.menu.EraseFlash.none.upload.erase_cmd= -featheresp32.menu.EraseFlash.all=Enabled -featheresp32.menu.EraseFlash.all.upload.erase_cmd=-e - -featheresp32.menu.ZigbeeMode.default=Disabled -featheresp32.menu.ZigbeeMode.default.build.zigbee_mode= -featheresp32.menu.ZigbeeMode.default.build.zigbee_libs= -featheresp32.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -featheresp32.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -featheresp32.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32 V2 - -adafruit_feather_esp32_v2.name=Adafruit Feather ESP32 V2 - -adafruit_feather_esp32_v2.bootloader.tool=esptool_py -adafruit_feather_esp32_v2.bootloader.tool.default=esptool_py - -adafruit_feather_esp32_v2.upload.tool=esptool_py -adafruit_feather_esp32_v2.upload.tool.default=esptool_py -adafruit_feather_esp32_v2.upload.tool.network=esp_ota - -adafruit_feather_esp32_v2.upload.maximum_size=1310720 -adafruit_feather_esp32_v2.upload.maximum_data_size=327680 -adafruit_feather_esp32_v2.upload.flags= -adafruit_feather_esp32_v2.upload.extra_flags= - -adafruit_feather_esp32_v2.serial.disableDTR=true -adafruit_feather_esp32_v2.serial.disableRTS=true - -adafruit_feather_esp32_v2.build.tarch=xtensa -adafruit_feather_esp32_v2.build.bootloader_addr=0x1000 -adafruit_feather_esp32_v2.build.target=esp32 -adafruit_feather_esp32_v2.build.mcu=esp32 -adafruit_feather_esp32_v2.build.core=esp32 -adafruit_feather_esp32_v2.build.variant=adafruit_feather_esp32_v2 -adafruit_feather_esp32_v2.build.board=ADAFRUIT_FEATHER_ESP32_V2 - -adafruit_feather_esp32_v2.build.f_cpu=240000000L -adafruit_feather_esp32_v2.build.flash_size=8MB -adafruit_feather_esp32_v2.build.flash_freq=80m -adafruit_feather_esp32_v2.build.flash_mode=dio -adafruit_feather_esp32_v2.build.boot=dio -adafruit_feather_esp32_v2.build.partitions=default -adafruit_feather_esp32_v2.build.defines= -adafruit_feather_esp32_v2.build.loop_core= -adafruit_feather_esp32_v2.build.event_core= - -adafruit_feather_esp32_v2.menu.LoopCore.1=Core 1 -adafruit_feather_esp32_v2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_feather_esp32_v2.menu.LoopCore.0=Core 0 -adafruit_feather_esp32_v2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_feather_esp32_v2.menu.EventsCore.1=Core 1 -adafruit_feather_esp32_v2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_feather_esp32_v2.menu.EventsCore.0=Core 0 -adafruit_feather_esp32_v2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_feather_esp32_v2.menu.PSRAM.enabled=Enabled -adafruit_feather_esp32_v2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -adafruit_feather_esp32_v2.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32_v2.menu.PSRAM.disabled.build.defines= - -adafruit_feather_esp32_v2.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_feather_esp32_v2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_feather_esp32_v2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_feather_esp32_v2.menu.CPUFreq.240=240MHz (WiFi/BT) -adafruit_feather_esp32_v2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32_v2.menu.CPUFreq.160=160MHz (WiFi/BT) -adafruit_feather_esp32_v2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32_v2.menu.CPUFreq.80=80MHz (WiFi/BT) -adafruit_feather_esp32_v2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32_v2.menu.CPUFreq.40=40MHz -adafruit_feather_esp32_v2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32_v2.menu.CPUFreq.20=20MHz -adafruit_feather_esp32_v2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32_v2.menu.CPUFreq.10=10MHz -adafruit_feather_esp32_v2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32_v2.menu.FlashFreq.80=80MHz -adafruit_feather_esp32_v2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_feather_esp32_v2.menu.FlashFreq.40=40MHz -adafruit_feather_esp32_v2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_feather_esp32_v2.menu.FlashSize.8M=8MB (64Mb) -adafruit_feather_esp32_v2.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_feather_esp32_v2.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32_v2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32_v2.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32_v2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32_v2.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32_v2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32_v2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32_v2.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32_v2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32_v2.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32_v2.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32_v2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32_v2.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32_v2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32_v2.menu.DebugLevel.none=None -adafruit_feather_esp32_v2.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32_v2.menu.DebugLevel.error=Error -adafruit_feather_esp32_v2.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32_v2.menu.DebugLevel.warn=Warn -adafruit_feather_esp32_v2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32_v2.menu.DebugLevel.info=Info -adafruit_feather_esp32_v2.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32_v2.menu.DebugLevel.debug=Debug -adafruit_feather_esp32_v2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32_v2.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32_v2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32_v2.menu.EraseFlash.none=Disabled -adafruit_feather_esp32_v2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32_v2.menu.EraseFlash.all=Enabled -adafruit_feather_esp32_v2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32_v2.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32_v2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32_v2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32_v2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32_v2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32_v2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S2 - -adafruit_feather_esp32s2.name=Adafruit Feather ESP32-S2 -adafruit_feather_esp32s2.vid.0=0x239A -adafruit_feather_esp32s2.pid.0=0x80EB -adafruit_feather_esp32s2.vid.1=0x239A -adafruit_feather_esp32s2.pid.1=0x00EB -adafruit_feather_esp32s2.vid.2=0x239A -adafruit_feather_esp32s2.pid.2=0x80EC - -adafruit_feather_esp32s2.bootloader.tool=esptool_py -adafruit_feather_esp32s2.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s2.upload.tool=esptool_py -adafruit_feather_esp32s2.upload.tool.default=esptool_py -adafruit_feather_esp32s2.upload.tool.network=esp_ota - -adafruit_feather_esp32s2.upload.maximum_size=1310720 -adafruit_feather_esp32s2.upload.maximum_data_size=327680 -adafruit_feather_esp32s2.upload.flags= -adafruit_feather_esp32s2.upload.extra_flags= -adafruit_feather_esp32s2.upload.use_1200bps_touch=true -adafruit_feather_esp32s2.upload.wait_for_upload_port=true - -adafruit_feather_esp32s2.serial.disableDTR=false -adafruit_feather_esp32s2.serial.disableRTS=false - -adafruit_feather_esp32s2.build.tarch=xtensa -adafruit_feather_esp32s2.build.bootloader_addr=0x1000 -adafruit_feather_esp32s2.build.target=esp32s2 -adafruit_feather_esp32s2.build.mcu=esp32s2 -adafruit_feather_esp32s2.build.core=esp32 -adafruit_feather_esp32s2.build.variant=adafruit_feather_esp32s2 -adafruit_feather_esp32s2.build.board=ADAFRUIT_FEATHER_ESP32S2 - -adafruit_feather_esp32s2.build.cdc_on_boot=1 -adafruit_feather_esp32s2.build.msc_on_boot=0 -adafruit_feather_esp32s2.build.dfu_on_boot=0 -adafruit_feather_esp32s2.build.f_cpu=240000000L -adafruit_feather_esp32s2.build.flash_size=4MB -adafruit_feather_esp32s2.build.flash_freq=80m -adafruit_feather_esp32s2.build.flash_mode=dio -adafruit_feather_esp32s2.build.boot=qio -adafruit_feather_esp32s2.build.partitions=default -adafruit_feather_esp32s2.build.defines= - -adafruit_feather_esp32s2.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s2.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s2.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s2.menu.MSCOnBoot.msc=Enabled -adafruit_feather_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s2.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s2.menu.DFUOnBoot.dfu=Enabled -adafruit_feather_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s2.menu.UploadMode.cdc=Internal USB -adafruit_feather_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s2.menu.UploadMode.default=UART0 -adafruit_feather_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s2.menu.PSRAM.enabled=Enabled -adafruit_feather_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s2.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s2.menu.PSRAM.disabled.build.defines= - -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s2.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s2.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s2.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s2.menu.FlashMode.qio=QIO -adafruit_feather_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s2.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s2.menu.FlashMode.dio=DIO -adafruit_feather_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s2.menu.FlashMode.dio.build.boot=dio - -adafruit_feather_esp32s2.menu.FlashFreq.80=80MHz -adafruit_feather_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_feather_esp32s2.menu.FlashFreq.40=40MHz -adafruit_feather_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_feather_esp32s2.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s2.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s2.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s2.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s2.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s2.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s2.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s2.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s2.menu.DebugLevel.none=None -adafruit_feather_esp32s2.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s2.menu.DebugLevel.error=Error -adafruit_feather_esp32s2.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s2.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s2.menu.DebugLevel.info=Info -adafruit_feather_esp32s2.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s2.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s2.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s2.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s2.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s2.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S2 TFT - -adafruit_feather_esp32s2_tft.name=Adafruit Feather ESP32-S2 TFT -adafruit_feather_esp32s2_tft.vid.0=0x239A -adafruit_feather_esp32s2_tft.pid.0=0x810F -adafruit_feather_esp32s2_tft.vid.1=0x239A -adafruit_feather_esp32s2_tft.pid.1=0x010F -adafruit_feather_esp32s2_tft.vid.2=0x239A -adafruit_feather_esp32s2_tft.pid.2=0x8110 - -adafruit_feather_esp32s2_tft.bootloader.tool=esptool_py -adafruit_feather_esp32s2_tft.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s2_tft.upload.tool=esptool_py -adafruit_feather_esp32s2_tft.upload.tool.default=esptool_py -adafruit_feather_esp32s2_tft.upload.tool.network=esp_ota - -adafruit_feather_esp32s2_tft.upload.maximum_size=1310720 -adafruit_feather_esp32s2_tft.upload.maximum_data_size=327680 -adafruit_feather_esp32s2_tft.upload.flags= -adafruit_feather_esp32s2_tft.upload.extra_flags= -adafruit_feather_esp32s2_tft.upload.use_1200bps_touch=true -adafruit_feather_esp32s2_tft.upload.wait_for_upload_port=true - -adafruit_feather_esp32s2_tft.serial.disableDTR=false -adafruit_feather_esp32s2_tft.serial.disableRTS=false - -adafruit_feather_esp32s2_tft.build.tarch=xtensa -adafruit_feather_esp32s2_tft.build.bootloader_addr=0x1000 -adafruit_feather_esp32s2_tft.build.target=esp32s2 -adafruit_feather_esp32s2_tft.build.mcu=esp32s2 -adafruit_feather_esp32s2_tft.build.core=esp32 -adafruit_feather_esp32s2_tft.build.variant=adafruit_feather_esp32s2_tft -adafruit_feather_esp32s2_tft.build.board=ADAFRUIT_FEATHER_ESP32S2_TFT - -adafruit_feather_esp32s2_tft.build.cdc_on_boot=1 -adafruit_feather_esp32s2_tft.build.msc_on_boot=0 -adafruit_feather_esp32s2_tft.build.dfu_on_boot=0 -adafruit_feather_esp32s2_tft.build.f_cpu=240000000L -adafruit_feather_esp32s2_tft.build.flash_size=4MB -adafruit_feather_esp32s2_tft.build.flash_freq=80m -adafruit_feather_esp32s2_tft.build.flash_mode=dio -adafruit_feather_esp32s2_tft.build.boot=qio -adafruit_feather_esp32s2_tft.build.partitions=default -adafruit_feather_esp32s2_tft.build.defines= - -adafruit_feather_esp32s2_tft.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s2_tft.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s2_tft.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s2_tft.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s2_tft.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s2_tft.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s2_tft.menu.MSCOnBoot.msc=Enabled -adafruit_feather_esp32s2_tft.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s2_tft.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s2_tft.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s2_tft.menu.DFUOnBoot.dfu=Enabled -adafruit_feather_esp32s2_tft.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s2_tft.menu.UploadMode.cdc=Internal USB -adafruit_feather_esp32s2_tft.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s2_tft.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s2_tft.menu.UploadMode.default=UART0 -adafruit_feather_esp32s2_tft.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s2_tft.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s2_tft.menu.PSRAM.enabled=Enabled -adafruit_feather_esp32s2_tft.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s2_tft.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s2_tft.menu.PSRAM.disabled.build.defines= - -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2_tft.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s2_tft.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s2_tft.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s2_tft.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s2_tft.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s2_tft.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s2_tft.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s2_tft.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s2_tft.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s2_tft.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s2_tft.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s2_tft.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s2_tft.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s2_tft.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s2_tft.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s2_tft.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s2_tft.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s2_tft.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s2_tft.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s2_tft.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s2_tft.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s2_tft.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s2_tft.menu.FlashMode.qio=QIO -adafruit_feather_esp32s2_tft.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s2_tft.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s2_tft.menu.FlashMode.dio=DIO -adafruit_feather_esp32s2_tft.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s2_tft.menu.FlashMode.dio.build.boot=dio - -adafruit_feather_esp32s2_tft.menu.FlashFreq.80=80MHz -adafruit_feather_esp32s2_tft.menu.FlashFreq.80.build.flash_freq=80m -adafruit_feather_esp32s2_tft.menu.FlashFreq.40=40MHz -adafruit_feather_esp32s2_tft.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_feather_esp32s2_tft.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s2_tft.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s2_tft.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s2_tft.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s2_tft.menu.DebugLevel.none=None -adafruit_feather_esp32s2_tft.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s2_tft.menu.DebugLevel.error=Error -adafruit_feather_esp32s2_tft.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s2_tft.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s2_tft.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s2_tft.menu.DebugLevel.info=Info -adafruit_feather_esp32s2_tft.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s2_tft.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s2_tft.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s2_tft.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s2_tft.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s2_tft.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s2_tft.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s2_tft.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s2_tft.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s2_tft.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S2 Reverse TFT - -adafruit_feather_esp32s2_reversetft.name=Adafruit Feather ESP32-S2 Reverse TFT -adafruit_feather_esp32s2_reversetft.vid.0=0x239A -adafruit_feather_esp32s2_reversetft.pid.0=0x80ED -adafruit_feather_esp32s2_reversetft.vid.1=0x239A -adafruit_feather_esp32s2_reversetft.pid.1=0x00ED -adafruit_feather_esp32s2_reversetft.vid.2=0x239A -adafruit_feather_esp32s2_reversetft.pid.2=0x80EE - -adafruit_feather_esp32s2_reversetft.bootloader.tool=esptool_py -adafruit_feather_esp32s2_reversetft.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s2_reversetft.upload.tool=esptool_py -adafruit_feather_esp32s2_reversetft.upload.tool.default=esptool_py -adafruit_feather_esp32s2_reversetft.upload.tool.network=esp_ota - -adafruit_feather_esp32s2_reversetft.upload.maximum_size=1310720 -adafruit_feather_esp32s2_reversetft.upload.maximum_data_size=327680 -adafruit_feather_esp32s2_reversetft.upload.flags= -adafruit_feather_esp32s2_reversetft.upload.extra_flags= -adafruit_feather_esp32s2_reversetft.upload.use_1200bps_touch=true -adafruit_feather_esp32s2_reversetft.upload.wait_for_upload_port=true - -adafruit_feather_esp32s2_reversetft.serial.disableDTR=false -adafruit_feather_esp32s2_reversetft.serial.disableRTS=false - -adafruit_feather_esp32s2_reversetft.build.tarch=xtensa -adafruit_feather_esp32s2_reversetft.build.bootloader_addr=0x1000 -adafruit_feather_esp32s2_reversetft.build.target=esp32s2 -adafruit_feather_esp32s2_reversetft.build.mcu=esp32s2 -adafruit_feather_esp32s2_reversetft.build.core=esp32 -adafruit_feather_esp32s2_reversetft.build.variant=adafruit_feather_esp32s2_reversetft -adafruit_feather_esp32s2_reversetft.build.board=ADAFRUIT_FEATHER_ESP32S2_REVTFT - -adafruit_feather_esp32s2_reversetft.build.cdc_on_boot=1 -adafruit_feather_esp32s2_reversetft.build.msc_on_boot=0 -adafruit_feather_esp32s2_reversetft.build.dfu_on_boot=0 -adafruit_feather_esp32s2_reversetft.build.f_cpu=240000000L -adafruit_feather_esp32s2_reversetft.build.flash_size=4MB -adafruit_feather_esp32s2_reversetft.build.flash_freq=80m -adafruit_feather_esp32s2_reversetft.build.flash_mode=dio -adafruit_feather_esp32s2_reversetft.build.boot=qio -adafruit_feather_esp32s2_reversetft.build.partitions=default -adafruit_feather_esp32s2_reversetft.build.defines= - -adafruit_feather_esp32s2_reversetft.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s2_reversetft.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s2_reversetft.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s2_reversetft.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s2_reversetft.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s2_reversetft.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s2_reversetft.menu.MSCOnBoot.msc=Enabled -adafruit_feather_esp32s2_reversetft.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s2_reversetft.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s2_reversetft.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s2_reversetft.menu.DFUOnBoot.dfu=Enabled -adafruit_feather_esp32s2_reversetft.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s2_reversetft.menu.UploadMode.cdc=Internal USB -adafruit_feather_esp32s2_reversetft.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s2_reversetft.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s2_reversetft.menu.UploadMode.default=UART0 -adafruit_feather_esp32s2_reversetft.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s2_reversetft.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s2_reversetft.menu.PSRAM.enabled=Enabled -adafruit_feather_esp32s2_reversetft.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s2_reversetft.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s2_reversetft.menu.PSRAM.disabled.build.defines= - -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s2_reversetft.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s2_reversetft.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s2_reversetft.menu.FlashMode.qio=QIO -adafruit_feather_esp32s2_reversetft.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s2_reversetft.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s2_reversetft.menu.FlashMode.dio=DIO -adafruit_feather_esp32s2_reversetft.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s2_reversetft.menu.FlashMode.dio.build.boot=dio - -adafruit_feather_esp32s2_reversetft.menu.FlashFreq.80=80MHz -adafruit_feather_esp32s2_reversetft.menu.FlashFreq.80.build.flash_freq=80m -adafruit_feather_esp32s2_reversetft.menu.FlashFreq.40=40MHz -adafruit_feather_esp32s2_reversetft.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_feather_esp32s2_reversetft.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s2_reversetft.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s2_reversetft.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.none=None -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.error=Error -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.info=Info -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s2_reversetft.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s2_reversetft.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s2_reversetft.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s2_reversetft.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s2_reversetft.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s2_reversetft.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S3 2MB PSRAM - -adafruit_feather_esp32s3.name=Adafruit Feather ESP32-S3 2MB PSRAM -adafruit_feather_esp32s3.vid.0=0x239A -adafruit_feather_esp32s3.pid.0=0x811B -adafruit_feather_esp32s3.vid.1=0x239A -adafruit_feather_esp32s3.pid.1=0x011B -adafruit_feather_esp32s3.vid.2=0x239A -adafruit_feather_esp32s3.pid.2=0x811C - -adafruit_feather_esp32s3.bootloader.tool=esptool_py -adafruit_feather_esp32s3.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s3.upload.tool=esptool_py -adafruit_feather_esp32s3.upload.tool.default=esptool_py -adafruit_feather_esp32s3.upload.tool.network=esp_ota - -adafruit_feather_esp32s3.upload.maximum_size=1310720 -adafruit_feather_esp32s3.upload.maximum_data_size=327680 -adafruit_feather_esp32s3.upload.flags= -adafruit_feather_esp32s3.upload.extra_flags= -adafruit_feather_esp32s3.upload.use_1200bps_touch=true -adafruit_feather_esp32s3.upload.wait_for_upload_port=true - -adafruit_feather_esp32s3.serial.disableDTR=false -adafruit_feather_esp32s3.serial.disableRTS=false - -adafruit_feather_esp32s3.build.tarch=xtensa -adafruit_feather_esp32s3.build.bootloader_addr=0x0 -adafruit_feather_esp32s3.build.target=esp32s3 -adafruit_feather_esp32s3.build.mcu=esp32s3 -adafruit_feather_esp32s3.build.core=esp32 -adafruit_feather_esp32s3.build.variant=adafruit_feather_esp32s3 -adafruit_feather_esp32s3.build.board=ADAFRUIT_FEATHER_ESP32S3 - -adafruit_feather_esp32s3.build.usb_mode=0 -adafruit_feather_esp32s3.build.cdc_on_boot=1 -adafruit_feather_esp32s3.build.msc_on_boot=0 -adafruit_feather_esp32s3.build.dfu_on_boot=0 -adafruit_feather_esp32s3.build.f_cpu=240000000L -adafruit_feather_esp32s3.build.flash_size=4MB -adafruit_feather_esp32s3.build.flash_freq=80m -adafruit_feather_esp32s3.build.flash_mode=dio -adafruit_feather_esp32s3.build.boot=qio -adafruit_feather_esp32s3.build.partitions=default -adafruit_feather_esp32s3.build.defines= -adafruit_feather_esp32s3.build.loop_core= -adafruit_feather_esp32s3.build.event_core= -adafruit_feather_esp32s3.build.flash_type=qio -adafruit_feather_esp32s3.build.psram_type=qspi -adafruit_feather_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_feather_esp32s3.menu.LoopCore.1=Core 1 -adafruit_feather_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_feather_esp32s3.menu.LoopCore.0=Core 0 -adafruit_feather_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_feather_esp32s3.menu.EventsCore.1=Core 1 -adafruit_feather_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_feather_esp32s3.menu.EventsCore.0=Core 0 -adafruit_feather_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_feather_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_feather_esp32s3.menu.USBMode.default.build.usb_mode=0 -adafruit_feather_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_feather_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_feather_esp32s3.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s3.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s3.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s3.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_feather_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_feather_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -adafruit_feather_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_feather_esp32s3.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s3.menu.PSRAM.disabled.build.defines= -adafruit_feather_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_feather_esp32s3.menu.PSRAM.opi=OPI PSRAM -adafruit_feather_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3.menu.PSRAM.opi.build.psram_type=opi - -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s3.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s3.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s3.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s3.menu.FlashMode.qio=QIO 80MHz -adafruit_feather_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s3.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.qio120=QIO 120MHz -adafruit_feather_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_feather_esp32s3.menu.FlashMode.qio120.build.boot=qio -adafruit_feather_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_feather_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.dio=DIO 80MHz -adafruit_feather_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s3.menu.FlashMode.dio.build.boot=dio -adafruit_feather_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.opi=OPI 80MHz -adafruit_feather_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -adafruit_feather_esp32s3.menu.FlashMode.opi.build.boot=opi -adafruit_feather_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -adafruit_feather_esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_feather_esp32s3.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s3.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s3.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s3.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s3.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s3.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s3.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s3.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s3.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s3.menu.DebugLevel.none=None -adafruit_feather_esp32s3.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s3.menu.DebugLevel.error=Error -adafruit_feather_esp32s3.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s3.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s3.menu.DebugLevel.info=Info -adafruit_feather_esp32s3.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s3.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s3.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s3.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s3.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s3.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s3.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s3.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S3 No PSRAM - -adafruit_feather_esp32s3_nopsram.name=Adafruit Feather ESP32-S3 No PSRAM -adafruit_feather_esp32s3_nopsram.vid.0=0x239A -adafruit_feather_esp32s3_nopsram.pid.0=0x8113 -adafruit_feather_esp32s3_nopsram.vid.1=0x239A -adafruit_feather_esp32s3_nopsram.pid.1=0x0113 -adafruit_feather_esp32s3_nopsram.vid.2=0x239A -adafruit_feather_esp32s3_nopsram.pid.2=0x8114 - -adafruit_feather_esp32s3_nopsram.bootloader.tool=esptool_py -adafruit_feather_esp32s3_nopsram.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s3_nopsram.upload.tool=esptool_py -adafruit_feather_esp32s3_nopsram.upload.tool.default=esptool_py -adafruit_feather_esp32s3_nopsram.upload.tool.network=esp_ota - -adafruit_feather_esp32s3_nopsram.upload.maximum_size=1310720 -adafruit_feather_esp32s3_nopsram.upload.maximum_data_size=327680 -adafruit_feather_esp32s3_nopsram.upload.flags= -adafruit_feather_esp32s3_nopsram.upload.extra_flags= -adafruit_feather_esp32s3_nopsram.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_nopsram.upload.wait_for_upload_port=true - -adafruit_feather_esp32s3_nopsram.serial.disableDTR=false -adafruit_feather_esp32s3_nopsram.serial.disableRTS=false - -adafruit_feather_esp32s3_nopsram.build.tarch=xtensa -adafruit_feather_esp32s3_nopsram.build.bootloader_addr=0x0 -adafruit_feather_esp32s3_nopsram.build.target=esp32s3 -adafruit_feather_esp32s3_nopsram.build.mcu=esp32s3 -adafruit_feather_esp32s3_nopsram.build.core=esp32 -adafruit_feather_esp32s3_nopsram.build.variant=adafruit_feather_esp32s3_nopsram -adafruit_feather_esp32s3_nopsram.build.board=ADAFRUIT_FEATHER_ESP32S3_NOPSRAM - -adafruit_feather_esp32s3_nopsram.build.usb_mode=0 -adafruit_feather_esp32s3_nopsram.build.cdc_on_boot=1 -adafruit_feather_esp32s3_nopsram.build.msc_on_boot=0 -adafruit_feather_esp32s3_nopsram.build.dfu_on_boot=0 -adafruit_feather_esp32s3_nopsram.build.f_cpu=240000000L -adafruit_feather_esp32s3_nopsram.build.flash_size=8MB -adafruit_feather_esp32s3_nopsram.build.flash_freq=80m -adafruit_feather_esp32s3_nopsram.build.flash_mode=dio -adafruit_feather_esp32s3_nopsram.build.boot=qio -adafruit_feather_esp32s3_nopsram.build.partitions=default -adafruit_feather_esp32s3_nopsram.build.defines= -adafruit_feather_esp32s3_nopsram.build.loop_core= -adafruit_feather_esp32s3_nopsram.build.event_core= -adafruit_feather_esp32s3_nopsram.build.flash_type=qio -adafruit_feather_esp32s3_nopsram.build.psram_type=qspi -adafruit_feather_esp32s3_nopsram.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_feather_esp32s3_nopsram.menu.LoopCore.1=Core 1 -adafruit_feather_esp32s3_nopsram.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_feather_esp32s3_nopsram.menu.LoopCore.0=Core 0 -adafruit_feather_esp32s3_nopsram.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_feather_esp32s3_nopsram.menu.EventsCore.1=Core 1 -adafruit_feather_esp32s3_nopsram.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_feather_esp32s3_nopsram.menu.EventsCore.0=Core 0 -adafruit_feather_esp32s3_nopsram.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_feather_esp32s3_nopsram.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_feather_esp32s3_nopsram.menu.USBMode.default.build.usb_mode=0 -adafruit_feather_esp32s3_nopsram.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_feather_esp32s3_nopsram.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_feather_esp32s3_nopsram.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s3_nopsram.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s3_nopsram.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s3_nopsram.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s3_nopsram.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s3_nopsram.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s3_nopsram.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_nopsram.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s3_nopsram.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s3_nopsram.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s3_nopsram.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_nopsram.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s3_nopsram.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_feather_esp32s3_nopsram.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_nopsram.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s3_nopsram.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_feather_esp32s3_nopsram.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s3_nopsram.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FATFS) -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-8MB -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota=TinyUF2 8MB No OTA (4MB APP/3.7MB FATFS) -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-8MB-noota -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=4194304 -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_feather_esp32s3_nopsram.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s3_nopsram.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio=QIO 80MHz -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio.build.boot_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio.build.flash_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio120=QIO 120MHz -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio120.build.boot=qio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.dio=DIO 80MHz -adafruit_feather_esp32s3_nopsram.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.dio.build.boot=dio -adafruit_feather_esp32s3_nopsram.menu.FlashMode.dio.build.boot_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.dio.build.flash_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.opi=OPI 80MHz -adafruit_feather_esp32s3_nopsram.menu.FlashMode.opi.build.flash_mode=dout -adafruit_feather_esp32s3_nopsram.menu.FlashMode.opi.build.boot=opi -adafruit_feather_esp32s3_nopsram.menu.FlashMode.opi.build.boot_freq=80m -adafruit_feather_esp32s3_nopsram.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_feather_esp32s3_nopsram.menu.FlashSize.8M=8MB (64Mb) -adafruit_feather_esp32s3_nopsram.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s3_nopsram.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.none=None -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.error=Error -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.info=Info -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s3_nopsram.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s3_nopsram.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s3_nopsram.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s3_nopsram.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s3_nopsram.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s3_nopsram.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S3 TFT - -adafruit_feather_esp32s3_tft.name=Adafruit Feather ESP32-S3 TFT -adafruit_feather_esp32s3_tft.vid.0=0x239A -adafruit_feather_esp32s3_tft.pid.0=0x811D -adafruit_feather_esp32s3_tft.vid.1=0x239A -adafruit_feather_esp32s3_tft.pid.1=0x011D -adafruit_feather_esp32s3_tft.vid.2=0x239A -adafruit_feather_esp32s3_tft.pid.2=0x811E - -adafruit_feather_esp32s3_tft.bootloader.tool=esptool_py -adafruit_feather_esp32s3_tft.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s3_tft.upload.tool=esptool_py -adafruit_feather_esp32s3_tft.upload.tool.default=esptool_py -adafruit_feather_esp32s3_tft.upload.tool.network=esp_ota - -adafruit_feather_esp32s3_tft.upload.maximum_size=1310720 -adafruit_feather_esp32s3_tft.upload.maximum_data_size=327680 -adafruit_feather_esp32s3_tft.upload.flags= -adafruit_feather_esp32s3_tft.upload.extra_flags= -adafruit_feather_esp32s3_tft.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_tft.upload.wait_for_upload_port=true - -adafruit_feather_esp32s3_tft.serial.disableDTR=false -adafruit_feather_esp32s3_tft.serial.disableRTS=false - -adafruit_feather_esp32s3_tft.build.tarch=xtensa -adafruit_feather_esp32s3_tft.build.bootloader_addr=0x0 -adafruit_feather_esp32s3_tft.build.target=esp32s3 -adafruit_feather_esp32s3_tft.build.mcu=esp32s3 -adafruit_feather_esp32s3_tft.build.core=esp32 -adafruit_feather_esp32s3_tft.build.variant=adafruit_feather_esp32s3_tft -adafruit_feather_esp32s3_tft.build.board=ADAFRUIT_FEATHER_ESP32S3_TFT - -adafruit_feather_esp32s3_tft.build.usb_mode=0 -adafruit_feather_esp32s3_tft.build.cdc_on_boot=1 -adafruit_feather_esp32s3_tft.build.msc_on_boot=0 -adafruit_feather_esp32s3_tft.build.dfu_on_boot=0 -adafruit_feather_esp32s3_tft.build.f_cpu=240000000L -adafruit_feather_esp32s3_tft.build.flash_size=4MB -adafruit_feather_esp32s3_tft.build.flash_freq=80m -adafruit_feather_esp32s3_tft.build.flash_mode=dio -adafruit_feather_esp32s3_tft.build.boot=qio -adafruit_feather_esp32s3_tft.build.partitions=default -adafruit_feather_esp32s3_tft.build.defines= -adafruit_feather_esp32s3_tft.build.loop_core= -adafruit_feather_esp32s3_tft.build.event_core= -adafruit_feather_esp32s3_tft.build.flash_type=qio -adafruit_feather_esp32s3_tft.build.psram_type=qspi -adafruit_feather_esp32s3_tft.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_feather_esp32s3_tft.menu.LoopCore.1=Core 1 -adafruit_feather_esp32s3_tft.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_feather_esp32s3_tft.menu.LoopCore.0=Core 0 -adafruit_feather_esp32s3_tft.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_feather_esp32s3_tft.menu.EventsCore.1=Core 1 -adafruit_feather_esp32s3_tft.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_feather_esp32s3_tft.menu.EventsCore.0=Core 0 -adafruit_feather_esp32s3_tft.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_feather_esp32s3_tft.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_feather_esp32s3_tft.menu.USBMode.default.build.usb_mode=0 -adafruit_feather_esp32s3_tft.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_feather_esp32s3_tft.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_feather_esp32s3_tft.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s3_tft.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s3_tft.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s3_tft.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s3_tft.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s3_tft.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s3_tft.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_tft.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s3_tft.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s3_tft.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s3_tft.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_tft.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s3_tft.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_feather_esp32s3_tft.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_tft.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s3_tft.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_feather_esp32s3_tft.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s3_tft.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s3_tft.menu.PSRAM.enabled=QSPI PSRAM -adafruit_feather_esp32s3_tft.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3_tft.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_feather_esp32s3_tft.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s3_tft.menu.PSRAM.disabled.build.defines= -adafruit_feather_esp32s3_tft.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_feather_esp32s3_tft.menu.PSRAM.opi=OPI PSRAM -adafruit_feather_esp32s3_tft.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3_tft.menu.PSRAM.opi.build.psram_type=opi - -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_tft.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s3_tft.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s3_tft.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s3_tft.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s3_tft.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s3_tft.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s3_tft.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s3_tft.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s3_tft.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s3_tft.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s3_tft.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s3_tft.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s3_tft.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s3_tft.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s3_tft.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s3_tft.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s3_tft.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s3_tft.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s3_tft.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s3_tft.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s3_tft.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s3_tft.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s3_tft.menu.FlashMode.qio=QIO 80MHz -adafruit_feather_esp32s3_tft.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s3_tft.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s3_tft.menu.FlashMode.qio.build.boot_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.qio.build.flash_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.qio120=QIO 120MHz -adafruit_feather_esp32s3_tft.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_feather_esp32s3_tft.menu.FlashMode.qio120.build.boot=qio -adafruit_feather_esp32s3_tft.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_feather_esp32s3_tft.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.dio=DIO 80MHz -adafruit_feather_esp32s3_tft.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s3_tft.menu.FlashMode.dio.build.boot=dio -adafruit_feather_esp32s3_tft.menu.FlashMode.dio.build.boot_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.dio.build.flash_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.opi=OPI 80MHz -adafruit_feather_esp32s3_tft.menu.FlashMode.opi.build.flash_mode=dout -adafruit_feather_esp32s3_tft.menu.FlashMode.opi.build.boot=opi -adafruit_feather_esp32s3_tft.menu.FlashMode.opi.build.boot_freq=80m -adafruit_feather_esp32s3_tft.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_feather_esp32s3_tft.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s3_tft.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s3_tft.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s3_tft.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s3_tft.menu.DebugLevel.none=None -adafruit_feather_esp32s3_tft.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s3_tft.menu.DebugLevel.error=Error -adafruit_feather_esp32s3_tft.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s3_tft.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s3_tft.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s3_tft.menu.DebugLevel.info=Info -adafruit_feather_esp32s3_tft.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s3_tft.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s3_tft.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s3_tft.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s3_tft.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s3_tft.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s3_tft.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s3_tft.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s3_tft.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s3_tft.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Feather ESP32-S3 Reverse TFT - -adafruit_feather_esp32s3_reversetft.name=Adafruit Feather ESP32-S3 Reverse TFT -adafruit_feather_esp32s3_reversetft.vid.0=0x239A -adafruit_feather_esp32s3_reversetft.pid.0=0x8123 -adafruit_feather_esp32s3_reversetft.vid.1=0x239A -adafruit_feather_esp32s3_reversetft.pid.1=0x0123 -adafruit_feather_esp32s3_reversetft.vid.2=0x239A -adafruit_feather_esp32s3_reversetft.pid.2=0x8124 - -adafruit_feather_esp32s3_reversetft.bootloader.tool=esptool_py -adafruit_feather_esp32s3_reversetft.bootloader.tool.default=esptool_py - -adafruit_feather_esp32s3_reversetft.upload.tool=esptool_py -adafruit_feather_esp32s3_reversetft.upload.tool.default=esptool_py -adafruit_feather_esp32s3_reversetft.upload.tool.network=esp_ota - -adafruit_feather_esp32s3_reversetft.upload.maximum_size=1310720 -adafruit_feather_esp32s3_reversetft.upload.maximum_data_size=327680 -adafruit_feather_esp32s3_reversetft.upload.flags= -adafruit_feather_esp32s3_reversetft.upload.extra_flags= -adafruit_feather_esp32s3_reversetft.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_reversetft.upload.wait_for_upload_port=true - -adafruit_feather_esp32s3_reversetft.serial.disableDTR=false -adafruit_feather_esp32s3_reversetft.serial.disableRTS=false - -adafruit_feather_esp32s3_reversetft.build.tarch=xtensa -adafruit_feather_esp32s3_reversetft.build.bootloader_addr=0x0 -adafruit_feather_esp32s3_reversetft.build.target=esp32s3 -adafruit_feather_esp32s3_reversetft.build.mcu=esp32s3 -adafruit_feather_esp32s3_reversetft.build.core=esp32 -adafruit_feather_esp32s3_reversetft.build.variant=adafruit_feather_esp32s3_reversetft -adafruit_feather_esp32s3_reversetft.build.board=ADAFRUIT_FEATHER_ESP32S3_REVTFT - -adafruit_feather_esp32s3_reversetft.build.usb_mode=0 -adafruit_feather_esp32s3_reversetft.build.cdc_on_boot=1 -adafruit_feather_esp32s3_reversetft.build.msc_on_boot=0 -adafruit_feather_esp32s3_reversetft.build.dfu_on_boot=0 -adafruit_feather_esp32s3_reversetft.build.f_cpu=240000000L -adafruit_feather_esp32s3_reversetft.build.flash_size=4MB -adafruit_feather_esp32s3_reversetft.build.flash_freq=80m -adafruit_feather_esp32s3_reversetft.build.flash_mode=dio -adafruit_feather_esp32s3_reversetft.build.boot=qio -adafruit_feather_esp32s3_reversetft.build.partitions=default -adafruit_feather_esp32s3_reversetft.build.defines= -adafruit_feather_esp32s3_reversetft.build.loop_core= -adafruit_feather_esp32s3_reversetft.build.event_core= -adafruit_feather_esp32s3_reversetft.build.flash_type=qio -adafruit_feather_esp32s3_reversetft.build.psram_type=qspi -adafruit_feather_esp32s3_reversetft.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_feather_esp32s3_reversetft.menu.LoopCore.1=Core 1 -adafruit_feather_esp32s3_reversetft.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_feather_esp32s3_reversetft.menu.LoopCore.0=Core 0 -adafruit_feather_esp32s3_reversetft.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_feather_esp32s3_reversetft.menu.EventsCore.1=Core 1 -adafruit_feather_esp32s3_reversetft.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_feather_esp32s3_reversetft.menu.EventsCore.0=Core 0 -adafruit_feather_esp32s3_reversetft.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_feather_esp32s3_reversetft.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_feather_esp32s3_reversetft.menu.USBMode.default.build.usb_mode=0 -adafruit_feather_esp32s3_reversetft.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_feather_esp32s3_reversetft.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_feather_esp32s3_reversetft.menu.CDCOnBoot.cdc=Enabled -adafruit_feather_esp32s3_reversetft.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_feather_esp32s3_reversetft.menu.CDCOnBoot.default=Disabled -adafruit_feather_esp32s3_reversetft.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_feather_esp32s3_reversetft.menu.MSCOnBoot.default=Disabled -adafruit_feather_esp32s3_reversetft.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_feather_esp32s3_reversetft.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_reversetft.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_feather_esp32s3_reversetft.menu.DFUOnBoot.default=Disabled -adafruit_feather_esp32s3_reversetft.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_feather_esp32s3_reversetft.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_feather_esp32s3_reversetft.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_feather_esp32s3_reversetft.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_feather_esp32s3_reversetft.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_feather_esp32s3_reversetft.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_feather_esp32s3_reversetft.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_feather_esp32s3_reversetft.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_feather_esp32s3_reversetft.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_feather_esp32s3_reversetft.menu.PSRAM.enabled=QSPI PSRAM -adafruit_feather_esp32s3_reversetft.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3_reversetft.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_feather_esp32s3_reversetft.menu.PSRAM.disabled=Disabled -adafruit_feather_esp32s3_reversetft.menu.PSRAM.disabled.build.defines= -adafruit_feather_esp32s3_reversetft.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_feather_esp32s3_reversetft.menu.PSRAM.opi=OPI PSRAM -adafruit_feather_esp32s3_reversetft.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_feather_esp32s3_reversetft.menu.PSRAM.opi.build.psram_type=opi - -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.default.build.partitions=default -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_feather_esp32s3_reversetft.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.240=240MHz (WiFi) -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.160=160MHz (WiFi) -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.80=80MHz (WiFi) -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.40=40MHz -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.20=20MHz -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.10=10MHz -adafruit_feather_esp32s3_reversetft.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio=QIO 80MHz -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio.build.flash_mode=dio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio.build.boot=qio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio.build.boot_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio.build.flash_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio120=QIO 120MHz -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio120.build.boot=qio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.dio=DIO 80MHz -adafruit_feather_esp32s3_reversetft.menu.FlashMode.dio.build.flash_mode=dio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.dio.build.boot=dio -adafruit_feather_esp32s3_reversetft.menu.FlashMode.dio.build.boot_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.dio.build.flash_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.opi=OPI 80MHz -adafruit_feather_esp32s3_reversetft.menu.FlashMode.opi.build.flash_mode=dout -adafruit_feather_esp32s3_reversetft.menu.FlashMode.opi.build.boot=opi -adafruit_feather_esp32s3_reversetft.menu.FlashMode.opi.build.boot_freq=80m -adafruit_feather_esp32s3_reversetft.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_feather_esp32s3_reversetft.menu.FlashSize.4M=4MB (32Mb) -adafruit_feather_esp32s3_reversetft.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.921600=921600 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.115200=115200 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.256000.windows=256000 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.230400=230400 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.460800.linux=460800 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.460800.macosx=460800 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.512000.windows=512000 -adafruit_feather_esp32s3_reversetft.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.none=None -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.none.build.code_debug=0 -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.error=Error -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.error.build.code_debug=1 -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.warn=Warn -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.warn.build.code_debug=2 -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.info=Info -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.info.build.code_debug=3 -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.debug=Debug -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.debug.build.code_debug=4 -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.verbose=Verbose -adafruit_feather_esp32s3_reversetft.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_feather_esp32s3_reversetft.menu.EraseFlash.none=Disabled -adafruit_feather_esp32s3_reversetft.menu.EraseFlash.none.upload.erase_cmd= -adafruit_feather_esp32s3_reversetft.menu.EraseFlash.all=Enabled -adafruit_feather_esp32s3_reversetft.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.default=Disabled -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_feather_esp32s3_reversetft.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit QT Py ESP32 - -adafruit_qtpy_esp32_pico.name=Adafruit QT Py ESP32 - -adafruit_qtpy_esp32_pico.bootloader.tool=esptool_py -adafruit_qtpy_esp32_pico.bootloader.tool.default=esptool_py - -adafruit_qtpy_esp32_pico.upload.tool=esptool_py -adafruit_qtpy_esp32_pico.upload.tool.default=esptool_py -adafruit_qtpy_esp32_pico.upload.tool.network=esp_ota - -adafruit_qtpy_esp32_pico.upload.maximum_size=1310720 -adafruit_qtpy_esp32_pico.upload.maximum_data_size=327680 -adafruit_qtpy_esp32_pico.upload.flags= -adafruit_qtpy_esp32_pico.upload.extra_flags= - -adafruit_qtpy_esp32_pico.serial.disableDTR=true -adafruit_qtpy_esp32_pico.serial.disableRTS=true - -adafruit_qtpy_esp32_pico.build.tarch=xtensa -adafruit_qtpy_esp32_pico.build.bootloader_addr=0x1000 -adafruit_qtpy_esp32_pico.build.target=esp32 -adafruit_qtpy_esp32_pico.build.mcu=esp32 -adafruit_qtpy_esp32_pico.build.core=esp32 -adafruit_qtpy_esp32_pico.build.variant=adafruit_qtpy_esp32 -adafruit_qtpy_esp32_pico.build.board=ADAFRUIT_QTPY_ESP32_PICO - -adafruit_qtpy_esp32_pico.build.f_cpu=240000000L -adafruit_qtpy_esp32_pico.build.flash_size=8MB -adafruit_qtpy_esp32_pico.build.flash_freq=80m -adafruit_qtpy_esp32_pico.build.flash_mode=dio -adafruit_qtpy_esp32_pico.build.boot=dio -adafruit_qtpy_esp32_pico.build.partitions=default -adafruit_qtpy_esp32_pico.build.defines= -adafruit_qtpy_esp32_pico.build.loop_core= -adafruit_qtpy_esp32_pico.build.event_core= - -adafruit_qtpy_esp32_pico.menu.LoopCore.1=Core 1 -adafruit_qtpy_esp32_pico.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_qtpy_esp32_pico.menu.LoopCore.0=Core 0 -adafruit_qtpy_esp32_pico.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_qtpy_esp32_pico.menu.EventsCore.1=Core 1 -adafruit_qtpy_esp32_pico.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_qtpy_esp32_pico.menu.EventsCore.0=Core 0 -adafruit_qtpy_esp32_pico.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_qtpy_esp32_pico.menu.PSRAM.enabled=Enabled -adafruit_qtpy_esp32_pico.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -adafruit_qtpy_esp32_pico.menu.PSRAM.disabled=Disabled -adafruit_qtpy_esp32_pico.menu.PSRAM.disabled.build.defines= - -adafruit_qtpy_esp32_pico.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_qtpy_esp32_pico.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_qtpy_esp32_pico.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_qtpy_esp32_pico.menu.CPUFreq.240=240MHz (WiFi/BT) -adafruit_qtpy_esp32_pico.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_qtpy_esp32_pico.menu.CPUFreq.160=160MHz (WiFi/BT) -adafruit_qtpy_esp32_pico.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qtpy_esp32_pico.menu.CPUFreq.80=80MHz (WiFi/BT) -adafruit_qtpy_esp32_pico.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qtpy_esp32_pico.menu.CPUFreq.40=40MHz -adafruit_qtpy_esp32_pico.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qtpy_esp32_pico.menu.CPUFreq.20=20MHz -adafruit_qtpy_esp32_pico.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qtpy_esp32_pico.menu.CPUFreq.10=10MHz -adafruit_qtpy_esp32_pico.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qtpy_esp32_pico.menu.FlashFreq.80=80MHz -adafruit_qtpy_esp32_pico.menu.FlashFreq.80.build.flash_freq=80m -adafruit_qtpy_esp32_pico.menu.FlashFreq.40=40MHz -adafruit_qtpy_esp32_pico.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_qtpy_esp32_pico.menu.FlashSize.8M=8MB (64Mb) -adafruit_qtpy_esp32_pico.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_qtpy_esp32_pico.menu.UploadSpeed.921600=921600 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.115200=115200 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.256000.windows=256000 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.230400=230400 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.460800.linux=460800 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.460800.macosx=460800 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.512000.windows=512000 -adafruit_qtpy_esp32_pico.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qtpy_esp32_pico.menu.DebugLevel.none=None -adafruit_qtpy_esp32_pico.menu.DebugLevel.none.build.code_debug=0 -adafruit_qtpy_esp32_pico.menu.DebugLevel.error=Error -adafruit_qtpy_esp32_pico.menu.DebugLevel.error.build.code_debug=1 -adafruit_qtpy_esp32_pico.menu.DebugLevel.warn=Warn -adafruit_qtpy_esp32_pico.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qtpy_esp32_pico.menu.DebugLevel.info=Info -adafruit_qtpy_esp32_pico.menu.DebugLevel.info.build.code_debug=3 -adafruit_qtpy_esp32_pico.menu.DebugLevel.debug=Debug -adafruit_qtpy_esp32_pico.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qtpy_esp32_pico.menu.DebugLevel.verbose=Verbose -adafruit_qtpy_esp32_pico.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qtpy_esp32_pico.menu.EraseFlash.none=Disabled -adafruit_qtpy_esp32_pico.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qtpy_esp32_pico.menu.EraseFlash.all=Enabled -adafruit_qtpy_esp32_pico.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.default=Disabled -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qtpy_esp32_pico.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit QT Py ESP32-C3 - -adafruit_qtpy_esp32c3.name=Adafruit QT Py ESP32-C3 -adafruit_qtpy_esp32c3.vid.0=0x303a -adafruit_qtpy_esp32c3.pid.0=0x1001 - -adafruit_qtpy_esp32c3.bootloader.tool=esptool_py -adafruit_qtpy_esp32c3.bootloader.tool.default=esptool_py - -adafruit_qtpy_esp32c3.upload.tool=esptool_py -adafruit_qtpy_esp32c3.upload.tool.default=esptool_py -adafruit_qtpy_esp32c3.upload.tool.network=esp_ota - -adafruit_qtpy_esp32c3.upload.maximum_size=1310720 -adafruit_qtpy_esp32c3.upload.maximum_data_size=327680 -adafruit_qtpy_esp32c3.upload.flags= -adafruit_qtpy_esp32c3.upload.extra_flags= -adafruit_qtpy_esp32c3.upload.use_1200bps_touch=false -adafruit_qtpy_esp32c3.upload.wait_for_upload_port=false - -adafruit_qtpy_esp32c3.serial.disableDTR=false -adafruit_qtpy_esp32c3.serial.disableRTS=false - -adafruit_qtpy_esp32c3.build.tarch=riscv32 -adafruit_qtpy_esp32c3.build.bootloader_addr=0x0 -adafruit_qtpy_esp32c3.build.target=esp -adafruit_qtpy_esp32c3.build.mcu=esp32c3 -adafruit_qtpy_esp32c3.build.core=esp32 -adafruit_qtpy_esp32c3.build.variant=adafruit_qtpy_esp32c3 -adafruit_qtpy_esp32c3.build.board=ADAFRUIT_QTPY_ESP32C3 - -adafruit_qtpy_esp32c3.build.cdc_on_boot=1 -adafruit_qtpy_esp32c3.build.f_cpu=160000000L -adafruit_qtpy_esp32c3.build.flash_size=4MB -adafruit_qtpy_esp32c3.build.flash_freq=80m -adafruit_qtpy_esp32c3.build.flash_mode=dio -adafruit_qtpy_esp32c3.build.boot=qio -adafruit_qtpy_esp32c3.build.partitions=default -adafruit_qtpy_esp32c3.build.defines= - -adafruit_qtpy_esp32c3.menu.CDCOnBoot.cdc=Enabled -adafruit_qtpy_esp32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_qtpy_esp32c3.menu.CDCOnBoot.default=Disabled -adafruit_qtpy_esp32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_qtpy_esp32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.default.build.partitions=default -adafruit_qtpy_esp32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_qtpy_esp32c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_qtpy_esp32c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_qtpy_esp32c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_qtpy_esp32c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_qtpy_esp32c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_qtpy_esp32c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_qtpy_esp32c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_qtpy_esp32c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_qtpy_esp32c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_qtpy_esp32c3.menu.CPUFreq.160=160MHz (WiFi) -adafruit_qtpy_esp32c3.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qtpy_esp32c3.menu.CPUFreq.80=80MHz (WiFi) -adafruit_qtpy_esp32c3.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qtpy_esp32c3.menu.CPUFreq.40=40MHz -adafruit_qtpy_esp32c3.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qtpy_esp32c3.menu.CPUFreq.20=20MHz -adafruit_qtpy_esp32c3.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qtpy_esp32c3.menu.CPUFreq.10=10MHz -adafruit_qtpy_esp32c3.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qtpy_esp32c3.menu.FlashMode.qio=QIO -adafruit_qtpy_esp32c3.menu.FlashMode.qio.build.flash_mode=dio -adafruit_qtpy_esp32c3.menu.FlashMode.qio.build.boot=qio -adafruit_qtpy_esp32c3.menu.FlashMode.dio=DIO -adafruit_qtpy_esp32c3.menu.FlashMode.dio.build.flash_mode=dio -adafruit_qtpy_esp32c3.menu.FlashMode.dio.build.boot=dio - -adafruit_qtpy_esp32c3.menu.FlashFreq.80=80MHz -adafruit_qtpy_esp32c3.menu.FlashFreq.80.build.flash_freq=80m -adafruit_qtpy_esp32c3.menu.FlashFreq.40=40MHz -adafruit_qtpy_esp32c3.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_qtpy_esp32c3.menu.FlashSize.4M=4MB (32Mb) -adafruit_qtpy_esp32c3.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_qtpy_esp32c3.menu.UploadSpeed.921600=921600 -adafruit_qtpy_esp32c3.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qtpy_esp32c3.menu.UploadSpeed.115200=115200 -adafruit_qtpy_esp32c3.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qtpy_esp32c3.menu.UploadSpeed.256000.windows=256000 -adafruit_qtpy_esp32c3.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qtpy_esp32c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qtpy_esp32c3.menu.UploadSpeed.230400=230400 -adafruit_qtpy_esp32c3.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qtpy_esp32c3.menu.UploadSpeed.460800.linux=460800 -adafruit_qtpy_esp32c3.menu.UploadSpeed.460800.macosx=460800 -adafruit_qtpy_esp32c3.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qtpy_esp32c3.menu.UploadSpeed.512000.windows=512000 -adafruit_qtpy_esp32c3.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qtpy_esp32c3.menu.DebugLevel.none=None -adafruit_qtpy_esp32c3.menu.DebugLevel.none.build.code_debug=0 -adafruit_qtpy_esp32c3.menu.DebugLevel.error=Error -adafruit_qtpy_esp32c3.menu.DebugLevel.error.build.code_debug=1 -adafruit_qtpy_esp32c3.menu.DebugLevel.warn=Warn -adafruit_qtpy_esp32c3.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qtpy_esp32c3.menu.DebugLevel.info=Info -adafruit_qtpy_esp32c3.menu.DebugLevel.info.build.code_debug=3 -adafruit_qtpy_esp32c3.menu.DebugLevel.debug=Debug -adafruit_qtpy_esp32c3.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qtpy_esp32c3.menu.DebugLevel.verbose=Verbose -adafruit_qtpy_esp32c3.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qtpy_esp32c3.menu.EraseFlash.none=Disabled -adafruit_qtpy_esp32c3.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qtpy_esp32c3.menu.EraseFlash.all=Enabled -adafruit_qtpy_esp32c3.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qtpy_esp32c3.menu.ZigbeeMode.default=Disabled -adafruit_qtpy_esp32c3.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qtpy_esp32c3.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qtpy_esp32c3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qtpy_esp32c3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qtpy_esp32c3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit QT Py ESP32-S2 - -adafruit_qtpy_esp32s2.name=Adafruit QT Py ESP32-S2 -adafruit_qtpy_esp32s2.vid.0=0x239A -adafruit_qtpy_esp32s2.pid.0=0x8111 -adafruit_qtpy_esp32s2.vid.1=0x239A -adafruit_qtpy_esp32s2.pid.1=0x0111 -adafruit_qtpy_esp32s2.vid.2=0x239A -adafruit_qtpy_esp32s2.pid.2=0x8112 - -adafruit_qtpy_esp32s2.bootloader.tool=esptool_py -adafruit_qtpy_esp32s2.bootloader.tool.default=esptool_py - -adafruit_qtpy_esp32s2.upload.tool=esptool_py -adafruit_qtpy_esp32s2.upload.tool.default=esptool_py -adafruit_qtpy_esp32s2.upload.tool.network=esp_ota - -adafruit_qtpy_esp32s2.upload.maximum_size=1310720 -adafruit_qtpy_esp32s2.upload.maximum_data_size=327680 -adafruit_qtpy_esp32s2.upload.flags= -adafruit_qtpy_esp32s2.upload.extra_flags= -adafruit_qtpy_esp32s2.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s2.upload.wait_for_upload_port=true - -adafruit_qtpy_esp32s2.serial.disableDTR=false -adafruit_qtpy_esp32s2.serial.disableRTS=false - -adafruit_qtpy_esp32s2.build.tarch=xtensa -adafruit_qtpy_esp32s2.build.bootloader_addr=0x1000 -adafruit_qtpy_esp32s2.build.target=esp32s2 -adafruit_qtpy_esp32s2.build.mcu=esp32s2 -adafruit_qtpy_esp32s2.build.core=esp32 -adafruit_qtpy_esp32s2.build.variant=adafruit_qtpy_esp32s2 -adafruit_qtpy_esp32s2.build.board=ADAFRUIT_QTPY_ESP32S2 - -adafruit_qtpy_esp32s2.build.cdc_on_boot=1 -adafruit_qtpy_esp32s2.build.msc_on_boot=0 -adafruit_qtpy_esp32s2.build.dfu_on_boot=0 -adafruit_qtpy_esp32s2.build.f_cpu=240000000L -adafruit_qtpy_esp32s2.build.flash_size=4MB -adafruit_qtpy_esp32s2.build.flash_freq=80m -adafruit_qtpy_esp32s2.build.flash_mode=dio -adafruit_qtpy_esp32s2.build.boot=qio -adafruit_qtpy_esp32s2.build.partitions=default -adafruit_qtpy_esp32s2.build.defines= - -adafruit_qtpy_esp32s2.menu.CDCOnBoot.cdc=Enabled -adafruit_qtpy_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_qtpy_esp32s2.menu.CDCOnBoot.default=Disabled -adafruit_qtpy_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_qtpy_esp32s2.menu.MSCOnBoot.default=Disabled -adafruit_qtpy_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_qtpy_esp32s2.menu.MSCOnBoot.msc=Enabled -adafruit_qtpy_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_qtpy_esp32s2.menu.DFUOnBoot.default=Disabled -adafruit_qtpy_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_qtpy_esp32s2.menu.DFUOnBoot.dfu=Enabled -adafruit_qtpy_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_qtpy_esp32s2.menu.UploadMode.cdc=Internal USB -adafruit_qtpy_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_qtpy_esp32s2.menu.UploadMode.default=UART0 -adafruit_qtpy_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_qtpy_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_qtpy_esp32s2.menu.PSRAM.enabled=Enabled -adafruit_qtpy_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_qtpy_esp32s2.menu.PSRAM.disabled=Disabled -adafruit_qtpy_esp32s2.menu.PSRAM.disabled.build.defines= - -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_qtpy_esp32s2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.default.build.partitions=default -adafruit_qtpy_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_qtpy_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_qtpy_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_qtpy_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_qtpy_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_qtpy_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_qtpy_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_qtpy_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_qtpy_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_qtpy_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_qtpy_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_qtpy_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_qtpy_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_qtpy_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qtpy_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_qtpy_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qtpy_esp32s2.menu.CPUFreq.40=40MHz -adafruit_qtpy_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qtpy_esp32s2.menu.CPUFreq.20=20MHz -adafruit_qtpy_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qtpy_esp32s2.menu.CPUFreq.10=10MHz -adafruit_qtpy_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qtpy_esp32s2.menu.FlashMode.qio=QIO -adafruit_qtpy_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_qtpy_esp32s2.menu.FlashMode.qio.build.boot=qio -adafruit_qtpy_esp32s2.menu.FlashMode.dio=DIO -adafruit_qtpy_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_qtpy_esp32s2.menu.FlashMode.dio.build.boot=dio - -adafruit_qtpy_esp32s2.menu.FlashFreq.80=80MHz -adafruit_qtpy_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -adafruit_qtpy_esp32s2.menu.FlashFreq.40=40MHz -adafruit_qtpy_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_qtpy_esp32s2.menu.FlashSize.4M=4MB (32Mb) -adafruit_qtpy_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_qtpy_esp32s2.menu.UploadSpeed.921600=921600 -adafruit_qtpy_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qtpy_esp32s2.menu.UploadSpeed.115200=115200 -adafruit_qtpy_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qtpy_esp32s2.menu.UploadSpeed.256000.windows=256000 -adafruit_qtpy_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qtpy_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qtpy_esp32s2.menu.UploadSpeed.230400=230400 -adafruit_qtpy_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qtpy_esp32s2.menu.UploadSpeed.460800.linux=460800 -adafruit_qtpy_esp32s2.menu.UploadSpeed.460800.macosx=460800 -adafruit_qtpy_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qtpy_esp32s2.menu.UploadSpeed.512000.windows=512000 -adafruit_qtpy_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qtpy_esp32s2.menu.DebugLevel.none=None -adafruit_qtpy_esp32s2.menu.DebugLevel.none.build.code_debug=0 -adafruit_qtpy_esp32s2.menu.DebugLevel.error=Error -adafruit_qtpy_esp32s2.menu.DebugLevel.error.build.code_debug=1 -adafruit_qtpy_esp32s2.menu.DebugLevel.warn=Warn -adafruit_qtpy_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qtpy_esp32s2.menu.DebugLevel.info=Info -adafruit_qtpy_esp32s2.menu.DebugLevel.info.build.code_debug=3 -adafruit_qtpy_esp32s2.menu.DebugLevel.debug=Debug -adafruit_qtpy_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qtpy_esp32s2.menu.DebugLevel.verbose=Verbose -adafruit_qtpy_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qtpy_esp32s2.menu.EraseFlash.none=Disabled -adafruit_qtpy_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qtpy_esp32s2.menu.EraseFlash.all=Enabled -adafruit_qtpy_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qtpy_esp32s2.menu.ZigbeeMode.default=Disabled -adafruit_qtpy_esp32s2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qtpy_esp32s2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qtpy_esp32s2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qtpy_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qtpy_esp32s2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit QT Py ESP32-S3 No PSRAM - -adafruit_qtpy_esp32s3_nopsram.name=Adafruit QT Py ESP32-S3 No PSRAM -adafruit_qtpy_esp32s3_nopsram.vid.0=0x239A -adafruit_qtpy_esp32s3_nopsram.pid.0=0x8119 -adafruit_qtpy_esp32s3_nopsram.vid.1=0x239A -adafruit_qtpy_esp32s3_nopsram.pid.1=0x0119 -adafruit_qtpy_esp32s3_nopsram.vid.2=0x239A -adafruit_qtpy_esp32s3_nopsram.pid.2=0x811A - -adafruit_qtpy_esp32s3_nopsram.bootloader.tool=esptool_py -adafruit_qtpy_esp32s3_nopsram.bootloader.tool.default=esptool_py - -adafruit_qtpy_esp32s3_nopsram.upload.tool=esptool_py -adafruit_qtpy_esp32s3_nopsram.upload.tool.default=esptool_py -adafruit_qtpy_esp32s3_nopsram.upload.tool.network=esp_ota - -adafruit_qtpy_esp32s3_nopsram.upload.maximum_size=1310720 -adafruit_qtpy_esp32s3_nopsram.upload.maximum_data_size=327680 -adafruit_qtpy_esp32s3_nopsram.upload.flags= -adafruit_qtpy_esp32s3_nopsram.upload.extra_flags= -adafruit_qtpy_esp32s3_nopsram.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s3_nopsram.upload.wait_for_upload_port=true - -adafruit_qtpy_esp32s3_nopsram.serial.disableDTR=false -adafruit_qtpy_esp32s3_nopsram.serial.disableRTS=false - -adafruit_qtpy_esp32s3_nopsram.build.tarch=xtensa -adafruit_qtpy_esp32s3_nopsram.build.bootloader_addr=0x0 -adafruit_qtpy_esp32s3_nopsram.build.target=esp32s3 -adafruit_qtpy_esp32s3_nopsram.build.mcu=esp32s3 -adafruit_qtpy_esp32s3_nopsram.build.core=esp32 -adafruit_qtpy_esp32s3_nopsram.build.variant=adafruit_qtpy_esp32s3_nopsram -adafruit_qtpy_esp32s3_nopsram.build.board=ADAFRUIT_QTPY_ESP32S3_NOPSRAM - -adafruit_qtpy_esp32s3_nopsram.build.usb_mode=0 -adafruit_qtpy_esp32s3_nopsram.build.cdc_on_boot=1 -adafruit_qtpy_esp32s3_nopsram.build.msc_on_boot=0 -adafruit_qtpy_esp32s3_nopsram.build.dfu_on_boot=0 -adafruit_qtpy_esp32s3_nopsram.build.f_cpu=240000000L -adafruit_qtpy_esp32s3_nopsram.build.flash_size=8MB -adafruit_qtpy_esp32s3_nopsram.build.flash_freq=80m -adafruit_qtpy_esp32s3_nopsram.build.flash_mode=dio -adafruit_qtpy_esp32s3_nopsram.build.boot=qio -adafruit_qtpy_esp32s3_nopsram.build.partitions=default -adafruit_qtpy_esp32s3_nopsram.build.defines= -adafruit_qtpy_esp32s3_nopsram.build.loop_core= -adafruit_qtpy_esp32s3_nopsram.build.event_core= -adafruit_qtpy_esp32s3_nopsram.build.flash_type=qio -adafruit_qtpy_esp32s3_nopsram.build.psram_type=qspi -adafruit_qtpy_esp32s3_nopsram.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_qtpy_esp32s3_nopsram.menu.LoopCore.1=Core 1 -adafruit_qtpy_esp32s3_nopsram.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_qtpy_esp32s3_nopsram.menu.LoopCore.0=Core 0 -adafruit_qtpy_esp32s3_nopsram.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_qtpy_esp32s3_nopsram.menu.EventsCore.1=Core 1 -adafruit_qtpy_esp32s3_nopsram.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_qtpy_esp32s3_nopsram.menu.EventsCore.0=Core 0 -adafruit_qtpy_esp32s3_nopsram.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_qtpy_esp32s3_nopsram.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_qtpy_esp32s3_nopsram.menu.USBMode.default.build.usb_mode=0 -adafruit_qtpy_esp32s3_nopsram.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_qtpy_esp32s3_nopsram.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_qtpy_esp32s3_nopsram.menu.CDCOnBoot.cdc=Enabled -adafruit_qtpy_esp32s3_nopsram.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_qtpy_esp32s3_nopsram.menu.CDCOnBoot.default=Disabled -adafruit_qtpy_esp32s3_nopsram.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_qtpy_esp32s3_nopsram.menu.MSCOnBoot.default=Disabled -adafruit_qtpy_esp32s3_nopsram.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_qtpy_esp32s3_nopsram.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_qtpy_esp32s3_nopsram.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_qtpy_esp32s3_nopsram.menu.DFUOnBoot.default=Disabled -adafruit_qtpy_esp32s3_nopsram.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_qtpy_esp32s3_nopsram.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_qtpy_esp32s3_nopsram.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_qtpy_esp32s3_nopsram.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FATFS) -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-8MB -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota=TinyUF2 8MB No OTA (4MB APP/3.7MB FATFS) -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-8MB-noota -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=4194304 -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_qtpy_esp32s3_nopsram.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.240=240MHz (WiFi) -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.160=160MHz (WiFi) -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.80=80MHz (WiFi) -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.40=40MHz -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.20=20MHz -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.10=10MHz -adafruit_qtpy_esp32s3_nopsram.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio=QIO 80MHz -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio.build.flash_mode=dio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio.build.boot=qio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio.build.boot_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio.build.flash_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio120=QIO 120MHz -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio120.build.boot=qio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.dio=DIO 80MHz -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.dio.build.flash_mode=dio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.dio.build.boot=dio -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.dio.build.boot_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.dio.build.flash_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.opi=OPI 80MHz -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.opi.build.flash_mode=dout -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.opi.build.boot=opi -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.opi.build.boot_freq=80m -adafruit_qtpy_esp32s3_nopsram.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_qtpy_esp32s3_nopsram.menu.FlashSize.8M=8MB (64Mb) -adafruit_qtpy_esp32s3_nopsram.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.921600=921600 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.115200=115200 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.256000.windows=256000 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.230400=230400 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.460800.linux=460800 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.460800.macosx=460800 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.512000.windows=512000 -adafruit_qtpy_esp32s3_nopsram.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.none=None -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.none.build.code_debug=0 -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.error=Error -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.error.build.code_debug=1 -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.warn=Warn -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.info=Info -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.info.build.code_debug=3 -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.debug=Debug -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.verbose=Verbose -adafruit_qtpy_esp32s3_nopsram.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.none=Disabled -adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.all=Enabled -adafruit_qtpy_esp32s3_nopsram.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.default=Disabled -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qtpy_esp32s3_nopsram.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit QT Py ESP32-S3 (4M Flash 2M PSRAM) - -adafruit_qtpy_esp32s3_n4r2.name=Adafruit QT Py ESP32-S3 (4M Flash 2M PSRAM) -adafruit_qtpy_esp32s3_n4r2.vid.0=0x239A -adafruit_qtpy_esp32s3_n4r2.pid.0=0x8143 -adafruit_qtpy_esp32s3_n4r2.vid.1=0x239A -adafruit_qtpy_esp32s3_n4r2.pid.1=0x0143 -adafruit_qtpy_esp32s3_n4r2.vid.2=0x239A -adafruit_qtpy_esp32s3_n4r2.pid.2=0x8144 - -adafruit_qtpy_esp32s3_n4r2.bootloader.tool=esptool_py -adafruit_qtpy_esp32s3_n4r2.bootloader.tool.default=esptool_py - -adafruit_qtpy_esp32s3_n4r2.upload.tool=esptool_py -adafruit_qtpy_esp32s3_n4r2.upload.tool.default=esptool_py -adafruit_qtpy_esp32s3_n4r2.upload.tool.network=esp_ota - -adafruit_qtpy_esp32s3_n4r2.upload.maximum_size=1310720 -adafruit_qtpy_esp32s3_n4r2.upload.maximum_data_size=327680 -adafruit_qtpy_esp32s3_n4r2.upload.flags= -adafruit_qtpy_esp32s3_n4r2.upload.extra_flags= -adafruit_qtpy_esp32s3_n4r2.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s3_n4r2.upload.wait_for_upload_port=true - -adafruit_qtpy_esp32s3_n4r2.serial.disableDTR=false -adafruit_qtpy_esp32s3_n4r2.serial.disableRTS=false - -adafruit_qtpy_esp32s3_n4r2.build.tarch=xtensa -adafruit_qtpy_esp32s3_n4r2.build.bootloader_addr=0x0 -adafruit_qtpy_esp32s3_n4r2.build.target=esp32s3 -adafruit_qtpy_esp32s3_n4r2.build.mcu=esp32s3 -adafruit_qtpy_esp32s3_n4r2.build.core=esp32 -adafruit_qtpy_esp32s3_n4r2.build.variant=adafruit_qtpy_esp32s3_n4r2 -adafruit_qtpy_esp32s3_n4r2.build.board=ADAFRUIT_QTPY_ESP32S3_N4R2 - -adafruit_qtpy_esp32s3_n4r2.build.usb_mode=0 -adafruit_qtpy_esp32s3_n4r2.build.cdc_on_boot=1 -adafruit_qtpy_esp32s3_n4r2.build.msc_on_boot=0 -adafruit_qtpy_esp32s3_n4r2.build.dfu_on_boot=0 -adafruit_qtpy_esp32s3_n4r2.build.f_cpu=240000000L -adafruit_qtpy_esp32s3_n4r2.build.flash_size=4MB -adafruit_qtpy_esp32s3_n4r2.build.flash_freq=80m -adafruit_qtpy_esp32s3_n4r2.build.flash_mode=dio -adafruit_qtpy_esp32s3_n4r2.build.boot=qio -adafruit_qtpy_esp32s3_n4r2.build.partitions=default -adafruit_qtpy_esp32s3_n4r2.build.defines= -adafruit_qtpy_esp32s3_n4r2.build.loop_core= -adafruit_qtpy_esp32s3_n4r2.build.event_core= -adafruit_qtpy_esp32s3_n4r2.build.flash_type=qio -adafruit_qtpy_esp32s3_n4r2.build.psram_type=qspi -adafruit_qtpy_esp32s3_n4r2.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_qtpy_esp32s3_n4r2.menu.LoopCore.1=Core 1 -adafruit_qtpy_esp32s3_n4r2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_qtpy_esp32s3_n4r2.menu.LoopCore.0=Core 0 -adafruit_qtpy_esp32s3_n4r2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_qtpy_esp32s3_n4r2.menu.EventsCore.1=Core 1 -adafruit_qtpy_esp32s3_n4r2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_qtpy_esp32s3_n4r2.menu.EventsCore.0=Core 0 -adafruit_qtpy_esp32s3_n4r2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_qtpy_esp32s3_n4r2.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_qtpy_esp32s3_n4r2.menu.USBMode.default.build.usb_mode=0 -adafruit_qtpy_esp32s3_n4r2.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_qtpy_esp32s3_n4r2.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_qtpy_esp32s3_n4r2.menu.CDCOnBoot.cdc=Enabled -adafruit_qtpy_esp32s3_n4r2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_qtpy_esp32s3_n4r2.menu.CDCOnBoot.default=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_qtpy_esp32s3_n4r2.menu.MSCOnBoot.default=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_qtpy_esp32s3_n4r2.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_qtpy_esp32s3_n4r2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_qtpy_esp32s3_n4r2.menu.DFUOnBoot.default=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_qtpy_esp32s3_n4r2.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_qtpy_esp32s3_n4r2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_qtpy_esp32s3_n4r2.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.enabled=QSPI PSRAM -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.disabled=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.disabled.build.defines= -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.opi=OPI PSRAM -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_qtpy_esp32s3_n4r2.menu.PSRAM.opi.build.psram_type=opi - -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.default.build.partitions=default -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_qtpy_esp32s3_n4r2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.240=240MHz (WiFi) -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.160=160MHz (WiFi) -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.80=80MHz (WiFi) -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.40=40MHz -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.20=20MHz -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.10=10MHz -adafruit_qtpy_esp32s3_n4r2.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio=QIO 80MHz -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio.build.flash_mode=dio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio.build.boot=qio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio.build.boot_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio.build.flash_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio120=QIO 120MHz -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio120.build.boot=qio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.dio=DIO 80MHz -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.dio.build.flash_mode=dio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.dio.build.boot=dio -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.dio.build.boot_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.dio.build.flash_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.opi=OPI 80MHz -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.opi.build.flash_mode=dout -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.opi.build.boot=opi -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.opi.build.boot_freq=80m -adafruit_qtpy_esp32s3_n4r2.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_qtpy_esp32s3_n4r2.menu.FlashSize.4M=4MB (32Mb) -adafruit_qtpy_esp32s3_n4r2.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.921600=921600 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.115200=115200 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.256000.windows=256000 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.230400=230400 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.460800.linux=460800 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.460800.macosx=460800 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.512000.windows=512000 -adafruit_qtpy_esp32s3_n4r2.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.none=None -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.none.build.code_debug=0 -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.error=Error -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.error.build.code_debug=1 -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.warn=Warn -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.info=Info -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.info.build.code_debug=3 -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.debug=Debug -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.verbose=Verbose -adafruit_qtpy_esp32s3_n4r2.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qtpy_esp32s3_n4r2.menu.EraseFlash.none=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qtpy_esp32s3_n4r2.menu.EraseFlash.all=Enabled -adafruit_qtpy_esp32s3_n4r2.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.default=Disabled -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qtpy_esp32s3_n4r2.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit ItsyBitsy ESP32 - -adafruit_itsybitsy_esp32.name=Adafruit ItsyBitsy ESP32 - -adafruit_itsybitsy_esp32.bootloader.tool=esptool_py -adafruit_itsybitsy_esp32.bootloader.tool.default=esptool_py - -adafruit_itsybitsy_esp32.upload.tool=esptool_py -adafruit_itsybitsy_esp32.upload.tool.default=esptool_py -adafruit_itsybitsy_esp32.upload.tool.network=esp_ota - -adafruit_itsybitsy_esp32.upload.maximum_size=1310720 -adafruit_itsybitsy_esp32.upload.maximum_data_size=327680 -adafruit_itsybitsy_esp32.upload.flags= -adafruit_itsybitsy_esp32.upload.extra_flags= - -adafruit_itsybitsy_esp32.serial.disableDTR=true -adafruit_itsybitsy_esp32.serial.disableRTS=true - -adafruit_itsybitsy_esp32.build.tarch=xtensa -adafruit_itsybitsy_esp32.build.bootloader_addr=0x1000 -adafruit_itsybitsy_esp32.build.target=esp32 -adafruit_itsybitsy_esp32.build.mcu=esp32 -adafruit_itsybitsy_esp32.build.core=esp32 -adafruit_itsybitsy_esp32.build.variant=adafruit_itsybitsy_esp32 -adafruit_itsybitsy_esp32.build.board=ADAFRUIT_ITSYBITSY_ESP32 - -adafruit_itsybitsy_esp32.build.f_cpu=240000000L -adafruit_itsybitsy_esp32.build.flash_size=8MB -adafruit_itsybitsy_esp32.build.flash_freq=80m -adafruit_itsybitsy_esp32.build.flash_mode=dio -adafruit_itsybitsy_esp32.build.boot=dio -adafruit_itsybitsy_esp32.build.partitions=default -adafruit_itsybitsy_esp32.build.defines= -adafruit_itsybitsy_esp32.build.loop_core= -adafruit_itsybitsy_esp32.build.event_core= - -adafruit_itsybitsy_esp32.menu.LoopCore.1=Core 1 -adafruit_itsybitsy_esp32.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_itsybitsy_esp32.menu.LoopCore.0=Core 0 -adafruit_itsybitsy_esp32.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_itsybitsy_esp32.menu.EventsCore.1=Core 1 -adafruit_itsybitsy_esp32.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_itsybitsy_esp32.menu.EventsCore.0=Core 0 -adafruit_itsybitsy_esp32.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_itsybitsy_esp32.menu.PSRAM.enabled=Enabled -adafruit_itsybitsy_esp32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -adafruit_itsybitsy_esp32.menu.PSRAM.disabled=Disabled -adafruit_itsybitsy_esp32.menu.PSRAM.disabled.build.defines= - -adafruit_itsybitsy_esp32.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_itsybitsy_esp32.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_itsybitsy_esp32.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_itsybitsy_esp32.menu.CPUFreq.240=240MHz (WiFi/BT) -adafruit_itsybitsy_esp32.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_itsybitsy_esp32.menu.CPUFreq.160=160MHz (WiFi/BT) -adafruit_itsybitsy_esp32.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_itsybitsy_esp32.menu.CPUFreq.80=80MHz (WiFi/BT) -adafruit_itsybitsy_esp32.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_itsybitsy_esp32.menu.CPUFreq.40=40MHz -adafruit_itsybitsy_esp32.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_itsybitsy_esp32.menu.CPUFreq.20=20MHz -adafruit_itsybitsy_esp32.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_itsybitsy_esp32.menu.CPUFreq.10=10MHz -adafruit_itsybitsy_esp32.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_itsybitsy_esp32.menu.FlashFreq.80=80MHz -adafruit_itsybitsy_esp32.menu.FlashFreq.80.build.flash_freq=80m -adafruit_itsybitsy_esp32.menu.FlashFreq.40=40MHz -adafruit_itsybitsy_esp32.menu.FlashFreq.40.build.flash_freq=40m - -adafruit_itsybitsy_esp32.menu.FlashSize.8M=8MB (64Mb) -adafruit_itsybitsy_esp32.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_itsybitsy_esp32.menu.UploadSpeed.921600=921600 -adafruit_itsybitsy_esp32.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_itsybitsy_esp32.menu.UploadSpeed.115200=115200 -adafruit_itsybitsy_esp32.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_itsybitsy_esp32.menu.UploadSpeed.256000.windows=256000 -adafruit_itsybitsy_esp32.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_itsybitsy_esp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_itsybitsy_esp32.menu.UploadSpeed.230400=230400 -adafruit_itsybitsy_esp32.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_itsybitsy_esp32.menu.UploadSpeed.460800.linux=460800 -adafruit_itsybitsy_esp32.menu.UploadSpeed.460800.macosx=460800 -adafruit_itsybitsy_esp32.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_itsybitsy_esp32.menu.UploadSpeed.512000.windows=512000 -adafruit_itsybitsy_esp32.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_itsybitsy_esp32.menu.DebugLevel.none=None -adafruit_itsybitsy_esp32.menu.DebugLevel.none.build.code_debug=0 -adafruit_itsybitsy_esp32.menu.DebugLevel.error=Error -adafruit_itsybitsy_esp32.menu.DebugLevel.error.build.code_debug=1 -adafruit_itsybitsy_esp32.menu.DebugLevel.warn=Warn -adafruit_itsybitsy_esp32.menu.DebugLevel.warn.build.code_debug=2 -adafruit_itsybitsy_esp32.menu.DebugLevel.info=Info -adafruit_itsybitsy_esp32.menu.DebugLevel.info.build.code_debug=3 -adafruit_itsybitsy_esp32.menu.DebugLevel.debug=Debug -adafruit_itsybitsy_esp32.menu.DebugLevel.debug.build.code_debug=4 -adafruit_itsybitsy_esp32.menu.DebugLevel.verbose=Verbose -adafruit_itsybitsy_esp32.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_itsybitsy_esp32.menu.EraseFlash.none=Disabled -adafruit_itsybitsy_esp32.menu.EraseFlash.none.upload.erase_cmd= -adafruit_itsybitsy_esp32.menu.EraseFlash.all=Enabled -adafruit_itsybitsy_esp32.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_itsybitsy_esp32.menu.ZigbeeMode.default=Disabled -adafruit_itsybitsy_esp32.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_itsybitsy_esp32.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_itsybitsy_esp32.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_itsybitsy_esp32.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_itsybitsy_esp32.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit MatrixPortal ESP32-S3 - -adafruit_matrixportal_esp32s3.name=Adafruit MatrixPortal ESP32-S3 -adafruit_matrixportal_esp32s3.vid.0=0x239A -adafruit_matrixportal_esp32s3.pid.0=0x8125 -adafruit_matrixportal_esp32s3.vid.1=0x239A -adafruit_matrixportal_esp32s3.pid.1=0x0125 -adafruit_matrixportal_esp32s3.vid.2=0x239A -adafruit_matrixportal_esp32s3.pid.2=0x8126 - -adafruit_matrixportal_esp32s3.bootloader.tool=esptool_py -adafruit_matrixportal_esp32s3.bootloader.tool.default=esptool_py - -adafruit_matrixportal_esp32s3.upload.tool=esptool_py -adafruit_matrixportal_esp32s3.upload.tool.default=esptool_py -adafruit_matrixportal_esp32s3.upload.tool.network=esp_ota - -adafruit_matrixportal_esp32s3.upload.maximum_size=1310720 -adafruit_matrixportal_esp32s3.upload.maximum_data_size=327680 -adafruit_matrixportal_esp32s3.upload.flags= -adafruit_matrixportal_esp32s3.upload.extra_flags= -adafruit_matrixportal_esp32s3.upload.use_1200bps_touch=true -adafruit_matrixportal_esp32s3.upload.wait_for_upload_port=true - -adafruit_matrixportal_esp32s3.serial.disableDTR=false -adafruit_matrixportal_esp32s3.serial.disableRTS=false - -adafruit_matrixportal_esp32s3.build.tarch=xtensa -adafruit_matrixportal_esp32s3.build.bootloader_addr=0x0 -adafruit_matrixportal_esp32s3.build.target=esp32s3 -adafruit_matrixportal_esp32s3.build.mcu=esp32s3 -adafruit_matrixportal_esp32s3.build.core=esp32 -adafruit_matrixportal_esp32s3.build.variant=adafruit_matrixportal_esp32s3 -adafruit_matrixportal_esp32s3.build.board=ADAFRUIT_MATRIXPORTAL_ESP32S3 - -adafruit_matrixportal_esp32s3.build.usb_mode=0 -adafruit_matrixportal_esp32s3.build.cdc_on_boot=1 -adafruit_matrixportal_esp32s3.build.msc_on_boot=0 -adafruit_matrixportal_esp32s3.build.dfu_on_boot=0 -adafruit_matrixportal_esp32s3.build.f_cpu=240000000L -adafruit_matrixportal_esp32s3.build.flash_size=8MB -adafruit_matrixportal_esp32s3.build.flash_freq=80m -adafruit_matrixportal_esp32s3.build.flash_mode=dio -adafruit_matrixportal_esp32s3.build.boot=qio -adafruit_matrixportal_esp32s3.build.partitions=default -adafruit_matrixportal_esp32s3.build.defines= -adafruit_matrixportal_esp32s3.build.loop_core= -adafruit_matrixportal_esp32s3.build.event_core= -adafruit_matrixportal_esp32s3.build.flash_type=qio -adafruit_matrixportal_esp32s3.build.psram_type=qspi -adafruit_matrixportal_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_matrixportal_esp32s3.menu.LoopCore.1=Core 1 -adafruit_matrixportal_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_matrixportal_esp32s3.menu.LoopCore.0=Core 0 -adafruit_matrixportal_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_matrixportal_esp32s3.menu.EventsCore.1=Core 1 -adafruit_matrixportal_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_matrixportal_esp32s3.menu.EventsCore.0=Core 0 -adafruit_matrixportal_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_matrixportal_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_matrixportal_esp32s3.menu.USBMode.default.build.usb_mode=0 -adafruit_matrixportal_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_matrixportal_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_matrixportal_esp32s3.menu.CDCOnBoot.cdc=Enabled -adafruit_matrixportal_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_matrixportal_esp32s3.menu.CDCOnBoot.default=Disabled -adafruit_matrixportal_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_matrixportal_esp32s3.menu.MSCOnBoot.default=Disabled -adafruit_matrixportal_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_matrixportal_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_matrixportal_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_matrixportal_esp32s3.menu.DFUOnBoot.default=Disabled -adafruit_matrixportal_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_matrixportal_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_matrixportal_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_matrixportal_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_matrixportal_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_matrixportal_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_matrixportal_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_matrixportal_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_matrixportal_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_matrixportal_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -adafruit_matrixportal_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_matrixportal_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_matrixportal_esp32s3.menu.PSRAM.disabled=Disabled -adafruit_matrixportal_esp32s3.menu.PSRAM.disabled.build.defines= -adafruit_matrixportal_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_matrixportal_esp32s3.menu.PSRAM.opi=OPI PSRAM -adafruit_matrixportal_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_matrixportal_esp32s3.menu.PSRAM.opi.build.psram_type=opi - -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FATFS) -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-8MB -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2_noota=TinyUF2 8MB No OTA (4MB APP/3.7MB FATFS) -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-8MB-noota -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=4194304 -adafruit_matrixportal_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_matrixportal_esp32s3.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -adafruit_matrixportal_esp32s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -adafruit_matrixportal_esp32s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -adafruit_matrixportal_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -adafruit_matrixportal_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_matrixportal_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -adafruit_matrixportal_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_matrixportal_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -adafruit_matrixportal_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_matrixportal_esp32s3.menu.CPUFreq.40=40MHz -adafruit_matrixportal_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_matrixportal_esp32s3.menu.CPUFreq.20=20MHz -adafruit_matrixportal_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_matrixportal_esp32s3.menu.CPUFreq.10=10MHz -adafruit_matrixportal_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_matrixportal_esp32s3.menu.FlashMode.qio=QIO 80MHz -adafruit_matrixportal_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -adafruit_matrixportal_esp32s3.menu.FlashMode.qio.build.boot=qio -adafruit_matrixportal_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.qio120=QIO 120MHz -adafruit_matrixportal_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_matrixportal_esp32s3.menu.FlashMode.qio120.build.boot=qio -adafruit_matrixportal_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_matrixportal_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.dio=DIO 80MHz -adafruit_matrixportal_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -adafruit_matrixportal_esp32s3.menu.FlashMode.dio.build.boot=dio -adafruit_matrixportal_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.opi=OPI 80MHz -adafruit_matrixportal_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -adafruit_matrixportal_esp32s3.menu.FlashMode.opi.build.boot=opi -adafruit_matrixportal_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -adafruit_matrixportal_esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_matrixportal_esp32s3.menu.FlashSize.8M=8MB (64Mb) -adafruit_matrixportal_esp32s3.menu.FlashSize.8M.build.flash_size=8MB - -adafruit_matrixportal_esp32s3.menu.UploadSpeed.921600=921600 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.115200=115200 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.256000.windows=256000 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.230400=230400 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.460800.linux=460800 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.460800.macosx=460800 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.512000.windows=512000 -adafruit_matrixportal_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_matrixportal_esp32s3.menu.DebugLevel.none=None -adafruit_matrixportal_esp32s3.menu.DebugLevel.none.build.code_debug=0 -adafruit_matrixportal_esp32s3.menu.DebugLevel.error=Error -adafruit_matrixportal_esp32s3.menu.DebugLevel.error.build.code_debug=1 -adafruit_matrixportal_esp32s3.menu.DebugLevel.warn=Warn -adafruit_matrixportal_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -adafruit_matrixportal_esp32s3.menu.DebugLevel.info=Info -adafruit_matrixportal_esp32s3.menu.DebugLevel.info.build.code_debug=3 -adafruit_matrixportal_esp32s3.menu.DebugLevel.debug=Debug -adafruit_matrixportal_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -adafruit_matrixportal_esp32s3.menu.DebugLevel.verbose=Verbose -adafruit_matrixportal_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_matrixportal_esp32s3.menu.EraseFlash.none=Disabled -adafruit_matrixportal_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -adafruit_matrixportal_esp32s3.menu.EraseFlash.all=Enabled -adafruit_matrixportal_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.default=Disabled -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_matrixportal_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit pyCamera S3 - -adafruit_camera_esp32s3.name=Adafruit pyCamera S3 -adafruit_camera_esp32s3.vid.0=0x239A -adafruit_camera_esp32s3.pid.0=0x0117 -adafruit_camera_esp32s3.vid.1=0x239A -adafruit_camera_esp32s3.pid.1=0x8117 -adafruit_camera_esp32s3.vid.2=0x239A -adafruit_camera_esp32s3.pid.2=0x8118 - -adafruit_camera_esp32s3.bootloader.tool=esptool_py -adafruit_camera_esp32s3.bootloader.tool.default=esptool_py - -adafruit_camera_esp32s3.upload.tool=esptool_py -adafruit_camera_esp32s3.upload.tool.default=esptool_py -adafruit_camera_esp32s3.upload.tool.network=esp_ota - -adafruit_camera_esp32s3.upload.maximum_size=1310720 -adafruit_camera_esp32s3.upload.maximum_data_size=327680 -adafruit_camera_esp32s3.upload.flags= -adafruit_camera_esp32s3.upload.extra_flags= -adafruit_camera_esp32s3.upload.use_1200bps_touch=true -adafruit_camera_esp32s3.upload.wait_for_upload_port=true - -adafruit_camera_esp32s3.serial.disableDTR=false -adafruit_camera_esp32s3.serial.disableRTS=false - -adafruit_camera_esp32s3.build.tarch=xtensa -adafruit_camera_esp32s3.build.bootloader_addr=0x0 -adafruit_camera_esp32s3.build.target=esp32s3 -adafruit_camera_esp32s3.build.mcu=esp32s3 -adafruit_camera_esp32s3.build.core=esp32 -adafruit_camera_esp32s3.build.variant=adafruit_camera_esp32s3 -adafruit_camera_esp32s3.build.board=ADAFRUIT_CAMERA_ESP32S3 - -adafruit_camera_esp32s3.build.usb_mode=0 -adafruit_camera_esp32s3.build.cdc_on_boot=1 -adafruit_camera_esp32s3.build.msc_on_boot=0 -adafruit_camera_esp32s3.build.dfu_on_boot=0 -adafruit_camera_esp32s3.build.f_cpu=240000000L -adafruit_camera_esp32s3.build.flash_size=4MB -adafruit_camera_esp32s3.build.flash_freq=80m -adafruit_camera_esp32s3.build.flash_mode=dio -adafruit_camera_esp32s3.build.boot=qio -adafruit_camera_esp32s3.build.partitions=default -adafruit_camera_esp32s3.build.defines= -adafruit_camera_esp32s3.build.loop_core= -adafruit_camera_esp32s3.build.event_core= -adafruit_camera_esp32s3.build.flash_type=qio -adafruit_camera_esp32s3.build.psram_type=qspi -adafruit_camera_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_camera_esp32s3.menu.LoopCore.1=Core 1 -adafruit_camera_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_camera_esp32s3.menu.LoopCore.0=Core 0 -adafruit_camera_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_camera_esp32s3.menu.EventsCore.1=Core 1 -adafruit_camera_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_camera_esp32s3.menu.EventsCore.0=Core 0 -adafruit_camera_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_camera_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_camera_esp32s3.menu.USBMode.default.build.usb_mode=0 -adafruit_camera_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_camera_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_camera_esp32s3.menu.CDCOnBoot.cdc=Enabled -adafruit_camera_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_camera_esp32s3.menu.CDCOnBoot.default=Disabled -adafruit_camera_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_camera_esp32s3.menu.MSCOnBoot.default=Disabled -adafruit_camera_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_camera_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_camera_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_camera_esp32s3.menu.DFUOnBoot.default=Disabled -adafruit_camera_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_camera_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_camera_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_camera_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_camera_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_camera_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_camera_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_camera_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_camera_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_camera_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -adafruit_camera_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -adafruit_camera_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -adafruit_camera_esp32s3.menu.PSRAM.disabled=Disabled -adafruit_camera_esp32s3.menu.PSRAM.disabled.build.defines= -adafruit_camera_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -adafruit_camera_esp32s3.menu.PSRAM.opi=OPI PSRAM -adafruit_camera_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_camera_esp32s3.menu.PSRAM.opi.build.psram_type=opi - -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2_noota=TinyUF2 4MB No OTA (2.7MB APP/960KB FATFS) -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-4MB-noota -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=2883584 -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-4MB -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -adafruit_camera_esp32s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_camera_esp32s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.default.build.partitions=default -adafruit_camera_esp32s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -adafruit_camera_esp32s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -adafruit_camera_esp32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.minimal.build.partitions=minimal -adafruit_camera_esp32s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -adafruit_camera_esp32s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -adafruit_camera_esp32s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -adafruit_camera_esp32s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -adafruit_camera_esp32s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -adafruit_camera_esp32s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -adafruit_camera_esp32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -adafruit_camera_esp32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -adafruit_camera_esp32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -adafruit_camera_esp32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -adafruit_camera_esp32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -adafruit_camera_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -adafruit_camera_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_camera_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -adafruit_camera_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_camera_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -adafruit_camera_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_camera_esp32s3.menu.CPUFreq.40=40MHz -adafruit_camera_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_camera_esp32s3.menu.CPUFreq.20=20MHz -adafruit_camera_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_camera_esp32s3.menu.CPUFreq.10=10MHz -adafruit_camera_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_camera_esp32s3.menu.FlashMode.qio=QIO 80MHz -adafruit_camera_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -adafruit_camera_esp32s3.menu.FlashMode.qio.build.boot=qio -adafruit_camera_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.qio120=QIO 120MHz -adafruit_camera_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_camera_esp32s3.menu.FlashMode.qio120.build.boot=qio -adafruit_camera_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_camera_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.dio=DIO 80MHz -adafruit_camera_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -adafruit_camera_esp32s3.menu.FlashMode.dio.build.boot=dio -adafruit_camera_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.opi=OPI 80MHz -adafruit_camera_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -adafruit_camera_esp32s3.menu.FlashMode.opi.build.boot=opi -adafruit_camera_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -adafruit_camera_esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_camera_esp32s3.menu.FlashSize.4M=4MB (32Mb) -adafruit_camera_esp32s3.menu.FlashSize.4M.build.flash_size=4MB - -adafruit_camera_esp32s3.menu.UploadSpeed.921600=921600 -adafruit_camera_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_camera_esp32s3.menu.UploadSpeed.115200=115200 -adafruit_camera_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_camera_esp32s3.menu.UploadSpeed.256000.windows=256000 -adafruit_camera_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_camera_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_camera_esp32s3.menu.UploadSpeed.230400=230400 -adafruit_camera_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_camera_esp32s3.menu.UploadSpeed.460800.linux=460800 -adafruit_camera_esp32s3.menu.UploadSpeed.460800.macosx=460800 -adafruit_camera_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_camera_esp32s3.menu.UploadSpeed.512000.windows=512000 -adafruit_camera_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_camera_esp32s3.menu.DebugLevel.none=None -adafruit_camera_esp32s3.menu.DebugLevel.none.build.code_debug=0 -adafruit_camera_esp32s3.menu.DebugLevel.error=Error -adafruit_camera_esp32s3.menu.DebugLevel.error.build.code_debug=1 -adafruit_camera_esp32s3.menu.DebugLevel.warn=Warn -adafruit_camera_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -adafruit_camera_esp32s3.menu.DebugLevel.info=Info -adafruit_camera_esp32s3.menu.DebugLevel.info.build.code_debug=3 -adafruit_camera_esp32s3.menu.DebugLevel.debug=Debug -adafruit_camera_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -adafruit_camera_esp32s3.menu.DebugLevel.verbose=Verbose -adafruit_camera_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_camera_esp32s3.menu.EraseFlash.none=Disabled -adafruit_camera_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -adafruit_camera_esp32s3.menu.EraseFlash.all=Enabled -adafruit_camera_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_camera_esp32s3.menu.ZigbeeMode.default=Disabled -adafruit_camera_esp32s3.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_camera_esp32s3.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_camera_esp32s3.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_camera_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_camera_esp32s3.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## -# Adafruit Qualia ESP32-S3 RGB666 - -adafruit_qualia_s3_rgb666.name=Adafruit Qualia ESP32-S3 RGB666 -adafruit_qualia_s3_rgb666.vid.0=0x239A -adafruit_qualia_s3_rgb666.pid.0=0x8147 -adafruit_qualia_s3_rgb666.vid.1=0x239A -adafruit_qualia_s3_rgb666.pid.1=0x0147 -adafruit_qualia_s3_rgb666.vid.2=0x239A -adafruit_qualia_s3_rgb666.pid.2=0x8148 - -adafruit_qualia_s3_rgb666.bootloader.tool=esptool_py -adafruit_qualia_s3_rgb666.bootloader.tool.default=esptool_py - -adafruit_qualia_s3_rgb666.upload.tool=esptool_py -adafruit_qualia_s3_rgb666.upload.tool.default=esptool_py -adafruit_qualia_s3_rgb666.upload.tool.network=esp_ota - -adafruit_qualia_s3_rgb666.upload.maximum_size=1310720 -adafruit_qualia_s3_rgb666.upload.maximum_data_size=327680 -adafruit_qualia_s3_rgb666.upload.flags= -adafruit_qualia_s3_rgb666.upload.extra_flags= -adafruit_qualia_s3_rgb666.upload.use_1200bps_touch=true -adafruit_qualia_s3_rgb666.upload.wait_for_upload_port=true - -adafruit_qualia_s3_rgb666.serial.disableDTR=false -adafruit_qualia_s3_rgb666.serial.disableRTS=false - -adafruit_qualia_s3_rgb666.build.tarch=xtensa -adafruit_qualia_s3_rgb666.build.bootloader_addr=0x0 -adafruit_qualia_s3_rgb666.build.target=esp32s3 -adafruit_qualia_s3_rgb666.build.mcu=esp32s3 -adafruit_qualia_s3_rgb666.build.core=esp32 -adafruit_qualia_s3_rgb666.build.variant=adafruit_qualia_s3_rgb666 -adafruit_qualia_s3_rgb666.build.board=QUALIA_S3_RGB666 - -adafruit_qualia_s3_rgb666.build.usb_mode=0 -adafruit_qualia_s3_rgb666.build.cdc_on_boot=1 -adafruit_qualia_s3_rgb666.build.msc_on_boot=0 -adafruit_qualia_s3_rgb666.build.dfu_on_boot=0 -adafruit_qualia_s3_rgb666.build.f_cpu=240000000L -adafruit_qualia_s3_rgb666.build.flash_size=16MB -adafruit_qualia_s3_rgb666.build.flash_freq=80m -adafruit_qualia_s3_rgb666.build.flash_mode=dio -adafruit_qualia_s3_rgb666.build.boot=qio -adafruit_qualia_s3_rgb666.build.partitions=default -adafruit_qualia_s3_rgb666.build.defines= -adafruit_qualia_s3_rgb666.build.loop_core= -adafruit_qualia_s3_rgb666.build.event_core= -adafruit_qualia_s3_rgb666.build.flash_type=qio -adafruit_qualia_s3_rgb666.build.psram_type=opi -adafruit_qualia_s3_rgb666.build.memory_type={build.flash_type}_{build.psram_type} - -adafruit_qualia_s3_rgb666.menu.LoopCore.1=Core 1 -adafruit_qualia_s3_rgb666.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -adafruit_qualia_s3_rgb666.menu.LoopCore.0=Core 0 -adafruit_qualia_s3_rgb666.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -adafruit_qualia_s3_rgb666.menu.EventsCore.1=Core 1 -adafruit_qualia_s3_rgb666.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -adafruit_qualia_s3_rgb666.menu.EventsCore.0=Core 0 -adafruit_qualia_s3_rgb666.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -adafruit_qualia_s3_rgb666.menu.USBMode.default=USB-OTG (TinyUSB) -adafruit_qualia_s3_rgb666.menu.USBMode.default.build.usb_mode=0 -adafruit_qualia_s3_rgb666.menu.USBMode.hwcdc=Hardware CDC and JTAG -adafruit_qualia_s3_rgb666.menu.USBMode.hwcdc.build.usb_mode=1 - -adafruit_qualia_s3_rgb666.menu.CDCOnBoot.cdc=Enabled -adafruit_qualia_s3_rgb666.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -adafruit_qualia_s3_rgb666.menu.CDCOnBoot.default=Disabled -adafruit_qualia_s3_rgb666.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -adafruit_qualia_s3_rgb666.menu.MSCOnBoot.default=Disabled -adafruit_qualia_s3_rgb666.menu.MSCOnBoot.default.build.msc_on_boot=0 -adafruit_qualia_s3_rgb666.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -adafruit_qualia_s3_rgb666.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -adafruit_qualia_s3_rgb666.menu.DFUOnBoot.default=Disabled -adafruit_qualia_s3_rgb666.menu.DFUOnBoot.default.build.dfu_on_boot=0 -adafruit_qualia_s3_rgb666.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -adafruit_qualia_s3_rgb666.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -adafruit_qualia_s3_rgb666.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -adafruit_qualia_s3_rgb666.menu.UploadMode.cdc.upload.use_1200bps_touch=true -adafruit_qualia_s3_rgb666.menu.UploadMode.cdc.upload.wait_for_upload_port=true -adafruit_qualia_s3_rgb666.menu.UploadMode.default=UART0 / Hardware CDC -adafruit_qualia_s3_rgb666.menu.UploadMode.default.upload.use_1200bps_touch=false -adafruit_qualia_s3_rgb666.menu.UploadMode.default.upload.wait_for_upload_port=false - -adafruit_qualia_s3_rgb666.menu.PSRAM.opi=OPI PSRAM -adafruit_qualia_s3_rgb666.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -adafruit_qualia_s3_rgb666.menu.PSRAM.opi.build.psram_type=opi -adafruit_qualia_s3_rgb666.menu.PSRAM.disabled=Disabled -adafruit_qualia_s3_rgb666.menu.PSRAM.disabled.build.defines= -adafruit_qualia_s3_rgb666.menu.PSRAM.disabled.build.psram_type=opi - -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2=TinyUF2 16MB (2MB APP/11.6MB FATFS) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2.build.partitions=tinyuf2-partitions-16MB -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2_noota=TinyUF2 16MB No OTA(4MB APP/11.6MB FATFS) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2_noota.build.custom_bootloader=bootloader-tinyuf2 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2_noota.build.partitions=tinyuf2-partitions-16MB-noota -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2_noota.upload.maximum_size=4194304 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.tinyuf2_noota.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -adafruit_qualia_s3_rgb666.menu.PartitionScheme.default_16MB=Default (6.25MB APP/3.43MB SPIFFS) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.default_16MB.build.partitions=default_16MB -adafruit_qualia_s3_rgb666.menu.PartitionScheme.default_16MB.upload.maximum_size=6553600 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.large_spiffs=Large SPIFFS (4.5MB APP/6.93MB SPIFFS) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -adafruit_qualia_s3_rgb666.menu.PartitionScheme.large_spiffs.upload.maximum_size=4718592 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -adafruit_qualia_s3_rgb666.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -adafruit_qualia_s3_rgb666.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -adafruit_qualia_s3_rgb666.menu.PartitionScheme.fatflash.build.partitions=ffat -adafruit_qualia_s3_rgb666.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 - -adafruit_qualia_s3_rgb666.menu.CPUFreq.240=240MHz (WiFi) -adafruit_qualia_s3_rgb666.menu.CPUFreq.240.build.f_cpu=240000000L -adafruit_qualia_s3_rgb666.menu.CPUFreq.160=160MHz (WiFi) -adafruit_qualia_s3_rgb666.menu.CPUFreq.160.build.f_cpu=160000000L -adafruit_qualia_s3_rgb666.menu.CPUFreq.80=80MHz (WiFi) -adafruit_qualia_s3_rgb666.menu.CPUFreq.80.build.f_cpu=80000000L -adafruit_qualia_s3_rgb666.menu.CPUFreq.40=40MHz -adafruit_qualia_s3_rgb666.menu.CPUFreq.40.build.f_cpu=40000000L -adafruit_qualia_s3_rgb666.menu.CPUFreq.20=20MHz -adafruit_qualia_s3_rgb666.menu.CPUFreq.20.build.f_cpu=20000000L -adafruit_qualia_s3_rgb666.menu.CPUFreq.10=10MHz -adafruit_qualia_s3_rgb666.menu.CPUFreq.10.build.f_cpu=10000000L - -adafruit_qualia_s3_rgb666.menu.FlashMode.qio=QIO 80MHz -adafruit_qualia_s3_rgb666.menu.FlashMode.qio.build.flash_mode=dio -adafruit_qualia_s3_rgb666.menu.FlashMode.qio.build.boot=qio -adafruit_qualia_s3_rgb666.menu.FlashMode.qio.build.boot_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.qio.build.flash_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.qio120=QIO 120MHz -adafruit_qualia_s3_rgb666.menu.FlashMode.qio120.build.flash_mode=dio -adafruit_qualia_s3_rgb666.menu.FlashMode.qio120.build.boot=qio -adafruit_qualia_s3_rgb666.menu.FlashMode.qio120.build.boot_freq=120m -adafruit_qualia_s3_rgb666.menu.FlashMode.qio120.build.flash_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.dio=DIO 80MHz -adafruit_qualia_s3_rgb666.menu.FlashMode.dio.build.flash_mode=dio -adafruit_qualia_s3_rgb666.menu.FlashMode.dio.build.boot=dio -adafruit_qualia_s3_rgb666.menu.FlashMode.dio.build.boot_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.dio.build.flash_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.opi=OPI 80MHz -adafruit_qualia_s3_rgb666.menu.FlashMode.opi.build.flash_mode=dout -adafruit_qualia_s3_rgb666.menu.FlashMode.opi.build.boot=opi -adafruit_qualia_s3_rgb666.menu.FlashMode.opi.build.boot_freq=80m -adafruit_qualia_s3_rgb666.menu.FlashMode.opi.build.flash_freq=80m - -adafruit_qualia_s3_rgb666.menu.FlashSize.16M=16MB (128Mb) -adafruit_qualia_s3_rgb666.menu.FlashSize.16M.build.flash_size=16MB - -adafruit_qualia_s3_rgb666.menu.UploadSpeed.921600=921600 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.921600.upload.speed=921600 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.115200=115200 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.115200.upload.speed=115200 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.256000.windows=256000 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.256000.upload.speed=256000 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.230400.windows.upload.speed=256000 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.230400=230400 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.230400.upload.speed=230400 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.460800.linux=460800 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.460800.macosx=460800 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.460800.upload.speed=460800 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.512000.windows=512000 -adafruit_qualia_s3_rgb666.menu.UploadSpeed.512000.upload.speed=512000 - -adafruit_qualia_s3_rgb666.menu.DebugLevel.none=None -adafruit_qualia_s3_rgb666.menu.DebugLevel.none.build.code_debug=0 -adafruit_qualia_s3_rgb666.menu.DebugLevel.error=Error -adafruit_qualia_s3_rgb666.menu.DebugLevel.error.build.code_debug=1 -adafruit_qualia_s3_rgb666.menu.DebugLevel.warn=Warn -adafruit_qualia_s3_rgb666.menu.DebugLevel.warn.build.code_debug=2 -adafruit_qualia_s3_rgb666.menu.DebugLevel.info=Info -adafruit_qualia_s3_rgb666.menu.DebugLevel.info.build.code_debug=3 -adafruit_qualia_s3_rgb666.menu.DebugLevel.debug=Debug -adafruit_qualia_s3_rgb666.menu.DebugLevel.debug.build.code_debug=4 -adafruit_qualia_s3_rgb666.menu.DebugLevel.verbose=Verbose -adafruit_qualia_s3_rgb666.menu.DebugLevel.verbose.build.code_debug=5 - -adafruit_qualia_s3_rgb666.menu.EraseFlash.none=Disabled -adafruit_qualia_s3_rgb666.menu.EraseFlash.none.upload.erase_cmd= -adafruit_qualia_s3_rgb666.menu.EraseFlash.all=Enabled -adafruit_qualia_s3_rgb666.menu.EraseFlash.all.upload.erase_cmd=-e - -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.default=Disabled -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.default.build.zigbee_mode= -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.default.build.zigbee_libs= -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -adafruit_qualia_s3_rgb666.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## - -nodemcu-32s.name=NodeMCU-32S - -nodemcu-32s.bootloader.tool=esptool_py -nodemcu-32s.bootloader.tool.default=esptool_py - -nodemcu-32s.upload.tool=esptool_py -nodemcu-32s.upload.tool.default=esptool_py -nodemcu-32s.upload.tool.network=esp_ota - -nodemcu-32s.upload.maximum_size=1310720 -nodemcu-32s.upload.maximum_data_size=327680 -nodemcu-32s.upload.flags= -nodemcu-32s.upload.extra_flags= - -nodemcu-32s.serial.disableDTR=true -nodemcu-32s.serial.disableRTS=true - -nodemcu-32s.build.tarch=xtensa -nodemcu-32s.build.bootloader_addr=0x1000 -nodemcu-32s.build.target=esp32 -nodemcu-32s.build.mcu=esp32 -nodemcu-32s.build.core=esp32 -nodemcu-32s.build.variant=nodemcu-32s -nodemcu-32s.build.board=NodeMCU_32S - -nodemcu-32s.build.f_cpu=240000000L -nodemcu-32s.build.flash_mode=dio -nodemcu-32s.build.flash_size=4MB -nodemcu-32s.build.boot=dio -nodemcu-32s.build.partitions=default -nodemcu-32s.build.defines= - -nodemcu-32s.menu.FlashFreq.80=80MHz -nodemcu-32s.menu.FlashFreq.80.build.flash_freq=80m -nodemcu-32s.menu.FlashFreq.40=40MHz -nodemcu-32s.menu.FlashFreq.40.build.flash_freq=40m - -nodemcu-32s.menu.UploadSpeed.921600=921600 -nodemcu-32s.menu.UploadSpeed.921600.upload.speed=921600 -nodemcu-32s.menu.UploadSpeed.115200=115200 -nodemcu-32s.menu.UploadSpeed.115200.upload.speed=115200 -nodemcu-32s.menu.UploadSpeed.256000.windows=256000 -nodemcu-32s.menu.UploadSpeed.256000.upload.speed=256000 -nodemcu-32s.menu.UploadSpeed.230400.windows.upload.speed=256000 -nodemcu-32s.menu.UploadSpeed.230400=230400 -nodemcu-32s.menu.UploadSpeed.230400.upload.speed=230400 -nodemcu-32s.menu.UploadSpeed.460800.linux=460800 -nodemcu-32s.menu.UploadSpeed.460800.macosx=460800 -nodemcu-32s.menu.UploadSpeed.460800.upload.speed=460800 -nodemcu-32s.menu.UploadSpeed.512000.windows=512000 -nodemcu-32s.menu.UploadSpeed.512000.upload.speed=512000 - -nodemcu-32s.menu.DebugLevel.none=None -nodemcu-32s.menu.DebugLevel.none.build.code_debug=0 -nodemcu-32s.menu.DebugLevel.error=Error -nodemcu-32s.menu.DebugLevel.error.build.code_debug=1 -nodemcu-32s.menu.DebugLevel.warn=Warn -nodemcu-32s.menu.DebugLevel.warn.build.code_debug=2 -nodemcu-32s.menu.DebugLevel.info=Info -nodemcu-32s.menu.DebugLevel.info.build.code_debug=3 -nodemcu-32s.menu.DebugLevel.debug=Debug -nodemcu-32s.menu.DebugLevel.debug.build.code_debug=4 -nodemcu-32s.menu.DebugLevel.verbose=Verbose -nodemcu-32s.menu.DebugLevel.verbose.build.code_debug=5 - -nodemcu-32s.menu.EraseFlash.none=Disabled -nodemcu-32s.menu.EraseFlash.none.upload.erase_cmd= -nodemcu-32s.menu.EraseFlash.all=Enabled -nodemcu-32s.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nologo_esp32c3_super_mini.name=Nologo ESP32C3 Super Mini -nologo_esp32c3_super_mini.vid.0=0x303a -nologo_esp32c3_super_mini.pid.0=0x1001 - -nologo_esp32c3_super_mini.upload.tool=esptool_py -nologo_esp32c3_super_mini.upload.tool.default=esptool_py -nologo_esp32c3_super_mini.upload.tool.network=esp_ota -nologo_esp32c3_super_mini.upload.maximum_size=1310720 -nologo_esp32c3_super_mini.upload.maximum_data_size=327680 -nologo_esp32c3_super_mini.upload.flags= -nologo_esp32c3_super_mini.upload.extra_flags= -nologo_esp32c3_super_mini.upload.use_1200bps_touch=false -nologo_esp32c3_super_mini.upload.wait_for_upload_port=false - -nologo_esp32c3_super_mini.serial.disableDTR=false -nologo_esp32c3_super_mini.serial.disableRTS=false - -nologo_esp32c3_super_mini.build.tarch=riscv32 -nologo_esp32c3_super_mini.build.target=esp -nologo_esp32c3_super_mini.build.mcu=esp32c3 -nologo_esp32c3_super_mini.build.core=esp32 -nologo_esp32c3_super_mini.build.variant=nologo_esp32c3_super_mini -nologo_esp32c3_super_mini.build.board=NOLOGO_ESP32C3_SUPER_MINI -nologo_esp32c3_super_mini.build.bootloader_addr=0x0 - -nologo_esp32c3_super_mini.build.usb_mode=1 -nologo_esp32c3_super_mini.build.cdc_on_boot=1 -nologo_esp32c3_super_mini.build.f_cpu=160000000L -nologo_esp32c3_super_mini.build.flash_size=4MB -nologo_esp32c3_super_mini.build.flash_freq=80m -nologo_esp32c3_super_mini.build.flash_mode=qio -nologo_esp32c3_super_mini.build.boot=qio -nologo_esp32c3_super_mini.build.partitions=default -nologo_esp32c3_super_mini.build.defines= - -nologo_esp32c3_super_mini.menu.USBMode.hwcdc=Hardware CDC and JTAG -nologo_esp32c3_super_mini.menu.USBMode.hwcdc.build.usb_mode=1 -nologo_esp32c3_super_mini.menu.USBMode.default=USB-OTG -nologo_esp32c3_super_mini.menu.USBMode.default.build.usb_mode=0 - -nologo_esp32c3_super_mini.menu.JTAGAdapter.default=Disabled -nologo_esp32c3_super_mini.menu.JTAGAdapter.default.build.copy_jtag_files=0 -nologo_esp32c3_super_mini.menu.JTAGAdapter.builtin=Integrated USB JTAG -nologo_esp32c3_super_mini.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -nologo_esp32c3_super_mini.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -nologo_esp32c3_super_mini.menu.JTAGAdapter.external=FTDI Adapter -nologo_esp32c3_super_mini.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -nologo_esp32c3_super_mini.menu.JTAGAdapter.external.build.copy_jtag_files=1 -nologo_esp32c3_super_mini.menu.JTAGAdapter.bridge=ESP USB Bridge -nologo_esp32c3_super_mini.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -nologo_esp32c3_super_mini.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -nologo_esp32c3_super_mini.menu.CDCOnBoot.default=Enabled -nologo_esp32c3_super_mini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -nologo_esp32c3_super_mini.menu.CDCOnBoot.cdc=Enabled -nologo_esp32c3_super_mini.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -nologo_esp32c3_super_mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.default.build.partitions=default -nologo_esp32c3_super_mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -nologo_esp32c3_super_mini.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -nologo_esp32c3_super_mini.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -nologo_esp32c3_super_mini.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.minimal.build.partitions=minimal -nologo_esp32c3_super_mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -nologo_esp32c3_super_mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -nologo_esp32c3_super_mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -nologo_esp32c3_super_mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -nologo_esp32c3_super_mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -nologo_esp32c3_super_mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -nologo_esp32c3_super_mini.menu.CPUFreq.160=160MHz (WiFi) -nologo_esp32c3_super_mini.menu.CPUFreq.160.build.f_cpu=160000000L -nologo_esp32c3_super_mini.menu.CPUFreq.80=80MHz (WiFi) -nologo_esp32c3_super_mini.menu.CPUFreq.80.build.f_cpu=80000000L -nologo_esp32c3_super_mini.menu.CPUFreq.40=40MHz -nologo_esp32c3_super_mini.menu.CPUFreq.40.build.f_cpu=40000000L -nologo_esp32c3_super_mini.menu.CPUFreq.20=20MHz -nologo_esp32c3_super_mini.menu.CPUFreq.20.build.f_cpu=20000000L -nologo_esp32c3_super_mini.menu.CPUFreq.10=10MHz -nologo_esp32c3_super_mini.menu.CPUFreq.10.build.f_cpu=10000000L - -nologo_esp32c3_super_mini.menu.FlashMode.qio=QIO -nologo_esp32c3_super_mini.menu.FlashMode.qio.build.flash_mode=dio -nologo_esp32c3_super_mini.menu.FlashMode.qio.build.boot=qio -nologo_esp32c3_super_mini.menu.FlashMode.dio=DIO -nologo_esp32c3_super_mini.menu.FlashMode.dio.build.flash_mode=dio -nologo_esp32c3_super_mini.menu.FlashMode.dio.build.boot=dio - -nologo_esp32c3_super_mini.menu.FlashFreq.80=80MHz -nologo_esp32c3_super_mini.menu.FlashFreq.80.build.flash_freq=80m -nologo_esp32c3_super_mini.menu.FlashFreq.40=40MHz -nologo_esp32c3_super_mini.menu.FlashFreq.40.build.flash_freq=40m - -nologo_esp32c3_super_mini.menu.UploadSpeed.921600=921600 -nologo_esp32c3_super_mini.menu.UploadSpeed.921600.upload.speed=921600 -nologo_esp32c3_super_mini.menu.UploadSpeed.115200=115200 -nologo_esp32c3_super_mini.menu.UploadSpeed.115200.upload.speed=115200 -nologo_esp32c3_super_mini.menu.UploadSpeed.256000.windows=256000 -nologo_esp32c3_super_mini.menu.UploadSpeed.256000.upload.speed=256000 -nologo_esp32c3_super_mini.menu.UploadSpeed.230400.windows.upload.speed=256000 -nologo_esp32c3_super_mini.menu.UploadSpeed.230400=230400 -nologo_esp32c3_super_mini.menu.UploadSpeed.230400.upload.speed=230400 -nologo_esp32c3_super_mini.menu.UploadSpeed.460800.linux=460800 -nologo_esp32c3_super_mini.menu.UploadSpeed.460800.macosx=460800 -nologo_esp32c3_super_mini.menu.UploadSpeed.460800.upload.speed=460800 -nologo_esp32c3_super_mini.menu.UploadSpeed.512000.windows=512000 -nologo_esp32c3_super_mini.menu.UploadSpeed.512000.upload.speed=512000 - -nologo_esp32c3_super_mini.menu.DebugLevel.none=None -nologo_esp32c3_super_mini.menu.DebugLevel.none.build.code_debug=0 -nologo_esp32c3_super_mini.menu.DebugLevel.error=Error -nologo_esp32c3_super_mini.menu.DebugLevel.error.build.code_debug=1 -nologo_esp32c3_super_mini.menu.DebugLevel.warn=Warn -nologo_esp32c3_super_mini.menu.DebugLevel.warn.build.code_debug=2 -nologo_esp32c3_super_mini.menu.DebugLevel.info=Info -nologo_esp32c3_super_mini.menu.DebugLevel.info.build.code_debug=3 -nologo_esp32c3_super_mini.menu.DebugLevel.debug=Debug -nologo_esp32c3_super_mini.menu.DebugLevel.debug.build.code_debug=4 -nologo_esp32c3_super_mini.menu.DebugLevel.verbose=Verbose -nologo_esp32c3_super_mini.menu.DebugLevel.verbose.build.code_debug=5 - -nologo_esp32c3_super_mini.menu.EraseFlash.none=Disabled -nologo_esp32c3_super_mini.menu.EraseFlash.none.upload.erase_cmd= -nologo_esp32c3_super_mini.menu.EraseFlash.all=Enabled -nologo_esp32c3_super_mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nologo_esp32s3_pico.name=Nologo ESP32S3 Pico -nologo_esp32s3_pico.vid.0=0x303a -nologo_esp32s3_pico.pid.0=0x1001 - -nologo_esp32s3_pico.bootloader.tool=esptool_py -nologo_esp32s3_pico.bootloader.tool.default=esptool_py - -nologo_esp32s3_pico.upload.tool=esptool_py -nologo_esp32s3_pico.upload.tool.default=esptool_py -nologo_esp32s3_pico.upload.tool.network=esp_ota - -nologo_esp32s3_pico.upload.maximum_size=1310720 -nologo_esp32s3_pico.upload.maximum_data_size=327680 -nologo_esp32s3_pico.upload.flags= -nologo_esp32s3_pico.upload.extra_flags= -nologo_esp32s3_pico.upload.use_1200bps_touch=false -nologo_esp32s3_pico.upload.wait_for_upload_port=false - -nologo_esp32s3_pico.serial.disableDTR=false -nologo_esp32s3_pico.serial.disableRTS=false - -nologo_esp32s3_pico.build.tarch=xtensa -nologo_esp32s3_pico.build.bootloader_addr=0x0 -nologo_esp32s3_pico.build.target=esp32s3 -nologo_esp32s3_pico.build.mcu=esp32s3 -nologo_esp32s3_pico.build.core=esp32 -nologo_esp32s3_pico.build.variant=nologo_esp32s3_pico -nologo_esp32s3_pico.build.board=NOLOGO_ESP32S3_PICO - -nologo_esp32s3_pico.build.usb_mode=1 -nologo_esp32s3_pico.build.cdc_on_boot=1 -nologo_esp32s3_pico.build.msc_on_boot=0 -nologo_esp32s3_pico.build.dfu_on_boot=0 -nologo_esp32s3_pico.build.f_cpu=240000000L -nologo_esp32s3_pico.build.flash_size=8MB -nologo_esp32s3_pico.build.flash_freq=80m -nologo_esp32s3_pico.build.flash_mode=dio -nologo_esp32s3_pico.build.boot=qio -nologo_esp32s3_pico.build.boot_freq=80m -nologo_esp32s3_pico.build.partitions=default -nologo_esp32s3_pico.build.defines= -nologo_esp32s3_pico.build.loop_core= -nologo_esp32s3_pico.build.event_core= -nologo_esp32s3_pico.build.psram_type=qspi -nologo_esp32s3_pico.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -nologo_esp32s3_pico.menu.JTAGAdapter.default=Disabled -nologo_esp32s3_pico.menu.JTAGAdapter.default.build.copy_jtag_files=0 -nologo_esp32s3_pico.menu.JTAGAdapter.builtin=Integrated USB JTAG -nologo_esp32s3_pico.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -nologo_esp32s3_pico.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -nologo_esp32s3_pico.menu.JTAGAdapter.external=FTDI Adapter -nologo_esp32s3_pico.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -nologo_esp32s3_pico.menu.JTAGAdapter.external.build.copy_jtag_files=1 -nologo_esp32s3_pico.menu.JTAGAdapter.bridge=ESP USB Bridge -nologo_esp32s3_pico.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -nologo_esp32s3_pico.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -nologo_esp32s3_pico.menu.PSRAM.disabled=Disabled -nologo_esp32s3_pico.menu.PSRAM.disabled.build.defines= -nologo_esp32s3_pico.menu.PSRAM.disabled.build.psram_type=qspi -nologo_esp32s3_pico.menu.PSRAM.enabled=QSPI PSRAM -nologo_esp32s3_pico.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -nologo_esp32s3_pico.menu.PSRAM.enabled.build.psram_type=qspi -nologo_esp32s3_pico.menu.PSRAM.opi=OPI PSRAM -nologo_esp32s3_pico.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -nologo_esp32s3_pico.menu.PSRAM.opi.build.psram_type=opi - -nologo_esp32s3_pico.menu.FlashMode.qio=QIO 80MHz -nologo_esp32s3_pico.menu.FlashMode.qio.build.flash_mode=dio -nologo_esp32s3_pico.menu.FlashMode.qio.build.boot=qio -nologo_esp32s3_pico.menu.FlashMode.qio.build.boot_freq=80m -nologo_esp32s3_pico.menu.FlashMode.qio.build.flash_freq=80m -nologo_esp32s3_pico.menu.FlashMode.qio120=QIO 120MHz -nologo_esp32s3_pico.menu.FlashMode.qio120.build.flash_mode=dio -nologo_esp32s3_pico.menu.FlashMode.qio120.build.boot=qio -nologo_esp32s3_pico.menu.FlashMode.qio120.build.boot_freq=120m -nologo_esp32s3_pico.menu.FlashMode.qio120.build.flash_freq=80m -nologo_esp32s3_pico.menu.FlashMode.dio=DIO 80MHz -nologo_esp32s3_pico.menu.FlashMode.dio.build.flash_mode=dio -nologo_esp32s3_pico.menu.FlashMode.dio.build.boot=dio -nologo_esp32s3_pico.menu.FlashMode.dio.build.boot_freq=80m -nologo_esp32s3_pico.menu.FlashMode.dio.build.flash_freq=80m -nologo_esp32s3_pico.menu.FlashMode.opi=OPI 80MHz -nologo_esp32s3_pico.menu.FlashMode.opi.build.flash_mode=dout -nologo_esp32s3_pico.menu.FlashMode.opi.build.boot=opi -nologo_esp32s3_pico.menu.FlashMode.opi.build.boot_freq=80m -nologo_esp32s3_pico.menu.FlashMode.opi.build.flash_freq=80m - -nologo_esp32s3_pico.menu.FlashSize.8M=8MB (64Mb) -nologo_esp32s3_pico.menu.FlashSize.8M.build.flash_size=8MB -nologo_esp32s3_pico.menu.FlashSize.8M.build.partitions=default_8MB -nologo_esp32s3_pico.menu.FlashSize.16M=16MB (128Mb) -nologo_esp32s3_pico.menu.FlashSize.16M.build.flash_size=16MB - -nologo_esp32s3_pico.menu.LoopCore.1=Core 1 -nologo_esp32s3_pico.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -nologo_esp32s3_pico.menu.LoopCore.0=Core 0 -nologo_esp32s3_pico.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -nologo_esp32s3_pico.menu.EventsCore.1=Core 1 -nologo_esp32s3_pico.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -nologo_esp32s3_pico.menu.EventsCore.0=Core 0 -nologo_esp32s3_pico.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -nologo_esp32s3_pico.menu.USBMode.hwcdc=Hardware CDC and JTAG -nologo_esp32s3_pico.menu.USBMode.hwcdc.build.usb_mode=1 -nologo_esp32s3_pico.menu.USBMode.default=USB-OTG (TinyUSB) -nologo_esp32s3_pico.menu.USBMode.default.build.usb_mode=0 - -nologo_esp32s3_pico.menu.CDCOnBoot.default=Enabled -nologo_esp32s3_pico.menu.CDCOnBoot.default.build.cdc_on_boot=1 -nologo_esp32s3_pico.menu.CDCOnBoot.cdc=Enabled -nologo_esp32s3_pico.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -nologo_esp32s3_pico.menu.MSCOnBoot.default=Disabled -nologo_esp32s3_pico.menu.MSCOnBoot.default.build.msc_on_boot=0 -nologo_esp32s3_pico.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -nologo_esp32s3_pico.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -nologo_esp32s3_pico.menu.DFUOnBoot.default=Disabled -nologo_esp32s3_pico.menu.DFUOnBoot.default.build.dfu_on_boot=0 -nologo_esp32s3_pico.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -nologo_esp32s3_pico.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -nologo_esp32s3_pico.menu.UploadMode.default=UART0 / Hardware CDC -nologo_esp32s3_pico.menu.UploadMode.default.upload.use_1200bps_touch=false -nologo_esp32s3_pico.menu.UploadMode.default.upload.wait_for_upload_port=false -nologo_esp32s3_pico.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -nologo_esp32s3_pico.menu.UploadMode.cdc.upload.use_1200bps_touch=true -nologo_esp32s3_pico.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -nologo_esp32s3_pico.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.default.build.partitions=default -nologo_esp32s3_pico.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -nologo_esp32s3_pico.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -nologo_esp32s3_pico.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -nologo_esp32s3_pico.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.minimal.build.partitions=minimal -nologo_esp32s3_pico.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.no_ota.build.partitions=no_ota -nologo_esp32s3_pico.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -nologo_esp32s3_pico.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -nologo_esp32s3_pico.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -nologo_esp32s3_pico.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -nologo_esp32s3_pico.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -nologo_esp32s3_pico.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -nologo_esp32s3_pico.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -nologo_esp32s3_pico.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.huge_app.build.partitions=huge_app -nologo_esp32s3_pico.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -nologo_esp32s3_pico.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -nologo_esp32s3_pico.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -nologo_esp32s3_pico.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -nologo_esp32s3_pico.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.fatflash.build.partitions=ffat -nologo_esp32s3_pico.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -nologo_esp32s3_pico.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -nologo_esp32s3_pico.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -nologo_esp32s3_pico.menu.PartitionScheme.rainmaker=RainMaker -nologo_esp32s3_pico.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -nologo_esp32s3_pico.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -nologo_esp32s3_pico.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -nologo_esp32s3_pico.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -nologo_esp32s3_pico.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -nologo_esp32s3_pico.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -nologo_esp32s3_pico.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -nologo_esp32s3_pico.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -nologo_esp32s3_pico.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -nologo_esp32s3_pico.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -nologo_esp32s3_pico.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -nologo_esp32s3_pico.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -nologo_esp32s3_pico.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs -nologo_esp32s3_pico.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr -nologo_esp32s3_pico.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 -nologo_esp32s3_pico.menu.PartitionScheme.custom=Custom -nologo_esp32s3_pico.menu.PartitionScheme.custom.build.partitions= -nologo_esp32s3_pico.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -nologo_esp32s3_pico.menu.CPUFreq.240=240MHz (WiFi) -nologo_esp32s3_pico.menu.CPUFreq.240.build.f_cpu=240000000L -nologo_esp32s3_pico.menu.CPUFreq.160=160MHz (WiFi) -nologo_esp32s3_pico.menu.CPUFreq.160.build.f_cpu=160000000L -nologo_esp32s3_pico.menu.CPUFreq.80=80MHz (WiFi) -nologo_esp32s3_pico.menu.CPUFreq.80.build.f_cpu=80000000L -nologo_esp32s3_pico.menu.CPUFreq.40=40MHz -nologo_esp32s3_pico.menu.CPUFreq.40.build.f_cpu=40000000L -nologo_esp32s3_pico.menu.CPUFreq.20=20MHz -nologo_esp32s3_pico.menu.CPUFreq.20.build.f_cpu=20000000L -nologo_esp32s3_pico.menu.CPUFreq.10=10MHz -nologo_esp32s3_pico.menu.CPUFreq.10.build.f_cpu=10000000L - -nologo_esp32s3_pico.menu.UploadSpeed.921600=921600 -nologo_esp32s3_pico.menu.UploadSpeed.921600.upload.speed=921600 -nologo_esp32s3_pico.menu.UploadSpeed.115200=115200 -nologo_esp32s3_pico.menu.UploadSpeed.115200.upload.speed=115200 -nologo_esp32s3_pico.menu.UploadSpeed.256000.windows=256000 -nologo_esp32s3_pico.menu.UploadSpeed.256000.upload.speed=256000 -nologo_esp32s3_pico.menu.UploadSpeed.230400.windows.upload.speed=256000 -nologo_esp32s3_pico.menu.UploadSpeed.230400=230400 -nologo_esp32s3_pico.menu.UploadSpeed.230400.upload.speed=230400 -nologo_esp32s3_pico.menu.UploadSpeed.460800.linux=460800 -nologo_esp32s3_pico.menu.UploadSpeed.460800.macosx=460800 -nologo_esp32s3_pico.menu.UploadSpeed.460800.upload.speed=460800 -nologo_esp32s3_pico.menu.UploadSpeed.512000.windows=512000 -nologo_esp32s3_pico.menu.UploadSpeed.512000.upload.speed=512000 - -nologo_esp32s3_pico.menu.DebugLevel.none=None -nologo_esp32s3_pico.menu.DebugLevel.none.build.code_debug=0 -nologo_esp32s3_pico.menu.DebugLevel.error=Error -nologo_esp32s3_pico.menu.DebugLevel.error.build.code_debug=1 -nologo_esp32s3_pico.menu.DebugLevel.warn=Warn -nologo_esp32s3_pico.menu.DebugLevel.warn.build.code_debug=2 -nologo_esp32s3_pico.menu.DebugLevel.info=Info -nologo_esp32s3_pico.menu.DebugLevel.info.build.code_debug=3 -nologo_esp32s3_pico.menu.DebugLevel.debug=Debug -nologo_esp32s3_pico.menu.DebugLevel.debug.build.code_debug=4 -nologo_esp32s3_pico.menu.DebugLevel.verbose=Verbose -nologo_esp32s3_pico.menu.DebugLevel.verbose.build.code_debug=5 - -nologo_esp32s3_pico.menu.EraseFlash.none=Disabled -nologo_esp32s3_pico.menu.EraseFlash.none.upload.erase_cmd= -nologo_esp32s3_pico.menu.EraseFlash.all=Enabled -nologo_esp32s3_pico.menu.EraseFlash.all.upload.erase_cmd=-e - -nologo_esp32s3_pico.menu.ZigbeeMode.default=Disabled -nologo_esp32s3_pico.menu.ZigbeeMode.default.build.zigbee_mode= -nologo_esp32s3_pico.menu.ZigbeeMode.default.build.zigbee_libs= -nologo_esp32s3_pico.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) -nologo_esp32s3_pico.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR -nologo_esp32s3_pico.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port - -############################################################## - -mhetesp32devkit.name=MH ET LIVE ESP32DevKIT - -mhetesp32devkit.bootloader.tool=esptool_py -mhetesp32devkit.bootloader.tool.default=esptool_py - -mhetesp32devkit.upload.tool=esptool_py -mhetesp32devkit.upload.tool.default=esptool_py -mhetesp32devkit.upload.tool.network=esp_ota - -mhetesp32devkit.upload.maximum_size=1310720 -mhetesp32devkit.upload.maximum_data_size=327680 -mhetesp32devkit.upload.flags= -mhetesp32devkit.upload.extra_flags= - -mhetesp32devkit.serial.disableDTR=true -mhetesp32devkit.serial.disableRTS=true - -mhetesp32devkit.build.tarch=xtensa -mhetesp32devkit.build.bootloader_addr=0x1000 -mhetesp32devkit.build.target=esp32 -mhetesp32devkit.build.mcu=esp32 -mhetesp32devkit.build.core=esp32 -mhetesp32devkit.build.variant=mhetesp32devkit -mhetesp32devkit.build.board=MH_ET_LIVE_ESP32DEVKIT - -mhetesp32devkit.build.f_cpu=240000000L -mhetesp32devkit.build.flash_mode=dio -mhetesp32devkit.build.flash_size=4MB -mhetesp32devkit.build.boot=dio -mhetesp32devkit.build.partitions=default -mhetesp32devkit.build.defines= - -mhetesp32devkit.menu.FlashFreq.80=80MHz -mhetesp32devkit.menu.FlashFreq.80.build.flash_freq=80m -mhetesp32devkit.menu.FlashFreq.40=40MHz -mhetesp32devkit.menu.FlashFreq.40.build.flash_freq=40m - -mhetesp32devkit.menu.PartitionScheme.default=Default -mhetesp32devkit.menu.PartitionScheme.default.build.partitions=default -mhetesp32devkit.menu.PartitionScheme.no_ota=No OTA (Large APP) -mhetesp32devkit.menu.PartitionScheme.no_ota.build.partitions=no_ota -mhetesp32devkit.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -mhetesp32devkit.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -mhetesp32devkit.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -mhetesp32devkit.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -mhetesp32devkit.menu.UploadSpeed.921600=921600 -mhetesp32devkit.menu.UploadSpeed.921600.upload.speed=921600 -mhetesp32devkit.menu.UploadSpeed.115200=115200 -mhetesp32devkit.menu.UploadSpeed.115200.upload.speed=115200 -mhetesp32devkit.menu.UploadSpeed.256000.windows=256000 -mhetesp32devkit.menu.UploadSpeed.256000.upload.speed=256000 -mhetesp32devkit.menu.UploadSpeed.230400.windows.upload.speed=256000 -mhetesp32devkit.menu.UploadSpeed.230400=230400 -mhetesp32devkit.menu.UploadSpeed.230400.upload.speed=230400 -mhetesp32devkit.menu.UploadSpeed.460800.linux=460800 -mhetesp32devkit.menu.UploadSpeed.460800.macosx=460800 -mhetesp32devkit.menu.UploadSpeed.460800.upload.speed=460800 -mhetesp32devkit.menu.UploadSpeed.512000.windows=512000 -mhetesp32devkit.menu.UploadSpeed.512000.upload.speed=512000 - -mhetesp32devkit.menu.DebugLevel.none=None -mhetesp32devkit.menu.DebugLevel.none.build.code_debug=0 -mhetesp32devkit.menu.DebugLevel.error=Error -mhetesp32devkit.menu.DebugLevel.error.build.code_debug=1 -mhetesp32devkit.menu.DebugLevel.warn=Warn -mhetesp32devkit.menu.DebugLevel.warn.build.code_debug=2 -mhetesp32devkit.menu.DebugLevel.info=Info -mhetesp32devkit.menu.DebugLevel.info.build.code_debug=3 -mhetesp32devkit.menu.DebugLevel.debug=Debug -mhetesp32devkit.menu.DebugLevel.debug.build.code_debug=4 -mhetesp32devkit.menu.DebugLevel.verbose=Verbose -mhetesp32devkit.menu.DebugLevel.verbose.build.code_debug=5 - -mhetesp32devkit.menu.EraseFlash.none=Disabled -mhetesp32devkit.menu.EraseFlash.none.upload.erase_cmd= -mhetesp32devkit.menu.EraseFlash.all=Enabled -mhetesp32devkit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -mhetesp32minikit.name=MH ET LIVE ESP32MiniKit - -mhetesp32minikit.bootloader.tool=esptool_py -mhetesp32minikit.bootloader.tool.default=esptool_py - -mhetesp32minikit.upload.tool=esptool_py -mhetesp32minikit.upload.tool.default=esptool_py -mhetesp32minikit.upload.tool.network=esp_ota - -mhetesp32minikit.upload.maximum_size=1310720 -mhetesp32minikit.upload.maximum_data_size=327680 -mhetesp32minikit.upload.flags= -mhetesp32minikit.upload.extra_flags= - -mhetesp32minikit.serial.disableDTR=true -mhetesp32minikit.serial.disableRTS=true - -mhetesp32minikit.build.tarch=xtensa -mhetesp32minikit.build.bootloader_addr=0x1000 -mhetesp32minikit.build.target=esp32 -mhetesp32minikit.build.mcu=esp32 -mhetesp32minikit.build.core=esp32 -mhetesp32minikit.build.variant=mhetesp32minikit -mhetesp32minikit.build.board=MH_ET_LIVE_ESP32MINIKIT - -mhetesp32minikit.build.f_cpu=240000000L -mhetesp32minikit.build.flash_mode=dio -mhetesp32minikit.build.flash_size=4MB -mhetesp32minikit.build.boot=dio -mhetesp32minikit.build.partitions=default -mhetesp32minikit.build.defines= - -mhetesp32minikit.menu.FlashFreq.80=80MHz -mhetesp32minikit.menu.FlashFreq.80.build.flash_freq=80m -mhetesp32minikit.menu.FlashFreq.40=40MHz -mhetesp32minikit.menu.FlashFreq.40.build.flash_freq=40m - -mhetesp32minikit.menu.PartitionScheme.default=Default with spiffs -mhetesp32minikit.menu.PartitionScheme.default.build.partitions=default -mhetesp32minikit.menu.PartitionScheme.defaultffat=Default with ffat -mhetesp32minikit.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -mhetesp32minikit.menu.PartitionScheme.no_ota=No OTA (Large APP) -mhetesp32minikit.menu.PartitionScheme.no_ota.build.partitions=no_ota -mhetesp32minikit.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -mhetesp32minikit.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -mhetesp32minikit.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -mhetesp32minikit.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -mhetesp32minikit.menu.UploadSpeed.921600=921600 -mhetesp32minikit.menu.UploadSpeed.921600.upload.speed=921600 -mhetesp32minikit.menu.UploadSpeed.115200=115200 -mhetesp32minikit.menu.UploadSpeed.115200.upload.speed=115200 -mhetesp32minikit.menu.UploadSpeed.256000.windows=256000 -mhetesp32minikit.menu.UploadSpeed.256000.upload.speed=256000 -mhetesp32minikit.menu.UploadSpeed.230400.windows.upload.speed=256000 -mhetesp32minikit.menu.UploadSpeed.230400=230400 -mhetesp32minikit.menu.UploadSpeed.230400.upload.speed=230400 -mhetesp32minikit.menu.UploadSpeed.460800.linux=460800 -mhetesp32minikit.menu.UploadSpeed.460800.macosx=460800 -mhetesp32minikit.menu.UploadSpeed.460800.upload.speed=460800 -mhetesp32minikit.menu.UploadSpeed.512000.windows=512000 -mhetesp32minikit.menu.UploadSpeed.512000.upload.speed=512000 - -mhetesp32minikit.menu.DebugLevel.none=None -mhetesp32minikit.menu.DebugLevel.none.build.code_debug=0 -mhetesp32minikit.menu.DebugLevel.error=Error -mhetesp32minikit.menu.DebugLevel.error.build.code_debug=1 -mhetesp32minikit.menu.DebugLevel.warn=Warn -mhetesp32minikit.menu.DebugLevel.warn.build.code_debug=2 -mhetesp32minikit.menu.DebugLevel.info=Info -mhetesp32minikit.menu.DebugLevel.info.build.code_debug=3 -mhetesp32minikit.menu.DebugLevel.debug=Debug -mhetesp32minikit.menu.DebugLevel.debug.build.code_debug=4 -mhetesp32minikit.menu.DebugLevel.verbose=Verbose -mhetesp32minikit.menu.DebugLevel.verbose.build.code_debug=5 - -mhetesp32minikit.menu.EraseFlash.none=Disabled -mhetesp32minikit.menu.EraseFlash.none.upload.erase_cmd= -mhetesp32minikit.menu.EraseFlash.all=Enabled -mhetesp32minikit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32vn-iot-uno.name=ESP32vn IoT Uno - -esp32vn-iot-uno.bootloader.tool=esptool_py -esp32vn-iot-uno.bootloader.tool.default=esptool_py - -esp32vn-iot-uno.upload.tool=esptool_py -esp32vn-iot-uno.upload.tool.default=esptool_py -esp32vn-iot-uno.upload.tool.network=esp_ota - -esp32vn-iot-uno.upload.maximum_size=1310720 -esp32vn-iot-uno.upload.maximum_data_size=327680 -esp32vn-iot-uno.upload.flags= -esp32vn-iot-uno.upload.extra_flags= - -esp32vn-iot-uno.serial.disableDTR=true -esp32vn-iot-uno.serial.disableRTS=true - -esp32vn-iot-uno.build.tarch=xtensa -esp32vn-iot-uno.build.bootloader_addr=0x1000 -esp32vn-iot-uno.build.target=esp32 -esp32vn-iot-uno.build.mcu=esp32 -esp32vn-iot-uno.build.core=esp32 -esp32vn-iot-uno.build.variant=esp32vn-iot-uno -esp32vn-iot-uno.build.board=esp32vn_iot_uno - -esp32vn-iot-uno.build.f_cpu=240000000L -esp32vn-iot-uno.build.flash_mode=dio -esp32vn-iot-uno.build.flash_size=4MB -esp32vn-iot-uno.build.boot=dio -esp32vn-iot-uno.build.partitions=default -esp32vn-iot-uno.build.defines= - -esp32vn-iot-uno.menu.FlashFreq.80=80MHz -esp32vn-iot-uno.menu.FlashFreq.80.build.flash_freq=80m -esp32vn-iot-uno.menu.FlashFreq.40=40MHz -esp32vn-iot-uno.menu.FlashFreq.40.build.flash_freq=40m - -esp32vn-iot-uno.menu.UploadSpeed.921600=921600 -esp32vn-iot-uno.menu.UploadSpeed.921600.upload.speed=921600 -esp32vn-iot-uno.menu.UploadSpeed.115200=115200 -esp32vn-iot-uno.menu.UploadSpeed.115200.upload.speed=115200 -esp32vn-iot-uno.menu.UploadSpeed.256000.windows=256000 -esp32vn-iot-uno.menu.UploadSpeed.256000.upload.speed=256000 -esp32vn-iot-uno.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32vn-iot-uno.menu.UploadSpeed.230400=230400 -esp32vn-iot-uno.menu.UploadSpeed.230400.upload.speed=230400 -esp32vn-iot-uno.menu.UploadSpeed.460800.linux=460800 -esp32vn-iot-uno.menu.UploadSpeed.460800.macosx=460800 -esp32vn-iot-uno.menu.UploadSpeed.460800.upload.speed=460800 -esp32vn-iot-uno.menu.UploadSpeed.512000.windows=512000 -esp32vn-iot-uno.menu.UploadSpeed.512000.upload.speed=512000 - -esp32vn-iot-uno.menu.DebugLevel.none=None -esp32vn-iot-uno.menu.DebugLevel.none.build.code_debug=0 -esp32vn-iot-uno.menu.DebugLevel.error=Error -esp32vn-iot-uno.menu.DebugLevel.error.build.code_debug=1 -esp32vn-iot-uno.menu.DebugLevel.warn=Warn -esp32vn-iot-uno.menu.DebugLevel.warn.build.code_debug=2 -esp32vn-iot-uno.menu.DebugLevel.info=Info -esp32vn-iot-uno.menu.DebugLevel.info.build.code_debug=3 -esp32vn-iot-uno.menu.DebugLevel.debug=Debug -esp32vn-iot-uno.menu.DebugLevel.debug.build.code_debug=4 -esp32vn-iot-uno.menu.DebugLevel.verbose=Verbose -esp32vn-iot-uno.menu.DebugLevel.verbose.build.code_debug=5 - -esp32vn-iot-uno.menu.EraseFlash.none=Disabled -esp32vn-iot-uno.menu.EraseFlash.none.upload.erase_cmd= -esp32vn-iot-uno.menu.EraseFlash.all=Enabled -esp32vn-iot-uno.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32doit-devkit-v1.name=DOIT ESP32 DEVKIT V1 - -esp32doit-devkit-v1.bootloader.tool=esptool_py -esp32doit-devkit-v1.bootloader.tool.default=esptool_py - -esp32doit-devkit-v1.upload.tool=esptool_py -esp32doit-devkit-v1.upload.tool.default=esptool_py -esp32doit-devkit-v1.upload.tool.network=esp_ota - -esp32doit-devkit-v1.upload.maximum_size=1310720 -esp32doit-devkit-v1.upload.maximum_data_size=327680 -esp32doit-devkit-v1.upload.flags= -esp32doit-devkit-v1.upload.extra_flags= - -esp32doit-devkit-v1.serial.disableDTR=true -esp32doit-devkit-v1.serial.disableRTS=true - -esp32doit-devkit-v1.build.tarch=xtensa -esp32doit-devkit-v1.build.bootloader_addr=0x1000 -esp32doit-devkit-v1.build.target=esp32 -esp32doit-devkit-v1.build.mcu=esp32 -esp32doit-devkit-v1.build.core=esp32 -esp32doit-devkit-v1.build.variant=doitESP32devkitV1 -esp32doit-devkit-v1.build.board=ESP32_DEV - -esp32doit-devkit-v1.build.f_cpu=240000000L -esp32doit-devkit-v1.build.flash_mode=dio -esp32doit-devkit-v1.build.flash_size=4MB -esp32doit-devkit-v1.build.boot=dio -esp32doit-devkit-v1.build.partitions=default -esp32doit-devkit-v1.build.defines= - -esp32doit-devkit-v1.menu.FlashFreq.80=80MHz -esp32doit-devkit-v1.menu.FlashFreq.80.build.flash_freq=80m -esp32doit-devkit-v1.menu.FlashFreq.40=40MHz -esp32doit-devkit-v1.menu.FlashFreq.40.build.flash_freq=40m - -esp32doit-devkit-v1.menu.UploadSpeed.921600=921600 -esp32doit-devkit-v1.menu.UploadSpeed.921600.upload.speed=921600 -esp32doit-devkit-v1.menu.UploadSpeed.115200=115200 -esp32doit-devkit-v1.menu.UploadSpeed.115200.upload.speed=115200 -esp32doit-devkit-v1.menu.UploadSpeed.256000.windows=256000 -esp32doit-devkit-v1.menu.UploadSpeed.256000.upload.speed=256000 -esp32doit-devkit-v1.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32doit-devkit-v1.menu.UploadSpeed.230400=230400 -esp32doit-devkit-v1.menu.UploadSpeed.230400.upload.speed=230400 -esp32doit-devkit-v1.menu.UploadSpeed.460800.linux=460800 -esp32doit-devkit-v1.menu.UploadSpeed.460800.macosx=460800 -esp32doit-devkit-v1.menu.UploadSpeed.460800.upload.speed=460800 -esp32doit-devkit-v1.menu.UploadSpeed.512000.windows=512000 -esp32doit-devkit-v1.menu.UploadSpeed.512000.upload.speed=512000 - -esp32doit-devkit-v1.menu.DebugLevel.none=None -esp32doit-devkit-v1.menu.DebugLevel.none.build.code_debug=0 -esp32doit-devkit-v1.menu.DebugLevel.error=Error -esp32doit-devkit-v1.menu.DebugLevel.error.build.code_debug=1 -esp32doit-devkit-v1.menu.DebugLevel.warn=Warn -esp32doit-devkit-v1.menu.DebugLevel.warn.build.code_debug=2 -esp32doit-devkit-v1.menu.DebugLevel.info=Info -esp32doit-devkit-v1.menu.DebugLevel.info.build.code_debug=3 -esp32doit-devkit-v1.menu.DebugLevel.debug=Debug -esp32doit-devkit-v1.menu.DebugLevel.debug.build.code_debug=4 - -esp32doit-devkit-v1.menu.EraseFlash.none=Disabled -esp32doit-devkit-v1.menu.EraseFlash.none.upload.erase_cmd= -esp32doit-devkit-v1.menu.EraseFlash.all=Enabled -esp32doit-devkit-v1.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32doit-espduino.name=DOIT ESPduino32 - -esp32doit-espduino.upload.tool=esptool_py -esp32doit-espduino.upload.tool.default=esptool_py -esp32doit-espduino.upload.tool.network=esp_ota - -esp32doit-espduino.upload.maximum_size=1310720 -esp32doit-espduino.upload.maximum_data_size=327680 -esp32doit-espduino.upload.wait_for_upload_port=true -esp32doit-espduino.upload.flags= -esp32doit-espduino.upload.extra_flags= - -esp32doit-espduino.serial.disableDTR=true -esp32doit-espduino.serial.disableRTS=true - -esp32doit-espduino.build.tarch=xtensa -esp32doit-espduino.build.bootloader_addr=0x1000 -esp32doit-espduino.build.target=esp32 -esp32doit-espduino.build.mcu=esp32 -esp32doit-espduino.build.core=esp32 -esp32doit-espduino.build.variant=doitESPduino32 -esp32doit-espduino.build.board=ESP32_DEV - -esp32doit-espduino.build.f_cpu=240000000L -esp32doit-espduino.build.flash_mode=dio -esp32doit-espduino.build.flash_size=4MB -esp32doit-espduino.build.boot=dio -esp32doit-espduino.build.partitions=default -esp32doit-espduino.build.defines= - -esp32doit-espduino.menu.FlashFreq.80=80MHz -esp32doit-espduino.menu.FlashFreq.80.build.flash_freq=80m -esp32doit-espduino.menu.FlashFreq.40=40MHz -esp32doit-espduino.menu.FlashFreq.40.build.flash_freq=40m - -esp32doit-espduino.menu.UploadSpeed.921600=921600 -esp32doit-espduino.menu.UploadSpeed.921600.upload.speed=921600 -esp32doit-espduino.menu.UploadSpeed.115200=115200 -esp32doit-espduino.menu.UploadSpeed.115200.upload.speed=115200 -esp32doit-espduino.menu.UploadSpeed.256000.windows=256000 -esp32doit-espduino.menu.UploadSpeed.256000.upload.speed=256000 -esp32doit-espduino.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32doit-espduino.menu.UploadSpeed.230400=230400 -esp32doit-espduino.menu.UploadSpeed.230400.upload.speed=230400 -esp32doit-espduino.menu.UploadSpeed.460800.linux=460800 -esp32doit-espduino.menu.UploadSpeed.460800.macosx=460800 -esp32doit-espduino.menu.UploadSpeed.460800.upload.speed=460800 -esp32doit-espduino.menu.UploadSpeed.512000.windows=512000 -esp32doit-espduino.menu.UploadSpeed.512000.upload.speed=512000 - -esp32doit-espduino.menu.DebugLevel.none=None -esp32doit-espduino.menu.DebugLevel.none.build.code_debug=0 -esp32doit-espduino.menu.DebugLevel.error=Error -esp32doit-espduino.menu.DebugLevel.error.build.code_debug=1 -esp32doit-espduino.menu.DebugLevel.warn=Warn -esp32doit-espduino.menu.DebugLevel.warn.build.code_debug=2 -esp32doit-espduino.menu.DebugLevel.info=Info -esp32doit-espduino.menu.DebugLevel.info.build.code_debug=3 -esp32doit-espduino.menu.DebugLevel.debug=Debug -esp32doit-espduino.menu.DebugLevel.debug.build.code_debug=4 - -esp32doit-espduino.menu.EraseFlash.none=Disabled -esp32doit-espduino.menu.EraseFlash.none.upload.erase_cmd= -esp32doit-espduino.menu.EraseFlash.all=Enabled -esp32doit-espduino.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-evb.name=OLIMEX ESP32-EVB - -esp32-evb.bootloader.tool=esptool_py -esp32-evb.bootloader.tool.default=esptool_py - -esp32-evb.upload.tool=esptool_py -esp32-evb.upload.tool.default=esptool_py -esp32-evb.upload.tool.network=esp_ota - -esp32-evb.upload.maximum_size=1310720 -esp32-evb.upload.maximum_data_size=327680 -esp32-evb.upload.flags= -esp32-evb.upload.extra_flags= - -esp32-evb.serial.disableDTR=true -esp32-evb.serial.disableRTS=true - -esp32-evb.build.tarch=xtensa -esp32-evb.build.bootloader_addr=0x1000 -esp32-evb.build.target=esp32 -esp32-evb.build.mcu=esp32 -esp32-evb.build.core=esp32 -esp32-evb.build.variant=esp32-evb -esp32-evb.build.board=ESP32_EVB - -esp32-evb.build.f_cpu=240000000L -esp32-evb.build.flash_mode=dio -esp32-evb.build.flash_size=4MB -esp32-evb.build.boot=dio -esp32-evb.build.partitions=default -esp32-evb.build.defines= - -esp32-evb.menu.FlashFreq.80=80MHz -esp32-evb.menu.FlashFreq.80.build.flash_freq=80m -esp32-evb.menu.FlashFreq.40=40MHz -esp32-evb.menu.FlashFreq.40.build.flash_freq=40m - -esp32-evb.menu.UploadSpeed.921600=921600 -esp32-evb.menu.UploadSpeed.921600.upload.speed=921600 -esp32-evb.menu.UploadSpeed.115200=115200 -esp32-evb.menu.UploadSpeed.115200.upload.speed=115200 -esp32-evb.menu.UploadSpeed.256000.windows=256000 -esp32-evb.menu.UploadSpeed.256000.upload.speed=256000 -esp32-evb.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-evb.menu.UploadSpeed.230400=230400 -esp32-evb.menu.UploadSpeed.230400.upload.speed=230400 -esp32-evb.menu.UploadSpeed.460800.linux=460800 -esp32-evb.menu.UploadSpeed.460800.macosx=460800 -esp32-evb.menu.UploadSpeed.460800.upload.speed=460800 -esp32-evb.menu.UploadSpeed.512000.windows=512000 -esp32-evb.menu.UploadSpeed.512000.upload.speed=512000 - -esp32-evb.menu.PartitionScheme.default=Default -esp32-evb.menu.PartitionScheme.default.build.partitions=default -esp32-evb.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32-evb.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32-evb.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32-evb.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32-evb.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32-evb.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32-evb.menu.DebugLevel.none=None -esp32-evb.menu.DebugLevel.none.build.code_debug=0 -esp32-evb.menu.DebugLevel.error=Error -esp32-evb.menu.DebugLevel.error.build.code_debug=1 -esp32-evb.menu.DebugLevel.warn=Warn -esp32-evb.menu.DebugLevel.warn.build.code_debug=2 -esp32-evb.menu.DebugLevel.info=Info -esp32-evb.menu.DebugLevel.info.build.code_debug=3 -esp32-evb.menu.DebugLevel.debug=Debug -esp32-evb.menu.DebugLevel.debug.build.code_debug=4 -esp32-evb.menu.DebugLevel.verbose=Verbose -esp32-evb.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-evb.menu.EraseFlash.none=Disabled -esp32-evb.menu.EraseFlash.none.upload.erase_cmd= -esp32-evb.menu.EraseFlash.all=Enabled -esp32-evb.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-gateway.name=OLIMEX ESP32-GATEWAY - -esp32-gateway.bootloader.tool=esptool_py -esp32-gateway.bootloader.tool.default=esptool_py - -esp32-gateway.upload.tool=esptool_py -esp32-gateway.upload.tool.default=esptool_py -esp32-gateway.upload.tool.network=esp_ota - -esp32-gateway.upload.maximum_size=1310720 -esp32-gateway.upload.maximum_data_size=327680 -esp32-gateway.upload.flags= -esp32-gateway.upload.extra_flags= - -esp32-gateway.serial.disableDTR=true -esp32-gateway.serial.disableRTS=true - -esp32-gateway.build.tarch=xtensa -esp32-gateway.build.bootloader_addr=0x1000 -esp32-gateway.build.target=esp32 -esp32-gateway.build.mcu=esp32 -esp32-gateway.build.core=esp32 -esp32-gateway.build.variant=esp32-gateway -esp32-gateway.build.board=ESP32_GATEWAY -esp32-gateway.menu.Revision.RevC=Revision C or older -esp32-gateway.menu.Revision.RevC.build.board=ESP32_GATEWAY_C -esp32-gateway.menu.Revision.RevE=Revision E -esp32-gateway.menu.Revision.RevE.build.board=ESP32_GATEWAY_E -esp32-gateway.menu.Revision.RevF=Revision F or newer -esp32-gateway.menu.Revision.RevF.build.board=ESP32_GATEWAY_F - -esp32-gateway.build.f_cpu=240000000L -esp32-gateway.build.flash_mode=dio -esp32-gateway.build.flash_size=4MB -esp32-gateway.build.boot=dio -esp32-gateway.build.partitions=default -esp32-gateway.build.defines= - -esp32-gateway.menu.FlashFreq.80=80MHz -esp32-gateway.menu.FlashFreq.80.build.flash_freq=80m -esp32-gateway.menu.FlashFreq.40=40MHz -esp32-gateway.menu.FlashFreq.40.build.flash_freq=40m - -esp32-gateway.menu.UploadSpeed.921600=921600 -esp32-gateway.menu.UploadSpeed.921600.upload.speed=921600 -esp32-gateway.menu.UploadSpeed.115200=115200 -esp32-gateway.menu.UploadSpeed.115200.upload.speed=115200 - -esp32-gateway.menu.PartitionScheme.default=Default -esp32-gateway.menu.PartitionScheme.default.build.partitions=default -esp32-gateway.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32-gateway.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32-gateway.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32-gateway.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32-gateway.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32-gateway.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32-gateway.menu.DebugLevel.none=None -esp32-gateway.menu.DebugLevel.none.build.code_debug=0 -esp32-gateway.menu.DebugLevel.error=Error -esp32-gateway.menu.DebugLevel.error.build.code_debug=1 -esp32-gateway.menu.DebugLevel.warn=Warn -esp32-gateway.menu.DebugLevel.warn.build.code_debug=2 -esp32-gateway.menu.DebugLevel.info=Info -esp32-gateway.menu.DebugLevel.info.build.code_debug=3 -esp32-gateway.menu.DebugLevel.debug=Debug -esp32-gateway.menu.DebugLevel.debug.build.code_debug=4 -esp32-gateway.menu.DebugLevel.verbose=Verbose -esp32-gateway.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-gateway.menu.EraseFlash.none=Disabled -esp32-gateway.menu.EraseFlash.none.upload.erase_cmd= -esp32-gateway.menu.EraseFlash.all=Enabled -esp32-gateway.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-poe.name=OLIMEX ESP32-PoE - -esp32-poe.bootloader.tool=esptool_py -esp32-poe.bootloader.tool.default=esptool_py - -esp32-poe.upload.tool=esptool_py -esp32-poe.upload.tool.default=esptool_py -esp32-poe.upload.tool.network=esp_ota - -esp32-poe.upload.maximum_size=1310720 -esp32-poe.upload.maximum_data_size=327680 -esp32-poe.upload.flags= -esp32-poe.upload.extra_flags= - -esp32-poe.serial.disableDTR=true -esp32-poe.serial.disableRTS=true - -esp32-poe.build.tarch=xtensa -esp32-poe.build.bootloader_addr=0x1000 -esp32-poe.build.target=esp32 -esp32-poe.build.mcu=esp32 -esp32-poe.build.core=esp32 -esp32-poe.build.variant=esp32-poe -esp32-poe.build.board=ESP32_POE - -esp32-poe.build.f_cpu=240000000L -esp32-poe.build.flash_mode=dio -esp32-poe.build.flash_size=4MB -esp32-poe.build.boot=dio -esp32-poe.build.partitions=default -esp32-poe.build.defines= - -esp32-poe.menu.FlashFreq.80=80MHz -esp32-poe.menu.FlashFreq.80.build.flash_freq=80m -esp32-poe.menu.FlashFreq.40=40MHz -esp32-poe.menu.FlashFreq.40.build.flash_freq=40m - -esp32-poe.menu.UploadSpeed.921600=921600 -esp32-poe.menu.UploadSpeed.921600.upload.speed=921600 -esp32-poe.menu.UploadSpeed.115200=115200 -esp32-poe.menu.UploadSpeed.115200.upload.speed=115200 -esp32-poe.menu.UploadSpeed.256000.windows=256000 -esp32-poe.menu.UploadSpeed.256000.upload.speed=256000 -esp32-poe.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-poe.menu.UploadSpeed.230400=230400 -esp32-poe.menu.UploadSpeed.230400.upload.speed=230400 -esp32-poe.menu.UploadSpeed.460800.linux=460800 -esp32-poe.menu.UploadSpeed.460800.macosx=460800 -esp32-poe.menu.UploadSpeed.460800.upload.speed=460800 -esp32-poe.menu.UploadSpeed.512000.windows=512000 -esp32-poe.menu.UploadSpeed.512000.upload.speed=512000 - -esp32-poe.menu.PartitionScheme.default=Default -esp32-poe.menu.PartitionScheme.default.build.partitions=default -esp32-poe.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32-poe.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32-poe.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32-poe.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32-poe.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32-poe.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32-poe.menu.DebugLevel.none=None -esp32-poe.menu.DebugLevel.none.build.code_debug=0 -esp32-poe.menu.DebugLevel.error=Error -esp32-poe.menu.DebugLevel.error.build.code_debug=1 -esp32-poe.menu.DebugLevel.warn=Warn -esp32-poe.menu.DebugLevel.warn.build.code_debug=2 -esp32-poe.menu.DebugLevel.info=Info -esp32-poe.menu.DebugLevel.info.build.code_debug=3 -esp32-poe.menu.DebugLevel.debug=Debug -esp32-poe.menu.DebugLevel.debug.build.code_debug=4 -esp32-poe.menu.DebugLevel.verbose=Verbose -esp32-poe.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-poe.menu.EraseFlash.none=Disabled -esp32-poe.menu.EraseFlash.none.upload.erase_cmd= -esp32-poe.menu.EraseFlash.all=Enabled -esp32-poe.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-poe-iso.name=OLIMEX ESP32-PoE-ISO - -esp32-poe-iso.bootloader.tool=esptool_py -esp32-poe-iso.bootloader.tool.default=esptool_py - -esp32-poe-iso.upload.tool=esptool_py -esp32-poe-iso.upload.tool.default=esptool_py -esp32-poe-iso.upload.tool.network=esp_ota - -esp32-poe-iso.upload.maximum_size=1310720 -esp32-poe-iso.upload.maximum_data_size=327680 -esp32-poe-iso.upload.flags= -esp32-poe-iso.upload.extra_flags= - -esp32-poe-iso.serial.disableDTR=true -esp32-poe-iso.serial.disableRTS=true - -esp32-poe-iso.build.tarch=xtensa -esp32-poe-iso.build.bootloader_addr=0x1000 -esp32-poe-iso.build.target=esp32 -esp32-poe-iso.build.mcu=esp32 -esp32-poe-iso.build.core=esp32 -esp32-poe-iso.build.variant=esp32-poe-iso -esp32-poe-iso.build.board=ESP32_POE_ISO - -esp32-poe-iso.build.f_cpu=240000000L -esp32-poe-iso.build.flash_mode=dio -esp32-poe-iso.build.flash_size=4MB -esp32-poe-iso.build.boot=dio -esp32-poe-iso.build.partitions=default -esp32-poe-iso.build.defines= - -esp32-poe-iso.menu.FlashFreq.80=80MHz -esp32-poe-iso.menu.FlashFreq.80.build.flash_freq=80m -esp32-poe-iso.menu.FlashFreq.40=40MHz -esp32-poe-iso.menu.FlashFreq.40.build.flash_freq=40m - -esp32-poe-iso.menu.UploadSpeed.921600=921600 -esp32-poe-iso.menu.UploadSpeed.921600.upload.speed=921600 -esp32-poe-iso.menu.UploadSpeed.115200=115200 -esp32-poe-iso.menu.UploadSpeed.115200.upload.speed=115200 -esp32-poe-iso.menu.UploadSpeed.256000.windows=256000 -esp32-poe-iso.menu.UploadSpeed.256000.upload.speed=256000 -esp32-poe-iso.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-poe-iso.menu.UploadSpeed.230400=230400 -esp32-poe-iso.menu.UploadSpeed.230400.upload.speed=230400 -esp32-poe-iso.menu.UploadSpeed.460800.linux=460800 -esp32-poe-iso.menu.UploadSpeed.460800.macosx=460800 -esp32-poe-iso.menu.UploadSpeed.460800.upload.speed=460800 -esp32-poe-iso.menu.UploadSpeed.512000.windows=512000 -esp32-poe-iso.menu.UploadSpeed.512000.upload.speed=512000 - -esp32-poe-iso.menu.PartitionScheme.default=Default -esp32-poe-iso.menu.PartitionScheme.default.build.partitions=default -esp32-poe-iso.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32-poe-iso.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32-poe-iso.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32-poe-iso.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32-poe-iso.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32-poe-iso.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -esp32-poe-iso.menu.DebugLevel.none=None -esp32-poe-iso.menu.DebugLevel.none.build.code_debug=0 -esp32-poe-iso.menu.DebugLevel.error=Error -esp32-poe-iso.menu.DebugLevel.error.build.code_debug=1 -esp32-poe-iso.menu.DebugLevel.warn=Warn -esp32-poe-iso.menu.DebugLevel.warn.build.code_debug=2 -esp32-poe-iso.menu.DebugLevel.info=Info -esp32-poe-iso.menu.DebugLevel.info.build.code_debug=3 -esp32-poe-iso.menu.DebugLevel.debug=Debug -esp32-poe-iso.menu.DebugLevel.debug.build.code_debug=4 -esp32-poe-iso.menu.DebugLevel.verbose=Verbose -esp32-poe-iso.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-poe-iso.menu.EraseFlash.none=Disabled -esp32-poe-iso.menu.EraseFlash.none.upload.erase_cmd= -esp32-poe-iso.menu.EraseFlash.all=Enabled -esp32-poe-iso.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-devkitlipo.name=OLIMEX ESP32-DevKit-LiPo - -esp32-devkitlipo.bootloader.tool=esptool_py -esp32-devkitlipo.bootloader.tool.default=esptool_py - -esp32-devkitlipo.upload.tool=esptool_py -esp32-devkitlipo.upload.tool.default=esptool_py -esp32-devkitlipo.upload.tool.network=esp_ota - -esp32-devkitlipo.upload.maximum_size=1310720 -esp32-devkitlipo.upload.maximum_data_size=327680 -esp32-devkitlipo.upload.flags= -esp32-devkitlipo.upload.extra_flags= - -esp32-devkitlipo.serial.disableDTR=true -esp32-devkitlipo.serial.disableRTS=true - -esp32-devkitlipo.build.tarch=xtensa -esp32-devkitlipo.build.bootloader_addr=0x1000 -esp32-devkitlipo.build.target=esp32 -esp32-devkitlipo.build.mcu=esp32 -esp32-devkitlipo.build.core=esp32 -esp32-devkitlipo.build.variant=esp32-devkit-lipo -esp32-devkitlipo.build.board=ESP32_DEVKIT_LIPO - -esp32-devkitlipo.build.f_cpu=240000000L -esp32-devkitlipo.build.flash_size=4MB -esp32-devkitlipo.build.flash_freq=40m -esp32-devkitlipo.build.flash_mode=dio -esp32-devkitlipo.build.boot=dio -esp32-devkitlipo.build.partitions=default -esp32-devkitlipo.build.defines= - -esp32-devkitlipo.menu.PartitionScheme.default=Default -esp32-devkitlipo.menu.PartitionScheme.default.build.partitions=default -esp32-devkitlipo.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -esp32-devkitlipo.menu.PartitionScheme.minimal.build.partitions=minimal -esp32-devkitlipo.menu.PartitionScheme.no_ota=No OTA (Large APP) -esp32-devkitlipo.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32-devkitlipo.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32-devkitlipo.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA) -esp32-devkitlipo.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32-devkitlipo.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32-devkitlipo.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -esp32-devkitlipo.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32-devkitlipo.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32-devkitlipo.menu.PartitionScheme.fatflash=16M Fat -esp32-devkitlipo.menu.PartitionScheme.fatflash.build.partitions=ffat - -esp32-devkitlipo.menu.FlashMode.qio=QIO -esp32-devkitlipo.menu.FlashMode.qio.build.flash_mode=dio -esp32-devkitlipo.menu.FlashMode.qio.build.boot=qio -esp32-devkitlipo.menu.FlashMode.dio=DIO -esp32-devkitlipo.menu.FlashMode.dio.build.flash_mode=dio -esp32-devkitlipo.menu.FlashMode.dio.build.boot=dio - -esp32-devkitlipo.menu.FlashFreq.80=80MHz -esp32-devkitlipo.menu.FlashFreq.80.build.flash_freq=80m -esp32-devkitlipo.menu.FlashFreq.40=40MHz -esp32-devkitlipo.menu.FlashFreq.40.build.flash_freq=40m - -esp32-devkitlipo.menu.UploadSpeed.921600=921600 -esp32-devkitlipo.menu.UploadSpeed.921600.upload.speed=921600 -esp32-devkitlipo.menu.UploadSpeed.115200=115200 -esp32-devkitlipo.menu.UploadSpeed.115200.upload.speed=115200 -esp32-devkitlipo.menu.UploadSpeed.256000.windows=256000 -esp32-devkitlipo.menu.UploadSpeed.256000.upload.speed=256000 -esp32-devkitlipo.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-devkitlipo.menu.UploadSpeed.230400=230400 -esp32-devkitlipo.menu.UploadSpeed.230400.upload.speed=230400 -esp32-devkitlipo.menu.UploadSpeed.460800.linux=460800 -esp32-devkitlipo.menu.UploadSpeed.460800.macosx=460800 -esp32-devkitlipo.menu.UploadSpeed.460800.upload.speed=460800 -esp32-devkitlipo.menu.UploadSpeed.512000.windows=512000 -esp32-devkitlipo.menu.UploadSpeed.512000.upload.speed=512000 - -esp32-devkitlipo.menu.DebugLevel.none=None -esp32-devkitlipo.menu.DebugLevel.none.build.code_debug=0 -esp32-devkitlipo.menu.DebugLevel.error=Error -esp32-devkitlipo.menu.DebugLevel.error.build.code_debug=1 -esp32-devkitlipo.menu.DebugLevel.warn=Warn -esp32-devkitlipo.menu.DebugLevel.warn.build.code_debug=2 -esp32-devkitlipo.menu.DebugLevel.info=Info -esp32-devkitlipo.menu.DebugLevel.info.build.code_debug=3 -esp32-devkitlipo.menu.DebugLevel.debug=Debug -esp32-devkitlipo.menu.DebugLevel.debug.build.code_debug=4 -esp32-devkitlipo.menu.DebugLevel.verbose=Verbose -esp32-devkitlipo.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-devkitlipo.menu.EraseFlash.none=Disabled -esp32-devkitlipo.menu.EraseFlash.none.upload.erase_cmd= -esp32-devkitlipo.menu.EraseFlash.all=Enabled -esp32-devkitlipo.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s2-devkitlipo.name=OLIMEX ESP32-S2-DevKit-Lipo -esp32s2-devkitlipo.vid.0=0x303a -esp32s2-devkitlipo.pid.0=0x0002 - -esp32s2-devkitlipo.bootloader.tool=esptool_py -esp32s2-devkitlipo.bootloader.tool.default=esptool_py - -esp32s2-devkitlipo.upload.tool=esptool_py -esp32s2-devkitlipo.upload.tool.default=esptool_py -esp32s2-devkitlipo.upload.tool.network=esp_ota - -esp32s2-devkitlipo.upload.maximum_size=1310720 -esp32s2-devkitlipo.upload.maximum_data_size=327680 -esp32s2-devkitlipo.upload.flags= -esp32s2-devkitlipo.upload.extra_flags= -esp32s2-devkitlipo.upload.use_1200bps_touch=false -esp32s2-devkitlipo.upload.wait_for_upload_port=false - -esp32s2-devkitlipo.serial.disableDTR=false -esp32s2-devkitlipo.serial.disableRTS=false - -esp32s2-devkitlipo.build.tarch=xtensa -esp32s2-devkitlipo.build.bootloader_addr=0x1000 -esp32s2-devkitlipo.build.target=esp32s2 -esp32s2-devkitlipo.build.mcu=esp32s2 -esp32s2-devkitlipo.build.core=esp32 -esp32s2-devkitlipo.build.variant=esp32s2-devkit-lipo -esp32s2-devkitlipo.build.board=ESP32S2_DEVKIT_LIPO - -esp32s2-devkitlipo.build.cdc_on_boot=0 -esp32s2-devkitlipo.build.msc_on_boot=0 -esp32s2-devkitlipo.build.dfu_on_boot=0 -esp32s2-devkitlipo.build.f_cpu=240000000L -esp32s2-devkitlipo.build.flash_size=4MB -esp32s2-devkitlipo.build.flash_freq=80m -esp32s2-devkitlipo.build.flash_mode=dio -esp32s2-devkitlipo.build.boot=qio -esp32s2-devkitlipo.build.partitions=default -esp32s2-devkitlipo.build.defines= - -esp32s2-devkitlipo.menu.JTAGAdapter.default=Disabled -esp32s2-devkitlipo.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s2-devkitlipo.menu.JTAGAdapter.external=FTDI Adapter -esp32s2-devkitlipo.menu.JTAGAdapter.external.build.openocdscript=esp32s2-kaluga-1.cfg -esp32s2-devkitlipo.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s2-devkitlipo.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s2-devkitlipo.menu.JTAGAdapter.bridge.build.openocdscript=esp32s2-bridge.cfg -esp32s2-devkitlipo.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s2-devkitlipo.menu.CDCOnBoot.default=Disabled -esp32s2-devkitlipo.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32s2-devkitlipo.menu.CDCOnBoot.cdc=Enabled -esp32s2-devkitlipo.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32s2-devkitlipo.menu.MSCOnBoot.default=Disabled -esp32s2-devkitlipo.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s2-devkitlipo.menu.MSCOnBoot.msc=Enabled -esp32s2-devkitlipo.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s2-devkitlipo.menu.DFUOnBoot.default=Disabled -esp32s2-devkitlipo.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s2-devkitlipo.menu.DFUOnBoot.dfu=Enabled -esp32s2-devkitlipo.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s2-devkitlipo.menu.UploadMode.default=UART0 -esp32s2-devkitlipo.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s2-devkitlipo.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s2-devkitlipo.menu.UploadMode.cdc=Internal USB -esp32s2-devkitlipo.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s2-devkitlipo.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s2-devkitlipo.menu.PSRAM.disabled=Disabled (WROOM) -esp32s2-devkitlipo.menu.PSRAM.disabled.build.defines= -esp32s2-devkitlipo.menu.PSRAM.enabled=Enabled (WROVER) -esp32s2-devkitlipo.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -esp32s2-devkitlipo.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.default.build.partitions=default -esp32s2-devkitlipo.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s2-devkitlipo.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s2-devkitlipo.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s2-devkitlipo.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s2-devkitlipo.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s2-devkitlipo.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s2-devkitlipo.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s2-devkitlipo.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s2-devkitlipo.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s2-devkitlipo.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s2-devkitlipo.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s2-devkitlipo.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s2-devkitlipo.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s2-devkitlipo.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s2-devkitlipo.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s2-devkitlipo.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s2-devkitlipo.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s2-devkitlipo.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s2-devkitlipo.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s2-devkitlipo.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s2-devkitlipo.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s2-devkitlipo.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s2-devkitlipo.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s2-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s2-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s2-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s2-devkitlipo.menu.PartitionScheme.rainmaker=RainMaker -esp32s2-devkitlipo.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s2-devkitlipo.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s2-devkitlipo.menu.PartitionScheme.custom=Custom -esp32s2-devkitlipo.menu.PartitionScheme.custom.build.partitions= -esp32s2-devkitlipo.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s2-devkitlipo.menu.CPUFreq.240=240MHz (WiFi) -esp32s2-devkitlipo.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s2-devkitlipo.menu.CPUFreq.160=160MHz (WiFi) -esp32s2-devkitlipo.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s2-devkitlipo.menu.CPUFreq.80=80MHz (WiFi) -esp32s2-devkitlipo.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s2-devkitlipo.menu.CPUFreq.40=40MHz -esp32s2-devkitlipo.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s2-devkitlipo.menu.CPUFreq.20=20MHz -esp32s2-devkitlipo.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s2-devkitlipo.menu.CPUFreq.10=10MHz -esp32s2-devkitlipo.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s2-devkitlipo.menu.FlashMode.qio=QIO -esp32s2-devkitlipo.menu.FlashMode.qio.build.flash_mode=dio -esp32s2-devkitlipo.menu.FlashMode.qio.build.boot=qio -esp32s2-devkitlipo.menu.FlashMode.dio=DIO -esp32s2-devkitlipo.menu.FlashMode.dio.build.flash_mode=dio -esp32s2-devkitlipo.menu.FlashMode.dio.build.boot=dio -esp32s2-devkitlipo.menu.FlashMode.qout=QOUT -esp32s2-devkitlipo.menu.FlashMode.qout.build.flash_mode=dout -esp32s2-devkitlipo.menu.FlashMode.qout.build.boot=qout -esp32s2-devkitlipo.menu.FlashMode.dout=DOUT -esp32s2-devkitlipo.menu.FlashMode.dout.build.flash_mode=dout -esp32s2-devkitlipo.menu.FlashMode.dout.build.boot=dout - -esp32s2-devkitlipo.menu.FlashFreq.80=80MHz -esp32s2-devkitlipo.menu.FlashFreq.80.build.flash_freq=80m -esp32s2-devkitlipo.menu.FlashFreq.40=40MHz -esp32s2-devkitlipo.menu.FlashFreq.40.build.flash_freq=40m - -esp32s2-devkitlipo.menu.FlashSize.4M=4MB (32Mb) -esp32s2-devkitlipo.menu.FlashSize.4M.build.flash_size=4MB -esp32s2-devkitlipo.menu.FlashSize.8M=8MB (64Mb) -esp32s2-devkitlipo.menu.FlashSize.8M.build.flash_size=8MB -esp32s2-devkitlipo.menu.FlashSize.8M.build.partitions=default_8MB -esp32s2-devkitlipo.menu.FlashSize.2M=2MB (16Mb) -esp32s2-devkitlipo.menu.FlashSize.2M.build.flash_size=2MB -esp32s2-devkitlipo.menu.FlashSize.2M.build.partitions=minimal -esp32s2-devkitlipo.menu.FlashSize.16M=16MB (128Mb) -esp32s2-devkitlipo.menu.FlashSize.16M.build.flash_size=16MB - -esp32s2-devkitlipo.menu.UploadSpeed.921600=921600 -esp32s2-devkitlipo.menu.UploadSpeed.921600.upload.speed=921600 -esp32s2-devkitlipo.menu.UploadSpeed.115200=115200 -esp32s2-devkitlipo.menu.UploadSpeed.115200.upload.speed=115200 -esp32s2-devkitlipo.menu.UploadSpeed.256000.windows=256000 -esp32s2-devkitlipo.menu.UploadSpeed.256000.upload.speed=256000 -esp32s2-devkitlipo.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s2-devkitlipo.menu.UploadSpeed.230400=230400 -esp32s2-devkitlipo.menu.UploadSpeed.230400.upload.speed=230400 -esp32s2-devkitlipo.menu.UploadSpeed.460800.linux=460800 -esp32s2-devkitlipo.menu.UploadSpeed.460800.macosx=460800 -esp32s2-devkitlipo.menu.UploadSpeed.460800.upload.speed=460800 -esp32s2-devkitlipo.menu.UploadSpeed.512000.windows=512000 -esp32s2-devkitlipo.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s2-devkitlipo.menu.DebugLevel.none=None -esp32s2-devkitlipo.menu.DebugLevel.none.build.code_debug=0 -esp32s2-devkitlipo.menu.DebugLevel.error=Error -esp32s2-devkitlipo.menu.DebugLevel.error.build.code_debug=1 -esp32s2-devkitlipo.menu.DebugLevel.warn=Warn -esp32s2-devkitlipo.menu.DebugLevel.warn.build.code_debug=2 -esp32s2-devkitlipo.menu.DebugLevel.info=Info -esp32s2-devkitlipo.menu.DebugLevel.info.build.code_debug=3 -esp32s2-devkitlipo.menu.DebugLevel.debug=Debug -esp32s2-devkitlipo.menu.DebugLevel.debug.build.code_debug=4 -esp32s2-devkitlipo.menu.DebugLevel.verbose=Verbose -esp32s2-devkitlipo.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s2-devkitlipo.menu.EraseFlash.none=Disabled -esp32s2-devkitlipo.menu.EraseFlash.none.upload.erase_cmd= -esp32s2-devkitlipo.menu.EraseFlash.all=Enabled -esp32s2-devkitlipo.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s2-devkitlipo-usb.name=OLIMEX ESP32-S2-DevKit-Lipo-USB -esp32s2-devkitlipo-usb.vid.0=0x303a -esp32s2-devkitlipo-usb.pid.0=0x0002 - -esp32s2-devkitlipo-usb.bootloader.tool=esptool_py -esp32s2-devkitlipo-usb.bootloader.tool.default=esptool_py - -esp32s2-devkitlipo-usb.upload.tool=esptool_py -esp32s2-devkitlipo-usb.upload.tool.default=esptool_py -esp32s2-devkitlipo-usb.upload.tool.network=esp_ota - -esp32s2-devkitlipo-usb.upload.maximum_size=1310720 -esp32s2-devkitlipo-usb.upload.maximum_data_size=327680 -esp32s2-devkitlipo-usb.upload.flags= -esp32s2-devkitlipo-usb.upload.extra_flags= -esp32s2-devkitlipo-usb.upload.use_1200bps_touch=false -esp32s2-devkitlipo-usb.upload.wait_for_upload_port=false - -esp32s2-devkitlipo-usb.serial.disableDTR=false -esp32s2-devkitlipo-usb.serial.disableRTS=false - -esp32s2-devkitlipo-usb.build.tarch=xtensa -esp32s2-devkitlipo-usb.build.bootloader_addr=0x1000 -esp32s2-devkitlipo-usb.build.target=esp32s2 -esp32s2-devkitlipo-usb.build.mcu=esp32s2 -esp32s2-devkitlipo-usb.build.core=esp32 -esp32s2-devkitlipo-usb.build.variant=esp32s2-devkit-lipo-usb -esp32s2-devkitlipo-usb.build.board=ESP32S2_DEVKIT_LIPO_USB - -esp32s2-devkitlipo-usb.build.cdc_on_boot=0 -esp32s2-devkitlipo-usb.build.msc_on_boot=0 -esp32s2-devkitlipo-usb.build.dfu_on_boot=0 -esp32s2-devkitlipo-usb.build.f_cpu=240000000L -esp32s2-devkitlipo-usb.build.flash_size=4MB -esp32s2-devkitlipo-usb.build.flash_freq=80m -esp32s2-devkitlipo-usb.build.flash_mode=dio -esp32s2-devkitlipo-usb.build.boot=qio -esp32s2-devkitlipo-usb.build.partitions=default -esp32s2-devkitlipo-usb.build.defines= - -esp32s2-devkitlipo-usb.menu.JTAGAdapter.default=Disabled -esp32s2-devkitlipo-usb.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s2-devkitlipo-usb.menu.JTAGAdapter.external=FTDI Adapter -esp32s2-devkitlipo-usb.menu.JTAGAdapter.external.build.openocdscript=esp32s2-kaluga-1.cfg -esp32s2-devkitlipo-usb.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s2-devkitlipo-usb.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s2-devkitlipo-usb.menu.JTAGAdapter.bridge.build.openocdscript=esp32s2-bridge.cfg -esp32s2-devkitlipo-usb.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s2-devkitlipo-usb.menu.CDCOnBoot.default=Enabled -esp32s2-devkitlipo-usb.menu.CDCOnBoot.default.build.cdc_on_boot=1 -esp32s2-devkitlipo-usb.menu.CDCOnBoot.cdc=Disabled -esp32s2-devkitlipo-usb.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -esp32s2-devkitlipo-usb.menu.MSCOnBoot.default=Disabled -esp32s2-devkitlipo-usb.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s2-devkitlipo-usb.menu.MSCOnBoot.msc=Enabled -esp32s2-devkitlipo-usb.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s2-devkitlipo-usb.menu.DFUOnBoot.default=Enabled -esp32s2-devkitlipo-usb.menu.DFUOnBoot.default.build.dfu_on_boot=1 -esp32s2-devkitlipo-usb.menu.DFUOnBoot.dfu=Disabled -esp32s2-devkitlipo-usb.menu.DFUOnBoot.dfu.build.dfu_on_boot=0 - -esp32s2-devkitlipo-usb.menu.UploadMode.default=Internal USB -esp32s2-devkitlipo-usb.menu.UploadMode.default.upload.use_1200bps_touch=true -esp32s2-devkitlipo-usb.menu.UploadMode.default.upload.wait_for_upload_port=true -esp32s2-devkitlipo-usb.menu.UploadMode.UART0=UART0 -esp32s2-devkitlipo-usb.menu.UploadMode.UART0.upload.use_1200bps_touch=false -esp32s2-devkitlipo-usb.menu.UploadMode.UART0.upload.wait_for_upload_port=false - -esp32s2-devkitlipo-usb.menu.PSRAM.disabled=Disabled (WROOM) -esp32s2-devkitlipo-usb.menu.PSRAM.disabled.build.defines= -esp32s2-devkitlipo-usb.menu.PSRAM.enabled=Enabled (WROVER) -esp32s2-devkitlipo-usb.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -esp32s2-devkitlipo-usb.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.default.build.partitions=default -esp32s2-devkitlipo-usb.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s2-devkitlipo-usb.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s2-devkitlipo-usb.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s2-devkitlipo-usb.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s2-devkitlipo-usb.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s2-devkitlipo-usb.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s2-devkitlipo-usb.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s2-devkitlipo-usb.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s2-devkitlipo-usb.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s2-devkitlipo-usb.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s2-devkitlipo-usb.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s2-devkitlipo-usb.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s2-devkitlipo-usb.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s2-devkitlipo-usb.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s2-devkitlipo-usb.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s2-devkitlipo-usb.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s2-devkitlipo-usb.menu.PartitionScheme.rainmaker=RainMaker -esp32s2-devkitlipo-usb.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s2-devkitlipo-usb.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s2-devkitlipo-usb.menu.PartitionScheme.custom=Custom -esp32s2-devkitlipo-usb.menu.PartitionScheme.custom.build.partitions= -esp32s2-devkitlipo-usb.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s2-devkitlipo-usb.menu.CPUFreq.240=240MHz (WiFi) -esp32s2-devkitlipo-usb.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s2-devkitlipo-usb.menu.CPUFreq.160=160MHz (WiFi) -esp32s2-devkitlipo-usb.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s2-devkitlipo-usb.menu.CPUFreq.80=80MHz (WiFi) -esp32s2-devkitlipo-usb.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s2-devkitlipo-usb.menu.CPUFreq.40=40MHz -esp32s2-devkitlipo-usb.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s2-devkitlipo-usb.menu.CPUFreq.20=20MHz -esp32s2-devkitlipo-usb.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s2-devkitlipo-usb.menu.CPUFreq.10=10MHz -esp32s2-devkitlipo-usb.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s2-devkitlipo-usb.menu.FlashMode.qio=QIO -esp32s2-devkitlipo-usb.menu.FlashMode.qio.build.flash_mode=dio -esp32s2-devkitlipo-usb.menu.FlashMode.qio.build.boot=qio -esp32s2-devkitlipo-usb.menu.FlashMode.dio=DIO -esp32s2-devkitlipo-usb.menu.FlashMode.dio.build.flash_mode=dio -esp32s2-devkitlipo-usb.menu.FlashMode.dio.build.boot=dio -esp32s2-devkitlipo-usb.menu.FlashMode.qout=QOUT -esp32s2-devkitlipo-usb.menu.FlashMode.qout.build.flash_mode=dout -esp32s2-devkitlipo-usb.menu.FlashMode.qout.build.boot=qout -esp32s2-devkitlipo-usb.menu.FlashMode.dout=DOUT -esp32s2-devkitlipo-usb.menu.FlashMode.dout.build.flash_mode=dout -esp32s2-devkitlipo-usb.menu.FlashMode.dout.build.boot=dout - -esp32s2-devkitlipo-usb.menu.FlashFreq.80=80MHz -esp32s2-devkitlipo-usb.menu.FlashFreq.80.build.flash_freq=80m -esp32s2-devkitlipo-usb.menu.FlashFreq.40=40MHz -esp32s2-devkitlipo-usb.menu.FlashFreq.40.build.flash_freq=40m - -esp32s2-devkitlipo-usb.menu.FlashSize.4M=4MB (32Mb) -esp32s2-devkitlipo-usb.menu.FlashSize.4M.build.flash_size=4MB -esp32s2-devkitlipo-usb.menu.FlashSize.8M=8MB (64Mb) -esp32s2-devkitlipo-usb.menu.FlashSize.8M.build.flash_size=8MB -esp32s2-devkitlipo-usb.menu.FlashSize.8M.build.partitions=default_8MB -esp32s2-devkitlipo-usb.menu.FlashSize.2M=2MB (16Mb) -esp32s2-devkitlipo-usb.menu.FlashSize.2M.build.flash_size=2MB -esp32s2-devkitlipo-usb.menu.FlashSize.2M.build.partitions=minimal -esp32s2-devkitlipo-usb.menu.FlashSize.16M=16MB (128Mb) -esp32s2-devkitlipo-usb.menu.FlashSize.16M.build.flash_size=16MB - -esp32s2-devkitlipo-usb.menu.UploadSpeed.921600=921600 -esp32s2-devkitlipo-usb.menu.UploadSpeed.921600.upload.speed=921600 -esp32s2-devkitlipo-usb.menu.UploadSpeed.115200=115200 -esp32s2-devkitlipo-usb.menu.UploadSpeed.115200.upload.speed=115200 -esp32s2-devkitlipo-usb.menu.UploadSpeed.256000.windows=256000 -esp32s2-devkitlipo-usb.menu.UploadSpeed.256000.upload.speed=256000 -esp32s2-devkitlipo-usb.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s2-devkitlipo-usb.menu.UploadSpeed.230400=230400 -esp32s2-devkitlipo-usb.menu.UploadSpeed.230400.upload.speed=230400 -esp32s2-devkitlipo-usb.menu.UploadSpeed.460800.linux=460800 -esp32s2-devkitlipo-usb.menu.UploadSpeed.460800.macosx=460800 -esp32s2-devkitlipo-usb.menu.UploadSpeed.460800.upload.speed=460800 -esp32s2-devkitlipo-usb.menu.UploadSpeed.512000.windows=512000 -esp32s2-devkitlipo-usb.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s2-devkitlipo-usb.menu.DebugLevel.none=None -esp32s2-devkitlipo-usb.menu.DebugLevel.none.build.code_debug=0 -esp32s2-devkitlipo-usb.menu.DebugLevel.error=Error -esp32s2-devkitlipo-usb.menu.DebugLevel.error.build.code_debug=1 -esp32s2-devkitlipo-usb.menu.DebugLevel.warn=Warn -esp32s2-devkitlipo-usb.menu.DebugLevel.warn.build.code_debug=2 -esp32s2-devkitlipo-usb.menu.DebugLevel.info=Info -esp32s2-devkitlipo-usb.menu.DebugLevel.info.build.code_debug=3 -esp32s2-devkitlipo-usb.menu.DebugLevel.debug=Debug -esp32s2-devkitlipo-usb.menu.DebugLevel.debug.build.code_debug=4 -esp32s2-devkitlipo-usb.menu.DebugLevel.verbose=Verbose -esp32s2-devkitlipo-usb.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s2-devkitlipo-usb.menu.EraseFlash.none=Disabled -esp32s2-devkitlipo-usb.menu.EraseFlash.none.upload.erase_cmd= -esp32s2-devkitlipo-usb.menu.EraseFlash.all=Enabled -esp32s2-devkitlipo-usb.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32s3-devkitlipo.name=OLIMEX ESP32-S3-DevKit-Lipo -esp32s3-devkitlipo.vid.0=0x303a -esp32s3-devkitlipo.pid.0=0x1001 - -esp32s3-devkitlipo.bootloader.tool=esptool_py -esp32s3-devkitlipo.bootloader.tool.default=esptool_py - -esp32s3-devkitlipo.upload.tool=esptool_py -esp32s3-devkitlipo.upload.tool.default=esptool_py -esp32s3-devkitlipo.upload.tool.network=esp_ota - -esp32s3-devkitlipo.upload.maximum_size=1310720 -esp32s3-devkitlipo.upload.maximum_data_size=327680 -esp32s3-devkitlipo.upload.flags= -esp32s3-devkitlipo.upload.extra_flags= -esp32s3-devkitlipo.upload.use_1200bps_touch=false -esp32s3-devkitlipo.upload.wait_for_upload_port=false - -esp32s3-devkitlipo.serial.disableDTR=false -esp32s3-devkitlipo.serial.disableRTS=false - -esp32s3-devkitlipo.build.tarch=xtensa -esp32s3-devkitlipo.build.bootloader_addr=0x0 -esp32s3-devkitlipo.build.target=esp32s3 -esp32s3-devkitlipo.build.mcu=esp32s3 -esp32s3-devkitlipo.build.core=esp32 -esp32s3-devkitlipo.build.variant=esp32s3-devkit-lipo -esp32s3-devkitlipo.build.board=ESP32S3_DEVKIT_LIPO - -esp32s3-devkitlipo.build.usb_mode=1 -esp32s3-devkitlipo.build.cdc_on_boot=0 -esp32s3-devkitlipo.build.msc_on_boot=0 -esp32s3-devkitlipo.build.dfu_on_boot=0 -esp32s3-devkitlipo.build.f_cpu=240000000L -esp32s3-devkitlipo.build.flash_size=4MB -esp32s3-devkitlipo.build.flash_freq=80m -esp32s3-devkitlipo.build.flash_mode=dio -esp32s3-devkitlipo.build.boot=qio -esp32s3-devkitlipo.build.boot_freq=80m -esp32s3-devkitlipo.build.partitions=default -esp32s3-devkitlipo.build.defines= -esp32s3-devkitlipo.build.loop_core= -esp32s3-devkitlipo.build.event_core= -esp32s3-devkitlipo.build.psram_type=qspi -esp32s3-devkitlipo.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -esp32s3-devkitlipo.menu.JTAGAdapter.default=Disabled -esp32s3-devkitlipo.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32s3-devkitlipo.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32s3-devkitlipo.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -esp32s3-devkitlipo.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32s3-devkitlipo.menu.JTAGAdapter.external=FTDI Adapter -esp32s3-devkitlipo.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -esp32s3-devkitlipo.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32s3-devkitlipo.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32s3-devkitlipo.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -esp32s3-devkitlipo.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32s3-devkitlipo.menu.PSRAM.disabled=Disabled -esp32s3-devkitlipo.menu.PSRAM.disabled.build.defines= -esp32s3-devkitlipo.menu.PSRAM.disabled.build.psram_type=qspi -esp32s3-devkitlipo.menu.PSRAM.enabled=QSPI PSRAM -esp32s3-devkitlipo.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -esp32s3-devkitlipo.menu.PSRAM.enabled.build.psram_type=qspi -esp32s3-devkitlipo.menu.PSRAM.opi=OPI PSRAM -esp32s3-devkitlipo.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -esp32s3-devkitlipo.menu.PSRAM.opi.build.psram_type=opi - -esp32s3-devkitlipo.menu.FlashMode.qio=QIO 80MHz -esp32s3-devkitlipo.menu.FlashMode.qio.build.flash_mode=dio -esp32s3-devkitlipo.menu.FlashMode.qio.build.boot=qio -esp32s3-devkitlipo.menu.FlashMode.qio.build.boot_freq=80m -esp32s3-devkitlipo.menu.FlashMode.qio.build.flash_freq=80m -esp32s3-devkitlipo.menu.FlashMode.qio120=QIO 120MHz -esp32s3-devkitlipo.menu.FlashMode.qio120.build.flash_mode=dio -esp32s3-devkitlipo.menu.FlashMode.qio120.build.boot=qio -esp32s3-devkitlipo.menu.FlashMode.qio120.build.boot_freq=120m -esp32s3-devkitlipo.menu.FlashMode.qio120.build.flash_freq=80m -esp32s3-devkitlipo.menu.FlashMode.dio=DIO 80MHz -esp32s3-devkitlipo.menu.FlashMode.dio.build.flash_mode=dio -esp32s3-devkitlipo.menu.FlashMode.dio.build.boot=dio -esp32s3-devkitlipo.menu.FlashMode.dio.build.boot_freq=80m -esp32s3-devkitlipo.menu.FlashMode.dio.build.flash_freq=80m -esp32s3-devkitlipo.menu.FlashMode.opi=OPI 80MHz -esp32s3-devkitlipo.menu.FlashMode.opi.build.flash_mode=dout -esp32s3-devkitlipo.menu.FlashMode.opi.build.boot=opi -esp32s3-devkitlipo.menu.FlashMode.opi.build.boot_freq=80m -esp32s3-devkitlipo.menu.FlashMode.opi.build.flash_freq=80m - -esp32s3-devkitlipo.menu.FlashSize.4M=4MB (32Mb) -esp32s3-devkitlipo.menu.FlashSize.4M.build.flash_size=4MB -esp32s3-devkitlipo.menu.FlashSize.8M=8MB (64Mb) -esp32s3-devkitlipo.menu.FlashSize.8M.build.flash_size=8MB -esp32s3-devkitlipo.menu.FlashSize.8M.build.partitions=default_8MB -esp32s3-devkitlipo.menu.FlashSize.16M=16MB (128Mb) -esp32s3-devkitlipo.menu.FlashSize.16M.build.flash_size=16MB -esp32s3-devkitlipo.menu.FlashSize.32M=32MB (256Mb) -esp32s3-devkitlipo.menu.FlashSize.32M.build.flash_size=32MB -esp32s3-devkitlipo.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -esp32s3-devkitlipo.menu.LoopCore.1=Core 1 -esp32s3-devkitlipo.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3-devkitlipo.menu.LoopCore.0=Core 0 -esp32s3-devkitlipo.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32s3-devkitlipo.menu.EventsCore.1=Core 1 -esp32s3-devkitlipo.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32s3-devkitlipo.menu.EventsCore.0=Core 0 -esp32s3-devkitlipo.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32s3-devkitlipo.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3-devkitlipo.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3-devkitlipo.menu.USBMode.default=USB-OTG (TinyUSB) -esp32s3-devkitlipo.menu.USBMode.default.build.usb_mode=0 - -esp32s3-devkitlipo.menu.CDCOnBoot.default=Disabled -esp32s3-devkitlipo.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32s3-devkitlipo.menu.CDCOnBoot.cdc=Enabled -esp32s3-devkitlipo.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32s3-devkitlipo.menu.MSCOnBoot.default=Disabled -esp32s3-devkitlipo.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s3-devkitlipo.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -esp32s3-devkitlipo.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s3-devkitlipo.menu.DFUOnBoot.default=Disabled -esp32s3-devkitlipo.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s3-devkitlipo.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -esp32s3-devkitlipo.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s3-devkitlipo.menu.UploadMode.default=UART0 / Hardware CDC -esp32s3-devkitlipo.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s3-devkitlipo.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s3-devkitlipo.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -esp32s3-devkitlipo.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s3-devkitlipo.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s3-devkitlipo.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.default.build.partitions=default -esp32s3-devkitlipo.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32s3-devkitlipo.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3-devkitlipo.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3-devkitlipo.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.minimal.build.partitions=minimal -esp32s3-devkitlipo.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32s3-devkitlipo.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32s3-devkitlipo.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32s3-devkitlipo.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32s3-devkitlipo.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32s3-devkitlipo.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32s3-devkitlipo.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32s3-devkitlipo.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32s3-devkitlipo.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32s3-devkitlipo.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32s3-devkitlipo.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32s3-devkitlipo.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32s3-devkitlipo.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32s3-devkitlipo.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32s3-devkitlipo.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32s3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32s3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32s3-devkitlipo.menu.PartitionScheme.rainmaker=RainMaker -esp32s3-devkitlipo.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32s3-devkitlipo.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32s3-devkitlipo.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -esp32s3-devkitlipo.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -esp32s3-devkitlipo.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -esp32s3-devkitlipo.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -esp32s3-devkitlipo.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -esp32s3-devkitlipo.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -esp32s3-devkitlipo.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -esp32s3-devkitlipo.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -esp32s3-devkitlipo.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -esp32s3-devkitlipo.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -esp32s3-devkitlipo.menu.PartitionScheme.custom=Custom -esp32s3-devkitlipo.menu.PartitionScheme.custom.build.partitions= -esp32s3-devkitlipo.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32s3-devkitlipo.menu.CPUFreq.240=240MHz (WiFi) -esp32s3-devkitlipo.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s3-devkitlipo.menu.CPUFreq.160=160MHz (WiFi) -esp32s3-devkitlipo.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s3-devkitlipo.menu.CPUFreq.80=80MHz (WiFi) -esp32s3-devkitlipo.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s3-devkitlipo.menu.CPUFreq.40=40MHz -esp32s3-devkitlipo.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s3-devkitlipo.menu.CPUFreq.20=20MHz -esp32s3-devkitlipo.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s3-devkitlipo.menu.CPUFreq.10=10MHz -esp32s3-devkitlipo.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s3-devkitlipo.menu.UploadSpeed.921600=921600 -esp32s3-devkitlipo.menu.UploadSpeed.921600.upload.speed=921600 -esp32s3-devkitlipo.menu.UploadSpeed.115200=115200 -esp32s3-devkitlipo.menu.UploadSpeed.115200.upload.speed=115200 -esp32s3-devkitlipo.menu.UploadSpeed.256000.windows=256000 -esp32s3-devkitlipo.menu.UploadSpeed.256000.upload.speed=256000 -esp32s3-devkitlipo.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s3-devkitlipo.menu.UploadSpeed.230400=230400 -esp32s3-devkitlipo.menu.UploadSpeed.230400.upload.speed=230400 -esp32s3-devkitlipo.menu.UploadSpeed.460800.linux=460800 -esp32s3-devkitlipo.menu.UploadSpeed.460800.macosx=460800 -esp32s3-devkitlipo.menu.UploadSpeed.460800.upload.speed=460800 -esp32s3-devkitlipo.menu.UploadSpeed.512000.windows=512000 -esp32s3-devkitlipo.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s3-devkitlipo.menu.DebugLevel.none=None -esp32s3-devkitlipo.menu.DebugLevel.none.build.code_debug=0 -esp32s3-devkitlipo.menu.DebugLevel.error=Error -esp32s3-devkitlipo.menu.DebugLevel.error.build.code_debug=1 -esp32s3-devkitlipo.menu.DebugLevel.warn=Warn -esp32s3-devkitlipo.menu.DebugLevel.warn.build.code_debug=2 -esp32s3-devkitlipo.menu.DebugLevel.info=Info -esp32s3-devkitlipo.menu.DebugLevel.info.build.code_debug=3 -esp32s3-devkitlipo.menu.DebugLevel.debug=Debug -esp32s3-devkitlipo.menu.DebugLevel.debug.build.code_debug=4 -esp32s3-devkitlipo.menu.DebugLevel.verbose=Verbose -esp32s3-devkitlipo.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3-devkitlipo.menu.EraseFlash.none=Disabled -esp32s3-devkitlipo.menu.EraseFlash.none.upload.erase_cmd= -esp32s3-devkitlipo.menu.EraseFlash.all=Enabled -esp32s3-devkitlipo.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32c3-devkitlipo.name=OLIMEX ESP32-C3-DevKit-Lipo -esp32c3-devkitlipo.vid.0=0x303a -esp32c3-devkitlipo.pid.0=0x1001 - -esp32c3-devkitlipo.bootloader.tool=esptool_py -esp32c3-devkitlipo.bootloader.tool.default=esptool_py - -esp32c3-devkitlipo.upload.tool=esptool_py -esp32c3-devkitlipo.upload.tool.default=esptool_py -esp32c3-devkitlipo.upload.tool.network=esp_ota - -esp32c3-devkitlipo.upload.maximum_size=1310720 -esp32c3-devkitlipo.upload.maximum_data_size=327680 -esp32c3-devkitlipo.upload.flags= -esp32c3-devkitlipo.upload.extra_flags= -esp32c3-devkitlipo.upload.use_1200bps_touch=false -esp32c3-devkitlipo.upload.wait_for_upload_port=false - -esp32c3-devkitlipo.serial.disableDTR=false -esp32c3-devkitlipo.serial.disableRTS=false - -esp32c3-devkitlipo.build.tarch=riscv32 -esp32c3-devkitlipo.build.target=esp -esp32c3-devkitlipo.build.mcu=esp32c3 -esp32c3-devkitlipo.build.core=esp32 -esp32c3-devkitlipo.build.variant=esp32c3-devkit-lipo -esp32c3-devkitlipo.build.board=ESP32C3_DEVKIT_LIPO -esp32c3-devkitlipo.build.bootloader_addr=0x0 - -esp32c3-devkitlipo.build.cdc_on_boot=0 -esp32c3-devkitlipo.build.f_cpu=160000000L -esp32c3-devkitlipo.build.flash_size=4MB -esp32c3-devkitlipo.build.flash_freq=80m -esp32c3-devkitlipo.build.flash_mode=qio -esp32c3-devkitlipo.build.boot=qio -esp32c3-devkitlipo.build.partitions=default -esp32c3-devkitlipo.build.defines= - -## IDE 2.0 Seems to not update the value -esp32c3-devkitlipo.menu.JTAGAdapter.default=Disabled -esp32c3-devkitlipo.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32c3-devkitlipo.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32c3-devkitlipo.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -esp32c3-devkitlipo.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32c3-devkitlipo.menu.JTAGAdapter.external=FTDI Adapter -esp32c3-devkitlipo.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -esp32c3-devkitlipo.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32c3-devkitlipo.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32c3-devkitlipo.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -esp32c3-devkitlipo.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32c3-devkitlipo.menu.CDCOnBoot.default=Disabled -esp32c3-devkitlipo.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32c3-devkitlipo.menu.CDCOnBoot.cdc=Enabled -esp32c3-devkitlipo.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32c3-devkitlipo.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.default.build.partitions=default -esp32c3-devkitlipo.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c3-devkitlipo.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c3-devkitlipo.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32c3-devkitlipo.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32c3-devkitlipo.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c3-devkitlipo.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c3-devkitlipo.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c3-devkitlipo.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c3-devkitlipo.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c3-devkitlipo.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c3-devkitlipo.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c3-devkitlipo.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c3-devkitlipo.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c3-devkitlipo.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c3-devkitlipo.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c3-devkitlipo.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c3-devkitlipo.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c3-devkitlipo.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c3-devkitlipo.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c3-devkitlipo.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32c3-devkitlipo.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32c3-devkitlipo.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32c3-devkitlipo.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32c3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32c3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32c3-devkitlipo.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32c3-devkitlipo.menu.PartitionScheme.rainmaker=RainMaker -esp32c3-devkitlipo.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32c3-devkitlipo.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32c3-devkitlipo.menu.PartitionScheme.custom=Custom -esp32c3-devkitlipo.menu.PartitionScheme.custom.build.partitions= -esp32c3-devkitlipo.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32c3-devkitlipo.menu.CPUFreq.160=160MHz (WiFi) -esp32c3-devkitlipo.menu.CPUFreq.160.build.f_cpu=160000000L -esp32c3-devkitlipo.menu.CPUFreq.80=80MHz (WiFi) -esp32c3-devkitlipo.menu.CPUFreq.80.build.f_cpu=80000000L -esp32c3-devkitlipo.menu.CPUFreq.40=40MHz -esp32c3-devkitlipo.menu.CPUFreq.40.build.f_cpu=40000000L -esp32c3-devkitlipo.menu.CPUFreq.20=20MHz -esp32c3-devkitlipo.menu.CPUFreq.20.build.f_cpu=20000000L -esp32c3-devkitlipo.menu.CPUFreq.10=10MHz -esp32c3-devkitlipo.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32c3-devkitlipo.menu.FlashMode.qio=QIO -esp32c3-devkitlipo.menu.FlashMode.qio.build.flash_mode=dio -esp32c3-devkitlipo.menu.FlashMode.qio.build.boot=qio -esp32c3-devkitlipo.menu.FlashMode.dio=DIO -esp32c3-devkitlipo.menu.FlashMode.dio.build.flash_mode=dio -esp32c3-devkitlipo.menu.FlashMode.dio.build.boot=dio -esp32c3-devkitlipo.menu.FlashMode.qout=QOUT -esp32c3-devkitlipo.menu.FlashMode.qout.build.flash_mode=dout -esp32c3-devkitlipo.menu.FlashMode.qout.build.boot=qout -esp32c3-devkitlipo.menu.FlashMode.dout=DOUT -esp32c3-devkitlipo.menu.FlashMode.dout.build.flash_mode=dout -esp32c3-devkitlipo.menu.FlashMode.dout.build.boot=dout - -esp32c3-devkitlipo.menu.FlashFreq.80=80MHz -esp32c3-devkitlipo.menu.FlashFreq.80.build.flash_freq=80m -esp32c3-devkitlipo.menu.FlashFreq.40=40MHz -esp32c3-devkitlipo.menu.FlashFreq.40.build.flash_freq=40m - -esp32c3-devkitlipo.menu.FlashSize.4M=4MB (32Mb) -esp32c3-devkitlipo.menu.FlashSize.4M.build.flash_size=4MB -esp32c3-devkitlipo.menu.FlashSize.8M=8MB (64Mb) -esp32c3-devkitlipo.menu.FlashSize.8M.build.flash_size=8MB -esp32c3-devkitlipo.menu.FlashSize.8M.build.partitions=default_8MB -esp32c3-devkitlipo.menu.FlashSize.2M=2MB (16Mb) -esp32c3-devkitlipo.menu.FlashSize.2M.build.flash_size=2MB -esp32c3-devkitlipo.menu.FlashSize.2M.build.partitions=minimal -esp32c3-devkitlipo.menu.FlashSize.16M=16MB (128Mb) -esp32c3-devkitlipo.menu.FlashSize.16M.build.flash_size=16MB - -esp32c3-devkitlipo.menu.UploadSpeed.921600=921600 -esp32c3-devkitlipo.menu.UploadSpeed.921600.upload.speed=921600 -esp32c3-devkitlipo.menu.UploadSpeed.115200=115200 -esp32c3-devkitlipo.menu.UploadSpeed.115200.upload.speed=115200 -esp32c3-devkitlipo.menu.UploadSpeed.256000.windows=256000 -esp32c3-devkitlipo.menu.UploadSpeed.256000.upload.speed=256000 -esp32c3-devkitlipo.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c3-devkitlipo.menu.UploadSpeed.230400=230400 -esp32c3-devkitlipo.menu.UploadSpeed.230400.upload.speed=230400 -esp32c3-devkitlipo.menu.UploadSpeed.460800.linux=460800 -esp32c3-devkitlipo.menu.UploadSpeed.460800.macosx=460800 -esp32c3-devkitlipo.menu.UploadSpeed.460800.upload.speed=460800 -esp32c3-devkitlipo.menu.UploadSpeed.512000.windows=512000 -esp32c3-devkitlipo.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c3-devkitlipo.menu.DebugLevel.none=None -esp32c3-devkitlipo.menu.DebugLevel.none.build.code_debug=0 -esp32c3-devkitlipo.menu.DebugLevel.error=Error -esp32c3-devkitlipo.menu.DebugLevel.error.build.code_debug=1 -esp32c3-devkitlipo.menu.DebugLevel.warn=Warn -esp32c3-devkitlipo.menu.DebugLevel.warn.build.code_debug=2 -esp32c3-devkitlipo.menu.DebugLevel.info=Info -esp32c3-devkitlipo.menu.DebugLevel.info.build.code_debug=3 -esp32c3-devkitlipo.menu.DebugLevel.debug=Debug -esp32c3-devkitlipo.menu.DebugLevel.debug.build.code_debug=4 -esp32c3-devkitlipo.menu.DebugLevel.verbose=Verbose -esp32c3-devkitlipo.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c3-devkitlipo.menu.EraseFlash.none=Disabled -esp32c3-devkitlipo.menu.EraseFlash.none.upload.erase_cmd= -esp32c3-devkitlipo.menu.EraseFlash.all=Enabled -esp32c3-devkitlipo.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32c6-evb.name=OLIMEX ESP32-C6-EVB -esp32c6-evb.vid.0=0x303a -esp32c6-evb.pid.0=0x1001 - -esp32c6-evb.bootloader.tool=esptool_py -esp32c6-evb.bootloader.tool.default=esptool_py - -esp32c6-evb.upload.tool=esptool_py -esp32c6-evb.upload.tool.default=esptool_py -esp32c6-evb.upload.tool.network=esp_ota - -esp32c6-evb.upload.maximum_size=1310720 -esp32c6-evb.upload.maximum_data_size=327680 -esp32c6-evb.upload.flags= -esp32c6-evb.upload.extra_flags= -esp32c6-evb.upload.use_1200bps_touch=false -esp32c6-evb.upload.wait_for_upload_port=false - -esp32c6-evb.serial.disableDTR=false -esp32c6-evb.serial.disableRTS=false - -esp32c6-evb.build.tarch=riscv32 -esp32c6-evb.build.target=esp -esp32c6-evb.build.mcu=esp32c6 -esp32c6-evb.build.core=esp32 -esp32c6-evb.build.variant=esp32c6-evb -esp32c6-evb.build.board=ESP32C6_EVB -esp32c6-evb.build.bootloader_addr=0x0 - -esp32c6-evb.build.cdc_on_boot=0 -esp32c6-evb.build.f_cpu=160000000L -esp32c6-evb.build.flash_size=4MB -esp32c6-evb.build.flash_freq=80m -esp32c6-evb.build.flash_mode=qio -esp32c6-evb.build.boot=qio -esp32c6-evb.build.partitions=default -esp32c6-evb.build.defines= - -## IDE 2.0 Seems to not update the value -esp32c6-evb.menu.JTAGAdapter.default=Disabled -esp32c6-evb.menu.JTAGAdapter.default.build.copy_jtag_files=0 -esp32c6-evb.menu.JTAGAdapter.builtin=Integrated USB JTAG -esp32c6-evb.menu.JTAGAdapter.builtin.build.openocdscript=esp32c6-builtin.cfg -esp32c6-evb.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -esp32c6-evb.menu.JTAGAdapter.external=FTDI Adapter -esp32c6-evb.menu.JTAGAdapter.external.build.openocdscript=esp32c6-ftdi.cfg -esp32c6-evb.menu.JTAGAdapter.external.build.copy_jtag_files=1 -esp32c6-evb.menu.JTAGAdapter.bridge=ESP USB Bridge -esp32c6-evb.menu.JTAGAdapter.bridge.build.openocdscript=esp32c6-bridge.cfg -esp32c6-evb.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -esp32c6-evb.menu.CDCOnBoot.default=Disabled -esp32c6-evb.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32c6-evb.menu.CDCOnBoot.cdc=Enabled -esp32c6-evb.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32c6-evb.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c6-evb.menu.PartitionScheme.default.build.partitions=default -esp32c6-evb.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c6-evb.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c6-evb.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32c6-evb.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32c6-evb.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32c6-evb.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c6-evb.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c6-evb.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c6-evb.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c6-evb.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c6-evb.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c6-evb.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c6-evb.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c6-evb.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c6-evb.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c6-evb.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c6-evb.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c6-evb.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c6-evb.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c6-evb.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c6-evb.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c6-evb.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c6-evb.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c6-evb.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c6-evb.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32c6-evb.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -esp32c6-evb.menu.PartitionScheme.fatflash.build.partitions=ffat -esp32c6-evb.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -esp32c6-evb.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -esp32c6-evb.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -esp32c6-evb.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -esp32c6-evb.menu.PartitionScheme.rainmaker=RainMaker -esp32c6-evb.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32c6-evb.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -esp32c6-evb.menu.PartitionScheme.custom=Custom -esp32c6-evb.menu.PartitionScheme.custom.build.partitions= -esp32c6-evb.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -esp32c6-evb.menu.CPUFreq.160=160MHz (WiFi) -esp32c6-evb.menu.CPUFreq.160.build.f_cpu=160000000L -esp32c6-evb.menu.CPUFreq.80=80MHz (WiFi) -esp32c6-evb.menu.CPUFreq.80.build.f_cpu=80000000L -esp32c6-evb.menu.CPUFreq.40=40MHz -esp32c6-evb.menu.CPUFreq.40.build.f_cpu=40000000L -esp32c6-evb.menu.CPUFreq.20=20MHz -esp32c6-evb.menu.CPUFreq.20.build.f_cpu=20000000L -esp32c6-evb.menu.CPUFreq.10=10MHz -esp32c6-evb.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32c6-evb.menu.FlashMode.qio=QIO -esp32c6-evb.menu.FlashMode.qio.build.flash_mode=dio -esp32c6-evb.menu.FlashMode.qio.build.boot=qio -esp32c6-evb.menu.FlashMode.dio=DIO -esp32c6-evb.menu.FlashMode.dio.build.flash_mode=dio -esp32c6-evb.menu.FlashMode.dio.build.boot=dio - -esp32c6-evb.menu.FlashFreq.80=80MHz -esp32c6-evb.menu.FlashFreq.80.build.flash_freq=80m -esp32c6-evb.menu.FlashFreq.40=40MHz -esp32c6-evb.menu.FlashFreq.40.build.flash_freq=40m - -esp32c6-evb.menu.FlashSize.4M=4MB (32Mb) -esp32c6-evb.menu.FlashSize.4M.build.flash_size=4MB -esp32c6-evb.menu.FlashSize.8M=8MB (64Mb) -esp32c6-evb.menu.FlashSize.8M.build.flash_size=8MB -esp32c6-evb.menu.FlashSize.8M.build.partitions=default_8MB -esp32c6-evb.menu.FlashSize.2M=2MB (16Mb) -esp32c6-evb.menu.FlashSize.2M.build.flash_size=2MB -esp32c6-evb.menu.FlashSize.2M.build.partitions=minimal -esp32c6-evb.menu.FlashSize.16M=16MB (128Mb) -esp32c6-evb.menu.FlashSize.16M.build.flash_size=16MB - -esp32c6-evb.menu.UploadSpeed.921600=921600 -esp32c6-evb.menu.UploadSpeed.921600.upload.speed=921600 -esp32c6-evb.menu.UploadSpeed.115200=115200 -esp32c6-evb.menu.UploadSpeed.115200.upload.speed=115200 -esp32c6-evb.menu.UploadSpeed.256000.windows=256000 -esp32c6-evb.menu.UploadSpeed.256000.upload.speed=256000 -esp32c6-evb.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c6-evb.menu.UploadSpeed.230400=230400 -esp32c6-evb.menu.UploadSpeed.230400.upload.speed=230400 -esp32c6-evb.menu.UploadSpeed.460800.linux=460800 -esp32c6-evb.menu.UploadSpeed.460800.macosx=460800 -esp32c6-evb.menu.UploadSpeed.460800.upload.speed=460800 -esp32c6-evb.menu.UploadSpeed.512000.windows=512000 -esp32c6-evb.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c6-evb.menu.DebugLevel.none=None -esp32c6-evb.menu.DebugLevel.none.build.code_debug=0 -esp32c6-evb.menu.DebugLevel.error=Error -esp32c6-evb.menu.DebugLevel.error.build.code_debug=1 -esp32c6-evb.menu.DebugLevel.warn=Warn -esp32c6-evb.menu.DebugLevel.warn.build.code_debug=2 -esp32c6-evb.menu.DebugLevel.info=Info -esp32c6-evb.menu.DebugLevel.info.build.code_debug=3 -esp32c6-evb.menu.DebugLevel.debug=Debug -esp32c6-evb.menu.DebugLevel.debug.build.code_debug=4 -esp32c6-evb.menu.DebugLevel.verbose=Verbose -esp32c6-evb.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c6-evb.menu.EraseFlash.none=Disabled -esp32c6-evb.menu.EraseFlash.none.upload.erase_cmd= -esp32c6-evb.menu.EraseFlash.all=Enabled -esp32c6-evb.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -espino32.name=ThaiEasyElec's ESPino32 - -espino32.bootloader.tool=esptool_py -espino32.bootloader.tool.default=esptool_py - -espino32.upload.tool=esptool_py -espino32.upload.tool.default=esptool_py -espino32.upload.tool.network=esp_ota - -espino32.upload.maximum_size=1310720 -espino32.upload.maximum_data_size=327680 -espino32.upload.flags= -espino32.upload.extra_flags= - -espino32.serial.disableDTR=true -espino32.serial.disableRTS=true - -espino32.build.tarch=xtensa -espino32.build.bootloader_addr=0x1000 -espino32.build.target=esp32 -espino32.build.mcu=esp32 -espino32.build.core=esp32 -espino32.build.variant=espino32 -espino32.build.board=ESPino32 - -espino32.build.f_cpu=240000000L -espino32.build.flash_mode=dio -espino32.build.flash_size=4MB -espino32.build.boot=dio -espino32.build.partitions=default -espino32.build.defines= - -espino32.menu.FlashFreq.80=80MHz -espino32.menu.FlashFreq.80.build.flash_freq=80m -espino32.menu.FlashFreq.40=40MHz -espino32.menu.FlashFreq.40.build.flash_freq=40m - -espino32.menu.UploadSpeed.921600=921600 -espino32.menu.UploadSpeed.921600.upload.speed=921600 -espino32.menu.UploadSpeed.115200=115200 -espino32.menu.UploadSpeed.115200.upload.speed=115200 -espino32.menu.UploadSpeed.256000.windows=256000 -espino32.menu.UploadSpeed.256000.upload.speed=256000 -espino32.menu.UploadSpeed.230400.windows.upload.speed=256000 -espino32.menu.UploadSpeed.230400=230400 -espino32.menu.UploadSpeed.230400.upload.speed=230400 -espino32.menu.UploadSpeed.460800.linux=460800 -espino32.menu.UploadSpeed.460800.macosx=460800 -espino32.menu.UploadSpeed.460800.upload.speed=460800 -espino32.menu.UploadSpeed.512000.windows=512000 -espino32.menu.UploadSpeed.512000.upload.speed=512000 - -espino32.menu.DebugLevel.none=None -espino32.menu.DebugLevel.none.build.code_debug=0 -espino32.menu.DebugLevel.error=Error -espino32.menu.DebugLevel.error.build.code_debug=1 -espino32.menu.DebugLevel.warn=Warn -espino32.menu.DebugLevel.warn.build.code_debug=2 -espino32.menu.DebugLevel.info=Info -espino32.menu.DebugLevel.info.build.code_debug=3 -espino32.menu.DebugLevel.debug=Debug -espino32.menu.DebugLevel.debug.build.code_debug=4 -espino32.menu.DebugLevel.verbose=Verbose -espino32.menu.DebugLevel.verbose.build.code_debug=5 - -espino32.menu.EraseFlash.none=Disabled -espino32.menu.EraseFlash.none.upload.erase_cmd= -espino32.menu.EraseFlash.all=Enabled -espino32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_core.name=M5Core - -m5stack_core.bootloader.tool=esptool_py -m5stack_core.bootloader.tool.default=esptool_py - -m5stack_core.upload.tool=esptool_py -m5stack_core.upload.tool.default=esptool_py -m5stack_core.upload.tool.network=esp_ota - -m5stack_core.upload.maximum_size=1310720 -m5stack_core.upload.maximum_data_size=327680 -m5stack_core.upload.flags= -m5stack_core.upload.extra_flags= - -m5stack_core.serial.disableDTR=true -m5stack_core.serial.disableRTS=true - -m5stack_core.build.tarch=xtensa -m5stack_core.build.bootloader_addr=0x1000 -m5stack_core.build.target=esp32 -m5stack_core.build.mcu=esp32 -m5stack_core.build.core=esp32 -m5stack_core.build.variant=m5stack_core -m5stack_core.build.board=M5STACK_CORE - -m5stack_core.build.f_cpu=240000000L -m5stack_core.build.flash_size=4MB -m5stack_core.build.flash_freq=80m -m5stack_core.build.flash_mode=dio -m5stack_core.build.boot=dio -m5stack_core.build.partitions=default -m5stack_core.build.defines= -m5stack_core.build.loop_core= -m5stack_core.build.event_core= - -m5stack_core.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_core.menu.PartitionScheme.default.build.partitions=default -m5stack_core.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_core.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_core.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_core.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_core.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_core.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_core.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_core.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_core.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_core.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_core.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_core.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_core.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_core.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_core.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_core.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_core.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_core.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_core.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_core.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_core.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_core.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_core.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_core.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_core.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_core.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_core.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_core.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_core.menu.PartitionScheme.rainmaker=RainMaker -m5stack_core.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_core.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_core.menu.PartitionScheme.custom=Custom -m5stack_core.menu.PartitionScheme.custom.build.partitions= -m5stack_core.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_core.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_core.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_core.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_core.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_core.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_core.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_core.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_core.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_core.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_core.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_core.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_core.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_core.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_core.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_core.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_core.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_core.menu.FlashMode.qio=QIO -m5stack_core.menu.FlashMode.qio.build.flash_mode=dio -m5stack_core.menu.FlashMode.qio.build.boot=qio -m5stack_core.menu.FlashMode.dio=DIO -m5stack_core.menu.FlashMode.dio.build.flash_mode=dio -m5stack_core.menu.FlashMode.dio.build.boot=dio -m5stack_core.menu.FlashMode.qout=QOUT -m5stack_core.menu.FlashMode.qout.build.flash_mode=dout -m5stack_core.menu.FlashMode.qout.build.boot=qout -m5stack_core.menu.FlashMode.dout=DOUT -m5stack_core.menu.FlashMode.dout.build.flash_mode=dout -m5stack_core.menu.FlashMode.dout.build.boot=dout - -m5stack_core.menu.FlashFreq.80=80MHz -m5stack_core.menu.FlashFreq.80.build.flash_freq=80m -m5stack_core.menu.FlashFreq.40=40MHz -m5stack_core.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_core.menu.FlashSize.4M=4MB (32Mb) -m5stack_core.menu.FlashSize.4M.build.flash_size=4MB -m5stack_core.menu.FlashSize.16M=16MB (128Mb) -m5stack_core.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_core.menu.UploadSpeed.1500000=1500000 -m5stack_core.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_core.menu.UploadSpeed.921600=921600 -m5stack_core.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_core.menu.UploadSpeed.115200=115200 -m5stack_core.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_core.menu.UploadSpeed.256000.windows=256000 -m5stack_core.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_core.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_core.menu.UploadSpeed.230400=230400 -m5stack_core.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_core.menu.UploadSpeed.460800.linux=460800 -m5stack_core.menu.UploadSpeed.460800.macosx=460800 -m5stack_core.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_core.menu.UploadSpeed.512000.windows=512000 -m5stack_core.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_core.menu.LoopCore.1=Core 1 -m5stack_core.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_core.menu.LoopCore.0=Core 0 -m5stack_core.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_core.menu.EventsCore.1=Core 1 -m5stack_core.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_core.menu.EventsCore.0=Core 0 -m5stack_core.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_core.menu.DebugLevel.none=None -m5stack_core.menu.DebugLevel.none.build.code_debug=0 -m5stack_core.menu.DebugLevel.error=Error -m5stack_core.menu.DebugLevel.error.build.code_debug=1 -m5stack_core.menu.DebugLevel.warn=Warn -m5stack_core.menu.DebugLevel.warn.build.code_debug=2 -m5stack_core.menu.DebugLevel.info=Info -m5stack_core.menu.DebugLevel.info.build.code_debug=3 -m5stack_core.menu.DebugLevel.debug=Debug -m5stack_core.menu.DebugLevel.debug.build.code_debug=4 -m5stack_core.menu.DebugLevel.verbose=Verbose -m5stack_core.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_core.menu.EraseFlash.none=Disabled -m5stack_core.menu.EraseFlash.none.upload.erase_cmd= -m5stack_core.menu.EraseFlash.all=Enabled -m5stack_core.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_fire.name=M5Fire - -m5stack_fire.bootloader.tool=esptool_py -m5stack_fire.bootloader.tool.default=esptool_py - -m5stack_fire.upload.tool=esptool_py -m5stack_fire.upload.tool.default=esptool_py -m5stack_fire.upload.tool.network=esp_ota - -m5stack_fire.upload.maximum_size=6553600 -m5stack_fire.upload.maximum_data_size=4521984 -m5stack_fire.upload.flags= -m5stack_fire.upload.extra_flags= - -m5stack_fire.serial.disableDTR=true -m5stack_fire.serial.disableRTS=true - -m5stack_fire.build.tarch=xtensa -m5stack_fire.build.bootloader_addr=0x1000 -m5stack_fire.build.target=esp32 -m5stack_fire.build.mcu=esp32 -m5stack_fire.build.core=esp32 -m5stack_fire.build.variant=m5stack_fire -m5stack_fire.build.board=M5STACK_FIRE - -m5stack_fire.build.f_cpu=240000000L -m5stack_fire.build.flash_size=16MB -m5stack_fire.build.flash_freq=80m -m5stack_fire.build.flash_mode=dio -m5stack_fire.build.boot=dio -m5stack_fire.build.partitions=default -m5stack_fire.build.defines= -m5stack_fire.build.loop_core= -m5stack_fire.build.event_core= - -m5stack_fire.menu.PSRAM.enabled=Enabled -m5stack_fire.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_fire.menu.PSRAM.enabled.build.extra_libs= -m5stack_fire.menu.PSRAM.disabled=Disabled -m5stack_fire.menu.PSRAM.disabled.build.defines= -m5stack_fire.menu.PSRAM.disabled.build.extra_libs= - -m5stack_fire.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -m5stack_fire.menu.PartitionScheme.default.build.partitions=default_16MB -m5stack_fire.menu.PartitionScheme.default.upload.maximum_size=6553600 -m5stack_fire.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_fire.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_fire.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_fire.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_fire.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_fire.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_fire.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_fire.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_fire.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_fire.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_fire.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_fire.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_fire.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_fire.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_fire.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_fire.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_fire.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_fire.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_fire.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_fire.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_fire.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_fire.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_fire.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_fire.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_fire.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_fire.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_fire.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_fire.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_fire.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_fire.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_fire.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_fire.menu.PartitionScheme.rainmaker=RainMaker -m5stack_fire.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_fire.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_fire.menu.PartitionScheme.custom=Custom -m5stack_fire.menu.PartitionScheme.custom.build.partitions= -m5stack_fire.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_fire.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_fire.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_fire.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_fire.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_fire.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_fire.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_fire.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_fire.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_fire.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_fire.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_fire.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_fire.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_fire.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_fire.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_fire.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_fire.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_fire.menu.FlashMode.qio=QIO -m5stack_fire.menu.FlashMode.qio.build.flash_mode=dio -m5stack_fire.menu.FlashMode.qio.build.boot=qio -m5stack_fire.menu.FlashMode.dio=DIO -m5stack_fire.menu.FlashMode.dio.build.flash_mode=dio -m5stack_fire.menu.FlashMode.dio.build.boot=dio -m5stack_fire.menu.FlashMode.qout=QOUT -m5stack_fire.menu.FlashMode.qout.build.flash_mode=dout -m5stack_fire.menu.FlashMode.qout.build.boot=qout -m5stack_fire.menu.FlashMode.dout=DOUT -m5stack_fire.menu.FlashMode.dout.build.flash_mode=dout -m5stack_fire.menu.FlashMode.dout.build.boot=dout - -m5stack_fire.menu.FlashFreq.80=80MHz -m5stack_fire.menu.FlashFreq.80.build.flash_freq=80m -m5stack_fire.menu.FlashFreq.40=40MHz -m5stack_fire.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_fire.menu.FlashSize.16M=16MB (128Mb) -m5stack_fire.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_fire.menu.UploadSpeed.1500000=1500000 -m5stack_fire.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_fire.menu.UploadSpeed.921600=921600 -m5stack_fire.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_fire.menu.UploadSpeed.115200=115200 -m5stack_fire.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_fire.menu.UploadSpeed.256000.windows=256000 -m5stack_fire.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_fire.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_fire.menu.UploadSpeed.230400=230400 -m5stack_fire.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_fire.menu.UploadSpeed.460800.linux=460800 -m5stack_fire.menu.UploadSpeed.460800.macosx=460800 -m5stack_fire.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_fire.menu.UploadSpeed.512000.windows=512000 -m5stack_fire.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_fire.menu.LoopCore.1=Core 1 -m5stack_fire.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_fire.menu.LoopCore.0=Core 0 -m5stack_fire.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_fire.menu.EventsCore.1=Core 1 -m5stack_fire.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_fire.menu.EventsCore.0=Core 0 -m5stack_fire.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_fire.menu.DebugLevel.none=None -m5stack_fire.menu.DebugLevel.none.build.code_debug=0 -m5stack_fire.menu.DebugLevel.error=Error -m5stack_fire.menu.DebugLevel.error.build.code_debug=1 -m5stack_fire.menu.DebugLevel.warn=Warn -m5stack_fire.menu.DebugLevel.warn.build.code_debug=2 -m5stack_fire.menu.DebugLevel.info=Info -m5stack_fire.menu.DebugLevel.info.build.code_debug=3 -m5stack_fire.menu.DebugLevel.debug=Debug -m5stack_fire.menu.DebugLevel.debug.build.code_debug=4 -m5stack_fire.menu.DebugLevel.verbose=Verbose -m5stack_fire.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_fire.menu.EraseFlash.none=Disabled -m5stack_fire.menu.EraseFlash.none.upload.erase_cmd= -m5stack_fire.menu.EraseFlash.all=Enabled -m5stack_fire.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_core2.name=M5Core2 - -m5stack_core2.bootloader.tool=esptool_py -m5stack_core2.bootloader.tool.default=esptool_py - -m5stack_core2.upload.tool=esptool_py -m5stack_core2.upload.tool.default=esptool_py -m5stack_core2.upload.tool.network=esp_ota - -m5stack_core2.upload.maximum_size=6553600 -m5stack_core2.upload.maximum_data_size=4521984 -m5stack_core2.upload.flags= -m5stack_core2.upload.extra_flags= - -m5stack_core2.serial.disableDTR=true -m5stack_core2.serial.disableRTS=true - -m5stack_core2.build.tarch=xtensa -m5stack_core2.build.bootloader_addr=0x1000 -m5stack_core2.build.target=esp32 -m5stack_core2.build.mcu=esp32 -m5stack_core2.build.core=esp32 -m5stack_core2.build.variant=m5stack_core2 -m5stack_core2.build.board=M5STACK_CORE2 - -m5stack_core2.build.f_cpu=240000000L -m5stack_core2.build.flash_size=16MB -m5stack_core2.build.flash_freq=80m -m5stack_core2.build.flash_mode=dio -m5stack_core2.build.boot=dio -m5stack_core2.build.partitions=default -m5stack_core2.build.defines= -m5stack_core2.build.loop_core= -m5stack_core2.build.event_core= - -m5stack_core2.menu.PSRAM.enabled=Enabled -m5stack_core2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_core2.menu.PSRAM.enabled.build.extra_libs= -m5stack_core2.menu.PSRAM.disabled=Disabled -m5stack_core2.menu.PSRAM.disabled.build.defines= -m5stack_core2.menu.PSRAM.disabled.build.extra_libs= - -m5stack_core2.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -m5stack_core2.menu.PartitionScheme.default.build.partitions=default_16MB -m5stack_core2.menu.PartitionScheme.default.upload.maximum_size=6553600 -m5stack_core2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_core2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_core2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_core2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_core2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_core2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_core2.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_core2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_core2.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_core2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_core2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_core2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_core2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_core2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_core2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_core2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_core2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_core2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_core2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_core2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_core2.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_core2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_core2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_core2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_core2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_core2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_core2.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_core2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_core2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_core2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_core2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_core2.menu.PartitionScheme.rainmaker=RainMaker -m5stack_core2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_core2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_core2.menu.PartitionScheme.custom=Custom -m5stack_core2.menu.PartitionScheme.custom.build.partitions= -m5stack_core2.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_core2.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_core2.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_core2.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_core2.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_core2.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_core2.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_core2.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_core2.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_core2.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_core2.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_core2.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_core2.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_core2.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_core2.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_core2.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_core2.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_core2.menu.FlashMode.qio=QIO -m5stack_core2.menu.FlashMode.qio.build.flash_mode=dio -m5stack_core2.menu.FlashMode.qio.build.boot=qio -m5stack_core2.menu.FlashMode.dio=DIO -m5stack_core2.menu.FlashMode.dio.build.flash_mode=dio -m5stack_core2.menu.FlashMode.dio.build.boot=dio -m5stack_core2.menu.FlashMode.qout=QOUT -m5stack_core2.menu.FlashMode.qout.build.flash_mode=dout -m5stack_core2.menu.FlashMode.qout.build.boot=qout -m5stack_core2.menu.FlashMode.dout=DOUT -m5stack_core2.menu.FlashMode.dout.build.flash_mode=dout -m5stack_core2.menu.FlashMode.dout.build.boot=dout - -m5stack_core2.menu.FlashFreq.80=80MHz -m5stack_core2.menu.FlashFreq.80.build.flash_freq=80m -m5stack_core2.menu.FlashFreq.40=40MHz -m5stack_core2.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_core2.menu.FlashSize.16M=16MB (128Mb) -m5stack_core2.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_core2.menu.UploadSpeed.1500000=1500000 -m5stack_core2.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_core2.menu.UploadSpeed.921600=921600 -m5stack_core2.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_core2.menu.UploadSpeed.115200=115200 -m5stack_core2.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_core2.menu.UploadSpeed.256000.windows=256000 -m5stack_core2.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_core2.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_core2.menu.UploadSpeed.230400=230400 -m5stack_core2.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_core2.menu.UploadSpeed.460800.linux=460800 -m5stack_core2.menu.UploadSpeed.460800.macosx=460800 -m5stack_core2.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_core2.menu.UploadSpeed.512000.windows=512000 -m5stack_core2.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_core2.menu.LoopCore.1=Core 1 -m5stack_core2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_core2.menu.LoopCore.0=Core 0 -m5stack_core2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_core2.menu.EventsCore.1=Core 1 -m5stack_core2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_core2.menu.EventsCore.0=Core 0 -m5stack_core2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_core2.menu.DebugLevel.none=None -m5stack_core2.menu.DebugLevel.none.build.code_debug=0 -m5stack_core2.menu.DebugLevel.error=Error -m5stack_core2.menu.DebugLevel.error.build.code_debug=1 -m5stack_core2.menu.DebugLevel.warn=Warn -m5stack_core2.menu.DebugLevel.warn.build.code_debug=2 -m5stack_core2.menu.DebugLevel.info=Info -m5stack_core2.menu.DebugLevel.info.build.code_debug=3 -m5stack_core2.menu.DebugLevel.debug=Debug -m5stack_core2.menu.DebugLevel.debug.build.code_debug=4 -m5stack_core2.menu.DebugLevel.verbose=Verbose -m5stack_core2.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_core2.menu.EraseFlash.none=Disabled -m5stack_core2.menu.EraseFlash.none.upload.erase_cmd= -m5stack_core2.menu.EraseFlash.all=Enabled -m5stack_core2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_tough.name=M5Tough - -m5stack_tough.bootloader.tool=esptool_py -m5stack_tough.bootloader.tool.default=esptool_py - -m5stack_tough.upload.tool=esptool_py -m5stack_tough.upload.tool.default=esptool_py -m5stack_tough.upload.tool.network=esp_ota - -m5stack_tough.upload.maximum_size=6553600 -m5stack_tough.upload.maximum_data_size=4521984 -m5stack_tough.upload.flags= -m5stack_tough.upload.extra_flags= - -m5stack_tough.serial.disableDTR=true -m5stack_tough.serial.disableRTS=true - -m5stack_tough.build.tarch=xtensa -m5stack_tough.build.bootloader_addr=0x1000 -m5stack_tough.build.target=esp32 -m5stack_tough.build.mcu=esp32 -m5stack_tough.build.core=esp32 -m5stack_tough.build.variant=m5stack_tough -m5stack_tough.build.board=M5STACK_TOUGH - -m5stack_tough.build.f_cpu=240000000L -m5stack_tough.build.flash_size=16MB -m5stack_tough.build.flash_freq=80m -m5stack_tough.build.flash_mode=dio -m5stack_tough.build.boot=dio -m5stack_tough.build.partitions=default -m5stack_tough.build.defines= -m5stack_tough.build.loop_core= -m5stack_tough.build.event_core= - -m5stack_tough.menu.PSRAM.enabled=Enabled -m5stack_tough.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_tough.menu.PSRAM.enabled.build.extra_libs= -m5stack_tough.menu.PSRAM.disabled=Disabled -m5stack_tough.menu.PSRAM.disabled.build.defines= -m5stack_tough.menu.PSRAM.disabled.build.extra_libs= - -m5stack_tough.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -m5stack_tough.menu.PartitionScheme.default.build.partitions=default_16MB -m5stack_tough.menu.PartitionScheme.default.upload.maximum_size=6553600 -m5stack_tough.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_tough.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_tough.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_tough.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_tough.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_tough.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_tough.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_tough.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_tough.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_tough.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_tough.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_tough.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_tough.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_tough.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_tough.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_tough.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_tough.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_tough.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_tough.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_tough.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_tough.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_tough.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_tough.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_tough.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_tough.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_tough.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_tough.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_tough.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_tough.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_tough.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_tough.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_tough.menu.PartitionScheme.rainmaker=RainMaker -m5stack_tough.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_tough.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_tough.menu.PartitionScheme.custom=Custom -m5stack_tough.menu.PartitionScheme.custom.build.partitions= -m5stack_tough.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_tough.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_tough.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_tough.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_tough.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_tough.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_tough.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_tough.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_tough.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_tough.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_tough.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_tough.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_tough.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_tough.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_tough.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_tough.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_tough.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_tough.menu.FlashMode.qio=QIO -m5stack_tough.menu.FlashMode.qio.build.flash_mode=dio -m5stack_tough.menu.FlashMode.qio.build.boot=qio -m5stack_tough.menu.FlashMode.dio=DIO -m5stack_tough.menu.FlashMode.dio.build.flash_mode=dio -m5stack_tough.menu.FlashMode.dio.build.boot=dio -m5stack_tough.menu.FlashMode.qout=QOUT -m5stack_tough.menu.FlashMode.qout.build.flash_mode=dout -m5stack_tough.menu.FlashMode.qout.build.boot=qout -m5stack_tough.menu.FlashMode.dout=DOUT -m5stack_tough.menu.FlashMode.dout.build.flash_mode=dout -m5stack_tough.menu.FlashMode.dout.build.boot=dout - -m5stack_tough.menu.FlashFreq.80=80MHz -m5stack_tough.menu.FlashFreq.80.build.flash_freq=80m -m5stack_tough.menu.FlashFreq.40=40MHz -m5stack_tough.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_tough.menu.FlashSize.16M=16MB (128Mb) -m5stack_tough.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_tough.menu.UploadSpeed.1500000=1500000 -m5stack_tough.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_tough.menu.UploadSpeed.921600=921600 -m5stack_tough.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_tough.menu.UploadSpeed.115200=115200 -m5stack_tough.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_tough.menu.UploadSpeed.256000.windows=256000 -m5stack_tough.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_tough.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_tough.menu.UploadSpeed.230400=230400 -m5stack_tough.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_tough.menu.UploadSpeed.460800.linux=460800 -m5stack_tough.menu.UploadSpeed.460800.macosx=460800 -m5stack_tough.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_tough.menu.UploadSpeed.512000.windows=512000 -m5stack_tough.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_tough.menu.LoopCore.1=Core 1 -m5stack_tough.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_tough.menu.LoopCore.0=Core 0 -m5stack_tough.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_tough.menu.EventsCore.1=Core 1 -m5stack_tough.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_tough.menu.EventsCore.0=Core 0 -m5stack_tough.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_tough.menu.DebugLevel.none=None -m5stack_tough.menu.DebugLevel.none.build.code_debug=0 -m5stack_tough.menu.DebugLevel.error=Error -m5stack_tough.menu.DebugLevel.error.build.code_debug=1 -m5stack_tough.menu.DebugLevel.warn=Warn -m5stack_tough.menu.DebugLevel.warn.build.code_debug=2 -m5stack_tough.menu.DebugLevel.info=Info -m5stack_tough.menu.DebugLevel.info.build.code_debug=3 -m5stack_tough.menu.DebugLevel.debug=Debug -m5stack_tough.menu.DebugLevel.debug.build.code_debug=4 -m5stack_tough.menu.DebugLevel.verbose=Verbose -m5stack_tough.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_tough.menu.EraseFlash.none=Disabled -m5stack_tough.menu.EraseFlash.none.upload.erase_cmd= -m5stack_tough.menu.EraseFlash.all=Enabled -m5stack_tough.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_station.name=M5Station - -m5stack_station.bootloader.tool=esptool_py -m5stack_station.bootloader.tool.default=esptool_py - -m5stack_station.upload.tool=esptool_py -m5stack_station.upload.tool.default=esptool_py -m5stack_station.upload.tool.network=esp_ota - -m5stack_station.upload.maximum_size=6553600 -m5stack_station.upload.maximum_data_size=4521984 -m5stack_station.upload.flags= -m5stack_station.upload.extra_flags= - -m5stack_station.serial.disableDTR=true -m5stack_station.serial.disableRTS=true - -m5stack_station.build.tarch=xtensa -m5stack_station.build.bootloader_addr=0x1000 -m5stack_station.build.target=esp32 -m5stack_station.build.mcu=esp32 -m5stack_station.build.core=esp32 -m5stack_station.build.variant=m5stack_station -m5stack_station.build.board=M5STACK_STATION - -m5stack_station.build.f_cpu=240000000L -m5stack_station.build.flash_size=16MB -m5stack_station.build.flash_freq=80m -m5stack_station.build.flash_mode=dio -m5stack_station.build.boot=dio -m5stack_station.build.partitions=default -m5stack_station.build.defines= -m5stack_station.build.loop_core= -m5stack_station.build.event_core= - -m5stack_station.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -m5stack_station.menu.PartitionScheme.default.build.partitions=default_16MB -m5stack_station.menu.PartitionScheme.default.upload.maximum_size=6553600 -m5stack_station.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_station.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_station.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_station.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_station.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_station.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_station.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_station.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_station.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_station.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_station.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_station.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_station.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_station.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_station.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_station.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_station.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_station.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_station.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_station.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_station.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_station.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_station.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_station.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_station.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_station.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_station.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_station.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_station.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_station.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_station.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_station.menu.PartitionScheme.rainmaker=RainMaker -m5stack_station.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_station.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_station.menu.PartitionScheme.custom=Custom -m5stack_station.menu.PartitionScheme.custom.build.partitions= -m5stack_station.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_station.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_station.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_station.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_station.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_station.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_station.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_station.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_station.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_station.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_station.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_station.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_station.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_station.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_station.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_station.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_station.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_station.menu.FlashMode.qio=QIO -m5stack_station.menu.FlashMode.qio.build.flash_mode=dio -m5stack_station.menu.FlashMode.qio.build.boot=qio -m5stack_station.menu.FlashMode.dio=DIO -m5stack_station.menu.FlashMode.dio.build.flash_mode=dio -m5stack_station.menu.FlashMode.dio.build.boot=dio -m5stack_station.menu.FlashMode.qout=QOUT -m5stack_station.menu.FlashMode.qout.build.flash_mode=dout -m5stack_station.menu.FlashMode.qout.build.boot=qout -m5stack_station.menu.FlashMode.dout=DOUT -m5stack_station.menu.FlashMode.dout.build.flash_mode=dout -m5stack_station.menu.FlashMode.dout.build.boot=dout - -m5stack_station.menu.FlashFreq.80=80MHz -m5stack_station.menu.FlashFreq.80.build.flash_freq=80m -m5stack_station.menu.FlashFreq.40=40MHz -m5stack_station.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_station.menu.FlashSize.16M=16MB (128Mb) -m5stack_station.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_station.menu.UploadSpeed.1500000=1500000 -m5stack_station.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_station.menu.UploadSpeed.921600=921600 -m5stack_station.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_station.menu.UploadSpeed.115200=115200 -m5stack_station.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_station.menu.UploadSpeed.256000.windows=256000 -m5stack_station.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_station.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_station.menu.UploadSpeed.230400=230400 -m5stack_station.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_station.menu.UploadSpeed.460800.linux=460800 -m5stack_station.menu.UploadSpeed.460800.macosx=460800 -m5stack_station.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_station.menu.UploadSpeed.512000.windows=512000 -m5stack_station.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_station.menu.LoopCore.1=Core 1 -m5stack_station.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_station.menu.LoopCore.0=Core 0 -m5stack_station.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_station.menu.EventsCore.1=Core 1 -m5stack_station.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_station.menu.EventsCore.0=Core 0 -m5stack_station.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_station.menu.DebugLevel.none=None -m5stack_station.menu.DebugLevel.none.build.code_debug=0 -m5stack_station.menu.DebugLevel.error=Error -m5stack_station.menu.DebugLevel.error.build.code_debug=1 -m5stack_station.menu.DebugLevel.warn=Warn -m5stack_station.menu.DebugLevel.warn.build.code_debug=2 -m5stack_station.menu.DebugLevel.info=Info -m5stack_station.menu.DebugLevel.info.build.code_debug=3 -m5stack_station.menu.DebugLevel.debug=Debug -m5stack_station.menu.DebugLevel.debug.build.code_debug=4 -m5stack_station.menu.DebugLevel.verbose=Verbose -m5stack_station.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_station.menu.EraseFlash.none=Disabled -m5stack_station.menu.EraseFlash.none.upload.erase_cmd= -m5stack_station.menu.EraseFlash.all=Enabled -m5stack_station.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_stickc.name=M5StickC - -m5stack_stickc.bootloader.tool=esptool_py -m5stack_stickc.bootloader.tool.default=esptool_py - -m5stack_stickc.upload.tool=esptool_py -m5stack_stickc.upload.tool.default=esptool_py -m5stack_stickc.upload.tool.network=esp_ota - -m5stack_stickc.upload.maximum_size=1310720 -m5stack_stickc.upload.maximum_data_size=327680 -m5stack_stickc.upload.flags= -m5stack_stickc.upload.extra_flags= - -m5stack_stickc.serial.disableDTR=true -m5stack_stickc.serial.disableRTS=true - -m5stack_stickc.build.tarch=xtensa -m5stack_stickc.build.bootloader_addr=0x1000 -m5stack_stickc.build.target=esp32 -m5stack_stickc.build.mcu=esp32 -m5stack_stickc.build.core=esp32 -m5stack_stickc.build.variant=m5stack_stickc -m5stack_stickc.build.board=M5STACK_STICKC - -m5stack_stickc.build.f_cpu=240000000L -m5stack_stickc.build.flash_size=4MB -m5stack_stickc.build.flash_freq=80m -m5stack_stickc.build.flash_mode=dio -m5stack_stickc.build.boot=dio -m5stack_stickc.build.partitions=huge_app -m5stack_stickc.build.defines= -m5stack_stickc.build.loop_core= -m5stack_stickc.build.event_core= - -m5stack_stickc.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stickc.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stickc.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stickc.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stickc.menu.PartitionScheme.default.build.partitions=default -m5stack_stickc.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stickc.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stickc.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_stickc.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_stickc.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_stickc.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stickc.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stickc.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stickc.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stickc.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stickc.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stickc.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stickc.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stickc.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stickc.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stickc.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stickc.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stickc.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stickc.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stickc.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stickc.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stickc.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_stickc.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_stickc.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_stickc.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_stickc.menu.PartitionScheme.rainmaker=RainMaker -m5stack_stickc.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_stickc.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_stickc.menu.PartitionScheme.custom=Custom -m5stack_stickc.menu.PartitionScheme.custom.build.partitions= -m5stack_stickc.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_stickc.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_stickc.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_stickc.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_stickc.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stickc.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_stickc.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stickc.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_stickc.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stickc.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_stickc.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_stickc.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_stickc.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stickc.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_stickc.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_stickc.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_stickc.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stickc.menu.FlashMode.qio=QIO -m5stack_stickc.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stickc.menu.FlashMode.qio.build.boot=qio -m5stack_stickc.menu.FlashMode.dio=DIO -m5stack_stickc.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stickc.menu.FlashMode.dio.build.boot=dio -m5stack_stickc.menu.FlashMode.qout=QOUT -m5stack_stickc.menu.FlashMode.qout.build.flash_mode=dout -m5stack_stickc.menu.FlashMode.qout.build.boot=qout -m5stack_stickc.menu.FlashMode.dout=DOUT -m5stack_stickc.menu.FlashMode.dout.build.flash_mode=dout -m5stack_stickc.menu.FlashMode.dout.build.boot=dout - -m5stack_stickc.menu.FlashFreq.80=80MHz -m5stack_stickc.menu.FlashFreq.80.build.flash_freq=80m -m5stack_stickc.menu.FlashFreq.40=40MHz -m5stack_stickc.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_stickc.menu.FlashSize.4M=4MB (32Mb) -m5stack_stickc.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_stickc.menu.UploadSpeed.1500000=1500000 -m5stack_stickc.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_stickc.menu.UploadSpeed.750000=750000 -m5stack_stickc.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_stickc.menu.UploadSpeed.500000=500000 -m5stack_stickc.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_stickc.menu.UploadSpeed.250000=250000 -m5stack_stickc.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_stickc.menu.UploadSpeed.115200=115200 -m5stack_stickc.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_stickc.menu.LoopCore.1=Core 1 -m5stack_stickc.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_stickc.menu.LoopCore.0=Core 0 -m5stack_stickc.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_stickc.menu.EventsCore.1=Core 1 -m5stack_stickc.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_stickc.menu.EventsCore.0=Core 0 -m5stack_stickc.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_stickc.menu.DebugLevel.none=None -m5stack_stickc.menu.DebugLevel.none.build.code_debug=0 -m5stack_stickc.menu.DebugLevel.error=Error -m5stack_stickc.menu.DebugLevel.error.build.code_debug=1 -m5stack_stickc.menu.DebugLevel.warn=Warn -m5stack_stickc.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stickc.menu.DebugLevel.info=Info -m5stack_stickc.menu.DebugLevel.info.build.code_debug=3 -m5stack_stickc.menu.DebugLevel.debug=Debug -m5stack_stickc.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stickc.menu.DebugLevel.verbose=Verbose -m5stack_stickc.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stickc.menu.EraseFlash.none=Disabled -m5stack_stickc.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stickc.menu.EraseFlash.all=Enabled -m5stack_stickc.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_stickc_plus.name=M5StickCPlus - -m5stack_stickc_plus.bootloader.tool=esptool_py -m5stack_stickc_plus.bootloader.tool.default=esptool_py - -m5stack_stickc_plus.upload.tool=esptool_py -m5stack_stickc_plus.upload.tool.default=esptool_py -m5stack_stickc_plus.upload.tool.network=esp_ota - -m5stack_stickc_plus.upload.maximum_size=1310720 -m5stack_stickc_plus.upload.maximum_data_size=327680 -m5stack_stickc_plus.upload.flags= -m5stack_stickc_plus.upload.extra_flags= - -m5stack_stickc_plus.serial.disableDTR=true -m5stack_stickc_plus.serial.disableRTS=true - -m5stack_stickc_plus.build.tarch=xtensa -m5stack_stickc_plus.build.bootloader_addr=0x1000 -m5stack_stickc_plus.build.target=esp32 -m5stack_stickc_plus.build.mcu=esp32 -m5stack_stickc_plus.build.core=esp32 -m5stack_stickc_plus.build.variant=m5stack_stickc_plus -m5stack_stickc_plus.build.board=M5STACK_STICKC_PLUS - -m5stack_stickc_plus.build.f_cpu=240000000L -m5stack_stickc_plus.build.flash_size=4MB -m5stack_stickc_plus.build.flash_freq=80m -m5stack_stickc_plus.build.flash_mode=dio -m5stack_stickc_plus.build.boot=dio -m5stack_stickc_plus.build.partitions=huge_app -m5stack_stickc_plus.build.defines= -m5stack_stickc_plus.build.loop_core= -m5stack_stickc_plus.build.event_core= - -m5stack_stickc_plus.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stickc_plus.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stickc_plus.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.default.build.partitions=default -m5stack_stickc_plus.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stickc_plus.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stickc_plus.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_stickc_plus.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_stickc_plus.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stickc_plus.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stickc_plus.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stickc_plus.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stickc_plus.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stickc_plus.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stickc_plus.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stickc_plus.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stickc_plus.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stickc_plus.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stickc_plus.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stickc_plus.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stickc_plus.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stickc_plus.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_stickc_plus.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_stickc_plus.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_stickc_plus.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_stickc_plus.menu.PartitionScheme.rainmaker=RainMaker -m5stack_stickc_plus.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_stickc_plus.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_stickc_plus.menu.PartitionScheme.custom=Custom -m5stack_stickc_plus.menu.PartitionScheme.custom.build.partitions= -m5stack_stickc_plus.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_stickc_plus.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_stickc_plus.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_stickc_plus.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_stickc_plus.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stickc_plus.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_stickc_plus.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stickc_plus.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_stickc_plus.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stickc_plus.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_stickc_plus.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_stickc_plus.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_stickc_plus.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stickc_plus.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_stickc_plus.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_stickc_plus.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_stickc_plus.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stickc_plus.menu.FlashMode.qio=QIO -m5stack_stickc_plus.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stickc_plus.menu.FlashMode.qio.build.boot=qio -m5stack_stickc_plus.menu.FlashMode.dio=DIO -m5stack_stickc_plus.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stickc_plus.menu.FlashMode.dio.build.boot=dio -m5stack_stickc_plus.menu.FlashMode.qout=QOUT -m5stack_stickc_plus.menu.FlashMode.qout.build.flash_mode=dout -m5stack_stickc_plus.menu.FlashMode.qout.build.boot=qout -m5stack_stickc_plus.menu.FlashMode.dout=DOUT -m5stack_stickc_plus.menu.FlashMode.dout.build.flash_mode=dout -m5stack_stickc_plus.menu.FlashMode.dout.build.boot=dout - -m5stack_stickc_plus.menu.FlashFreq.80=80MHz -m5stack_stickc_plus.menu.FlashFreq.80.build.flash_freq=80m -m5stack_stickc_plus.menu.FlashFreq.40=40MHz -m5stack_stickc_plus.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_stickc_plus.menu.FlashSize.4M=4MB (32Mb) -m5stack_stickc_plus.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_stickc_plus.menu.UploadSpeed.1500000=1500000 -m5stack_stickc_plus.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_stickc_plus.menu.UploadSpeed.750000=750000 -m5stack_stickc_plus.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_stickc_plus.menu.UploadSpeed.500000=500000 -m5stack_stickc_plus.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_stickc_plus.menu.UploadSpeed.250000=250000 -m5stack_stickc_plus.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_stickc_plus.menu.UploadSpeed.115200=115200 -m5stack_stickc_plus.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_stickc_plus.menu.LoopCore.1=Core 1 -m5stack_stickc_plus.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_stickc_plus.menu.LoopCore.0=Core 0 -m5stack_stickc_plus.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_stickc_plus.menu.EventsCore.1=Core 1 -m5stack_stickc_plus.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_stickc_plus.menu.EventsCore.0=Core 0 -m5stack_stickc_plus.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_stickc_plus.menu.DebugLevel.none=None -m5stack_stickc_plus.menu.DebugLevel.none.build.code_debug=0 -m5stack_stickc_plus.menu.DebugLevel.error=Error -m5stack_stickc_plus.menu.DebugLevel.error.build.code_debug=1 -m5stack_stickc_plus.menu.DebugLevel.warn=Warn -m5stack_stickc_plus.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stickc_plus.menu.DebugLevel.info=Info -m5stack_stickc_plus.menu.DebugLevel.info.build.code_debug=3 -m5stack_stickc_plus.menu.DebugLevel.debug=Debug -m5stack_stickc_plus.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stickc_plus.menu.DebugLevel.verbose=Verbose -m5stack_stickc_plus.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stickc_plus.menu.EraseFlash.none=Disabled -m5stack_stickc_plus.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stickc_plus.menu.EraseFlash.all=Enabled -m5stack_stickc_plus.menu.EraseFlash.all.upload.erase_cmd=-e - - - -############################################################## - -m5stack_stickc_plus2.name=M5StickCPlus2 - -m5stack_stickc_plus2.bootloader.tool=esptool_py -m5stack_stickc_plus2.bootloader.tool.default=esptool_py - -m5stack_stickc_plus2.upload.tool=esptool_py -m5stack_stickc_plus2.upload.tool.default=esptool_py -m5stack_stickc_plus2.upload.tool.network=esp_ota - -m5stack_stickc_plus2.upload.maximum_size=3342336 -m5stack_stickc_plus2.upload.maximum_data_size=327680 -m5stack_stickc_plus2.upload.flags= -m5stack_stickc_plus2.upload.extra_flags= - -m5stack_stickc_plus2.serial.disableDTR=true -m5stack_stickc_plus2.serial.disableRTS=true - -m5stack_stickc_plus2.build.tarch=xtensa -m5stack_stickc_plus2.build.bootloader_addr=0x1000 -m5stack_stickc_plus2.build.target=esp32 -m5stack_stickc_plus2.build.mcu=esp32 -m5stack_stickc_plus2.build.core=esp32 -m5stack_stickc_plus2.build.variant=m5stack_stickc_plus2 -m5stack_stickc_plus2.build.board=M5STACK_STICKC_PLUS2 - -m5stack_stickc_plus2.build.f_cpu=240000000L -m5stack_stickc_plus2.build.flash_size=8MB -m5stack_stickc_plus2.build.flash_freq=80m -m5stack_stickc_plus2.build.flash_mode=dio -m5stack_stickc_plus2.build.boot=dio -m5stack_stickc_plus2.build.partitions=default_8MB -m5stack_stickc_plus2.build.defines= -m5stack_stickc_plus2.build.loop_core= -m5stack_stickc_plus2.build.event_core= - -m5stack_stickc_plus2.menu.PSRAM.enabled=Enabled -m5stack_stickc_plus2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_stickc_plus2.menu.PSRAM.enabled.build.extra_libs= -m5stack_stickc_plus2.menu.PSRAM.disabled=Disabled -m5stack_stickc_plus2.menu.PSRAM.disabled.build.defines= -m5stack_stickc_plus2.menu.PSRAM.disabled.build.extra_libs= - -m5stack_stickc_plus2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_stickc_plus2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_stickc_plus2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stickc_plus2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stickc_plus2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.default.build.partitions=default -m5stack_stickc_plus2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stickc_plus2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stickc_plus2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stickc_plus2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stickc_plus2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stickc_plus2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stickc_plus2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stickc_plus2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stickc_plus2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stickc_plus2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stickc_plus2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stickc_plus2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stickc_plus2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stickc_plus2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stickc_plus2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stickc_plus2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_stickc_plus2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_stickc_plus2.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_stickc_plus2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_stickc_plus2.menu.PartitionScheme.rainmaker=RainMaker -m5stack_stickc_plus2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_stickc_plus2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_stickc_plus2.menu.PartitionScheme.custom=Custom -m5stack_stickc_plus2.menu.PartitionScheme.custom.build.partitions= -m5stack_stickc_plus2.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_stickc_plus2.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_stickc_plus2.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_stickc_plus2.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_stickc_plus2.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stickc_plus2.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_stickc_plus2.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stickc_plus2.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_stickc_plus2.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stickc_plus2.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_stickc_plus2.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_stickc_plus2.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_stickc_plus2.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stickc_plus2.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_stickc_plus2.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_stickc_plus2.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_stickc_plus2.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stickc_plus2.menu.FlashMode.qio=QIO -m5stack_stickc_plus2.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stickc_plus2.menu.FlashMode.qio.build.boot=qio -m5stack_stickc_plus2.menu.FlashMode.dio=DIO -m5stack_stickc_plus2.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stickc_plus2.menu.FlashMode.dio.build.boot=dio -m5stack_stickc_plus2.menu.FlashMode.qout=QOUT -m5stack_stickc_plus2.menu.FlashMode.qout.build.flash_mode=dout -m5stack_stickc_plus2.menu.FlashMode.qout.build.boot=qout -m5stack_stickc_plus2.menu.FlashMode.dout=DOUT -m5stack_stickc_plus2.menu.FlashMode.dout.build.flash_mode=dout -m5stack_stickc_plus2.menu.FlashMode.dout.build.boot=dout - -m5stack_stickc_plus2.menu.FlashFreq.80=80MHz -m5stack_stickc_plus2.menu.FlashFreq.80.build.flash_freq=80m -m5stack_stickc_plus2.menu.FlashFreq.40=40MHz -m5stack_stickc_plus2.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_stickc_plus2.menu.FlashSize.8M=8MB (64Mb) -m5stack_stickc_plus2.menu.FlashSize.8M.build.flash_size=8MB - -m5stack_stickc_plus2.menu.UploadSpeed.1500000=1500000 -m5stack_stickc_plus2.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_stickc_plus2.menu.UploadSpeed.750000=750000 -m5stack_stickc_plus2.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_stickc_plus2.menu.UploadSpeed.500000=500000 -m5stack_stickc_plus2.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_stickc_plus2.menu.UploadSpeed.250000=250000 -m5stack_stickc_plus2.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_stickc_plus2.menu.UploadSpeed.115200=115200 -m5stack_stickc_plus2.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_stickc_plus2.menu.LoopCore.1=Core 1 -m5stack_stickc_plus2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_stickc_plus2.menu.LoopCore.0=Core 0 -m5stack_stickc_plus2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_stickc_plus2.menu.EventsCore.1=Core 1 -m5stack_stickc_plus2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_stickc_plus2.menu.EventsCore.0=Core 0 -m5stack_stickc_plus2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_stickc_plus2.menu.DebugLevel.none=None -m5stack_stickc_plus2.menu.DebugLevel.none.build.code_debug=0 -m5stack_stickc_plus2.menu.DebugLevel.error=Error -m5stack_stickc_plus2.menu.DebugLevel.error.build.code_debug=1 -m5stack_stickc_plus2.menu.DebugLevel.warn=Warn -m5stack_stickc_plus2.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stickc_plus2.menu.DebugLevel.info=Info -m5stack_stickc_plus2.menu.DebugLevel.info.build.code_debug=3 -m5stack_stickc_plus2.menu.DebugLevel.debug=Debug -m5stack_stickc_plus2.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stickc_plus2.menu.DebugLevel.verbose=Verbose -m5stack_stickc_plus2.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stickc_plus2.menu.EraseFlash.none=Disabled -m5stack_stickc_plus2.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stickc_plus2.menu.EraseFlash.all=Enabled -m5stack_stickc_plus2.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_atom.name=M5Atom - -m5stack_atom.bootloader.tool=esptool_py -m5stack_atom.bootloader.tool.default=esptool_py - -m5stack_atom.upload.tool=esptool_py -m5stack_atom.upload.tool.default=esptool_py -m5stack_atom.upload.tool.network=esp_ota - -m5stack_atom.upload.maximum_size=1310720 -m5stack_atom.upload.maximum_data_size=327680 -m5stack_atom.upload.flags= -m5stack_atom.upload.extra_flags= - -m5stack_atom.serial.disableDTR=true -m5stack_atom.serial.disableRTS=true - -m5stack_atom.build.tarch=xtensa -m5stack_atom.build.bootloader_addr=0x1000 -m5stack_atom.build.target=esp32 -m5stack_atom.build.mcu=esp32 -m5stack_atom.build.core=esp32 -m5stack_atom.build.variant=m5stack_atom -m5stack_atom.build.board=M5STACK_ATOM - -m5stack_atom.build.f_cpu=240000000L -m5stack_atom.build.flash_size=4MB -m5stack_atom.build.flash_freq=80m -m5stack_atom.build.flash_mode=dio -m5stack_atom.build.boot=dio -m5stack_atom.build.partitions=huge_app -m5stack_atom.build.defines= -m5stack_atom.build.loop_core= -m5stack_atom.build.event_core= - -m5stack_atom.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_atom.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_atom.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_atom.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_atom.menu.PartitionScheme.default.build.partitions=default -m5stack_atom.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_atom.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_atom.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_atom.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_atom.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_atom.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_atom.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_atom.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_atom.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_atom.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_atom.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_atom.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_atom.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_atom.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_atom.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_atom.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_atom.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_atom.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_atom.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_atom.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_atom.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_atom.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_atom.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_atom.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_atom.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_atom.menu.PartitionScheme.rainmaker=RainMaker -m5stack_atom.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_atom.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_atom.menu.PartitionScheme.custom=Custom -m5stack_atom.menu.PartitionScheme.custom.build.partitions= -m5stack_atom.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_atom.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_atom.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_atom.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_atom.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_atom.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_atom.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_atom.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_atom.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_atom.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_atom.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_atom.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_atom.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_atom.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_atom.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_atom.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_atom.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_atom.menu.FlashMode.qio=QIO -m5stack_atom.menu.FlashMode.qio.build.flash_mode=dio -m5stack_atom.menu.FlashMode.qio.build.boot=qio -m5stack_atom.menu.FlashMode.dio=DIO -m5stack_atom.menu.FlashMode.dio.build.flash_mode=dio -m5stack_atom.menu.FlashMode.dio.build.boot=dio -m5stack_atom.menu.FlashMode.qout=QOUT -m5stack_atom.menu.FlashMode.qout.build.flash_mode=dout -m5stack_atom.menu.FlashMode.qout.build.boot=qout -m5stack_atom.menu.FlashMode.dout=DOUT -m5stack_atom.menu.FlashMode.dout.build.flash_mode=dout -m5stack_atom.menu.FlashMode.dout.build.boot=dout - -m5stack_atom.menu.FlashFreq.80=80MHz -m5stack_atom.menu.FlashFreq.80.build.flash_freq=80m -m5stack_atom.menu.FlashFreq.40=40MHz -m5stack_atom.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_atom.menu.FlashSize.4M=4MB (32Mb) -m5stack_atom.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_atom.menu.UploadSpeed.1500000=1500000 -m5stack_atom.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_atom.menu.UploadSpeed.750000=750000 -m5stack_atom.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_atom.menu.UploadSpeed.500000=500000 -m5stack_atom.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_atom.menu.UploadSpeed.250000=250000 -m5stack_atom.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_atom.menu.UploadSpeed.115200=115200 -m5stack_atom.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_atom.menu.LoopCore.1=Core 1 -m5stack_atom.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_atom.menu.LoopCore.0=Core 0 -m5stack_atom.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_atom.menu.EventsCore.1=Core 1 -m5stack_atom.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_atom.menu.EventsCore.0=Core 0 -m5stack_atom.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_atom.menu.DebugLevel.none=None -m5stack_atom.menu.DebugLevel.none.build.code_debug=0 -m5stack_atom.menu.DebugLevel.error=Error -m5stack_atom.menu.DebugLevel.error.build.code_debug=1 -m5stack_atom.menu.DebugLevel.warn=Warn -m5stack_atom.menu.DebugLevel.warn.build.code_debug=2 -m5stack_atom.menu.DebugLevel.info=Info -m5stack_atom.menu.DebugLevel.info.build.code_debug=3 -m5stack_atom.menu.DebugLevel.debug=Debug -m5stack_atom.menu.DebugLevel.debug.build.code_debug=4 -m5stack_atom.menu.DebugLevel.verbose=Verbose -m5stack_atom.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_atom.menu.EraseFlash.none=Disabled -m5stack_atom.menu.EraseFlash.none.upload.erase_cmd= -m5stack_atom.menu.EraseFlash.all=Enabled -m5stack_atom.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_atoms3.name=M5AtomS3 -m5stack_atoms3.vid.0=0x303a -m5stack_atoms3.pid.0=0x1001 -m5stack_atoms3.bootloader.tool=esptool_py -m5stack_atoms3.bootloader.tool.default=esptool_py - -m5stack_atoms3.upload.tool=esptool_py -m5stack_atoms3.upload.tool.default=esptool_py -m5stack_atoms3.upload.tool.network=esp_ota - -m5stack_atoms3.upload.maximum_size=1310720 -m5stack_atoms3.upload.maximum_data_size=327680 -m5stack_atoms3.upload.flags= -m5stack_atoms3.upload.extra_flags= -m5stack_atoms3.upload.use_1200bps_touch=false -m5stack_atoms3.upload.wait_for_upload_port=false - -m5stack_atoms3.serial.disableDTR=false -m5stack_atoms3.serial.disableRTS=false - -m5stack_atoms3.build.tarch=xtensa -m5stack_atoms3.build.bootloader_addr=0x0 -m5stack_atoms3.build.target=esp32s3 -m5stack_atoms3.build.mcu=esp32s3 -m5stack_atoms3.build.core=esp32 -m5stack_atoms3.build.variant=m5stack_atoms3 -m5stack_atoms3.build.board=M5STACK_ATOMS3 - -m5stack_atoms3.build.usb_mode=1 -m5stack_atoms3.build.cdc_on_boot=1 -m5stack_atoms3.build.msc_on_boot=0 -m5stack_atoms3.build.dfu_on_boot=0 -m5stack_atoms3.build.f_cpu=240000000L -m5stack_atoms3.build.flash_size=8MB -m5stack_atoms3.build.flash_freq=80m -m5stack_atoms3.build.flash_mode=dio -m5stack_atoms3.build.boot=qio -m5stack_atoms3.build.boot_freq=80m -m5stack_atoms3.build.partitions=default -m5stack_atoms3.build.defines= -m5stack_atoms3.build.loop_core= -m5stack_atoms3.build.event_core= -m5stack_atoms3.build.psram_type=qspi -m5stack_atoms3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_atoms3.menu.JTAGAdapter.default=Disabled -m5stack_atoms3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_atoms3.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_atoms3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_atoms3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_atoms3.menu.JTAGAdapter.external=FTDI Adapter -m5stack_atoms3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_atoms3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_atoms3.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_atoms3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_atoms3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_atoms3.menu.PSRAM.disabled=Disabled -m5stack_atoms3.menu.PSRAM.disabled.build.defines= -m5stack_atoms3.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_atoms3.menu.PSRAM.enabled=QSPI PSRAM -m5stack_atoms3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_atoms3.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_atoms3.menu.PSRAM.opi=OPI PSRAM -m5stack_atoms3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_atoms3.menu.PSRAM.opi.build.psram_type=opi - -m5stack_atoms3.menu.FlashMode.qio=QIO 80MHz -m5stack_atoms3.menu.FlashMode.qio.build.flash_mode=dio -m5stack_atoms3.menu.FlashMode.qio.build.boot=qio -m5stack_atoms3.menu.FlashMode.qio.build.boot_freq=80m -m5stack_atoms3.menu.FlashMode.qio.build.flash_freq=80m -m5stack_atoms3.menu.FlashMode.qio120=QIO 120MHz -m5stack_atoms3.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_atoms3.menu.FlashMode.qio120.build.boot=qio -m5stack_atoms3.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_atoms3.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_atoms3.menu.FlashMode.dio=DIO 80MHz -m5stack_atoms3.menu.FlashMode.dio.build.flash_mode=dio -m5stack_atoms3.menu.FlashMode.dio.build.boot=dio -m5stack_atoms3.menu.FlashMode.dio.build.boot_freq=80m -m5stack_atoms3.menu.FlashMode.dio.build.flash_freq=80m -m5stack_atoms3.menu.FlashMode.opi=OPI 80MHz -m5stack_atoms3.menu.FlashMode.opi.build.flash_mode=dout -m5stack_atoms3.menu.FlashMode.opi.build.boot=opi -m5stack_atoms3.menu.FlashMode.opi.build.boot_freq=80m -m5stack_atoms3.menu.FlashMode.opi.build.flash_freq=80m - - -m5stack_atoms3.menu.FlashSize.8M=8MB (64Mb) -m5stack_atoms3.menu.FlashSize.8M.build.flash_size=8MB -m5stack_atoms3.menu.FlashSize.8M.build.partitions=default_8MB - -m5stack_atoms3.menu.LoopCore.1=Core 1 -m5stack_atoms3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_atoms3.menu.LoopCore.0=Core 0 -m5stack_atoms3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_atoms3.menu.EventsCore.1=Core 1 -m5stack_atoms3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_atoms3.menu.EventsCore.0=Core 0 -m5stack_atoms3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_atoms3.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_atoms3.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_atoms3.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_atoms3.menu.USBMode.default.build.usb_mode=0 - -m5stack_atoms3.menu.CDCOnBoot.cdc=Enabled -m5stack_atoms3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_atoms3.menu.CDCOnBoot.default=Disabled -m5stack_atoms3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_atoms3.menu.MSCOnBoot.default=Disabled -m5stack_atoms3.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_atoms3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_atoms3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_atoms3.menu.DFUOnBoot.default=Disabled -m5stack_atoms3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_atoms3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_atoms3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_atoms3.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_atoms3.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_atoms3.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_atoms3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_atoms3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_atoms3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_atoms3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.default.build.partitions=default -m5stack_atoms3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_atoms3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_atoms3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_atoms3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_atoms3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_atoms3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_atoms3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_atoms3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_atoms3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_atoms3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_atoms3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_atoms3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_atoms3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_atoms3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_atoms3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_atoms3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_atoms3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_atoms3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_atoms3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_atoms3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_atoms3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_atoms3.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_atoms3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_atoms3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_atoms3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_atoms3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_atoms3.menu.PartitionScheme.rainmaker=RainMaker -m5stack_atoms3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_atoms3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_atoms3.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_atoms3.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_atoms3.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_atoms3.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_atoms3.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_atoms3.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_atoms3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_atoms3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_atoms3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_atoms3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_atoms3.menu.PartitionScheme.custom=Custom -m5stack_atoms3.menu.PartitionScheme.custom.build.partitions= -m5stack_atoms3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_atoms3.menu.CPUFreq.240=240MHz (WiFi) -m5stack_atoms3.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_atoms3.menu.CPUFreq.160=160MHz (WiFi) -m5stack_atoms3.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_atoms3.menu.CPUFreq.80=80MHz (WiFi) -m5stack_atoms3.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_atoms3.menu.CPUFreq.40=40MHz -m5stack_atoms3.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_atoms3.menu.CPUFreq.20=20MHz -m5stack_atoms3.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_atoms3.menu.CPUFreq.10=10MHz -m5stack_atoms3.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_atoms3.menu.UploadSpeed.921600=921600 -m5stack_atoms3.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_atoms3.menu.UploadSpeed.115200=115200 -m5stack_atoms3.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_atoms3.menu.UploadSpeed.256000.windows=256000 -m5stack_atoms3.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_atoms3.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_atoms3.menu.UploadSpeed.230400=230400 -m5stack_atoms3.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_atoms3.menu.UploadSpeed.460800.linux=460800 -m5stack_atoms3.menu.UploadSpeed.460800.macosx=460800 -m5stack_atoms3.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_atoms3.menu.UploadSpeed.512000.windows=512000 -m5stack_atoms3.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_atoms3.menu.DebugLevel.none=None -m5stack_atoms3.menu.DebugLevel.none.build.code_debug=0 -m5stack_atoms3.menu.DebugLevel.error=Error -m5stack_atoms3.menu.DebugLevel.error.build.code_debug=1 -m5stack_atoms3.menu.DebugLevel.warn=Warn -m5stack_atoms3.menu.DebugLevel.warn.build.code_debug=2 -m5stack_atoms3.menu.DebugLevel.info=Info -m5stack_atoms3.menu.DebugLevel.info.build.code_debug=3 -m5stack_atoms3.menu.DebugLevel.debug=Debug -m5stack_atoms3.menu.DebugLevel.debug.build.code_debug=4 -m5stack_atoms3.menu.DebugLevel.verbose=Verbose -m5stack_atoms3.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_atoms3.menu.EraseFlash.none=Disabled -m5stack_atoms3.menu.EraseFlash.none.upload.erase_cmd= -m5stack_atoms3.menu.EraseFlash.all=Enabled -m5stack_atoms3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_cores3.name=M5CoreS3 -m5stack_cores3.vid.0=0x303a -m5stack_cores3.pid.0=0x1001 -m5stack_cores3.bootloader.tool=esptool_py -m5stack_cores3.bootloader.tool.default=esptool_py - -m5stack_cores3.upload.tool=esptool_py -m5stack_cores3.upload.tool.default=esptool_py -m5stack_cores3.upload.tool.network=esp_ota - -m5stack_cores3.upload.maximum_size=1310720 -m5stack_cores3.upload.maximum_data_size=327680 -m5stack_cores3.upload.flags= -m5stack_cores3.upload.extra_flags= -m5stack_cores3.upload.use_1200bps_touch=false -m5stack_cores3.upload.wait_for_upload_port=false - -m5stack_cores3.serial.disableDTR=false -m5stack_cores3.serial.disableRTS=false - -m5stack_cores3.build.tarch=xtensa -m5stack_cores3.build.bootloader_addr=0x0 -m5stack_cores3.build.target=esp32s3 -m5stack_cores3.build.mcu=esp32s3 -m5stack_cores3.build.core=esp32 -m5stack_cores3.build.variant=m5stack_cores3 -m5stack_cores3.build.board=M5STACK_CORES3 - -m5stack_cores3.build.usb_mode=1 -m5stack_cores3.build.cdc_on_boot=1 -m5stack_cores3.build.msc_on_boot=0 -m5stack_cores3.build.dfu_on_boot=0 -m5stack_cores3.build.f_cpu=240000000L -m5stack_cores3.build.flash_size=16MB -m5stack_cores3.build.flash_freq=80m -m5stack_cores3.build.flash_mode=dio -m5stack_cores3.build.boot=qio -m5stack_cores3.build.boot_freq=80m -m5stack_cores3.build.partitions=default -m5stack_cores3.build.defines= -m5stack_cores3.build.loop_core= -m5stack_cores3.build.event_core= -m5stack_cores3.build.psram_type=qspi -m5stack_cores3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_cores3.menu.JTAGAdapter.default=Disabled -m5stack_cores3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_cores3.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_cores3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_cores3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_cores3.menu.JTAGAdapter.external=FTDI Adapter -m5stack_cores3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_cores3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_cores3.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_cores3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_cores3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_cores3.menu.PSRAM.enabled=QSPI PSRAM -m5stack_cores3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_cores3.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_cores3.menu.PSRAM.disabled=Disabled -m5stack_cores3.menu.PSRAM.disabled.build.defines= -m5stack_cores3.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_cores3.menu.PSRAM.opi=OPI PSRAM -m5stack_cores3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_cores3.menu.PSRAM.opi.build.psram_type=opi - -m5stack_cores3.menu.FlashMode.qio=QIO 80MHz -m5stack_cores3.menu.FlashMode.qio.build.flash_mode=dio -m5stack_cores3.menu.FlashMode.qio.build.boot=qio -m5stack_cores3.menu.FlashMode.qio.build.boot_freq=80m -m5stack_cores3.menu.FlashMode.qio.build.flash_freq=80m -m5stack_cores3.menu.FlashMode.qio120=QIO 120MHz -m5stack_cores3.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_cores3.menu.FlashMode.qio120.build.boot=qio -m5stack_cores3.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_cores3.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_cores3.menu.FlashMode.dio=DIO 80MHz -m5stack_cores3.menu.FlashMode.dio.build.flash_mode=dio -m5stack_cores3.menu.FlashMode.dio.build.boot=dio -m5stack_cores3.menu.FlashMode.dio.build.boot_freq=80m -m5stack_cores3.menu.FlashMode.dio.build.flash_freq=80m -m5stack_cores3.menu.FlashMode.opi=OPI 80MHz -m5stack_cores3.menu.FlashMode.opi.build.flash_mode=dout -m5stack_cores3.menu.FlashMode.opi.build.boot=opi -m5stack_cores3.menu.FlashMode.opi.build.boot_freq=80m -m5stack_cores3.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_cores3.menu.FlashSize.16M=16MB (128Mb) -m5stack_cores3.menu.FlashSize.16M.build.flash_size=16MB -m5stack_cores3.menu.FlashSize.32M=32MB (256Mb) -m5stack_cores3.menu.FlashSize.32M.build.flash_size=32MB -m5stack_cores3.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_cores3.menu.LoopCore.1=Core 1 -m5stack_cores3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_cores3.menu.LoopCore.0=Core 0 -m5stack_cores3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_cores3.menu.EventsCore.1=Core 1 -m5stack_cores3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_cores3.menu.EventsCore.0=Core 0 -m5stack_cores3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_cores3.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_cores3.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_cores3.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_cores3.menu.USBMode.default.build.usb_mode=0 - -m5stack_cores3.menu.CDCOnBoot.cdc=Enabled -m5stack_cores3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_cores3.menu.CDCOnBoot.default=Disabled -m5stack_cores3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_cores3.menu.MSCOnBoot.default=Disabled -m5stack_cores3.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_cores3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_cores3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_cores3.menu.DFUOnBoot.default=Disabled -m5stack_cores3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_cores3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_cores3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_cores3.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_cores3.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_cores3.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_cores3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_cores3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_cores3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_cores3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_cores3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_cores3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_cores3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.default.build.partitions=default -m5stack_cores3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_cores3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_cores3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_cores3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_cores3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_cores3.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_cores3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_cores3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_cores3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_cores3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_cores3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_cores3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_cores3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_cores3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_cores3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_cores3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_cores3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_cores3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_cores3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_cores3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_cores3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_cores3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_cores3.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_cores3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_cores3.menu.PartitionScheme.rainmaker=RainMaker -m5stack_cores3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_cores3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_cores3.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_cores3.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_cores3.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_cores3.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_cores3.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_cores3.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_cores3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_cores3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_cores3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_cores3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_cores3.menu.PartitionScheme.custom=Custom -m5stack_cores3.menu.PartitionScheme.custom.build.partitions= -m5stack_cores3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_cores3.menu.PartitionScheme.factory_4apps=16MB+Factory (4x 3MB APP/2MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.factory_4apps.build.custom_partitions=m5stack_partitions_16MB_factory_4_apps -m5stack_cores3.menu.PartitionScheme.factory_4apps.upload.maximum_size=3145728 -m5stack_cores3.menu.PartitionScheme.factory_6apps=16MB+Factory (6x 2MB APP/2MB SPIFFS) -m5stack_cores3.menu.PartitionScheme.factory_6apps.build.custom_partitions=m5stack_partitions_16MB_factory_6_apps -m5stack_cores3.menu.PartitionScheme.factory_6apps.upload.maximum_size=2097152 - -m5stack_cores3.menu.CPUFreq.240=240MHz (WiFi) -m5stack_cores3.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_cores3.menu.CPUFreq.160=160MHz (WiFi) -m5stack_cores3.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_cores3.menu.CPUFreq.80=80MHz (WiFi) -m5stack_cores3.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_cores3.menu.CPUFreq.40=40MHz -m5stack_cores3.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_cores3.menu.CPUFreq.20=20MHz -m5stack_cores3.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_cores3.menu.CPUFreq.10=10MHz -m5stack_cores3.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_cores3.menu.UploadSpeed.921600=921600 -m5stack_cores3.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_cores3.menu.UploadSpeed.115200=115200 -m5stack_cores3.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_cores3.menu.UploadSpeed.256000.windows=256000 -m5stack_cores3.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_cores3.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_cores3.menu.UploadSpeed.230400=230400 -m5stack_cores3.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_cores3.menu.UploadSpeed.460800.linux=460800 -m5stack_cores3.menu.UploadSpeed.460800.macosx=460800 -m5stack_cores3.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_cores3.menu.UploadSpeed.512000.windows=512000 -m5stack_cores3.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_cores3.menu.DebugLevel.none=None -m5stack_cores3.menu.DebugLevel.none.build.code_debug=0 -m5stack_cores3.menu.DebugLevel.error=Error -m5stack_cores3.menu.DebugLevel.error.build.code_debug=1 -m5stack_cores3.menu.DebugLevel.warn=Warn -m5stack_cores3.menu.DebugLevel.warn.build.code_debug=2 -m5stack_cores3.menu.DebugLevel.info=Info -m5stack_cores3.menu.DebugLevel.info.build.code_debug=3 -m5stack_cores3.menu.DebugLevel.debug=Debug -m5stack_cores3.menu.DebugLevel.debug.build.code_debug=4 -m5stack_cores3.menu.DebugLevel.verbose=Verbose -m5stack_cores3.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_cores3.menu.EraseFlash.none=Disabled -m5stack_cores3.menu.EraseFlash.none.upload.erase_cmd= -m5stack_cores3.menu.EraseFlash.all=Enabled -m5stack_cores3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_timer_cam.name=M5TimerCAM - -m5stack_timer_cam.bootloader.tool=esptool_py -m5stack_timer_cam.bootloader.tool.default=esptool_py - -m5stack_timer_cam.upload.tool=esptool_py -m5stack_timer_cam.upload.tool.default=esptool_py -m5stack_timer_cam.upload.tool.network=esp_ota - -m5stack_timer_cam.upload.maximum_size=1310720 -m5stack_timer_cam.upload.maximum_data_size=327680 - -m5stack_timer_cam.upload.flags= -m5stack_timer_cam.upload.extra_flags= - -m5stack_timer_cam.serial.disableDTR=true -m5stack_timer_cam.serial.disableRTS=true - -m5stack_timer_cam.build.tarch=xtensa -m5stack_timer_cam.build.bootloader_addr=0x1000 -m5stack_timer_cam.build.target=esp32 -m5stack_timer_cam.build.mcu=esp32 -m5stack_timer_cam.build.core=esp32 -m5stack_timer_cam.build.variant=m5stack_timer_cam -m5stack_timer_cam.build.board=M5STACK_TIMER_CAM - -m5stack_timer_cam.build.f_cpu=240000000L -m5stack_timer_cam.build.flash_size=4MB -m5stack_timer_cam.build.flash_freq=80m -m5stack_timer_cam.build.flash_mode=dio -m5stack_timer_cam.build.boot=dio -m5stack_timer_cam.build.partitions=default -m5stack_timer_cam.build.defines= -m5stack_timer_cam.build.loop_core= -m5stack_timer_cam.build.event_core= - -m5stack_timer_cam.menu.PSRAM.enabled=Enabled -m5stack_timer_cam.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_timer_cam.menu.PSRAM.enabled.build.extra_libs= -m5stack_timer_cam.menu.PSRAM.disabled=Disabled -m5stack_timer_cam.menu.PSRAM.disabled.build.defines= -m5stack_timer_cam.menu.PSRAM.disabled.build.extra_libs= - -m5stack_timer_cam.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.default.build.partitions=default -m5stack_timer_cam.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_timer_cam.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_timer_cam.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_timer_cam.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_timer_cam.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_timer_cam.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_timer_cam.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_timer_cam.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_timer_cam.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_timer_cam.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_timer_cam.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_timer_cam.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_timer_cam.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_timer_cam.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_timer_cam.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_timer_cam.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_timer_cam.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_timer_cam.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_timer_cam.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_timer_cam.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -m5stack_timer_cam.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_timer_cam.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_timer_cam.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_timer_cam.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_timer_cam.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_timer_cam.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_timer_cam.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_timer_cam.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_timer_cam.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_timer_cam.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_timer_cam.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_timer_cam.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_timer_cam.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_timer_cam.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_timer_cam.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_timer_cam.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_timer_cam.menu.FlashMode.qio=QIO -m5stack_timer_cam.menu.FlashMode.qio.build.flash_mode=dio -m5stack_timer_cam.menu.FlashMode.qio.build.boot=qio -m5stack_timer_cam.menu.FlashMode.dio=DIO -m5stack_timer_cam.menu.FlashMode.dio.build.flash_mode=dio -m5stack_timer_cam.menu.FlashMode.dio.build.boot=dio -m5stack_timer_cam.menu.FlashMode.qout=QOUT -m5stack_timer_cam.menu.FlashMode.qout.build.flash_mode=dout -m5stack_timer_cam.menu.FlashMode.qout.build.boot=qout -m5stack_timer_cam.menu.FlashMode.dout=DOUT -m5stack_timer_cam.menu.FlashMode.dout.build.flash_mode=dout -m5stack_timer_cam.menu.FlashMode.dout.build.boot=dout - -m5stack_timer_cam.menu.FlashFreq.80=80MHz -m5stack_timer_cam.menu.FlashFreq.80.build.flash_freq=80m -m5stack_timer_cam.menu.FlashFreq.40=40MHz -m5stack_timer_cam.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_timer_cam.menu.FlashSize.4M=4MB (32Mb) -m5stack_timer_cam.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_timer_cam.menu.UploadSpeed.1500000=1500000 -m5stack_timer_cam.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_timer_cam.menu.UploadSpeed.750000=750000 -m5stack_timer_cam.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_timer_cam.menu.UploadSpeed.500000=500000 -m5stack_timer_cam.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_timer_cam.menu.UploadSpeed.250000=250000 -m5stack_timer_cam.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_timer_cam.menu.UploadSpeed.115200=115200 -m5stack_timer_cam.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_timer_cam.menu.LoopCore.1=Core 1 -m5stack_timer_cam.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_timer_cam.menu.LoopCore.0=Core 0 -m5stack_timer_cam.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_timer_cam.menu.EventsCore.1=Core 1 -m5stack_timer_cam.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_timer_cam.menu.EventsCore.0=Core 0 -m5stack_timer_cam.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_timer_cam.menu.DebugLevel.none=None -m5stack_timer_cam.menu.DebugLevel.none.build.code_debug=0 -m5stack_timer_cam.menu.DebugLevel.error=Error -m5stack_timer_cam.menu.DebugLevel.error.build.code_debug=1 -m5stack_timer_cam.menu.DebugLevel.warn=Warn -m5stack_timer_cam.menu.DebugLevel.warn.build.code_debug=2 -m5stack_timer_cam.menu.DebugLevel.info=Info -m5stack_timer_cam.menu.DebugLevel.info.build.code_debug=3 -m5stack_timer_cam.menu.DebugLevel.debug=Debug -m5stack_timer_cam.menu.DebugLevel.debug.build.code_debug=4 -m5stack_timer_cam.menu.DebugLevel.verbose=Verbose -m5stack_timer_cam.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_timer_cam.menu.EraseFlash.none=Disabled -m5stack_timer_cam.menu.EraseFlash.none.upload.erase_cmd= -m5stack_timer_cam.menu.EraseFlash.all=Enabled -m5stack_timer_cam.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - - -m5stack_unit_cam.name=M5UnitCAM - -m5stack_unit_cam.bootloader.tool=esptool_py -m5stack_unit_cam.bootloader.tool.default=esptool_py - -m5stack_unit_cam.upload.tool=esptool_py -m5stack_unit_cam.upload.tool.default=esptool_py -m5stack_unit_cam.upload.tool.network=esp_ota - -m5stack_unit_cam.upload.maximum_size=1310720 -m5stack_unit_cam.upload.maximum_data_size=327680 - -m5stack_unit_cam.upload.flags= -m5stack_unit_cam.upload.extra_flags= - -m5stack_unit_cam.serial.disableDTR=true -m5stack_unit_cam.serial.disableRTS=true - -m5stack_unit_cam.build.tarch=xtensa -m5stack_unit_cam.build.bootloader_addr=0x1000 -m5stack_unit_cam.build.target=esp32 -m5stack_unit_cam.build.mcu=esp32 -m5stack_unit_cam.build.core=esp32 -m5stack_unit_cam.build.variant=m5stack_unit_cam -m5stack_unit_cam.build.board=M5STACK_UNIT_CAM - -m5stack_unit_cam.build.f_cpu=240000000L -m5stack_unit_cam.build.flash_size=4MB -m5stack_unit_cam.build.flash_freq=80m -m5stack_unit_cam.build.flash_mode=dio -m5stack_unit_cam.build.boot=dio -m5stack_unit_cam.build.partitions=default -m5stack_unit_cam.build.defines= -m5stack_unit_cam.build.loop_core= -m5stack_unit_cam.build.event_core= - -m5stack_unit_cam.menu.PSRAM.enabled=Enabled -m5stack_unit_cam.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_unit_cam.menu.PSRAM.enabled.build.extra_libs= -m5stack_unit_cam.menu.PSRAM.disabled=Disabled -m5stack_unit_cam.menu.PSRAM.disabled.build.defines= -m5stack_unit_cam.menu.PSRAM.disabled.build.extra_libs= - -m5stack_unit_cam.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.default.build.partitions=default -m5stack_unit_cam.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_unit_cam.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_unit_cam.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_unit_cam.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_unit_cam.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_unit_cam.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_unit_cam.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_unit_cam.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_unit_cam.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_unit_cam.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_unit_cam.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_unit_cam.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_unit_cam.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_unit_cam.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_unit_cam.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_unit_cam.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_unit_cam.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_unit_cam.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_unit_cam.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_unit_cam.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -m5stack_unit_cam.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_unit_cam.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_unit_cam.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_unit_cam.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_unit_cam.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_unit_cam.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_unit_cam.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_unit_cam.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_unit_cam.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_unit_cam.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_unit_cam.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_unit_cam.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_unit_cam.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_unit_cam.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_unit_cam.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_unit_cam.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_unit_cam.menu.FlashMode.qio=QIO -m5stack_unit_cam.menu.FlashMode.qio.build.flash_mode=dio -m5stack_unit_cam.menu.FlashMode.qio.build.boot=qio -m5stack_unit_cam.menu.FlashMode.dio=DIO -m5stack_unit_cam.menu.FlashMode.dio.build.flash_mode=dio -m5stack_unit_cam.menu.FlashMode.dio.build.boot=dio -m5stack_unit_cam.menu.FlashMode.qout=QOUT -m5stack_unit_cam.menu.FlashMode.qout.build.flash_mode=dout -m5stack_unit_cam.menu.FlashMode.qout.build.boot=qout -m5stack_unit_cam.menu.FlashMode.dout=DOUT -m5stack_unit_cam.menu.FlashMode.dout.build.flash_mode=dout -m5stack_unit_cam.menu.FlashMode.dout.build.boot=dout - -m5stack_unit_cam.menu.FlashFreq.80=80MHz -m5stack_unit_cam.menu.FlashFreq.80.build.flash_freq=80m -m5stack_unit_cam.menu.FlashFreq.40=40MHz -m5stack_unit_cam.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_unit_cam.menu.FlashSize.4M=4MB (32Mb) -m5stack_unit_cam.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_unit_cam.menu.UploadSpeed.1500000=1500000 -m5stack_unit_cam.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_unit_cam.menu.UploadSpeed.750000=750000 -m5stack_unit_cam.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_unit_cam.menu.UploadSpeed.500000=500000 -m5stack_unit_cam.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_unit_cam.menu.UploadSpeed.250000=250000 -m5stack_unit_cam.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_unit_cam.menu.UploadSpeed.115200=115200 -m5stack_unit_cam.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_unit_cam.menu.LoopCore.1=Core 1 -m5stack_unit_cam.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_unit_cam.menu.LoopCore.0=Core 0 -m5stack_unit_cam.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_unit_cam.menu.EventsCore.1=Core 1 -m5stack_unit_cam.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_unit_cam.menu.EventsCore.0=Core 0 -m5stack_unit_cam.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_unit_cam.menu.DebugLevel.none=None -m5stack_unit_cam.menu.DebugLevel.none.build.code_debug=0 -m5stack_unit_cam.menu.DebugLevel.error=Error -m5stack_unit_cam.menu.DebugLevel.error.build.code_debug=1 -m5stack_unit_cam.menu.DebugLevel.warn=Warn -m5stack_unit_cam.menu.DebugLevel.warn.build.code_debug=2 -m5stack_unit_cam.menu.DebugLevel.info=Info -m5stack_unit_cam.menu.DebugLevel.info.build.code_debug=3 -m5stack_unit_cam.menu.DebugLevel.debug=Debug -m5stack_unit_cam.menu.DebugLevel.debug.build.code_debug=4 -m5stack_unit_cam.menu.DebugLevel.verbose=Verbose -m5stack_unit_cam.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_unit_cam.menu.EraseFlash.none=Disabled -m5stack_unit_cam.menu.EraseFlash.none.upload.erase_cmd= -m5stack_unit_cam.menu.EraseFlash.all=Enabled -m5stack_unit_cam.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_unit_cams3.name=M5UnitCAMS3 -m5stack_unit_cams3.vid.0=0x303a -m5stack_unit_cams3.pid.0=0x1001 -m5stack_unit_cams3.bootloader.tool=esptool_py -m5stack_unit_cams3.bootloader.tool.default=esptool_py - -m5stack_unit_cams3.upload.tool=esptool_py -m5stack_unit_cams3.upload.tool.default=esptool_py -m5stack_unit_cams3.upload.tool.network=esp_ota - -m5stack_unit_cams3.upload.maximum_size=1310720 -m5stack_unit_cams3.upload.maximum_data_size=327680 -m5stack_unit_cams3.upload.flags= -m5stack_unit_cams3.upload.extra_flags= -m5stack_unit_cams3.upload.use_1200bps_touch=false -m5stack_unit_cams3.upload.wait_for_upload_port=false - -m5stack_unit_cams3.serial.disableDTR=false -m5stack_unit_cams3.serial.disableRTS=false - -m5stack_unit_cams3.build.tarch=xtensa -m5stack_unit_cams3.build.bootloader_addr=0x0 -m5stack_unit_cams3.build.target=esp32s3 -m5stack_unit_cams3.build.mcu=esp32s3 -m5stack_unit_cams3.build.core=esp32 -m5stack_unit_cams3.build.variant=m5stack_unit_cams3 -m5stack_unit_cams3.build.board=M5STACK_UNIT_CAMS3 - -m5stack_unit_cams3.build.usb_mode=1 -m5stack_unit_cams3.build.cdc_on_boot=1 -m5stack_unit_cams3.build.msc_on_boot=0 -m5stack_unit_cams3.build.dfu_on_boot=0 -m5stack_unit_cams3.build.f_cpu=240000000L -m5stack_unit_cams3.build.flash_size=16MB -m5stack_unit_cams3.build.flash_freq=80m -m5stack_unit_cams3.build.flash_mode=dio -m5stack_unit_cams3.build.boot=qio -m5stack_unit_cams3.build.boot_freq=80m -m5stack_unit_cams3.build.partitions=default -m5stack_unit_cams3.build.defines= -m5stack_unit_cams3.build.loop_core= -m5stack_unit_cams3.build.event_core= -m5stack_unit_cams3.build.psram_type=qspi -m5stack_unit_cams3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_unit_cams3.menu.JTAGAdapter.default=Disabled -m5stack_unit_cams3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_unit_cams3.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_unit_cams3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_unit_cams3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_unit_cams3.menu.JTAGAdapter.external=FTDI Adapter -m5stack_unit_cams3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_unit_cams3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_unit_cams3.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_unit_cams3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_unit_cams3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_unit_cams3.menu.PSRAM.enabled=QSPI PSRAM -m5stack_unit_cams3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_unit_cams3.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_unit_cams3.menu.PSRAM.disabled=Disabled -m5stack_unit_cams3.menu.PSRAM.disabled.build.defines= -m5stack_unit_cams3.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_unit_cams3.menu.PSRAM.opi=OPI PSRAM -m5stack_unit_cams3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_unit_cams3.menu.PSRAM.opi.build.psram_type=opi - -m5stack_unit_cams3.menu.FlashMode.qio=QIO 80MHz -m5stack_unit_cams3.menu.FlashMode.qio.build.flash_mode=dio -m5stack_unit_cams3.menu.FlashMode.qio.build.boot=qio -m5stack_unit_cams3.menu.FlashMode.qio.build.boot_freq=80m -m5stack_unit_cams3.menu.FlashMode.qio.build.flash_freq=80m -m5stack_unit_cams3.menu.FlashMode.qio120=QIO 120MHz -m5stack_unit_cams3.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_unit_cams3.menu.FlashMode.qio120.build.boot=qio -m5stack_unit_cams3.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_unit_cams3.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_unit_cams3.menu.FlashMode.dio=DIO 80MHz -m5stack_unit_cams3.menu.FlashMode.dio.build.flash_mode=dio -m5stack_unit_cams3.menu.FlashMode.dio.build.boot=dio -m5stack_unit_cams3.menu.FlashMode.dio.build.boot_freq=80m -m5stack_unit_cams3.menu.FlashMode.dio.build.flash_freq=80m -m5stack_unit_cams3.menu.FlashMode.opi=OPI 80MHz -m5stack_unit_cams3.menu.FlashMode.opi.build.flash_mode=dout -m5stack_unit_cams3.menu.FlashMode.opi.build.boot=opi -m5stack_unit_cams3.menu.FlashMode.opi.build.boot_freq=80m -m5stack_unit_cams3.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_unit_cams3.menu.FlashSize.16M=16MB (128Mb) -m5stack_unit_cams3.menu.FlashSize.16M.build.flash_size=16MB -m5stack_unit_cams3.menu.FlashSize.32M=32MB (256Mb) -m5stack_unit_cams3.menu.FlashSize.32M.build.flash_size=32MB -m5stack_unit_cams3.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_unit_cams3.menu.LoopCore.1=Core 1 -m5stack_unit_cams3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_unit_cams3.menu.LoopCore.0=Core 0 -m5stack_unit_cams3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_unit_cams3.menu.EventsCore.1=Core 1 -m5stack_unit_cams3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_unit_cams3.menu.EventsCore.0=Core 0 -m5stack_unit_cams3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_unit_cams3.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_unit_cams3.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_unit_cams3.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_unit_cams3.menu.USBMode.default.build.usb_mode=0 - -m5stack_unit_cams3.menu.CDCOnBoot.cdc=Enabled -m5stack_unit_cams3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_unit_cams3.menu.CDCOnBoot.default=Disabled -m5stack_unit_cams3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_unit_cams3.menu.MSCOnBoot.default=Disabled -m5stack_unit_cams3.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_unit_cams3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_unit_cams3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_unit_cams3.menu.DFUOnBoot.default=Disabled -m5stack_unit_cams3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_unit_cams3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_unit_cams3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_unit_cams3.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_unit_cams3.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_unit_cams3.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_unit_cams3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_unit_cams3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_unit_cams3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_unit_cams3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_unit_cams3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_unit_cams3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.default.build.partitions=default -m5stack_unit_cams3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_unit_cams3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_unit_cams3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_unit_cams3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_unit_cams3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_unit_cams3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_unit_cams3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_unit_cams3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_unit_cams3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_unit_cams3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_unit_cams3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_unit_cams3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_unit_cams3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_unit_cams3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_unit_cams3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_unit_cams3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_unit_cams3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_unit_cams3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_unit_cams3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_unit_cams3.menu.PartitionScheme.rainmaker=RainMaker -m5stack_unit_cams3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_unit_cams3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_unit_cams3.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_unit_cams3.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_unit_cams3.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_unit_cams3.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_unit_cams3.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_unit_cams3.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_unit_cams3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_unit_cams3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_unit_cams3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_unit_cams3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_unit_cams3.menu.PartitionScheme.custom=Custom -m5stack_unit_cams3.menu.PartitionScheme.custom.build.partitions= -m5stack_unit_cams3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_unit_cams3.menu.CPUFreq.240=240MHz (WiFi) -m5stack_unit_cams3.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_unit_cams3.menu.CPUFreq.160=160MHz (WiFi) -m5stack_unit_cams3.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_unit_cams3.menu.CPUFreq.80=80MHz (WiFi) -m5stack_unit_cams3.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_unit_cams3.menu.CPUFreq.40=40MHz -m5stack_unit_cams3.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_unit_cams3.menu.CPUFreq.20=20MHz -m5stack_unit_cams3.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_unit_cams3.menu.CPUFreq.10=10MHz -m5stack_unit_cams3.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_unit_cams3.menu.UploadSpeed.921600=921600 -m5stack_unit_cams3.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_unit_cams3.menu.UploadSpeed.115200=115200 -m5stack_unit_cams3.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_unit_cams3.menu.UploadSpeed.256000.windows=256000 -m5stack_unit_cams3.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_unit_cams3.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_unit_cams3.menu.UploadSpeed.230400=230400 -m5stack_unit_cams3.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_unit_cams3.menu.UploadSpeed.460800.linux=460800 -m5stack_unit_cams3.menu.UploadSpeed.460800.macosx=460800 -m5stack_unit_cams3.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_unit_cams3.menu.UploadSpeed.512000.windows=512000 -m5stack_unit_cams3.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_unit_cams3.menu.DebugLevel.none=None -m5stack_unit_cams3.menu.DebugLevel.none.build.code_debug=0 -m5stack_unit_cams3.menu.DebugLevel.error=Error -m5stack_unit_cams3.menu.DebugLevel.error.build.code_debug=1 -m5stack_unit_cams3.menu.DebugLevel.warn=Warn -m5stack_unit_cams3.menu.DebugLevel.warn.build.code_debug=2 -m5stack_unit_cams3.menu.DebugLevel.info=Info -m5stack_unit_cams3.menu.DebugLevel.info.build.code_debug=3 -m5stack_unit_cams3.menu.DebugLevel.debug=Debug -m5stack_unit_cams3.menu.DebugLevel.debug.build.code_debug=4 -m5stack_unit_cams3.menu.DebugLevel.verbose=Verbose -m5stack_unit_cams3.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_unit_cams3.menu.EraseFlash.none=Disabled -m5stack_unit_cams3.menu.EraseFlash.none.upload.erase_cmd= -m5stack_unit_cams3.menu.EraseFlash.all=Enabled -m5stack_unit_cams3.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_poe_cam.name=M5PoECAM - -m5stack_poe_cam.bootloader.tool=esptool_py -m5stack_poe_cam.bootloader.tool.default=esptool_py - -m5stack_poe_cam.upload.tool=esptool_py -m5stack_poe_cam.upload.tool.default=esptool_py -m5stack_poe_cam.upload.tool.network=esp_ota - -m5stack_poe_cam.upload.maximum_size=1310720 -m5stack_poe_cam.upload.maximum_data_size=327680 - -m5stack_poe_cam.upload.flags= -m5stack_poe_cam.upload.extra_flags= - -m5stack_poe_cam.serial.disableDTR=true -m5stack_poe_cam.serial.disableRTS=true - -m5stack_poe_cam.build.tarch=xtensa -m5stack_poe_cam.build.bootloader_addr=0x1000 -m5stack_poe_cam.build.target=esp32 -m5stack_poe_cam.build.mcu=esp32 -m5stack_poe_cam.build.core=esp32 -m5stack_poe_cam.build.variant=m5stack_poe_cam -m5stack_poe_cam.build.board=M5STACK_POE_CAM - -m5stack_poe_cam.build.f_cpu=240000000L -m5stack_poe_cam.build.flash_size=4MB -m5stack_poe_cam.build.flash_freq=80m -m5stack_poe_cam.build.flash_mode=dio -m5stack_poe_cam.build.boot=dio -m5stack_poe_cam.build.partitions=default -m5stack_poe_cam.build.defines= -m5stack_poe_cam.build.loop_core= -m5stack_poe_cam.build.event_core= - -m5stack_poe_cam.menu.PSRAM.enabled=Enabled -m5stack_poe_cam.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_poe_cam.menu.PSRAM.enabled.build.extra_libs= -m5stack_poe_cam.menu.PSRAM.disabled=Disabled -m5stack_poe_cam.menu.PSRAM.disabled.build.defines= -m5stack_poe_cam.menu.PSRAM.disabled.build.extra_libs= - -m5stack_poe_cam.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.default.build.partitions=default -m5stack_poe_cam.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_poe_cam.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_poe_cam.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_poe_cam.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_poe_cam.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_poe_cam.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_poe_cam.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_poe_cam.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_poe_cam.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_poe_cam.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_poe_cam.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_poe_cam.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_poe_cam.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_poe_cam.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_poe_cam.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_poe_cam.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_poe_cam.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_poe_cam.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_poe_cam.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_poe_cam.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -m5stack_poe_cam.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_poe_cam.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_poe_cam.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_poe_cam.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_poe_cam.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_poe_cam.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_poe_cam.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_poe_cam.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_poe_cam.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_poe_cam.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_poe_cam.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_poe_cam.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_poe_cam.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_poe_cam.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_poe_cam.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_poe_cam.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_poe_cam.menu.FlashMode.qio=QIO -m5stack_poe_cam.menu.FlashMode.qio.build.flash_mode=dio -m5stack_poe_cam.menu.FlashMode.qio.build.boot=qio -m5stack_poe_cam.menu.FlashMode.dio=DIO -m5stack_poe_cam.menu.FlashMode.dio.build.flash_mode=dio -m5stack_poe_cam.menu.FlashMode.dio.build.boot=dio -m5stack_poe_cam.menu.FlashMode.qout=QOUT -m5stack_poe_cam.menu.FlashMode.qout.build.flash_mode=dout -m5stack_poe_cam.menu.FlashMode.qout.build.boot=qout -m5stack_poe_cam.menu.FlashMode.dout=DOUT -m5stack_poe_cam.menu.FlashMode.dout.build.flash_mode=dout -m5stack_poe_cam.menu.FlashMode.dout.build.boot=dout - -m5stack_poe_cam.menu.FlashFreq.80=80MHz -m5stack_poe_cam.menu.FlashFreq.80.build.flash_freq=80m -m5stack_poe_cam.menu.FlashFreq.40=40MHz -m5stack_poe_cam.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_poe_cam.menu.FlashSize.4M=4MB (32Mb) -m5stack_poe_cam.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_poe_cam.menu.UploadSpeed.1500000=1500000 -m5stack_poe_cam.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_poe_cam.menu.UploadSpeed.750000=750000 -m5stack_poe_cam.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_poe_cam.menu.UploadSpeed.500000=500000 -m5stack_poe_cam.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_poe_cam.menu.UploadSpeed.250000=250000 -m5stack_poe_cam.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_poe_cam.menu.UploadSpeed.115200=115200 -m5stack_poe_cam.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_poe_cam.menu.LoopCore.1=Core 1 -m5stack_poe_cam.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_poe_cam.menu.LoopCore.0=Core 0 -m5stack_poe_cam.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_poe_cam.menu.EventsCore.1=Core 1 -m5stack_poe_cam.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_poe_cam.menu.EventsCore.0=Core 0 -m5stack_poe_cam.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_poe_cam.menu.DebugLevel.none=None -m5stack_poe_cam.menu.DebugLevel.none.build.code_debug=0 -m5stack_poe_cam.menu.DebugLevel.error=Error -m5stack_poe_cam.menu.DebugLevel.error.build.code_debug=1 -m5stack_poe_cam.menu.DebugLevel.warn=Warn -m5stack_poe_cam.menu.DebugLevel.warn.build.code_debug=2 -m5stack_poe_cam.menu.DebugLevel.info=Info -m5stack_poe_cam.menu.DebugLevel.info.build.code_debug=3 -m5stack_poe_cam.menu.DebugLevel.debug=Debug -m5stack_poe_cam.menu.DebugLevel.debug.build.code_debug=4 -m5stack_poe_cam.menu.DebugLevel.verbose=Verbose -m5stack_poe_cam.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_poe_cam.menu.EraseFlash.none=Disabled -m5stack_poe_cam.menu.EraseFlash.none.upload.erase_cmd= -m5stack_poe_cam.menu.EraseFlash.all=Enabled -m5stack_poe_cam.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_paper.name=M5Paper - -m5stack_paper.bootloader.tool=esptool_py -m5stack_paper.bootloader.tool.default=esptool_py - -m5stack_paper.upload.tool=esptool_py -m5stack_paper.upload.tool.default=esptool_py -m5stack_paper.upload.tool.network=esp_ota - -m5stack_paper.upload.maximum_size=6553600 -m5stack_paper.upload.maximum_data_size=4521984 -m5stack_paper.upload.flags= -m5stack_paper.upload.extra_flags= - -m5stack_paper.serial.disableDTR=true -m5stack_paper.serial.disableRTS=true - -m5stack_paper.build.tarch=xtensa -m5stack_paper.build.bootloader_addr=0x1000 -m5stack_paper.build.target=esp32 -m5stack_paper.build.mcu=esp32 -m5stack_paper.build.core=esp32 -m5stack_paper.build.variant=m5stack_paper -m5stack_paper.build.board=M5STACK_PAPER - -m5stack_paper.build.f_cpu=240000000L -m5stack_paper.build.flash_size=16MB -m5stack_paper.build.flash_freq=80m -m5stack_paper.build.flash_mode=dio -m5stack_paper.build.boot=dio -m5stack_paper.build.partitions=default -m5stack_paper.build.defines= -m5stack_paper.build.loop_core= -m5stack_paper.build.event_core= - -m5stack_paper.menu.PSRAM.enabled=Enabled -m5stack_paper.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -m5stack_paper.menu.PSRAM.enabled.build.extra_libs= -m5stack_paper.menu.PSRAM.disabled=Disabled -m5stack_paper.menu.PSRAM.disabled.build.defines= -m5stack_paper.menu.PSRAM.disabled.build.extra_libs= - -m5stack_paper.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -m5stack_paper.menu.PartitionScheme.default.build.partitions=default_16MB -m5stack_paper.menu.PartitionScheme.default.upload.maximum_size=6553600 -m5stack_paper.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_paper.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_paper.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_paper.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_paper.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_paper.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_paper.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_paper.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_paper.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_paper.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_paper.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_paper.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_paper.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_paper.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_paper.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_paper.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_paper.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_paper.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_paper.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_paper.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_paper.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_paper.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_paper.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_paper.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_paper.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_paper.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_paper.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_paper.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_paper.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_paper.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_paper.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_paper.menu.PartitionScheme.rainmaker=RainMaker -m5stack_paper.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_paper.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_paper.menu.PartitionScheme.custom=Custom -m5stack_paper.menu.PartitionScheme.custom.build.partitions= -m5stack_paper.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_paper.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_paper.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_paper.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_paper.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_paper.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_paper.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_paper.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_paper.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_paper.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_paper.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_paper.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_paper.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_paper.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_paper.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_paper.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_paper.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_paper.menu.FlashMode.qio=QIO -m5stack_paper.menu.FlashMode.qio.build.flash_mode=dio -m5stack_paper.menu.FlashMode.qio.build.boot=qio -m5stack_paper.menu.FlashMode.dio=DIO -m5stack_paper.menu.FlashMode.dio.build.flash_mode=dio -m5stack_paper.menu.FlashMode.dio.build.boot=dio -m5stack_paper.menu.FlashMode.qout=QOUT -m5stack_paper.menu.FlashMode.qout.build.flash_mode=dout -m5stack_paper.menu.FlashMode.qout.build.boot=qout -m5stack_paper.menu.FlashMode.dout=DOUT -m5stack_paper.menu.FlashMode.dout.build.flash_mode=dout -m5stack_paper.menu.FlashMode.dout.build.boot=dout - -m5stack_paper.menu.FlashFreq.80=80MHz -m5stack_paper.menu.FlashFreq.80.build.flash_freq=80m -m5stack_paper.menu.FlashFreq.40=40MHz -m5stack_paper.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_paper.menu.FlashSize.16M=16MB (128Mb) -m5stack_paper.menu.FlashSize.16M.build.flash_size=16MB - -m5stack_paper.menu.UploadSpeed.1500000=1500000 -m5stack_paper.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_paper.menu.UploadSpeed.921600=921600 -m5stack_paper.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_paper.menu.UploadSpeed.115200=115200 -m5stack_paper.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_paper.menu.UploadSpeed.256000.windows=256000 -m5stack_paper.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_paper.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_paper.menu.UploadSpeed.230400=230400 -m5stack_paper.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_paper.menu.UploadSpeed.460800.linux=460800 -m5stack_paper.menu.UploadSpeed.460800.macosx=460800 -m5stack_paper.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_paper.menu.UploadSpeed.512000.windows=512000 -m5stack_paper.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_paper.menu.LoopCore.1=Core 1 -m5stack_paper.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_paper.menu.LoopCore.0=Core 0 -m5stack_paper.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_paper.menu.EventsCore.1=Core 1 -m5stack_paper.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_paper.menu.EventsCore.0=Core 0 -m5stack_paper.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_paper.menu.DebugLevel.none=None -m5stack_paper.menu.DebugLevel.none.build.code_debug=0 -m5stack_paper.menu.DebugLevel.error=Error -m5stack_paper.menu.DebugLevel.error.build.code_debug=1 -m5stack_paper.menu.DebugLevel.warn=Warn -m5stack_paper.menu.DebugLevel.warn.build.code_debug=2 -m5stack_paper.menu.DebugLevel.info=Info -m5stack_paper.menu.DebugLevel.info.build.code_debug=3 -m5stack_paper.menu.DebugLevel.debug=Debug -m5stack_paper.menu.DebugLevel.debug.build.code_debug=4 -m5stack_paper.menu.DebugLevel.verbose=Verbose -m5stack_paper.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_paper.menu.EraseFlash.none=Disabled -m5stack_paper.menu.EraseFlash.none.upload.erase_cmd= -m5stack_paper.menu.EraseFlash.all=Enabled -m5stack_paper.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_coreink.name=M5CoreInk - -m5stack_coreink.bootloader.tool=esptool_py -m5stack_coreink.bootloader.tool.default=esptool_py - -m5stack_coreink.upload.tool=esptool_py -m5stack_coreink.upload.tool.default=esptool_py -m5stack_coreink.upload.tool.network=esp_ota - -m5stack_coreink.upload.maximum_size=1310720 -m5stack_coreink.upload.maximum_data_size=327680 -m5stack_coreink.upload.flags= -m5stack_coreink.upload.extra_flags= - -m5stack_coreink.serial.disableDTR=true -m5stack_coreink.serial.disableRTS=true - -m5stack_coreink.build.tarch=xtensa -m5stack_coreink.build.bootloader_addr=0x1000 -m5stack_coreink.build.target=esp32 -m5stack_coreink.build.mcu=esp32 -m5stack_coreink.build.core=esp32 -m5stack_coreink.build.variant=m5stack_coreink -m5stack_coreink.build.board=M5STACK_COREINK - -m5stack_coreink.build.f_cpu=240000000L -m5stack_coreink.build.flash_size=4MB -m5stack_coreink.build.flash_freq=80m -m5stack_coreink.build.flash_mode=dio -m5stack_coreink.build.boot=dio -m5stack_coreink.build.partitions=default -m5stack_coreink.build.defines= -m5stack_coreink.build.loop_core= -m5stack_coreink.build.event_core= - -m5stack_coreink.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_coreink.menu.PartitionScheme.default.build.partitions=default -m5stack_coreink.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_coreink.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_coreink.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_coreink.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_coreink.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_coreink.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_coreink.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_coreink.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_coreink.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_coreink.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_coreink.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_coreink.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_coreink.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_coreink.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_coreink.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_coreink.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_coreink.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_coreink.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_coreink.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_coreink.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_coreink.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_coreink.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_coreink.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_coreink.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_coreink.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_coreink.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_coreink.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_coreink.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_coreink.menu.PartitionScheme.rainmaker=RainMaker -m5stack_coreink.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_coreink.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_coreink.menu.PartitionScheme.custom=Custom -m5stack_coreink.menu.PartitionScheme.custom.build.partitions= -m5stack_coreink.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_coreink.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_coreink.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_coreink.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_coreink.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_coreink.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_coreink.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_coreink.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_coreink.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_coreink.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_coreink.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_coreink.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_coreink.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_coreink.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_coreink.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_coreink.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_coreink.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_coreink.menu.FlashMode.qio=QIO -m5stack_coreink.menu.FlashMode.qio.build.flash_mode=dio -m5stack_coreink.menu.FlashMode.qio.build.boot=qio -m5stack_coreink.menu.FlashMode.dio=DIO -m5stack_coreink.menu.FlashMode.dio.build.flash_mode=dio -m5stack_coreink.menu.FlashMode.dio.build.boot=dio -m5stack_coreink.menu.FlashMode.qout=QOUT -m5stack_coreink.menu.FlashMode.qout.build.flash_mode=dout -m5stack_coreink.menu.FlashMode.qout.build.boot=qout -m5stack_coreink.menu.FlashMode.dout=DOUT -m5stack_coreink.menu.FlashMode.dout.build.flash_mode=dout -m5stack_coreink.menu.FlashMode.dout.build.boot=dout - -m5stack_coreink.menu.FlashFreq.80=80MHz -m5stack_coreink.menu.FlashFreq.80.build.flash_freq=80m -m5stack_coreink.menu.FlashFreq.40=40MHz -m5stack_coreink.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_coreink.menu.FlashSize.4M=4MB (32Mb) -m5stack_coreink.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_coreink.menu.UploadSpeed.1500000=1500000 -m5stack_coreink.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_coreink.menu.UploadSpeed.750000=750000 -m5stack_coreink.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_coreink.menu.UploadSpeed.500000=500000 -m5stack_coreink.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_coreink.menu.UploadSpeed.250000=250000 -m5stack_coreink.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_coreink.menu.UploadSpeed.115200=115200 -m5stack_coreink.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_coreink.menu.LoopCore.1=Core 1 -m5stack_coreink.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_coreink.menu.LoopCore.0=Core 0 -m5stack_coreink.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_coreink.menu.EventsCore.1=Core 1 -m5stack_coreink.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_coreink.menu.EventsCore.0=Core 0 -m5stack_coreink.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_coreink.menu.DebugLevel.none=None -m5stack_coreink.menu.DebugLevel.none.build.code_debug=0 -m5stack_coreink.menu.DebugLevel.error=Error -m5stack_coreink.menu.DebugLevel.error.build.code_debug=1 -m5stack_coreink.menu.DebugLevel.warn=Warn -m5stack_coreink.menu.DebugLevel.warn.build.code_debug=2 -m5stack_coreink.menu.DebugLevel.info=Info -m5stack_coreink.menu.DebugLevel.info.build.code_debug=3 -m5stack_coreink.menu.DebugLevel.debug=Debug -m5stack_coreink.menu.DebugLevel.debug.build.code_debug=4 -m5stack_coreink.menu.DebugLevel.verbose=Verbose -m5stack_coreink.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_coreink.menu.EraseFlash.none=Disabled -m5stack_coreink.menu.EraseFlash.none.upload.erase_cmd= -m5stack_coreink.menu.EraseFlash.all=Enabled -m5stack_coreink.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################### - -m5stack_stamp_pico.name=M5StampPico - -m5stack_stamp_pico.bootloader.tool=esptool_py -m5stack_stamp_pico.bootloader.tool.default=esptool_py - -m5stack_stamp_pico.upload.tool=esptool_py -m5stack_stamp_pico.upload.tool.default=esptool_py -m5stack_stamp_pico.upload.tool.network=esp_ota - -m5stack_stamp_pico.upload.maximum_size=1310720 -m5stack_stamp_pico.upload.maximum_data_size=327680 -m5stack_stamp_pico.upload.flags= -m5stack_stamp_pico.upload.extra_flags= - -m5stack_stamp_pico.serial.disableDTR=true -m5stack_stamp_pico.serial.disableRTS=true - -m5stack_stamp_pico.build.tarch=xtensa -m5stack_stamp_pico.build.bootloader_addr=0x1000 -m5stack_stamp_pico.build.target=esp32 -m5stack_stamp_pico.build.mcu=esp32 -m5stack_stamp_pico.build.core=esp32 -m5stack_stamp_pico.build.variant=m5stack_stamp_pico -m5stack_stamp_pico.build.board=M5STACK_STAMP_PICO - -m5stack_stamp_pico.build.f_cpu=240000000L -m5stack_stamp_pico.build.flash_size=4MB -m5stack_stamp_pico.build.flash_freq=80m -m5stack_stamp_pico.build.flash_mode=dio -m5stack_stamp_pico.build.boot=dio -m5stack_stamp_pico.build.partitions=default -m5stack_stamp_pico.build.defines= -m5stack_stamp_pico.build.loop_core= -m5stack_stamp_pico.build.event_core= - -m5stack_stamp_pico.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.default.build.partitions=default -m5stack_stamp_pico.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stamp_pico.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stamp_pico.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_stamp_pico.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_stamp_pico.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stamp_pico.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stamp_pico.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stamp_pico.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stamp_pico.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stamp_pico.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stamp_pico.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stamp_pico.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stamp_pico.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stamp_pico.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stamp_pico.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stamp_pico.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stamp_pico.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stamp_pico.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stamp_pico.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stamp_pico.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_stamp_pico.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_stamp_pico.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_stamp_pico.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_stamp_pico.menu.PartitionScheme.rainmaker=RainMaker -m5stack_stamp_pico.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_stamp_pico.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_stamp_pico.menu.PartitionScheme.custom=Custom -m5stack_stamp_pico.menu.PartitionScheme.custom.build.partitions= -m5stack_stamp_pico.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_stamp_pico.menu.CPUFreq.240=240MHz (WiFi/BT) -m5stack_stamp_pico.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_stamp_pico.menu.CPUFreq.160=160MHz (WiFi/BT) -m5stack_stamp_pico.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stamp_pico.menu.CPUFreq.80=80MHz (WiFi/BT) -m5stack_stamp_pico.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stamp_pico.menu.CPUFreq.40=40MHz (40MHz XTAL) -m5stack_stamp_pico.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stamp_pico.menu.CPUFreq.26=26MHz (26MHz XTAL) -m5stack_stamp_pico.menu.CPUFreq.26.build.f_cpu=26000000L -m5stack_stamp_pico.menu.CPUFreq.20=20MHz (40MHz XTAL) -m5stack_stamp_pico.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stamp_pico.menu.CPUFreq.13=13MHz (26MHz XTAL) -m5stack_stamp_pico.menu.CPUFreq.13.build.f_cpu=13000000L -m5stack_stamp_pico.menu.CPUFreq.10=10MHz (40MHz XTAL) -m5stack_stamp_pico.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stamp_pico.menu.FlashMode.qio=QIO -m5stack_stamp_pico.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stamp_pico.menu.FlashMode.qio.build.boot=qio -m5stack_stamp_pico.menu.FlashMode.dio=DIO -m5stack_stamp_pico.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stamp_pico.menu.FlashMode.dio.build.boot=dio -m5stack_stamp_pico.menu.FlashMode.qout=QOUT -m5stack_stamp_pico.menu.FlashMode.qout.build.flash_mode=dout -m5stack_stamp_pico.menu.FlashMode.qout.build.boot=qout -m5stack_stamp_pico.menu.FlashMode.dout=DOUT -m5stack_stamp_pico.menu.FlashMode.dout.build.flash_mode=dout -m5stack_stamp_pico.menu.FlashMode.dout.build.boot=dout - -m5stack_stamp_pico.menu.FlashFreq.80=80MHz -m5stack_stamp_pico.menu.FlashFreq.80.build.flash_freq=80m -m5stack_stamp_pico.menu.FlashFreq.40=40MHz -m5stack_stamp_pico.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_stamp_pico.menu.FlashSize.4M=4MB (32Mb) -m5stack_stamp_pico.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_stamp_pico.menu.UploadSpeed.1500000=1500000 -m5stack_stamp_pico.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_stamp_pico.menu.UploadSpeed.750000=750000 -m5stack_stamp_pico.menu.UploadSpeed.750000.upload.speed=750000 -m5stack_stamp_pico.menu.UploadSpeed.500000=500000 -m5stack_stamp_pico.menu.UploadSpeed.500000.upload.speed=500000 -m5stack_stamp_pico.menu.UploadSpeed.250000=250000 -m5stack_stamp_pico.menu.UploadSpeed.250000.upload.speed=250000 -m5stack_stamp_pico.menu.UploadSpeed.115200=115200 -m5stack_stamp_pico.menu.UploadSpeed.115200.upload.speed=115200 - -m5stack_stamp_pico.menu.LoopCore.1=Core 1 -m5stack_stamp_pico.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_stamp_pico.menu.LoopCore.0=Core 0 -m5stack_stamp_pico.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_stamp_pico.menu.EventsCore.1=Core 1 -m5stack_stamp_pico.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_stamp_pico.menu.EventsCore.0=Core 0 -m5stack_stamp_pico.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_stamp_pico.menu.DebugLevel.none=None -m5stack_stamp_pico.menu.DebugLevel.none.build.code_debug=0 -m5stack_stamp_pico.menu.DebugLevel.error=Error -m5stack_stamp_pico.menu.DebugLevel.error.build.code_debug=1 -m5stack_stamp_pico.menu.DebugLevel.warn=Warn -m5stack_stamp_pico.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stamp_pico.menu.DebugLevel.info=Info -m5stack_stamp_pico.menu.DebugLevel.info.build.code_debug=3 -m5stack_stamp_pico.menu.DebugLevel.debug=Debug -m5stack_stamp_pico.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stamp_pico.menu.DebugLevel.verbose=Verbose -m5stack_stamp_pico.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stamp_pico.menu.EraseFlash.none=Disabled -m5stack_stamp_pico.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stamp_pico.menu.EraseFlash.all=Enabled -m5stack_stamp_pico.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_stamp_c3.name=M5StampC3 -m5stack_stamp_c3.vid.0=0x303a -m5stack_stamp_c3.pid.0=0x1001 - -m5stack_stamp_c3.bootloader.tool=esptool_py -m5stack_stamp_c3.bootloader.tool.default=esptool_py - -m5stack_stamp_c3.upload.tool=esptool_py -m5stack_stamp_c3.upload.tool.default=esptool_py -m5stack_stamp_c3.upload.tool.network=esp_ota - -m5stack_stamp_c3.upload.maximum_size=1310720 -m5stack_stamp_c3.upload.maximum_data_size=327680 -m5stack_stamp_c3.upload.wait_for_upload_port=false -m5stack_stamp_c3.upload.flags= -m5stack_stamp_c3.upload.extra_flags= - -m5stack_stamp_c3.serial.disableDTR=false -m5stack_stamp_c3.serial.disableRTS=false - -m5stack_stamp_c3.build.tarch=riscv32 -m5stack_stamp_c3.build.target=esp -m5stack_stamp_c3.build.mcu=esp32c3 -m5stack_stamp_c3.build.core=esp32 -m5stack_stamp_c3.build.variant=m5stack_stamp_c3 -m5stack_stamp_c3.build.board=M5STACK_STAMP_C3 -m5stack_stamp_c3.build.bootloader_addr=0x0 - -m5stack_stamp_c3.build.cdc_on_boot=1 -m5stack_stamp_c3.build.f_cpu=160000000L -m5stack_stamp_c3.build.flash_size=4MB -m5stack_stamp_c3.build.flash_freq=80m -m5stack_stamp_c3.build.flash_mode=qio -m5stack_stamp_c3.build.boot=qio -m5stack_stamp_c3.build.partitions=default -m5stack_stamp_c3.build.defines= - -## IDE 2.0 Seems to not update the value -m5stack_stamp_c3.menu.JTAGAdapter.default=Disabled -m5stack_stamp_c3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_stamp_c3.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_stamp_c3.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -m5stack_stamp_c3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_stamp_c3.menu.JTAGAdapter.external=FTDI Adapter -m5stack_stamp_c3.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -m5stack_stamp_c3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_stamp_c3.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_stamp_c3.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -m5stack_stamp_c3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_stamp_c3.menu.CDCOnBoot.cdc=Enabled -m5stack_stamp_c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_stamp_c3.menu.CDCOnBoot.default=Disabled -m5stack_stamp_c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_stamp_c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.default.build.partitions=default -m5stack_stamp_c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stamp_c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stamp_c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stamp_c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stamp_c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stamp_c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stamp_c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stamp_c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stamp_c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stamp_c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stamp_c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stamp_c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stamp_c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stamp_c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stamp_c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stamp_c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stamp_c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stamp_c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - - -m5stack_stamp_c3.menu.CPUFreq.160=160MHz (WiFi) -m5stack_stamp_c3.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stamp_c3.menu.CPUFreq.80=80MHz (WiFi) -m5stack_stamp_c3.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stamp_c3.menu.CPUFreq.40=40MHz -m5stack_stamp_c3.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stamp_c3.menu.CPUFreq.20=20MHz -m5stack_stamp_c3.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stamp_c3.menu.CPUFreq.10=10MHz -m5stack_stamp_c3.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stamp_c3.menu.FlashMode.qio=QIO -m5stack_stamp_c3.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stamp_c3.menu.FlashMode.qio.build.boot=qio -m5stack_stamp_c3.menu.FlashMode.dio=DIO -m5stack_stamp_c3.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stamp_c3.menu.FlashMode.dio.build.boot=dio -m5stack_stamp_c3.menu.FlashMode.qout=QOUT -m5stack_stamp_c3.menu.FlashMode.qout.build.flash_mode=dout -m5stack_stamp_c3.menu.FlashMode.qout.build.boot=qout -m5stack_stamp_c3.menu.FlashMode.dout=DOUT -m5stack_stamp_c3.menu.FlashMode.dout.build.flash_mode=dout -m5stack_stamp_c3.menu.FlashMode.dout.build.boot=dout - -m5stack_stamp_c3.menu.FlashFreq.80=80MHz -m5stack_stamp_c3.menu.FlashFreq.80.build.flash_freq=80m -m5stack_stamp_c3.menu.FlashFreq.40=40MHz -m5stack_stamp_c3.menu.FlashFreq.40.build.flash_freq=40m - -m5stack_stamp_c3.menu.FlashSize.4M=4MB (32Mb) -m5stack_stamp_c3.menu.FlashSize.4M.build.flash_size=4MB - -m5stack_stamp_c3.menu.UploadSpeed.921600=921600 -m5stack_stamp_c3.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_stamp_c3.menu.UploadSpeed.115200=115200 -m5stack_stamp_c3.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_stamp_c3.menu.UploadSpeed.256000.windows=256000 -m5stack_stamp_c3.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_stamp_c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_stamp_c3.menu.UploadSpeed.230400=230400 -m5stack_stamp_c3.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_stamp_c3.menu.UploadSpeed.460800.linux=460800 -m5stack_stamp_c3.menu.UploadSpeed.460800.macosx=460800 -m5stack_stamp_c3.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_stamp_c3.menu.UploadSpeed.512000.windows=512000 -m5stack_stamp_c3.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_stamp_c3.menu.DebugLevel.none=None -m5stack_stamp_c3.menu.DebugLevel.none.build.code_debug=0 -m5stack_stamp_c3.menu.DebugLevel.error=Error -m5stack_stamp_c3.menu.DebugLevel.error.build.code_debug=1 -m5stack_stamp_c3.menu.DebugLevel.warn=Warn -m5stack_stamp_c3.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stamp_c3.menu.DebugLevel.info=Info -m5stack_stamp_c3.menu.DebugLevel.info.build.code_debug=3 -m5stack_stamp_c3.menu.DebugLevel.debug=Debug -m5stack_stamp_c3.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stamp_c3.menu.DebugLevel.verbose=Verbose -m5stack_stamp_c3.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stamp_c3.menu.EraseFlash.none=Disabled -m5stack_stamp_c3.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stamp_c3.menu.EraseFlash.all=Enabled -m5stack_stamp_c3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################### - -m5stack_stamp_s3.name=M5StampS3 -m5stack_stamp_s3.vid.0=0x303a -m5stack_stamp_s3.pid.0=0x1001 -m5stack_stamp_s3.bootloader.tool=esptool_py -m5stack_stamp_s3.bootloader.tool.default=esptool_py - -m5stack_stamp_s3.upload.tool=esptool_py -m5stack_stamp_s3.upload.tool.default=esptool_py -m5stack_stamp_s3.upload.tool.network=esp_ota - -m5stack_stamp_s3.upload.maximum_size=1310720 -m5stack_stamp_s3.upload.maximum_data_size=327680 -m5stack_stamp_s3.upload.flags= -m5stack_stamp_s3.upload.extra_flags= -m5stack_stamp_s3.upload.use_1200bps_touch=false -m5stack_stamp_s3.upload.wait_for_upload_port=false - -m5stack_stamp_s3.serial.disableDTR=false -m5stack_stamp_s3.serial.disableRTS=false - -m5stack_stamp_s3.build.tarch=xtensa -m5stack_stamp_s3.build.bootloader_addr=0x0 -m5stack_stamp_s3.build.target=esp32s3 -m5stack_stamp_s3.build.mcu=esp32s3 -m5stack_stamp_s3.build.core=esp32 -m5stack_stamp_s3.build.variant=m5stack_stamp_s3 -m5stack_stamp_s3.build.board=M5STACK_STAMP_S3 - -m5stack_stamp_s3.build.usb_mode=1 -m5stack_stamp_s3.build.cdc_on_boot=1 -m5stack_stamp_s3.build.msc_on_boot=0 -m5stack_stamp_s3.build.dfu_on_boot=0 -m5stack_stamp_s3.build.f_cpu=240000000L -m5stack_stamp_s3.build.flash_size=8MB -m5stack_stamp_s3.build.flash_freq=80m -m5stack_stamp_s3.build.flash_mode=dio -m5stack_stamp_s3.build.boot=qio -m5stack_stamp_s3.build.boot_freq=80m -m5stack_stamp_s3.build.partitions=default -m5stack_stamp_s3.build.defines= -m5stack_stamp_s3.build.loop_core= -m5stack_stamp_s3.build.event_core= -m5stack_stamp_s3.build.psram_type=qspi -m5stack_stamp_s3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_stamp_s3.menu.JTAGAdapter.default=Disabled -m5stack_stamp_s3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_stamp_s3.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_stamp_s3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_stamp_s3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_stamp_s3.menu.JTAGAdapter.external=FTDI Adapter -m5stack_stamp_s3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_stamp_s3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_stamp_s3.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_stamp_s3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_stamp_s3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_stamp_s3.menu.PSRAM.disabled=Disabled -m5stack_stamp_s3.menu.PSRAM.disabled.build.defines= -m5stack_stamp_s3.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_stamp_s3.menu.PSRAM.enabled=QSPI PSRAM -m5stack_stamp_s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_stamp_s3.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_stamp_s3.menu.PSRAM.opi=OPI PSRAM -m5stack_stamp_s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_stamp_s3.menu.PSRAM.opi.build.psram_type=opi - -m5stack_stamp_s3.menu.FlashMode.qio=QIO 80MHz -m5stack_stamp_s3.menu.FlashMode.qio.build.flash_mode=dio -m5stack_stamp_s3.menu.FlashMode.qio.build.boot=qio -m5stack_stamp_s3.menu.FlashMode.qio.build.boot_freq=80m -m5stack_stamp_s3.menu.FlashMode.qio.build.flash_freq=80m -m5stack_stamp_s3.menu.FlashMode.qio120=QIO 120MHz -m5stack_stamp_s3.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_stamp_s3.menu.FlashMode.qio120.build.boot=qio -m5stack_stamp_s3.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_stamp_s3.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_stamp_s3.menu.FlashMode.dio=DIO 80MHz -m5stack_stamp_s3.menu.FlashMode.dio.build.flash_mode=dio -m5stack_stamp_s3.menu.FlashMode.dio.build.boot=dio -m5stack_stamp_s3.menu.FlashMode.dio.build.boot_freq=80m -m5stack_stamp_s3.menu.FlashMode.dio.build.flash_freq=80m -m5stack_stamp_s3.menu.FlashMode.opi=OPI 80MHz -m5stack_stamp_s3.menu.FlashMode.opi.build.flash_mode=dout -m5stack_stamp_s3.menu.FlashMode.opi.build.boot=opi -m5stack_stamp_s3.menu.FlashMode.opi.build.boot_freq=80m -m5stack_stamp_s3.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_stamp_s3.menu.FlashSize.4M=4MB (32Mb) -m5stack_stamp_s3.menu.FlashSize.4M.build.flash_size=4MB -m5stack_stamp_s3.menu.FlashSize.8M=8MB (64Mb) -m5stack_stamp_s3.menu.FlashSize.8M.build.flash_size=8MB -m5stack_stamp_s3.menu.FlashSize.8M.build.partitions=default_8MB -m5stack_stamp_s3.menu.FlashSize.16M=16MB (128Mb) -m5stack_stamp_s3.menu.FlashSize.16M.build.flash_size=16MB -m5stack_stamp_s3.menu.FlashSize.32M=32MB (256Mb) -m5stack_stamp_s3.menu.FlashSize.32M.build.flash_size=32MB -m5stack_stamp_s3.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_stamp_s3.menu.LoopCore.1=Core 1 -m5stack_stamp_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_stamp_s3.menu.LoopCore.0=Core 0 -m5stack_stamp_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_stamp_s3.menu.EventsCore.1=Core 1 -m5stack_stamp_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_stamp_s3.menu.EventsCore.0=Core 0 -m5stack_stamp_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_stamp_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_stamp_s3.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_stamp_s3.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_stamp_s3.menu.USBMode.default.build.usb_mode=0 - -m5stack_stamp_s3.menu.CDCOnBoot.cdc=Enabled -m5stack_stamp_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_stamp_s3.menu.CDCOnBoot.default=Disabled -m5stack_stamp_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_stamp_s3.menu.MSCOnBoot.default=Disabled -m5stack_stamp_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_stamp_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_stamp_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_stamp_s3.menu.DFUOnBoot.default=Disabled -m5stack_stamp_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_stamp_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_stamp_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_stamp_s3.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_stamp_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_stamp_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_stamp_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_stamp_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_stamp_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_stamp_s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.default.build.partitions=default -m5stack_stamp_s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_stamp_s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_stamp_s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_stamp_s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_stamp_s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_stamp_s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_stamp_s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_stamp_s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_stamp_s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_stamp_s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_stamp_s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_stamp_s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_stamp_s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_stamp_s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_stamp_s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_stamp_s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_stamp_s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_stamp_s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_stamp_s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_stamp_s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_stamp_s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_stamp_s3.menu.PartitionScheme.rainmaker=RainMaker -m5stack_stamp_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_stamp_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_stamp_s3.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_stamp_s3.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_stamp_s3.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_stamp_s3.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_stamp_s3.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_stamp_s3.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_stamp_s3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_stamp_s3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_stamp_s3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_stamp_s3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_stamp_s3.menu.PartitionScheme.custom=Custom -m5stack_stamp_s3.menu.PartitionScheme.custom.build.partitions= -m5stack_stamp_s3.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_stamp_s3.menu.CPUFreq.240=240MHz (WiFi) -m5stack_stamp_s3.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_stamp_s3.menu.CPUFreq.160=160MHz (WiFi) -m5stack_stamp_s3.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_stamp_s3.menu.CPUFreq.80=80MHz (WiFi) -m5stack_stamp_s3.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_stamp_s3.menu.CPUFreq.40=40MHz -m5stack_stamp_s3.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_stamp_s3.menu.CPUFreq.20=20MHz -m5stack_stamp_s3.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_stamp_s3.menu.CPUFreq.10=10MHz -m5stack_stamp_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_stamp_s3.menu.UploadSpeed.921600=921600 -m5stack_stamp_s3.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_stamp_s3.menu.UploadSpeed.115200=115200 -m5stack_stamp_s3.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_stamp_s3.menu.UploadSpeed.256000.windows=256000 -m5stack_stamp_s3.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_stamp_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_stamp_s3.menu.UploadSpeed.230400=230400 -m5stack_stamp_s3.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_stamp_s3.menu.UploadSpeed.460800.linux=460800 -m5stack_stamp_s3.menu.UploadSpeed.460800.macosx=460800 -m5stack_stamp_s3.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_stamp_s3.menu.UploadSpeed.512000.windows=512000 -m5stack_stamp_s3.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_stamp_s3.menu.DebugLevel.none=None -m5stack_stamp_s3.menu.DebugLevel.none.build.code_debug=0 -m5stack_stamp_s3.menu.DebugLevel.error=Error -m5stack_stamp_s3.menu.DebugLevel.error.build.code_debug=1 -m5stack_stamp_s3.menu.DebugLevel.warn=Warn -m5stack_stamp_s3.menu.DebugLevel.warn.build.code_debug=2 -m5stack_stamp_s3.menu.DebugLevel.info=Info -m5stack_stamp_s3.menu.DebugLevel.info.build.code_debug=3 -m5stack_stamp_s3.menu.DebugLevel.debug=Debug -m5stack_stamp_s3.menu.DebugLevel.debug.build.code_debug=4 -m5stack_stamp_s3.menu.DebugLevel.verbose=Verbose -m5stack_stamp_s3.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_stamp_s3.menu.EraseFlash.none=Disabled -m5stack_stamp_s3.menu.EraseFlash.none.upload.erase_cmd= -m5stack_stamp_s3.menu.EraseFlash.all=Enabled -m5stack_stamp_s3.menu.EraseFlash.all.upload.erase_cmd=-e - - -############################################################## - -m5stack_capsule.name=M5Capsule -m5stack_capsule.vid.0=0x303a -m5stack_capsule.pid.0=0x1001 -m5stack_capsule.bootloader.tool=esptool_py -m5stack_capsule.bootloader.tool.default=esptool_py - -m5stack_capsule.upload.tool=esptool_py -m5stack_capsule.upload.tool.default=esptool_py -m5stack_capsule.upload.tool.network=esp_ota - -m5stack_capsule.upload.maximum_size=1310720 -m5stack_capsule.upload.maximum_data_size=327680 -m5stack_capsule.upload.flags= -m5stack_capsule.upload.extra_flags= -m5stack_capsule.upload.use_1200bps_touch=false -m5stack_capsule.upload.wait_for_upload_port=false - -m5stack_capsule.serial.disableDTR=false -m5stack_capsule.serial.disableRTS=false - -m5stack_capsule.build.tarch=xtensa -m5stack_capsule.build.bootloader_addr=0x0 -m5stack_capsule.build.target=esp32s3 -m5stack_capsule.build.mcu=esp32s3 -m5stack_capsule.build.core=esp32 -m5stack_capsule.build.variant=m5stack_capsule -m5stack_capsule.build.board=M5STACK_CAPSULE - -m5stack_capsule.build.usb_mode=1 -m5stack_capsule.build.cdc_on_boot=1 -m5stack_capsule.build.msc_on_boot=0 -m5stack_capsule.build.dfu_on_boot=0 -m5stack_capsule.build.f_cpu=240000000L -m5stack_capsule.build.flash_size=8MB -m5stack_capsule.build.flash_freq=80m -m5stack_capsule.build.flash_mode=dio -m5stack_capsule.build.boot=qio -m5stack_capsule.build.boot_freq=80m -m5stack_capsule.build.partitions=default -m5stack_capsule.build.defines= -m5stack_capsule.build.loop_core= -m5stack_capsule.build.event_core= -m5stack_capsule.build.psram_type=qspi -m5stack_capsule.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_capsule.menu.JTAGAdapter.default=Disabled -m5stack_capsule.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_capsule.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_capsule.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_capsule.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_capsule.menu.JTAGAdapter.external=FTDI Adapter -m5stack_capsule.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_capsule.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_capsule.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_capsule.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_capsule.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_capsule.menu.PSRAM.disabled=Disabled -m5stack_capsule.menu.PSRAM.disabled.build.defines= -m5stack_capsule.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_capsule.menu.PSRAM.enabled=QSPI PSRAM -m5stack_capsule.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_capsule.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_capsule.menu.PSRAM.opi=OPI PSRAM -m5stack_capsule.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_capsule.menu.PSRAM.opi.build.psram_type=opi - -m5stack_capsule.menu.FlashMode.qio=QIO 80MHz -m5stack_capsule.menu.FlashMode.qio.build.flash_mode=dio -m5stack_capsule.menu.FlashMode.qio.build.boot=qio -m5stack_capsule.menu.FlashMode.qio.build.boot_freq=80m -m5stack_capsule.menu.FlashMode.qio.build.flash_freq=80m -m5stack_capsule.menu.FlashMode.qio120=QIO 120MHz -m5stack_capsule.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_capsule.menu.FlashMode.qio120.build.boot=qio -m5stack_capsule.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_capsule.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_capsule.menu.FlashMode.dio=DIO 80MHz -m5stack_capsule.menu.FlashMode.dio.build.flash_mode=dio -m5stack_capsule.menu.FlashMode.dio.build.boot=dio -m5stack_capsule.menu.FlashMode.dio.build.boot_freq=80m -m5stack_capsule.menu.FlashMode.dio.build.flash_freq=80m -m5stack_capsule.menu.FlashMode.opi=OPI 80MHz -m5stack_capsule.menu.FlashMode.opi.build.flash_mode=dout -m5stack_capsule.menu.FlashMode.opi.build.boot=opi -m5stack_capsule.menu.FlashMode.opi.build.boot_freq=80m -m5stack_capsule.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_capsule.menu.FlashSize.4M=4MB (32Mb) -m5stack_capsule.menu.FlashSize.4M.build.flash_size=4MB -m5stack_capsule.menu.FlashSize.8M=8MB (64Mb) -m5stack_capsule.menu.FlashSize.8M.build.flash_size=8MB -m5stack_capsule.menu.FlashSize.8M.build.partitions=default_8MB -m5stack_capsule.menu.FlashSize.16M=16MB (128Mb) -m5stack_capsule.menu.FlashSize.16M.build.flash_size=16MB -m5stack_capsule.menu.FlashSize.32M=32MB (256Mb) -m5stack_capsule.menu.FlashSize.32M.build.flash_size=32MB -m5stack_capsule.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_capsule.menu.LoopCore.1=Core 1 -m5stack_capsule.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_capsule.menu.LoopCore.0=Core 0 -m5stack_capsule.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_capsule.menu.EventsCore.1=Core 1 -m5stack_capsule.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_capsule.menu.EventsCore.0=Core 0 -m5stack_capsule.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_capsule.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_capsule.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_capsule.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_capsule.menu.USBMode.default.build.usb_mode=0 - -m5stack_capsule.menu.CDCOnBoot.cdc=Enabled -m5stack_capsule.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_capsule.menu.CDCOnBoot.default=Disabled -m5stack_capsule.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_capsule.menu.MSCOnBoot.default=Disabled -m5stack_capsule.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_capsule.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_capsule.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_capsule.menu.DFUOnBoot.default=Disabled -m5stack_capsule.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_capsule.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_capsule.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_capsule.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_capsule.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_capsule.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_capsule.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_capsule.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_capsule.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_capsule.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_capsule.menu.PartitionScheme.default.build.partitions=default -m5stack_capsule.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_capsule.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_capsule.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_capsule.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_capsule.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_capsule.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_capsule.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_capsule.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_capsule.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_capsule.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_capsule.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_capsule.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_capsule.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_capsule.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_capsule.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_capsule.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_capsule.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_capsule.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_capsule.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_capsule.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_capsule.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_capsule.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_capsule.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_capsule.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_capsule.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_capsule.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_capsule.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_capsule.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_capsule.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_capsule.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_capsule.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_capsule.menu.PartitionScheme.rainmaker=RainMaker -m5stack_capsule.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_capsule.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_capsule.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_capsule.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_capsule.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_capsule.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_capsule.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_capsule.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_capsule.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_capsule.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_capsule.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_capsule.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_capsule.menu.PartitionScheme.custom=Custom -m5stack_capsule.menu.PartitionScheme.custom.build.partitions= -m5stack_capsule.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_capsule.menu.CPUFreq.240=240MHz (WiFi) -m5stack_capsule.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_capsule.menu.CPUFreq.160=160MHz (WiFi) -m5stack_capsule.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_capsule.menu.CPUFreq.80=80MHz (WiFi) -m5stack_capsule.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_capsule.menu.CPUFreq.40=40MHz -m5stack_capsule.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_capsule.menu.CPUFreq.20=20MHz -m5stack_capsule.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_capsule.menu.CPUFreq.10=10MHz -m5stack_capsule.menu.CPUFreq.10.build.f_cpu=10000000L - - -m5stack_capsule.menu.UploadSpeed.1500000=1500000 -m5stack_capsule.menu.UploadSpeed.1500000.upload.speed=1500000 -m5stack_capsule.menu.UploadSpeed.921600=921600 -m5stack_capsule.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_capsule.menu.UploadSpeed.115200=115200 -m5stack_capsule.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_capsule.menu.UploadSpeed.256000.windows=256000 -m5stack_capsule.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_capsule.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_capsule.menu.UploadSpeed.230400=230400 -m5stack_capsule.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_capsule.menu.UploadSpeed.460800.linux=460800 -m5stack_capsule.menu.UploadSpeed.460800.macosx=460800 -m5stack_capsule.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_capsule.menu.UploadSpeed.512000.windows=512000 -m5stack_capsule.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_capsule.menu.DebugLevel.none=None -m5stack_capsule.menu.DebugLevel.none.build.code_debug=0 -m5stack_capsule.menu.DebugLevel.error=Error -m5stack_capsule.menu.DebugLevel.error.build.code_debug=1 -m5stack_capsule.menu.DebugLevel.warn=Warn -m5stack_capsule.menu.DebugLevel.warn.build.code_debug=2 -m5stack_capsule.menu.DebugLevel.info=Info -m5stack_capsule.menu.DebugLevel.info.build.code_debug=3 -m5stack_capsule.menu.DebugLevel.debug=Debug -m5stack_capsule.menu.DebugLevel.debug.build.code_debug=4 -m5stack_capsule.menu.DebugLevel.verbose=Verbose -m5stack_capsule.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_capsule.menu.EraseFlash.none=Disabled -m5stack_capsule.menu.EraseFlash.none.upload.erase_cmd= -m5stack_capsule.menu.EraseFlash.all=Enabled -m5stack_capsule.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_cardputer.name=M5Cardputer -m5stack_cardputer.vid.0=0x303a -m5stack_cardputer.pid.0=0x1001 -m5stack_cardputer.bootloader.tool=esptool_py -m5stack_cardputer.bootloader.tool.default=esptool_py - -m5stack_cardputer.upload.tool=esptool_py -m5stack_cardputer.upload.tool.default=esptool_py -m5stack_cardputer.upload.tool.network=esp_ota - -m5stack_cardputer.upload.maximum_size=1310720 -m5stack_cardputer.upload.maximum_data_size=327680 -m5stack_cardputer.upload.flags= -m5stack_cardputer.upload.extra_flags= -m5stack_cardputer.upload.use_1200bps_touch=false -m5stack_cardputer.upload.wait_for_upload_port=false - -m5stack_cardputer.serial.disableDTR=false -m5stack_cardputer.serial.disableRTS=false - -m5stack_cardputer.build.tarch=xtensa -m5stack_cardputer.build.bootloader_addr=0x0 -m5stack_cardputer.build.target=esp32s3 -m5stack_cardputer.build.mcu=esp32s3 -m5stack_cardputer.build.core=esp32 -m5stack_cardputer.build.variant=m5stack_cardputer -m5stack_cardputer.build.board=M5STACK_CARDPUTER - -m5stack_cardputer.build.usb_mode=1 -m5stack_cardputer.build.cdc_on_boot=1 -m5stack_cardputer.build.msc_on_boot=0 -m5stack_cardputer.build.dfu_on_boot=0 -m5stack_cardputer.build.f_cpu=240000000L -m5stack_cardputer.build.flash_size=8MB -m5stack_cardputer.build.flash_freq=80m -m5stack_cardputer.build.flash_mode=dio -m5stack_cardputer.build.boot=qio -m5stack_cardputer.build.boot_freq=80m -m5stack_cardputer.build.partitions=default -m5stack_cardputer.build.defines= -m5stack_cardputer.build.loop_core= -m5stack_cardputer.build.event_core= -m5stack_cardputer.build.psram_type=qspi -m5stack_cardputer.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_cardputer.menu.JTAGAdapter.default=Disabled -m5stack_cardputer.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_cardputer.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_cardputer.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_cardputer.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_cardputer.menu.JTAGAdapter.external=FTDI Adapter -m5stack_cardputer.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_cardputer.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_cardputer.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_cardputer.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_cardputer.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_cardputer.menu.PSRAM.disabled=Disabled -m5stack_cardputer.menu.PSRAM.disabled.build.defines= -m5stack_cardputer.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_cardputer.menu.PSRAM.enabled=QSPI PSRAM -m5stack_cardputer.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_cardputer.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_cardputer.menu.PSRAM.opi=OPI PSRAM -m5stack_cardputer.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_cardputer.menu.PSRAM.opi.build.psram_type=opi - -m5stack_cardputer.menu.FlashMode.qio=QIO 80MHz -m5stack_cardputer.menu.FlashMode.qio.build.flash_mode=dio -m5stack_cardputer.menu.FlashMode.qio.build.boot=qio -m5stack_cardputer.menu.FlashMode.qio.build.boot_freq=80m -m5stack_cardputer.menu.FlashMode.qio.build.flash_freq=80m -m5stack_cardputer.menu.FlashMode.qio120=QIO 120MHz -m5stack_cardputer.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_cardputer.menu.FlashMode.qio120.build.boot=qio -m5stack_cardputer.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_cardputer.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_cardputer.menu.FlashMode.dio=DIO 80MHz -m5stack_cardputer.menu.FlashMode.dio.build.flash_mode=dio -m5stack_cardputer.menu.FlashMode.dio.build.boot=dio -m5stack_cardputer.menu.FlashMode.dio.build.boot_freq=80m -m5stack_cardputer.menu.FlashMode.dio.build.flash_freq=80m -m5stack_cardputer.menu.FlashMode.opi=OPI 80MHz -m5stack_cardputer.menu.FlashMode.opi.build.flash_mode=dout -m5stack_cardputer.menu.FlashMode.opi.build.boot=opi -m5stack_cardputer.menu.FlashMode.opi.build.boot_freq=80m -m5stack_cardputer.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_cardputer.menu.FlashSize.4M=4MB (32Mb) -m5stack_cardputer.menu.FlashSize.4M.build.flash_size=4MB -m5stack_cardputer.menu.FlashSize.8M=8MB (64Mb) -m5stack_cardputer.menu.FlashSize.8M.build.flash_size=8MB -m5stack_cardputer.menu.FlashSize.8M.build.partitions=default_8MB -m5stack_cardputer.menu.FlashSize.16M=16MB (128Mb) -m5stack_cardputer.menu.FlashSize.16M.build.flash_size=16MB -m5stack_cardputer.menu.FlashSize.32M=32MB (256Mb) -m5stack_cardputer.menu.FlashSize.32M.build.flash_size=32MB -m5stack_cardputer.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_cardputer.menu.LoopCore.1=Core 1 -m5stack_cardputer.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_cardputer.menu.LoopCore.0=Core 0 -m5stack_cardputer.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_cardputer.menu.EventsCore.1=Core 1 -m5stack_cardputer.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_cardputer.menu.EventsCore.0=Core 0 -m5stack_cardputer.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_cardputer.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_cardputer.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_cardputer.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_cardputer.menu.USBMode.default.build.usb_mode=0 - -m5stack_cardputer.menu.CDCOnBoot.cdc=Enabled -m5stack_cardputer.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_cardputer.menu.CDCOnBoot.default=Disabled -m5stack_cardputer.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_cardputer.menu.MSCOnBoot.default=Disabled -m5stack_cardputer.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_cardputer.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_cardputer.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_cardputer.menu.DFUOnBoot.default=Disabled -m5stack_cardputer.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_cardputer.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_cardputer.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_cardputer.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_cardputer.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_cardputer.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_cardputer.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_cardputer.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_cardputer.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_cardputer.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.default.build.partitions=default -m5stack_cardputer.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_cardputer.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_cardputer.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_cardputer.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_cardputer.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_cardputer.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_cardputer.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_cardputer.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_cardputer.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_cardputer.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_cardputer.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_cardputer.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_cardputer.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_cardputer.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_cardputer.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_cardputer.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_cardputer.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_cardputer.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_cardputer.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_cardputer.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_cardputer.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_cardputer.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_cardputer.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_cardputer.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_cardputer.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_cardputer.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_cardputer.menu.PartitionScheme.rainmaker=RainMaker -m5stack_cardputer.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_cardputer.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_cardputer.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_cardputer.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_cardputer.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_cardputer.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_cardputer.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_cardputer.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_cardputer.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_cardputer.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_cardputer.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_cardputer.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_cardputer.menu.PartitionScheme.custom=Custom -m5stack_cardputer.menu.PartitionScheme.custom.build.partitions= -m5stack_cardputer.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_cardputer.menu.CPUFreq.240=240MHz (WiFi) -m5stack_cardputer.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_cardputer.menu.CPUFreq.160=160MHz (WiFi) -m5stack_cardputer.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_cardputer.menu.CPUFreq.80=80MHz (WiFi) -m5stack_cardputer.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_cardputer.menu.CPUFreq.40=40MHz -m5stack_cardputer.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_cardputer.menu.CPUFreq.20=20MHz -m5stack_cardputer.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_cardputer.menu.CPUFreq.10=10MHz -m5stack_cardputer.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_cardputer.menu.UploadSpeed.921600=921600 -m5stack_cardputer.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_cardputer.menu.UploadSpeed.115200=115200 -m5stack_cardputer.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_cardputer.menu.UploadSpeed.256000.windows=256000 -m5stack_cardputer.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_cardputer.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_cardputer.menu.UploadSpeed.230400=230400 -m5stack_cardputer.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_cardputer.menu.UploadSpeed.460800.linux=460800 -m5stack_cardputer.menu.UploadSpeed.460800.macosx=460800 -m5stack_cardputer.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_cardputer.menu.UploadSpeed.512000.windows=512000 -m5stack_cardputer.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_cardputer.menu.DebugLevel.none=None -m5stack_cardputer.menu.DebugLevel.none.build.code_debug=0 -m5stack_cardputer.menu.DebugLevel.error=Error -m5stack_cardputer.menu.DebugLevel.error.build.code_debug=1 -m5stack_cardputer.menu.DebugLevel.warn=Warn -m5stack_cardputer.menu.DebugLevel.warn.build.code_debug=2 -m5stack_cardputer.menu.DebugLevel.info=Info -m5stack_cardputer.menu.DebugLevel.info.build.code_debug=3 -m5stack_cardputer.menu.DebugLevel.debug=Debug -m5stack_cardputer.menu.DebugLevel.debug.build.code_debug=4 -m5stack_cardputer.menu.DebugLevel.verbose=Verbose -m5stack_cardputer.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_cardputer.menu.EraseFlash.none=Disabled -m5stack_cardputer.menu.EraseFlash.none.upload.erase_cmd= -m5stack_cardputer.menu.EraseFlash.all=Enabled -m5stack_cardputer.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -m5stack_dial.name=M5Dial -m5stack_dial.vid.0=0x303a -m5stack_dial.pid.0=0x1001 -m5stack_dial.bootloader.tool=esptool_py -m5stack_dial.bootloader.tool.default=esptool_py - -m5stack_dial.upload.tool=esptool_py -m5stack_dial.upload.tool.default=esptool_py -m5stack_dial.upload.tool.network=esp_ota - -m5stack_dial.upload.maximum_size=1310720 -m5stack_dial.upload.maximum_data_size=327680 -m5stack_dial.upload.flags= -m5stack_dial.upload.extra_flags= -m5stack_dial.upload.use_1200bps_touch=false -m5stack_dial.upload.wait_for_upload_port=false - -m5stack_dial.serial.disableDTR=false -m5stack_dial.serial.disableRTS=false - -m5stack_dial.build.tarch=xtensa -m5stack_dial.build.bootloader_addr=0x0 -m5stack_dial.build.target=esp32s3 -m5stack_dial.build.mcu=esp32s3 -m5stack_dial.build.core=esp32 -m5stack_dial.build.variant=m5stack_dial -m5stack_dial.build.board=M5STACK_DIAL - -m5stack_dial.build.usb_mode=1 -m5stack_dial.build.cdc_on_boot=1 -m5stack_dial.build.msc_on_boot=0 -m5stack_dial.build.dfu_on_boot=0 -m5stack_dial.build.f_cpu=240000000L -m5stack_dial.build.flash_size=8MB -m5stack_dial.build.flash_freq=80m -m5stack_dial.build.flash_mode=dio -m5stack_dial.build.boot=qio -m5stack_dial.build.boot_freq=80m -m5stack_dial.build.partitions=default -m5stack_dial.build.defines= -m5stack_dial.build.loop_core= -m5stack_dial.build.event_core= -m5stack_dial.build.psram_type=qspi -m5stack_dial.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -m5stack_dial.menu.JTAGAdapter.default=Disabled -m5stack_dial.menu.JTAGAdapter.default.build.copy_jtag_files=0 -m5stack_dial.menu.JTAGAdapter.builtin=Integrated USB JTAG -m5stack_dial.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -m5stack_dial.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -m5stack_dial.menu.JTAGAdapter.external=FTDI Adapter -m5stack_dial.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -m5stack_dial.menu.JTAGAdapter.external.build.copy_jtag_files=1 -m5stack_dial.menu.JTAGAdapter.bridge=ESP USB Bridge -m5stack_dial.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -m5stack_dial.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -m5stack_dial.menu.PSRAM.disabled=Disabled -m5stack_dial.menu.PSRAM.disabled.build.defines= -m5stack_dial.menu.PSRAM.disabled.build.psram_type=qspi -m5stack_dial.menu.PSRAM.enabled=QSPI PSRAM -m5stack_dial.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -m5stack_dial.menu.PSRAM.enabled.build.psram_type=qspi -m5stack_dial.menu.PSRAM.opi=OPI PSRAM -m5stack_dial.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -m5stack_dial.menu.PSRAM.opi.build.psram_type=opi - -m5stack_dial.menu.FlashMode.qio=QIO 80MHz -m5stack_dial.menu.FlashMode.qio.build.flash_mode=dio -m5stack_dial.menu.FlashMode.qio.build.boot=qio -m5stack_dial.menu.FlashMode.qio.build.boot_freq=80m -m5stack_dial.menu.FlashMode.qio.build.flash_freq=80m -m5stack_dial.menu.FlashMode.qio120=QIO 120MHz -m5stack_dial.menu.FlashMode.qio120.build.flash_mode=dio -m5stack_dial.menu.FlashMode.qio120.build.boot=qio -m5stack_dial.menu.FlashMode.qio120.build.boot_freq=120m -m5stack_dial.menu.FlashMode.qio120.build.flash_freq=80m -m5stack_dial.menu.FlashMode.dio=DIO 80MHz -m5stack_dial.menu.FlashMode.dio.build.flash_mode=dio -m5stack_dial.menu.FlashMode.dio.build.boot=dio -m5stack_dial.menu.FlashMode.dio.build.boot_freq=80m -m5stack_dial.menu.FlashMode.dio.build.flash_freq=80m -m5stack_dial.menu.FlashMode.opi=OPI 80MHz -m5stack_dial.menu.FlashMode.opi.build.flash_mode=dout -m5stack_dial.menu.FlashMode.opi.build.boot=opi -m5stack_dial.menu.FlashMode.opi.build.boot_freq=80m -m5stack_dial.menu.FlashMode.opi.build.flash_freq=80m - -m5stack_dial.menu.FlashSize.4M=4MB (32Mb) -m5stack_dial.menu.FlashSize.4M.build.flash_size=4MB -m5stack_dial.menu.FlashSize.8M=8MB (64Mb) -m5stack_dial.menu.FlashSize.8M.build.flash_size=8MB -m5stack_dial.menu.FlashSize.8M.build.partitions=default_8MB -m5stack_dial.menu.FlashSize.16M=16MB (128Mb) -m5stack_dial.menu.FlashSize.16M.build.flash_size=16MB -m5stack_dial.menu.FlashSize.32M=32MB (256Mb) -m5stack_dial.menu.FlashSize.32M.build.flash_size=32MB -m5stack_dial.menu.FlashSize.32M.build.partitions=app5M_fat24M_32MB - -m5stack_dial.menu.LoopCore.1=Core 1 -m5stack_dial.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -m5stack_dial.menu.LoopCore.0=Core 0 -m5stack_dial.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -m5stack_dial.menu.EventsCore.1=Core 1 -m5stack_dial.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -m5stack_dial.menu.EventsCore.0=Core 0 -m5stack_dial.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -m5stack_dial.menu.USBMode.hwcdc=Hardware CDC and JTAG -m5stack_dial.menu.USBMode.hwcdc.build.usb_mode=1 -m5stack_dial.menu.USBMode.default=USB-OTG (TinyUSB) -m5stack_dial.menu.USBMode.default.build.usb_mode=0 - -m5stack_dial.menu.CDCOnBoot.cdc=Enabled -m5stack_dial.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -m5stack_dial.menu.CDCOnBoot.default=Disabled -m5stack_dial.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -m5stack_dial.menu.MSCOnBoot.default=Disabled -m5stack_dial.menu.MSCOnBoot.default.build.msc_on_boot=0 -m5stack_dial.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -m5stack_dial.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -m5stack_dial.menu.DFUOnBoot.default=Disabled -m5stack_dial.menu.DFUOnBoot.default.build.dfu_on_boot=0 -m5stack_dial.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -m5stack_dial.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -m5stack_dial.menu.UploadMode.default=UART0 / Hardware CDC -m5stack_dial.menu.UploadMode.default.upload.use_1200bps_touch=false -m5stack_dial.menu.UploadMode.default.upload.wait_for_upload_port=false -m5stack_dial.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -m5stack_dial.menu.UploadMode.cdc.upload.use_1200bps_touch=true -m5stack_dial.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -m5stack_dial.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -m5stack_dial.menu.PartitionScheme.default.build.partitions=default -m5stack_dial.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -m5stack_dial.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -m5stack_dial.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -m5stack_dial.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -m5stack_dial.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -m5stack_dial.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -m5stack_dial.menu.PartitionScheme.minimal.build.partitions=minimal -m5stack_dial.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -m5stack_dial.menu.PartitionScheme.no_ota.build.partitions=no_ota -m5stack_dial.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -m5stack_dial.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -m5stack_dial.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -m5stack_dial.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -m5stack_dial.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -m5stack_dial.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -m5stack_dial.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -m5stack_dial.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -m5stack_dial.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -m5stack_dial.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -m5stack_dial.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -m5stack_dial.menu.PartitionScheme.huge_app.build.partitions=huge_app -m5stack_dial.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -m5stack_dial.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -m5stack_dial.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -m5stack_dial.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -m5stack_dial.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -m5stack_dial.menu.PartitionScheme.fatflash.build.partitions=ffat -m5stack_dial.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -m5stack_dial.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -m5stack_dial.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -m5stack_dial.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -m5stack_dial.menu.PartitionScheme.rainmaker=RainMaker -m5stack_dial.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -m5stack_dial.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -m5stack_dial.menu.PartitionScheme.app5M_fat24M_32MB=32M Flash (4.8MB APP/22MB FATFS) -m5stack_dial.menu.PartitionScheme.app5M_fat24M_32MB.build.partitions=large_fat_32MB -m5stack_dial.menu.PartitionScheme.app5M_fat24M_32MB.upload.maximum_size=4718592 -m5stack_dial.menu.PartitionScheme.app5M_little24M_32MB=32M Flash (4.8MB APP/22MB LittleFS) -m5stack_dial.menu.PartitionScheme.app5M_little24M_32MB.build.partitions=large_littlefs_32MB -m5stack_dial.menu.PartitionScheme.app5M_little24M_32MB.upload.maximum_size=4718592 -m5stack_dial.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL) -m5stack_dial.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728 -m5stack_dial.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin -m5stack_dial.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16 -m5stack_dial.menu.PartitionScheme.custom=Custom -m5stack_dial.menu.PartitionScheme.custom.build.partitions= -m5stack_dial.menu.PartitionScheme.custom.upload.maximum_size=16777216 - -m5stack_dial.menu.CPUFreq.240=240MHz (WiFi) -m5stack_dial.menu.CPUFreq.240.build.f_cpu=240000000L -m5stack_dial.menu.CPUFreq.160=160MHz (WiFi) -m5stack_dial.menu.CPUFreq.160.build.f_cpu=160000000L -m5stack_dial.menu.CPUFreq.80=80MHz (WiFi) -m5stack_dial.menu.CPUFreq.80.build.f_cpu=80000000L -m5stack_dial.menu.CPUFreq.40=40MHz -m5stack_dial.menu.CPUFreq.40.build.f_cpu=40000000L -m5stack_dial.menu.CPUFreq.20=20MHz -m5stack_dial.menu.CPUFreq.20.build.f_cpu=20000000L -m5stack_dial.menu.CPUFreq.10=10MHz -m5stack_dial.menu.CPUFreq.10.build.f_cpu=10000000L - -m5stack_dial.menu.UploadSpeed.921600=921600 -m5stack_dial.menu.UploadSpeed.921600.upload.speed=921600 -m5stack_dial.menu.UploadSpeed.115200=115200 -m5stack_dial.menu.UploadSpeed.115200.upload.speed=115200 -m5stack_dial.menu.UploadSpeed.256000.windows=256000 -m5stack_dial.menu.UploadSpeed.256000.upload.speed=256000 -m5stack_dial.menu.UploadSpeed.230400.windows.upload.speed=256000 -m5stack_dial.menu.UploadSpeed.230400=230400 -m5stack_dial.menu.UploadSpeed.230400.upload.speed=230400 -m5stack_dial.menu.UploadSpeed.460800.linux=460800 -m5stack_dial.menu.UploadSpeed.460800.macosx=460800 -m5stack_dial.menu.UploadSpeed.460800.upload.speed=460800 -m5stack_dial.menu.UploadSpeed.512000.windows=512000 -m5stack_dial.menu.UploadSpeed.512000.upload.speed=512000 - -m5stack_dial.menu.DebugLevel.none=None -m5stack_dial.menu.DebugLevel.none.build.code_debug=0 -m5stack_dial.menu.DebugLevel.error=Error -m5stack_dial.menu.DebugLevel.error.build.code_debug=1 -m5stack_dial.menu.DebugLevel.warn=Warn -m5stack_dial.menu.DebugLevel.warn.build.code_debug=2 -m5stack_dial.menu.DebugLevel.info=Info -m5stack_dial.menu.DebugLevel.info.build.code_debug=3 -m5stack_dial.menu.DebugLevel.debug=Debug -m5stack_dial.menu.DebugLevel.debug.build.code_debug=4 -m5stack_dial.menu.DebugLevel.verbose=Verbose -m5stack_dial.menu.DebugLevel.verbose.build.code_debug=5 - -m5stack_dial.menu.EraseFlash.none=Disabled -m5stack_dial.menu.EraseFlash.none.upload.erase_cmd= -m5stack_dial.menu.EraseFlash.all=Enabled -m5stack_dial.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -odroid_esp32.name=ODROID ESP32 - -odroid_esp32.bootloader.tool=esptool_py -odroid_esp32.bootloader.tool.default=esptool_py - -odroid_esp32.upload.tool=esptool_py -odroid_esp32.upload.tool.default=esptool_py -odroid_esp32.upload.tool.network=esp_ota - -odroid_esp32.upload.maximum_size=1310720 -odroid_esp32.upload.maximum_data_size=327680 -odroid_esp32.upload.flags= -odroid_esp32.upload.extra_flags= - -odroid_esp32.serial.disableDTR=true -odroid_esp32.serial.disableRTS=true - -odroid_esp32.build.tarch=xtensa -odroid_esp32.build.bootloader_addr=0x1000 -odroid_esp32.build.target=esp32 -odroid_esp32.build.mcu=esp32 -odroid_esp32.build.core=esp32 -odroid_esp32.build.variant=odroid_esp32 -odroid_esp32.build.board=ODROID_ESP32 - -odroid_esp32.build.f_cpu=240000000L -odroid_esp32.build.flash_size=16MB -odroid_esp32.build.flash_mode=dio -odroid_esp32.build.boot=dio -odroid_esp32.build.partitions=default -odroid_esp32.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -odroid_esp32.build.extra_libs= - -odroid_esp32.menu.FlashMode.qio=QIO -odroid_esp32.menu.FlashMode.qio.build.flash_mode=dio -odroid_esp32.menu.FlashMode.qio.build.boot=qio -odroid_esp32.menu.FlashMode.dio=DIO -odroid_esp32.menu.FlashMode.dio.build.flash_mode=dio -odroid_esp32.menu.FlashMode.dio.build.boot=dio - -odroid_esp32.menu.FlashFreq.80=80MHz -odroid_esp32.menu.FlashFreq.80.build.flash_freq=80m -odroid_esp32.menu.FlashFreq.40=40MHz -odroid_esp32.menu.FlashFreq.40.build.flash_freq=40m - -odroid_esp32.menu.PartitionScheme.default=Default -odroid_esp32.menu.PartitionScheme.default.build.partitions=default -odroid_esp32.menu.PartitionScheme.no_ota=No OTA (Large APP) -odroid_esp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -odroid_esp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -odroid_esp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -odroid_esp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -odroid_esp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -odroid_esp32.menu.UploadSpeed.921600=921600 -odroid_esp32.menu.UploadSpeed.921600.upload.speed=921600 -odroid_esp32.menu.UploadSpeed.115200=115200 -odroid_esp32.menu.UploadSpeed.115200.upload.speed=115200 -odroid_esp32.menu.UploadSpeed.256000.windows=256000 -odroid_esp32.menu.UploadSpeed.256000.upload.speed=256000 -odroid_esp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -odroid_esp32.menu.UploadSpeed.230400=230400 -odroid_esp32.menu.UploadSpeed.230400.upload.speed=230400 -odroid_esp32.menu.UploadSpeed.460800.linux=460800 -odroid_esp32.menu.UploadSpeed.460800.macosx=460800 -odroid_esp32.menu.UploadSpeed.460800.upload.speed=460800 -odroid_esp32.menu.UploadSpeed.512000.windows=512000 -odroid_esp32.menu.UploadSpeed.512000.upload.speed=512000 - -odroid_esp32.menu.DebugLevel.none=None -odroid_esp32.menu.DebugLevel.none.build.code_debug=0 -odroid_esp32.menu.DebugLevel.error=Error -odroid_esp32.menu.DebugLevel.error.build.code_debug=1 -odroid_esp32.menu.DebugLevel.warn=Warn -odroid_esp32.menu.DebugLevel.warn.build.code_debug=2 -odroid_esp32.menu.DebugLevel.info=Info -odroid_esp32.menu.DebugLevel.info.build.code_debug=3 -odroid_esp32.menu.DebugLevel.debug=Debug -odroid_esp32.menu.DebugLevel.debug.build.code_debug=4 -odroid_esp32.menu.DebugLevel.verbose=Verbose -odroid_esp32.menu.DebugLevel.verbose.build.code_debug=5 - -odroid_esp32.menu.EraseFlash.none=Disabled -odroid_esp32.menu.EraseFlash.none.upload.erase_cmd= -odroid_esp32.menu.EraseFlash.all=Enabled -odroid_esp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wifi_kit_32.name=Heltec WiFi Kit 32 - -heltec_wifi_kit_32.bootloader.tool=esptool_py -heltec_wifi_kit_32.bootloader.tool.default=esptool_py - -heltec_wifi_kit_32.upload.tool=esptool_py -heltec_wifi_kit_32.upload.tool.default=esptool_py -heltec_wifi_kit_32.upload.tool.network=esp_ota - -heltec_wifi_kit_32.upload.maximum_size=1310720 -heltec_wifi_kit_32.upload.maximum_data_size=327680 -heltec_wifi_kit_32.upload.flags= -heltec_wifi_kit_32.upload.extra_flags= - -heltec_wifi_kit_32.serial.disableDTR=true -heltec_wifi_kit_32.serial.disableRTS=true - -heltec_wifi_kit_32.build.tarch=xtensa -heltec_wifi_kit_32.build.bootloader_addr=0x1000 -heltec_wifi_kit_32.build.target=esp32 -heltec_wifi_kit_32.build.mcu=esp32 -heltec_wifi_kit_32.build.core=esp32 -heltec_wifi_kit_32.build.variant=heltec_wifi_kit_32 -heltec_wifi_kit_32.build.board=HELTEC_WIFI_KIT_32 - -heltec_wifi_kit_32.build.f_cpu=240000000L -heltec_wifi_kit_32.build.flash_size=4MB -heltec_wifi_kit_32.build.flash_freq=80m -heltec_wifi_kit_32.build.flash_mode=dio -heltec_wifi_kit_32.build.boot=dio -heltec_wifi_kit_32.build.partitions=default -heltec_wifi_kit_32.build.defines= -heltec_wifi_kit_32.build.band=LoRaWAN_NONE -heltec_wifi_kit_32.build.LoRaWanDebugLevel=0 - -heltec_wifi_kit_32.menu.PSRAM.disabled=Disabled -heltec_wifi_kit_32.menu.PSRAM.disabled.build.defines= -heltec_wifi_kit_32.menu.PSRAM.disabled.build.extra_libs= -heltec_wifi_kit_32.menu.PSRAM.enabled=Enabled -heltec_wifi_kit_32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -heltec_wifi_kit_32.menu.PSRAM.enabled.build.extra_libs= - -heltec_wifi_kit_32.menu.CPUFreq.240=240MHz (WiFi/BT) -heltec_wifi_kit_32.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wifi_kit_32.menu.CPUFreq.160=160MHz (WiFi/BT) -heltec_wifi_kit_32.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wifi_kit_32.menu.CPUFreq.80=80MHz (WiFi/BT) -heltec_wifi_kit_32.menu.CPUFreq.80.build.f_cpu=80000000L - -heltec_wifi_kit_32.menu.UploadSpeed.921600=921600 -heltec_wifi_kit_32.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wifi_kit_32.menu.UploadSpeed.115200=115200 -heltec_wifi_kit_32.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wifi_kit_32.menu.UploadSpeed.256000.windows=256000 -heltec_wifi_kit_32.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wifi_kit_32.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wifi_kit_32.menu.UploadSpeed.230400=230400 -heltec_wifi_kit_32.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wifi_kit_32.menu.UploadSpeed.460800.linux=460800 -heltec_wifi_kit_32.menu.UploadSpeed.460800.macosx=460800 -heltec_wifi_kit_32.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wifi_kit_32.menu.UploadSpeed.512000.windows=512000 -heltec_wifi_kit_32.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wifi_kit_32.menu.DebugLevel.none=None -heltec_wifi_kit_32.menu.DebugLevel.none.build.code_debug=0 -heltec_wifi_kit_32.menu.DebugLevel.error=Error -heltec_wifi_kit_32.menu.DebugLevel.error.build.code_debug=1 -heltec_wifi_kit_32.menu.DebugLevel.warn=Warn -heltec_wifi_kit_32.menu.DebugLevel.warn.build.code_debug=2 -heltec_wifi_kit_32.menu.DebugLevel.info=Info -heltec_wifi_kit_32.menu.DebugLevel.info.build.code_debug=3 -heltec_wifi_kit_32.menu.DebugLevel.debug=Debug -heltec_wifi_kit_32.menu.DebugLevel.debug.build.code_debug=4 -heltec_wifi_kit_32.menu.DebugLevel.verbose=Verbose -heltec_wifi_kit_32.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wifi_kit_32.menu.EraseFlash.none=Disabled -heltec_wifi_kit_32.menu.EraseFlash.none.upload.erase_cmd= -heltec_wifi_kit_32.menu.EraseFlash.all=Enabled -heltec_wifi_kit_32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wifi_kit_32_V3.name=Heltec WiFi Kit 32(V3) - -heltec_wifi_kit_32_V3.vid.0=0x303a -heltec_wifi_kit_32_V3.pid.0=0x1001 - -heltec_wifi_kit_32_V3.bootloader.tool=esptool_py -heltec_wifi_kit_32_V3.bootloader.tool.default=esptool_py - -heltec_wifi_kit_32_V3.upload.tool=esptool_py -heltec_wifi_kit_32_V3.upload.tool.default=esptool_py -heltec_wifi_kit_32_V3.upload.tool.network=esp_ota - -heltec_wifi_kit_32_V3.upload.maximum_size=3342336 -heltec_wifi_kit_32_V3.upload.maximum_data_size=327680 -heltec_wifi_kit_32_V3.upload.flags= -heltec_wifi_kit_32_V3.upload.extra_flags= -heltec_wifi_kit_32_V3.upload.use_1200bps_touch=false -heltec_wifi_kit_32_V3.upload.wait_for_upload_port=false - -heltec_wifi_kit_32_V3.serial.disableDTR=false -heltec_wifi_kit_32_V3.serial.disableRTS=false - -heltec_wifi_kit_32_V3.build.tarch=xtensa -heltec_wifi_kit_32_V3.build.bootloader_addr=0x0 -heltec_wifi_kit_32_V3.build.target=esp32s3 -heltec_wifi_kit_32_V3.build.mcu=esp32s3 -heltec_wifi_kit_32_V3.build.core=esp32 -heltec_wifi_kit_32_V3.build.variant=heltec_wifi_kit_32_V3 -heltec_wifi_kit_32_V3.build.board=HELTEC_WIFI_KIT_32_V3 - -heltec_wifi_kit_32_V3.build.usb_mode=1 -heltec_wifi_kit_32_V3.build.cdc_on_boot=0 -heltec_wifi_kit_32_V3.build.msc_on_boot=0 -heltec_wifi_kit_32_V3.build.dfu_on_boot=0 -heltec_wifi_kit_32_V3.build.f_cpu=240000000L -heltec_wifi_kit_32_V3.build.flash_size=8MB -heltec_wifi_kit_32_V3.build.flash_freq=80m -heltec_wifi_kit_32_V3.build.flash_mode=dio -heltec_wifi_kit_32_V3.build.boot=qio -heltec_wifi_kit_32_V3.build.boot_freq=80m -heltec_wifi_kit_32_V3.build.partitions=default_8MB -heltec_wifi_kit_32_V3.build.loop_core= -heltec_wifi_kit_32_V3.build.event_core= -heltec_wifi_kit_32_V3.build.psram_type=qspi -heltec_wifi_kit_32_V3.build.memory_type={build.boot}_{build.psram_type} - -heltec_wifi_kit_32_V3.menu.LoopCore.1=Core 1 -heltec_wifi_kit_32_V3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -heltec_wifi_kit_32_V3.menu.LoopCore.0=Core 0 -heltec_wifi_kit_32_V3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -heltec_wifi_kit_32_V3.menu.EventsCore.1=Core 1 -heltec_wifi_kit_32_V3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -heltec_wifi_kit_32_V3.menu.EventsCore.0=Core 0 -heltec_wifi_kit_32_V3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -heltec_wifi_kit_32_V3.menu.CPUFreq.240=240MHz (WiFi) -heltec_wifi_kit_32_V3.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wifi_kit_32_V3.menu.CPUFreq.160=160MHz (WiFi) -heltec_wifi_kit_32_V3.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wifi_kit_32_V3.menu.CPUFreq.80=80MHz (WiFi) -heltec_wifi_kit_32_V3.menu.CPUFreq.80.build.f_cpu=80000000L -heltec_wifi_kit_32_V3.menu.CPUFreq.40=40MHz -heltec_wifi_kit_32_V3.menu.CPUFreq.40.build.f_cpu=40000000L -heltec_wifi_kit_32_V3.menu.CPUFreq.20=20MHz -heltec_wifi_kit_32_V3.menu.CPUFreq.20.build.f_cpu=20000000L -heltec_wifi_kit_32_V3.menu.CPUFreq.10=10MHz -heltec_wifi_kit_32_V3.menu.CPUFreq.10.build.f_cpu=10000000L - -heltec_wifi_kit_32_V3.menu.UploadSpeed.921600=921600 -heltec_wifi_kit_32_V3.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wifi_kit_32_V3.menu.UploadSpeed.115200=115200 -heltec_wifi_kit_32_V3.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wifi_kit_32_V3.menu.UploadSpeed.256000.windows=256000 -heltec_wifi_kit_32_V3.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wifi_kit_32_V3.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wifi_kit_32_V3.menu.UploadSpeed.230400=230400 -heltec_wifi_kit_32_V3.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wifi_kit_32_V3.menu.UploadSpeed.460800.linux=460800 -heltec_wifi_kit_32_V3.menu.UploadSpeed.460800.macosx=460800 -heltec_wifi_kit_32_V3.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wifi_kit_32_V3.menu.UploadSpeed.512000.windows=512000 -heltec_wifi_kit_32_V3.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wifi_kit_32_V3.menu.DebugLevel.none=None -heltec_wifi_kit_32_V3.menu.DebugLevel.none.build.code_debug=0 -heltec_wifi_kit_32_V3.menu.DebugLevel.error=Error -heltec_wifi_kit_32_V3.menu.DebugLevel.error.build.code_debug=1 -heltec_wifi_kit_32_V3.menu.DebugLevel.warn=Warn -heltec_wifi_kit_32_V3.menu.DebugLevel.warn.build.code_debug=2 -heltec_wifi_kit_32_V3.menu.DebugLevel.info=Info -heltec_wifi_kit_32_V3.menu.DebugLevel.info.build.code_debug=3 -heltec_wifi_kit_32_V3.menu.DebugLevel.debug=Debug -heltec_wifi_kit_32_V3.menu.DebugLevel.debug.build.code_debug=4 -heltec_wifi_kit_32_V3.menu.DebugLevel.verbose=Verbose -heltec_wifi_kit_32_V3.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wifi_kit_32_V3.menu.EraseFlash.none=Disabled -heltec_wifi_kit_32_V3.menu.EraseFlash.none.upload.erase_cmd= -heltec_wifi_kit_32_V3.menu.EraseFlash.all=Enabled -heltec_wifi_kit_32_V3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wifi_lora_32.name=Heltec WiFi LoRa 32 - -heltec_wifi_lora_32.bootloader.tool=esptool_py -heltec_wifi_lora_32.bootloader.tool.default=esptool_py - -heltec_wifi_lora_32.upload.tool=esptool_py -heltec_wifi_lora_32.upload.tool.default=esptool_py -heltec_wifi_lora_32.upload.tool.network=esp_ota - -heltec_wifi_lora_32.upload.maximum_size=1310720 -heltec_wifi_lora_32.upload.maximum_data_size=327680 -heltec_wifi_lora_32.upload.flags= -heltec_wifi_lora_32.upload.extra_flags= - -heltec_wifi_lora_32.serial.disableDTR=true -heltec_wifi_lora_32.serial.disableRTS=true - -heltec_wifi_lora_32.build.tarch=xtensa -heltec_wifi_lora_32.build.bootloader_addr=0x1000 -heltec_wifi_lora_32.build.target=esp32 -heltec_wifi_lora_32.build.mcu=esp32 -heltec_wifi_lora_32.build.core=esp32 -heltec_wifi_lora_32.build.variant=heltec_wifi_lora_32 -heltec_wifi_lora_32.build.board=HELTEC_WIFI_LORA_32 - -heltec_wifi_lora_32.build.f_cpu=240000000L -heltec_wifi_lora_32.build.flash_size=4MB -heltec_wifi_lora_32.build.flash_freq=80m -heltec_wifi_lora_32.build.flash_mode=dio -heltec_wifi_lora_32.build.boot=dio -heltec_wifi_lora_32.build.partitions=default -heltec_wifi_lora_32.build.defines=-D{build.band} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} {build.psram} - -heltec_wifi_lora_32.menu.PartitionScheme.default=Regular 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.default.build.partitions=default -heltec_wifi_lora_32.menu.PartitionScheme.defaultffat=Regular 4MB with ffat (1.2MB APP/1.5MB FATFS) -heltec_wifi_lora_32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -heltec_wifi_lora_32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -heltec_wifi_lora_32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -heltec_wifi_lora_32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.minimal.build.partitions=minimal -heltec_wifi_lora_32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.huge_app.build.partitions=huge_app -heltec_wifi_lora_32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -heltec_wifi_lora_32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.no_ota.build.partitions=no_ota -heltec_wifi_lora_32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -heltec_wifi_lora_32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -heltec_wifi_lora_32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -heltec_wifi_lora_32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -heltec_wifi_lora_32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -heltec_wifi_lora_32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -heltec_wifi_lora_32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -heltec_wifi_lora_32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -heltec_wifi_lora_32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -heltec_wifi_lora_32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 - -heltec_wifi_lora_32.menu.PSRAM.disabled=Disabled -heltec_wifi_lora_32.menu.PSRAM.disabled.build.psram= -heltec_wifi_lora_32.menu.PSRAM.disabled.build.extra_libs= -heltec_wifi_lora_32.menu.PSRAM.enabled=Enabled -heltec_wifi_lora_32.menu.PSRAM.enabled.build.psram=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -heltec_wifi_lora_32.menu.PSRAM.enabled.build.extra_libs= - -heltec_wifi_lora_32.menu.CPUFreq.240=240MHz (WiFi/BT) -heltec_wifi_lora_32.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wifi_lora_32.menu.CPUFreq.160=160MHz (WiFi/BT) -heltec_wifi_lora_32.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wifi_lora_32.menu.CPUFreq.80=80MHz (WiFi/BT) -heltec_wifi_lora_32.menu.CPUFreq.160.build.f_cpu=80000000L - -heltec_wifi_lora_32.menu.UploadSpeed.921600=921600 -heltec_wifi_lora_32.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wifi_lora_32.menu.UploadSpeed.115200=115200 -heltec_wifi_lora_32.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wifi_lora_32.menu.UploadSpeed.256000.windows=256000 -heltec_wifi_lora_32.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wifi_lora_32.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wifi_lora_32.menu.UploadSpeed.230400=230400 -heltec_wifi_lora_32.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wifi_lora_32.menu.UploadSpeed.460800.linux=460800 -heltec_wifi_lora_32.menu.UploadSpeed.460800.macosx=460800 -heltec_wifi_lora_32.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wifi_lora_32.menu.UploadSpeed.512000.windows=512000 -heltec_wifi_lora_32.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wifi_lora_32.menu.DebugLevel.none=None -heltec_wifi_lora_32.menu.DebugLevel.none.build.code_debug=0 -heltec_wifi_lora_32.menu.DebugLevel.error=Error -heltec_wifi_lora_32.menu.DebugLevel.error.build.code_debug=1 -heltec_wifi_lora_32.menu.DebugLevel.warn=Warn -heltec_wifi_lora_32.menu.DebugLevel.warn.build.code_debug=2 -heltec_wifi_lora_32.menu.DebugLevel.info=Info -heltec_wifi_lora_32.menu.DebugLevel.info.build.code_debug=3 -heltec_wifi_lora_32.menu.DebugLevel.debug=Debug -heltec_wifi_lora_32.menu.DebugLevel.debug.build.code_debug=4 -heltec_wifi_lora_32.menu.DebugLevel.verbose=Verbose -heltec_wifi_lora_32.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wifi_lora_32.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wifi_lora_32.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wifi_lora_32.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wifi_lora_32.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wifi_lora_32.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wifi_lora_32.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wifi_lora_32.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wifi_lora_32.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wifi_lora_32.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wifi_lora_32.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wifi_lora_32.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wifi_lora_32.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wifi_lora_32.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wifi_lora_32.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wifi_lora_32.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wifi_lora_32.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wifi_lora_32.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wifi_lora_32.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wifi_lora_32.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wifi_lora_32.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.0=None -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.1=Freq -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wifi_lora_32.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wifi_lora_32.menu.EraseFlash.none=Disabled -heltec_wifi_lora_32.menu.EraseFlash.none.upload.erase_cmd= -heltec_wifi_lora_32.menu.EraseFlash.all=Enabled -heltec_wifi_lora_32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wifi_lora_32_V2.name=Heltec WiFi LoRa 32(V2) - -heltec_wifi_lora_32_V2.bootloader.tool=esptool_py -heltec_wifi_lora_32_V2.bootloader.tool.default=esptool_py - -heltec_wifi_lora_32_V2.upload.tool=esptool_py -heltec_wifi_lora_32_V2.upload.tool.default=esptool_py -heltec_wifi_lora_32_V2.upload.tool.network=esp_ota - -heltec_wifi_lora_32_V2.upload.maximum_size=3342336 -heltec_wifi_lora_32_V2.upload.maximum_data_size=327680 -heltec_wifi_lora_32_V2.upload.flags= -heltec_wifi_lora_32_V2.upload.extra_flags= - -heltec_wifi_lora_32_V2.serial.disableDTR=true -heltec_wifi_lora_32_V2.serial.disableRTS=true - -heltec_wifi_lora_32_V2.build.tarch=xtensa -heltec_wifi_lora_32_V2.build.bootloader_addr=0x1000 -heltec_wifi_lora_32_V2.build.target=esp32 -heltec_wifi_lora_32_V2.build.mcu=esp32 -heltec_wifi_lora_32_V2.build.core=esp32 -heltec_wifi_lora_32_V2.build.variant=heltec_wifi_lora_32_V2 -heltec_wifi_lora_32_V2.build.board=HELTEC_WIFI_LORA_32_V2 - -heltec_wifi_lora_32_V2.build.f_cpu=240000000L -heltec_wifi_lora_32_V2.build.flash_size=8MB -heltec_wifi_lora_32_V2.build.flash_freq=80m -heltec_wifi_lora_32_V2.build.flash_mode=dio -heltec_wifi_lora_32_V2.build.boot=qio -heltec_wifi_lora_32_V2.build.partitions=default_8MB -heltec_wifi_lora_32_V2.build.defines=-D{build.band} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} {build.psram} - -heltec_wifi_lora_32_V2.menu.PSRAM.disabled=Disabled -heltec_wifi_lora_32_V2.menu.PSRAM.disabled.build.psram= -heltec_wifi_lora_32_V2.menu.PSRAM.disabled.build.extra_libs= -heltec_wifi_lora_32_V2.menu.PSRAM.enabled=Enabled -heltec_wifi_lora_32_V2.menu.PSRAM.enabled.build.psram=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -heltec_wifi_lora_32_V2.menu.PSRAM.enabled.build.extra_libs= - -heltec_wifi_lora_32_V2.menu.CPUFreq.240=240MHz (WiFi/BT) -heltec_wifi_lora_32_V2.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wifi_lora_32_V2.menu.CPUFreq.160=160MHz (WiFi/BT) -heltec_wifi_lora_32_V2.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wifi_lora_32_V2.menu.CPUFreq.80=80MHz (WiFi/BT) -heltec_wifi_lora_32_V2.menu.CPUFreq.80.build.f_cpu=80000000L - -heltec_wifi_lora_32_V2.menu.UploadSpeed.921600=921600 -heltec_wifi_lora_32_V2.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wifi_lora_32_V2.menu.UploadSpeed.115200=115200 -heltec_wifi_lora_32_V2.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wifi_lora_32_V2.menu.UploadSpeed.256000.windows=256000 -heltec_wifi_lora_32_V2.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wifi_lora_32_V2.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wifi_lora_32_V2.menu.UploadSpeed.230400=230400 -heltec_wifi_lora_32_V2.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wifi_lora_32_V2.menu.UploadSpeed.460800.linux=460800 -heltec_wifi_lora_32_V2.menu.UploadSpeed.460800.macosx=460800 -heltec_wifi_lora_32_V2.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wifi_lora_32_V2.menu.UploadSpeed.512000.windows=512000 -heltec_wifi_lora_32_V2.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wifi_lora_32_V2.menu.DebugLevel.none=None -heltec_wifi_lora_32_V2.menu.DebugLevel.none.build.code_debug=0 -heltec_wifi_lora_32_V2.menu.DebugLevel.error=Error -heltec_wifi_lora_32_V2.menu.DebugLevel.error.build.code_debug=1 -heltec_wifi_lora_32_V2.menu.DebugLevel.warn=Warn -heltec_wifi_lora_32_V2.menu.DebugLevel.warn.build.code_debug=2 -heltec_wifi_lora_32_V2.menu.DebugLevel.info=Info -heltec_wifi_lora_32_V2.menu.DebugLevel.info.build.code_debug=3 -heltec_wifi_lora_32_V2.menu.DebugLevel.debug=Debug -heltec_wifi_lora_32_V2.menu.DebugLevel.debug.build.code_debug=4 -heltec_wifi_lora_32_V2.menu.DebugLevel.verbose=Verbose -heltec_wifi_lora_32_V2.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wifi_lora_32_V2.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.0=None -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.1=Freq -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wifi_lora_32_V2.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wifi_lora_32_V2.menu.EraseFlash.none=Disabled -heltec_wifi_lora_32_V2.menu.EraseFlash.none.upload.erase_cmd= -heltec_wifi_lora_32_V2.menu.EraseFlash.all=Enabled -heltec_wifi_lora_32_V2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wifi_lora_32_V3.name=Heltec WiFi LoRa 32(V3) / Wireless shell(V3) / Wireless stick lite (V3) -heltec_wifi_lora_32_V3.vid.0=0x303a -heltec_wifi_lora_32_V3.pid.0=0x1001 - -heltec_wifi_lora_32_V3.bootloader.tool=esptool_py -heltec_wifi_lora_32_V3.bootloader.tool.default=esptool_py - -heltec_wifi_lora_32_V3.upload.tool=esptool_py -heltec_wifi_lora_32_V3.upload.tool.default=esptool_py -heltec_wifi_lora_32_V3.upload.tool.network=esp_ota - -heltec_wifi_lora_32_V3.upload.maximum_size=3342336 -heltec_wifi_lora_32_V3.upload.maximum_data_size=327680 -heltec_wifi_lora_32_V3.upload.flags= -heltec_wifi_lora_32_V3.upload.extra_flags= -heltec_wifi_lora_32_V3.upload.use_1200bps_touch=false -heltec_wifi_lora_32_V3.upload.wait_for_upload_port=false - -heltec_wifi_lora_32_V3.serial.disableDTR=false -heltec_wifi_lora_32_V3.serial.disableRTS=false - -heltec_wifi_lora_32_V3.build.tarch=xtensa -heltec_wifi_lora_32_V3.build.bootloader_addr=0x0 -heltec_wifi_lora_32_V3.build.target=esp32s3 -heltec_wifi_lora_32_V3.build.mcu=esp32s3 -heltec_wifi_lora_32_V3.build.core=esp32 -heltec_wifi_lora_32_V3.build.variant=heltec_wifi_lora_32_V3 -heltec_wifi_lora_32_V3.build.board=HELTEC_WIFI_LORA_32_V3 - -heltec_wifi_lora_32_V3.build.usb_mode=1 -heltec_wifi_lora_32_V3.build.cdc_on_boot=0 -heltec_wifi_lora_32_V3.build.msc_on_boot=0 -heltec_wifi_lora_32_V3.build.dfu_on_boot=0 -heltec_wifi_lora_32_V3.build.f_cpu=240000000L -heltec_wifi_lora_32_V3.build.flash_size=8MB -heltec_wifi_lora_32_V3.build.flash_freq=80m -heltec_wifi_lora_32_V3.build.flash_mode=dio -heltec_wifi_lora_32_V3.build.boot=qio -heltec_wifi_lora_32_V3.build.boot_freq=80m -heltec_wifi_lora_32_V3.build.partitions=default_8MB -heltec_wifi_lora_32_V3.build.loop_core= -heltec_wifi_lora_32_V3.build.event_core= -heltec_wifi_lora_32_V3.build.psram_type=qspi -heltec_wifi_lora_32_V3.build.memory_type={build.boot}_{build.psram_type} - -heltec_wifi_lora_32_V3.menu.LoopCore.1=Core 1 -heltec_wifi_lora_32_V3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -heltec_wifi_lora_32_V3.menu.LoopCore.0=Core 0 -heltec_wifi_lora_32_V3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -heltec_wifi_lora_32_V3.menu.EventsCore.1=Core 1 -heltec_wifi_lora_32_V3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -heltec_wifi_lora_32_V3.menu.EventsCore.0=Core 0 -heltec_wifi_lora_32_V3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -heltec_wifi_lora_32_V3.menu.CPUFreq.240=240MHz (WiFi) -heltec_wifi_lora_32_V3.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wifi_lora_32_V3.menu.CPUFreq.160=160MHz (WiFi) -heltec_wifi_lora_32_V3.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wifi_lora_32_V3.menu.CPUFreq.80=80MHz (WiFi) -heltec_wifi_lora_32_V3.menu.CPUFreq.80.build.f_cpu=80000000L -heltec_wifi_lora_32_V3.menu.CPUFreq.40=40MHz -heltec_wifi_lora_32_V3.menu.CPUFreq.40.build.f_cpu=40000000L -heltec_wifi_lora_32_V3.menu.CPUFreq.20=20MHz -heltec_wifi_lora_32_V3.menu.CPUFreq.20.build.f_cpu=20000000L -heltec_wifi_lora_32_V3.menu.CPUFreq.10=10MHz -heltec_wifi_lora_32_V3.menu.CPUFreq.10.build.f_cpu=10000000L - -heltec_wifi_lora_32_V3.menu.UploadSpeed.921600=921600 -heltec_wifi_lora_32_V3.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wifi_lora_32_V3.menu.UploadSpeed.115200=115200 -heltec_wifi_lora_32_V3.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wifi_lora_32_V3.menu.UploadSpeed.256000.windows=256000 -heltec_wifi_lora_32_V3.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wifi_lora_32_V3.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wifi_lora_32_V3.menu.UploadSpeed.230400=230400 -heltec_wifi_lora_32_V3.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wifi_lora_32_V3.menu.UploadSpeed.460800.linux=460800 -heltec_wifi_lora_32_V3.menu.UploadSpeed.460800.macosx=460800 -heltec_wifi_lora_32_V3.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wifi_lora_32_V3.menu.UploadSpeed.512000.windows=512000 -heltec_wifi_lora_32_V3.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wifi_lora_32_V3.menu.DebugLevel.none=None -heltec_wifi_lora_32_V3.menu.DebugLevel.none.build.code_debug=0 -heltec_wifi_lora_32_V3.menu.DebugLevel.error=Error -heltec_wifi_lora_32_V3.menu.DebugLevel.error.build.code_debug=1 -heltec_wifi_lora_32_V3.menu.DebugLevel.warn=Warn -heltec_wifi_lora_32_V3.menu.DebugLevel.warn.build.code_debug=2 -heltec_wifi_lora_32_V3.menu.DebugLevel.info=Info -heltec_wifi_lora_32_V3.menu.DebugLevel.info.build.code_debug=3 -heltec_wifi_lora_32_V3.menu.DebugLevel.debug=Debug -heltec_wifi_lora_32_V3.menu.DebugLevel.debug.build.code_debug=4 -heltec_wifi_lora_32_V3.menu.DebugLevel.verbose=Verbose -heltec_wifi_lora_32_V3.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wifi_lora_32_V3.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.0=None -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.1=Freq -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wifi_lora_32_V3.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wifi_lora_32_V3.menu.LORAWAN_DEVEUI.0=CUSTOM -heltec_wifi_lora_32_V3.menu.LORAWAN_DEVEUI.0.build.LORAWAN_DEVEUI_AUTO=0 -heltec_wifi_lora_32_V3.menu.LORAWAN_DEVEUI.1=Generate By ChipID -heltec_wifi_lora_32_V3.menu.LORAWAN_DEVEUI.1.build.LORAWAN_DEVEUI_AUTO=1 - -heltec_wifi_lora_32_V3.menu.LORAWAN_PREAMBLE_LENGTH.0=8(default) -heltec_wifi_lora_32_V3.menu.LORAWAN_PREAMBLE_LENGTH.0.build.LORAWAN_PREAMBLE_LENGTH=8 -heltec_wifi_lora_32_V3.menu.LORAWAN_PREAMBLE_LENGTH.1=16(For M00 and M00L) -heltec_wifi_lora_32_V3.menu.LORAWAN_PREAMBLE_LENGTH.1.build.LORAWAN_PREAMBLE_LENGTH=16 - -heltec_wifi_lora_32_V3.build.defines=-D{build.band} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} -DLORAWAN_PREAMBLE_LENGTH={build.LORAWAN_PREAMBLE_LENGTH} -DLORAWAN_DEVEUI_AUTO={build.LORAWAN_DEVEUI_AUTO} -D{build.board} - -heltec_wifi_lora_32_V3.menu.EraseFlash.none=Disabled -heltec_wifi_lora_32_V3.menu.EraseFlash.none.upload.erase_cmd= -heltec_wifi_lora_32_V3.menu.EraseFlash.all=Enabled -heltec_wifi_lora_32_V3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - - -heltec_wireless_stick.name=Heltec Wireless Stick - -heltec_wireless_stick.bootloader.tool=esptool_py -heltec_wireless_stick.bootloader.tool.default=esptool_py - -heltec_wireless_stick.upload.tool=esptool_py -heltec_wireless_stick.upload.tool.default=esptool_py -heltec_wireless_stick.upload.tool.network=esp_ota - -heltec_wireless_stick.upload.maximum_size=3342336 -heltec_wireless_stick.upload.maximum_data_size=327680 -heltec_wireless_stick.upload.flags= -heltec_wireless_stick.upload.extra_flags= - -heltec_wireless_stick.serial.disableDTR=true -heltec_wireless_stick.serial.disableRTS=true - -heltec_wireless_stick.build.tarch=xtensa -heltec_wireless_stick.build.bootloader_addr=0x1000 -heltec_wireless_stick.build.target=esp32 -heltec_wireless_stick.build.mcu=esp32 -heltec_wireless_stick.build.core=esp32 -heltec_wireless_stick.build.variant=heltec_wireless_stick -heltec_wireless_stick.build.board=HELTEC_WIRELESS_STICK - -heltec_wireless_stick.build.f_cpu=240000000L -heltec_wireless_stick.build.flash_size=8MB -heltec_wireless_stick.build.flash_freq=80m -heltec_wireless_stick.build.flash_mode=dio -heltec_wireless_stick.build.boot=dio -heltec_wireless_stick.build.partitions=default_8MB -heltec_wireless_stick.build.defines=-D{build.band} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} {build.psram} - -heltec_wireless_stick.menu.PSRAM.disabled=Disabled -heltec_wireless_stick.menu.PSRAM.disabled.build.psram= -heltec_wireless_stick.menu.PSRAM.disabled.build.extra_libs= -heltec_wireless_stick.menu.PSRAM.enabled=Enabled -heltec_wireless_stick.menu.PSRAM.enabled.build.psram=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -heltec_wireless_stick.menu.PSRAM.enabled.build.extra_libs= - -heltec_wireless_stick.menu.CPUFreq.240=240MHz (WiFi/BT) -heltec_wireless_stick.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wireless_stick.menu.CPUFreq.160=160MHz (WiFi/BT) -heltec_wireless_stick.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wireless_stick.menu.CPUFreq.80=80MHz (WiFi/BT) -heltec_wireless_stick.menu.CPUFreq.80.build.f_cpu=80000000L - -heltec_wireless_stick.menu.UploadSpeed.921600=921600 -heltec_wireless_stick.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wireless_stick.menu.UploadSpeed.115200=115200 -heltec_wireless_stick.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wireless_stick.menu.UploadSpeed.256000.windows=256000 -heltec_wireless_stick.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wireless_stick.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wireless_stick.menu.UploadSpeed.230400=230400 -heltec_wireless_stick.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wireless_stick.menu.UploadSpeed.460800.linux=460800 -heltec_wireless_stick.menu.UploadSpeed.460800.macosx=460800 -heltec_wireless_stick.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wireless_stick.menu.UploadSpeed.512000.windows=512000 -heltec_wireless_stick.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wireless_stick.menu.DebugLevel.none=None -heltec_wireless_stick.menu.DebugLevel.none.build.code_debug=0 -heltec_wireless_stick.menu.DebugLevel.error=Error -heltec_wireless_stick.menu.DebugLevel.error.build.code_debug=1 -heltec_wireless_stick.menu.DebugLevel.warn=Warn -heltec_wireless_stick.menu.DebugLevel.warn.build.code_debug=2 -heltec_wireless_stick.menu.DebugLevel.info=Info -heltec_wireless_stick.menu.DebugLevel.info.build.code_debug=3 -heltec_wireless_stick.menu.DebugLevel.debug=Debug -heltec_wireless_stick.menu.DebugLevel.debug.build.code_debug=4 -heltec_wireless_stick.menu.DebugLevel.verbose=Verbose -heltec_wireless_stick.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wireless_stick.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wireless_stick.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wireless_stick.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wireless_stick.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wireless_stick.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wireless_stick.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wireless_stick.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wireless_stick.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wireless_stick.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wireless_stick.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wireless_stick.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wireless_stick.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wireless_stick.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wireless_stick.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wireless_stick.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wireless_stick.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wireless_stick.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wireless_stick.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wireless_stick.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wireless_stick.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wireless_stick.menu.LoRaWanDebugLevel.0=None -heltec_wireless_stick.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wireless_stick.menu.LoRaWanDebugLevel.1=Freq -heltec_wireless_stick.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wireless_stick.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wireless_stick.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wireless_stick.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wireless_stick.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wireless_stick.menu.EraseFlash.none=Disabled -heltec_wireless_stick.menu.EraseFlash.none.upload.erase_cmd= -heltec_wireless_stick.menu.EraseFlash.all=Enabled -heltec_wireless_stick.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wireless_stick_lite.name=Heltec Wireless Stick Lite - -heltec_wireless_stick_lite.bootloader.tool=esptool_py -heltec_wireless_stick_lite.bootloader.tool.default=esptool_py - -heltec_wireless_stick_lite.upload.tool=esptool_py -heltec_wireless_stick_lite.upload.tool.default=esptool_py -heltec_wireless_stick_lite.upload.tool.network=esp_ota - -heltec_wireless_stick_lite.upload.maximum_size=1310720 -heltec_wireless_stick_lite.upload.maximum_data_size=327680 -heltec_wireless_stick_lite.upload.wait_for_upload_port=true -heltec_wireless_stick_lite.upload.flags= -heltec_wireless_stick_lite.upload.extra_flags= - -heltec_wireless_stick_lite.serial.disableDTR=true -heltec_wireless_stick_lite.serial.disableRTS=true - -heltec_wireless_stick_lite.build.tarch=xtensa -heltec_wireless_stick_lite.build.bootloader_addr=0x1000 -heltec_wireless_stick_lite.build.target=esp32 -heltec_wireless_stick_lite.build.mcu=esp32 -heltec_wireless_stick_lite.build.core=esp32 -heltec_wireless_stick_lite.build.variant=heltec_wireless_stick_lite -heltec_wireless_stick_lite.build.board=HELTEC_WIRELESS_STICK_LITE - -heltec_wireless_stick_lite.build.f_cpu=240000000L -heltec_wireless_stick_lite.build.flash_size=4MB -heltec_wireless_stick_lite.build.flash_freq=80m -heltec_wireless_stick_lite.build.flash_mode=dio -heltec_wireless_stick_lite.build.boot=dio -heltec_wireless_stick_lite.build.partitions=default -heltec_wireless_stick_lite.build.defines=-D{build.band} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} {build.psram} - -heltec_wireless_stick_lite.menu.PSRAM.disabled=Disabled -heltec_wireless_stick_lite.menu.PSRAM.disabled.build.psram= -heltec_wireless_stick_lite.menu.PSRAM.disabled.build.extra_libs= -heltec_wireless_stick_lite.menu.PSRAM.enabled=Enabled -heltec_wireless_stick_lite.menu.PSRAM.enabled.build.psram=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -heltec_wireless_stick_lite.menu.PSRAM.enabled.build.extra_libs= - -heltec_wireless_stick_lite.menu.CPUFreq.240=240MHz (WiFi/BT) -heltec_wireless_stick_lite.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wireless_stick_lite.menu.CPUFreq.160=160MHz (WiFi/BT) -heltec_wireless_stick_lite.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wireless_stick_lite.menu.CPUFreq.80=80MHz (WiFi/BT) -heltec_wireless_stick_lite.menu.CPUFreq.80.build.f_cpu=80000000L - -heltec_wireless_stick_lite.menu.UploadSpeed.921600=921600 -heltec_wireless_stick_lite.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wireless_stick_lite.menu.UploadSpeed.115200=115200 -heltec_wireless_stick_lite.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wireless_stick_lite.menu.UploadSpeed.256000.windows=256000 -heltec_wireless_stick_lite.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wireless_stick_lite.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wireless_stick_lite.menu.UploadSpeed.230400=230400 -heltec_wireless_stick_lite.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wireless_stick_lite.menu.UploadSpeed.460800.linux=460800 -heltec_wireless_stick_lite.menu.UploadSpeed.460800.macosx=460800 -heltec_wireless_stick_lite.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wireless_stick_lite.menu.UploadSpeed.512000.windows=512000 -heltec_wireless_stick_lite.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wireless_stick_lite.menu.DebugLevel.none=None -heltec_wireless_stick_lite.menu.DebugLevel.none.build.code_debug=0 -heltec_wireless_stick_lite.menu.DebugLevel.error=Error -heltec_wireless_stick_lite.menu.DebugLevel.error.build.code_debug=1 -heltec_wireless_stick_lite.menu.DebugLevel.warn=Warn -heltec_wireless_stick_lite.menu.DebugLevel.warn.build.code_debug=2 -heltec_wireless_stick_lite.menu.DebugLevel.info=Info -heltec_wireless_stick_lite.menu.DebugLevel.info.build.code_debug=3 -heltec_wireless_stick_lite.menu.DebugLevel.debug=Debug -heltec_wireless_stick_lite.menu.DebugLevel.debug.build.code_debug=4 -heltec_wireless_stick_lite.menu.DebugLevel.verbose=Verbose -heltec_wireless_stick_lite.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wireless_stick_lite.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wireless_stick_lite.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wireless_stick_lite.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.0=None -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.1=Freq -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wireless_stick_lite.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wireless_stick_lite.menu.EraseFlash.none=Disabled -heltec_wireless_stick_lite.menu.EraseFlash.none.upload.erase_cmd= -heltec_wireless_stick_lite.menu.EraseFlash.all=Enabled -heltec_wireless_stick_lite.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -heltec_wireless_tracker.name=Heltec Wireless Tracker -heltec_wireless_tracker.vid.0=0x303a -heltec_wireless_tracker.pid.0=0x1001 - -heltec_wireless_tracker.bootloader.tool=esptool_py -heltec_wireless_tracker.bootloader.tool.default=esptool_py - -heltec_wireless_tracker.upload.tool=esptool_py -heltec_wireless_tracker.upload.tool.default=esptool_py -heltec_wireless_tracker.upload.tool.network=esp_ota - -heltec_wireless_tracker.upload.maximum_size=1310720 -heltec_wireless_tracker.upload.maximum_data_size=327680 -heltec_wireless_tracker.upload.flags= -heltec_wireless_tracker.upload.extra_flags= -heltec_wireless_tracker.upload.use_1200bps_touch=false -heltec_wireless_tracker.upload.wait_for_upload_port=false - -heltec_wireless_tracker.serial.disableDTR=false -heltec_wireless_tracker.serial.disableRTS=false - -heltec_wireless_tracker.build.tarch=xtensa -heltec_wireless_tracker.build.bootloader_addr=0x0 -heltec_wireless_tracker.build.target=esp32s3 -heltec_wireless_tracker.build.mcu=esp32s3 -heltec_wireless_tracker.build.core=esp32 -heltec_wireless_tracker.build.variant=heltec_wireless_tracker -heltec_wireless_tracker.build.board=HELTEC_WIRELESS_TRACKER - -heltec_wireless_tracker.build.usb_mode=1 -heltec_wireless_tracker.build.cdc_on_boot=0 -heltec_wireless_tracker.build.msc_on_boot=0 -heltec_wireless_tracker.build.dfu_on_boot=0 -heltec_wireless_tracker.build.f_cpu=240000000L -heltec_wireless_tracker.build.flash_size=4MB -heltec_wireless_tracker.build.flash_freq=80m -heltec_wireless_tracker.build.flash_mode=dio -heltec_wireless_tracker.build.boot=qio -heltec_wireless_tracker.build.boot_freq=80m -heltec_wireless_tracker.build.partitions=default -heltec_wireless_tracker.build.loop_core= -heltec_wireless_tracker.build.event_core= -heltec_wireless_tracker.build.psram_type=qspi -heltec_wireless_tracker.build.memory_type={build.boot}_{build.psram_type} -heltec_wireless_tracker.build.defines=-D{build.band} {build.psram_val} -DLoRaWAN_DEBUG_LEVEL={build.LoRaWanDebugLevel} -DACTIVE_REGION=LORAMAC_{build.band} -DLORAWAN_PREAMBLE_LENGTH={build.LORAWAN_PREAMBLE_LENGTH} -DLORAWAN_DEVEUI_AUTO={build.LORAWAN_DEVEUI_AUTO} -D{build.board} - -heltec_wireless_tracker.menu.PSRAM.disabled=Disabled -heltec_wireless_tracker.menu.PSRAM.disabled.build.psram_val= -heltec_wireless_tracker.menu.PSRAM.disabled.build.psram_type=qspi -heltec_wireless_tracker.menu.PSRAM.enabled=QSPI PSRAM -heltec_wireless_tracker.menu.PSRAM.enabled.build.psram_val=-DBOARD_HAS_PSRAM -heltec_wireless_tracker.menu.PSRAM.enabled.build.psram_type=qspi -heltec_wireless_tracker.menu.PSRAM.opi=OPI PSRAM -heltec_wireless_tracker.menu.PSRAM.opi.build.psram_val=-DBOARD_HAS_PSRAM -heltec_wireless_tracker.menu.PSRAM.opi.build.psram_type=opi - -heltec_wireless_tracker.menu.FlashMode.qio=QIO 80MHz -heltec_wireless_tracker.menu.FlashMode.qio.build.flash_mode=dio -heltec_wireless_tracker.menu.FlashMode.qio.build.boot=qio -heltec_wireless_tracker.menu.FlashMode.qio.build.boot_freq=80m -heltec_wireless_tracker.menu.FlashMode.qio.build.flash_freq=80m -heltec_wireless_tracker.menu.FlashMode.qio120=QIO 120MHz -heltec_wireless_tracker.menu.FlashMode.qio120.build.flash_mode=dio -heltec_wireless_tracker.menu.FlashMode.qio120.build.boot=qio -heltec_wireless_tracker.menu.FlashMode.qio120.build.boot_freq=120m -heltec_wireless_tracker.menu.FlashMode.qio120.build.flash_freq=80m -heltec_wireless_tracker.menu.FlashMode.dio=DIO 80MHz -heltec_wireless_tracker.menu.FlashMode.dio.build.flash_mode=dio -heltec_wireless_tracker.menu.FlashMode.dio.build.boot=dio -heltec_wireless_tracker.menu.FlashMode.dio.build.boot_freq=80m -heltec_wireless_tracker.menu.FlashMode.dio.build.flash_freq=80m -heltec_wireless_tracker.menu.FlashMode.opi=OPI 80MHz -heltec_wireless_tracker.menu.FlashMode.opi.build.flash_mode=dout -heltec_wireless_tracker.menu.FlashMode.opi.build.boot=opi -heltec_wireless_tracker.menu.FlashMode.opi.build.boot_freq=80m -heltec_wireless_tracker.menu.FlashMode.opi.build.flash_freq=80m - -heltec_wireless_tracker.menu.FlashSize.4M=4MB (32Mb) -heltec_wireless_tracker.menu.FlashSize.4M.build.flash_size=4MB -heltec_wireless_tracker.menu.FlashSize.8M=8MB (64Mb) -heltec_wireless_tracker.menu.FlashSize.8M.build.flash_size=8MB -heltec_wireless_tracker.menu.FlashSize.8M.build.partitions=default_8MB -heltec_wireless_tracker.menu.FlashSize.16M=16MB (128Mb) -heltec_wireless_tracker.menu.FlashSize.16M.build.flash_size=16MB -#heltec_wireless_tracker.menu.FlashSize.32M=32MB (256Mb) -#heltec_wireless_tracker.menu.FlashSize.32M.build.flash_size=32MB - -heltec_wireless_tracker.menu.LoopCore.1=Core 1 -heltec_wireless_tracker.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -heltec_wireless_tracker.menu.LoopCore.0=Core 0 -heltec_wireless_tracker.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -heltec_wireless_tracker.menu.EventsCore.1=Core 1 -heltec_wireless_tracker.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -heltec_wireless_tracker.menu.EventsCore.0=Core 0 -heltec_wireless_tracker.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -heltec_wireless_tracker.menu.USBMode.hwcdc=Hardware CDC and JTAG -heltec_wireless_tracker.menu.USBMode.hwcdc.build.usb_mode=1 -heltec_wireless_tracker.menu.USBMode.default=USB-OTG (TinyUSB) -heltec_wireless_tracker.menu.USBMode.default.build.usb_mode=0 - -heltec_wireless_tracker.menu.CDCOnBoot.default=Disabled -heltec_wireless_tracker.menu.CDCOnBoot.default.build.cdc_on_boot=0 -heltec_wireless_tracker.menu.CDCOnBoot.cdc=Enabled -heltec_wireless_tracker.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -heltec_wireless_tracker.menu.MSCOnBoot.default=Disabled -heltec_wireless_tracker.menu.MSCOnBoot.default.build.msc_on_boot=0 -heltec_wireless_tracker.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -heltec_wireless_tracker.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -heltec_wireless_tracker.menu.DFUOnBoot.default=Disabled -heltec_wireless_tracker.menu.DFUOnBoot.default.build.dfu_on_boot=0 -heltec_wireless_tracker.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -heltec_wireless_tracker.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -heltec_wireless_tracker.menu.UploadMode.default=UART0 / Hardware CDC -heltec_wireless_tracker.menu.UploadMode.default.upload.use_1200bps_touch=false -heltec_wireless_tracker.menu.UploadMode.default.upload.wait_for_upload_port=false -heltec_wireless_tracker.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -heltec_wireless_tracker.menu.UploadMode.cdc.upload.use_1200bps_touch=true -heltec_wireless_tracker.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -heltec_wireless_tracker.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.default.build.partitions=default -heltec_wireless_tracker.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -heltec_wireless_tracker.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -heltec_wireless_tracker.menu.PartitionScheme.default_8MB=8M Flash (3MB APP/1.5MB FAT) -heltec_wireless_tracker.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -heltec_wireless_tracker.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -heltec_wireless_tracker.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.minimal.build.partitions=minimal -heltec_wireless_tracker.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.no_ota.build.partitions=no_ota -heltec_wireless_tracker.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -heltec_wireless_tracker.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -heltec_wireless_tracker.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -heltec_wireless_tracker.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -heltec_wireless_tracker.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -heltec_wireless_tracker.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -heltec_wireless_tracker.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -heltec_wireless_tracker.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -heltec_wireless_tracker.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -heltec_wireless_tracker.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.huge_app.build.partitions=huge_app -heltec_wireless_tracker.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -heltec_wireless_tracker.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -heltec_wireless_tracker.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -heltec_wireless_tracker.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -heltec_wireless_tracker.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -heltec_wireless_tracker.menu.PartitionScheme.fatflash.build.partitions=ffat -heltec_wireless_tracker.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -heltec_wireless_tracker.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -heltec_wireless_tracker.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -heltec_wireless_tracker.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -heltec_wireless_tracker.menu.PartitionScheme.rainmaker=RainMaker -heltec_wireless_tracker.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -heltec_wireless_tracker.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -heltec_wireless_tracker.menu.CPUFreq.240=240MHz (WiFi) -heltec_wireless_tracker.menu.CPUFreq.240.build.f_cpu=240000000L -heltec_wireless_tracker.menu.CPUFreq.160=160MHz (WiFi) -heltec_wireless_tracker.menu.CPUFreq.160.build.f_cpu=160000000L -heltec_wireless_tracker.menu.CPUFreq.80=80MHz (WiFi) -heltec_wireless_tracker.menu.CPUFreq.80.build.f_cpu=80000000L -heltec_wireless_tracker.menu.CPUFreq.40=40MHz -heltec_wireless_tracker.menu.CPUFreq.40.build.f_cpu=40000000L -heltec_wireless_tracker.menu.CPUFreq.20=20MHz -heltec_wireless_tracker.menu.CPUFreq.20.build.f_cpu=20000000L -heltec_wireless_tracker.menu.CPUFreq.10=10MHz -heltec_wireless_tracker.menu.CPUFreq.10.build.f_cpu=10000000L - -heltec_wireless_tracker.menu.UploadSpeed.921600=921600 -heltec_wireless_tracker.menu.UploadSpeed.921600.upload.speed=921600 -heltec_wireless_tracker.menu.UploadSpeed.115200=115200 -heltec_wireless_tracker.menu.UploadSpeed.115200.upload.speed=115200 -heltec_wireless_tracker.menu.UploadSpeed.256000.windows=256000 -heltec_wireless_tracker.menu.UploadSpeed.256000.upload.speed=256000 -heltec_wireless_tracker.menu.UploadSpeed.230400.windows.upload.speed=256000 -heltec_wireless_tracker.menu.UploadSpeed.230400=230400 -heltec_wireless_tracker.menu.UploadSpeed.230400.upload.speed=230400 -heltec_wireless_tracker.menu.UploadSpeed.460800.linux=460800 -heltec_wireless_tracker.menu.UploadSpeed.460800.macosx=460800 -heltec_wireless_tracker.menu.UploadSpeed.460800.upload.speed=460800 -heltec_wireless_tracker.menu.UploadSpeed.512000.windows=512000 -heltec_wireless_tracker.menu.UploadSpeed.512000.upload.speed=512000 - -heltec_wireless_tracker.menu.DebugLevel.none=None -heltec_wireless_tracker.menu.DebugLevel.none.build.code_debug=0 -heltec_wireless_tracker.menu.DebugLevel.error=Error -heltec_wireless_tracker.menu.DebugLevel.error.build.code_debug=1 -heltec_wireless_tracker.menu.DebugLevel.warn=Warn -heltec_wireless_tracker.menu.DebugLevel.warn.build.code_debug=2 -heltec_wireless_tracker.menu.DebugLevel.info=Info -heltec_wireless_tracker.menu.DebugLevel.info.build.code_debug=3 -heltec_wireless_tracker.menu.DebugLevel.debug=Debug -heltec_wireless_tracker.menu.DebugLevel.debug.build.code_debug=4 -heltec_wireless_tracker.menu.DebugLevel.verbose=Verbose -heltec_wireless_tracker.menu.DebugLevel.verbose.build.code_debug=5 - -heltec_wireless_tracker.menu.LORAWAN_REGION.0=REGION_EU868 -heltec_wireless_tracker.menu.LORAWAN_REGION.0.build.band=REGION_EU868 -heltec_wireless_tracker.menu.LORAWAN_REGION.1=REGION_EU433 -heltec_wireless_tracker.menu.LORAWAN_REGION.1.build.band=REGION_EU433 -heltec_wireless_tracker.menu.LORAWAN_REGION.2=REGION_CN470 -heltec_wireless_tracker.menu.LORAWAN_REGION.2.build.band=REGION_CN470 -heltec_wireless_tracker.menu.LORAWAN_REGION.3=REGION_US915 -heltec_wireless_tracker.menu.LORAWAN_REGION.3.build.band=REGION_US915 -heltec_wireless_tracker.menu.LORAWAN_REGION.4=REGION_AU915 -heltec_wireless_tracker.menu.LORAWAN_REGION.4.build.band=REGION_AU915 -heltec_wireless_tracker.menu.LORAWAN_REGION.5=REGION_CN779 -heltec_wireless_tracker.menu.LORAWAN_REGION.5.build.band=REGION_CN779 -heltec_wireless_tracker.menu.LORAWAN_REGION.6=REGION_AS923 -heltec_wireless_tracker.menu.LORAWAN_REGION.6.build.band=REGION_AS923 -heltec_wireless_tracker.menu.LORAWAN_REGION.7=REGION_KR920 -heltec_wireless_tracker.menu.LORAWAN_REGION.7.build.band=REGION_KR920 -heltec_wireless_tracker.menu.LORAWAN_REGION.8=REGION_IN865 -heltec_wireless_tracker.menu.LORAWAN_REGION.8.build.band=REGION_IN865 -heltec_wireless_tracker.menu.LORAWAN_REGION.9=REGION_US915_HYBRID -heltec_wireless_tracker.menu.LORAWAN_REGION.9.build.band=REGION_US915_HYBRID - -heltec_wireless_tracker.menu.LoRaWanDebugLevel.0=None -heltec_wireless_tracker.menu.LoRaWanDebugLevel.0.build.LoRaWanDebugLevel=0 -heltec_wireless_tracker.menu.LoRaWanDebugLevel.1=Freq -heltec_wireless_tracker.menu.LoRaWanDebugLevel.1.build.LoRaWanDebugLevel=1 -heltec_wireless_tracker.menu.LoRaWanDebugLevel.2=Freq && DIO -heltec_wireless_tracker.menu.LoRaWanDebugLevel.2.build.LoRaWanDebugLevel=2 -heltec_wireless_tracker.menu.LoRaWanDebugLevel.3=Freq && DIO && PW -heltec_wireless_tracker.menu.LoRaWanDebugLevel.3.build.LoRaWanDebugLevel=3 - -heltec_wireless_tracker.menu.LORAWAN_DEVEUI.0=CUSTOM -heltec_wireless_tracker.menu.LORAWAN_DEVEUI.0.build.LORAWAN_DEVEUI_AUTO=0 -heltec_wireless_tracker.menu.LORAWAN_DEVEUI.1=Generate By ChipID -heltec_wireless_tracker.menu.LORAWAN_DEVEUI.1.build.LORAWAN_DEVEUI_AUTO=1 - -heltec_wireless_tracker.menu.LORAWAN_PREAMBLE_LENGTH.0=8(default) -heltec_wireless_tracker.menu.LORAWAN_PREAMBLE_LENGTH.0.build.LORAWAN_PREAMBLE_LENGTH=8 -heltec_wireless_tracker.menu.LORAWAN_PREAMBLE_LENGTH.1=16(For M00 and M00L) -heltec_wireless_tracker.menu.LORAWAN_PREAMBLE_LENGTH.1.build.LORAWAN_PREAMBLE_LENGTH=16 - -heltec_wireless_tracker.menu.EraseFlash.none=Disabled -heltec_wireless_tracker.menu.EraseFlash.none.upload.erase_cmd= -heltec_wireless_tracker.menu.EraseFlash.all=Enabled -heltec_wireless_tracker.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -espectro32.name=ESPectro32 - -espectro32.bootloader.tool=esptool_py -espectro32.bootloader.tool.default=esptool_py - -espectro32.upload.tool=esptool_py -espectro32.upload.tool.default=esptool_py -espectro32.upload.tool.network=esp_ota - -espectro32.upload.maximum_size=1310720 -espectro32.upload.maximum_data_size=327680 -espectro32.upload.flags= -espectro32.upload.extra_flags= - -espectro32.serial.disableDTR=true -espectro32.serial.disableRTS=true - -espectro32.build.tarch=xtensa -espectro32.build.bootloader_addr=0x1000 -espectro32.build.target=esp32 -espectro32.build.mcu=esp32 -espectro32.build.core=esp32 -espectro32.build.variant=espectro32 -espectro32.build.board=ESPECTRO32 - -espectro32.build.f_cpu=240000000L -espectro32.build.flash_size=4MB -espectro32.build.flash_mode=dio -espectro32.build.boot=dio -espectro32.build.partitions=default -espectro32.build.defines= - -espectro32.menu.FlashMode.qio=QIO -espectro32.menu.FlashMode.qio.build.flash_mode=dio -espectro32.menu.FlashMode.qio.build.boot=qio -espectro32.menu.FlashMode.dio=DIO -espectro32.menu.FlashMode.dio.build.flash_mode=dio -espectro32.menu.FlashMode.dio.build.boot=dio - -espectro32.menu.FlashFreq.80=80MHz -espectro32.menu.FlashFreq.80.build.flash_freq=80m -espectro32.menu.FlashFreq.40=40MHz -espectro32.menu.FlashFreq.40.build.flash_freq=40m - -espectro32.menu.FlashSize.4M=4MB (32Mb) -espectro32.menu.FlashSize.4M.build.flash_size=4MB -espectro32.menu.FlashSize.2M=2MB (16Mb) -espectro32.menu.FlashSize.2M.build.flash_size=2MB -espectro32.menu.FlashSize.2M.build.partitions=minimal - -espectro32.menu.UploadSpeed.921600=921600 -espectro32.menu.UploadSpeed.921600.upload.speed=921600 -espectro32.menu.UploadSpeed.115200=115200 -espectro32.menu.UploadSpeed.115200.upload.speed=115200 -espectro32.menu.UploadSpeed.256000.windows=256000 -espectro32.menu.UploadSpeed.256000.upload.speed=256000 -espectro32.menu.UploadSpeed.230400.windows.upload.speed=256000 -espectro32.menu.UploadSpeed.230400=230400 -espectro32.menu.UploadSpeed.230400.upload.speed=230400 -espectro32.menu.UploadSpeed.460800.linux=460800 -espectro32.menu.UploadSpeed.460800.macosx=460800 -espectro32.menu.UploadSpeed.460800.upload.speed=460800 -espectro32.menu.UploadSpeed.512000.windows=512000 -espectro32.menu.UploadSpeed.512000.upload.speed=512000 - -espectro32.menu.DebugLevel.none=None -espectro32.menu.DebugLevel.none.build.code_debug=0 -espectro32.menu.DebugLevel.error=Error -espectro32.menu.DebugLevel.error.build.code_debug=1 -espectro32.menu.DebugLevel.warn=Warn -espectro32.menu.DebugLevel.warn.build.code_debug=2 -espectro32.menu.DebugLevel.info=Info -espectro32.menu.DebugLevel.info.build.code_debug=3 -espectro32.menu.DebugLevel.debug=Debug -espectro32.menu.DebugLevel.debug.build.code_debug=4 -espectro32.menu.DebugLevel.verbose=Verbose -espectro32.menu.DebugLevel.verbose.build.code_debug=5 - -espectro32.menu.EraseFlash.none=Disabled -espectro32.menu.EraseFlash.none.upload.erase_cmd= -espectro32.menu.EraseFlash.all=Enabled -espectro32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -CoreESP32.name=Microduino-CoreESP32 - -CoreESP32.bootloader.tool=esptool_py -CoreESP32.bootloader.tool.default=esptool_py - -CoreESP32.upload.tool=esptool_py -CoreESP32.upload.tool.default=esptool_py -CoreESP32.upload.tool.network=esp_ota - -CoreESP32.upload.maximum_size=1310720 -CoreESP32.upload.maximum_data_size=327680 -CoreESP32.upload.flags= -CoreESP32.upload.extra_flags= - -CoreESP32.serial.disableDTR=false -CoreESP32.serial.disableRTS=false - -CoreESP32.build.tarch=xtensa -CoreESP32.build.bootloader_addr=0x1000 -CoreESP32.build.target=esp32 -CoreESP32.build.mcu=esp32 -CoreESP32.build.core=esp32 -CoreESP32.build.variant=Microduino-esp32 -CoreESP32.build.board=CoreESP32 - -CoreESP32.build.f_cpu=240000000L -CoreESP32.build.flash_mode=dio -CoreESP32.build.flash_size=4MB -CoreESP32.build.boot=dio -CoreESP32.build.partitions=default -CoreESP32.build.defines= - -CoreESP32.menu.PSRAM.disabled=Disabled -CoreESP32.menu.PSRAM.disabled.build.defines= -CoreESP32.menu.PSRAM.disabled.build.extra_libs= -CoreESP32.menu.PSRAM.enabled=Enabled -CoreESP32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -CoreESP32.menu.PSRAM.enabled.build.extra_libs= - -CoreESP32.menu.PartitionScheme.default=Default -CoreESP32.menu.PartitionScheme.default.build.partitions=default -CoreESP32.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -CoreESP32.menu.PartitionScheme.minimal.build.partitions=minimal -CoreESP32.menu.PartitionScheme.no_ota=No OTA (Large APP) -CoreESP32.menu.PartitionScheme.no_ota.build.partitions=no_ota -CoreESP32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -CoreESP32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -CoreESP32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -CoreESP32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -CoreESP32.menu.PartitionScheme.fatflash=16M Fat -CoreESP32.menu.PartitionScheme.fatflash.build.partitions=ffat - -CoreESP32.menu.FlashFreq.80=80MHz -CoreESP32.menu.FlashFreq.80.build.flash_freq=80m -CoreESP32.menu.FlashFreq.40=40MHz -CoreESP32.menu.FlashFreq.40.build.flash_freq=40m - -CoreESP32.menu.UploadSpeed.921600=921600 -CoreESP32.menu.UploadSpeed.921600.upload.speed=921600 -CoreESP32.menu.UploadSpeed.115200=115200 -CoreESP32.menu.UploadSpeed.115200.upload.speed=115200 -CoreESP32.menu.UploadSpeed.256000.windows=256000 -CoreESP32.menu.UploadSpeed.256000.upload.speed=256000 -CoreESP32.menu.UploadSpeed.230400.windows.upload.speed=256000 -CoreESP32.menu.UploadSpeed.230400=230400 -CoreESP32.menu.UploadSpeed.230400.upload.speed=230400 -CoreESP32.menu.UploadSpeed.460800.linux=460800 -CoreESP32.menu.UploadSpeed.460800.macosx=460800 -CoreESP32.menu.UploadSpeed.460800.upload.speed=460800 -CoreESP32.menu.UploadSpeed.512000.windows=512000 -CoreESP32.menu.UploadSpeed.512000.upload.speed=512000 - -CoreESP32.menu.DebugLevel.none=None -CoreESP32.menu.DebugLevel.none.build.code_debug=0 -CoreESP32.menu.DebugLevel.error=Error -CoreESP32.menu.DebugLevel.error.build.code_debug=1 -CoreESP32.menu.DebugLevel.warn=Warn -CoreESP32.menu.DebugLevel.warn.build.code_debug=2 -CoreESP32.menu.DebugLevel.info=Info -CoreESP32.menu.DebugLevel.info.build.code_debug=3 -CoreESP32.menu.DebugLevel.debug=Debug -CoreESP32.menu.DebugLevel.debug.build.code_debug=4 -CoreESP32.menu.DebugLevel.verbose=Verbose -CoreESP32.menu.DebugLevel.verbose.build.code_debug=5 - -CoreESP32.menu.EraseFlash.none=Disabled -CoreESP32.menu.EraseFlash.none.upload.erase_cmd= -CoreESP32.menu.EraseFlash.all=Enabled -CoreESP32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -alksesp32.name=ALKS ESP32 - -alksesp32.bootloader.tool=esptool_py -alksesp32.bootloader.tool.default=esptool_py - -alksesp32.upload.tool=esptool_py -alksesp32.upload.tool.default=esptool_py -alksesp32.upload.tool.network=esp_ota - -alksesp32.upload.maximum_size=1310720 -alksesp32.upload.maximum_data_size=327680 -alksesp32.upload.flags= -alksesp32.upload.extra_flags= - -alksesp32.serial.disableDTR=true -alksesp32.serial.disableRTS=true - -alksesp32.build.tarch=xtensa -alksesp32.build.bootloader_addr=0x1000 -alksesp32.build.target=esp32 -alksesp32.build.mcu=esp32 -alksesp32.build.core=esp32 -alksesp32.build.variant=alksesp32 -alksesp32.build.board=ALKS - -alksesp32.build.f_cpu=240000000L -alksesp32.build.flash_size=4MB -alksesp32.build.flash_freq=40m -alksesp32.build.flash_mode=dio -alksesp32.build.boot=dio -alksesp32.build.partitions=default -alksesp32.build.defines= - -alksesp32.menu.PSRAM.disabled=Disabled -alksesp32.menu.PSRAM.disabled.build.defines= -alksesp32.menu.PSRAM.disabled.build.extra_libs= -alksesp32.menu.PSRAM.enabled=Enabled -alksesp32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -alksesp32.menu.PSRAM.enabled.build.extra_libs= - -alksesp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -alksesp32.menu.PartitionScheme.default.build.partitions=default -alksesp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -alksesp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -alksesp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -alksesp32.menu.PartitionScheme.minimal.build.partitions=minimal -alksesp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -alksesp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -alksesp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -alksesp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -alksesp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -alksesp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -alksesp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -alksesp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -alksesp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -alksesp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -alksesp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -alksesp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -alksesp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -alksesp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -alksesp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -alksesp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -alksesp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -alksesp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -alksesp32.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -alksesp32.menu.PartitionScheme.fatflash.build.partitions=ffat - -alksesp32.menu.CPUFreq.240=240MHz (WiFi/BT) -alksesp32.menu.CPUFreq.240.build.f_cpu=240000000L -alksesp32.menu.CPUFreq.160=160MHz (WiFi/BT) -alksesp32.menu.CPUFreq.160.build.f_cpu=160000000L -alksesp32.menu.CPUFreq.80=80MHz (WiFi/BT) -alksesp32.menu.CPUFreq.80.build.f_cpu=80000000L -alksesp32.menu.CPUFreq.40=40MHz (40MHz XTAL) -alksesp32.menu.CPUFreq.40.build.f_cpu=40000000L -alksesp32.menu.CPUFreq.26=26MHz (26MHz XTAL) -alksesp32.menu.CPUFreq.26.build.f_cpu=26000000L -alksesp32.menu.CPUFreq.20=20MHz (40MHz XTAL) -alksesp32.menu.CPUFreq.20.build.f_cpu=20000000L -alksesp32.menu.CPUFreq.13=13MHz (26MHz XTAL) -alksesp32.menu.CPUFreq.13.build.f_cpu=13000000L -alksesp32.menu.CPUFreq.10=10MHz (40MHz XTAL) -alksesp32.menu.CPUFreq.10.build.f_cpu=10000000L - -alksesp32.menu.FlashMode.qio=QIO -alksesp32.menu.FlashMode.qio.build.flash_mode=dio -alksesp32.menu.FlashMode.qio.build.boot=qio -alksesp32.menu.FlashMode.dio=DIO -alksesp32.menu.FlashMode.dio.build.flash_mode=dio -alksesp32.menu.FlashMode.dio.build.boot=dio - -alksesp32.menu.FlashFreq.80=80MHz -alksesp32.menu.FlashFreq.80.build.flash_freq=80m -alksesp32.menu.FlashFreq.40=40MHz -alksesp32.menu.FlashFreq.40.build.flash_freq=40m - -alksesp32.menu.FlashSize.4M=4MB (32Mb) -alksesp32.menu.FlashSize.4M.build.flash_size=4MB -alksesp32.menu.FlashSize.2M=2MB (16Mb) -alksesp32.menu.FlashSize.2M.build.flash_size=2MB -alksesp32.menu.FlashSize.2M.build.partitions=minimal -alksesp32.menu.FlashSize.16M=16MB (128Mb) -alksesp32.menu.FlashSize.16M.build.flash_size=16MB -alksesp32.menu.FlashSize.16M.build.partitions=ffat - -alksesp32.menu.UploadSpeed.921600=921600 -alksesp32.menu.UploadSpeed.921600.upload.speed=921600 -alksesp32.menu.UploadSpeed.115200=115200 -alksesp32.menu.UploadSpeed.115200.upload.speed=115200 -alksesp32.menu.UploadSpeed.256000.windows=256000 -alksesp32.menu.UploadSpeed.256000.upload.speed=256000 -alksesp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -alksesp32.menu.UploadSpeed.230400=230400 -alksesp32.menu.UploadSpeed.230400.upload.speed=230400 -alksesp32.menu.UploadSpeed.460800.linux=460800 -alksesp32.menu.UploadSpeed.460800.macosx=460800 -alksesp32.menu.UploadSpeed.460800.upload.speed=460800 -alksesp32.menu.UploadSpeed.512000.windows=512000 -alksesp32.menu.UploadSpeed.512000.upload.speed=512000 - -alksesp32.menu.DebugLevel.none=None -alksesp32.menu.DebugLevel.none.build.code_debug=0 -alksesp32.menu.DebugLevel.error=Error -alksesp32.menu.DebugLevel.error.build.code_debug=1 -alksesp32.menu.DebugLevel.warn=Warn -alksesp32.menu.DebugLevel.warn.build.code_debug=2 -alksesp32.menu.DebugLevel.info=Info -alksesp32.menu.DebugLevel.info.build.code_debug=3 -alksesp32.menu.DebugLevel.debug=Debug -alksesp32.menu.DebugLevel.debug.build.code_debug=4 -alksesp32.menu.DebugLevel.verbose=Verbose -alksesp32.menu.DebugLevel.verbose.build.code_debug=5 - -alksesp32.menu.EraseFlash.none=Disabled -alksesp32.menu.EraseFlash.none.upload.erase_cmd= -alksesp32.menu.EraseFlash.all=Enabled -alksesp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wipy3.name=WiPy 3.0 - -wipy3.bootloader.tool=esptool_py -wipy3.bootloader.tool.default=esptool_py - -wipy3.upload.tool=esptool_py -wipy3.upload.tool.default=esptool_py -wipy3.upload.tool.network=esp_ota - -wipy3.upload.maximum_size=1310720 -wipy3.upload.maximum_data_size=294912 -wipy3.upload.flags= -wipy3.upload.extra_flags= - -wipy3.serial.disableDTR=true -wipy3.serial.disableRTS=true - -wipy3.build.tarch=xtensa -wipy3.build.bootloader_addr=0x1000 -wipy3.build.target=esp32 -wipy3.build.mcu=esp32 -wipy3.build.core=esp32 -wipy3.build.variant=wipy3 -wipy3.build.board=WIPY3 - -wipy3.build.f_cpu=240000000L -wipy3.build.flash_mode=dio -wipy3.build.flash_size=8MB -wipy3.build.boot=dio -wipy3.build.partitions=default -wipy3.build.defines= - -wipy3.menu.FlashFreq.80=80MHz -wipy3.menu.FlashFreq.80.build.flash_freq=80m -wipy3.menu.FlashFreq.40=40MHz -wipy3.menu.FlashFreq.40.build.flash_freq=40m - -wipy3.menu.UploadSpeed.921600=921600 -wipy3.menu.UploadSpeed.921600.upload.speed=921600 -wipy3.menu.UploadSpeed.115200=115200 -wipy3.menu.UploadSpeed.115200.upload.speed=115200 -wipy3.menu.UploadSpeed.256000.windows=256000 -wipy3.menu.UploadSpeed.256000.upload.speed=256000 -wipy3.menu.UploadSpeed.230400.windows.upload.speed=256000 -wipy3.menu.UploadSpeed.230400=230400 -wipy3.menu.UploadSpeed.230400.upload.speed=230400 -wipy3.menu.UploadSpeed.460800.linux=460800 -wipy3.menu.UploadSpeed.460800.macosx=460800 -wipy3.menu.UploadSpeed.460800.upload.speed=460800 -wipy3.menu.UploadSpeed.512000.windows=512000 -wipy3.menu.UploadSpeed.512000.upload.speed=512000 - -wipy3.menu.DebugLevel.none=None -wipy3.menu.DebugLevel.none.build.code_debug=0 -wipy3.menu.DebugLevel.error=Error -wipy3.menu.DebugLevel.error.build.code_debug=1 -wipy3.menu.DebugLevel.warn=Warn -wipy3.menu.DebugLevel.warn.build.code_debug=2 -wipy3.menu.DebugLevel.info=Info -wipy3.menu.DebugLevel.info.build.code_debug=3 -wipy3.menu.DebugLevel.debug=Debug -wipy3.menu.DebugLevel.debug.build.code_debug=4 -wipy3.menu.DebugLevel.verbose=Verbose -wipy3.menu.DebugLevel.verbose.build.code_debug=5 - -wipy3.menu.EraseFlash.none=Disabled -wipy3.menu.EraseFlash.none.upload.erase_cmd= -wipy3.menu.EraseFlash.all=Enabled -wipy3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wt32-eth01.name=WT32-ETH01 Ethernet Module - -wt32-eth01.bootloader.tool=esptool_py -wt32-eth01.bootloader.tool.default=esptool_py - -wt32-eth01.upload.tool=esptool_py -wt32-eth01.upload.tool.default=esptool_py -wt32-eth01.upload.tool.network=esp_ota - -wt32-eth01.upload.maximum_size=8388608 -wt32-eth01.upload.maximum_data_size=327680 -wt32-eth01.upload.flags= -wt32-eth01.upload.extra_flags= - -wt32-eth01.serial.disableDTR=true -wt32-eth01.serial.disableRTS=true - -wt32-eth01.build.tarch=xtensa -wt32-eth01.build.bootloader_addr=0x1000 -wt32-eth01.build.target=esp32 -wt32-eth01.build.mcu=esp32 -wt32-eth01.build.core=esp32 -wt32-eth01.build.variant=wt32-eth01 -wt32-eth01.build.board=WT32_ETH01 - -wt32-eth01.build.f_cpu=240000000L -wt32-eth01.build.flash_size=4MB -wt32-eth01.build.flash_freq=40m -wt32-eth01.build.flash_mode=dio -wt32-eth01.build.boot=dio -wt32-eth01.build.partitions=default -wt32-eth01.build.defines= -wt32-eth01.build.extra_libs= - -wt32-eth01.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -wt32-eth01.menu.PartitionScheme.default.build.partitions=default -wt32-eth01.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -wt32-eth01.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -wt32-eth01.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -wt32-eth01.menu.PartitionScheme.minimal.build.partitions=minimal -wt32-eth01.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -wt32-eth01.menu.PartitionScheme.no_ota.build.partitions=no_ota -wt32-eth01.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -wt32-eth01.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -wt32-eth01.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -wt32-eth01.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -wt32-eth01.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -wt32-eth01.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -wt32-eth01.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -wt32-eth01.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -wt32-eth01.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -wt32-eth01.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -wt32-eth01.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -wt32-eth01.menu.PartitionScheme.huge_app.build.partitions=huge_app -wt32-eth01.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -wt32-eth01.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -wt32-eth01.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -wt32-eth01.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -wt32-eth01.menu.FlashMode.qio=QIO -wt32-eth01.menu.FlashMode.qio.build.flash_mode=dio -wt32-eth01.menu.FlashMode.qio.build.boot=qio -wt32-eth01.menu.FlashMode.dio=DIO -wt32-eth01.menu.FlashMode.dio.build.flash_mode=dio -wt32-eth01.menu.FlashMode.dio.build.boot=dio - -wt32-eth01.menu.FlashFreq.80=80MHz -wt32-eth01.menu.FlashFreq.80.build.flash_freq=80m -wt32-eth01.menu.FlashFreq.40=40MHz -wt32-eth01.menu.FlashFreq.40.build.flash_freq=40m - -wt32-eth01.menu.UploadSpeed.921600=921600 -wt32-eth01.menu.UploadSpeed.921600.upload.speed=921600 -wt32-eth01.menu.UploadSpeed.115200=115200 -wt32-eth01.menu.UploadSpeed.115200.upload.speed=115200 -wt32-eth01.menu.UploadSpeed.256000.windows=256000 -wt32-eth01.menu.UploadSpeed.256000.upload.speed=256000 -wt32-eth01.menu.UploadSpeed.230400.windows.upload.speed=256000 -wt32-eth01.menu.UploadSpeed.230400=230400 -wt32-eth01.menu.UploadSpeed.230400.upload.speed=230400 -wt32-eth01.menu.UploadSpeed.460800.linux=460800 -wt32-eth01.menu.UploadSpeed.460800.macosx=460800 -wt32-eth01.menu.UploadSpeed.460800.upload.speed=460800 -wt32-eth01.menu.UploadSpeed.512000.windows=512000 -wt32-eth01.menu.UploadSpeed.512000.upload.speed=512000 - -wt32-eth01.menu.DebugLevel.none=None -wt32-eth01.menu.DebugLevel.none.build.code_debug=0 -wt32-eth01.menu.DebugLevel.error=Error -wt32-eth01.menu.DebugLevel.error.build.code_debug=1 -wt32-eth01.menu.DebugLevel.warn=Warn -wt32-eth01.menu.DebugLevel.warn.build.code_debug=2 -wt32-eth01.menu.DebugLevel.info=Info -wt32-eth01.menu.DebugLevel.info.build.code_debug=3 -wt32-eth01.menu.DebugLevel.debug=Debug -wt32-eth01.menu.DebugLevel.debug.build.code_debug=4 -wt32-eth01.menu.DebugLevel.verbose=Verbose -wt32-eth01.menu.DebugLevel.verbose.build.code_debug=5 - -wt32-eth01.menu.EraseFlash.none=Disabled -wt32-eth01.menu.EraseFlash.none.upload.erase_cmd= -wt32-eth01.menu.EraseFlash.all=Enabled -wt32-eth01.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -bpi-bit.name=BPI-BIT - -bpi-bit.bootloader.tool=esptool_py -bpi-bit.bootloader.tool.default=esptool_py - -bpi-bit.upload.tool=esptool_py -bpi-bit.upload.tool.default=esptool_py -bpi-bit.upload.tool.network=esp_ota - -bpi-bit.upload.maximum_size=1310720 -bpi-bit.upload.maximum_data_size=294912 -bpi-bit.upload.flags= -bpi-bit.upload.extra_flags= - -bpi-bit.serial.disableDTR=true -bpi-bit.serial.disableRTS=true - -bpi-bit.build.tarch=xtensa -bpi-bit.build.bootloader_addr=0x1000 -bpi-bit.build.target=esp32 -bpi-bit.build.mcu=esp32 -bpi-bit.build.core=esp32 -bpi-bit.build.variant=bpi-bit -bpi-bit.build.board=BPI_BIT - -bpi-bit.build.f_cpu=160000000L -bpi-bit.build.flash_mode=dio -bpi-bit.build.flash_size=4MB -bpi-bit.build.boot=dio -bpi-bit.build.partitions=default - -bpi-bit.menu.FlashFreq.80=80MHz -bpi-bit.menu.FlashFreq.80.build.flash_freq=80m -bpi-bit.menu.FlashFreq.40=40MHz -bpi-bit.menu.FlashFreq.40.build.flash_freq=40m - -bpi-bit.menu.UploadSpeed.921600=921600 -bpi-bit.menu.UploadSpeed.921600.upload.speed=921600 -bpi-bit.menu.UploadSpeed.115200=115200 -bpi-bit.menu.UploadSpeed.115200.upload.speed=115200 -bpi-bit.menu.UploadSpeed.256000.windows=256000 -bpi-bit.menu.UploadSpeed.256000.upload.speed=256000 -bpi-bit.menu.UploadSpeed.230400.windows.upload.speed=256000 -bpi-bit.menu.UploadSpeed.230400=230400 -bpi-bit.menu.UploadSpeed.230400.upload.speed=230400 -bpi-bit.menu.UploadSpeed.460800.linux=460800 -bpi-bit.menu.UploadSpeed.460800.macosx=460800 -bpi-bit.menu.UploadSpeed.460800.upload.speed=460800 -bpi-bit.menu.UploadSpeed.512000.windows=512000 -bpi-bit.menu.UploadSpeed.512000.upload.speed=512000 - -bpi-bit.menu.DebugLevel.none=None -bpi-bit.menu.DebugLevel.none.build.code_debug=0 -bpi-bit.menu.DebugLevel.error=Error -bpi-bit.menu.DebugLevel.error.build.code_debug=1 -bpi-bit.menu.DebugLevel.warn=Warn -bpi-bit.menu.DebugLevel.warn.build.code_debug=2 -bpi-bit.menu.DebugLevel.info=Info -bpi-bit.menu.DebugLevel.info.build.code_debug=3 -bpi-bit.menu.DebugLevel.debug=Debug -bpi-bit.menu.DebugLevel.debug.build.code_debug=4 -bpi-bit.menu.DebugLevel.verbose=Verbose -bpi-bit.menu.DebugLevel.verbose.build.code_debug=5 - -bpi-bit.menu.EraseFlash.none=Disabled -bpi-bit.menu.EraseFlash.none.upload.erase_cmd= -bpi-bit.menu.EraseFlash.all=Enabled -bpi-bit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -bpi_leaf_s3.name=BPI-Leaf-S3 -bpi_leaf_s3.vid.0=0x303a -bpi_leaf_s3.pid.0=0x80df - -bpi_leaf_s3.bootloader.tool=esptool_py -bpi_leaf_s3.bootloader.tool.default=esptool_py - -bpi_leaf_s3.upload.tool=esptool_py -bpi_leaf_s3.upload.tool.default=esptool_py -bpi_leaf_s3.upload.tool.network=esp_ota - -bpi_leaf_s3.upload.maximum_size=1310720 -bpi_leaf_s3.upload.maximum_data_size=327680 -bpi_leaf_s3.upload.flags= -bpi_leaf_s3.upload.extra_flags= -bpi_leaf_s3.upload.use_1200bps_touch=false -bpi_leaf_s3.upload.wait_for_upload_port=false - -bpi_leaf_s3.serial.disableDTR=false -bpi_leaf_s3.serial.disableRTS=false - -bpi_leaf_s3.build.tarch=xtensa -bpi_leaf_s3.build.bootloader_addr=0x0 -bpi_leaf_s3.build.target=esp32s3 -bpi_leaf_s3.build.mcu=esp32s3 -bpi_leaf_s3.build.core=esp32 -bpi_leaf_s3.build.variant=bpi_leaf_s3 -bpi_leaf_s3.build.board=BPI_LEAF_S3 - -bpi_leaf_s3.build.usb_mode=1 -bpi_leaf_s3.build.cdc_on_boot=0 -bpi_leaf_s3.build.msc_on_boot=0 -bpi_leaf_s3.build.dfu_on_boot=0 -bpi_leaf_s3.build.f_cpu=240000000L -bpi_leaf_s3.build.flash_size=8MB -bpi_leaf_s3.build.flash_freq=80m -bpi_leaf_s3.build.flash_mode=dio -bpi_leaf_s3.build.boot=qio -bpi_leaf_s3.build.boot_freq=80m -bpi_leaf_s3.build.partitions=default -bpi_leaf_s3.build.defines= -bpi_leaf_s3.build.loop_core= -bpi_leaf_s3.build.event_core= -bpi_leaf_s3.build.psram_type=qspi -bpi_leaf_s3.build.memory_type={build.boot}_{build.psram_type} - -bpi_leaf_s3.menu.PSRAM.enabled=QSPI PSRAM -bpi_leaf_s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -bpi_leaf_s3.menu.PSRAM.enabled.build.psram_type=qspi -bpi_leaf_s3.menu.PSRAM.disabled=Disabled -bpi_leaf_s3.menu.PSRAM.disabled.build.defines= -bpi_leaf_s3.menu.PSRAM.disabled.build.psram_type=qspi -bpi_leaf_s3.menu.PSRAM.opi=OPI PSRAM -bpi_leaf_s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -bpi_leaf_s3.menu.PSRAM.opi.build.psram_type=opi - -bpi_leaf_s3.menu.FlashMode.qio=QIO 80MHz -bpi_leaf_s3.menu.FlashMode.qio.build.flash_mode=dio -bpi_leaf_s3.menu.FlashMode.qio.build.boot=qio -bpi_leaf_s3.menu.FlashMode.qio.build.boot_freq=80m -bpi_leaf_s3.menu.FlashMode.qio.build.flash_freq=80m -bpi_leaf_s3.menu.FlashMode.qio120=QIO 120MHz -bpi_leaf_s3.menu.FlashMode.qio120.build.flash_mode=dio -bpi_leaf_s3.menu.FlashMode.qio120.build.boot=qio -bpi_leaf_s3.menu.FlashMode.qio120.build.boot_freq=120m -bpi_leaf_s3.menu.FlashMode.qio120.build.flash_freq=80m -bpi_leaf_s3.menu.FlashMode.dio=DIO 80MHz -bpi_leaf_s3.menu.FlashMode.dio.build.flash_mode=dio -bpi_leaf_s3.menu.FlashMode.dio.build.boot=dio -bpi_leaf_s3.menu.FlashMode.dio.build.boot_freq=80m -bpi_leaf_s3.menu.FlashMode.dio.build.flash_freq=80m -bpi_leaf_s3.menu.FlashMode.opi=OPI 80MHz -bpi_leaf_s3.menu.FlashMode.opi.build.flash_mode=dout -bpi_leaf_s3.menu.FlashMode.opi.build.boot=opi -bpi_leaf_s3.menu.FlashMode.opi.build.boot_freq=80m -bpi_leaf_s3.menu.FlashMode.opi.build.flash_freq=80m - -bpi_leaf_s3.menu.FlashSize.8M=8MB (64Mb) -bpi_leaf_s3.menu.FlashSize.8M.build.flash_size=8MB -bpi_leaf_s3.menu.FlashSize.8M.build.partitions=default_8MB -bpi_leaf_s3.menu.FlashSize.4M=4MB (32Mb) -bpi_leaf_s3.menu.FlashSize.4M.build.flash_size=4MB -bpi_leaf_s3.menu.FlashSize.16M=16MB (128Mb) -bpi_leaf_s3.menu.FlashSize.16M.build.flash_size=16MB -#bpi_leaf_s3.menu.FlashSize.32M=32MB (256Mb) -#bpi_leaf_s3.menu.FlashSize.32M.build.flash_size=32MB - -bpi_leaf_s3.menu.LoopCore.1=Core 1 -bpi_leaf_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -bpi_leaf_s3.menu.LoopCore.0=Core 0 -bpi_leaf_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -bpi_leaf_s3.menu.EventsCore.1=Core 1 -bpi_leaf_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -bpi_leaf_s3.menu.EventsCore.0=Core 0 -bpi_leaf_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -bpi_leaf_s3.menu.USBMode.default=USB-OTG (TinyUSB) -bpi_leaf_s3.menu.USBMode.default.build.usb_mode=0 -bpi_leaf_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -bpi_leaf_s3.menu.USBMode.hwcdc.build.usb_mode=1 - -bpi_leaf_s3.menu.CDCOnBoot.cdc=Enabled -bpi_leaf_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -bpi_leaf_s3.menu.CDCOnBoot.default=Disabled -bpi_leaf_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -bpi_leaf_s3.menu.MSCOnBoot.default=Disabled -bpi_leaf_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -bpi_leaf_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -bpi_leaf_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -bpi_leaf_s3.menu.DFUOnBoot.default=Disabled -bpi_leaf_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -bpi_leaf_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -bpi_leaf_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -bpi_leaf_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -bpi_leaf_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -bpi_leaf_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -bpi_leaf_s3.menu.UploadMode.default=UART0 / Hardware CDC -bpi_leaf_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -bpi_leaf_s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -bpi_leaf_s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -bpi_leaf_s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -bpi_leaf_s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.default.build.partitions=default -bpi_leaf_s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -bpi_leaf_s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -bpi_leaf_s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.minimal.build.partitions=minimal -bpi_leaf_s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -bpi_leaf_s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -bpi_leaf_s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -bpi_leaf_s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -bpi_leaf_s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -bpi_leaf_s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -bpi_leaf_s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -bpi_leaf_s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -bpi_leaf_s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -bpi_leaf_s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -bpi_leaf_s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -bpi_leaf_s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -bpi_leaf_s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -bpi_leaf_s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -bpi_leaf_s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -bpi_leaf_s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -bpi_leaf_s3.menu.PartitionScheme.fatflash.build.partitions=ffat -bpi_leaf_s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -bpi_leaf_s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -bpi_leaf_s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -bpi_leaf_s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -bpi_leaf_s3.menu.PartitionScheme.rainmaker=RainMaker -bpi_leaf_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -bpi_leaf_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -bpi_leaf_s3.menu.CPUFreq.240=240MHz (WiFi) -bpi_leaf_s3.menu.CPUFreq.240.build.f_cpu=240000000L -bpi_leaf_s3.menu.CPUFreq.160=160MHz (WiFi) -bpi_leaf_s3.menu.CPUFreq.160.build.f_cpu=160000000L -bpi_leaf_s3.menu.CPUFreq.80=80MHz (WiFi) -bpi_leaf_s3.menu.CPUFreq.80.build.f_cpu=80000000L -bpi_leaf_s3.menu.CPUFreq.40=40MHz -bpi_leaf_s3.menu.CPUFreq.40.build.f_cpu=40000000L -bpi_leaf_s3.menu.CPUFreq.20=20MHz -bpi_leaf_s3.menu.CPUFreq.20.build.f_cpu=20000000L -bpi_leaf_s3.menu.CPUFreq.10=10MHz -bpi_leaf_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -bpi_leaf_s3.menu.UploadSpeed.921600=921600 -bpi_leaf_s3.menu.UploadSpeed.921600.upload.speed=921600 -bpi_leaf_s3.menu.UploadSpeed.115200=115200 -bpi_leaf_s3.menu.UploadSpeed.115200.upload.speed=115200 -bpi_leaf_s3.menu.UploadSpeed.256000.windows=256000 -bpi_leaf_s3.menu.UploadSpeed.256000.upload.speed=256000 -bpi_leaf_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -bpi_leaf_s3.menu.UploadSpeed.230400=230400 -bpi_leaf_s3.menu.UploadSpeed.230400.upload.speed=230400 -bpi_leaf_s3.menu.UploadSpeed.460800.linux=460800 -bpi_leaf_s3.menu.UploadSpeed.460800.macosx=460800 -bpi_leaf_s3.menu.UploadSpeed.460800.upload.speed=460800 -bpi_leaf_s3.menu.UploadSpeed.512000.windows=512000 -bpi_leaf_s3.menu.UploadSpeed.512000.upload.speed=512000 - -bpi_leaf_s3.menu.DebugLevel.none=None -bpi_leaf_s3.menu.DebugLevel.none.build.code_debug=0 -bpi_leaf_s3.menu.DebugLevel.error=Error -bpi_leaf_s3.menu.DebugLevel.error.build.code_debug=1 -bpi_leaf_s3.menu.DebugLevel.warn=Warn -bpi_leaf_s3.menu.DebugLevel.warn.build.code_debug=2 -bpi_leaf_s3.menu.DebugLevel.info=Info -bpi_leaf_s3.menu.DebugLevel.info.build.code_debug=3 -bpi_leaf_s3.menu.DebugLevel.debug=Debug -bpi_leaf_s3.menu.DebugLevel.debug.build.code_debug=4 -bpi_leaf_s3.menu.DebugLevel.verbose=Verbose -bpi_leaf_s3.menu.DebugLevel.verbose.build.code_debug=5 - -bpi_leaf_s3.menu.EraseFlash.none=Disabled -bpi_leaf_s3.menu.EraseFlash.none.upload.erase_cmd= -bpi_leaf_s3.menu.EraseFlash.all=Enabled -bpi_leaf_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wesp32.name=Silicognition wESP32 - -wesp32.bootloader.tool=esptool_py -wesp32.bootloader.tool.default=esptool_py - -wesp32.upload.tool=esptool_py -wesp32.upload.tool.default=esptool_py -wesp32.upload.tool.network=esp_ota - -wesp32.upload.maximum_size=1310720 -wesp32.upload.maximum_data_size=327680 -wesp32.upload.flags= -wesp32.upload.extra_flags= - -wesp32.serial.disableDTR=true -wesp32.serial.disableRTS=true - -wesp32.build.tarch=xtensa -wesp32.build.bootloader_addr=0x1000 -wesp32.build.target=esp32 -wesp32.build.mcu=esp32 -wesp32.build.core=esp32 -wesp32.build.variant=wesp32 -wesp32.build.board=WESP32 - -wesp32.build.f_cpu=240000000L -wesp32.build.flash_mode=dio -wesp32.build.flash_size=4MB -wesp32.build.boot=dio -wesp32.build.partitions=default -wesp32.build.defines= - -wesp32.menu.FlashFreq.80=80MHz -wesp32.menu.FlashFreq.80.build.flash_freq=80m -wesp32.menu.FlashFreq.40=40MHz -wesp32.menu.FlashFreq.40.build.flash_freq=40m - -wesp32.menu.UploadSpeed.921600=921600 -wesp32.menu.UploadSpeed.921600.upload.speed=921600 -wesp32.menu.UploadSpeed.115200=115200 -wesp32.menu.UploadSpeed.115200.upload.speed=115200 -wesp32.menu.UploadSpeed.256000.windows=256000 -wesp32.menu.UploadSpeed.256000.upload.speed=256000 -wesp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -wesp32.menu.UploadSpeed.230400=230400 -wesp32.menu.UploadSpeed.230400.upload.speed=230400 -wesp32.menu.UploadSpeed.460800.linux=460800 -wesp32.menu.UploadSpeed.460800.macosx=460800 -wesp32.menu.UploadSpeed.460800.upload.speed=460800 -wesp32.menu.UploadSpeed.512000.windows=512000 -wesp32.menu.UploadSpeed.512000.upload.speed=512000 - -wesp32.menu.DebugLevel.none=None -wesp32.menu.DebugLevel.none.build.code_debug=0 -wesp32.menu.DebugLevel.error=Error -wesp32.menu.DebugLevel.error.build.code_debug=1 -wesp32.menu.DebugLevel.warn=Warn -wesp32.menu.DebugLevel.warn.build.code_debug=2 -wesp32.menu.DebugLevel.info=Info -wesp32.menu.DebugLevel.info.build.code_debug=3 -wesp32.menu.DebugLevel.debug=Debug -wesp32.menu.DebugLevel.debug.build.code_debug=4 -wesp32.menu.DebugLevel.verbose=Verbose -wesp32.menu.DebugLevel.verbose.build.code_debug=5 - -wesp32.menu.EraseFlash.none=Disabled -wesp32.menu.EraseFlash.none.upload.erase_cmd= -wesp32.menu.EraseFlash.all=Enabled -wesp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -t-beam.name=T-Beam - -t-beam.bootloader.tool=esptool_py -t-beam.bootloader.tool.default=esptool_py - -t-beam.upload.tool=esptool_py -t-beam.upload.tool.default=esptool_py -t-beam.upload.tool.network=esp_ota - -t-beam.upload.maximum_size=1310720 -t-beam.upload.maximum_data_size=327680 -t-beam.upload.flags= -t-beam.upload.extra_flags= - -t-beam.serial.disableDTR=true -t-beam.serial.disableRTS=true - -t-beam.build.tarch=xtensa -t-beam.build.bootloader_addr=0x1000 -t-beam.build.target=esp32 -t-beam.build.mcu=esp32 -t-beam.build.core=esp32 -t-beam.build.variant=tbeam -t-beam.build.board=TBeam - -t-beam.menu.Revision.Radio_SX1262=Radio-SX1262 -t-beam.menu.Revision.Radio_SX1262.build.board=TBEAM_USE_RADIO_SX1262 -t-beam.menu.Revision.Radio_SX1276=Radio-SX1276 -t-beam.menu.Revision.Radio_SX1276.build.board=TBEAM_USE_RADIO_SX1276 -t-beam.menu.Revision.Radio_SX1278=Radio-SX1278 -t-beam.menu.Revision.Radio_SX1278.build.board=TBEAM_USE_RADIO_SX1278 -t-beam.menu.Revision.Radio_SX1280=Radio-SX1280 -t-beam.menu.Revision.Radio_SX1280.build.board=TBEAM_USE_RADIO_SX1280 -t-beam.menu.Revision.Radio_SX1268=Radio-SX1268 -t-beam.menu.Revision.Radio_SX1268.build.board=TBEAM_USE_RADIO_SX1268 - -t-beam.build.f_cpu=240000000L -t-beam.build.flash_mode=dio -t-beam.build.flash_size=4MB -t-beam.build.boot=dio -t-beam.build.partitions=default - -t-beam.menu.PSRAM.disabled=Disabled -t-beam.menu.PSRAM.disabled.build.defines= -t-beam.menu.PSRAM.disabled.build.extra_libs= -t-beam.menu.PSRAM.enabled=Enabled -t-beam.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -t-beam.menu.PSRAM.enabled.build.extra_libs= - -t-beam.menu.FlashFreq.80=80MHz -t-beam.menu.FlashFreq.80.build.flash_freq=80m -t-beam.menu.FlashFreq.40=40MHz -t-beam.menu.FlashFreq.40.build.flash_freq=40m - -t-beam.menu.UploadSpeed.921600=921600 -t-beam.menu.UploadSpeed.921600.upload.speed=921600 -t-beam.menu.UploadSpeed.115200=115200 -t-beam.menu.UploadSpeed.115200.upload.speed=115200 -t-beam.menu.UploadSpeed.256000.windows=256000 -t-beam.menu.UploadSpeed.256000.upload.speed=256000 -t-beam.menu.UploadSpeed.230400.windows.upload.speed=256000 -t-beam.menu.UploadSpeed.230400=230400 -t-beam.menu.UploadSpeed.230400.upload.speed=230400 -t-beam.menu.UploadSpeed.460800.linux=460800 -t-beam.menu.UploadSpeed.460800.macosx=460800 -t-beam.menu.UploadSpeed.460800.upload.speed=460800 -t-beam.menu.UploadSpeed.512000.windows=512000 -t-beam.menu.UploadSpeed.512000.upload.speed=512000 - -t-beam.menu.DebugLevel.none=None -t-beam.menu.DebugLevel.none.build.code_debug=0 -t-beam.menu.DebugLevel.error=Error -t-beam.menu.DebugLevel.error.build.code_debug=1 -t-beam.menu.DebugLevel.warn=Warn -t-beam.menu.DebugLevel.warn.build.code_debug=2 -t-beam.menu.DebugLevel.info=Info -t-beam.menu.DebugLevel.info.build.code_debug=3 -t-beam.menu.DebugLevel.debug=Debug -t-beam.menu.DebugLevel.debug.build.code_debug=4 -t-beam.menu.DebugLevel.verbose=Verbose -t-beam.menu.DebugLevel.verbose.build.code_debug=5 - -t-beam.menu.EraseFlash.none=Disabled -t-beam.menu.EraseFlash.none.upload.erase_cmd= -t-beam.menu.EraseFlash.all=Enabled -t-beam.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -d-duino-32.name=D-duino-32 - -d-duino-32.bootloader.tool=esptool_py -d-duino-32.bootloader.tool.default=esptool_py - -d-duino-32.upload.tool=esptool_py -d-duino-32.upload.tool.default=esptool_py -d-duino-32.upload.tool.network=esp_ota - -d-duino-32.upload.maximum_size=1310720 -d-duino-32.upload.maximum_data_size=327680 -d-duino-32.upload.flags= -d-duino-32.upload.extra_flags= - -d-duino-32.serial.disableDTR=true -d-duino-32.serial.disableRTS=true - -d-duino-32.build.tarch=xtensa -d-duino-32.build.bootloader_addr=0x1000 -d-duino-32.build.target=esp32 -d-duino-32.build.mcu=esp32 -d-duino-32.build.core=esp32 -d-duino-32.build.variant=d-duino-32 -d-duino-32.build.board=D_Duino_32 - -d-duino-32.build.f_cpu=240000000L -d-duino-32.build.flash_size=4MB -d-duino-32.build.flash_freq=40m -d-duino-32.build.flash_mode=dio -d-duino-32.build.boot=dio -d-duino-32.build.partitions=default -d-duino-32.build.defines= - -d-duino-32.menu.PartitionScheme.default=Default -d-duino-32.menu.PartitionScheme.default.build.partitions=default -d-duino-32.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -d-duino-32.menu.PartitionScheme.minimal.build.partitions=minimal -d-duino-32.menu.PartitionScheme.no_ota=No OTA (Large APP) -d-duino-32.menu.PartitionScheme.no_ota.build.partitions=no_ota -d-duino-32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -d-duino-32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -d-duino-32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -d-duino-32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -d-duino-32.menu.PartitionScheme.fatflash=16M Fat -d-duino-32.menu.PartitionScheme.fatflash.build.partitions=ffat - -d-duino-32.menu.FlashFreq.80=80MHz -d-duino-32.menu.FlashFreq.80.build.flash_freq=80m -d-duino-32.menu.FlashFreq.40=40MHz -d-duino-32.menu.FlashFreq.40.build.flash_freq=40m - -d-duino-32.menu.UploadSpeed.921600=921600 -d-duino-32.menu.UploadSpeed.921600.upload.speed=921600 -d-duino-32.menu.UploadSpeed.115200=115200 -d-duino-32.menu.UploadSpeed.115200.upload.speed=115200 -d-duino-32.menu.UploadSpeed.256000.windows=256000 -d-duino-32.menu.UploadSpeed.256000.upload.speed=256000 -d-duino-32.menu.UploadSpeed.230400.windows.upload.speed=256000 -d-duino-32.menu.UploadSpeed.230400=230400 -d-duino-32.menu.UploadSpeed.230400.upload.speed=230400 -d-duino-32.menu.UploadSpeed.460800.linux=460800 -d-duino-32.menu.UploadSpeed.460800.macosx=460800 -d-duino-32.menu.UploadSpeed.460800.upload.speed=460800 -d-duino-32.menu.UploadSpeed.512000.windows=512000 -d-duino-32.menu.UploadSpeed.512000.upload.speed=512000 - -d-duino-32.menu.DebugLevel.none=None -d-duino-32.menu.DebugLevel.none.build.code_debug=0 -d-duino-32.menu.DebugLevel.error=Error -d-duino-32.menu.DebugLevel.error.build.code_debug=1 -d-duino-32.menu.DebugLevel.warn=Warn -d-duino-32.menu.DebugLevel.warn.build.code_debug=2 -d-duino-32.menu.DebugLevel.info=Info -d-duino-32.menu.DebugLevel.info.build.code_debug=3 -d-duino-32.menu.DebugLevel.debug=Debug -d-duino-32.menu.DebugLevel.debug.build.code_debug=4 -d-duino-32.menu.DebugLevel.verbose=Verbose -d-duino-32.menu.DebugLevel.verbose.build.code_debug=5 - -d-duino-32.menu.EraseFlash.none=Disabled -d-duino-32.menu.EraseFlash.none.upload.erase_cmd= -d-duino-32.menu.EraseFlash.all=Enabled -d-duino-32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lopy.name=LoPy - -lopy.bootloader.tool=esptool_py -lopy.bootloader.tool.default=esptool_py - -lopy.upload.tool=esptool_py -lopy.upload.tool.default=esptool_py -lopy.upload.tool.network=esp_ota - -lopy.upload.maximum_size=1310720 -lopy.upload.maximum_data_size=327680 -lopy.upload.flags= -lopy.upload.extra_flags= - -lopy.serial.disableDTR=true -lopy.serial.disableRTS=true - -lopy.build.tarch=xtensa -lopy.build.bootloader_addr=0x1000 -lopy.build.target=esp32 -lopy.build.mcu=esp32 -lopy.build.core=esp32 -lopy.build.variant=lopy -lopy.build.board=LoPy - -lopy.build.f_cpu=240000000L -lopy.build.flash_mode=dio -lopy.build.flash_size=4MB -lopy.build.boot=dio -lopy.build.partitions=default - -lopy.menu.FlashFreq.80=80MHz -lopy.menu.FlashFreq.80.build.flash_freq=80m -lopy.menu.FlashFreq.40=40MHz -lopy.menu.FlashFreq.40.build.flash_freq=40m - -lopy.menu.UploadSpeed.921600=921600 -lopy.menu.UploadSpeed.921600.upload.speed=921600 -lopy.menu.UploadSpeed.115200=115200 -lopy.menu.UploadSpeed.115200.upload.speed=115200 -lopy.menu.UploadSpeed.256000.windows=256000 -lopy.menu.UploadSpeed.256000.upload.speed=256000 -lopy.menu.UploadSpeed.230400.windows.upload.speed=256000 -lopy.menu.UploadSpeed.230400=230400 -lopy.menu.UploadSpeed.230400.upload.speed=230400 -lopy.menu.UploadSpeed.460800.linux=460800 -lopy.menu.UploadSpeed.460800.macosx=460800 -lopy.menu.UploadSpeed.460800.upload.speed=460800 -lopy.menu.UploadSpeed.512000.windows=512000 -lopy.menu.UploadSpeed.512000.upload.speed=512000 - -lopy.menu.DebugLevel.none=None -lopy.menu.DebugLevel.none.build.code_debug=0 -lopy.menu.DebugLevel.error=Error -lopy.menu.DebugLevel.error.build.code_debug=1 -lopy.menu.DebugLevel.warn=Warn -lopy.menu.DebugLevel.warn.build.code_debug=2 -lopy.menu.DebugLevel.info=Info -lopy.menu.DebugLevel.info.build.code_debug=3 -lopy.menu.DebugLevel.debug=Debug -lopy.menu.DebugLevel.debug.build.code_debug=4 -lopy.menu.DebugLevel.verbose=Verbose -lopy.menu.DebugLevel.verbose.build.code_debug=5 - -lopy.menu.EraseFlash.none=Disabled -lopy.menu.EraseFlash.none.upload.erase_cmd= -lopy.menu.EraseFlash.all=Enabled -lopy.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lopy4.name=LoPy4 - -lopy4.bootloader.tool=esptool_py -lopy4.bootloader.tool.default=esptool_py - -lopy4.upload.tool=esptool_py -lopy4.upload.tool.default=esptool_py -lopy4.upload.tool.network=esp_ota - -lopy4.upload.maximum_size=1310720 -lopy4.upload.maximum_data_size=327680 -lopy4.upload.flags= -lopy4.upload.extra_flags= - -lopy4.serial.disableDTR=true -lopy4.serial.disableRTS=true - -lopy4.build.tarch=xtensa -lopy4.build.bootloader_addr=0x1000 -lopy4.build.target=esp32 -lopy4.build.mcu=esp32 -lopy4.build.core=esp32 -lopy4.build.variant=lopy4 -lopy4.build.board=LoPy4 - -lopy4.build.f_cpu=240000000L -lopy4.build.flash_mode=dio -lopy4.build.flash_size=4MB -lopy4.build.boot=dio -lopy4.build.partitions=default - -lopy4.menu.PSRAM.disabled=Disabled -lopy4.menu.PSRAM.disabled.build.defines= -lopy4.menu.PSRAM.disabled.build.extra_libs= -lopy4.menu.PSRAM.enabled=Enabled -lopy4.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -lopy4.menu.PSRAM.enabled.build.extra_libs= - -lopy4.menu.FlashFreq.80=80MHz -lopy4.menu.FlashFreq.80.build.flash_freq=80m -lopy4.menu.FlashFreq.40=40MHz -lopy4.menu.FlashFreq.40.build.flash_freq=40m - -lopy4.menu.UploadSpeed.921600=921600 -lopy4.menu.UploadSpeed.921600.upload.speed=921600 -lopy4.menu.UploadSpeed.115200=115200 -lopy4.menu.UploadSpeed.115200.upload.speed=115200 -lopy4.menu.UploadSpeed.256000.windows=256000 -lopy4.menu.UploadSpeed.256000.upload.speed=256000 -lopy4.menu.UploadSpeed.230400.windows.upload.speed=256000 -lopy4.menu.UploadSpeed.230400=230400 -lopy4.menu.UploadSpeed.230400.upload.speed=230400 -lopy4.menu.UploadSpeed.460800.linux=460800 -lopy4.menu.UploadSpeed.460800.macosx=460800 -lopy4.menu.UploadSpeed.460800.upload.speed=460800 -lopy4.menu.UploadSpeed.512000.windows=512000 -lopy4.menu.UploadSpeed.512000.upload.speed=512000 - -lopy4.menu.DebugLevel.none=None -lopy4.menu.DebugLevel.none.build.code_debug=0 -lopy4.menu.DebugLevel.error=Error -lopy4.menu.DebugLevel.error.build.code_debug=1 -lopy4.menu.DebugLevel.warn=Warn -lopy4.menu.DebugLevel.warn.build.code_debug=2 -lopy4.menu.DebugLevel.info=Info -lopy4.menu.DebugLevel.info.build.code_debug=3 -lopy4.menu.DebugLevel.debug=Debug -lopy4.menu.DebugLevel.debug.build.code_debug=4 -lopy4.menu.DebugLevel.verbose=Verbose -lopy4.menu.DebugLevel.verbose.build.code_debug=5 - -lopy4.menu.EraseFlash.none=Disabled -lopy4.menu.EraseFlash.none.upload.erase_cmd= -lopy4.menu.EraseFlash.all=Enabled -lopy4.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -oroca_edubot.name=OROCA EduBot - -oroca_edubot.bootloader.tool=esptool_py -oroca_edubot.bootloader.tool.default=esptool_py - -oroca_edubot.upload.tool=esptool_py -oroca_edubot.upload.tool.default=esptool_py -oroca_edubot.upload.tool.network=esp_ota - -oroca_edubot.upload.maximum_size=3145728 -oroca_edubot.upload.maximum_data_size=327680 -oroca_edubot.upload.flags= -oroca_edubot.upload.extra_flags= - -oroca_edubot.serial.disableDTR=true -oroca_edubot.serial.disableRTS=true - -oroca_edubot.build.tarch=xtensa -oroca_edubot.build.bootloader_addr=0x1000 -oroca_edubot.build.target=esp32 -oroca_edubot.build.mcu=esp32 -oroca_edubot.build.core=esp32 -oroca_edubot.build.variant=oroca_edubot -oroca_edubot.build.board=OROCA_EDUBOT - -oroca_edubot.build.f_cpu=240000000L -oroca_edubot.build.flash_mode=dio -oroca_edubot.build.flash_size=4MB -oroca_edubot.build.boot=dio -oroca_edubot.build.partitions=huge_app -oroca_edubot.build.defines= - -oroca_edubot.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA) -oroca_edubot.menu.PartitionScheme.huge_app.build.partitions=huge_app -oroca_edubot.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -oroca_edubot.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -oroca_edubot.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -oroca_edubot.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -oroca_edubot.menu.FlashFreq.80=80MHz -oroca_edubot.menu.FlashFreq.80.build.flash_freq=80m -oroca_edubot.menu.FlashFreq.40=40MHz -oroca_edubot.menu.FlashFreq.40.build.flash_freq=40m - -oroca_edubot.menu.UploadSpeed.921600=921600 -oroca_edubot.menu.UploadSpeed.921600.upload.speed=921600 -oroca_edubot.menu.UploadSpeed.115200=115200 -oroca_edubot.menu.UploadSpeed.115200.upload.speed=115200 -oroca_edubot.menu.UploadSpeed.256000.windows=256000 -oroca_edubot.menu.UploadSpeed.256000.upload.speed=256000 -oroca_edubot.menu.UploadSpeed.230400.windows.upload.speed=256000 -oroca_edubot.menu.UploadSpeed.230400=230400 -oroca_edubot.menu.UploadSpeed.230400.upload.speed=230400 -oroca_edubot.menu.UploadSpeed.460800.linux=460800 -oroca_edubot.menu.UploadSpeed.460800.macosx=460800 -oroca_edubot.menu.UploadSpeed.460800.upload.speed=460800 -oroca_edubot.menu.UploadSpeed.512000.windows=512000 -oroca_edubot.menu.UploadSpeed.512000.upload.speed=512000 - -oroca_edubot.menu.DebugLevel.none=None -oroca_edubot.menu.DebugLevel.none.build.code_debug=0 -oroca_edubot.menu.DebugLevel.error=Error -oroca_edubot.menu.DebugLevel.error.build.code_debug=1 -oroca_edubot.menu.DebugLevel.warn=Warn -oroca_edubot.menu.DebugLevel.warn.build.code_debug=2 -oroca_edubot.menu.DebugLevel.info=Info -oroca_edubot.menu.DebugLevel.info.build.code_debug=3 -oroca_edubot.menu.DebugLevel.debug=Debug -oroca_edubot.menu.DebugLevel.debug.build.code_debug=4 -oroca_edubot.menu.DebugLevel.verbose=Verbose -oroca_edubot.menu.DebugLevel.verbose.build.code_debug=5 - -oroca_edubot.menu.EraseFlash.none=Disabled -oroca_edubot.menu.EraseFlash.none.upload.erase_cmd= -oroca_edubot.menu.EraseFlash.all=Enabled -oroca_edubot.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -fm-devkit.name=ESP32 FM DevKit - -fm-devkit.upload.tool=esptool_py -fm-devkit.upload.tool.default=esptool_py -fm-devkit.upload.tool.network=esp_ota - -fm-devkit.upload.maximum_size=1310720 -fm-devkit.upload.maximum_data_size=327680 -fm-devkit.upload.flags= -fm-devkit.upload.extra_flags= - -fm-devkit.serial.disableDTR=true -fm-devkit.serial.disableRTS=true - -fm-devkit.build.tarch=xtensa -fm-devkit.build.bootloader_addr=0x1000 -fm-devkit.build.target=esp32 -fm-devkit.build.mcu=esp32 -fm-devkit.build.core=esp32 -fm-devkit.build.variant=fm-devkit -fm-devkit.build.board=fm_devkit - -fm-devkit.build.f_cpu=240000000L -fm-devkit.build.flash_size=4MB -fm-devkit.build.flash_freq=80m -fm-devkit.build.flash_mode=dio -fm-devkit.build.boot=dio -fm-devkit.build.partitions=default -fm-devkit.build.defines= - -fm-devkit.menu.UploadSpeed.921600=921600 -fm-devkit.menu.UploadSpeed.921600.upload.speed=921600 -fm-devkit.menu.UploadSpeed.115200=115200 -fm-devkit.menu.UploadSpeed.115200.upload.speed=115200 -fm-devkit.menu.UploadSpeed.256000.windows=256000 -fm-devkit.menu.UploadSpeed.256000.upload.speed=256000 -fm-devkit.menu.UploadSpeed.230400.windows.upload.speed=256000 -fm-devkit.menu.UploadSpeed.230400=230400 -fm-devkit.menu.UploadSpeed.230400.upload.speed=230400 -fm-devkit.menu.UploadSpeed.460800.linux=460800 -fm-devkit.menu.UploadSpeed.460800.macosx=460800 -fm-devkit.menu.UploadSpeed.460800.upload.speed=460800 -fm-devkit.menu.UploadSpeed.512000.windows=512000 -fm-devkit.menu.UploadSpeed.512000.upload.speed=512000 - -fm-devkit.menu.DebugLevel.none=None -fm-devkit.menu.DebugLevel.none.build.code_debug=0 -fm-devkit.menu.DebugLevel.error=Error -fm-devkit.menu.DebugLevel.error.build.code_debug=1 -fm-devkit.menu.DebugLevel.warn=Warn -fm-devkit.menu.DebugLevel.warn.build.code_debug=2 -fm-devkit.menu.DebugLevel.info=Info -fm-devkit.menu.DebugLevel.info.build.code_debug=3 -fm-devkit.menu.DebugLevel.debug=Debug -fm-devkit.menu.DebugLevel.debug.build.code_debug=4 -fm-devkit.menu.DebugLevel.verbose=Verbose -fm-devkit.menu.DebugLevel.verbose.build.code_debug=5 - -fm-devkit.menu.EraseFlash.none=Disabled -fm-devkit.menu.EraseFlash.none.upload.erase_cmd= -fm-devkit.menu.EraseFlash.all=Enabled -fm-devkit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -frogboard.name=Frog Board ESP32 - -frogboard.bootloader.tool=esptool_py -frogboard.bootloader.tool.default=esptool_py - -frogboard.upload.tool=esptool_py -frogboard.upload.tool.default=esptool_py -frogboard.upload.tool.network=esp_ota - -frogboard.upload.maximum_size=1310720 -frogboard.upload.maximum_data_size=327680 -frogboard.upload.flags= -frogboard.upload.extra_flags= - -frogboard.serial.disableDTR=true -frogboard.serial.disableRTS=true - -frogboard.build.tarch=xtensa -frogboard.build.bootloader_addr=0x1000 -frogboard.build.target=esp32 -frogboard.build.mcu=esp32 -frogboard.build.core=esp32 -frogboard.build.variant=frog32 -frogboard.build.board=FROG_ESP32 -frogboard.build.f_cpu=240000000L -frogboard.build.flash_size=4MB -frogboard.build.flash_freq=40m -frogboard.build.flash_mode=dio -frogboard.build.boot=dio -frogboard.build.partitions=default -frogboard.build.defines= - -frogboard.menu.PSRAM.disabled=Disabled -frogboard.menu.PSRAM.disabled.build.defines= -frogboard.menu.PSRAM.disabled.build.extra_libs= -frogboard.menu.PSRAM.enabled=Enabled -frogboard.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -frogboard.menu.PSRAM.enabled.build.extra_libs= - -frogboard.menu.PartitionScheme.default=Default -frogboard.menu.PartitionScheme.default.build.partitions=default -frogboard.menu.PartitionScheme.minimal=Minimal (2MB FLASH) -frogboard.menu.PartitionScheme.minimal.build.partitions=minimal -frogboard.menu.PartitionScheme.no_ota=No OTA (Large APP) -frogboard.menu.PartitionScheme.no_ota.build.partitions=no_ota -frogboard.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -frogboard.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -frogboard.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -frogboard.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -frogboard.menu.FlashMode.qio=QIO -frogboard.menu.FlashMode.qio.build.flash_mode=dio -frogboard.menu.FlashMode.qio.build.boot=qio -frogboard.menu.FlashMode.dio=DIO -frogboard.menu.FlashMode.dio.build.flash_mode=dio -frogboard.menu.FlashMode.dio.build.boot=dio -frogboard.menu.FlashFreq.80=80MHz -frogboard.menu.FlashFreq.80.build.flash_freq=80m -frogboard.menu.FlashFreq.40=40MHz -frogboard.menu.FlashFreq.40.build.flash_freq=40m -frogboard.menu.FlashSize.4M=4MB (32Mb) -frogboard.menu.FlashSize.4M.build.flash_size=4MB -frogboard.menu.FlashSize.2M=2MB (16Mb) -frogboard.menu.FlashSize.2M.build.flash_size=2MB -frogboard.menu.FlashSize.2M.build.partitions=minimal - -frogboard.menu.UploadSpeed.921600=921600 -frogboard.menu.UploadSpeed.921600.upload.speed=921600 -frogboard.menu.UploadSpeed.115200=115200 -frogboard.menu.UploadSpeed.115200.upload.speed=115200 -frogboard.menu.UploadSpeed.256000.windows=256000 -frogboard.menu.UploadSpeed.256000.upload.speed=256000 -frogboard.menu.UploadSpeed.230400.windows.upload.speed=256000 -frogboard.menu.UploadSpeed.230400=230400 -frogboard.menu.UploadSpeed.230400.upload.speed=230400 -frogboard.menu.UploadSpeed.460800.linux=460800 -frogboard.menu.UploadSpeed.460800.macosx=460800 -frogboard.menu.UploadSpeed.460800.upload.speed=460800 -frogboard.menu.UploadSpeed.512000.windows=512000 -frogboard.menu.UploadSpeed.512000.upload.speed=512000 - -frogboard.menu.DebugLevel.none=None -frogboard.menu.DebugLevel.none.build.code_debug=0 -frogboard.menu.DebugLevel.error=Error -frogboard.menu.DebugLevel.error.build.code_debug=1 -frogboard.menu.DebugLevel.warn=Warn -frogboard.menu.DebugLevel.warn.build.code_debug=2 -frogboard.menu.DebugLevel.info=Info -frogboard.menu.DebugLevel.info.build.code_debug=3 -frogboard.menu.DebugLevel.debug=Debug -frogboard.menu.DebugLevel.debug.build.code_debug=4 -frogboard.menu.DebugLevel.verbose=Verbose -frogboard.menu.DebugLevel.verbose.build.code_debug=5 - -frogboard.menu.EraseFlash.none=Disabled -frogboard.menu.EraseFlash.none.upload.erase_cmd= -frogboard.menu.EraseFlash.all=Enabled -frogboard.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32cam.name=AI Thinker ESP32-CAM - -esp32cam.bootloader.tool=esptool_py -esp32cam.bootloader.tool.default=esptool_py - -esp32cam.upload.tool=esptool_py -esp32cam.upload.tool.default=esptool_py -esp32cam.upload.tool.network=esp_ota - -esp32cam.upload.maximum_size=3145728 -esp32cam.upload.maximum_data_size=327680 -esp32cam.upload.flags= -esp32cam.upload.extra_flags= -esp32cam.upload.speed=460800 - -esp32cam.serial.disableDTR=true -esp32cam.serial.disableRTS=true - -esp32cam.build.tarch=xtensa -esp32cam.build.bootloader_addr=0x1000 -esp32cam.build.target=esp32 -esp32cam.build.mcu=esp32 -esp32cam.build.core=esp32 -esp32cam.build.variant=esp32 -esp32cam.build.board=ESP32_DEV -esp32cam.build.flash_size=4MB -esp32cam.build.partitions=huge_app -esp32cam.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -esp32cam.build.extra_libs= -esp32cam.build.code_debug=0 - -esp32cam.menu.CPUFreq.240=240MHz (WiFi/BT) -esp32cam.menu.CPUFreq.240.build.f_cpu=240000000L -esp32cam.menu.CPUFreq.160=160MHz (WiFi/BT) -esp32cam.menu.CPUFreq.160.build.f_cpu=160000000L -esp32cam.menu.CPUFreq.80=80MHz (WiFi/BT) -esp32cam.menu.CPUFreq.80.build.f_cpu=80000000L -esp32cam.menu.CPUFreq.40=40MHz (40MHz XTAL) -esp32cam.menu.CPUFreq.40.build.f_cpu=40000000L -esp32cam.menu.CPUFreq.26=26MHz (26MHz XTAL) -esp32cam.menu.CPUFreq.26.build.f_cpu=26000000L -esp32cam.menu.CPUFreq.20=20MHz (40MHz XTAL) -esp32cam.menu.CPUFreq.20.build.f_cpu=20000000L -esp32cam.menu.CPUFreq.13=13MHz (26MHz XTAL) -esp32cam.menu.CPUFreq.13.build.f_cpu=13000000L -esp32cam.menu.CPUFreq.10=10MHz (40MHz XTAL) -esp32cam.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32cam.menu.FlashMode.qio=QIO -esp32cam.menu.FlashMode.qio.build.flash_mode=dio -esp32cam.menu.FlashMode.qio.build.boot=qio -esp32cam.menu.FlashMode.dio=DIO -esp32cam.menu.FlashMode.dio.build.flash_mode=dio -esp32cam.menu.FlashMode.dio.build.boot=dio - -esp32cam.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32cam.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32cam.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32cam.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32cam.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32cam.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32cam.menu.PartitionScheme.default=Regular 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32cam.menu.PartitionScheme.default.build.partitions=default -esp32cam.menu.PartitionScheme.defaultffat=Regular 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32cam.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32cam.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32cam.menu.PartitionScheme.minimal.build.partitions=minimal -esp32cam.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32cam.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32cam.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32cam.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32cam.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32cam.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32cam.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32cam.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32cam.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32cam.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32cam.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32cam.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 - -esp32cam.menu.FlashFreq.80=80MHz -esp32cam.menu.FlashFreq.80.build.flash_freq=80m -esp32cam.menu.FlashFreq.40=40MHz -esp32cam.menu.FlashFreq.40.build.flash_freq=40m - -esp32cam.menu.DebugLevel.none=None -esp32cam.menu.DebugLevel.none.build.code_debug=0 -esp32cam.menu.DebugLevel.error=Error -esp32cam.menu.DebugLevel.error.build.code_debug=1 -esp32cam.menu.DebugLevel.warn=Warn -esp32cam.menu.DebugLevel.warn.build.code_debug=2 -esp32cam.menu.DebugLevel.info=Info -esp32cam.menu.DebugLevel.info.build.code_debug=3 -esp32cam.menu.DebugLevel.debug=Debug -esp32cam.menu.DebugLevel.debug.build.code_debug=4 -esp32cam.menu.DebugLevel.verbose=Verbose -esp32cam.menu.DebugLevel.verbose.build.code_debug=5 - -esp32cam.menu.EraseFlash.none=Disabled -esp32cam.menu.EraseFlash.none.upload.erase_cmd= -esp32cam.menu.EraseFlash.all=Enabled -esp32cam.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -twatch.name=TTGO T-Watch - -twatch.bootloader.tool=esptool_py -twatch.bootloader.tool.default=esptool_py - -twatch.upload.tool=esptool_py -twatch.upload.tool.default=esptool_py -twatch.upload.tool.network=esp_ota - -twatch.upload.maximum_size=6553600 -twatch.upload.maximum_data_size=4521984 -twatch.upload.wait_for_upload_port=true -twatch.upload.flags= -twatch.upload.extra_flags= - -twatch.serial.disableDTR=true -twatch.serial.disableRTS=true - -twatch.build.tarch=xtensa -twatch.build.bootloader_addr=0x1000 -twatch.build.target=esp32 -twatch.build.mcu=esp32 -twatch.build.core=esp32 -twatch.build.variant=twatch -twatch.build.board=TWatch - -twatch.menu.Revision.TWATCH_BASE=T-Watch Base -twatch.menu.Revision.TWATCH_BASE.build.board=TWATCH_BASE -twatch.menu.Revision.TWATCH_2020_V1=T-Watch-2020-V1 -twatch.menu.Revision.TWATCH_2020_V1.build.board=TWATCH_2020_V1 -twatch.menu.Revision.TWATCH_2020_V2=T-Watch-2020-V2 -twatch.menu.Revision.TWATCH_2020_V2.build.board=TWATCH_2020_V2 -twatch.menu.Revision.TWATCH_2020_V3=T-Watch-2020-V3 -twatch.menu.Revision.TWATCH_2020_V3.build.board=TWATCH_2020_V3 - -twatch.build.f_cpu=240000000L -twatch.build.flash_size=16MB -twatch.build.flash_freq=80m -twatch.build.flash_mode=dio -twatch.build.boot=dio -twatch.build.partitions=default_16MB -twatch.build.defines= - -twatch.menu.PSRAM.enabled=Enabled -twatch.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -twatch.menu.PSRAM.enabled.build.extra_libs= -twatch.menu.PSRAM.disabled=Disabled -twatch.menu.PSRAM.disabled.build.defines= -twatch.menu.PSRAM.disabled.build.extra_libs= - -twatch.menu.PartitionScheme.default=Default (2 x 6.5 MB app, 3.6 MB SPIFFS) -twatch.menu.PartitionScheme.default.build.partitions=default_16MB -twatch.menu.PartitionScheme.default.upload.maximum_size=6553600 -twatch.menu.PartitionScheme.large_spiffs=Large SPIFFS (7 MB) -twatch.menu.PartitionScheme.large_spiffs.build.partitions=large_spiffs_16MB -twatch.menu.PartitionScheme.large_spiffs.upload.maximum_size=4685824 - -twatch.menu.UploadSpeed.2000000=2000000 -twatch.menu.UploadSpeed.2000000.upload.speed=2000000 -twatch.menu.UploadSpeed.1152000=1152000 -twatch.menu.UploadSpeed.1152000.upload.speed=1152000 -twatch.menu.UploadSpeed.921600=921600 -twatch.menu.UploadSpeed.921600.upload.speed=921600 -twatch.menu.UploadSpeed.115200=115200 -twatch.menu.UploadSpeed.115200.upload.speed=115200 -twatch.menu.UploadSpeed.256000.windows=256000 -twatch.menu.UploadSpeed.256000.upload.speed=256000 -twatch.menu.UploadSpeed.230400.windows.upload.speed=256000 -twatch.menu.UploadSpeed.230400=230400 -twatch.menu.UploadSpeed.230400.upload.speed=230400 -twatch.menu.UploadSpeed.460800.linux=460800 -twatch.menu.UploadSpeed.460800.macosx=460800 -twatch.menu.UploadSpeed.460800.upload.speed=460800 -twatch.menu.UploadSpeed.512000.windows=512000 -twatch.menu.UploadSpeed.512000.upload.speed=512000 - -twatch.menu.DebugLevel.none=None -twatch.menu.DebugLevel.none.build.code_debug=0 -twatch.menu.DebugLevel.error=Error -twatch.menu.DebugLevel.error.build.code_debug=1 -twatch.menu.DebugLevel.warn=Warn -twatch.menu.DebugLevel.warn.build.code_debug=2 -twatch.menu.DebugLevel.info=Info -twatch.menu.DebugLevel.info.build.code_debug=3 -twatch.menu.DebugLevel.debug=Debug -twatch.menu.DebugLevel.debug.build.code_debug=4 -twatch.menu.DebugLevel.verbose=Verbose -twatch.menu.DebugLevel.verbose.build.code_debug=5 - -twatch.menu.EraseFlash.none=Disabled -twatch.menu.EraseFlash.none.upload.erase_cmd= -twatch.menu.EraseFlash.all=Enabled -twatch.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -d1_mini32.name=WEMOS D1 MINI ESP32 - -d1_mini32.bootloader.tool=esptool_py -d1_mini32.bootloader.tool.default=esptool_py - -d1_mini32.upload.tool=esptool_py -d1_mini32.upload.tool.default=esptool_py -d1_mini32.upload.tool.network=esp_ota - -d1_mini32.upload.maximum_size=1310720 -d1_mini32.upload.maximum_data_size=327680 -d1_mini32.upload.flags= -d1_mini32.upload.extra_flags= - -d1_mini32.serial.disableDTR=true -d1_mini32.serial.disableRTS=true - -d1_mini32.build.tarch=xtensa -d1_mini32.build.bootloader_addr=0x1000 -d1_mini32.build.target=esp32 -d1_mini32.build.mcu=esp32 -d1_mini32.build.core=esp32 -d1_mini32.build.variant=d1_mini32 -d1_mini32.build.board=D1_MINI32 - -d1_mini32.build.f_cpu=240000000L -d1_mini32.build.flash_mode=dio -d1_mini32.build.flash_size=4MB -d1_mini32.build.boot=dio -d1_mini32.build.partitions=default -d1_mini32.build.defines= - -d1_mini32.menu.FlashFreq.80=80MHz -d1_mini32.menu.FlashFreq.80.build.flash_freq=80m -d1_mini32.menu.FlashFreq.40=40MHz -d1_mini32.menu.FlashFreq.40.build.flash_freq=40m - -d1_mini32.menu.PartitionScheme.default=Default -d1_mini32.menu.PartitionScheme.default.build.partitions=default -d1_mini32.menu.PartitionScheme.no_ota=No OTA (Large APP) -d1_mini32.menu.PartitionScheme.no_ota.build.partitions=no_ota -d1_mini32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -d1_mini32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -d1_mini32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -d1_mini32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -d1_mini32.menu.CPUFreq.240=240MHz (WiFi/BT) -d1_mini32.menu.CPUFreq.240.build.f_cpu=240000000L -d1_mini32.menu.CPUFreq.160=160MHz (WiFi/BT) -d1_mini32.menu.CPUFreq.160.build.f_cpu=160000000L -d1_mini32.menu.CPUFreq.80=80MHz (WiFi/BT) -d1_mini32.menu.CPUFreq.80.build.f_cpu=80000000L -d1_mini32.menu.CPUFreq.40=40MHz (40MHz XTAL) -d1_mini32.menu.CPUFreq.40.build.f_cpu=40000000L -d1_mini32.menu.CPUFreq.26=26MHz (26MHz XTAL) -d1_mini32.menu.CPUFreq.26.build.f_cpu=26000000L -d1_mini32.menu.CPUFreq.20=20MHz (40MHz XTAL) -d1_mini32.menu.CPUFreq.20.build.f_cpu=20000000L -d1_mini32.menu.CPUFreq.13=13MHz (26MHz XTAL) -d1_mini32.menu.CPUFreq.13.build.f_cpu=13000000L -d1_mini32.menu.CPUFreq.10=10MHz (40MHz XTAL) -d1_mini32.menu.CPUFreq.10.build.f_cpu=10000000L - -d1_mini32.menu.UploadSpeed.921600=921600 -d1_mini32.menu.UploadSpeed.921600.upload.speed=921600 -d1_mini32.menu.UploadSpeed.115200=115200 -d1_mini32.menu.UploadSpeed.115200.upload.speed=115200 -d1_mini32.menu.UploadSpeed.256000.windows=256000 -d1_mini32.menu.UploadSpeed.256000.upload.speed=256000 -d1_mini32.menu.UploadSpeed.230400.windows.upload.speed=256000 -d1_mini32.menu.UploadSpeed.230400=230400 -d1_mini32.menu.UploadSpeed.230400.upload.speed=230400 -d1_mini32.menu.UploadSpeed.460800.linux=460800 -d1_mini32.menu.UploadSpeed.460800.macosx=460800 -d1_mini32.menu.UploadSpeed.460800.upload.speed=460800 -d1_mini32.menu.UploadSpeed.512000.windows=512000 -d1_mini32.menu.UploadSpeed.512000.upload.speed=512000 - -d1_mini32.menu.DebugLevel.none=None -d1_mini32.menu.DebugLevel.none.build.code_debug=0 -d1_mini32.menu.DebugLevel.error=Error -d1_mini32.menu.DebugLevel.error.build.code_debug=1 -d1_mini32.menu.DebugLevel.warn=Warn -d1_mini32.menu.DebugLevel.warn.build.code_debug=2 -d1_mini32.menu.DebugLevel.info=Info -d1_mini32.menu.DebugLevel.info.build.code_debug=3 -d1_mini32.menu.DebugLevel.debug=Debug -d1_mini32.menu.DebugLevel.debug.build.code_debug=4 -d1_mini32.menu.DebugLevel.verbose=Verbose -d1_mini32.menu.DebugLevel.verbose.build.code_debug=5 - -d1_mini32.menu.EraseFlash.none=Disabled -d1_mini32.menu.EraseFlash.none.upload.erase_cmd= -d1_mini32.menu.EraseFlash.all=Enabled -d1_mini32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -d1_uno32.name=WEMOS D1 R32 - -d1_uno32.bootloader.tool=esptool_py -d1_uno32.bootloader.tool.default=esptool_py - -d1_uno32.upload.tool=esptool_py -d1_uno32.upload.tool.default=esptool_py -d1_uno32.upload.tool.network=esp_ota - -d1_uno32.upload.maximum_size=1310720 -d1_uno32.upload.maximum_data_size=327680 -d1_uno32.upload.flags= -d1_uno32.upload.extra_flags= - -d1_uno32.serial.disableDTR=true -d1_uno32.serial.disableRTS=true - -d1_uno32.build.tarch=xtensa -d1_uno32.build.bootloader_addr=0x1000 -d1_uno32.build.target=esp32 -d1_uno32.build.mcu=esp32 -d1_uno32.build.core=esp32 -d1_uno32.build.variant=d1_uno32 -d1_uno32.build.board=D1_UNO32 - -d1_uno32.build.f_cpu=240000000L -d1_uno32.build.flash_mode=dio -d1_uno32.build.flash_size=4MB -d1_uno32.build.boot=dio -d1_uno32.build.partitions=default -d1_uno32.build.defines= - -d1_uno32.menu.FlashFreq.80=80MHz -d1_uno32.menu.FlashFreq.80.build.flash_freq=80m -d1_uno32.menu.FlashFreq.40=40MHz -d1_uno32.menu.FlashFreq.40.build.flash_freq=40m - -d1_uno32.menu.PartitionScheme.default=Default -d1_uno32.menu.PartitionScheme.default.build.partitions=default -d1_uno32.menu.PartitionScheme.no_ota=No OTA (Large APP) -d1_uno32.menu.PartitionScheme.no_ota.build.partitions=no_ota -d1_uno32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -d1_uno32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -d1_uno32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -d1_uno32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -d1_uno32.menu.CPUFreq.240=240MHz (WiFi/BT) -d1_uno32.menu.CPUFreq.240.build.f_cpu=240000000L -d1_uno32.menu.CPUFreq.160=160MHz (WiFi/BT) -d1_uno32.menu.CPUFreq.160.build.f_cpu=160000000L -d1_uno32.menu.CPUFreq.80=80MHz (WiFi/BT) -d1_uno32.menu.CPUFreq.80.build.f_cpu=80000000L -d1_uno32.menu.CPUFreq.40=40MHz (40MHz XTAL) -d1_uno32.menu.CPUFreq.40.build.f_cpu=40000000L -d1_uno32.menu.CPUFreq.26=26MHz (26MHz XTAL) -d1_uno32.menu.CPUFreq.26.build.f_cpu=26000000L -d1_uno32.menu.CPUFreq.20=20MHz (40MHz XTAL) -d1_uno32.menu.CPUFreq.20.build.f_cpu=20000000L -d1_uno32.menu.CPUFreq.13=13MHz (26MHz XTAL) -d1_uno32.menu.CPUFreq.13.build.f_cpu=13000000L -d1_uno32.menu.CPUFreq.10=10MHz (40MHz XTAL) -d1_uno32.menu.CPUFreq.10.build.f_cpu=10000000L - -d1_uno32.menu.UploadSpeed.921600=921600 -d1_uno32.menu.UploadSpeed.921600.upload.speed=921600 -d1_uno32.menu.UploadSpeed.115200=115200 -d1_uno32.menu.UploadSpeed.115200.upload.speed=115200 -d1_uno32.menu.UploadSpeed.256000.windows=256000 -d1_uno32.menu.UploadSpeed.256000.upload.speed=256000 -d1_uno32.menu.UploadSpeed.230400.windows.upload.speed=256000 -d1_uno32.menu.UploadSpeed.230400=230400 -d1_uno32.menu.UploadSpeed.230400.upload.speed=230400 -d1_uno32.menu.UploadSpeed.460800.linux=460800 -d1_uno32.menu.UploadSpeed.460800.macosx=460800 -d1_uno32.menu.UploadSpeed.460800.upload.speed=460800 -d1_uno32.menu.UploadSpeed.512000.windows=512000 -d1_uno32.menu.UploadSpeed.512000.upload.speed=512000 - -d1_uno32.menu.DebugLevel.none=None -d1_uno32.menu.DebugLevel.none.build.code_debug=0 -d1_uno32.menu.DebugLevel.error=Error -d1_uno32.menu.DebugLevel.error.build.code_debug=1 -d1_uno32.menu.DebugLevel.warn=Warn -d1_uno32.menu.DebugLevel.warn.build.code_debug=2 -d1_uno32.menu.DebugLevel.info=Info -d1_uno32.menu.DebugLevel.info.build.code_debug=3 -d1_uno32.menu.DebugLevel.debug=Debug -d1_uno32.menu.DebugLevel.debug.build.code_debug=4 -d1_uno32.menu.DebugLevel.verbose=Verbose -d1_uno32.menu.DebugLevel.verbose.build.code_debug=5 - -d1_uno32.menu.EraseFlash.none=Disabled -d1_uno32.menu.EraseFlash.none.upload.erase_cmd= -d1_uno32.menu.EraseFlash.all=Enabled -d1_uno32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -gpy.name=Pycom GPy - -gpy.bootloader.tool=esptool_py -gpy.bootloader.tool.default=esptool_py - -gpy.upload.tool=esptool_py -gpy.upload.tool.default=esptool_py -gpy.upload.tool.network=esp_ota - -gpy.upload.maximum_size=1310720 -gpy.upload.maximum_data_size=327680 -gpy.upload.flags= -gpy.upload.extra_flags= - -gpy.serial.disableDTR=true -gpy.serial.disableRTS=true - -gpy.build.tarch=xtensa -gpy.build.bootloader_addr=0x1000 -gpy.build.target=esp32 -gpy.build.mcu=esp32 -gpy.build.core=esp32 -gpy.build.variant=gpy -gpy.build.board=PYCOM_GPY - -gpy.build.f_cpu=240000000L -gpy.build.flash_mode=dio -gpy.build.flash_size=8MB -gpy.build.boot=dio -gpy.build.partitions=default - -gpy.menu.FlashFreq.80=80MHz -gpy.menu.FlashFreq.80.build.flash_freq=80m -gpy.menu.FlashFreq.40=40MHz -gpy.menu.FlashFreq.40.build.flash_freq=40m - -gpy.menu.UploadSpeed.921600=921600 -gpy.menu.UploadSpeed.921600.upload.speed=921600 -gpy.menu.UploadSpeed.115200=115200 -gpy.menu.UploadSpeed.115200.upload.speed=115200 -gpy.menu.UploadSpeed.256000.windows=256000 -gpy.menu.UploadSpeed.256000.upload.speed=256000 -gpy.menu.UploadSpeed.230400.windows.upload.speed=256000 -gpy.menu.UploadSpeed.230400=230400 -gpy.menu.UploadSpeed.230400.upload.speed=230400 -gpy.menu.UploadSpeed.460800.linux=460800 -gpy.menu.UploadSpeed.460800.macosx=460800 -gpy.menu.UploadSpeed.460800.upload.speed=460800 -gpy.menu.UploadSpeed.512000.windows=512000 -gpy.menu.UploadSpeed.512000.upload.speed=512000 - -gpy.menu.DebugLevel.none=None -gpy.menu.DebugLevel.none.build.code_debug=0 -gpy.menu.DebugLevel.error=Error -gpy.menu.DebugLevel.error.build.code_debug=1 -gpy.menu.DebugLevel.warn=Warn -gpy.menu.DebugLevel.warn.build.code_debug=2 -gpy.menu.DebugLevel.info=Info -gpy.menu.DebugLevel.info.build.code_debug=3 -gpy.menu.DebugLevel.debug=Debug -gpy.menu.DebugLevel.debug.build.code_debug=4 -gpy.menu.DebugLevel.verbose=Verbose -gpy.menu.DebugLevel.verbose.build.code_debug=5 - -gpy.menu.EraseFlash.none=Disabled -gpy.menu.EraseFlash.none.upload.erase_cmd= -gpy.menu.EraseFlash.all=Enabled -gpy.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -vintlabs-devkit-v1.name=VintLabs ESP32 Devkit - -vintlabs-devkit-v1.bootloader.tool=esptool_py -vintlabs-devkit-v1.bootloader.tool.default=esptool_py - -vintlabs-devkit-v1.upload.tool=esptool_py -vintlabs-devkit-v1.upload.tool.default=esptool_py -vintlabs-devkit-v1.upload.tool.network=esp_ota - -vintlabs-devkit-v1.upload.maximum_size=1310720 -vintlabs-devkit-v1.upload.maximum_data_size=327680 -vintlabs-devkit-v1.upload.flags= -vintlabs-devkit-v1.upload.extra_flags= - -vintlabs-devkit-v1.serial.disableDTR=true -vintlabs-devkit-v1.serial.disableRTS=true - -vintlabs-devkit-v1.build.tarch=xtensa -vintlabs-devkit-v1.build.bootloader_addr=0x1000 -vintlabs-devkit-v1.build.target=esp32 -vintlabs-devkit-v1.build.mcu=esp32 -vintlabs-devkit-v1.build.core=esp32 -vintlabs-devkit-v1.build.variant=vintlabsdevkitv1 -vintlabs-devkit-v1.build.board=ESP32_DEV - -vintlabs-devkit-v1.build.f_cpu=240000000L -vintlabs-devkit-v1.build.flash_mode=dio -vintlabs-devkit-v1.build.flash_size=4MB -vintlabs-devkit-v1.build.boot=dio -vintlabs-devkit-v1.build.partitions=default -vintlabs-devkit-v1.build.defines= - -vintlabs-devkit-v1.menu.FlashFreq.80=80MHz -vintlabs-devkit-v1.menu.FlashFreq.80.build.flash_freq=80m -vintlabs-devkit-v1.menu.FlashFreq.40=40MHz -vintlabs-devkit-v1.menu.FlashFreq.40.build.flash_freq=40m - -vintlabs-devkit-v1.menu.UploadSpeed.2000000=2000000 -vintlabs-devkit-v1.menu.UploadSpeed.2000000.upload.speed=2000000 -vintlabs-devkit-v1.menu.UploadSpeed.921600=921600 -vintlabs-devkit-v1.menu.UploadSpeed.921600.upload.speed=921600 -vintlabs-devkit-v1.menu.UploadSpeed.115200=115200 -vintlabs-devkit-v1.menu.UploadSpeed.115200.upload.speed=115200 -vintlabs-devkit-v1.menu.UploadSpeed.256000.windows=256000 -vintlabs-devkit-v1.menu.UploadSpeed.256000.upload.speed=256000 -vintlabs-devkit-v1.menu.UploadSpeed.230400.windows.upload.speed=256000 -vintlabs-devkit-v1.menu.UploadSpeed.230400=230400 -vintlabs-devkit-v1.menu.UploadSpeed.230400.upload.speed=230400 -vintlabs-devkit-v1.menu.UploadSpeed.460800.linux=460800 -vintlabs-devkit-v1.menu.UploadSpeed.460800.macosx=460800 -vintlabs-devkit-v1.menu.UploadSpeed.460800.upload.speed=460800 -vintlabs-devkit-v1.menu.UploadSpeed.512000.windows=512000 -vintlabs-devkit-v1.menu.UploadSpeed.512000.upload.speed=512000 - -vintlabs-devkit-v1.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.default.build.partitions=default -vintlabs-devkit-v1.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -vintlabs-devkit-v1.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -vintlabs-devkit-v1.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -vintlabs-devkit-v1.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -vintlabs-devkit-v1.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.minimal.build.partitions=minimal -vintlabs-devkit-v1.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.no_ota.build.partitions=no_ota -vintlabs-devkit-v1.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -vintlabs-devkit-v1.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -vintlabs-devkit-v1.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -vintlabs-devkit-v1.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -vintlabs-devkit-v1.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -vintlabs-devkit-v1.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -vintlabs-devkit-v1.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -vintlabs-devkit-v1.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -vintlabs-devkit-v1.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -vintlabs-devkit-v1.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.huge_app.build.partitions=huge_app -vintlabs-devkit-v1.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -vintlabs-devkit-v1.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -vintlabs-devkit-v1.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -vintlabs-devkit-v1.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -vintlabs-devkit-v1.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -vintlabs-devkit-v1.menu.PartitionScheme.fatflash.build.partitions=ffat -vintlabs-devkit-v1.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -vintlabs-devkit-v1.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -vintlabs-devkit-v1.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -vintlabs-devkit-v1.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -vintlabs-devkit-v1.menu.FlashSize.4M=4MB (32Mb) -vintlabs-devkit-v1.menu.FlashSize.4M.build.flash_size=4MB -vintlabs-devkit-v1.menu.FlashSize.8M=8MB (64Mb) -vintlabs-devkit-v1.menu.FlashSize.8M.build.flash_size=8MB -vintlabs-devkit-v1.menu.FlashSize.8M.build.partitions=default_8MB -vintlabs-devkit-v1.menu.FlashSize.2M=2MB (16Mb) -vintlabs-devkit-v1.menu.FlashSize.2M.build.flash_size=2MB -vintlabs-devkit-v1.menu.FlashSize.2M.build.partitions=minimal -vintlabs-devkit-v1.menu.FlashSize.16M=16MB (128Mb) -vintlabs-devkit-v1.menu.FlashSize.16M.build.flash_size=16MB - -vintlabs-devkit-v1.menu.DebugLevel.none=None -vintlabs-devkit-v1.menu.DebugLevel.none.build.code_debug=0 -vintlabs-devkit-v1.menu.DebugLevel.error=Error -vintlabs-devkit-v1.menu.DebugLevel.error.build.code_debug=1 -vintlabs-devkit-v1.menu.DebugLevel.warn=Warn -vintlabs-devkit-v1.menu.DebugLevel.warn.build.code_debug=2 -vintlabs-devkit-v1.menu.DebugLevel.info=Info -vintlabs-devkit-v1.menu.DebugLevel.info.build.code_debug=3 -vintlabs-devkit-v1.menu.DebugLevel.debug=Debug -vintlabs-devkit-v1.menu.DebugLevel.debug.build.code_debug=4 - -vintlabs-devkit-v1.menu.EraseFlash.none=Disabled -vintlabs-devkit-v1.menu.EraseFlash.none.upload.erase_cmd= -vintlabs-devkit-v1.menu.EraseFlash.all=Enabled -vintlabs-devkit-v1.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -honeylemon.name=HONEYLemon - -honeylemon.bootloader.tool=esptool_py -honeylemon.bootloader.tool.default=esptool_py - -honeylemon.upload.tool=esptool_py -honeylemon.upload.tool.default=esptool_py -honeylemon.upload.tool.network=esp_ota - -honeylemon.upload.maximum_size=1310720 -honeylemon.upload.maximum_data_size=327680 -honeylemon.upload.flags= -honeylemon.upload.extra_flags= - -honeylemon.serial.disableDTR=true -honeylemon.serial.disableRTS=true - -honeylemon.build.tarch=xtensa -honeylemon.build.bootloader_addr=0x1000 -honeylemon.build.target=esp32 -honeylemon.build.mcu=esp32 -honeylemon.build.core=esp32 -honeylemon.build.variant=honeylemon -honeylemon.build.board=HONEYLEMON - -honeylemon.build.f_cpu=240000000L -honeylemon.build.flash_mode=dio -honeylemon.build.flash_size=4MB -honeylemon.build.boot=dio -honeylemon.build.partitions=default -honeylemon.build.defines= - -honeylemon.menu.FlashFreq.80=80MHz -honeylemon.menu.FlashFreq.80.build.flash_freq=80m -honeylemon.menu.FlashFreq.40=40MHz -honeylemon.menu.FlashFreq.40.build.flash_freq=40m - -honeylemon.menu.UploadSpeed.921600=921600 -honeylemon.menu.UploadSpeed.921600.upload.speed=921600 -honeylemon.menu.UploadSpeed.115200=115200 -honeylemon.menu.UploadSpeed.115200.upload.speed=115200 -honeylemon.menu.UploadSpeed.256000.windows=256000 -honeylemon.menu.UploadSpeed.256000.upload.speed=256000 -honeylemon.menu.UploadSpeed.230400.windows.upload.speed=256000 -honeylemon.menu.UploadSpeed.230400=230400 -honeylemon.menu.UploadSpeed.230400.upload.speed=230400 -honeylemon.menu.UploadSpeed.460800.linux=460800 -honeylemon.menu.UploadSpeed.460800.macosx=460800 -honeylemon.menu.UploadSpeed.460800.upload.speed=460800 -honeylemon.menu.UploadSpeed.512000.windows=512000 -honeylemon.menu.UploadSpeed.512000.upload.speed=512000 - -honeylemon.menu.DebugLevel.none=None -honeylemon.menu.DebugLevel.none.build.code_debug=0 -honeylemon.menu.DebugLevel.error=Error -honeylemon.menu.DebugLevel.error.build.code_debug=1 -honeylemon.menu.DebugLevel.warn=Warn -honeylemon.menu.DebugLevel.warn.build.code_debug=2 -honeylemon.menu.DebugLevel.info=Info -honeylemon.menu.DebugLevel.info.build.code_debug=3 -honeylemon.menu.DebugLevel.debug=Debug -honeylemon.menu.DebugLevel.debug.build.code_debug=4 -honeylemon.menu.DebugLevel.verbose=Verbose -honeylemon.menu.DebugLevel.verbose.build.code_debug=5 - -honeylemon.menu.EraseFlash.none=Disabled -honeylemon.menu.EraseFlash.none.upload.erase_cmd= -honeylemon.menu.EraseFlash.all=Enabled -honeylemon.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -mgbot-iotik32a.name=MGBOT IOTIK 32A - -mgbot-iotik32a.bootloader.tool=esptool_py -mgbot-iotik32a.bootloader.tool.default=esptool_py - -mgbot-iotik32a.upload.tool=esptool_py -mgbot-iotik32a.upload.tool.default=esptool_py -mgbot-iotik32a.upload.tool.network=esp_ota - -mgbot-iotik32a.upload.maximum_size=1310720 -mgbot-iotik32a.upload.maximum_data_size=327680 -mgbot-iotik32a.upload.flags= -mgbot-iotik32a.upload.extra_flags= - -mgbot-iotik32a.serial.disableDTR=true -mgbot-iotik32a.serial.disableRTS=true - -mgbot-iotik32a.build.tarch=xtensa -mgbot-iotik32a.build.bootloader_addr=0x1000 -mgbot-iotik32a.build.target=esp32 -mgbot-iotik32a.build.mcu=esp32 -mgbot-iotik32a.build.core=esp32 -mgbot-iotik32a.build.variant=mgbot-iotik32a -mgbot-iotik32a.build.board=MGBOT_IOTIK32A - -mgbot-iotik32a.build.f_cpu=240000000L -mgbot-iotik32a.build.flash_size=4MB -mgbot-iotik32a.build.flash_freq=40m -mgbot-iotik32a.build.flash_mode=dio -mgbot-iotik32a.build.boot=dio -mgbot-iotik32a.build.partitions=default -mgbot-iotik32a.build.defines= - -mgbot-iotik32a.menu.PSRAM.disabled=Disabled -mgbot-iotik32a.menu.PSRAM.disabled.build.defines= -mgbot-iotik32a.menu.PSRAM.disabled.build.extra_libs= -mgbot-iotik32a.menu.PSRAM.enabled=Enabled -mgbot-iotik32a.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -mgbot-iotik32a.menu.PSRAM.enabled.build.extra_libs= - -mgbot-iotik32a.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.default.build.partitions=default -mgbot-iotik32a.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -mgbot-iotik32a.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -mgbot-iotik32a.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -mgbot-iotik32a.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -mgbot-iotik32a.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.minimal.build.partitions=minimal -mgbot-iotik32a.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.no_ota.build.partitions=no_ota -mgbot-iotik32a.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -mgbot-iotik32a.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -mgbot-iotik32a.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -mgbot-iotik32a.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -mgbot-iotik32a.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -mgbot-iotik32a.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -mgbot-iotik32a.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -mgbot-iotik32a.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -mgbot-iotik32a.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -mgbot-iotik32a.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.huge_app.build.partitions=huge_app -mgbot-iotik32a.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -mgbot-iotik32a.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -mgbot-iotik32a.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -mgbot-iotik32a.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -mgbot-iotik32a.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -mgbot-iotik32a.menu.PartitionScheme.fatflash.build.partitions=ffat -mgbot-iotik32a.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -mgbot-iotik32a.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -mgbot-iotik32a.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -mgbot-iotik32a.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -mgbot-iotik32a.menu.CPUFreq.240=240MHz (WiFi/BT) -mgbot-iotik32a.menu.CPUFreq.240.build.f_cpu=240000000L -mgbot-iotik32a.menu.CPUFreq.160=160MHz (WiFi/BT) -mgbot-iotik32a.menu.CPUFreq.160.build.f_cpu=160000000L -mgbot-iotik32a.menu.CPUFreq.80=80MHz (WiFi/BT) -mgbot-iotik32a.menu.CPUFreq.80.build.f_cpu=80000000L -mgbot-iotik32a.menu.CPUFreq.40=40MHz (40MHz XTAL) -mgbot-iotik32a.menu.CPUFreq.40.build.f_cpu=40000000L -mgbot-iotik32a.menu.CPUFreq.26=26MHz (26MHz XTAL) -mgbot-iotik32a.menu.CPUFreq.26.build.f_cpu=26000000L -mgbot-iotik32a.menu.CPUFreq.20=20MHz (40MHz XTAL) -mgbot-iotik32a.menu.CPUFreq.20.build.f_cpu=20000000L -mgbot-iotik32a.menu.CPUFreq.13=13MHz (26MHz XTAL) -mgbot-iotik32a.menu.CPUFreq.13.build.f_cpu=13000000L -mgbot-iotik32a.menu.CPUFreq.10=10MHz (40MHz XTAL) -mgbot-iotik32a.menu.CPUFreq.10.build.f_cpu=10000000L - -mgbot-iotik32a.menu.FlashMode.qio=QIO -mgbot-iotik32a.menu.FlashMode.qio.build.flash_mode=dio -mgbot-iotik32a.menu.FlashMode.qio.build.boot=qio -mgbot-iotik32a.menu.FlashMode.dio=DIO -mgbot-iotik32a.menu.FlashMode.dio.build.flash_mode=dio -mgbot-iotik32a.menu.FlashMode.dio.build.boot=dio - -mgbot-iotik32a.menu.FlashFreq.80=80MHz -mgbot-iotik32a.menu.FlashFreq.80.build.flash_freq=80m -mgbot-iotik32a.menu.FlashFreq.40=40MHz -mgbot-iotik32a.menu.FlashFreq.40.build.flash_freq=40m - -mgbot-iotik32a.menu.FlashSize.4M=4MB (32Mb) -mgbot-iotik32a.menu.FlashSize.4M.build.flash_size=4MB -mgbot-iotik32a.menu.FlashSize.8M=8MB (64Mb) -mgbot-iotik32a.menu.FlashSize.8M.build.flash_size=8MB -mgbot-iotik32a.menu.FlashSize.8M.build.partitions=default_8MB -mgbot-iotik32a.menu.FlashSize.2M=2MB (16Mb) -mgbot-iotik32a.menu.FlashSize.2M.build.flash_size=2MB -mgbot-iotik32a.menu.FlashSize.2M.build.partitions=minimal -mgbot-iotik32a.menu.FlashSize.16M=16MB (128Mb) -mgbot-iotik32a.menu.FlashSize.16M.build.flash_size=16MB - -mgbot-iotik32a.menu.UploadSpeed.921600=921600 -mgbot-iotik32a.menu.UploadSpeed.921600.upload.speed=921600 -mgbot-iotik32a.menu.UploadSpeed.115200=115200 -mgbot-iotik32a.menu.UploadSpeed.115200.upload.speed=115200 -mgbot-iotik32a.menu.UploadSpeed.256000.windows=256000 -mgbot-iotik32a.menu.UploadSpeed.256000.upload.speed=256000 -mgbot-iotik32a.menu.UploadSpeed.230400.windows.upload.speed=256000 -mgbot-iotik32a.menu.UploadSpeed.230400=230400 -mgbot-iotik32a.menu.UploadSpeed.230400.upload.speed=230400 -mgbot-iotik32a.menu.UploadSpeed.460800.linux=460800 -mgbot-iotik32a.menu.UploadSpeed.460800.macosx=460800 -mgbot-iotik32a.menu.UploadSpeed.460800.upload.speed=460800 -mgbot-iotik32a.menu.UploadSpeed.512000.windows=512000 -mgbot-iotik32a.menu.UploadSpeed.512000.upload.speed=512000 - -mgbot-iotik32a.menu.DebugLevel.none=None -mgbot-iotik32a.menu.DebugLevel.none.build.code_debug=0 -mgbot-iotik32a.menu.DebugLevel.error=Error -mgbot-iotik32a.menu.DebugLevel.error.build.code_debug=1 -mgbot-iotik32a.menu.DebugLevel.warn=Warn -mgbot-iotik32a.menu.DebugLevel.warn.build.code_debug=2 -mgbot-iotik32a.menu.DebugLevel.info=Info -mgbot-iotik32a.menu.DebugLevel.info.build.code_debug=3 -mgbot-iotik32a.menu.DebugLevel.debug=Debug -mgbot-iotik32a.menu.DebugLevel.debug.build.code_debug=4 -mgbot-iotik32a.menu.DebugLevel.verbose=Verbose -mgbot-iotik32a.menu.DebugLevel.verbose.build.code_debug=5 - -mgbot-iotik32a.menu.EraseFlash.none=Disabled -mgbot-iotik32a.menu.EraseFlash.none.upload.erase_cmd= -mgbot-iotik32a.menu.EraseFlash.all=Enabled -mgbot-iotik32a.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -mgbot-iotik32b.name=MGBOT IOTIK 32B - -mgbot-iotik32b.bootloader.tool=esptool_py -mgbot-iotik32b.bootloader.tool.default=esptool_py - -mgbot-iotik32b.upload.tool=esptool_py -mgbot-iotik32b.upload.tool.default=esptool_py -mgbot-iotik32b.upload.tool.network=esp_ota - -mgbot-iotik32b.upload.maximum_size=1310720 -mgbot-iotik32b.upload.maximum_data_size=327680 -mgbot-iotik32b.upload.flags= -mgbot-iotik32b.upload.extra_flags= - -mgbot-iotik32b.serial.disableDTR=true -mgbot-iotik32b.serial.disableRTS=true - -mgbot-iotik32b.build.tarch=xtensa -mgbot-iotik32b.build.bootloader_addr=0x1000 -mgbot-iotik32b.build.target=esp32 -mgbot-iotik32b.build.mcu=esp32 -mgbot-iotik32b.build.core=esp32 -mgbot-iotik32b.build.variant=mgbot-iotik32b -mgbot-iotik32b.build.board=MGBOT_IOTIK32B - -mgbot-iotik32b.build.f_cpu=240000000L -mgbot-iotik32b.build.flash_size=4MB -mgbot-iotik32b.build.flash_freq=40m -mgbot-iotik32b.build.flash_mode=dio -mgbot-iotik32b.build.boot=dio -mgbot-iotik32b.build.partitions=default -mgbot-iotik32b.build.defines= - -mgbot-iotik32b.menu.PSRAM.disabled=Disabled -mgbot-iotik32b.menu.PSRAM.disabled.build.defines= -mgbot-iotik32b.menu.PSRAM.disabled.build.extra_libs= -mgbot-iotik32b.menu.PSRAM.enabled=Enabled -mgbot-iotik32b.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -mgbot-iotik32b.menu.PSRAM.enabled.build.extra_libs= - -mgbot-iotik32b.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.default.build.partitions=default -mgbot-iotik32b.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -mgbot-iotik32b.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -mgbot-iotik32b.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -mgbot-iotik32b.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -mgbot-iotik32b.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.minimal.build.partitions=minimal -mgbot-iotik32b.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.no_ota.build.partitions=no_ota -mgbot-iotik32b.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -mgbot-iotik32b.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -mgbot-iotik32b.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -mgbot-iotik32b.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -mgbot-iotik32b.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -mgbot-iotik32b.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -mgbot-iotik32b.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -mgbot-iotik32b.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -mgbot-iotik32b.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -mgbot-iotik32b.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.huge_app.build.partitions=huge_app -mgbot-iotik32b.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -mgbot-iotik32b.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -mgbot-iotik32b.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -mgbot-iotik32b.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -mgbot-iotik32b.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -mgbot-iotik32b.menu.PartitionScheme.fatflash.build.partitions=ffat -mgbot-iotik32b.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -mgbot-iotik32b.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -mgbot-iotik32b.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -mgbot-iotik32b.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -mgbot-iotik32b.menu.CPUFreq.240=240MHz (WiFi/BT) -mgbot-iotik32b.menu.CPUFreq.240.build.f_cpu=240000000L -mgbot-iotik32b.menu.CPUFreq.160=160MHz (WiFi/BT) -mgbot-iotik32b.menu.CPUFreq.160.build.f_cpu=160000000L -mgbot-iotik32b.menu.CPUFreq.80=80MHz (WiFi/BT) -mgbot-iotik32b.menu.CPUFreq.80.build.f_cpu=80000000L -mgbot-iotik32b.menu.CPUFreq.40=40MHz (40MHz XTAL) -mgbot-iotik32b.menu.CPUFreq.40.build.f_cpu=40000000L -mgbot-iotik32b.menu.CPUFreq.26=26MHz (26MHz XTAL) -mgbot-iotik32b.menu.CPUFreq.26.build.f_cpu=26000000L -mgbot-iotik32b.menu.CPUFreq.20=20MHz (40MHz XTAL) -mgbot-iotik32b.menu.CPUFreq.20.build.f_cpu=20000000L -mgbot-iotik32b.menu.CPUFreq.13=13MHz (26MHz XTAL) -mgbot-iotik32b.menu.CPUFreq.13.build.f_cpu=13000000L -mgbot-iotik32b.menu.CPUFreq.10=10MHz (40MHz XTAL) -mgbot-iotik32b.menu.CPUFreq.10.build.f_cpu=10000000L - -mgbot-iotik32b.menu.FlashMode.qio=QIO -mgbot-iotik32b.menu.FlashMode.qio.build.flash_mode=dio -mgbot-iotik32b.menu.FlashMode.qio.build.boot=qio -mgbot-iotik32b.menu.FlashMode.dio=DIO -mgbot-iotik32b.menu.FlashMode.dio.build.flash_mode=dio -mgbot-iotik32b.menu.FlashMode.dio.build.boot=dio - -mgbot-iotik32b.menu.FlashFreq.80=80MHz -mgbot-iotik32b.menu.FlashFreq.80.build.flash_freq=80m -mgbot-iotik32b.menu.FlashFreq.40=40MHz -mgbot-iotik32b.menu.FlashFreq.40.build.flash_freq=40m - -mgbot-iotik32b.menu.FlashSize.4M=4MB (32Mb) -mgbot-iotik32b.menu.FlashSize.4M.build.flash_size=4MB -mgbot-iotik32b.menu.FlashSize.8M=8MB (64Mb) -mgbot-iotik32b.menu.FlashSize.8M.build.flash_size=8MB -mgbot-iotik32b.menu.FlashSize.8M.build.partitions=default_8MB -mgbot-iotik32b.menu.FlashSize.2M=2MB (16Mb) -mgbot-iotik32b.menu.FlashSize.2M.build.flash_size=2MB -mgbot-iotik32b.menu.FlashSize.2M.build.partitions=minimal -mgbot-iotik32b.menu.FlashSize.16M=16MB (128Mb) -mgbot-iotik32b.menu.FlashSize.16M.build.flash_size=16MB - -mgbot-iotik32b.menu.UploadSpeed.921600=921600 -mgbot-iotik32b.menu.UploadSpeed.921600.upload.speed=921600 -mgbot-iotik32b.menu.UploadSpeed.115200=115200 -mgbot-iotik32b.menu.UploadSpeed.115200.upload.speed=115200 -mgbot-iotik32b.menu.UploadSpeed.256000.windows=256000 -mgbot-iotik32b.menu.UploadSpeed.256000.upload.speed=256000 -mgbot-iotik32b.menu.UploadSpeed.230400.windows.upload.speed=256000 -mgbot-iotik32b.menu.UploadSpeed.230400=230400 -mgbot-iotik32b.menu.UploadSpeed.230400.upload.speed=230400 -mgbot-iotik32b.menu.UploadSpeed.460800.linux=460800 -mgbot-iotik32b.menu.UploadSpeed.460800.macosx=460800 -mgbot-iotik32b.menu.UploadSpeed.460800.upload.speed=460800 -mgbot-iotik32b.menu.UploadSpeed.512000.windows=512000 -mgbot-iotik32b.menu.UploadSpeed.512000.upload.speed=512000 - -mgbot-iotik32b.menu.DebugLevel.none=None -mgbot-iotik32b.menu.DebugLevel.none.build.code_debug=0 -mgbot-iotik32b.menu.DebugLevel.error=Error -mgbot-iotik32b.menu.DebugLevel.error.build.code_debug=1 -mgbot-iotik32b.menu.DebugLevel.warn=Warn -mgbot-iotik32b.menu.DebugLevel.warn.build.code_debug=2 -mgbot-iotik32b.menu.DebugLevel.info=Info -mgbot-iotik32b.menu.DebugLevel.info.build.code_debug=3 -mgbot-iotik32b.menu.DebugLevel.debug=Debug -mgbot-iotik32b.menu.DebugLevel.debug.build.code_debug=4 -mgbot-iotik32b.menu.DebugLevel.verbose=Verbose -mgbot-iotik32b.menu.DebugLevel.verbose.build.code_debug=5 - -mgbot-iotik32b.menu.EraseFlash.none=Disabled -mgbot-iotik32b.menu.EraseFlash.none.upload.erase_cmd= -mgbot-iotik32b.menu.EraseFlash.all=Enabled -mgbot-iotik32b.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -piranha_esp-32.name=Piranha ESP-32 - -piranha_esp-32.bootloader.tool=esptool_py -piranha_esp-32.bootloader.tool.default=esptool_py - -piranha_esp-32.upload.tool=esptool_py -piranha_esp-32.upload.tool.default=esptool_py -piranha_esp-32.upload.tool.network=esp_ota - -piranha_esp-32.upload.maximum_size=1310720 -piranha_esp-32.upload.maximum_data_size=327680 -piranha_esp-32.upload.flags= -piranha_esp-32.upload.extra_flags= - -piranha_esp-32.serial.disableDTR=true -piranha_esp-32.serial.disableRTS=true - -piranha_esp-32.build.tarch=xtensa -piranha_esp-32.build.bootloader_addr=0x1000 -piranha_esp-32.build.target=esp32 -piranha_esp-32.build.mcu=esp32 -piranha_esp-32.build.core=esp32 -piranha_esp-32.build.variant=piranha_esp-32 -piranha_esp-32.build.board=Piranha - -piranha_esp-32.build.f_cpu=240000000L -piranha_esp-32.build.flash_mode=dio -piranha_esp-32.build.flash_size=4MB -piranha_esp-32.build.boot=dio -piranha_esp-32.build.partitions=default -piranha_esp-32.build.defines= - -piranha_esp-32.menu.PartitionScheme.default=Default -piranha_esp-32.menu.PartitionScheme.default.build.partitions=default -piranha_esp-32.menu.PartitionScheme.no_ota=No OTA (Large APP) -piranha_esp-32.menu.PartitionScheme.no_ota.build.partitions=no_ota -piranha_esp-32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -piranha_esp-32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -piranha_esp-32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -piranha_esp-32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -piranha_esp-32.menu.FlashFreq.80=80MHz -piranha_esp-32.menu.FlashFreq.80.build.flash_freq=80m -piranha_esp-32.menu.FlashFreq.40=40MHz -piranha_esp-32.menu.FlashFreq.40.build.flash_freq=40m - -piranha_esp-32.menu.UploadSpeed.921600=921600 -piranha_esp-32.menu.UploadSpeed.921600.upload.speed=921600 -piranha_esp-32.menu.UploadSpeed.115200=115200 -piranha_esp-32.menu.UploadSpeed.115200.upload.speed=115200 -piranha_esp-32.menu.UploadSpeed.256000.windows=256000 -piranha_esp-32.menu.UploadSpeed.256000.upload.speed=256000 -piranha_esp-32.menu.UploadSpeed.230400.windows.upload.speed=256000 -piranha_esp-32.menu.UploadSpeed.230400=230400 -piranha_esp-32.menu.UploadSpeed.230400.upload.speed=230400 -piranha_esp-32.menu.UploadSpeed.460800.linux=460800 -piranha_esp-32.menu.UploadSpeed.460800.macosx=460800 -piranha_esp-32.menu.UploadSpeed.460800.upload.speed=460800 -piranha_esp-32.menu.UploadSpeed.512000.windows=512000 -piranha_esp-32.menu.UploadSpeed.512000.upload.speed=512000 - -piranha_esp-32.menu.DebugLevel.none=None -piranha_esp-32.menu.DebugLevel.none.build.code_debug=0 -piranha_esp-32.menu.DebugLevel.error=Error -piranha_esp-32.menu.DebugLevel.error.build.code_debug=1 -piranha_esp-32.menu.DebugLevel.warn=Warn -piranha_esp-32.menu.DebugLevel.warn.build.code_debug=2 -piranha_esp-32.menu.DebugLevel.info=Info -piranha_esp-32.menu.DebugLevel.info.build.code_debug=3 -piranha_esp-32.menu.DebugLevel.debug=Debug -piranha_esp-32.menu.DebugLevel.debug.build.code_debug=4 -piranha_esp-32.menu.DebugLevel.verbose=Verbose -piranha_esp-32.menu.DebugLevel.verbose.build.code_debug=5 - -piranha_esp-32.menu.EraseFlash.none=Disabled -piranha_esp-32.menu.EraseFlash.none.upload.erase_cmd= -piranha_esp-32.menu.EraseFlash.all=Enabled -piranha_esp-32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -metro_esp-32.name=Metro ESP-32 - -metro_esp-32.bootloader.tool=esptool_py -metro_esp-32.bootloader.tool.default=esptool_py - -metro_esp-32.upload.tool=esptool_py -metro_esp-32.upload.tool.default=esptool_py -metro_esp-32.upload.tool.network=esp_ota - -metro_esp-32.upload.maximum_size=1310720 -metro_esp-32.upload.maximum_data_size=327680 -metro_esp-32.upload.flags= -metro_esp-32.upload.extra_flags= - -metro_esp-32.serial.disableDTR=true -metro_esp-32.serial.disableRTS=true - -metro_esp-32.build.tarch=xtensa -metro_esp-32.build.bootloader_addr=0x1000 -metro_esp-32.build.target=esp32 -metro_esp-32.build.mcu=esp32 -metro_esp-32.build.core=esp32 -metro_esp-32.build.variant=metro_esp-32 -metro_esp-32.build.board=Metro - -metro_esp-32.build.f_cpu=240000000L -metro_esp-32.build.flash_mode=dio -metro_esp-32.build.flash_size=4MB -metro_esp-32.build.boot=dio -metro_esp-32.build.partitions=default -metro_esp-32.build.defines= - -metro_esp-32.menu.PartitionScheme.default=Default -metro_esp-32.menu.PartitionScheme.default.build.partitions=default -metro_esp-32.menu.PartitionScheme.no_ota=No OTA (Large APP) -metro_esp-32.menu.PartitionScheme.no_ota.build.partitions=no_ota -metro_esp-32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -metro_esp-32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -metro_esp-32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -metro_esp-32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -metro_esp-32.menu.FlashFreq.80=80MHz -metro_esp-32.menu.FlashFreq.80.build.flash_freq=80m -metro_esp-32.menu.FlashFreq.40=40MHz -metro_esp-32.menu.FlashFreq.40.build.flash_freq=40m - -metro_esp-32.menu.UploadSpeed.921600=921600 -metro_esp-32.menu.UploadSpeed.921600.upload.speed=921600 -metro_esp-32.menu.UploadSpeed.115200=115200 -metro_esp-32.menu.UploadSpeed.115200.upload.speed=115200 -metro_esp-32.menu.UploadSpeed.256000.windows=256000 -metro_esp-32.menu.UploadSpeed.256000.upload.speed=256000 -metro_esp-32.menu.UploadSpeed.230400.windows.upload.speed=256000 -metro_esp-32.menu.UploadSpeed.230400=230400 -metro_esp-32.menu.UploadSpeed.230400.upload.speed=230400 -metro_esp-32.menu.UploadSpeed.460800.linux=460800 -metro_esp-32.menu.UploadSpeed.460800.macosx=460800 -metro_esp-32.menu.UploadSpeed.460800.upload.speed=460800 -metro_esp-32.menu.UploadSpeed.512000.windows=512000 -metro_esp-32.menu.UploadSpeed.512000.upload.speed=512000 - -metro_esp-32.menu.DebugLevel.none=None -metro_esp-32.menu.DebugLevel.none.build.code_debug=0 -metro_esp-32.menu.DebugLevel.error=Error -metro_esp-32.menu.DebugLevel.error.build.code_debug=1 -metro_esp-32.menu.DebugLevel.warn=Warn -metro_esp-32.menu.DebugLevel.warn.build.code_debug=2 -metro_esp-32.menu.DebugLevel.info=Info -metro_esp-32.menu.DebugLevel.info.build.code_debug=3 -metro_esp-32.menu.DebugLevel.debug=Debug -metro_esp-32.menu.DebugLevel.debug.build.code_debug=4 -metro_esp-32.menu.DebugLevel.verbose=Verbose -metro_esp-32.menu.DebugLevel.verbose.build.code_debug=5 - -metro_esp-32.menu.EraseFlash.none=Disabled -metro_esp-32.menu.EraseFlash.none.upload.erase_cmd= -metro_esp-32.menu.EraseFlash.all=Enabled -metro_esp-32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sensesiot_weizen.name=Senses's WEIZEN - -sensesiot_weizen.bootloader.tool=esptool_py -sensesiot_weizen.bootloader.tool.default=esptool_py - -sensesiot_weizen.upload.tool=esptool_py -sensesiot_weizen.upload.tool.default=esptool_py -sensesiot_weizen.upload.tool.network=esp_ota - -sensesiot_weizen.upload.maximum_size=1310720 -sensesiot_weizen.upload.maximum_data_size=327680 -sensesiot_weizen.upload.flags= -sensesiot_weizen.upload.extra_flags= - -sensesiot_weizen.serial.disableDTR=true -sensesiot_weizen.serial.disableRTS=true - -sensesiot_weizen.build.tarch=xtensa -sensesiot_weizen.build.bootloader_addr=0x1000 -sensesiot_weizen.build.target=esp32 -sensesiot_weizen.build.mcu=esp32 -sensesiot_weizen.build.core=esp32 -sensesiot_weizen.build.variant=esp32 -sensesiot_weizen.build.board=sensesiot_weizen - -sensesiot_weizen.build.f_cpu=240000000L -sensesiot_weizen.build.flash_mode=dio -sensesiot_weizen.build.flash_size=4MB -sensesiot_weizen.build.boot=dio -sensesiot_weizen.build.partitions=default -sensesiot_weizen.build.defines= - -sensesiot_weizen.menu.FlashFreq.80=80MHz -sensesiot_weizen.menu.FlashFreq.80.build.flash_freq=80m -sensesiot_weizen.menu.FlashFreq.40=40MHz -sensesiot_weizen.menu.FlashFreq.40.build.flash_freq=40m - -sensesiot_weizen.menu.UploadSpeed.921600=921600 -sensesiot_weizen.menu.UploadSpeed.921600.upload.speed=921600 -sensesiot_weizen.menu.UploadSpeed.115200=115200 -sensesiot_weizen.menu.UploadSpeed.115200.upload.speed=115200 -sensesiot_weizen.menu.UploadSpeed.256000.windows=256000 -sensesiot_weizen.menu.UploadSpeed.256000.upload.speed=256000 -sensesiot_weizen.menu.UploadSpeed.230400.windows.upload.speed=256000 -sensesiot_weizen.menu.UploadSpeed.230400=230400 -sensesiot_weizen.menu.UploadSpeed.230400.upload.speed=230400 -sensesiot_weizen.menu.UploadSpeed.460800.linux=460800 -sensesiot_weizen.menu.UploadSpeed.460800.macosx=460800 -sensesiot_weizen.menu.UploadSpeed.460800.upload.speed=460800 -sensesiot_weizen.menu.UploadSpeed.512000.windows=512000 -sensesiot_weizen.menu.UploadSpeed.512000.upload.speed=512000 - -sensesiot_weizen.menu.DebugLevel.none=None -sensesiot_weizen.menu.DebugLevel.none.build.code_debug=0 -sensesiot_weizen.menu.DebugLevel.error=Error -sensesiot_weizen.menu.DebugLevel.error.build.code_debug=1 -sensesiot_weizen.menu.DebugLevel.warn=Warn -sensesiot_weizen.menu.DebugLevel.warn.build.code_debug=2 -sensesiot_weizen.menu.DebugLevel.info=Info -sensesiot_weizen.menu.DebugLevel.info.build.code_debug=3 -sensesiot_weizen.menu.DebugLevel.debug=Debug -sensesiot_weizen.menu.DebugLevel.debug.build.code_debug=4 -sensesiot_weizen.menu.DebugLevel.verbose=Verbose -sensesiot_weizen.menu.DebugLevel.verbose.build.code_debug=5 - -sensesiot_weizen.menu.EraseFlash.none=Disabled -sensesiot_weizen.menu.EraseFlash.none.upload.erase_cmd= -sensesiot_weizen.menu.EraseFlash.all=Enabled -sensesiot_weizen.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -kits-edu.name=KITS ESP32 EDU - -kits-edu.bootloader.tool=esptool_py -kits-edu.bootloader.tool.default=esptool_py - -kits-edu.upload.tool=esptool_py -kits-edu.upload.tool.default=esptool_py -kits-edu.upload.tool.network=esp_ota - -kits-edu.upload.maximum_size=1310720 -kits-edu.upload.maximum_data_size=327680 -kits-edu.upload.wait_for_upload_port=true -kits-edu.upload.flags= -kits-edu.upload.extra_flags= - -kits-edu.serial.disableDTR=true -kits-edu.serial.disableRTS=true - -kits-edu.build.tarch=xtensa -kits-edu.build.bootloader_addr=0x1000 -kits-edu.build.target=esp32 -kits-edu.build.mcu=esp32 -kits-edu.build.core=esp32 -kits-edu.build.variant=pico32 -kits-edu.build.board=ESP32_PICO - -kits-edu.build.f_cpu=240000000L -kits-edu.build.flash_size=4MB -kits-edu.build.flash_freq=80m -kits-edu.build.flash_mode=dio -kits-edu.build.boot=dio -kits-edu.build.partitions=default -kits-edu.build.defines= - -kits-edu.menu.PartitionScheme.default=Default -kits-edu.menu.PartitionScheme.default.build.partitions=default -kits-edu.menu.PartitionScheme.no_ota=No OTA (Large APP) -kits-edu.menu.PartitionScheme.no_ota.build.partitions=no_ota -kits-edu.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -kits-edu.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -kits-edu.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -kits-edu.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -kits-edu.menu.UploadSpeed.921600=921600 -kits-edu.menu.UploadSpeed.921600.upload.speed=921600 -kits-edu.menu.UploadSpeed.115200=115200 -kits-edu.menu.UploadSpeed.115200.upload.speed=115200 -kits-edu.menu.UploadSpeed.256000.windows=256000 -kits-edu.menu.UploadSpeed.256000.upload.speed=256000 -kits-edu.menu.UploadSpeed.230400.windows.upload.speed=256000 -kits-edu.menu.UploadSpeed.230400=230400 -kits-edu.menu.UploadSpeed.230400.upload.speed=230400 -kits-edu.menu.UploadSpeed.460800.linux=460800 -kits-edu.menu.UploadSpeed.460800.macosx=460800 -kits-edu.menu.UploadSpeed.460800.upload.speed=460800 -kits-edu.menu.UploadSpeed.512000.windows=512000 -kits-edu.menu.UploadSpeed.512000.upload.speed=512000 - -kits-edu.menu.DebugLevel.none=None -kits-edu.menu.DebugLevel.none.build.code_debug=0 -kits-edu.menu.DebugLevel.error=Error -kits-edu.menu.DebugLevel.error.build.code_debug=1 -kits-edu.menu.DebugLevel.warn=Warn -kits-edu.menu.DebugLevel.warn.build.code_debug=2 -kits-edu.menu.DebugLevel.info=Info -kits-edu.menu.DebugLevel.info.build.code_debug=3 -kits-edu.menu.DebugLevel.debug=Debug -kits-edu.menu.DebugLevel.debug.build.code_debug=4 -kits-edu.menu.DebugLevel.verbose=Verbose -kits-edu.menu.DebugLevel.verbose.build.code_debug=5 - -kits-edu.menu.EraseFlash.none=Disabled -kits-edu.menu.EraseFlash.none.upload.erase_cmd= -kits-edu.menu.EraseFlash.all=Enabled -kits-edu.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -mPython.name=Labplus mPython -mPython.bootloader.tool=esptool_py -mPython.bootloader.tool.default=esptool_py - -mPython.upload.tool=esptool_py -mPython.upload.tool.default=esptool_py -mPython.upload.tool.network=esp_ota - -mPython.upload.maximum_size=1310720 -mPython.upload.maximum_data_size=327680 -mPython.upload.flags= -mPython.upload.extra_flags= - -mPython.serial.disableDTR=true -mPython.serial.disableRTS=true - -mPython.build.tarch=xtensa -mPython.build.bootloader_addr=0x1000 -mPython.build.target=esp32 -mPython.build.mcu=esp32 -mPython.build.core=esp32 -mPython.build.variant=mpython -mPython.build.board=ESP32_DEV - -mPython.build.f_cpu=240000000L -mPython.build.flash_size=8MB -mPython.build.flash_freq=40m -mPython.build.flash_mode=dio -mPython.build.boot=dio -mPython.build.partitions=huge_app -mPython.build.defines= - -mPython.menu.PSRAM.disabled=Disabled -mPython.menu.PSRAM.disabled.build.defines= -mPython.menu.PSRAM.disabled.build.extra_libs= -mPython.menu.PSRAM.enabled=Enabled -mPython.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -mPython.menu.PSRAM.enabled.build.extra_libs= - -mPython.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -mPython.menu.PartitionScheme.huge_app.build.partitions=huge_app -mPython.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -mPython.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -mPython.menu.PartitionScheme.default.build.partitions=default -mPython.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -mPython.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -mPython.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -mPython.menu.PartitionScheme.minimal.build.partitions=minimal -mPython.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -mPython.menu.PartitionScheme.no_ota.build.partitions=no_ota -mPython.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -mPython.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -mPython.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -mPython.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -mPython.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -mPython.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -mPython.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -mPython.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -mPython.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -mPython.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -mPython.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -mPython.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -mPython.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -mPython.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -mPython.menu.PartitionScheme.fatflash.build.partitions=ffat - -mPython.menu.CPUFreq.240=240MHz (WiFi/BT) -mPython.menu.CPUFreq.240.build.f_cpu=240000000L - -mPython.menu.FlashMode.qio=QIO -mPython.menu.FlashMode.qio.build.flash_mode=dio -mPython.menu.FlashMode.qio.build.boot=qio -mPython.menu.FlashMode.dio=DIO -mPython.menu.FlashMode.dio.build.flash_mode=dio -mPython.menu.FlashMode.dio.build.boot=dio - -mPython.menu.FlashFreq.80=80MHz -mPython.menu.FlashFreq.80.build.flash_freq=80m -mPython.menu.FlashFreq.40=40MHz -mPython.menu.FlashFreq.40.build.flash_freq=40m - -mPython.menu.FlashSize.8M=8MB (64Mb) -mPython.menu.FlashSize.8M.build.flash_size=8MB - -mPython.menu.UploadSpeed.921600=921600 -mPython.menu.UploadSpeed.921600.upload.speed=921600 -mPython.menu.UploadSpeed.115200=115200 -mPython.menu.UploadSpeed.115200.upload.speed=115200 -mPython.menu.UploadSpeed.256000.windows=256000 -mPython.menu.UploadSpeed.256000.upload.speed=256000 -mPython.menu.UploadSpeed.230400.windows.upload.speed=256000 -mPython.menu.UploadSpeed.230400=230400 -mPython.menu.UploadSpeed.230400.upload.speed=230400 -mPython.menu.UploadSpeed.460800.linux=460800 -mPython.menu.UploadSpeed.460800.macosx=460800 -mPython.menu.UploadSpeed.460800.upload.speed=460800 -mPython.menu.UploadSpeed.512000.windows=512000 -mPython.menu.UploadSpeed.512000.upload.speed=512000 - -mPython.menu.DebugLevel.none=None -mPython.menu.DebugLevel.none.build.code_debug=0 -mPython.menu.DebugLevel.error=Error -mPython.menu.DebugLevel.error.build.code_debug=1 -mPython.menu.DebugLevel.warn=Warn -mPython.menu.DebugLevel.warn.build.code_debug=2 -mPython.menu.DebugLevel.info=Info -mPython.menu.DebugLevel.info.build.code_debug=3 -mPython.menu.DebugLevel.debug=Debug -mPython.menu.DebugLevel.debug.build.code_debug=4 -mPython.menu.DebugLevel.verbose=Verbose -mPython.menu.DebugLevel.verbose.build.code_debug=5 - -mPython.menu.EraseFlash.none=Disabled -mPython.menu.EraseFlash.none.upload.erase_cmd= -mPython.menu.EraseFlash.all=Enabled -mPython.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -OpenKB.name=INEX OpenKB - -OpenKB.bootloader.tool=esptool_py -OpenKB.bootloader.tool.default=esptool_py - -OpenKB.upload.tool=esptool_py -OpenKB.upload.tool.default=esptool_py -OpenKB.upload.tool.network=esp_ota - -OpenKB.upload.maximum_size=1310720 -OpenKB.upload.maximum_data_size=327680 -OpenKB.upload.wait_for_upload_port=true -OpenKB.upload.flags= -OpenKB.upload.extra_flags= - -OpenKB.serial.disableDTR=true -OpenKB.serial.disableRTS=true - -OpenKB.build.tarch=xtensa -OpenKB.build.bootloader_addr=0x1000 -OpenKB.build.target=esp32 -OpenKB.build.mcu=esp32 -OpenKB.build.core=esp32 -OpenKB.build.variant=openkb -OpenKB.build.board=openkb - -OpenKB.build.f_cpu=240000000L -OpenKB.build.flash_mode=dio -OpenKB.build.flash_size=4MB -OpenKB.build.boot=dio -OpenKB.build.partitions=default -OpenKB.build.defines= - -OpenKB.menu.FlashFreq.80=80MHz -OpenKB.menu.FlashFreq.80.build.flash_freq=80m -OpenKB.menu.FlashFreq.40=40MHz -OpenKB.menu.FlashFreq.40.build.flash_freq=40m - -OpenKB.menu.UploadSpeed.921600=921600 -OpenKB.menu.UploadSpeed.921600.upload.speed=921600 -OpenKB.menu.UploadSpeed.115200=115200 -OpenKB.menu.UploadSpeed.115200.upload.speed=115200 -OpenKB.menu.UploadSpeed.256000.windows=256000 -OpenKB.menu.UploadSpeed.256000.upload.speed=256000 -OpenKB.menu.UploadSpeed.230400.windows.upload.speed=256000 -OpenKB.menu.UploadSpeed.230400=230400 -OpenKB.menu.UploadSpeed.230400.upload.speed=230400 -OpenKB.menu.UploadSpeed.460800.linux=460800 -OpenKB.menu.UploadSpeed.460800.macosx=460800 -OpenKB.menu.UploadSpeed.460800.upload.speed=460800 -OpenKB.menu.UploadSpeed.512000.windows=512000 -OpenKB.menu.UploadSpeed.512000.upload.speed=512000 - -OpenKB.menu.DebugLevel.none=None -OpenKB.menu.DebugLevel.none.build.code_debug=0 -OpenKB.menu.DebugLevel.error=Error -OpenKB.menu.DebugLevel.error.build.code_debug=1 -OpenKB.menu.DebugLevel.warn=Warn -OpenKB.menu.DebugLevel.warn.build.code_debug=2 -OpenKB.menu.DebugLevel.info=Info -OpenKB.menu.DebugLevel.info.build.code_debug=3 -OpenKB.menu.DebugLevel.debug=Debug -OpenKB.menu.DebugLevel.debug.build.code_debug=4 -OpenKB.menu.DebugLevel.verbose=Verbose -OpenKB.menu.DebugLevel.verbose.build.code_debug=5 - -OpenKB.menu.EraseFlash.none=Disabled -OpenKB.menu.EraseFlash.none.upload.erase_cmd= -OpenKB.menu.EraseFlash.all=Enabled -OpenKB.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wifiduino32.name=WiFiduino32 - -wifiduino32.bootloader.tool=esptool_py -wifiduino32.bootloader.tool.default=esptool_py - -wifiduino32.upload.tool=esptool_py -wifiduino32.upload.tool.default=esptool_py -wifiduino32.upload.tool.network=esp_ota - -wifiduino32.upload.maximum_size=1310720 -wifiduino32.upload.maximum_data_size=327680 -wifiduino32.upload.wait_for_upload_port=true -wifiduino32.upload.flags= -wifiduino32.upload.extra_flags= - -wifiduino32.serial.disableDTR=true -wifiduino32.serial.disableRTS=true - -wifiduino32.build.tarch=xtensa -wifiduino32.build.bootloader_addr=0x1000 -wifiduino32.build.target=esp32 -wifiduino32.build.mcu=esp32 -wifiduino32.build.core=esp32 -wifiduino32.build.variant=wifiduino32 -wifiduino32.build.board=Wifiduino32 - -wifiduino32.build.f_cpu=240000000L -wifiduino32.build.flash_mode=dio -wifiduino32.build.flash_size=4MB -wifiduino32.build.boot=dio -wifiduino32.build.partitions=default -wifiduino32.build.defines= - -wifiduino32.menu.PartitionScheme.default=Default -wifiduino32.menu.PartitionScheme.default.build.partitions=default -wifiduino32.menu.PartitionScheme.no_ota=No OTA (Large APP) -wifiduino32.menu.PartitionScheme.no_ota.build.partitions=no_ota -wifiduino32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -wifiduino32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -wifiduino32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -wifiduino32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -wifiduino32.menu.FlashFreq.80=80MHz -wifiduino32.menu.FlashFreq.80.build.flash_freq=80m -wifiduino32.menu.FlashFreq.40=40MHz -wifiduino32.menu.FlashFreq.40.build.flash_freq=40m - -wifiduino32.menu.UploadSpeed.921600=921600 -wifiduino32.menu.UploadSpeed.921600.upload.speed=921600 -wifiduino32.menu.UploadSpeed.115200=115200 -wifiduino32.menu.UploadSpeed.115200.upload.speed=115200 -wifiduino32.menu.UploadSpeed.256000.windows=256000 -wifiduino32.menu.UploadSpeed.256000.upload.speed=256000 -wifiduino32.menu.UploadSpeed.230400.windows.upload.speed=256000 -wifiduino32.menu.UploadSpeed.230400=230400 -wifiduino32.menu.UploadSpeed.230400.upload.speed=230400 -wifiduino32.menu.UploadSpeed.460800.linux=460800 -wifiduino32.menu.UploadSpeed.460800.macosx=460800 -wifiduino32.menu.UploadSpeed.460800.upload.speed=460800 -wifiduino32.menu.UploadSpeed.512000.windows=512000 -wifiduino32.menu.UploadSpeed.512000.upload.speed=512000 - -wifiduino32.menu.DebugLevel.none=None -wifiduino32.menu.DebugLevel.none.build.code_debug=0 -wifiduino32.menu.DebugLevel.error=Error -wifiduino32.menu.DebugLevel.error.build.code_debug=1 -wifiduino32.menu.DebugLevel.warn=Warn -wifiduino32.menu.DebugLevel.warn.build.code_debug=2 -wifiduino32.menu.DebugLevel.info=Info -wifiduino32.menu.DebugLevel.info.build.code_debug=3 -wifiduino32.menu.DebugLevel.debug=Debug -wifiduino32.menu.DebugLevel.debug.build.code_debug=4 -wifiduino32.menu.DebugLevel.verbose=Verbose -wifiduino32.menu.DebugLevel.verbose.build.code_debug=5 - -wifiduino32.menu.EraseFlash.none=Disabled -wifiduino32.menu.EraseFlash.none.upload.erase_cmd= -wifiduino32.menu.EraseFlash.all=Enabled -wifiduino32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wifiduino32c3.name=WiFiduinoV2 -wifiduino32c3.vid.0=0x303a -wifiduino32c3.pid.0=0x1001 - -wifiduino32c3.bootloader.tool=esptool_py -wifiduino32c3.bootloader.tool.default=esptool_py - -wifiduino32c3.upload.tool=esptool_py -wifiduino32c3.upload.tool.default=esptool_py -wifiduino32c3.upload.tool.network=esp_ota - -wifiduino32c3.upload.maximum_size=1310720 -wifiduino32c3.upload.maximum_data_size=327680 -wifiduino32c3.upload.flags= -wifiduino32c3.upload.extra_flags= -wifiduino32c3.upload.use_1200bps_touch=false -wifiduino32c3.upload.wait_for_upload_port=false - -wifiduino32c3.serial.disableDTR=false -wifiduino32c3.serial.disableRTS=false - -wifiduino32c3.build.tarch=riscv32 -wifiduino32c3.build.target=esp -wifiduino32c3.build.mcu=esp32c3 -wifiduino32c3.build.core=esp32 -wifiduino32c3.build.variant=wifiduinov2 -wifiduino32c3.build.board=WiFiduinoV2 -wifiduino32c3.build.bootloader_addr=0x0 - -wifiduino32c3.build.cdc_on_boot=0 -wifiduino32c3.build.f_cpu=160000000L -wifiduino32c3.build.flash_size=4MB -wifiduino32c3.build.flash_freq=80m -wifiduino32c3.build.flash_mode=qio -wifiduino32c3.build.boot=qio -wifiduino32c3.build.partitions=default -wifiduino32c3.build.defines= - -wifiduino32c3.menu.CDCOnBoot.default=Disabled -wifiduino32c3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -wifiduino32c3.menu.CDCOnBoot.cdc=Enabled -wifiduino32c3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -wifiduino32c3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -wifiduino32c3.menu.PartitionScheme.default.build.partitions=default -wifiduino32c3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -wifiduino32c3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -wifiduino32c3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -wifiduino32c3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -wifiduino32c3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -wifiduino32c3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -wifiduino32c3.menu.PartitionScheme.minimal.build.partitions=minimal -wifiduino32c3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -wifiduino32c3.menu.PartitionScheme.no_ota.build.partitions=no_ota -wifiduino32c3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -wifiduino32c3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -wifiduino32c3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -wifiduino32c3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -wifiduino32c3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -wifiduino32c3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -wifiduino32c3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -wifiduino32c3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -wifiduino32c3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -wifiduino32c3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -wifiduino32c3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -wifiduino32c3.menu.PartitionScheme.huge_app.build.partitions=huge_app -wifiduino32c3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -wifiduino32c3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -wifiduino32c3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -wifiduino32c3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -wifiduino32c3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -wifiduino32c3.menu.PartitionScheme.fatflash.build.partitions=ffat -wifiduino32c3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -wifiduino32c3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -wifiduino32c3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -wifiduino32c3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -wifiduino32c3.menu.PartitionScheme.rainmaker=RainMaker -wifiduino32c3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -wifiduino32c3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -wifiduino32c3.menu.CPUFreq.160=160MHz (WiFi) -wifiduino32c3.menu.CPUFreq.160.build.f_cpu=160000000L -wifiduino32c3.menu.CPUFreq.80=80MHz (WiFi) -wifiduino32c3.menu.CPUFreq.80.build.f_cpu=80000000L -wifiduino32c3.menu.CPUFreq.40=40MHz -wifiduino32c3.menu.CPUFreq.40.build.f_cpu=40000000L -wifiduino32c3.menu.CPUFreq.20=20MHz -wifiduino32c3.menu.CPUFreq.20.build.f_cpu=20000000L -wifiduino32c3.menu.CPUFreq.10=10MHz -wifiduino32c3.menu.CPUFreq.10.build.f_cpu=10000000L - -wifiduino32c3.menu.FlashMode.qio=QIO -wifiduino32c3.menu.FlashMode.qio.build.flash_mode=dio -wifiduino32c3.menu.FlashMode.qio.build.boot=qio -wifiduino32c3.menu.FlashMode.dio=DIO -wifiduino32c3.menu.FlashMode.dio.build.flash_mode=dio -wifiduino32c3.menu.FlashMode.dio.build.boot=dio - -wifiduino32c3.menu.FlashFreq.80=80MHz -wifiduino32c3.menu.FlashFreq.80.build.flash_freq=80m -wifiduino32c3.menu.FlashFreq.40=40MHz -wifiduino32c3.menu.FlashFreq.40.build.flash_freq=40m - -wifiduino32c3.menu.FlashSize.4M=4MB (32Mb) -wifiduino32c3.menu.FlashSize.4M.build.flash_size=4MB -wifiduino32c3.menu.FlashSize.8M=8MB (64Mb) -wifiduino32c3.menu.FlashSize.8M.build.flash_size=8MB -wifiduino32c3.menu.FlashSize.8M.build.partitions=default_8MB -wifiduino32c3.menu.FlashSize.2M=2MB (16Mb) -wifiduino32c3.menu.FlashSize.2M.build.flash_size=2MB -wifiduino32c3.menu.FlashSize.2M.build.partitions=minimal -wifiduino32c3.menu.FlashSize.16M=16MB (128Mb) -wifiduino32c3.menu.FlashSize.16M.build.flash_size=16MB - -wifiduino32c3.menu.UploadSpeed.921600=921600 -wifiduino32c3.menu.UploadSpeed.921600.upload.speed=921600 -wifiduino32c3.menu.UploadSpeed.115200=115200 -wifiduino32c3.menu.UploadSpeed.115200.upload.speed=115200 -wifiduino32c3.menu.UploadSpeed.256000.windows=256000 -wifiduino32c3.menu.UploadSpeed.256000.upload.speed=256000 -wifiduino32c3.menu.UploadSpeed.230400.windows.upload.speed=256000 -wifiduino32c3.menu.UploadSpeed.230400=230400 -wifiduino32c3.menu.UploadSpeed.230400.upload.speed=230400 -wifiduino32c3.menu.UploadSpeed.460800.linux=460800 -wifiduino32c3.menu.UploadSpeed.460800.macosx=460800 -wifiduino32c3.menu.UploadSpeed.460800.upload.speed=460800 -wifiduino32c3.menu.UploadSpeed.512000.windows=512000 -wifiduino32c3.menu.UploadSpeed.512000.upload.speed=512000 - -wifiduino32c3.menu.DebugLevel.none=None -wifiduino32c3.menu.DebugLevel.none.build.code_debug=0 -wifiduino32c3.menu.DebugLevel.error=Error -wifiduino32c3.menu.DebugLevel.error.build.code_debug=1 -wifiduino32c3.menu.DebugLevel.warn=Warn -wifiduino32c3.menu.DebugLevel.warn.build.code_debug=2 -wifiduino32c3.menu.DebugLevel.info=Info -wifiduino32c3.menu.DebugLevel.info.build.code_debug=3 -wifiduino32c3.menu.DebugLevel.debug=Debug -wifiduino32c3.menu.DebugLevel.debug.build.code_debug=4 -wifiduino32c3.menu.DebugLevel.verbose=Verbose -wifiduino32c3.menu.DebugLevel.verbose.build.code_debug=5 - -wifiduino32c3.menu.EraseFlash.none=Disabled -wifiduino32c3.menu.EraseFlash.none.upload.erase_cmd= -wifiduino32c3.menu.EraseFlash.all=Enabled -wifiduino32c3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -wifiduino32s3.name=WiFiduino32S3 -wifiduino32s3.vid.0=0x303a -wifiduino32s3.pid.0=0x1001 - -wifiduino32s3.bootloader.tool=esptool_py -wifiduino32s3.bootloader.tool.default=esptool_py - -wifiduino32s3.upload.tool=esptool_py -wifiduino32s3.upload.tool.default=esptool_py -wifiduino32s3.upload.tool.network=esp_ota - -wifiduino32s3.upload.maximum_size=1310720 -wifiduino32s3.upload.maximum_data_size=327680 -wifiduino32s3.upload.flags= -wifiduino32s3.upload.extra_flags= -wifiduino32s3.upload.use_1200bps_touch=false -wifiduino32s3.upload.wait_for_upload_port=false - -wifiduino32s3.serial.disableDTR=false -wifiduino32s3.serial.disableRTS=false - -wifiduino32s3.build.tarch=xtensa -wifiduino32s3.build.bootloader_addr=0x0 -wifiduino32s3.build.target=esp32s3 -wifiduino32s3.build.mcu=esp32s3 -wifiduino32s3.build.core=esp32 -wifiduino32s3.build.variant=wifiduino32s3 -wifiduino32s3.build.board=WiFiduino32S3 - -wifiduino32s3.build.usb_mode=1 -wifiduino32s3.build.cdc_on_boot=0 -wifiduino32s3.build.msc_on_boot=0 -wifiduino32s3.build.dfu_on_boot=0 -wifiduino32s3.build.f_cpu=240000000L -wifiduino32s3.build.flash_size=4MB -wifiduino32s3.build.flash_freq=80m -wifiduino32s3.build.flash_mode=dio -wifiduino32s3.build.boot=qio -wifiduino32s3.build.boot_freq=80m -wifiduino32s3.build.partitions=default -wifiduino32s3.build.defines= -wifiduino32s3.build.loop_core= -wifiduino32s3.build.event_core= -wifiduino32s3.build.psram_type=qspi -wifiduino32s3.build.memory_type={build.boot}_{build.psram_type} - -wifiduino32s3.menu.PSRAM.disabled=Disabled -wifiduino32s3.menu.PSRAM.disabled.build.defines= -wifiduino32s3.menu.PSRAM.disabled.build.psram_type=qspi -wifiduino32s3.menu.PSRAM.enabled=QSPI PSRAM -wifiduino32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -wifiduino32s3.menu.PSRAM.enabled.build.psram_type=qspi -wifiduino32s3.menu.PSRAM.opi=OPI PSRAM -wifiduino32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -wifiduino32s3.menu.PSRAM.opi.build.psram_type=opi - -wifiduino32s3.menu.FlashMode.qio=QIO 80MHz -wifiduino32s3.menu.FlashMode.qio.build.flash_mode=dio -wifiduino32s3.menu.FlashMode.qio.build.boot=qio -wifiduino32s3.menu.FlashMode.qio.build.boot_freq=80m -wifiduino32s3.menu.FlashMode.qio.build.flash_freq=80m -wifiduino32s3.menu.FlashMode.qio120=QIO 120MHz -wifiduino32s3.menu.FlashMode.qio120.build.flash_mode=dio -wifiduino32s3.menu.FlashMode.qio120.build.boot=qio -wifiduino32s3.menu.FlashMode.qio120.build.boot_freq=120m -wifiduino32s3.menu.FlashMode.qio120.build.flash_freq=80m -wifiduino32s3.menu.FlashMode.dio=DIO 80MHz -wifiduino32s3.menu.FlashMode.dio.build.flash_mode=dio -wifiduino32s3.menu.FlashMode.dio.build.boot=dio -wifiduino32s3.menu.FlashMode.dio.build.boot_freq=80m -wifiduino32s3.menu.FlashMode.dio.build.flash_freq=80m -wifiduino32s3.menu.FlashMode.opi=OPI 80MHz -wifiduino32s3.menu.FlashMode.opi.build.flash_mode=dout -wifiduino32s3.menu.FlashMode.opi.build.boot=opi -wifiduino32s3.menu.FlashMode.opi.build.boot_freq=80m -wifiduino32s3.menu.FlashMode.opi.build.flash_freq=80m - -wifiduino32s3.menu.FlashSize.4M=4MB (32Mb) -wifiduino32s3.menu.FlashSize.4M.build.flash_size=4MB -wifiduino32s3.menu.FlashSize.8M=8MB (64Mb) -wifiduino32s3.menu.FlashSize.8M.build.flash_size=8MB -wifiduino32s3.menu.FlashSize.8M.build.partitions=default_8MB -wifiduino32s3.menu.FlashSize.16M=16MB (128Mb) -wifiduino32s3.menu.FlashSize.16M.build.flash_size=16MB -#wifiduino32s3.menu.FlashSize.32M=32MB (256Mb) -#wifiduino32s3.menu.FlashSize.32M.build.flash_size=32MB - -wifiduino32s3.menu.LoopCore.1=Core 1 -wifiduino32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -wifiduino32s3.menu.LoopCore.0=Core 0 -wifiduino32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -wifiduino32s3.menu.EventsCore.1=Core 1 -wifiduino32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -wifiduino32s3.menu.EventsCore.0=Core 0 -wifiduino32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -wifiduino32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -wifiduino32s3.menu.USBMode.hwcdc.build.usb_mode=1 -wifiduino32s3.menu.USBMode.default=USB-OTG (TinyUSB) -wifiduino32s3.menu.USBMode.default.build.usb_mode=0 - -wifiduino32s3.menu.CDCOnBoot.default=Disabled -wifiduino32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -wifiduino32s3.menu.CDCOnBoot.cdc=Enabled -wifiduino32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -wifiduino32s3.menu.MSCOnBoot.default=Disabled -wifiduino32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -wifiduino32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -wifiduino32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -wifiduino32s3.menu.DFUOnBoot.default=Disabled -wifiduino32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -wifiduino32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -wifiduino32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -wifiduino32s3.menu.UploadMode.default=UART0 / Hardware CDC -wifiduino32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -wifiduino32s3.menu.UploadMode.default.upload.wait_for_upload_port=false -wifiduino32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -wifiduino32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -wifiduino32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -wifiduino32s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -wifiduino32s3.menu.PartitionScheme.default.build.partitions=default -wifiduino32s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -wifiduino32s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -wifiduino32s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -wifiduino32s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -wifiduino32s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -wifiduino32s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -wifiduino32s3.menu.PartitionScheme.minimal.build.partitions=minimal -wifiduino32s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -wifiduino32s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -wifiduino32s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -wifiduino32s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -wifiduino32s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -wifiduino32s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -wifiduino32s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -wifiduino32s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -wifiduino32s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -wifiduino32s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -wifiduino32s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -wifiduino32s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -wifiduino32s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -wifiduino32s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -wifiduino32s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -wifiduino32s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -wifiduino32s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -wifiduino32s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -wifiduino32s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -wifiduino32s3.menu.PartitionScheme.fatflash.build.partitions=ffat -wifiduino32s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -wifiduino32s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -wifiduino32s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -wifiduino32s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -wifiduino32s3.menu.PartitionScheme.rainmaker=RainMaker -wifiduino32s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -wifiduino32s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -wifiduino32s3.menu.CPUFreq.240=240MHz (WiFi) -wifiduino32s3.menu.CPUFreq.240.build.f_cpu=240000000L -wifiduino32s3.menu.CPUFreq.160=160MHz (WiFi) -wifiduino32s3.menu.CPUFreq.160.build.f_cpu=160000000L -wifiduino32s3.menu.CPUFreq.80=80MHz (WiFi) -wifiduino32s3.menu.CPUFreq.80.build.f_cpu=80000000L -wifiduino32s3.menu.CPUFreq.40=40MHz -wifiduino32s3.menu.CPUFreq.40.build.f_cpu=40000000L -wifiduino32s3.menu.CPUFreq.20=20MHz -wifiduino32s3.menu.CPUFreq.20.build.f_cpu=20000000L -wifiduino32s3.menu.CPUFreq.10=10MHz -wifiduino32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -wifiduino32s3.menu.UploadSpeed.921600=921600 -wifiduino32s3.menu.UploadSpeed.921600.upload.speed=921600 -wifiduino32s3.menu.UploadSpeed.115200=115200 -wifiduino32s3.menu.UploadSpeed.115200.upload.speed=115200 -wifiduino32s3.menu.UploadSpeed.256000.windows=256000 -wifiduino32s3.menu.UploadSpeed.256000.upload.speed=256000 -wifiduino32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -wifiduino32s3.menu.UploadSpeed.230400=230400 -wifiduino32s3.menu.UploadSpeed.230400.upload.speed=230400 -wifiduino32s3.menu.UploadSpeed.460800.linux=460800 -wifiduino32s3.menu.UploadSpeed.460800.macosx=460800 -wifiduino32s3.menu.UploadSpeed.460800.upload.speed=460800 -wifiduino32s3.menu.UploadSpeed.512000.windows=512000 -wifiduino32s3.menu.UploadSpeed.512000.upload.speed=512000 - -wifiduino32s3.menu.DebugLevel.none=None -wifiduino32s3.menu.DebugLevel.none.build.code_debug=0 -wifiduino32s3.menu.DebugLevel.error=Error -wifiduino32s3.menu.DebugLevel.error.build.code_debug=1 -wifiduino32s3.menu.DebugLevel.warn=Warn -wifiduino32s3.menu.DebugLevel.warn.build.code_debug=2 -wifiduino32s3.menu.DebugLevel.info=Info -wifiduino32s3.menu.DebugLevel.info.build.code_debug=3 -wifiduino32s3.menu.DebugLevel.debug=Debug -wifiduino32s3.menu.DebugLevel.debug.build.code_debug=4 -wifiduino32s3.menu.DebugLevel.verbose=Verbose -wifiduino32s3.menu.DebugLevel.verbose.build.code_debug=5 - -wifiduino32s3.menu.EraseFlash.none=Disabled -wifiduino32s3.menu.EraseFlash.none.upload.erase_cmd= -wifiduino32s3.menu.EraseFlash.all=Enabled -wifiduino32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -imbrios-logsens-v1p1.name=IMBRIOS LOGSENS_V1P1 - -imbrios-logsens-v1p1.bootloader.tool=esptool_py -imbrios-logsens-v1p1.bootloader.tool.default=esptool_py - -imbrios-logsens-v1p1.upload.tool=esptool_py -imbrios-logsens-v1p1.upload.tool.default=esptool_py -imbrios-logsens-v1p1.upload.tool.network=esp_ota - -imbrios-logsens-v1p1.upload.maximum_size=1310720 -imbrios-logsens-v1p1.upload.maximum_data_size=327680 -imbrios-logsens-v1p1.upload.wait_for_upload_port=true -imbrios-logsens-v1p1.upload.flags= -imbrios-logsens-v1p1.upload.extra_flags= - -imbrios-logsens-v1p1.serial.disableDTR=true -imbrios-logsens-v1p1.serial.disableRTS=true - -imbrios-logsens-v1p1.build.tarch=xtensa -imbrios-logsens-v1p1.build.bootloader_addr=0x1000 -imbrios-logsens-v1p1.build.target=esp32 -imbrios-logsens-v1p1.build.mcu=esp32 -imbrios-logsens-v1p1.build.core=esp32 -imbrios-logsens-v1p1.build.variant=imbrios-logsens-v1p1 -imbrios-logsens-v1p1.build.board=IMBRIOS_LOGSENS_V1P1 - -imbrios-logsens-v1p1.build.f_cpu=240000000L -imbrios-logsens-v1p1.build.flash_mode=dio -imbrios-logsens-v1p1.build.flash_size=4MB -imbrios-logsens-v1p1.build.boot=dio -imbrios-logsens-v1p1.build.partitions=default -imbrios-logsens-v1p1.build.defines= - -imbrios-logsens-v1p1.menu.FlashFreq.80=80MHz -imbrios-logsens-v1p1.menu.FlashFreq.80.build.flash_freq=80m -imbrios-logsens-v1p1.menu.FlashFreq.40=40MHz -imbrios-logsens-v1p1.menu.FlashFreq.40.build.flash_freq=40m - -imbrios-logsens-v1p1.menu.PartitionScheme.default=Default -imbrios-logsens-v1p1.menu.PartitionScheme.default.build.partitions=default -imbrios-logsens-v1p1.menu.PartitionScheme.no_ota=No OTA (Large APP) -imbrios-logsens-v1p1.menu.PartitionScheme.no_ota.build.partitions=no_ota -imbrios-logsens-v1p1.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -imbrios-logsens-v1p1.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -imbrios-logsens-v1p1.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -imbrios-logsens-v1p1.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -imbrios-logsens-v1p1.menu.CPUFreq.240=240MHz (WiFi/BT) -imbrios-logsens-v1p1.menu.CPUFreq.240.build.f_cpu=240000000L -imbrios-logsens-v1p1.menu.CPUFreq.160=160MHz (WiFi/BT) -imbrios-logsens-v1p1.menu.CPUFreq.160.build.f_cpu=160000000L -imbrios-logsens-v1p1.menu.CPUFreq.80=80MHz (WiFi/BT) -imbrios-logsens-v1p1.menu.CPUFreq.80.build.f_cpu=80000000L -imbrios-logsens-v1p1.menu.CPUFreq.40=40MHz (40MHz XTAL) -imbrios-logsens-v1p1.menu.CPUFreq.40.build.f_cpu=40000000L -imbrios-logsens-v1p1.menu.CPUFreq.26=26MHz (26MHz XTAL) -imbrios-logsens-v1p1.menu.CPUFreq.26.build.f_cpu=26000000L -imbrios-logsens-v1p1.menu.CPUFreq.20=20MHz (40MHz XTAL) -imbrios-logsens-v1p1.menu.CPUFreq.20.build.f_cpu=20000000L -imbrios-logsens-v1p1.menu.CPUFreq.13=13MHz (26MHz XTAL) -imbrios-logsens-v1p1.menu.CPUFreq.13.build.f_cpu=13000000L -imbrios-logsens-v1p1.menu.CPUFreq.10=10MHz (40MHz XTAL) -imbrios-logsens-v1p1.menu.CPUFreq.10.build.f_cpu=10000000L - -imbrios-logsens-v1p1.menu.UploadSpeed.921600=921600 -imbrios-logsens-v1p1.menu.UploadSpeed.921600.upload.speed=921600 -imbrios-logsens-v1p1.menu.UploadSpeed.115200=115200 -imbrios-logsens-v1p1.menu.UploadSpeed.115200.upload.speed=115200 -imbrios-logsens-v1p1.menu.UploadSpeed.256000.windows=256000 -imbrios-logsens-v1p1.menu.UploadSpeed.256000.upload.speed=256000 -imbrios-logsens-v1p1.menu.UploadSpeed.230400.windows.upload.speed=256000 -imbrios-logsens-v1p1.menu.UploadSpeed.230400=230400 -imbrios-logsens-v1p1.menu.UploadSpeed.230400.upload.speed=230400 -imbrios-logsens-v1p1.menu.UploadSpeed.460800.linux=460800 -imbrios-logsens-v1p1.menu.UploadSpeed.460800.macosx=460800 -imbrios-logsens-v1p1.menu.UploadSpeed.460800.upload.speed=460800 -imbrios-logsens-v1p1.menu.UploadSpeed.512000.windows=512000 -imbrios-logsens-v1p1.menu.UploadSpeed.512000.upload.speed=512000 - -imbrios-logsens-v1p1.menu.DebugLevel.none=None -imbrios-logsens-v1p1.menu.DebugLevel.none.build.code_debug=0 -imbrios-logsens-v1p1.menu.DebugLevel.error=Error -imbrios-logsens-v1p1.menu.DebugLevel.error.build.code_debug=1 -imbrios-logsens-v1p1.menu.DebugLevel.warn=Warn -imbrios-logsens-v1p1.menu.DebugLevel.warn.build.code_debug=2 -imbrios-logsens-v1p1.menu.DebugLevel.info=Info -imbrios-logsens-v1p1.menu.DebugLevel.info.build.code_debug=3 -imbrios-logsens-v1p1.menu.DebugLevel.debug=Debug -imbrios-logsens-v1p1.menu.DebugLevel.debug.build.code_debug=4 -imbrios-logsens-v1p1.menu.DebugLevel.verbose=Verbose -imbrios-logsens-v1p1.menu.DebugLevel.verbose.build.code_debug=5 - -imbrios-logsens-v1p1.menu.EraseFlash.none=Disabled -imbrios-logsens-v1p1.menu.EraseFlash.none.upload.erase_cmd= -imbrios-logsens-v1p1.menu.EraseFlash.all=Enabled -imbrios-logsens-v1p1.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -healthypi4.name=ProtoCentral HealthyPi 4 - -healthypi4.bootloader.tool=esptool_py -healthypi4.bootloader.tool.default=esptool_py - -healthypi4.upload.tool=esptool_py -healthypi4.upload.tool.default=esptool_py -healthypi4.upload.tool.network=esp_ota - -healthypi4.upload.maximum_size=1310720 -healthypi4.upload.maximum_data_size=327680 -healthypi4.upload.wait_for_upload_port=true -healthypi4.upload.flags= -healthypi4.upload.extra_flags= - -healthypi4.serial.disableDTR=true -healthypi4.serial.disableRTS=true - -healthypi4.build.tarch=xtensa -healthypi4.build.bootloader_addr=0x1000 -healthypi4.build.target=esp32 -healthypi4.build.mcu=esp32 -healthypi4.build.core=esp32 -healthypi4.build.variant=healthypi4 -healthypi4.build.board=HEALTHYPI_4 - -healthypi4.build.f_cpu=240000000L -healthypi4.build.flash_mode=dio -healthypi4.build.flash_size=4MB -healthypi4.build.boot=dio -healthypi4.build.partitions=min_spiffs -healthypi4.build.defines= - -healthypi4.menu.FlashFreq.80=80MHz -healthypi4.menu.FlashFreq.80.build.flash_freq=80m -healthypi4.menu.FlashFreq.40=40MHz -healthypi4.menu.FlashFreq.40.build.flash_freq=40m - -healthypi4.menu.PartitionScheme.default=Default -healthypi4.menu.PartitionScheme.default.build.partitions=default -healthypi4.menu.PartitionScheme.no_ota=No OTA (Large APP) -healthypi4.menu.PartitionScheme.no_ota.build.partitions=no_ota -healthypi4.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -healthypi4.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -healthypi4.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -healthypi4.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -healthypi4.menu.UploadSpeed.921600=921600 -healthypi4.menu.UploadSpeed.921600.upload.speed=921600 -healthypi4.menu.UploadSpeed.115200=115200 -healthypi4.menu.UploadSpeed.115200.upload.speed=115200 -healthypi4.menu.UploadSpeed.256000.windows=256000 -healthypi4.menu.UploadSpeed.256000.upload.speed=256000 -healthypi4.menu.UploadSpeed.230400.windows.upload.speed=256000 -healthypi4.menu.UploadSpeed.230400=230400 -healthypi4.menu.UploadSpeed.230400.upload.speed=230400 -healthypi4.menu.UploadSpeed.460800.linux=460800 -healthypi4.menu.UploadSpeed.460800.macosx=460800 -healthypi4.menu.UploadSpeed.460800.upload.speed=460800 -healthypi4.menu.UploadSpeed.512000.windows=512000 -healthypi4.menu.UploadSpeed.512000.upload.speed=512000 - -healthypi4.menu.DebugLevel.none=None -healthypi4.menu.DebugLevel.none.build.code_debug=0 -healthypi4.menu.DebugLevel.error=Error -healthypi4.menu.DebugLevel.error.build.code_debug=1 -healthypi4.menu.DebugLevel.warn=Warn -healthypi4.menu.DebugLevel.warn.build.code_debug=2 -healthypi4.menu.DebugLevel.info=Info -healthypi4.menu.DebugLevel.info.build.code_debug=3 -healthypi4.menu.DebugLevel.debug=Debug -healthypi4.menu.DebugLevel.debug.build.code_debug=4 -healthypi4.menu.DebugLevel.verbose=Verbose -healthypi4.menu.DebugLevel.verbose.build.code_debug=5 - -healthypi4.menu.EraseFlash.none=Disabled -healthypi4.menu.EraseFlash.none.upload.erase_cmd= -healthypi4.menu.EraseFlash.all=Enabled -healthypi4.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ET-Board.name=ET-Board - -ET-Board.bootloader.tool=esptool_py -ET-Board.bootloader.tool.default=esptool_py - -ET-Board.upload.tool=esptool_py -ET-Board.upload.tool.default=esptool_py -ET-Board.upload.tool.network=esp_ota - -ET-Board.upload.maximum_size=1310720 -ET-Board.upload.maximum_data_size=327680 -ET-Board.upload.wait_for_upload_port=true -ET-Board.upload.flags= -ET-Board.upload.extra_flags= - -ET-Board.serial.disableDTR=true -ET-Board.serial.disableRTS=true - -ET-Board.build.tarch=xtensa -ET-Board.build.bootloader_addr=0x1000 -ET-Board.build.target=esp32 -ET-Board.build.mcu=esp32 -ET-Board.build.core=esp32 -ET-Board.build.variant=ET-Board -ET-Board.build.board=ET-Board -ET-Board.build.f_cpu=240000000L -ET-Board.build.flash_mode=dio -ET-Board.build.flash_size=4MB -ET-Board.build.boot=dio -ET-Board.build.partitions=default -ET-Board.build.defines= - -ET-Board.menu.PartitionScheme.default=Default -ET-Board.menu.PartitionScheme.default.build.partitions=default -ET-Board.menu.PartitionScheme.no_ota=No OTA (Large APP) -ET-Board.menu.PartitionScheme.no_ota.build.partitions=no_ota -ET-Board.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ET-Board.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -ET-Board.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ET-Board.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ET-Board.menu.FlashFreq.80=80MHz -ET-Board.menu.FlashFreq.80.build.flash_freq=80m -ET-Board.menu.FlashFreq.40=40MHz -ET-Board.menu.FlashFreq.40.build.flash_freq=40m - -ET-Board.menu.UploadSpeed.921600=921600 -ET-Board.menu.UploadSpeed.921600.upload.speed=921600 -ET-Board.menu.UploadSpeed.115200=115200 -ET-Board.menu.UploadSpeed.115200.upload.speed=115200 -ET-Board.menu.UploadSpeed.256000.windows=256000 -ET-Board.menu.UploadSpeed.256000.upload.speed=256000 -ET-Board.menu.UploadSpeed.230400.windows.upload.speed=256000 -ET-Board.menu.UploadSpeed.230400=230400 -ET-Board.menu.UploadSpeed.230400.upload.speed=230400 -ET-Board.menu.UploadSpeed.460800.linux=460800 -ET-Board.menu.UploadSpeed.460800.macosx=460800 -ET-Board.menu.UploadSpeed.460800.upload.speed=460800 -ET-Board.menu.UploadSpeed.512000.windows=512000 -ET-Board.menu.UploadSpeed.512000.upload.speed=512000 - -ET-Board.menu.DebugLevel.none=None -ET-Board.menu.DebugLevel.none.build.code_debug=0 -ET-Board.menu.DebugLevel.error=Error -ET-Board.menu.DebugLevel.error.build.code_debug=1 -ET-Board.menu.DebugLevel.warn=Warn -ET-Board.menu.DebugLevel.warn.build.code_debug=2 -ET-Board.menu.DebugLevel.info=Info -ET-Board.menu.DebugLevel.info.build.code_debug=3 -ET-Board.menu.DebugLevel.debug=Debug -ET-Board.menu.DebugLevel.debug.build.code_debug=4 -ET-Board.menu.DebugLevel.verbose=Verbose -ET-Board.menu.DebugLevel.verbose.build.code_debug=5 - -ET-Board.menu.EraseFlash.none=Disabled -ET-Board.menu.EraseFlash.none.upload.erase_cmd= -ET-Board.menu.EraseFlash.all=Enabled -ET-Board.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ch_denky.name=Denky - -ch_denky.bootloader.tool=esptool_py -ch_denky.bootloader.tool.default=esptool_py - -ch_denky.upload.tool=esptool_py -ch_denky.upload.tool.default=esptool_py -ch_denky.upload.tool.network=esp_ota - -ch_denky.upload.maximum_size=1310720 -ch_denky.upload.maximum_data_size=327680 -ch_denky.upload.flags= -ch_denky.upload.extra_flags= - -ch_denky.serial.disableDTR=true -ch_denky.serial.disableRTS=true - -ch_denky.build.tarch=xtensa -ch_denky.build.bootloader_addr=0x1000 -ch_denky.build.target=esp32 -ch_denky.build.mcu=esp32 -ch_denky.build.core=esp32 -ch_denky.build.variant=ch_denky -ch_denky.build.board=DENKY - -ch_denky.build.f_cpu=240000000L -ch_denky.build.flash_size=4MB -ch_denky.build.flash_freq=80m -ch_denky.build.flash_mode=dio -ch_denky.build.boot=dio -ch_denky.build.partitions=default -ch_denky.build.defines= - -ch_denky.menu.Revision.denkyd4=PICO-V3-02 -ch_denky.menu.Revision.denkyd4.build.board=DENKY_PICOV3 -ch_denky.menu.Revision.denkyd4.build.flash_size=8MB -ch_denky.menu.Revision.denky32=WROOM32 -ch_denky.menu.Revision.denky32.build.board=DENKY_WROOM32 -ch_denky.menu.Revision.denkyd4.build.flash_size=4MB - -ch_denky.menu.PartitionScheme.default=Default -ch_denky.menu.PartitionScheme.default.build.partitions=default -ch_denky.menu.PartitionScheme.no_ota=No OTA (Large APP) -ch_denky.menu.PartitionScheme.no_ota.build.partitions=no_ota -ch_denky.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ch_denky.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -ch_denky.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ch_denky.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -ch_denky.menu.UploadSpeed.921600=921600 -ch_denky.menu.UploadSpeed.921600.upload.speed=921600 -ch_denky.menu.UploadSpeed.115200=115200 -ch_denky.menu.UploadSpeed.115200.upload.speed=115200 -ch_denky.menu.UploadSpeed.256000.windows=256000 -ch_denky.menu.UploadSpeed.256000.upload.speed=256000 -ch_denky.menu.UploadSpeed.230400.windows.upload.speed=256000 -ch_denky.menu.UploadSpeed.230400=230400 -ch_denky.menu.UploadSpeed.230400.upload.speed=230400 -ch_denky.menu.UploadSpeed.460800.linux=460800 -ch_denky.menu.UploadSpeed.460800.macosx=460800 -ch_denky.menu.UploadSpeed.460800.upload.speed=460800 -ch_denky.menu.UploadSpeed.512000.windows=512000 -ch_denky.menu.UploadSpeed.512000.upload.speed=512000 - -ch_denky.menu.PSRAM.enabled=Enabled -ch_denky.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -ch_denky.menu.PSRAM.enabled.build.extra_libs= -ch_denky.menu.PSRAM.disabled=Disabled -ch_denky.menu.PSRAM.disabled.build.defines= -ch_denky.menu.PSRAM.disabled.build.extra_libs= - -ch_denky.menu.DebugLevel.none=None -ch_denky.menu.DebugLevel.none.build.code_debug=0 -ch_denky.menu.DebugLevel.error=Error -ch_denky.menu.DebugLevel.error.build.code_debug=1 -ch_denky.menu.DebugLevel.warn=Warn -ch_denky.menu.DebugLevel.warn.build.code_debug=2 -ch_denky.menu.DebugLevel.info=Info -ch_denky.menu.DebugLevel.info.build.code_debug=3 -ch_denky.menu.DebugLevel.debug=Debug -ch_denky.menu.DebugLevel.debug.build.code_debug=4 -ch_denky.menu.DebugLevel.verbose=Verbose -ch_denky.menu.DebugLevel.verbose.build.code_debug=5 - -ch_denky.menu.EraseFlash.none=Disabled -ch_denky.menu.EraseFlash.none.upload.erase_cmd= -ch_denky.menu.EraseFlash.all=Enabled -ch_denky.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -uPesy_wrover.name=uPesy ESP32 Wrover DevKit - -uPesy_wrover.bootloader.tool=esptool_py -uPesy_wrover.bootloader.tool.default=esptool_py - -uPesy_wrover.upload.tool=esptool_py -uPesy_wrover.upload.tool.default=esptool_py -uPesy_wrover.upload.tool.network=esp_ota - -uPesy_wrover.upload.maximum_size=1310720 -uPesy_wrover.upload.maximum_data_size=327680 -uPesy_wrover.upload.flags= -uPesy_wrover.upload.extra_flags= - -uPesy_wrover.serial.disableDTR=true -uPesy_wrover.serial.disableRTS=true - -uPesy_wrover.build.tarch=xtensa -uPesy_wrover.build.bootloader_addr=0x1000 -uPesy_wrover.build.target=esp32 -uPesy_wrover.build.mcu=esp32 -uPesy_wrover.build.core=esp32 -uPesy_wrover.build.variant=uPesy_esp32_wrover_devkit -uPesy_wrover.build.board=UPESY_WROVER - -uPesy_wrover.build.f_cpu=240000000L -uPesy_wrover.build.flash_size=4MB -uPesy_wrover.build.flash_freq=80m -uPesy_wrover.build.flash_mode=dio -uPesy_wrover.build.boot=dio -uPesy_wrover.build.partitions=default -uPesy_wrover.build.defines= - -uPesy_wrover.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -uPesy_wrover.menu.PartitionScheme.default.build.partitions=default -uPesy_wrover.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -uPesy_wrover.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -uPesy_wrover.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -uPesy_wrover.menu.PartitionScheme.minimal.build.partitions=minimal -uPesy_wrover.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -uPesy_wrover.menu.PartitionScheme.no_ota.build.partitions=no_ota -uPesy_wrover.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -uPesy_wrover.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -uPesy_wrover.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -uPesy_wrover.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -uPesy_wrover.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -uPesy_wrover.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -uPesy_wrover.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -uPesy_wrover.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -uPesy_wrover.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -uPesy_wrover.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -uPesy_wrover.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -uPesy_wrover.menu.PartitionScheme.huge_app.build.partitions=huge_app -uPesy_wrover.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -uPesy_wrover.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -uPesy_wrover.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -uPesy_wrover.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -uPesy_wrover.menu.CPUFreq.240=240MHz -uPesy_wrover.menu.CPUFreq.240.build.f_cpu=240000000L -uPesy_wrover.menu.CPUFreq.160=160MHz -uPesy_wrover.menu.CPUFreq.160.build.f_cpu=160000000L - -uPesy_wrover.menu.UploadSpeed.921600=921600 -uPesy_wrover.menu.UploadSpeed.921600.upload.speed=921600 -uPesy_wrover.menu.UploadSpeed.512000.windows=512000 -uPesy_wrover.menu.UploadSpeed.512000.upload.speed=512000 -uPesy_wrover.menu.UploadSpeed.460800.linux=460800 -uPesy_wrover.menu.UploadSpeed.460800.macosx=460800 -uPesy_wrover.menu.UploadSpeed.460800.upload.speed=460800 -uPesy_wrover.menu.UploadSpeed.256000.windows=256000 -uPesy_wrover.menu.UploadSpeed.256000.upload.speed=256000 -uPesy_wrover.menu.UploadSpeed.230400.windows.upload.speed=256000 -uPesy_wrover.menu.UploadSpeed.230400=230400 -uPesy_wrover.menu.UploadSpeed.230400.upload.speed=230400 -uPesy_wrover.menu.UploadSpeed.115200=115200 -uPesy_wrover.menu.UploadSpeed.115200.upload.speed=115200 - -uPesy_wrover.menu.FlashMode.qio=QIO -uPesy_wrover.menu.FlashMode.qio.build.flash_mode=dio -uPesy_wrover.menu.FlashMode.qio.build.boot=qio -uPesy_wrover.menu.FlashMode.dio=DIO -uPesy_wrover.menu.FlashMode.dio.build.flash_mode=dio -uPesy_wrover.menu.FlashMode.dio.build.boot=dio - -uPesy_wrover.menu.FlashFreq.80=80MHz -uPesy_wrover.menu.FlashFreq.80.build.flash_freq=80m -uPesy_wrover.menu.FlashFreq.40=40MHz -uPesy_wrover.menu.FlashFreq.40.build.flash_freq=40m - -uPesy_wrover.menu.PSRAM.enabled=Enabled -uPesy_wrover.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -uPesy_wrover.menu.PSRAM.enabled.build.extra_libs= -uPesy_wrover.menu.PSRAM.disabled=Disabled -uPesy_wrover.menu.PSRAM.disabled.build.defines= -uPesy_wrover.menu.PSRAM.disabled.build.extra_libs= - -uPesy_wrover.menu.DebugLevel.none=None -uPesy_wrover.menu.DebugLevel.none.build.code_debug=0 -uPesy_wrover.menu.DebugLevel.error=Error -uPesy_wrover.menu.DebugLevel.error.build.code_debug=1 -uPesy_wrover.menu.DebugLevel.warn=Warn -uPesy_wrover.menu.DebugLevel.warn.build.code_debug=2 -uPesy_wrover.menu.DebugLevel.info=Info -uPesy_wrover.menu.DebugLevel.info.build.code_debug=3 -uPesy_wrover.menu.DebugLevel.debug=Debug -uPesy_wrover.menu.DebugLevel.debug.build.code_debug=4 -uPesy_wrover.menu.DebugLevel.verbose=Verbose -uPesy_wrover.menu.DebugLevel.verbose.build.code_debug=5 - -uPesy_wrover.menu.EraseFlash.none=Disabled -uPesy_wrover.menu.EraseFlash.none.upload.erase_cmd= -uPesy_wrover.menu.EraseFlash.all=Enabled -uPesy_wrover.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -uPesy_wroom.name=uPesy ESP32 Wroom DevKit - -uPesy_wroom.bootloader.tool=esptool_py -uPesy_wroom.bootloader.tool.default=esptool_py - -uPesy_wroom.upload.tool=esptool_py -uPesy_wroom.upload.tool.default=esptool_py -uPesy_wroom.upload.tool.network=esp_ota - -uPesy_wroom.upload.maximum_size=1310720 -uPesy_wroom.upload.maximum_data_size=327680 -uPesy_wroom.upload.flags= -uPesy_wroom.upload.extra_flags= - -uPesy_wroom.serial.disableDTR=true -uPesy_wroom.serial.disableRTS=true - -uPesy_wroom.build.tarch=xtensa -uPesy_wroom.build.bootloader_addr=0x1000 -uPesy_wroom.build.target=esp32 -uPesy_wroom.build.mcu=esp32 -uPesy_wroom.build.core=esp32 -uPesy_wroom.build.variant=uPesy_esp32_wroom_devkit -uPesy_wroom.build.board=UPESY_WROOM - -uPesy_wroom.build.f_cpu=240000000L -uPesy_wroom.build.flash_size=4MB -uPesy_wroom.build.flash_freq=80m -uPesy_wroom.build.flash_mode=dio -uPesy_wroom.build.boot=dio -uPesy_wroom.build.partitions=default -uPesy_wroom.build.defines= - -uPesy_wroom.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -uPesy_wroom.menu.PartitionScheme.default.build.partitions=default -uPesy_wroom.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -uPesy_wroom.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -uPesy_wroom.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -uPesy_wroom.menu.PartitionScheme.minimal.build.partitions=minimal -uPesy_wroom.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -uPesy_wroom.menu.PartitionScheme.no_ota.build.partitions=no_ota -uPesy_wroom.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -uPesy_wroom.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -uPesy_wroom.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -uPesy_wroom.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -uPesy_wroom.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -uPesy_wroom.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -uPesy_wroom.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -uPesy_wroom.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -uPesy_wroom.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -uPesy_wroom.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -uPesy_wroom.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -uPesy_wroom.menu.PartitionScheme.huge_app.build.partitions=huge_app -uPesy_wroom.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -uPesy_wroom.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -uPesy_wroom.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -uPesy_wroom.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -uPesy_wroom.menu.CPUFreq.240=240MHz -uPesy_wroom.menu.CPUFreq.240.build.f_cpu=240000000L -uPesy_wroom.menu.CPUFreq.160=160MHz -uPesy_wroom.menu.CPUFreq.160.build.f_cpu=160000000L - -uPesy_wroom.menu.UploadSpeed.921600=921600 -uPesy_wroom.menu.UploadSpeed.921600.upload.speed=921600 -uPesy_wroom.menu.UploadSpeed.512000.windows=512000 -uPesy_wroom.menu.UploadSpeed.512000.upload.speed=512000 -uPesy_wroom.menu.UploadSpeed.460800.linux=460800 -uPesy_wroom.menu.UploadSpeed.460800.macosx=460800 -uPesy_wroom.menu.UploadSpeed.460800.upload.speed=460800 -uPesy_wroom.menu.UploadSpeed.256000.windows=256000 -uPesy_wroom.menu.UploadSpeed.256000.upload.speed=256000 -uPesy_wroom.menu.UploadSpeed.230400.windows.upload.speed=256000 -uPesy_wroom.menu.UploadSpeed.230400=230400 -uPesy_wroom.menu.UploadSpeed.230400.upload.speed=230400 -uPesy_wroom.menu.UploadSpeed.115200=115200 -uPesy_wroom.menu.UploadSpeed.115200.upload.speed=115200 - -uPesy_wroom.menu.FlashMode.qio=QIO -uPesy_wroom.menu.FlashMode.qio.build.flash_mode=dio -uPesy_wroom.menu.FlashMode.qio.build.boot=qio -uPesy_wroom.menu.FlashMode.dio=DIO -uPesy_wroom.menu.FlashMode.dio.build.flash_mode=dio -uPesy_wroom.menu.FlashMode.dio.build.boot=dio - -uPesy_wroom.menu.FlashFreq.80=80MHz -uPesy_wroom.menu.FlashFreq.80.build.flash_freq=80m -uPesy_wroom.menu.FlashFreq.40=40MHz -uPesy_wroom.menu.FlashFreq.40.build.flash_freq=40m - -uPesy_wroom.menu.DebugLevel.none=None -uPesy_wroom.menu.DebugLevel.none.build.code_debug=0 -uPesy_wroom.menu.DebugLevel.error=Error -uPesy_wroom.menu.DebugLevel.error.build.code_debug=1 -uPesy_wroom.menu.DebugLevel.warn=Warn -uPesy_wroom.menu.DebugLevel.warn.build.code_debug=2 -uPesy_wroom.menu.DebugLevel.info=Info -uPesy_wroom.menu.DebugLevel.info.build.code_debug=3 -uPesy_wroom.menu.DebugLevel.debug=Debug -uPesy_wroom.menu.DebugLevel.debug.build.code_debug=4 -uPesy_wroom.menu.DebugLevel.verbose=Verbose -uPesy_wroom.menu.DebugLevel.verbose.build.code_debug=5 - -uPesy_wroom.menu.EraseFlash.none=Disabled -uPesy_wroom.menu.EraseFlash.none.upload.erase_cmd= -uPesy_wroom.menu.EraseFlash.all=Enabled -uPesy_wroom.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -uPesy_edu_esp32.name=uPesy EDU ESP32 - -uPesy_edu_esp32.bootloader.tool=esptool_py -uPesy_edu_esp32.bootloader.tool.default=esptool_py - -uPesy_edu_esp32.upload.tool=esptool_py -uPesy_edu_esp32.upload.tool.default=esptool_py -uPesy_edu_esp32.upload.tool.network=esp_ota - -uPesy_edu_esp32.upload.maximum_size=1310720 -uPesy_edu_esp32.upload.maximum_data_size=327680 -uPesy_edu_esp32.upload.flags= -uPesy_edu_esp32.upload.extra_flags= - -uPesy_edu_esp32.serial.disableDTR=true -uPesy_edu_esp32.serial.disableRTS=true - -uPesy_edu_esp32.build.tarch=xtensa -uPesy_edu_esp32.build.bootloader_addr=0x1000 -uPesy_edu_esp32.build.target=esp32 -uPesy_edu_esp32.build.mcu=esp32 -uPesy_edu_esp32.build.core=esp32 -uPesy_edu_esp32.build.variant=uPesy_edu_esp32 -uPesy_edu_esp32.build.board=UPESY_EDU_ESP32 - -uPesy_edu_esp32.build.f_cpu=240000000L -uPesy_edu_esp32.build.flash_size=4MB -uPesy_edu_esp32.build.flash_freq=80m -uPesy_edu_esp32.build.flash_mode=dio -uPesy_edu_esp32.build.boot=dio -uPesy_edu_esp32.build.partitions=default -uPesy_edu_esp32.build.defines= - -uPesy_edu_esp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.default.build.partitions=default -uPesy_edu_esp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -uPesy_edu_esp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -uPesy_edu_esp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.minimal.build.partitions=minimal -uPesy_edu_esp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -uPesy_edu_esp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -uPesy_edu_esp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -uPesy_edu_esp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -uPesy_edu_esp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -uPesy_edu_esp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -uPesy_edu_esp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -uPesy_edu_esp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -uPesy_edu_esp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -uPesy_edu_esp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -uPesy_edu_esp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -uPesy_edu_esp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -uPesy_edu_esp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -uPesy_edu_esp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -uPesy_edu_esp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -uPesy_edu_esp32.menu.CPUFreq.240=240MHz -uPesy_edu_esp32.menu.CPUFreq.240.build.f_cpu=240000000L -uPesy_edu_esp32.menu.CPUFreq.160=160MHz -uPesy_edu_esp32.menu.CPUFreq.160.build.f_cpu=160000000L - -uPesy_edu_esp32.menu.UploadSpeed.921600=921600 -uPesy_edu_esp32.menu.UploadSpeed.921600.upload.speed=921600 -uPesy_edu_esp32.menu.UploadSpeed.512000.windows=512000 -uPesy_edu_esp32.menu.UploadSpeed.512000.upload.speed=512000 -uPesy_edu_esp32.menu.UploadSpeed.460800.linux=460800 -uPesy_edu_esp32.menu.UploadSpeed.460800.macosx=460800 -uPesy_edu_esp32.menu.UploadSpeed.460800.upload.speed=460800 -uPesy_edu_esp32.menu.UploadSpeed.256000.windows=256000 -uPesy_edu_esp32.menu.UploadSpeed.256000.upload.speed=256000 -uPesy_edu_esp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -uPesy_edu_esp32.menu.UploadSpeed.230400=230400 -uPesy_edu_esp32.menu.UploadSpeed.230400.upload.speed=230400 -uPesy_edu_esp32.menu.UploadSpeed.115200=115200 -uPesy_edu_esp32.menu.UploadSpeed.115200.upload.speed=115200 - -uPesy_edu_esp32.menu.FlashMode.qio=QIO -uPesy_edu_esp32.menu.FlashMode.qio.build.flash_mode=dio -uPesy_edu_esp32.menu.FlashMode.qio.build.boot=qio -uPesy_edu_esp32.menu.FlashMode.dio=DIO -uPesy_edu_esp32.menu.FlashMode.dio.build.flash_mode=dio -uPesy_edu_esp32.menu.FlashMode.dio.build.boot=dio - -uPesy_edu_esp32.menu.FlashFreq.80=80MHz -uPesy_edu_esp32.menu.FlashFreq.80.build.flash_freq=80m -uPesy_edu_esp32.menu.FlashFreq.40=40MHz -uPesy_edu_esp32.menu.FlashFreq.40.build.flash_freq=40m - -uPesy_edu_esp32.menu.DebugLevel.none=None -uPesy_edu_esp32.menu.DebugLevel.none.build.code_debug=0 -uPesy_edu_esp32.menu.DebugLevel.error=Error -uPesy_edu_esp32.menu.DebugLevel.error.build.code_debug=1 -uPesy_edu_esp32.menu.DebugLevel.warn=Warn -uPesy_edu_esp32.menu.DebugLevel.warn.build.code_debug=2 -uPesy_edu_esp32.menu.DebugLevel.info=Info -uPesy_edu_esp32.menu.DebugLevel.info.build.code_debug=3 -uPesy_edu_esp32.menu.DebugLevel.debug=Debug -uPesy_edu_esp32.menu.DebugLevel.debug.build.code_debug=4 -uPesy_edu_esp32.menu.DebugLevel.verbose=Verbose -uPesy_edu_esp32.menu.DebugLevel.verbose.build.code_debug=5 - -uPesy_edu_esp32.menu.EraseFlash.none=Disabled -uPesy_edu_esp32.menu.EraseFlash.none.upload.erase_cmd= -uPesy_edu_esp32.menu.EraseFlash.all=Enabled -uPesy_edu_esp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -upesy_esp32c3_basic.name=uPesy ESP32C3 Basic -upesy_esp32c3_basic.vid.0=0x303a -upesy_esp32c3_basic.pid.0=0x8195 - -upesy_esp32c3_basic.bootloader.tool=esptool_py -upesy_esp32c3_basic.bootloader.tool.default=esptool_py - -upesy_esp32c3_basic.upload.tool=esptool_py -upesy_esp32c3_basic.upload.tool.default=esptool_py -upesy_esp32c3_basic.upload.tool.network=esp_ota - -upesy_esp32c3_basic.upload.maximum_size=1310720 -upesy_esp32c3_basic.upload.maximum_data_size=327680 -upesy_esp32c3_basic.upload.flags= -upesy_esp32c3_basic.upload.extra_flags= -upesy_esp32c3_basic.upload.use_1200bps_touch=false -upesy_esp32c3_basic.upload.wait_for_upload_port=false - -upesy_esp32c3_basic.serial.disableDTR=true -upesy_esp32c3_basic.serial.disableRTS=true - -upesy_esp32c3_basic.build.tarch=riscv32 -upesy_esp32c3_basic.build.target=esp -upesy_esp32c3_basic.build.mcu=esp32c3 -upesy_esp32c3_basic.build.core=esp32 -upesy_esp32c3_basic.build.variant=uPesy_esp32c3_basic -upesy_esp32c3_basic.build.board=UPESY_ESP32C3_BASIC -upesy_esp32c3_basic.build.bootloader_addr=0x0 - -upesy_esp32c3_basic.build.cdc_on_boot=1 -upesy_esp32c3_basic.build.f_cpu=160000000L -upesy_esp32c3_basic.build.flash_size=4MB -upesy_esp32c3_basic.build.flash_freq=80m -upesy_esp32c3_basic.build.flash_mode=dio -upesy_esp32c3_basic.build.boot=qio -upesy_esp32c3_basic.build.partitions=default -upesy_esp32c3_basic.build.defines= - -upesy_esp32c3_basic.menu.CDCOnBoot.default=Enabled -upesy_esp32c3_basic.menu.CDCOnBoot.default.build.cdc_on_boot=1 -upesy_esp32c3_basic.menu.CDCOnBoot.dis_cdc=Disabled -upesy_esp32c3_basic.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -upesy_esp32c3_basic.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -upesy_esp32c3_basic.menu.PartitionScheme.default.build.partitions=default -upesy_esp32c3_basic.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -upesy_esp32c3_basic.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -upesy_esp32c3_basic.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -upesy_esp32c3_basic.menu.PartitionScheme.no_ota.build.partitions=no_ota -upesy_esp32c3_basic.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -upesy_esp32c3_basic.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -upesy_esp32c3_basic.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -upesy_esp32c3_basic.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -upesy_esp32c3_basic.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -upesy_esp32c3_basic.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -upesy_esp32c3_basic.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -upesy_esp32c3_basic.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -upesy_esp32c3_basic.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -upesy_esp32c3_basic.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -upesy_esp32c3_basic.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -upesy_esp32c3_basic.menu.PartitionScheme.huge_app.build.partitions=huge_app -upesy_esp32c3_basic.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -upesy_esp32c3_basic.menu.CPUFreq.160=160MHz (WiFi) -upesy_esp32c3_basic.menu.CPUFreq.160.build.f_cpu=160000000L -upesy_esp32c3_basic.menu.CPUFreq.80=80MHz (WiFi) -upesy_esp32c3_basic.menu.CPUFreq.80.build.f_cpu=80000000L -upesy_esp32c3_basic.menu.CPUFreq.40=40MHz -upesy_esp32c3_basic.menu.CPUFreq.40.build.f_cpu=40000000L -upesy_esp32c3_basic.menu.CPUFreq.20=20MHz -upesy_esp32c3_basic.menu.CPUFreq.20.build.f_cpu=20000000L -upesy_esp32c3_basic.menu.CPUFreq.10=10MHz -upesy_esp32c3_basic.menu.CPUFreq.10.build.f_cpu=10000000L - -upesy_esp32c3_basic.menu.FlashFreq.80=80MHz -upesy_esp32c3_basic.menu.FlashFreq.80.build.flash_freq=80m -upesy_esp32c3_basic.menu.FlashFreq.40=40MHz -upesy_esp32c3_basic.menu.FlashFreq.40.build.flash_freq=40m - -upesy_esp32c3_basic.menu.UploadSpeed.921600=921600 -upesy_esp32c3_basic.menu.UploadSpeed.921600.upload.speed=921600 -upesy_esp32c3_basic.menu.UploadSpeed.115200=115200 -upesy_esp32c3_basic.menu.UploadSpeed.115200.upload.speed=115200 -upesy_esp32c3_basic.menu.UploadSpeed.256000.windows=256000 -upesy_esp32c3_basic.menu.UploadSpeed.256000.upload.speed=256000 -upesy_esp32c3_basic.menu.UploadSpeed.230400.windows.upload.speed=256000 -upesy_esp32c3_basic.menu.UploadSpeed.230400=230400 -upesy_esp32c3_basic.menu.UploadSpeed.230400.upload.speed=230400 -upesy_esp32c3_basic.menu.UploadSpeed.460800.linux=460800 -upesy_esp32c3_basic.menu.UploadSpeed.460800.macosx=460800 -upesy_esp32c3_basic.menu.UploadSpeed.460800.upload.speed=460800 -upesy_esp32c3_basic.menu.UploadSpeed.512000.windows=512000 -upesy_esp32c3_basic.menu.UploadSpeed.512000.upload.speed=512000 - -upesy_esp32c3_basic.menu.DebugLevel.none=None -upesy_esp32c3_basic.menu.DebugLevel.none.build.code_debug=0 -upesy_esp32c3_basic.menu.DebugLevel.error=Error -upesy_esp32c3_basic.menu.DebugLevel.error.build.code_debug=1 -upesy_esp32c3_basic.menu.DebugLevel.warn=Warn -upesy_esp32c3_basic.menu.DebugLevel.warn.build.code_debug=2 -upesy_esp32c3_basic.menu.DebugLevel.info=Info -upesy_esp32c3_basic.menu.DebugLevel.info.build.code_debug=3 -upesy_esp32c3_basic.menu.DebugLevel.debug=Debug -upesy_esp32c3_basic.menu.DebugLevel.debug.build.code_debug=4 -upesy_esp32c3_basic.menu.DebugLevel.verbose=Verbose -upesy_esp32c3_basic.menu.DebugLevel.verbose.build.code_debug=5 - -upesy_esp32c3_basic.menu.EraseFlash.none=Disabled -upesy_esp32c3_basic.menu.EraseFlash.none.upload.erase_cmd= -upesy_esp32c3_basic.menu.EraseFlash.all=Enabled -upesy_esp32c3_basic.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -upesy_esp32c3_mini.name=uPesy ESP32C3 Mini -upesy_esp32c3_mini.vid.0=0x303a -upesy_esp32c3_mini.pid.0=0x819B - -upesy_esp32c3_mini.bootloader.tool=esptool_py -upesy_esp32c3_mini.bootloader.tool.default=esptool_py - -upesy_esp32c3_mini.upload.tool=esptool_py -upesy_esp32c3_mini.upload.tool.default=esptool_py -upesy_esp32c3_mini.upload.tool.network=esp_ota - -upesy_esp32c3_mini.upload.maximum_size=1310720 -upesy_esp32c3_mini.upload.maximum_data_size=327680 -upesy_esp32c3_mini.upload.flags= -upesy_esp32c3_mini.upload.extra_flags= -upesy_esp32c3_mini.upload.use_1200bps_touch=false -upesy_esp32c3_mini.upload.wait_for_upload_port=false - -upesy_esp32c3_mini.serial.disableDTR=true -upesy_esp32c3_mini.serial.disableRTS=true - -upesy_esp32c3_mini.build.tarch=riscv32 -upesy_esp32c3_mini.build.target=esp -upesy_esp32c3_mini.build.mcu=esp32c3 -upesy_esp32c3_mini.build.core=esp32 -upesy_esp32c3_mini.build.variant=uPesy_esp32c3_mini -upesy_esp32c3_mini.build.board=UPESY_ESP32C3_MINI -upesy_esp32c3_mini.build.bootloader_addr=0x0 - -upesy_esp32c3_mini.build.cdc_on_boot=1 -upesy_esp32c3_mini.build.f_cpu=160000000L -upesy_esp32c3_mini.build.flash_size=4MB -upesy_esp32c3_mini.build.flash_freq=80m -upesy_esp32c3_mini.build.flash_mode=dio -upesy_esp32c3_mini.build.boot=qio -upesy_esp32c3_mini.build.partitions=default -upesy_esp32c3_mini.build.defines= - -upesy_esp32c3_mini.menu.CDCOnBoot.default=Enabled -upesy_esp32c3_mini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -upesy_esp32c3_mini.menu.CDCOnBoot.dis_cdc=Disabled -upesy_esp32c3_mini.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -upesy_esp32c3_mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -upesy_esp32c3_mini.menu.PartitionScheme.default.build.partitions=default -upesy_esp32c3_mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -upesy_esp32c3_mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -upesy_esp32c3_mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -upesy_esp32c3_mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -upesy_esp32c3_mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -upesy_esp32c3_mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -upesy_esp32c3_mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -upesy_esp32c3_mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -upesy_esp32c3_mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -upesy_esp32c3_mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -upesy_esp32c3_mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -upesy_esp32c3_mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -upesy_esp32c3_mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -upesy_esp32c3_mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -upesy_esp32c3_mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -upesy_esp32c3_mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -upesy_esp32c3_mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -upesy_esp32c3_mini.menu.CPUFreq.160=160MHz (WiFi) -upesy_esp32c3_mini.menu.CPUFreq.160.build.f_cpu=160000000L -upesy_esp32c3_mini.menu.CPUFreq.80=80MHz (WiFi) -upesy_esp32c3_mini.menu.CPUFreq.80.build.f_cpu=80000000L -upesy_esp32c3_mini.menu.CPUFreq.40=40MHz -upesy_esp32c3_mini.menu.CPUFreq.40.build.f_cpu=40000000L -upesy_esp32c3_mini.menu.CPUFreq.20=20MHz -upesy_esp32c3_mini.menu.CPUFreq.20.build.f_cpu=20000000L -upesy_esp32c3_mini.menu.CPUFreq.10=10MHz -upesy_esp32c3_mini.menu.CPUFreq.10.build.f_cpu=10000000L - -upesy_esp32c3_mini.menu.FlashFreq.80=80MHz -upesy_esp32c3_mini.menu.FlashFreq.80.build.flash_freq=80m -upesy_esp32c3_mini.menu.FlashFreq.40=40MHz -upesy_esp32c3_mini.menu.FlashFreq.40.build.flash_freq=40m - -upesy_esp32c3_mini.menu.UploadSpeed.921600=921600 -upesy_esp32c3_mini.menu.UploadSpeed.921600.upload.speed=921600 -upesy_esp32c3_mini.menu.UploadSpeed.115200=115200 -upesy_esp32c3_mini.menu.UploadSpeed.115200.upload.speed=115200 -upesy_esp32c3_mini.menu.UploadSpeed.256000.windows=256000 -upesy_esp32c3_mini.menu.UploadSpeed.256000.upload.speed=256000 -upesy_esp32c3_mini.menu.UploadSpeed.230400.windows.upload.speed=256000 -upesy_esp32c3_mini.menu.UploadSpeed.230400=230400 -upesy_esp32c3_mini.menu.UploadSpeed.230400.upload.speed=230400 -upesy_esp32c3_mini.menu.UploadSpeed.460800.linux=460800 -upesy_esp32c3_mini.menu.UploadSpeed.460800.macosx=460800 -upesy_esp32c3_mini.menu.UploadSpeed.460800.upload.speed=460800 -upesy_esp32c3_mini.menu.UploadSpeed.512000.windows=512000 -upesy_esp32c3_mini.menu.UploadSpeed.512000.upload.speed=512000 - -upesy_esp32c3_mini.menu.DebugLevel.none=None -upesy_esp32c3_mini.menu.DebugLevel.none.build.code_debug=0 -upesy_esp32c3_mini.menu.DebugLevel.error=Error -upesy_esp32c3_mini.menu.DebugLevel.error.build.code_debug=1 -upesy_esp32c3_mini.menu.DebugLevel.warn=Warn -upesy_esp32c3_mini.menu.DebugLevel.warn.build.code_debug=2 -upesy_esp32c3_mini.menu.DebugLevel.info=Info -upesy_esp32c3_mini.menu.DebugLevel.info.build.code_debug=3 -upesy_esp32c3_mini.menu.DebugLevel.debug=Debug -upesy_esp32c3_mini.menu.DebugLevel.debug.build.code_debug=4 -upesy_esp32c3_mini.menu.DebugLevel.verbose=Verbose -upesy_esp32c3_mini.menu.DebugLevel.verbose.build.code_debug=5 - -upesy_esp32c3_mini.menu.EraseFlash.none=Disabled -upesy_esp32c3_mini.menu.EraseFlash.none.upload.erase_cmd= -upesy_esp32c3_mini.menu.EraseFlash.all=Enabled -upesy_esp32c3_mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -upesy_esp32s3_basic.name=uPesy ESP32S3 Basic -upesy_esp32s3_basic.vid.0=0x303a -upesy_esp32s3_basic.pid.0=0x8192 - -upesy_esp32s3_basic.bootloader.tool=esptool_py -upesy_esp32s3_basic.bootloader.tool.default=esptool_py - -upesy_esp32s3_basic.upload.tool=esptool_py -upesy_esp32s3_basic.upload.tool.default=esptool_py -upesy_esp32s3_basic.upload.tool.network=esp_ota - -upesy_esp32s3_basic.upload.maximum_size=1310720 -upesy_esp32s3_basic.upload.maximum_data_size=327680 -upesy_esp32s3_basic.upload.flags= -upesy_esp32s3_basic.upload.extra_flags= -upesy_esp32s3_basic.upload.use_1200bps_touch=false -upesy_esp32s3_basic.upload.wait_for_upload_port=false - -upesy_esp32s3_basic.serial.disableDTR=false -upesy_esp32s3_basic.serial.disableRTS=false - -upesy_esp32s3_basic.build.tarch=xtensa -upesy_esp32s3_basic.build.bootloader_addr=0x0 -upesy_esp32s3_basic.build.target=esp32s3 -upesy_esp32s3_basic.build.mcu=esp32s3 -upesy_esp32s3_basic.build.core=esp32 -upesy_esp32s3_basic.build.variant=uPesy_esp32s3_basic -upesy_esp32s3_basic.build.board=UPESY_ESP32S3_BASIC - -upesy_esp32s3_basic.build.usb_mode=1 -upesy_esp32s3_basic.build.cdc_on_boot=0 -upesy_esp32s3_basic.build.msc_on_boot=0 -upesy_esp32s3_basic.build.dfu_on_boot=0 -upesy_esp32s3_basic.build.f_cpu=240000000L -upesy_esp32s3_basic.build.flash_size=16MB -upesy_esp32s3_basic.build.flash_freq=80m -upesy_esp32s3_basic.build.flash_mode=dio -upesy_esp32s3_basic.build.boot=qio -upesy_esp32s3_basic.build.boot_freq=80m -upesy_esp32s3_basic.build.partitions=default -upesy_esp32s3_basic.build.defines=-DBOARD_HAS_PSRAM -upesy_esp32s3_basic.build.loop_core= -upesy_esp32s3_basic.build.event_core= -upesy_esp32s3_basic.build.psram_type=opi -upesy_esp32s3_basic.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -upesy_esp32s3_basic.menu.JTAGAdapter.default=Disabled -upesy_esp32s3_basic.menu.JTAGAdapter.default.build.copy_jtag_files=0 -upesy_esp32s3_basic.menu.JTAGAdapter.builtin=Integrated USB JTAG -upesy_esp32s3_basic.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -upesy_esp32s3_basic.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -upesy_esp32s3_basic.menu.JTAGAdapter.external=FTDI Adapter -upesy_esp32s3_basic.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -upesy_esp32s3_basic.menu.JTAGAdapter.external.build.copy_jtag_files=1 -upesy_esp32s3_basic.menu.JTAGAdapter.bridge=ESP USB Bridge -upesy_esp32s3_basic.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -upesy_esp32s3_basic.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -upesy_esp32s3_basic.menu.FlashMode.qio=QIO 80MHz -upesy_esp32s3_basic.menu.FlashMode.qio.build.flash_mode=dio -upesy_esp32s3_basic.menu.FlashMode.qio.build.boot=qio -upesy_esp32s3_basic.menu.FlashMode.qio.build.boot_freq=80m -upesy_esp32s3_basic.menu.FlashMode.qio.build.flash_freq=80m -upesy_esp32s3_basic.menu.FlashMode.qio120=QIO 120MHz -upesy_esp32s3_basic.menu.FlashMode.qio120.build.flash_mode=dio -upesy_esp32s3_basic.menu.FlashMode.qio120.build.boot=qio -upesy_esp32s3_basic.menu.FlashMode.qio120.build.boot_freq=120m -upesy_esp32s3_basic.menu.FlashMode.qio120.build.flash_freq=80m - -upesy_esp32s3_basic.menu.LoopCore.1=Core 1 -upesy_esp32s3_basic.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -upesy_esp32s3_basic.menu.LoopCore.0=Core 0 -upesy_esp32s3_basic.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -upesy_esp32s3_basic.menu.EventsCore.1=Core 1 -upesy_esp32s3_basic.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -upesy_esp32s3_basic.menu.EventsCore.0=Core 0 -upesy_esp32s3_basic.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -upesy_esp32s3_basic.menu.USBMode.hwcdc=Hardware CDC and JTAG -upesy_esp32s3_basic.menu.USBMode.hwcdc.build.usb_mode=1 -upesy_esp32s3_basic.menu.USBMode.default=USB-OTG (TinyUSB) -upesy_esp32s3_basic.menu.USBMode.default.build.usb_mode=0 - -upesy_esp32s3_basic.menu.CDCOnBoot.default=Disabled -upesy_esp32s3_basic.menu.CDCOnBoot.default.build.cdc_on_boot=0 -upesy_esp32s3_basic.menu.CDCOnBoot.cdc=Enabled -upesy_esp32s3_basic.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -upesy_esp32s3_basic.menu.MSCOnBoot.default=Disabled -upesy_esp32s3_basic.menu.MSCOnBoot.default.build.msc_on_boot=0 -upesy_esp32s3_basic.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -upesy_esp32s3_basic.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -upesy_esp32s3_basic.menu.DFUOnBoot.default=Disabled -upesy_esp32s3_basic.menu.DFUOnBoot.default.build.dfu_on_boot=0 -upesy_esp32s3_basic.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -upesy_esp32s3_basic.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -upesy_esp32s3_basic.menu.UploadMode.default=UART0 / Hardware CDC -upesy_esp32s3_basic.menu.UploadMode.default.upload.use_1200bps_touch=false -upesy_esp32s3_basic.menu.UploadMode.default.upload.wait_for_upload_port=false -upesy_esp32s3_basic.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -upesy_esp32s3_basic.menu.UploadMode.cdc.upload.use_1200bps_touch=true -upesy_esp32s3_basic.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -upesy_esp32s3_basic.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -upesy_esp32s3_basic.menu.PartitionScheme.fatflash.build.partitions=ffat -upesy_esp32s3_basic.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -upesy_esp32s3_basic.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -upesy_esp32s3_basic.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -upesy_esp32s3_basic.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -upesy_esp32s3_basic.menu.CPUFreq.240=240MHz (WiFi) -upesy_esp32s3_basic.menu.CPUFreq.240.build.f_cpu=240000000L -upesy_esp32s3_basic.menu.CPUFreq.160=160MHz (WiFi) -upesy_esp32s3_basic.menu.CPUFreq.160.build.f_cpu=160000000L -upesy_esp32s3_basic.menu.CPUFreq.80=80MHz (WiFi) -upesy_esp32s3_basic.menu.CPUFreq.80.build.f_cpu=80000000L -upesy_esp32s3_basic.menu.CPUFreq.40=40MHz -upesy_esp32s3_basic.menu.CPUFreq.40.build.f_cpu=40000000L -upesy_esp32s3_basic.menu.CPUFreq.20=20MHz -upesy_esp32s3_basic.menu.CPUFreq.20.build.f_cpu=20000000L -upesy_esp32s3_basic.menu.CPUFreq.10=10MHz -upesy_esp32s3_basic.menu.CPUFreq.10.build.f_cpu=10000000L - -upesy_esp32s3_basic.menu.UploadSpeed.921600=921600 -upesy_esp32s3_basic.menu.UploadSpeed.921600.upload.speed=921600 -upesy_esp32s3_basic.menu.UploadSpeed.115200=115200 -upesy_esp32s3_basic.menu.UploadSpeed.115200.upload.speed=115200 -upesy_esp32s3_basic.menu.UploadSpeed.256000.windows=256000 -upesy_esp32s3_basic.menu.UploadSpeed.256000.upload.speed=256000 -upesy_esp32s3_basic.menu.UploadSpeed.230400.windows.upload.speed=256000 -upesy_esp32s3_basic.menu.UploadSpeed.230400=230400 -upesy_esp32s3_basic.menu.UploadSpeed.230400.upload.speed=230400 -upesy_esp32s3_basic.menu.UploadSpeed.460800.linux=460800 -upesy_esp32s3_basic.menu.UploadSpeed.460800.macosx=460800 -upesy_esp32s3_basic.menu.UploadSpeed.460800.upload.speed=460800 -upesy_esp32s3_basic.menu.UploadSpeed.512000.windows=512000 -upesy_esp32s3_basic.menu.UploadSpeed.512000.upload.speed=512000 - -upesy_esp32s3_basic.menu.DebugLevel.none=None -upesy_esp32s3_basic.menu.DebugLevel.none.build.code_debug=0 -upesy_esp32s3_basic.menu.DebugLevel.error=Error -upesy_esp32s3_basic.menu.DebugLevel.error.build.code_debug=1 -upesy_esp32s3_basic.menu.DebugLevel.warn=Warn -upesy_esp32s3_basic.menu.DebugLevel.warn.build.code_debug=2 -upesy_esp32s3_basic.menu.DebugLevel.info=Info -upesy_esp32s3_basic.menu.DebugLevel.info.build.code_debug=3 -upesy_esp32s3_basic.menu.DebugLevel.debug=Debug -upesy_esp32s3_basic.menu.DebugLevel.debug.build.code_debug=4 -upesy_esp32s3_basic.menu.DebugLevel.verbose=Verbose -upesy_esp32s3_basic.menu.DebugLevel.verbose.build.code_debug=5 - -upesy_esp32s3_basic.menu.EraseFlash.none=Disabled -upesy_esp32s3_basic.menu.EraseFlash.none.upload.erase_cmd= -upesy_esp32s3_basic.menu.EraseFlash.all=Enabled -upesy_esp32s3_basic.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -kb32.name=KB32-FT - -kb32.bootloader.tool=esptool_py -kb32.bootloader.tool.default=esptool_py - -kb32.upload.tool=esptool_py -kb32.upload.tool.default=esptool_py -kb32.upload.tool.network=esp_ota - -kb32.upload.maximum_size=1310720 -kb32.upload.maximum_data_size=327680 -kb32.upload.flags= -kb32.upload.extra_flags= - -kb32.serial.disableDTR=true -kb32.serial.disableRTS=true - -kb32.build.tarch=xtensa -kb32.build.bootloader_addr=0x1000 -kb32.build.target=esp32 -kb32.build.mcu=esp32 -kb32.build.core=esp32 -kb32.build.variant=esp32 -kb32.build.board=ESP32_DEV - -kb32.build.f_cpu=240000000L -kb32.build.flash_size=4MB -kb32.build.flash_freq=40m -kb32.build.flash_mode=dio -kb32.build.boot=dio -kb32.build.partitions=default -kb32.build.defines= -kb32.build.loop_core= -kb32.build.event_core= - -kb32.menu.PSRAM.disabled=Disabled -kb32.menu.PSRAM.disabled.build.defines= -kb32.menu.PSRAM.disabled.build.extra_libs= -kb32.menu.PSRAM.enabled=Enabled -kb32.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -kb32.menu.PSRAM.enabled.build.extra_libs= - -kb32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -kb32.menu.PartitionScheme.default.build.partitions=default -kb32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -kb32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -kb32.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -kb32.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -kb32.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -kb32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -kb32.menu.PartitionScheme.minimal.build.partitions=minimal -kb32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -kb32.menu.PartitionScheme.no_ota.build.partitions=no_ota -kb32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -kb32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -kb32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -kb32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -kb32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -kb32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -kb32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -kb32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -kb32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -kb32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -kb32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -kb32.menu.PartitionScheme.huge_app.build.partitions=huge_app -kb32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -kb32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -kb32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -kb32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -kb32.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -kb32.menu.PartitionScheme.fatflash.build.partitions=ffat -kb32.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -kb32.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -kb32.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -kb32.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -kb32.menu.PartitionScheme.rainmaker=RainMaker -kb32.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -kb32.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -kb32.menu.CPUFreq.240=240MHz (WiFi/BT) -kb32.menu.CPUFreq.240.build.f_cpu=240000000L -kb32.menu.CPUFreq.160=160MHz (WiFi/BT) -kb32.menu.CPUFreq.160.build.f_cpu=160000000L -kb32.menu.CPUFreq.80=80MHz (WiFi/BT) -kb32.menu.CPUFreq.80.build.f_cpu=80000000L -kb32.menu.CPUFreq.40=40MHz (40MHz XTAL) -kb32.menu.CPUFreq.40.build.f_cpu=40000000L -kb32.menu.CPUFreq.26=26MHz (26MHz XTAL) -kb32.menu.CPUFreq.26.build.f_cpu=26000000L -kb32.menu.CPUFreq.20=20MHz (40MHz XTAL) -kb32.menu.CPUFreq.20.build.f_cpu=20000000L -kb32.menu.CPUFreq.13=13MHz (26MHz XTAL) -kb32.menu.CPUFreq.13.build.f_cpu=13000000L -kb32.menu.CPUFreq.10=10MHz (40MHz XTAL) -kb32.menu.CPUFreq.10.build.f_cpu=10000000L - -kb32.menu.FlashMode.qio=QIO -kb32.menu.FlashMode.qio.build.flash_mode=dio -kb32.menu.FlashMode.qio.build.boot=qio -kb32.menu.FlashMode.dio=DIO -kb32.menu.FlashMode.dio.build.flash_mode=dio -kb32.menu.FlashMode.dio.build.boot=dio - -kb32.menu.FlashFreq.80=80MHz -kb32.menu.FlashFreq.80.build.flash_freq=80m -kb32.menu.FlashFreq.40=40MHz -kb32.menu.FlashFreq.40.build.flash_freq=40m - -kb32.menu.FlashSize.4M=4MB (32Mb) -kb32.menu.FlashSize.4M.build.flash_size=4MB -kb32.menu.FlashSize.8M=8MB (64Mb) -kb32.menu.FlashSize.8M.build.flash_size=8MB -kb32.menu.FlashSize.8M.build.partitions=default_8MB -kb32.menu.FlashSize.2M=2MB (16Mb) -kb32.menu.FlashSize.2M.build.flash_size=2MB -kb32.menu.FlashSize.2M.build.partitions=minimal -kb32.menu.FlashSize.16M=16MB (128Mb) -kb32.menu.FlashSize.16M.build.flash_size=16MB - -kb32.menu.UploadSpeed.921600=921600 -kb32.menu.UploadSpeed.921600.upload.speed=921600 -kb32.menu.UploadSpeed.115200=115200 -kb32.menu.UploadSpeed.115200.upload.speed=115200 -kb32.menu.UploadSpeed.256000.windows=256000 -kb32.menu.UploadSpeed.256000.upload.speed=256000 -kb32.menu.UploadSpeed.230400.windows.upload.speed=256000 -kb32.menu.UploadSpeed.230400=230400 -kb32.menu.UploadSpeed.230400.upload.speed=230400 -kb32.menu.UploadSpeed.460800.linux=460800 -kb32.menu.UploadSpeed.460800.macosx=460800 -kb32.menu.UploadSpeed.460800.upload.speed=460800 -kb32.menu.UploadSpeed.512000.windows=512000 -kb32.menu.UploadSpeed.512000.upload.speed=512000 - -kb32.menu.LoopCore.1=Core 1 -kb32.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -kb32.menu.LoopCore.0=Core 0 -kb32.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -kb32.menu.EventsCore.1=Core 1 -kb32.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -kb32.menu.EventsCore.0=Core 0 -kb32.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -kb32.menu.DebugLevel.none=None -kb32.menu.DebugLevel.none.build.code_debug=0 -kb32.menu.DebugLevel.error=Error -kb32.menu.DebugLevel.error.build.code_debug=1 -kb32.menu.DebugLevel.warn=Warn -kb32.menu.DebugLevel.warn.build.code_debug=2 -kb32.menu.DebugLevel.info=Info -kb32.menu.DebugLevel.info.build.code_debug=3 -kb32.menu.DebugLevel.debug=Debug -kb32.menu.DebugLevel.debug.build.code_debug=4 -kb32.menu.DebugLevel.verbose=Verbose -kb32.menu.DebugLevel.verbose.build.code_debug=5 - -kb32.menu.EraseFlash.none=Disabled -kb32.menu.EraseFlash.none.upload.erase_cmd= -kb32.menu.EraseFlash.all=Enabled -kb32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapkart.name=Deneyap Kart - -deneyapkart.bootloader.tool=esptool_py -deneyapkart.bootloader.tool.default=esptool_py - -deneyapkart.upload.tool=esptool_py -deneyapkart.upload.tool.default=esptool_py -deneyapkart.upload.tool.network=esp_ota - -deneyapkart.upload.maximum_size=1310720 -deneyapkart.upload.maximum_data_size=327680 -deneyapkart.upload.flags= -deneyapkart.upload.extra_flags= - -deneyapkart.serial.disableDTR=true -deneyapkart.serial.disableRTS=true - -deneyapkart.build.tarch=xtensa -deneyapkart.build.bootloader_addr=0x1000 -deneyapkart.build.target=esp32 -deneyapkart.build.mcu=esp32 -deneyapkart.build.core=esp32 -deneyapkart.build.variant=deneyapkart -deneyapkart.build.board=DYDK - -deneyapkart.build.f_cpu=240000000L -deneyapkart.build.flash_size=4MB -deneyapkart.build.flash_freq=80m -deneyapkart.build.flash_mode=dio -deneyapkart.build.boot=qio -deneyapkart.build.partitions=default -deneyapkart.build.defines= -deneyapkart.build.loop_core= -deneyapkart.build.event_core= - -## IDE 2.0 Seems to not update the value -deneyapkart.menu.JTAGAdapter.default=Disabled -deneyapkart.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapkart.menu.JTAGAdapter.external=FTDI Adapter -deneyapkart.menu.JTAGAdapter.external.build.openocdscript=esp32-wrover-kit-3.3v.cfg -deneyapkart.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapkart.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapkart.menu.JTAGAdapter.bridge.build.openocdscript=esp32-bridge.cfg -deneyapkart.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapkart.menu.PSRAM.enabled=Enabled -deneyapkart.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -deneyapkart.menu.PSRAM.enabled.build.extra_libs= -deneyapkart.menu.PSRAM.disabled=Disabled -deneyapkart.menu.PSRAM.disabled.build.defines= -deneyapkart.menu.PSRAM.disabled.build.extra_libs= - -deneyapkart.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapkart.menu.PartitionScheme.default.build.partitions=default -deneyapkart.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapkart.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapkart.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapkart.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapkart.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapkart.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapkart.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapkart.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapkart.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapkart.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapkart.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapkart.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapkart.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapkart.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapkart.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapkart.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapkart.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapkart.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapkart.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapkart.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapkart.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapkart.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapkart.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapkart.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapkart.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapkart.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapkart.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapkart.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapkart.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapkart.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapkart.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapkart.menu.PartitionScheme.rainmaker=RainMaker -deneyapkart.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapkart.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapkart.menu.CPUFreq.240=240MHz (WiFi/BT) -deneyapkart.menu.CPUFreq.240.build.f_cpu=240000000L -deneyapkart.menu.CPUFreq.160=160MHz (WiFi/BT) -deneyapkart.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapkart.menu.CPUFreq.80=80MHz (WiFi/BT) -deneyapkart.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapkart.menu.CPUFreq.40=40MHz (40MHz XTAL) -deneyapkart.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapkart.menu.CPUFreq.26=26MHz (26MHz XTAL) -deneyapkart.menu.CPUFreq.26.build.f_cpu=26000000L -deneyapkart.menu.CPUFreq.20=20MHz (40MHz XTAL) -deneyapkart.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapkart.menu.CPUFreq.13=13MHz (26MHz XTAL) -deneyapkart.menu.CPUFreq.13.build.f_cpu=13000000L -deneyapkart.menu.CPUFreq.10=10MHz (40MHz XTAL) -deneyapkart.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapkart.menu.FlashMode.qio=QIO -deneyapkart.menu.FlashMode.qio.build.flash_mode=dio -deneyapkart.menu.FlashMode.qio.build.boot=qio -deneyapkart.menu.FlashMode.dio=DIO -deneyapkart.menu.FlashMode.dio.build.flash_mode=dio -deneyapkart.menu.FlashMode.dio.build.boot=dio - -deneyapkart.menu.FlashFreq.80=80MHz -deneyapkart.menu.FlashFreq.80.build.flash_freq=80m -deneyapkart.menu.FlashFreq.40=40MHz -deneyapkart.menu.FlashFreq.40.build.flash_freq=40m - -deneyapkart.menu.FlashSize.4M=4MB (32Mb) -deneyapkart.menu.FlashSize.4M.build.flash_size=4MB -deneyapkart.menu.FlashSize.8M=8MB (64Mb) -deneyapkart.menu.FlashSize.8M.build.flash_size=8MB -deneyapkart.menu.FlashSize.8M.build.partitions=default_8MB -deneyapkart.menu.FlashSize.2M=2MB (16Mb) -deneyapkart.menu.FlashSize.2M.build.flash_size=2MB -deneyapkart.menu.FlashSize.2M.build.partitions=minimal -deneyapkart.menu.FlashSize.16M=16MB (128Mb) -deneyapkart.menu.FlashSize.16M.build.flash_size=16MB - -deneyapkart.menu.UploadSpeed.921600=921600 -deneyapkart.menu.UploadSpeed.921600.upload.speed=921600 -deneyapkart.menu.UploadSpeed.115200=115200 -deneyapkart.menu.UploadSpeed.115200.upload.speed=115200 -deneyapkart.menu.UploadSpeed.256000.windows=256000 -deneyapkart.menu.UploadSpeed.256000.upload.speed=256000 -deneyapkart.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapkart.menu.UploadSpeed.230400=230400 -deneyapkart.menu.UploadSpeed.230400.upload.speed=230400 -deneyapkart.menu.UploadSpeed.460800.linux=460800 -deneyapkart.menu.UploadSpeed.460800.macosx=460800 -deneyapkart.menu.UploadSpeed.460800.upload.speed=460800 -deneyapkart.menu.UploadSpeed.512000.windows=512000 -deneyapkart.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapkart.menu.LoopCore.1=Core 1 -deneyapkart.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -deneyapkart.menu.LoopCore.0=Core 0 -deneyapkart.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -deneyapkart.menu.EventsCore.1=Core 1 -deneyapkart.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -deneyapkart.menu.EventsCore.0=Core 0 -deneyapkart.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -deneyapkart.menu.DebugLevel.none=None -deneyapkart.menu.DebugLevel.none.build.code_debug=0 -deneyapkart.menu.DebugLevel.error=Error -deneyapkart.menu.DebugLevel.error.build.code_debug=1 -deneyapkart.menu.DebugLevel.warn=Warn -deneyapkart.menu.DebugLevel.warn.build.code_debug=2 -deneyapkart.menu.DebugLevel.info=Info -deneyapkart.menu.DebugLevel.info.build.code_debug=3 -deneyapkart.menu.DebugLevel.debug=Debug -deneyapkart.menu.DebugLevel.debug.build.code_debug=4 -deneyapkart.menu.DebugLevel.verbose=Verbose -deneyapkart.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapkart.menu.EraseFlash.none=Disabled -deneyapkart.menu.EraseFlash.none.upload.erase_cmd= -deneyapkart.menu.EraseFlash.all=Enabled -deneyapkart.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapkart1A.name=Deneyap Kart 1A - -deneyapkart1A.bootloader.tool=esptool_py -deneyapkart1A.bootloader.tool.default=esptool_py - -deneyapkart1A.upload.tool=esptool_py -deneyapkart1A.upload.tool.default=esptool_py -deneyapkart1A.upload.tool.network=esp_ota - -deneyapkart1A.upload.maximum_size=1310720 -deneyapkart1A.upload.maximum_data_size=327680 -deneyapkart1A.upload.flags= -deneyapkart1A.upload.extra_flags= - -deneyapkart1A.serial.disableDTR=true -deneyapkart1A.serial.disableRTS=true - -deneyapkart1A.build.tarch=xtensa -deneyapkart1A.build.bootloader_addr=0x1000 -deneyapkart1A.build.target=esp32 -deneyapkart1A.build.mcu=esp32 -deneyapkart1A.build.core=esp32 -deneyapkart1A.build.variant=deneyapkart1A -deneyapkart1A.build.board=DYDK1A - -deneyapkart1A.build.f_cpu=240000000L -deneyapkart1A.build.flash_size=4MB -deneyapkart1A.build.flash_freq=80m -deneyapkart1A.build.flash_mode=dio -deneyapkart1A.build.boot=qio -deneyapkart1A.build.partitions=default -deneyapkart1A.build.defines= -deneyapkart1A.build.loop_core= -deneyapkart1A.build.event_core= - -## IDE 2.0 Seems to not update the value -deneyapkart1A.menu.JTAGAdapter.default=Disabled -deneyapkart1A.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapkart1A.menu.JTAGAdapter.external=FTDI Adapter -deneyapkart1A.menu.JTAGAdapter.external.build.openocdscript=esp32-wrover-kit-3.3v.cfg -deneyapkart1A.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapkart1A.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapkart1A.menu.JTAGAdapter.bridge.build.openocdscript=esp32-bridge.cfg -deneyapkart1A.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapkart1A.menu.PSRAM.enabled=Enabled -deneyapkart1A.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -deneyapkart1A.menu.PSRAM.enabled.build.extra_libs= -deneyapkart1A.menu.PSRAM.disabled=Disabled -deneyapkart1A.menu.PSRAM.disabled.build.defines= -deneyapkart1A.menu.PSRAM.disabled.build.extra_libs= - -deneyapkart1A.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapkart1A.menu.PartitionScheme.default.build.partitions=default -deneyapkart1A.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapkart1A.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapkart1A.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapkart1A.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapkart1A.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapkart1A.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapkart1A.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapkart1A.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapkart1A.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapkart1A.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapkart1A.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapkart1A.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapkart1A.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapkart1A.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapkart1A.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapkart1A.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapkart1A.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapkart1A.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapkart1A.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapkart1A.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapkart1A.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapkart1A.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapkart1A.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapkart1A.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapkart1A.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapkart1A.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapkart1A.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapkart1A.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapkart1A.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapkart1A.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapkart1A.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapkart1A.menu.PartitionScheme.rainmaker=RainMaker -deneyapkart1A.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapkart1A.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapkart1A.menu.CPUFreq.240=240MHz (WiFi/BT) -deneyapkart1A.menu.CPUFreq.240.build.f_cpu=240000000L -deneyapkart1A.menu.CPUFreq.160=160MHz (WiFi/BT) -deneyapkart1A.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapkart1A.menu.CPUFreq.80=80MHz (WiFi/BT) -deneyapkart1A.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapkart1A.menu.CPUFreq.40=40MHz (40MHz XTAL) -deneyapkart1A.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapkart1A.menu.CPUFreq.26=26MHz (26MHz XTAL) -deneyapkart1A.menu.CPUFreq.26.build.f_cpu=26000000L -deneyapkart1A.menu.CPUFreq.20=20MHz (40MHz XTAL) -deneyapkart1A.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapkart1A.menu.CPUFreq.13=13MHz (26MHz XTAL) -deneyapkart1A.menu.CPUFreq.13.build.f_cpu=13000000L -deneyapkart1A.menu.CPUFreq.10=10MHz (40MHz XTAL) -deneyapkart1A.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapkart1A.menu.FlashMode.qio=QIO -deneyapkart1A.menu.FlashMode.qio.build.flash_mode=dio -deneyapkart1A.menu.FlashMode.qio.build.boot=qio -deneyapkart1A.menu.FlashMode.dio=DIO -deneyapkart1A.menu.FlashMode.dio.build.flash_mode=dio -deneyapkart1A.menu.FlashMode.dio.build.boot=dio - -deneyapkart1A.menu.FlashFreq.80=80MHz -deneyapkart1A.menu.FlashFreq.80.build.flash_freq=80m -deneyapkart1A.menu.FlashFreq.40=40MHz -deneyapkart1A.menu.FlashFreq.40.build.flash_freq=40m - -deneyapkart1A.menu.FlashSize.4M=4MB (32Mb) -deneyapkart1A.menu.FlashSize.4M.build.flash_size=4MB -deneyapkart1A.menu.FlashSize.8M=8MB (64Mb) -deneyapkart1A.menu.FlashSize.8M.build.flash_size=8MB -deneyapkart1A.menu.FlashSize.8M.build.partitions=default_8MB -deneyapkart1A.menu.FlashSize.2M=2MB (16Mb) -deneyapkart1A.menu.FlashSize.2M.build.flash_size=2MB -deneyapkart1A.menu.FlashSize.2M.build.partitions=minimal -deneyapkart1A.menu.FlashSize.16M=16MB (128Mb) -deneyapkart1A.menu.FlashSize.16M.build.flash_size=16MB - -deneyapkart1A.menu.UploadSpeed.921600=921600 -deneyapkart1A.menu.UploadSpeed.921600.upload.speed=921600 -deneyapkart1A.menu.UploadSpeed.115200=115200 -deneyapkart1A.menu.UploadSpeed.115200.upload.speed=115200 -deneyapkart1A.menu.UploadSpeed.256000.windows=256000 -deneyapkart1A.menu.UploadSpeed.256000.upload.speed=256000 -deneyapkart1A.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapkart1A.menu.UploadSpeed.230400=230400 -deneyapkart1A.menu.UploadSpeed.230400.upload.speed=230400 -deneyapkart1A.menu.UploadSpeed.460800.linux=460800 -deneyapkart1A.menu.UploadSpeed.460800.macosx=460800 -deneyapkart1A.menu.UploadSpeed.460800.upload.speed=460800 -deneyapkart1A.menu.UploadSpeed.512000.windows=512000 -deneyapkart1A.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapkart1A.menu.LoopCore.1=Core 1 -deneyapkart1A.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -deneyapkart1A.menu.LoopCore.0=Core 0 -deneyapkart1A.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -deneyapkart1A.menu.EventsCore.1=Core 1 -deneyapkart1A.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -deneyapkart1A.menu.EventsCore.0=Core 0 -deneyapkart1A.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -deneyapkart1A.menu.DebugLevel.none=None -deneyapkart1A.menu.DebugLevel.none.build.code_debug=0 -deneyapkart1A.menu.DebugLevel.error=Error -deneyapkart1A.menu.DebugLevel.error.build.code_debug=1 -deneyapkart1A.menu.DebugLevel.warn=Warn -deneyapkart1A.menu.DebugLevel.warn.build.code_debug=2 -deneyapkart1A.menu.DebugLevel.info=Info -deneyapkart1A.menu.DebugLevel.info.build.code_debug=3 -deneyapkart1A.menu.DebugLevel.debug=Debug -deneyapkart1A.menu.DebugLevel.debug.build.code_debug=4 -deneyapkart1A.menu.DebugLevel.verbose=Verbose -deneyapkart1A.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapkart1A.menu.EraseFlash.none=Disabled -deneyapkart1A.menu.EraseFlash.none.upload.erase_cmd= -deneyapkart1A.menu.EraseFlash.all=Enabled -deneyapkart1A.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapkart1Av2.name=Deneyap Kart 1A v2 - -deneyapkart1Av2.vid.0=0x303a -deneyapkart1Av2.pid.0=0x8147 - -deneyapkart1Av2.bootloader.tool=esptool_py -deneyapkart1Av2.bootloader.tool.default=esptool_py - -deneyapkart1Av2.upload.tool=esptool_py -deneyapkart1Av2.upload.tool.default=esptool_py -deneyapkart1Av2.upload.tool.network=esp_ota - -deneyapkart1Av2.upload.maximum_size=1310720 -deneyapkart1Av2.upload.maximum_data_size=327680 -deneyapkart1Av2.upload.flags= -deneyapkart1Av2.upload.extra_flags= -deneyapkart1Av2.upload.use_1200bps_touch=false -deneyapkart1Av2.upload.wait_for_upload_port=false - -deneyapkart1Av2.serial.disableDTR=false -deneyapkart1Av2.serial.disableRTS=false - -deneyapkart1Av2.build.tarch=xtensa -deneyapkart1Av2.build.bootloader_addr=0x0 -deneyapkart1Av2.build.target=esp32s3 -deneyapkart1Av2.build.mcu=esp32s3 -deneyapkart1Av2.build.core=esp32 -deneyapkart1Av2.build.variant=deneyapkart1Av2 -deneyapkart1Av2.build.board=DYDK1Av2 - -deneyapkart1Av2.build.usb_mode=1 -deneyapkart1Av2.build.cdc_on_boot=1 -deneyapkart1Av2.build.msc_on_boot=0 -deneyapkart1Av2.build.dfu_on_boot=0 -deneyapkart1Av2.build.f_cpu=240000000L -deneyapkart1Av2.build.flash_size=4MB -deneyapkart1Av2.build.flash_freq=80m -deneyapkart1Av2.build.flash_mode=dio -deneyapkart1Av2.build.boot=qio -deneyapkart1Av2.build.boot_freq=80m -deneyapkart1Av2.build.partitions=default -deneyapkart1Av2.build.defines=-DBOARD_HAS_PSRAM -deneyapkart1Av2.build.loop_core= -deneyapkart1Av2.build.event_core= -deneyapkart1Av2.build.psram_type=opi -deneyapkart1Av2.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -deneyapkart1Av2.menu.JTAGAdapter.default=Disabled -deneyapkart1Av2.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapkart1Av2.menu.JTAGAdapter.builtin=Integrated USB JTAG -deneyapkart1Av2.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -deneyapkart1Av2.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -deneyapkart1Av2.menu.JTAGAdapter.external=FTDI Adapter -deneyapkart1Av2.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -deneyapkart1Av2.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapkart1Av2.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapkart1Av2.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -deneyapkart1Av2.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapkart1Av2.menu.PSRAM.opi=OPI PSRAM -deneyapkart1Av2.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -deneyapkart1Av2.menu.PSRAM.opi.build.psram_type=opi -deneyapkart1Av2.menu.PSRAM.disabled=Disabled -deneyapkart1Av2.menu.PSRAM.disabled.build.defines= -deneyapkart1Av2.menu.PSRAM.disabled.build.psram_type=qspi -deneyapkart1Av2.menu.PSRAM.enabled=QSPI PSRAM -deneyapkart1Av2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -deneyapkart1Av2.menu.PSRAM.enabled.build.psram_type=qspi - -deneyapkart1Av2.menu.FlashMode.qio=QIO 80MHz -deneyapkart1Av2.menu.FlashMode.qio.build.flash_mode=dio -deneyapkart1Av2.menu.FlashMode.qio.build.boot=qio -deneyapkart1Av2.menu.FlashMode.qio.build.boot_freq=80m -deneyapkart1Av2.menu.FlashMode.qio.build.flash_freq=80m -deneyapkart1Av2.menu.FlashMode.qio120=QIO 120MHz -deneyapkart1Av2.menu.FlashMode.qio120.build.flash_mode=dio -deneyapkart1Av2.menu.FlashMode.qio120.build.boot=qio -deneyapkart1Av2.menu.FlashMode.qio120.build.boot_freq=120m -deneyapkart1Av2.menu.FlashMode.qio120.build.flash_freq=80m -deneyapkart1Av2.menu.FlashMode.dio=DIO 80MHz -deneyapkart1Av2.menu.FlashMode.dio.build.flash_mode=dio -deneyapkart1Av2.menu.FlashMode.dio.build.boot=dio -deneyapkart1Av2.menu.FlashMode.dio.build.boot_freq=80m -deneyapkart1Av2.menu.FlashMode.dio.build.flash_freq=80m -deneyapkart1Av2.menu.FlashMode.opi=OPI 80MHz -deneyapkart1Av2.menu.FlashMode.opi.build.flash_mode=dout -deneyapkart1Av2.menu.FlashMode.opi.build.boot=opi -deneyapkart1Av2.menu.FlashMode.opi.build.boot_freq=80m -deneyapkart1Av2.menu.FlashMode.opi.build.flash_freq=80m - -deneyapkart1Av2.menu.FlashSize.4M=4MB (32Mb) -deneyapkart1Av2.menu.FlashSize.4M.build.flash_size=4MB -deneyapkart1Av2.menu.FlashSize.8M=8MB (64Mb) -deneyapkart1Av2.menu.FlashSize.8M.build.flash_size=8MB -deneyapkart1Av2.menu.FlashSize.8M.build.partitions=default_8MB -deneyapkart1Av2.menu.FlashSize.16M=16MB (128Mb) -deneyapkart1Av2.menu.FlashSize.16M.build.flash_size=16MB -#deneyapkart1Av2.menu.FlashSize.32M=32MB (256Mb) -#deneyapkart1Av2.menu.FlashSize.32M.build.flash_size=32MB - -deneyapkart1Av2.menu.LoopCore.1=Core 1 -deneyapkart1Av2.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -deneyapkart1Av2.menu.LoopCore.0=Core 0 -deneyapkart1Av2.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -deneyapkart1Av2.menu.EventsCore.1=Core 1 -deneyapkart1Av2.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -deneyapkart1Av2.menu.EventsCore.0=Core 0 -deneyapkart1Av2.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -deneyapkart1Av2.menu.USBMode.hwcdc=Hardware CDC and JTAG -deneyapkart1Av2.menu.USBMode.hwcdc.build.usb_mode=1 -deneyapkart1Av2.menu.USBMode.default=USB-OTG (TinyUSB) -deneyapkart1Av2.menu.USBMode.default.build.usb_mode=0 - -deneyapkart1Av2.menu.CDCOnBoot.cdc=Enabled -deneyapkart1Av2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -deneyapkart1Av2.menu.CDCOnBoot.default=Disabled -deneyapkart1Av2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -deneyapkart1Av2.menu.MSCOnBoot.default=Disabled -deneyapkart1Av2.menu.MSCOnBoot.default.build.msc_on_boot=0 -deneyapkart1Av2.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -deneyapkart1Av2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -deneyapkart1Av2.menu.DFUOnBoot.default=Disabled -deneyapkart1Av2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -deneyapkart1Av2.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -deneyapkart1Av2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -deneyapkart1Av2.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -deneyapkart1Av2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -deneyapkart1Av2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -deneyapkart1Av2.menu.UploadMode.default=UART0 / Hardware CDC -deneyapkart1Av2.menu.UploadMode.default.upload.use_1200bps_touch=false -deneyapkart1Av2.menu.UploadMode.default.upload.wait_for_upload_port=false - -deneyapkart1Av2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.default.build.partitions=default -deneyapkart1Av2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapkart1Av2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapkart1Av2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapkart1Av2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapkart1Av2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapkart1Av2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapkart1Av2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapkart1Av2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapkart1Av2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapkart1Av2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapkart1Av2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapkart1Av2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapkart1Av2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapkart1Av2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapkart1Av2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapkart1Av2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapkart1Av2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapkart1Av2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapkart1Av2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapkart1Av2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapkart1Av2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapkart1Av2.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapkart1Av2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapkart1Av2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapkart1Av2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapkart1Av2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapkart1Av2.menu.PartitionScheme.rainmaker=RainMaker -deneyapkart1Av2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapkart1Av2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapkart1Av2.menu.CPUFreq.240=240MHz (WiFi) -deneyapkart1Av2.menu.CPUFreq.240.build.f_cpu=240000000L -deneyapkart1Av2.menu.CPUFreq.160=160MHz (WiFi) -deneyapkart1Av2.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapkart1Av2.menu.CPUFreq.80=80MHz (WiFi) -deneyapkart1Av2.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapkart1Av2.menu.CPUFreq.40=40MHz -deneyapkart1Av2.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapkart1Av2.menu.CPUFreq.20=20MHz -deneyapkart1Av2.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapkart1Av2.menu.CPUFreq.10=10MHz -deneyapkart1Av2.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapkart1Av2.menu.UploadSpeed.921600=921600 -deneyapkart1Av2.menu.UploadSpeed.921600.upload.speed=921600 -deneyapkart1Av2.menu.UploadSpeed.115200=115200 -deneyapkart1Av2.menu.UploadSpeed.115200.upload.speed=115200 -deneyapkart1Av2.menu.UploadSpeed.256000.windows=256000 -deneyapkart1Av2.menu.UploadSpeed.256000.upload.speed=256000 -deneyapkart1Av2.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapkart1Av2.menu.UploadSpeed.230400=230400 -deneyapkart1Av2.menu.UploadSpeed.230400.upload.speed=230400 -deneyapkart1Av2.menu.UploadSpeed.460800.linux=460800 -deneyapkart1Av2.menu.UploadSpeed.460800.macosx=460800 -deneyapkart1Av2.menu.UploadSpeed.460800.upload.speed=460800 -deneyapkart1Av2.menu.UploadSpeed.512000.windows=512000 -deneyapkart1Av2.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapkart1Av2.menu.DebugLevel.none=None -deneyapkart1Av2.menu.DebugLevel.none.build.code_debug=0 -deneyapkart1Av2.menu.DebugLevel.error=Error -deneyapkart1Av2.menu.DebugLevel.error.build.code_debug=1 -deneyapkart1Av2.menu.DebugLevel.warn=Warn -deneyapkart1Av2.menu.DebugLevel.warn.build.code_debug=2 -deneyapkart1Av2.menu.DebugLevel.info=Info -deneyapkart1Av2.menu.DebugLevel.info.build.code_debug=3 -deneyapkart1Av2.menu.DebugLevel.debug=Debug -deneyapkart1Av2.menu.DebugLevel.debug.build.code_debug=4 -deneyapkart1Av2.menu.DebugLevel.verbose=Verbose -deneyapkart1Av2.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapkart1Av2.menu.EraseFlash.none=Disabled -deneyapkart1Av2.menu.EraseFlash.none.upload.erase_cmd= -deneyapkart1Av2.menu.EraseFlash.all=Enabled -deneyapkart1Av2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapmini.name=Deneyap Mini - -deneyapmini.vid.0=0x303a -deneyapmini.pid.0=0x8141 - -deneyapmini.bootloader.tool=esptool_py -deneyapmini.bootloader.tool.default=esptool_py - -deneyapmini.upload.tool=esptool_py -deneyapmini.upload.tool.default=esptool_py -deneyapmini.upload.tool.network=esp_ota - -deneyapmini.upload.maximum_size=1310720 -deneyapmini.upload.maximum_data_size=327680 -deneyapmini.upload.flags= -deneyapmini.upload.extra_flags= -deneyapmini.upload.use_1200bps_touch=false -deneyapmini.upload.wait_for_upload_port=false - -deneyapmini.serial.disableDTR=false -deneyapmini.serial.disableRTS=false - -deneyapmini.build.tarch=xtensa -deneyapmini.build.bootloader_addr=0x1000 -deneyapmini.build.target=esp32s2 -deneyapmini.build.mcu=esp32s2 -deneyapmini.build.core=esp32 -deneyapmini.build.variant=deneyapmini -deneyapmini.build.board=DYM - -deneyapmini.build.cdc_on_boot=1 -deneyapmini.build.msc_on_boot=0 -deneyapmini.build.dfu_on_boot=0 -deneyapmini.build.f_cpu=240000000L -deneyapmini.build.flash_size=4MB -deneyapmini.build.flash_freq=80m -deneyapmini.build.flash_mode=dio -deneyapmini.build.boot=qio -deneyapmini.build.partitions=default -deneyapmini.build.defines= - -## IDE 2.0 Seems to not update the value -deneyapmini.menu.JTAGAdapter.default=Disabled -deneyapmini.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapmini.menu.JTAGAdapter.external=FTDI Adapter -deneyapmini.menu.JTAGAdapter.external.build.openocdscript=esp32s2-kaluga-1.cfg -deneyapmini.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapmini.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapmini.menu.JTAGAdapter.bridge.build.openocdscript=esp32s2-bridge.cfg -deneyapmini.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapmini.menu.CDCOnBoot.cdc=Enabled -deneyapmini.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -deneyapmini.menu.CDCOnBoot.default=Disabled -deneyapmini.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -deneyapmini.menu.MSCOnBoot.default=Disabled -deneyapmini.menu.MSCOnBoot.default.build.msc_on_boot=0 -deneyapmini.menu.MSCOnBoot.msc=Enabled -deneyapmini.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -deneyapmini.menu.DFUOnBoot.default=Disabled -deneyapmini.menu.DFUOnBoot.default.build.dfu_on_boot=0 -deneyapmini.menu.DFUOnBoot.dfu=Enabled -deneyapmini.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -deneyapmini.menu.UploadMode.cdc=Internal USB -deneyapmini.menu.UploadMode.cdc.upload.use_1200bps_touch=true -deneyapmini.menu.UploadMode.cdc.upload.wait_for_upload_port=true -deneyapmini.menu.UploadMode.default=UART0 -deneyapmini.menu.UploadMode.default.upload.use_1200bps_touch=false -deneyapmini.menu.UploadMode.default.upload.wait_for_upload_port=false - -deneyapmini.menu.PSRAM.disabled=Disabled -deneyapmini.menu.PSRAM.disabled.build.defines= -deneyapmini.menu.PSRAM.enabled=Enabled -deneyapmini.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -deneyapmini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapmini.menu.PartitionScheme.default.build.partitions=default -deneyapmini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapmini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapmini.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapmini.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapmini.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapmini.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapmini.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapmini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapmini.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapmini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapmini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapmini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapmini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapmini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapmini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapmini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapmini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapmini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapmini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapmini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapmini.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapmini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapmini.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapmini.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapmini.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapmini.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapmini.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapmini.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapmini.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapmini.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapmini.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapmini.menu.PartitionScheme.rainmaker=RainMaker -deneyapmini.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapmini.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapmini.menu.CPUFreq.240=240MHz (WiFi) -deneyapmini.menu.CPUFreq.240.build.f_cpu=240000000L -deneyapmini.menu.CPUFreq.160=160MHz (WiFi) -deneyapmini.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapmini.menu.CPUFreq.80=80MHz (WiFi) -deneyapmini.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapmini.menu.CPUFreq.40=40MHz -deneyapmini.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapmini.menu.CPUFreq.20=20MHz -deneyapmini.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapmini.menu.CPUFreq.10=10MHz -deneyapmini.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapmini.menu.FlashMode.qio=QIO -deneyapmini.menu.FlashMode.qio.build.flash_mode=dio -deneyapmini.menu.FlashMode.qio.build.boot=qio -deneyapmini.menu.FlashMode.dio=DIO -deneyapmini.menu.FlashMode.dio.build.flash_mode=dio -deneyapmini.menu.FlashMode.dio.build.boot=dio - -deneyapmini.menu.FlashFreq.80=80MHz -deneyapmini.menu.FlashFreq.80.build.flash_freq=80m -deneyapmini.menu.FlashFreq.40=40MHz -deneyapmini.menu.FlashFreq.40.build.flash_freq=40m - -deneyapmini.menu.FlashSize.4M=4MB (32Mb) -deneyapmini.menu.FlashSize.4M.build.flash_size=4MB -deneyapmini.menu.FlashSize.8M=8MB (64Mb) -deneyapmini.menu.FlashSize.8M.build.flash_size=8MB -deneyapmini.menu.FlashSize.8M.build.partitions=default_8MB -deneyapmini.menu.FlashSize.2M=2MB (16Mb) -deneyapmini.menu.FlashSize.2M.build.flash_size=2MB -deneyapmini.menu.FlashSize.2M.build.partitions=minimal -deneyapmini.menu.FlashSize.16M=16MB (128Mb) -deneyapmini.menu.FlashSize.16M.build.flash_size=16MB - -deneyapmini.menu.UploadSpeed.921600=921600 -deneyapmini.menu.UploadSpeed.921600.upload.speed=921600 -deneyapmini.menu.UploadSpeed.115200=115200 -deneyapmini.menu.UploadSpeed.115200.upload.speed=115200 -deneyapmini.menu.UploadSpeed.256000.windows=256000 -deneyapmini.menu.UploadSpeed.256000.upload.speed=256000 -deneyapmini.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapmini.menu.UploadSpeed.230400=230400 -deneyapmini.menu.UploadSpeed.230400.upload.speed=230400 -deneyapmini.menu.UploadSpeed.460800.linux=460800 -deneyapmini.menu.UploadSpeed.460800.macosx=460800 -deneyapmini.menu.UploadSpeed.460800.upload.speed=460800 -deneyapmini.menu.UploadSpeed.512000.windows=512000 -deneyapmini.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapmini.menu.DebugLevel.none=None -deneyapmini.menu.DebugLevel.none.build.code_debug=0 -deneyapmini.menu.DebugLevel.error=Error -deneyapmini.menu.DebugLevel.error.build.code_debug=1 -deneyapmini.menu.DebugLevel.warn=Warn -deneyapmini.menu.DebugLevel.warn.build.code_debug=2 -deneyapmini.menu.DebugLevel.info=Info -deneyapmini.menu.DebugLevel.info.build.code_debug=3 -deneyapmini.menu.DebugLevel.debug=Debug -deneyapmini.menu.DebugLevel.debug.build.code_debug=4 -deneyapmini.menu.DebugLevel.verbose=Verbose -deneyapmini.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapmini.menu.EraseFlash.none=Disabled -deneyapmini.menu.EraseFlash.none.upload.erase_cmd= -deneyapmini.menu.EraseFlash.all=Enabled -deneyapmini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapminiv2.name=Deneyap Mini v2 - -deneyapminiv2.vid.0=0x303a -deneyapminiv2.pid.0=0x8144 - -deneyapminiv2.bootloader.tool=esptool_py -deneyapminiv2.bootloader.tool.default=esptool_py - -deneyapminiv2.upload.tool=esptool_py -deneyapminiv2.upload.tool.default=esptool_py -deneyapminiv2.upload.tool.network=esp_ota - -deneyapminiv2.upload.maximum_size=1310720 -deneyapminiv2.upload.maximum_data_size=327680 -deneyapminiv2.upload.flags= -deneyapminiv2.upload.extra_flags= -deneyapminiv2.upload.use_1200bps_touch=false -deneyapminiv2.upload.wait_for_upload_port=false - -deneyapminiv2.serial.disableDTR=false -deneyapminiv2.serial.disableRTS=false - -deneyapminiv2.build.tarch=xtensa -deneyapminiv2.build.bootloader_addr=0x1000 -deneyapminiv2.build.target=esp32s2 -deneyapminiv2.build.mcu=esp32s2 -deneyapminiv2.build.core=esp32 -deneyapminiv2.build.variant=deneyapminiv2 -deneyapminiv2.build.board=DYMv2 - -deneyapminiv2.build.cdc_on_boot=1 -deneyapminiv2.build.msc_on_boot=0 -deneyapminiv2.build.dfu_on_boot=0 -deneyapminiv2.build.f_cpu=240000000L -deneyapminiv2.build.flash_size=4MB -deneyapminiv2.build.flash_freq=80m -deneyapminiv2.build.flash_mode=dio -deneyapminiv2.build.boot=qio -deneyapminiv2.build.partitions=default -deneyapminiv2.build.defines=-DBOARD_HAS_PSRAM - -## IDE 2.0 Seems to not update the value -deneyapminiv2.menu.JTAGAdapter.default=Disabled -deneyapminiv2.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapminiv2.menu.JTAGAdapter.external=FTDI Adapter -deneyapminiv2.menu.JTAGAdapter.external.build.openocdscript=esp32s2-kaluga-1.cfg -deneyapminiv2.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapminiv2.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapminiv2.menu.JTAGAdapter.bridge.build.openocdscript=esp32s2-bridge.cfg -deneyapminiv2.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapminiv2.menu.CDCOnBoot.cdc=Enabled -deneyapminiv2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -deneyapminiv2.menu.CDCOnBoot.default=Disabled -deneyapminiv2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -deneyapminiv2.menu.MSCOnBoot.default=Disabled -deneyapminiv2.menu.MSCOnBoot.default.build.msc_on_boot=0 -deneyapminiv2.menu.MSCOnBoot.msc=Enabled -deneyapminiv2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -deneyapminiv2.menu.DFUOnBoot.default=Disabled -deneyapminiv2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -deneyapminiv2.menu.DFUOnBoot.dfu=Enabled -deneyapminiv2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -deneyapminiv2.menu.UploadMode.cdc=Internal USB -deneyapminiv2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -deneyapminiv2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -deneyapminiv2.menu.UploadMode.default=UART0 -deneyapminiv2.menu.UploadMode.default.upload.use_1200bps_touch=false -deneyapminiv2.menu.UploadMode.default.upload.wait_for_upload_port=false - -deneyapminiv2.menu.PSRAM.enabled=Enabled -deneyapminiv2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -deneyapminiv2.menu.PSRAM.disabled=Disabled -deneyapminiv2.menu.PSRAM.disabled.build.defines= - -deneyapminiv2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapminiv2.menu.PartitionScheme.default.build.partitions=default -deneyapminiv2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapminiv2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapminiv2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapminiv2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapminiv2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapminiv2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapminiv2.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapminiv2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapminiv2.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapminiv2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapminiv2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapminiv2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapminiv2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapminiv2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapminiv2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapminiv2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapminiv2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapminiv2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapminiv2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapminiv2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapminiv2.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapminiv2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapminiv2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapminiv2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapminiv2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapminiv2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapminiv2.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapminiv2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapminiv2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapminiv2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapminiv2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapminiv2.menu.PartitionScheme.rainmaker=RainMaker -deneyapminiv2.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapminiv2.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapminiv2.menu.CPUFreq.240=240MHz (WiFi) -deneyapminiv2.menu.CPUFreq.240.build.f_cpu=240000000L -deneyapminiv2.menu.CPUFreq.160=160MHz (WiFi) -deneyapminiv2.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapminiv2.menu.CPUFreq.80=80MHz (WiFi) -deneyapminiv2.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapminiv2.menu.CPUFreq.40=40MHz -deneyapminiv2.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapminiv2.menu.CPUFreq.20=20MHz -deneyapminiv2.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapminiv2.menu.CPUFreq.10=10MHz -deneyapminiv2.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapminiv2.menu.FlashMode.qio=QIO -deneyapminiv2.menu.FlashMode.qio.build.flash_mode=dio -deneyapminiv2.menu.FlashMode.qio.build.boot=qio -deneyapminiv2.menu.FlashMode.dio=DIO -deneyapminiv2.menu.FlashMode.dio.build.flash_mode=dio -deneyapminiv2.menu.FlashMode.dio.build.boot=dio - -deneyapminiv2.menu.FlashFreq.80=80MHz -deneyapminiv2.menu.FlashFreq.80.build.flash_freq=80m -deneyapminiv2.menu.FlashFreq.40=40MHz -deneyapminiv2.menu.FlashFreq.40.build.flash_freq=40m - -deneyapminiv2.menu.FlashSize.4M=4MB (32Mb) -deneyapminiv2.menu.FlashSize.4M.build.flash_size=4MB -deneyapminiv2.menu.FlashSize.8M=8MB (64Mb) -deneyapminiv2.menu.FlashSize.8M.build.flash_size=8MB -deneyapminiv2.menu.FlashSize.8M.build.partitions=default_8MB -deneyapminiv2.menu.FlashSize.2M=2MB (16Mb) -deneyapminiv2.menu.FlashSize.2M.build.flash_size=2MB -deneyapminiv2.menu.FlashSize.2M.build.partitions=minimal -deneyapminiv2.menu.FlashSize.16M=16MB (128Mb) -deneyapminiv2.menu.FlashSize.16M.build.flash_size=16MB - -deneyapminiv2.menu.UploadSpeed.921600=921600 -deneyapminiv2.menu.UploadSpeed.921600.upload.speed=921600 -deneyapminiv2.menu.UploadSpeed.115200=115200 -deneyapminiv2.menu.UploadSpeed.115200.upload.speed=115200 -deneyapminiv2.menu.UploadSpeed.256000.windows=256000 -deneyapminiv2.menu.UploadSpeed.256000.upload.speed=256000 -deneyapminiv2.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapminiv2.menu.UploadSpeed.230400=230400 -deneyapminiv2.menu.UploadSpeed.230400.upload.speed=230400 -deneyapminiv2.menu.UploadSpeed.460800.linux=460800 -deneyapminiv2.menu.UploadSpeed.460800.macosx=460800 -deneyapminiv2.menu.UploadSpeed.460800.upload.speed=460800 -deneyapminiv2.menu.UploadSpeed.512000.windows=512000 -deneyapminiv2.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapminiv2.menu.DebugLevel.none=None -deneyapminiv2.menu.DebugLevel.none.build.code_debug=0 -deneyapminiv2.menu.DebugLevel.error=Error -deneyapminiv2.menu.DebugLevel.error.build.code_debug=1 -deneyapminiv2.menu.DebugLevel.warn=Warn -deneyapminiv2.menu.DebugLevel.warn.build.code_debug=2 -deneyapminiv2.menu.DebugLevel.info=Info -deneyapminiv2.menu.DebugLevel.info.build.code_debug=3 -deneyapminiv2.menu.DebugLevel.debug=Debug -deneyapminiv2.menu.DebugLevel.debug.build.code_debug=4 -deneyapminiv2.menu.DebugLevel.verbose=Verbose -deneyapminiv2.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapminiv2.menu.EraseFlash.none=Disabled -deneyapminiv2.menu.EraseFlash.none.upload.erase_cmd= -deneyapminiv2.menu.EraseFlash.all=Enabled -deneyapminiv2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -deneyapkartg.name=Deneyap Kart G - -deneyapkartg.vid.0=0x303a -deneyapkartg.pid.0=0x814A - -deneyapkartg.bootloader.tool=esptool_py -deneyapkartg.bootloader.tool.default=esptool_py - -deneyapkartg.upload.tool=esptool_py -deneyapkartg.upload.tool.default=esptool_py -deneyapkartg.upload.tool.network=esp_ota - -deneyapkartg.upload.maximum_size=1310720 -deneyapkartg.upload.maximum_data_size=327680 -deneyapkartg.upload.flags= -deneyapkartg.upload.extra_flags= -deneyapkartg.upload.use_1200bps_touch=false -deneyapkartg.upload.wait_for_upload_port=false - -deneyapkartg.serial.disableDTR=false -deneyapkartg.serial.disableRTS=false - -deneyapkartg.build.tarch=riscv32 -deneyapkartg.build.target=esp -deneyapkartg.build.mcu=esp32c3 -deneyapkartg.build.core=esp32 -deneyapkartg.build.variant=deneyapkartg -deneyapkartg.build.board=DYG -deneyapkartg.build.bootloader_addr=0x0 - -deneyapkartg.build.cdc_on_boot=1 -deneyapkartg.build.f_cpu=160000000L -deneyapkartg.build.flash_size=4MB -deneyapkartg.build.flash_freq=80m -deneyapkartg.build.flash_mode=dio -deneyapkartg.build.boot=qio -deneyapkartg.build.partitions=default -deneyapkartg.build.defines= - -## IDE 2.0 Seems to not update the value -deneyapkartg.menu.JTAGAdapter.default=Disabled -deneyapkartg.menu.JTAGAdapter.default.build.copy_jtag_files=0 -deneyapkartg.menu.JTAGAdapter.builtin=Integrated USB JTAG -deneyapkartg.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg -deneyapkartg.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -deneyapkartg.menu.JTAGAdapter.external=FTDI Adapter -deneyapkartg.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg -deneyapkartg.menu.JTAGAdapter.external.build.copy_jtag_files=1 -deneyapkartg.menu.JTAGAdapter.bridge=ESP USB Bridge -deneyapkartg.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg -deneyapkartg.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -deneyapkartg.menu.CDCOnBoot.cdc=Enabled -deneyapkartg.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -deneyapkartg.menu.CDCOnBoot.default=Disabled -deneyapkartg.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -deneyapkartg.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -deneyapkartg.menu.PartitionScheme.default.build.partitions=default -deneyapkartg.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -deneyapkartg.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -deneyapkartg.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -deneyapkartg.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -deneyapkartg.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -deneyapkartg.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -deneyapkartg.menu.PartitionScheme.minimal.build.partitions=minimal -deneyapkartg.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -deneyapkartg.menu.PartitionScheme.no_ota.build.partitions=no_ota -deneyapkartg.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -deneyapkartg.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -deneyapkartg.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -deneyapkartg.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -deneyapkartg.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -deneyapkartg.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -deneyapkartg.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -deneyapkartg.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -deneyapkartg.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -deneyapkartg.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -deneyapkartg.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -deneyapkartg.menu.PartitionScheme.huge_app.build.partitions=huge_app -deneyapkartg.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -deneyapkartg.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -deneyapkartg.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -deneyapkartg.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -deneyapkartg.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -deneyapkartg.menu.PartitionScheme.fatflash.build.partitions=ffat -deneyapkartg.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -deneyapkartg.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -deneyapkartg.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -deneyapkartg.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -deneyapkartg.menu.PartitionScheme.rainmaker=RainMaker -deneyapkartg.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -deneyapkartg.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -deneyapkartg.menu.CPUFreq.160=160MHz (WiFi) -deneyapkartg.menu.CPUFreq.160.build.f_cpu=160000000L -deneyapkartg.menu.CPUFreq.80=80MHz (WiFi) -deneyapkartg.menu.CPUFreq.80.build.f_cpu=80000000L -deneyapkartg.menu.CPUFreq.40=40MHz -deneyapkartg.menu.CPUFreq.40.build.f_cpu=40000000L -deneyapkartg.menu.CPUFreq.20=20MHz -deneyapkartg.menu.CPUFreq.20.build.f_cpu=20000000L -deneyapkartg.menu.CPUFreq.10=10MHz -deneyapkartg.menu.CPUFreq.10.build.f_cpu=10000000L - -deneyapkartg.menu.FlashMode.qio=QIO -deneyapkartg.menu.FlashMode.qio.build.flash_mode=dio -deneyapkartg.menu.FlashMode.qio.build.boot=qio -deneyapkartg.menu.FlashMode.dio=DIO -deneyapkartg.menu.FlashMode.dio.build.flash_mode=dio -deneyapkartg.menu.FlashMode.dio.build.boot=dio - -deneyapkartg.menu.FlashFreq.80=80MHz -deneyapkartg.menu.FlashFreq.80.build.flash_freq=80m -deneyapkartg.menu.FlashFreq.40=40MHz -deneyapkartg.menu.FlashFreq.40.build.flash_freq=40m - -deneyapkartg.menu.FlashSize.4M=4MB (32Mb) -deneyapkartg.menu.FlashSize.4M.build.flash_size=4MB -deneyapkartg.menu.FlashSize.8M=8MB (64Mb) -deneyapkartg.menu.FlashSize.8M.build.flash_size=8MB -deneyapkartg.menu.FlashSize.8M.build.partitions=default_8MB -deneyapkartg.menu.FlashSize.2M=2MB (16Mb) -deneyapkartg.menu.FlashSize.2M.build.flash_size=2MB -deneyapkartg.menu.FlashSize.2M.build.partitions=minimal -deneyapkartg.menu.FlashSize.16M=16MB (128Mb) -deneyapkartg.menu.FlashSize.16M.build.flash_size=16MB - -deneyapkartg.menu.UploadSpeed.921600=921600 -deneyapkartg.menu.UploadSpeed.921600.upload.speed=921600 -deneyapkartg.menu.UploadSpeed.115200=115200 -deneyapkartg.menu.UploadSpeed.115200.upload.speed=115200 -deneyapkartg.menu.UploadSpeed.256000.windows=256000 -deneyapkartg.menu.UploadSpeed.256000.upload.speed=256000 -deneyapkartg.menu.UploadSpeed.230400.windows.upload.speed=256000 -deneyapkartg.menu.UploadSpeed.230400=230400 -deneyapkartg.menu.UploadSpeed.230400.upload.speed=230400 -deneyapkartg.menu.UploadSpeed.460800.linux=460800 -deneyapkartg.menu.UploadSpeed.460800.macosx=460800 -deneyapkartg.menu.UploadSpeed.460800.upload.speed=460800 -deneyapkartg.menu.UploadSpeed.512000.windows=512000 -deneyapkartg.menu.UploadSpeed.512000.upload.speed=512000 - -deneyapkartg.menu.DebugLevel.none=None -deneyapkartg.menu.DebugLevel.none.build.code_debug=0 -deneyapkartg.menu.DebugLevel.error=Error -deneyapkartg.menu.DebugLevel.error.build.code_debug=1 -deneyapkartg.menu.DebugLevel.warn=Warn -deneyapkartg.menu.DebugLevel.warn.build.code_debug=2 -deneyapkartg.menu.DebugLevel.info=Info -deneyapkartg.menu.DebugLevel.info.build.code_debug=3 -deneyapkartg.menu.DebugLevel.debug=Debug -deneyapkartg.menu.DebugLevel.debug.build.code_debug=4 -deneyapkartg.menu.DebugLevel.verbose=Verbose -deneyapkartg.menu.DebugLevel.verbose.build.code_debug=5 - -deneyapkartg.menu.EraseFlash.none=Disabled -deneyapkartg.menu.EraseFlash.none.upload.erase_cmd= -deneyapkartg.menu.EraseFlash.all=Enabled -deneyapkartg.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-trueverit-iot-driver.name=Trueverit ESP32 Universal IoT Driver - -esp32-trueverit-iot-driver.bootloader.tool=esptool_py -esp32-trueverit-iot-driver.bootloader.tool.default=esptool_py - -esp32-trueverit-iot-driver.upload.tool=esptool_py -esp32-trueverit-iot-driver.upload.tool.default=esptool_py -esp32-trueverit-iot-driver.upload.tool.network=esp_ota - -esp32-trueverit-iot-driver.upload.maximum_size=1310720 -esp32-trueverit-iot-driver.upload.maximum_data_size=327680 -esp32-trueverit-iot-driver.upload.flags= -esp32-trueverit-iot-driver.upload.extra_flags= - -esp32-trueverit-iot-driver.serial.disableDTR=true -esp32-trueverit-iot-driver.serial.disableRTS=true - -esp32-trueverit-iot-driver.build.tarch=xtensa -esp32-trueverit-iot-driver.build.bootloader_addr=0x1000 -esp32-trueverit-iot-driver.build.target=esp32 -esp32-trueverit-iot-driver.build.mcu=esp32 -esp32-trueverit-iot-driver.build.core=esp32 -esp32-trueverit-iot-driver.build.variant=esp32-trueverit-iot-driver -esp32-trueverit-iot-driver.build.board=Trueverit_ESP32_Universal_IoT_Driver - -esp32-trueverit-iot-driver.build.f_cpu=240000000L -esp32-trueverit-iot-driver.build.flash_mode=dio -esp32-trueverit-iot-driver.build.flash_size=4MB -esp32-trueverit-iot-driver.build.boot=dio -esp32-trueverit-iot-driver.build.partitions=default -esp32-trueverit-iot-driver.build.defines= - -esp32-trueverit-iot-driver.menu.FlashFreq.80=80MHz -esp32-trueverit-iot-driver.menu.FlashFreq.80.build.flash_freq=80m -esp32-trueverit-iot-driver.menu.FlashFreq.40=40MHz -esp32-trueverit-iot-driver.menu.FlashFreq.40.build.flash_freq=40m - -esp32-trueverit-iot-driver.menu.UploadSpeed.115200=115200 -esp32-trueverit-iot-driver.menu.UploadSpeed.115200.upload.speed=115200 -esp32-trueverit-iot-driver.menu.UploadSpeed.256000.windows=256000 -esp32-trueverit-iot-driver.menu.UploadSpeed.256000.upload.speed=256000 -esp32-trueverit-iot-driver.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-trueverit-iot-driver.menu.UploadSpeed.230400=230400 -esp32-trueverit-iot-driver.menu.UploadSpeed.230400.upload.speed=230400 -esp32-trueverit-iot-driver.menu.UploadSpeed.460800.linux=460800 -esp32-trueverit-iot-driver.menu.UploadSpeed.460800.macosx=460800 -esp32-trueverit-iot-driver.menu.UploadSpeed.460800.upload.speed=460800 - -esp32-trueverit-iot-driver.menu.DebugLevel.none=None -esp32-trueverit-iot-driver.menu.DebugLevel.none.build.code_debug=0 -esp32-trueverit-iot-driver.menu.DebugLevel.error=Error -esp32-trueverit-iot-driver.menu.DebugLevel.error.build.code_debug=1 -esp32-trueverit-iot-driver.menu.DebugLevel.warn=Warn -esp32-trueverit-iot-driver.menu.DebugLevel.warn.build.code_debug=2 -esp32-trueverit-iot-driver.menu.DebugLevel.info=Info -esp32-trueverit-iot-driver.menu.DebugLevel.info.build.code_debug=3 -esp32-trueverit-iot-driver.menu.DebugLevel.debug=Debug -esp32-trueverit-iot-driver.menu.DebugLevel.debug.build.code_debug=4 -esp32-trueverit-iot-driver.menu.DebugLevel.verbose=Verbose -esp32-trueverit-iot-driver.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-trueverit-iot-driver.menu.EraseFlash.none=Disabled -esp32-trueverit-iot-driver.menu.EraseFlash.none.upload.erase_cmd= -esp32-trueverit-iot-driver.menu.EraseFlash.all=Enabled -esp32-trueverit-iot-driver.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32-trueverit-iot-driver-mkii.name=Trueverit ESP32 Universal IoT Driver MK II - -esp32-trueverit-iot-driver-mkii.bootloader.tool=esptool_py -esp32-trueverit-iot-driver-mkii.bootloader.tool.default=esptool_py - -esp32-trueverit-iot-driver-mkii.upload.tool=esptool_py -esp32-trueverit-iot-driver-mkii.upload.tool.default=esptool_py -esp32-trueverit-iot-driver-mkii.upload.tool.network=esp_ota - -esp32-trueverit-iot-driver-mkii.upload.maximum_size=1310720 -esp32-trueverit-iot-driver-mkii.upload.maximum_data_size=327680 -esp32-trueverit-iot-driver-mkii.upload.flags= -esp32-trueverit-iot-driver-mkii.upload.extra_flags= - -esp32-trueverit-iot-driver-mkii.serial.disableDTR=true -esp32-trueverit-iot-driver-mkii.serial.disableRTS=true - -esp32-trueverit-iot-driver-mkii.build.tarch=xtensa -esp32-trueverit-iot-driver-mkii.build.bootloader_addr=0x1000 -esp32-trueverit-iot-driver-mkii.build.target=esp32 -esp32-trueverit-iot-driver-mkii.build.mcu=esp32 -esp32-trueverit-iot-driver-mkii.build.core=esp32 -esp32-trueverit-iot-driver-mkii.build.variant=esp32-trueverit-iot-driver-mkii -esp32-trueverit-iot-driver-mkii.build.board=Trueverit_ESP32_Universal_IoT_Driver_MK_II - -esp32-trueverit-iot-driver-mkii.build.f_cpu=240000000L -esp32-trueverit-iot-driver-mkii.build.flash_mode=dio -esp32-trueverit-iot-driver-mkii.build.flash_size=4MB -esp32-trueverit-iot-driver-mkii.build.boot=dio -esp32-trueverit-iot-driver-mkii.build.partitions=default -esp32-trueverit-iot-driver-mkii.build.defines= - -esp32-trueverit-iot-driver-mkii.menu.FlashFreq.80=80MHz -esp32-trueverit-iot-driver-mkii.menu.FlashFreq.80.build.flash_freq=80m -esp32-trueverit-iot-driver-mkii.menu.FlashFreq.40=40MHz -esp32-trueverit-iot-driver-mkii.menu.FlashFreq.40.build.flash_freq=40m - -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.115200=115200 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.115200.upload.speed=115200 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.256000.windows=256000 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.256000.upload.speed=256000 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.230400=230400 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.230400.upload.speed=230400 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.460800.linux=460800 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.460800.macosx=460800 -esp32-trueverit-iot-driver-mkii.menu.UploadSpeed.460800.upload.speed=460800 - -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.none=None -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.none.build.code_debug=0 -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.error=Error -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.error.build.code_debug=1 -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.warn=Warn -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.warn.build.code_debug=2 -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.info=Info -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.info.build.code_debug=3 -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.debug=Debug -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.debug.build.code_debug=4 -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.verbose=Verbose -esp32-trueverit-iot-driver-mkii.menu.DebugLevel.verbose.build.code_debug=5 - -esp32-trueverit-iot-driver-mkii.menu.EraseFlash.none=Disabled -esp32-trueverit-iot-driver-mkii.menu.EraseFlash.none.upload.erase_cmd= -esp32-trueverit-iot-driver-mkii.menu.EraseFlash.all=Enabled -esp32-trueverit-iot-driver-mkii.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -atmegazero_esp32s2.name=ATMegaZero ESP32-S2 -atmegazero_esp32s2.vid.0=0x239A -atmegazero_esp32s2.pid.0=0x800A - -atmegazero_esp32s2.bootloader.tool=esptool_py -atmegazero_esp32s2.bootloader.tool.default=esptool_py - -atmegazero_esp32s2.upload.tool=esptool_py -atmegazero_esp32s2.upload.tool.default=esptool_py -atmegazero_esp32s2.upload.tool.network=esp_ota - -atmegazero_esp32s2.upload.maximum_size=1310720 -atmegazero_esp32s2.upload.maximum_data_size=327680 -atmegazero_esp32s2.upload.flags= -atmegazero_esp32s2.upload.extra_flags= -atmegazero_esp32s2.upload.use_1200bps_touch=true -atmegazero_esp32s2.upload.wait_for_upload_port=true - -atmegazero_esp32s2.serial.disableDTR=false -atmegazero_esp32s2.serial.disableRTS=false - -atmegazero_esp32s2.build.tarch=xtensa -atmegazero_esp32s2.build.bootloader_addr=0x1000 -atmegazero_esp32s2.build.target=esp32s2 -atmegazero_esp32s2.build.mcu=esp32s2 -atmegazero_esp32s2.build.core=esp32 -atmegazero_esp32s2.build.variant=atmegazero_esp32s2 -atmegazero_esp32s2.build.board=atmegazero_esp32s2 - -atmegazero_esp32s2.build.cdc_on_boot=1 -atmegazero_esp32s2.build.msc_on_boot=0 -atmegazero_esp32s2.build.dfu_on_boot=0 -atmegazero_esp32s2.build.serial=0 -atmegazero_esp32s2.build.f_cpu=240000000L -atmegazero_esp32s2.build.flash_size=16MB -atmegazero_esp32s2.build.flash_freq=40m -atmegazero_esp32s2.build.flash_mode=qio -atmegazero_esp32s2.build.boot=qio -atmegazero_esp32s2.build.partitions=default -atmegazero_esp32s2.build.defines= - -atmegazero_esp32s2.menu.CDCOnBoot.cdc=Enabled -atmegazero_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -atmegazero_esp32s2.menu.CDCOnBoot.default=Disabled -atmegazero_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -atmegazero_esp32s2.menu.MSCOnBoot.default=Disabled -atmegazero_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -atmegazero_esp32s2.menu.MSCOnBoot.msc=Enabled -atmegazero_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -atmegazero_esp32s2.menu.DFUOnBoot.default=Disabled -atmegazero_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -atmegazero_esp32s2.menu.DFUOnBoot.dfu=Enabled -atmegazero_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -atmegazero_esp32s2.menu.PSRAM.disabled=Disabled -atmegazero_esp32s2.menu.PSRAM.disabled.build.defines= -atmegazero_esp32s2.menu.PSRAM.enabled=Enabled -atmegazero_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -atmegazero_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 16MB (2MB APP/11.6MB FFAT) -atmegazero_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -atmegazero_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-16MB-tinyuf2 -atmegazero_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -atmegazero_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -atmegazero_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.default.build.partitions=default -atmegazero_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -atmegazero_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -atmegazero_esp32s2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -atmegazero_esp32s2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -atmegazero_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -atmegazero_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -atmegazero_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -atmegazero_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -atmegazero_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -atmegazero_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -atmegazero_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -atmegazero_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -atmegazero_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -atmegazero_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -atmegazero_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -atmegazero_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -atmegazero_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -atmegazero_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -atmegazero_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -atmegazero_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -atmegazero_esp32s2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -atmegazero_esp32s2.menu.PartitionScheme.fatflash.build.partitions=ffat -atmegazero_esp32s2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -atmegazero_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -atmegazero_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -atmegazero_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -atmegazero_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -atmegazero_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -atmegazero_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -atmegazero_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -atmegazero_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -atmegazero_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -atmegazero_esp32s2.menu.CPUFreq.40=40MHz -atmegazero_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -atmegazero_esp32s2.menu.CPUFreq.20=20MHz -atmegazero_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -atmegazero_esp32s2.menu.CPUFreq.10=10MHz -atmegazero_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -atmegazero_esp32s2.menu.FlashMode.qio=QIO -atmegazero_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -atmegazero_esp32s2.menu.FlashMode.qio.build.boot=qio -atmegazero_esp32s2.menu.FlashMode.dio=DIO -atmegazero_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -atmegazero_esp32s2.menu.FlashMode.dio.build.boot=dio - -atmegazero_esp32s2.menu.FlashFreq.80=80MHz -atmegazero_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -atmegazero_esp32s2.menu.FlashFreq.40=40MHz -atmegazero_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -atmegazero_esp32s2.menu.FlashSize.4M=4MB (32Mb) -atmegazero_esp32s2.menu.FlashSize.4M.build.flash_size=4MB -atmegazero_esp32s2.menu.FlashSize.8M=8MB (64Mb) -atmegazero_esp32s2.menu.FlashSize.8M.build.flash_size=8MB -atmegazero_esp32s2.menu.FlashSize.8M.build.partitions=default_8MB -atmegazero_esp32s2.menu.FlashSize.2M=2MB (16Mb) -atmegazero_esp32s2.menu.FlashSize.2M.build.flash_size=2MB -atmegazero_esp32s2.menu.FlashSize.2M.build.partitions=minimal -atmegazero_esp32s2.menu.FlashSize.16M=16MB (128Mb) -atmegazero_esp32s2.menu.FlashSize.16M.build.flash_size=16MB - -atmegazero_esp32s2.menu.UploadSpeed.921600=921600 -atmegazero_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -atmegazero_esp32s2.menu.UploadSpeed.115200=115200 -atmegazero_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -atmegazero_esp32s2.menu.UploadSpeed.256000.windows=256000 -atmegazero_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -atmegazero_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -atmegazero_esp32s2.menu.UploadSpeed.230400=230400 -atmegazero_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -atmegazero_esp32s2.menu.UploadSpeed.460800.linux=460800 -atmegazero_esp32s2.menu.UploadSpeed.460800.macosx=460800 -atmegazero_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -atmegazero_esp32s2.menu.UploadSpeed.512000.windows=512000 -atmegazero_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -atmegazero_esp32s2.menu.DebugLevel.none=None -atmegazero_esp32s2.menu.DebugLevel.none.build.code_debug=0 -atmegazero_esp32s2.menu.DebugLevel.error=Error -atmegazero_esp32s2.menu.DebugLevel.error.build.code_debug=1 -atmegazero_esp32s2.menu.DebugLevel.warn=Warn -atmegazero_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -atmegazero_esp32s2.menu.DebugLevel.info=Info -atmegazero_esp32s2.menu.DebugLevel.info.build.code_debug=3 -atmegazero_esp32s2.menu.DebugLevel.debug=Debug -atmegazero_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -atmegazero_esp32s2.menu.DebugLevel.verbose=Verbose -atmegazero_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -atmegazero_esp32s2.menu.EraseFlash.none=Disabled -atmegazero_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -atmegazero_esp32s2.menu.EraseFlash.all=Enabled -atmegazero_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -franzininho_wifi_esp32s2.name=Franzininho WiFi -franzininho_wifi_esp32s2.vid.0=0x303A -franzininho_wifi_esp32s2.pid.0=0x80A9 - -franzininho_wifi_esp32s2.bootloader.tool=esptool_py -franzininho_wifi_esp32s2.bootloader.tool.default=esptool_py - -franzininho_wifi_esp32s2.upload.tool=esptool_py -franzininho_wifi_esp32s2.upload.tool.default=esptool_py -franzininho_wifi_esp32s2.upload.tool.network=esp_ota - -franzininho_wifi_esp32s2.upload.maximum_size=1310720 -franzininho_wifi_esp32s2.upload.maximum_data_size=327680 -franzininho_wifi_esp32s2.upload.flags= -franzininho_wifi_esp32s2.upload.extra_flags= -franzininho_wifi_esp32s2.upload.use_1200bps_touch=true -franzininho_wifi_esp32s2.upload.wait_for_upload_port=true -franzininho_wifi_esp32s2.upload.speed=921600 - -franzininho_wifi_esp32s2.serial.disableDTR=false -franzininho_wifi_esp32s2.serial.disableRTS=false - -franzininho_wifi_esp32s2.build.tarch=xtensa -franzininho_wifi_esp32s2.build.bootloader_addr=0x1000 -franzininho_wifi_esp32s2.build.target=esp32s2 -franzininho_wifi_esp32s2.build.mcu=esp32s2 -franzininho_wifi_esp32s2.build.core=esp32 -franzininho_wifi_esp32s2.build.variant=franzininho_wifi_esp32s2 -franzininho_wifi_esp32s2.build.board=FRANZININHO_WIFI - -franzininho_wifi_esp32s2.build.cdc_on_boot=1 -franzininho_wifi_esp32s2.build.msc_on_boot=0 -franzininho_wifi_esp32s2.build.dfu_on_boot=0 -franzininho_wifi_esp32s2.build.f_cpu=240000000L -franzininho_wifi_esp32s2.build.flash_size=4MB -franzininho_wifi_esp32s2.build.flash_freq=80m -franzininho_wifi_esp32s2.build.flash_mode=dio -franzininho_wifi_esp32s2.build.boot=qio -franzininho_wifi_esp32s2.build.partitions=default -franzininho_wifi_esp32s2.build.defines= - -franzininho_wifi_esp32s2.menu.PSRAM.disabled=Disabled -franzininho_wifi_esp32s2.menu.PSRAM.disabled.build.defines= -franzininho_wifi_esp32s2.menu.PSRAM.enabled=Enabled -franzininho_wifi_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -franzininho_wifi_esp32s2.menu.FlashSize.4M=4MB (32Mb) -franzininho_wifi_esp32s2.menu.FlashSize.4M.build.flash_size=4MB -franzininho_wifi_esp32s2.menu.FlashSize.8M=8MB (64Mb) -franzininho_wifi_esp32s2.menu.FlashSize.8M.build.flash_size=8MB -franzininho_wifi_esp32s2.menu.FlashSize.8M.build.partitions=default_8MB -franzininho_wifi_esp32s2.menu.FlashSize.16M=16MB (128Mb) -franzininho_wifi_esp32s2.menu.FlashSize.16M.build.flash_size=16MB - -franzininho_wifi_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.default.build.partitions=default -franzininho_wifi_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -franzininho_wifi_esp32s2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -franzininho_wifi_esp32s2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -franzininho_wifi_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -franzininho_wifi_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -franzininho_wifi_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -franzininho_wifi_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -franzininho_wifi_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -franzininho_wifi_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -franzininho_wifi_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -franzininho_wifi_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -franzininho_wifi_esp32s2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.fatflash.build.partitions=ffat -franzininho_wifi_esp32s2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -franzininho_wifi_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -franzininho_wifi_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -franzininho_wifi_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -franzininho_wifi_esp32s2.menu.DebugLevel.none=None -franzininho_wifi_esp32s2.menu.DebugLevel.none.build.code_debug=0 -franzininho_wifi_esp32s2.menu.DebugLevel.error=Error -franzininho_wifi_esp32s2.menu.DebugLevel.error.build.code_debug=1 -franzininho_wifi_esp32s2.menu.DebugLevel.warn=Warn -franzininho_wifi_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -franzininho_wifi_esp32s2.menu.DebugLevel.info=Info -franzininho_wifi_esp32s2.menu.DebugLevel.info.build.code_debug=3 -franzininho_wifi_esp32s2.menu.DebugLevel.debug=Debug -franzininho_wifi_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -franzininho_wifi_esp32s2.menu.DebugLevel.verbose=Verbose -franzininho_wifi_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -franzininho_wifi_esp32s2.menu.EraseFlash.none=Disabled -franzininho_wifi_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -franzininho_wifi_esp32s2.menu.EraseFlash.all=Enabled -franzininho_wifi_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -franzininho_wifi_msc_esp32s2.name=Franzininho WiFi MSC -franzininho_wifi_msc_esp32s2.vid.0=0x303A -franzininho_wifi_msc_esp32s2.pid.0=0x80A9 - -franzininho_wifi_msc_esp32s2.bootloader.tool=esptool_py -franzininho_wifi_msc_esp32s2.bootloader.tool.default=esptool_py - -franzininho_wifi_msc_esp32s2.upload.tool=esptool_py -franzininho_wifi_msc_esp32s2.upload.tool.default=esptool_py -franzininho_wifi_msc_esp32s2.upload.tool.network=esp_ota - -franzininho_wifi_msc_esp32s2.upload.maximum_size=1310720 -franzininho_wifi_msc_esp32s2.upload.maximum_data_size=327680 -franzininho_wifi_msc_esp32s2.upload.flags= -franzininho_wifi_msc_esp32s2.upload.extra_flags= -franzininho_wifi_msc_esp32s2.upload.use_1200bps_touch=true -franzininho_wifi_msc_esp32s2.upload.wait_for_upload_port=true -franzininho_wifi_msc_esp32s2.upload.speed=921600 - -franzininho_wifi_msc_esp32s2.serial.disableDTR=false -franzininho_wifi_msc_esp32s2.serial.disableRTS=false - -franzininho_wifi_msc_esp32s2.build.tarch=xtensa -franzininho_wifi_msc_esp32s2.build.bootloader_addr=0x1000 -franzininho_wifi_msc_esp32s2.build.target=esp32s2 -franzininho_wifi_msc_esp32s2.build.mcu=esp32s2 -franzininho_wifi_msc_esp32s2.build.core=esp32 -franzininho_wifi_msc_esp32s2.build.variant=franzininho_wifi_msc_esp32s2 -franzininho_wifi_msc_esp32s2.build.board=FRANZININHO_WIFI_MSC - -franzininho_wifi_msc_esp32s2.build.cdc_on_boot=1 -franzininho_wifi_msc_esp32s2.build.msc_on_boot=1 -franzininho_wifi_msc_esp32s2.build.dfu_on_boot=1 -franzininho_wifi_msc_esp32s2.build.f_cpu=240000000L -franzininho_wifi_msc_esp32s2.build.flash_size=4MB -franzininho_wifi_msc_esp32s2.build.flash_freq=80m -franzininho_wifi_msc_esp32s2.build.flash_mode=dio -franzininho_wifi_msc_esp32s2.build.boot=qio -franzininho_wifi_msc_esp32s2.build.partitions=default -franzininho_wifi_msc_esp32s2.build.defines= - -franzininho_wifi_msc_esp32s2.menu.PSRAM.disabled=Disabled -franzininho_wifi_msc_esp32s2.menu.PSRAM.disabled.build.defines= -franzininho_wifi_msc_esp32s2.menu.PSRAM.enabled=Enabled -franzininho_wifi_msc_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM - -franzininho_wifi_msc_esp32s2.menu.FlashSize.4M=4MB (32Mb) -franzininho_wifi_msc_esp32s2.menu.FlashSize.4M.build.flash_size=4MB -franzininho_wifi_msc_esp32s2.menu.FlashSize.8M=8MB (64Mb) -franzininho_wifi_msc_esp32s2.menu.FlashSize.8M.build.flash_size=8MB -franzininho_wifi_msc_esp32s2.menu.FlashSize.8M.build.partitions=default_8MB -franzininho_wifi_msc_esp32s2.menu.FlashSize.16M=16MB (128Mb) -franzininho_wifi_msc_esp32s2.menu.FlashSize.16M.build.flash_size=16MB - -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.default.build.partitions=default -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.fatflash.build.partitions=ffat -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -franzininho_wifi_msc_esp32s2.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -franzininho_wifi_msc_esp32s2.menu.DebugLevel.none=None -franzininho_wifi_msc_esp32s2.menu.DebugLevel.none.build.code_debug=0 -franzininho_wifi_msc_esp32s2.menu.DebugLevel.error=Error -franzininho_wifi_msc_esp32s2.menu.DebugLevel.error.build.code_debug=1 -franzininho_wifi_msc_esp32s2.menu.DebugLevel.warn=Warn -franzininho_wifi_msc_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -franzininho_wifi_msc_esp32s2.menu.DebugLevel.info=Info -franzininho_wifi_msc_esp32s2.menu.DebugLevel.info.build.code_debug=3 -franzininho_wifi_msc_esp32s2.menu.DebugLevel.debug=Debug -franzininho_wifi_msc_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -franzininho_wifi_msc_esp32s2.menu.DebugLevel.verbose=Verbose -franzininho_wifi_msc_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -franzininho_wifi_msc_esp32s2.menu.EraseFlash.none=Disabled -franzininho_wifi_msc_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -franzininho_wifi_msc_esp32s2.menu.EraseFlash.all=Enabled -franzininho_wifi_msc_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -tamc_termod_s3.name=TAMC Termod S3 -tamc_termod_s3.vid.0=0x303a -tamc_termod_s3.pid.0=0x1001 - -tamc_termod_s3.bootloader.tool=esptool_py -tamc_termod_s3.bootloader.tool.default=esptool_py - -tamc_termod_s3.upload.tool=esptool_py -tamc_termod_s3.upload.tool.default=esptool_py -tamc_termod_s3.upload.tool.network=esp_ota - -tamc_termod_s3.upload.maximum_size=1310720 -tamc_termod_s3.upload.maximum_data_size=327680 -tamc_termod_s3.upload.flags= -tamc_termod_s3.upload.extra_flags= -tamc_termod_s3.upload.use_1200bps_touch=false -tamc_termod_s3.upload.wait_for_upload_port=false - -tamc_termod_s3.serial.disableDTR=false -tamc_termod_s3.serial.disableRTS=false - -tamc_termod_s3.build.tarch=xtensa -tamc_termod_s3.build.bootloader_addr=0x0 -tamc_termod_s3.build.target=esp32s3 -tamc_termod_s3.build.mcu=esp32s3 -tamc_termod_s3.build.core=esp32 -tamc_termod_s3.build.variant=tamc_termod_s3 -tamc_termod_s3.build.board=TAMC_TERMOD_S3 - -tamc_termod_s3.build.usb_mode=1 -tamc_termod_s3.build.cdc_on_boot=1 -tamc_termod_s3.build.msc_on_boot=0 -tamc_termod_s3.build.dfu_on_boot=0 -tamc_termod_s3.build.f_cpu=240000000L -tamc_termod_s3.build.flash_size=8MB -tamc_termod_s3.build.flash_freq=80m -tamc_termod_s3.build.flash_mode=dio -tamc_termod_s3.build.boot=qio -tamc_termod_s3.build.boot_freq=80m -tamc_termod_s3.build.partitions=default -tamc_termod_s3.build.defines= -tamc_termod_s3.build.loop_core= -tamc_termod_s3.build.event_core= -tamc_termod_s3.build.psram_type=qspi -tamc_termod_s3.build.memory_type={build.boot}_{build.psram_type} - -tamc_termod_s3.menu.PSRAM.enabled=QSPI PSRAM -tamc_termod_s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -tamc_termod_s3.menu.PSRAM.enabled.build.psram_type=qspi -tamc_termod_s3.menu.PSRAM.disabled=Disabled -tamc_termod_s3.menu.PSRAM.disabled.build.defines= -tamc_termod_s3.menu.PSRAM.disabled.build.psram_type=qspi -tamc_termod_s3.menu.PSRAM.opi=OPI PSRAM -tamc_termod_s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -tamc_termod_s3.menu.PSRAM.opi.build.psram_type=opi - -tamc_termod_s3.menu.FlashMode.qio=QIO 80MHz -tamc_termod_s3.menu.FlashMode.qio.build.flash_mode=dio -tamc_termod_s3.menu.FlashMode.qio.build.boot=qio -tamc_termod_s3.menu.FlashMode.qio.build.boot_freq=80m -tamc_termod_s3.menu.FlashMode.qio.build.flash_freq=80m -tamc_termod_s3.menu.FlashMode.qio120=QIO 120MHz -tamc_termod_s3.menu.FlashMode.qio120.build.flash_mode=dio -tamc_termod_s3.menu.FlashMode.qio120.build.boot=qio -tamc_termod_s3.menu.FlashMode.qio120.build.boot_freq=120m -tamc_termod_s3.menu.FlashMode.qio120.build.flash_freq=80m -tamc_termod_s3.menu.FlashMode.dio=DIO 80MHz -tamc_termod_s3.menu.FlashMode.dio.build.flash_mode=dio -tamc_termod_s3.menu.FlashMode.dio.build.boot=dio -tamc_termod_s3.menu.FlashMode.dio.build.boot_freq=80m -tamc_termod_s3.menu.FlashMode.dio.build.flash_freq=80m -tamc_termod_s3.menu.FlashMode.opi=OPI 80MHz -tamc_termod_s3.menu.FlashMode.opi.build.flash_mode=dout -tamc_termod_s3.menu.FlashMode.opi.build.boot=opi -tamc_termod_s3.menu.FlashMode.opi.build.boot_freq=80m -tamc_termod_s3.menu.FlashMode.opi.build.flash_freq=80m - -tamc_termod_s3.menu.FlashSize.4M=4MB (32Mb) -tamc_termod_s3.menu.FlashSize.4M.build.flash_size=4MB -tamc_termod_s3.menu.FlashSize.8M=8MB (64Mb) -tamc_termod_s3.menu.FlashSize.8M.build.flash_size=8MB -tamc_termod_s3.menu.FlashSize.8M.build.partitions=default_8MB -tamc_termod_s3.menu.FlashSize.16M=16MB (128Mb) -tamc_termod_s3.menu.FlashSize.16M.build.flash_size=16MB - -tamc_termod_s3.menu.LoopCore.1=Core 1 -tamc_termod_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -tamc_termod_s3.menu.LoopCore.0=Core 0 -tamc_termod_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -tamc_termod_s3.menu.EventsCore.1=Core 1 -tamc_termod_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -tamc_termod_s3.menu.EventsCore.0=Core 0 -tamc_termod_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -tamc_termod_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -tamc_termod_s3.menu.USBMode.hwcdc.build.usb_mode=1 -tamc_termod_s3.menu.USBMode.default=USB-OTG (TinyUSB) -tamc_termod_s3.menu.USBMode.default.build.usb_mode=0 - -tamc_termod_s3.menu.CDCOnBoot.cdc=Enabled -tamc_termod_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -tamc_termod_s3.menu.CDCOnBoot.default=Disabled -tamc_termod_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -tamc_termod_s3.menu.MSCOnBoot.default=Disabled -tamc_termod_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -tamc_termod_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -tamc_termod_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -tamc_termod_s3.menu.DFUOnBoot.default=Disabled -tamc_termod_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -tamc_termod_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -tamc_termod_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -tamc_termod_s3.menu.UploadMode.default=UART0 / Hardware CDC -tamc_termod_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -tamc_termod_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -tamc_termod_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -tamc_termod_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -tamc_termod_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -tamc_termod_s3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.default.build.partitions=default -tamc_termod_s3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -tamc_termod_s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -tamc_termod_s3.menu.PartitionScheme.default_8MB=8M Flash (3MB APP/1.5MB FAT) -tamc_termod_s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -tamc_termod_s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -tamc_termod_s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.minimal.build.partitions=minimal -tamc_termod_s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -tamc_termod_s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -tamc_termod_s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -tamc_termod_s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -tamc_termod_s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -tamc_termod_s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -tamc_termod_s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -tamc_termod_s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -tamc_termod_s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -tamc_termod_s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -tamc_termod_s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -tamc_termod_s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -tamc_termod_s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -tamc_termod_s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -tamc_termod_s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -tamc_termod_s3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -tamc_termod_s3.menu.PartitionScheme.fatflash.build.partitions=ffat -tamc_termod_s3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -tamc_termod_s3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -tamc_termod_s3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -tamc_termod_s3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -tamc_termod_s3.menu.PartitionScheme.rainmaker=RainMaker -tamc_termod_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -tamc_termod_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -tamc_termod_s3.menu.CPUFreq.240=240MHz (WiFi) -tamc_termod_s3.menu.CPUFreq.240.build.f_cpu=240000000L -tamc_termod_s3.menu.CPUFreq.160=160MHz (WiFi) -tamc_termod_s3.menu.CPUFreq.160.build.f_cpu=160000000L -tamc_termod_s3.menu.CPUFreq.80=80MHz (WiFi) -tamc_termod_s3.menu.CPUFreq.80.build.f_cpu=80000000L -tamc_termod_s3.menu.CPUFreq.40=40MHz -tamc_termod_s3.menu.CPUFreq.40.build.f_cpu=40000000L -tamc_termod_s3.menu.CPUFreq.20=20MHz -tamc_termod_s3.menu.CPUFreq.20.build.f_cpu=20000000L -tamc_termod_s3.menu.CPUFreq.10=10MHz -tamc_termod_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -tamc_termod_s3.menu.UploadSpeed.921600=921600 -tamc_termod_s3.menu.UploadSpeed.921600.upload.speed=921600 -tamc_termod_s3.menu.UploadSpeed.115200=115200 -tamc_termod_s3.menu.UploadSpeed.115200.upload.speed=115200 -tamc_termod_s3.menu.UploadSpeed.256000.windows=256000 -tamc_termod_s3.menu.UploadSpeed.256000.upload.speed=256000 -tamc_termod_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -tamc_termod_s3.menu.UploadSpeed.230400=230400 -tamc_termod_s3.menu.UploadSpeed.230400.upload.speed=230400 -tamc_termod_s3.menu.UploadSpeed.460800.linux=460800 -tamc_termod_s3.menu.UploadSpeed.460800.macosx=460800 -tamc_termod_s3.menu.UploadSpeed.460800.upload.speed=460800 -tamc_termod_s3.menu.UploadSpeed.512000.windows=512000 -tamc_termod_s3.menu.UploadSpeed.512000.upload.speed=512000 - -tamc_termod_s3.menu.DebugLevel.none=None -tamc_termod_s3.menu.DebugLevel.none.build.code_debug=0 -tamc_termod_s3.menu.DebugLevel.error=Error -tamc_termod_s3.menu.DebugLevel.error.build.code_debug=1 -tamc_termod_s3.menu.DebugLevel.warn=Warn -tamc_termod_s3.menu.DebugLevel.warn.build.code_debug=2 -tamc_termod_s3.menu.DebugLevel.info=Info -tamc_termod_s3.menu.DebugLevel.info.build.code_debug=3 -tamc_termod_s3.menu.DebugLevel.debug=Debug -tamc_termod_s3.menu.DebugLevel.debug.build.code_debug=4 -tamc_termod_s3.menu.DebugLevel.verbose=Verbose -tamc_termod_s3.menu.DebugLevel.verbose.build.code_debug=5 - -tamc_termod_s3.menu.EraseFlash.none=Disabled -tamc_termod_s3.menu.EraseFlash.none.upload.erase_cmd= -tamc_termod_s3.menu.EraseFlash.all=Enabled -tamc_termod_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -dpu_esp32.name=DPU ESP32 - -dpu_esp32.bootloader.tool=esptool_py -dpu_esp32.bootloader.tool.default=esptool_py - -dpu_esp32.upload.tool=esptool_py -dpu_esp32.upload.tool.default=esptool_py -dpu_esp32.upload.tool.network=esp_ota - -dpu_esp32.upload.maximum_size=3342336 -dpu_esp32.upload.maximum_data_size=327680 -dpu_esp32.upload.flags= -dpu_esp32.upload.extra_flags= - -dpu_esp32.serial.disableDTR=true -dpu_esp32.serial.disableRTS=true - -dpu_esp32.build.tarch=xtensa -dpu_esp32.build.bootloader_addr=0x1000 -dpu_esp32.build.target=esp32 -dpu_esp32.build.mcu=esp32 -dpu_esp32.build.core=esp32 -dpu_esp32.build.variant=dpu_esp32 -dpu_esp32.build.board=DPU_ESP32 - -dpu_esp32.build.f_cpu=240000000L -dpu_esp32.build.flash_size=8MB -dpu_esp32.build.flash_freq=40m -dpu_esp32.build.flash_mode=dio -dpu_esp32.build.boot=dio -dpu_esp32.build.partitions=default_8MB -dpu_esp32.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -dpu_esp32.build.extra_libs= - -dpu_esp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -dpu_esp32.menu.PartitionScheme.default.build.partitions=default -dpu_esp32.menu.PartitionScheme.default.upload.maximum_size=1310720 -dpu_esp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -dpu_esp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -dpu_esp32.menu.PartitionScheme.defaultffat.upload.maximum_size=1310720 -dpu_esp32.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -dpu_esp32.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -dpu_esp32.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -dpu_esp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -dpu_esp32.menu.PartitionScheme.minimal.build.partitions=minimal -dpu_esp32.menu.PartitionScheme.minimal.upload.maximum_size=1310720 -dpu_esp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -dpu_esp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -dpu_esp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -dpu_esp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -dpu_esp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -dpu_esp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -dpu_esp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -dpu_esp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -dpu_esp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -dpu_esp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -dpu_esp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -dpu_esp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -dpu_esp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -dpu_esp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -dpu_esp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -dpu_esp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -dpu_esp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -dpu_esp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -dpu_esp32.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -dpu_esp32.menu.PartitionScheme.fatflash.build.partitions=ffat - -dpu_esp32.menu.FlashMode.qio=QIO -dpu_esp32.menu.FlashMode.qio.build.flash_mode=dio -dpu_esp32.menu.FlashMode.qio.build.boot=qio -dpu_esp32.menu.FlashMode.dio=DIO -dpu_esp32.menu.FlashMode.dio.build.flash_mode=dio -dpu_esp32.menu.FlashMode.dio.build.boot=dio - -dpu_esp32.menu.FlashFreq.80=80MHz -dpu_esp32.menu.FlashFreq.80.build.flash_freq=80m -dpu_esp32.menu.FlashFreq.40=40MHz -dpu_esp32.menu.FlashFreq.40.build.flash_freq=40m - -dpu_esp32.menu.UploadSpeed.921600=921600 -dpu_esp32.menu.UploadSpeed.921600.upload.speed=921600 -dpu_esp32.menu.UploadSpeed.115200=115200 -dpu_esp32.menu.UploadSpeed.115200.upload.speed=115200 -dpu_esp32.menu.UploadSpeed.256000.windows=256000 -dpu_esp32.menu.UploadSpeed.256000.upload.speed=256000 -dpu_esp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -dpu_esp32.menu.UploadSpeed.230400=230400 -dpu_esp32.menu.UploadSpeed.230400.upload.speed=230400 -dpu_esp32.menu.UploadSpeed.460800.linux=460800 -dpu_esp32.menu.UploadSpeed.460800.macosx=460800 -dpu_esp32.menu.UploadSpeed.460800.upload.speed=460800 -dpu_esp32.menu.UploadSpeed.512000.windows=512000 -dpu_esp32.menu.UploadSpeed.512000.upload.speed=512000 - -dpu_esp32.menu.DebugLevel.none=None -dpu_esp32.menu.DebugLevel.none.build.code_debug=0 -dpu_esp32.menu.DebugLevel.error=Error -dpu_esp32.menu.DebugLevel.error.build.code_debug=1 -dpu_esp32.menu.DebugLevel.warn=Warn -dpu_esp32.menu.DebugLevel.warn.build.code_debug=2 -dpu_esp32.menu.DebugLevel.info=Info -dpu_esp32.menu.DebugLevel.info.build.code_debug=3 -dpu_esp32.menu.DebugLevel.debug=Debug -dpu_esp32.menu.DebugLevel.debug.build.code_debug=4 -dpu_esp32.menu.DebugLevel.verbose=Verbose -dpu_esp32.menu.DebugLevel.verbose.build.code_debug=5 - -dpu_esp32.menu.EraseFlash.none=Disabled -dpu_esp32.menu.EraseFlash.none.upload.erase_cmd= -dpu_esp32.menu.EraseFlash.all=Enabled -dpu_esp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -sonoff_dualr3.name=Sonoff DUALR3 - -sonoff_dualr3.bootloader.tool=esptool_py -sonoff_dualr3.bootloader.tool.default=esptool_py - -sonoff_dualr3.upload.tool=esptool_py -sonoff_dualr3.upload.tool.default=esptool_py -sonoff_dualr3.upload.tool.network=esp_ota - -sonoff_dualr3.upload.maximum_size=1310720 -sonoff_dualr3.upload.maximum_data_size=327680 -sonoff_dualr3.upload.flags= -sonoff_dualr3.upload.extra_flags= - -sonoff_dualr3.serial.disableDTR=true -sonoff_dualr3.serial.disableRTS=true - -sonoff_dualr3.build.tarch=xtensa -sonoff_dualr3.build.bootloader_addr=0x1000 -sonoff_dualr3.build.target=esp32 -sonoff_dualr3.build.mcu=esp32 -sonoff_dualr3.build.core=esp32 -sonoff_dualr3.build.variant=esp32 -sonoff_dualr3.build.board=SONOFF_DUALR3 - -sonoff_dualr3.build.f_cpu=240000000L -sonoff_dualr3.build.flash_size=4MB -sonoff_dualr3.build.flash_freq=40m -sonoff_dualr3.build.flash_mode=dio -sonoff_dualr3.build.boot=dio -sonoff_dualr3.build.partitions=rainmaker -sonoff_dualr3.build.defines= -sonoff_dualr3.build.loop_core= -sonoff_dualr3.build.event_core= - -sonoff_dualr3.menu.PartitionScheme.rainmaker=RainMaker -sonoff_dualr3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -sonoff_dualr3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -sonoff_dualr3.menu.CPUFreq.240=240MHz (WiFi/BT) -sonoff_dualr3.menu.CPUFreq.240.build.f_cpu=240000000L -sonoff_dualr3.menu.CPUFreq.160=160MHz (WiFi/BT) -sonoff_dualr3.menu.CPUFreq.160.build.f_cpu=160000000L -sonoff_dualr3.menu.CPUFreq.80=80MHz (WiFi/BT) -sonoff_dualr3.menu.CPUFreq.80.build.f_cpu=80000000L -sonoff_dualr3.menu.CPUFreq.40=40MHz (40MHz XTAL) -sonoff_dualr3.menu.CPUFreq.40.build.f_cpu=40000000L -sonoff_dualr3.menu.CPUFreq.26=26MHz (26MHz XTAL) -sonoff_dualr3.menu.CPUFreq.26.build.f_cpu=26000000L -sonoff_dualr3.menu.CPUFreq.20=20MHz (40MHz XTAL) -sonoff_dualr3.menu.CPUFreq.20.build.f_cpu=20000000L -sonoff_dualr3.menu.CPUFreq.13=13MHz (26MHz XTAL) -sonoff_dualr3.menu.CPUFreq.13.build.f_cpu=13000000L -sonoff_dualr3.menu.CPUFreq.10=10MHz (40MHz XTAL) -sonoff_dualr3.menu.CPUFreq.10.build.f_cpu=10000000L - -sonoff_dualr3.menu.FlashMode.qio=QIO -sonoff_dualr3.menu.FlashMode.qio.build.flash_mode=dio -sonoff_dualr3.menu.FlashMode.qio.build.boot=qio -sonoff_dualr3.menu.FlashMode.dio=DIO -sonoff_dualr3.menu.FlashMode.dio.build.flash_mode=dio -sonoff_dualr3.menu.FlashMode.dio.build.boot=dio - -sonoff_dualr3.menu.FlashFreq.80=80MHz -sonoff_dualr3.menu.FlashFreq.80.build.flash_freq=80m -sonoff_dualr3.menu.FlashFreq.40=40MHz -sonoff_dualr3.menu.FlashFreq.40.build.flash_freq=40m - -sonoff_dualr3.menu.FlashSize.4M=4MB (32Mb) -sonoff_dualr3.menu.FlashSize.4M.build.flash_size=4MB - -sonoff_dualr3.menu.UploadSpeed.921600=921600 -sonoff_dualr3.menu.UploadSpeed.921600.upload.speed=921600 -sonoff_dualr3.menu.UploadSpeed.115200=115200 -sonoff_dualr3.menu.UploadSpeed.115200.upload.speed=115200 -sonoff_dualr3.menu.UploadSpeed.256000.windows=256000 -sonoff_dualr3.menu.UploadSpeed.256000.upload.speed=256000 -sonoff_dualr3.menu.UploadSpeed.230400.windows.upload.speed=256000 -sonoff_dualr3.menu.UploadSpeed.230400=230400 -sonoff_dualr3.menu.UploadSpeed.230400.upload.speed=230400 -sonoff_dualr3.menu.UploadSpeed.460800.linux=460800 -sonoff_dualr3.menu.UploadSpeed.460800.macosx=460800 -sonoff_dualr3.menu.UploadSpeed.460800.upload.speed=460800 -sonoff_dualr3.menu.UploadSpeed.512000.windows=512000 -sonoff_dualr3.menu.UploadSpeed.512000.upload.speed=512000 - -sonoff_dualr3.menu.DebugLevel.none=None -sonoff_dualr3.menu.DebugLevel.none.build.code_debug=0 -sonoff_dualr3.menu.DebugLevel.error=Error -sonoff_dualr3.menu.DebugLevel.error.build.code_debug=1 -sonoff_dualr3.menu.DebugLevel.warn=Warn -sonoff_dualr3.menu.DebugLevel.warn.build.code_debug=2 -sonoff_dualr3.menu.DebugLevel.info=Info -sonoff_dualr3.menu.DebugLevel.info.build.code_debug=3 -sonoff_dualr3.menu.DebugLevel.debug=Debug -sonoff_dualr3.menu.DebugLevel.debug.build.code_debug=4 -sonoff_dualr3.menu.DebugLevel.verbose=Verbose -sonoff_dualr3.menu.DebugLevel.verbose.build.code_debug=5 - -sonoff_dualr3.menu.EraseFlash.none=Disabled -sonoff_dualr3.menu.EraseFlash.none.upload.erase_cmd= -sonoff_dualr3.menu.EraseFlash.all=Enabled -sonoff_dualr3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -lionbit.name=Lion:Bit Dev Board - -lionbit.bootloader.tool=esptool_py -lionbit.bootloader.tool.default=esptool_py - -lionbit.upload.tool=esptool_py -lionbit.upload.tool.default=esptool_py -lionbit.upload.tool.network=esp_ota - -lionbit.upload.maximum_size=1310720 -lionbit.upload.maximum_data_size=327680 -lionbit.upload.flags= -lionbit.upload.extra_flags= - -lionbit.serial.disableDTR=true -lionbit.serial.disableRTS=true - -lionbit.build.tarch=xtensa -lionbit.build.bootloader_addr=0x1000 -lionbit.build.target=esp32 -lionbit.build.mcu=esp32 -lionbit.build.core=esp32 -lionbit.build.variant=lionbit -lionbit.build.board=Lion:Bit_Dev_Board - -lionbit.build.f_cpu=240000000L -lionbit.build.flash_size=4MB -lionbit.build.flash_freq=80m -lionbit.build.flash_mode=dio -lionbit.build.boot=dio -lionbit.build.partitions=default -lionbit.build.defines= -lionbit.build.loop_core= -lionbit.build.event_core= - - -lionbit.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lionbit.menu.PartitionScheme.default.build.partitions=default -lionbit.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lionbit.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lionbit.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -lionbit.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -lionbit.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -lionbit.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -lionbit.menu.PartitionScheme.minimal.build.partitions=minimal -lionbit.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lionbit.menu.PartitionScheme.no_ota.build.partitions=no_ota -lionbit.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lionbit.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lionbit.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lionbit.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lionbit.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lionbit.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lionbit.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lionbit.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lionbit.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lionbit.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lionbit.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lionbit.menu.PartitionScheme.huge_app.build.partitions=huge_app -lionbit.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -lionbit.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -lionbit.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lionbit.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -lionbit.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -lionbit.menu.PartitionScheme.fatflash.build.partitions=ffat -lionbit.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -lionbit.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -lionbit.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lionbit.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -lionbit.menu.PartitionScheme.rainmaker=RainMaker -lionbit.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lionbit.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lionbit.menu.CPUFreq.240=240MHz (WiFi/BT) -lionbit.menu.CPUFreq.240.build.f_cpu=240000000L -lionbit.menu.CPUFreq.160=160MHz (WiFi/BT) -lionbit.menu.CPUFreq.160.build.f_cpu=160000000L -lionbit.menu.CPUFreq.80=80MHz (WiFi/BT) -lionbit.menu.CPUFreq.80.build.f_cpu=80000000L -lionbit.menu.CPUFreq.40=40MHz (40MHz XTAL) -lionbit.menu.CPUFreq.40.build.f_cpu=40000000L -lionbit.menu.CPUFreq.26=26MHz (26MHz XTAL) -lionbit.menu.CPUFreq.26.build.f_cpu=26000000L -lionbit.menu.CPUFreq.20=20MHz (40MHz XTAL) -lionbit.menu.CPUFreq.20.build.f_cpu=20000000L -lionbit.menu.CPUFreq.13=13MHz (26MHz XTAL) -lionbit.menu.CPUFreq.13.build.f_cpu=13000000L -lionbit.menu.CPUFreq.10=10MHz (40MHz XTAL) -lionbit.menu.CPUFreq.10.build.f_cpu=10000000L - - -lionbit.menu.FlashMode.dio=DIO -lionbit.menu.FlashMode.dio.build.flash_mode=dio -lionbit.menu.FlashMode.dio.build.boot=dio -lionbit.menu.FlashMode.qio=QIO -lionbit.menu.FlashMode.qio.build.flash_mode=dio -lionbit.menu.FlashMode.qio.build.boot=qio - -lionbit.menu.FlashFreq.80=80MHz -lionbit.menu.FlashFreq.80.build.flash_freq=80m -lionbit.menu.FlashFreq.40=40MHz -lionbit.menu.FlashFreq.40.build.flash_freq=40m - -lionbit.menu.FlashSize.4M=4MB (32Mb) -lionbit.menu.FlashSize.4M.build.flash_size=4MB -lionbit.menu.FlashSize.4M.build.partitions=default - - - -lionbit.menu.UploadSpeed.115200=115200 -lionbit.menu.UploadSpeed.115200.upload.speed=115200 -lionbit.menu.UploadSpeed.256000.windows=256000 -lionbit.menu.UploadSpeed.256000.upload.speed=256000 -lionbit.menu.UploadSpeed.230400.windows.upload.speed=256000 -lionbit.menu.UploadSpeed.230400=230400 -lionbit.menu.UploadSpeed.230400.upload.speed=230400 -lionbit.menu.UploadSpeed.460800.linux=460800 -lionbit.menu.UploadSpeed.460800.macosx=460800 -lionbit.menu.UploadSpeed.460800.upload.speed=460800 - - -lionbit.menu.LoopCore.1=Core 1 -lionbit.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lionbit.menu.LoopCore.0=Core 0 -lionbit.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lionbit.menu.EventsCore.1=Core 1 -lionbit.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lionbit.menu.EventsCore.0=Core 0 -lionbit.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lionbit.menu.DebugLevel.none=None -lionbit.menu.DebugLevel.none.build.code_debug=0 -lionbit.menu.DebugLevel.error=Error -lionbit.menu.DebugLevel.error.build.code_debug=1 -lionbit.menu.DebugLevel.warn=Warn -lionbit.menu.DebugLevel.warn.build.code_debug=2 -lionbit.menu.DebugLevel.info=Info -lionbit.menu.DebugLevel.info.build.code_debug=3 -lionbit.menu.DebugLevel.debug=Debug -lionbit.menu.DebugLevel.debug.build.code_debug=4 -lionbit.menu.DebugLevel.verbose=Verbose -lionbit.menu.DebugLevel.verbose.build.code_debug=5 - -lionbit.menu.EraseFlash.none=Disabled -lionbit.menu.EraseFlash.none.upload.erase_cmd= -lionbit.menu.EraseFlash.all=Enabled -lionbit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -watchy.name=Watchy - -watchy.bootloader.tool=esptool_py -watchy.bootloader.tool.default=esptool_py - -watchy.upload.tool=esptool_py -watchy.upload.tool.default=esptool_py -watchy.upload.tool.network=esp_ota - -watchy.upload.maximum_size=1310720 -watchy.upload.maximum_data_size=327680 -watchy.upload.flags= -watchy.upload.extra_flags= - -watchy.serial.disableDTR=true -watchy.serial.disableRTS=true - -watchy.build.tarch=xtensa -watchy.build.bootloader_addr=0x1000 -watchy.build.target=esp32 -watchy.build.mcu=esp32 -watchy.build.core=esp32 -watchy.build.variant=watchy -watchy.build.board=WATCHY - -watchy.build.f_cpu=240000000L -watchy.build.flash_size=4MB -watchy.build.flash_freq=80m -watchy.build.flash_mode=dio -watchy.build.boot=qio -watchy.build.partitions=min_spiffs -watchy.build.defines= - -watchy.menu.Revision.v10=Watchy v1.0 -watchy.menu.Revision.v10.build.board=WATCHY_V10 -watchy.menu.Revision.v15=Watchy v1.5 -watchy.menu.Revision.v15.build.board=WATCHY_V15 -watchy.menu.Revision.v20=Watchy v2.0 -watchy.menu.Revision.v20.build.board=WATCHY_V20 - -watchy.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -watchy.menu.PartitionScheme.huge_app.build.partitions=huge_app -watchy.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -watchy.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -watchy.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -watchy.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -watchy.menu.UploadSpeed.921600=921600 -watchy.menu.UploadSpeed.921600.upload.speed=921600 -watchy.menu.UploadSpeed.115200=115200 -watchy.menu.UploadSpeed.115200.upload.speed=115200 -watchy.menu.UploadSpeed.256000.windows=256000 -watchy.menu.UploadSpeed.256000.upload.speed=256000 -watchy.menu.UploadSpeed.230400.windows.upload.speed=256000 -watchy.menu.UploadSpeed.230400=230400 -watchy.menu.UploadSpeed.230400.upload.speed=230400 -watchy.menu.UploadSpeed.460800.linux=460800 -watchy.menu.UploadSpeed.460800.macosx=460800 -watchy.menu.UploadSpeed.460800.upload.speed=460800 -watchy.menu.UploadSpeed.512000.windows=512000 -watchy.menu.UploadSpeed.512000.upload.speed=512000 - -watchy.menu.DebugLevel.none=None -watchy.menu.DebugLevel.none.build.code_debug=0 -watchy.menu.DebugLevel.error=Error -watchy.menu.DebugLevel.error.build.code_debug=1 -watchy.menu.DebugLevel.warn=Warn -watchy.menu.DebugLevel.warn.build.code_debug=2 -watchy.menu.DebugLevel.info=Info -watchy.menu.DebugLevel.info.build.code_debug=3 -watchy.menu.DebugLevel.debug=Debug -watchy.menu.DebugLevel.debug.build.code_debug=4 -watchy.menu.DebugLevel.verbose=Verbose -watchy.menu.DebugLevel.verbose.build.code_debug=5 - -watchy.menu.EraseFlash.none=Disabled -watchy.menu.EraseFlash.none.upload.erase_cmd= -watchy.menu.EraseFlash.all=Enabled -watchy.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -AirM2M_CORE_ESP32C3.name=AirM2M_CORE_ESP32C3 -AirM2M_CORE_ESP32C3.vid.0=0x303a -AirM2M_CORE_ESP32C3.pid.0=0x1001 - -AirM2M_CORE_ESP32C3.upload.tool=esptool_py -AirM2M_CORE_ESP32C3.upload.tool.default=esptool_py -AirM2M_CORE_ESP32C3.upload.tool.network=esp_ota -AirM2M_CORE_ESP32C3.upload.maximum_size=1310720 -AirM2M_CORE_ESP32C3.upload.maximum_data_size=327680 -AirM2M_CORE_ESP32C3.upload.flags= -AirM2M_CORE_ESP32C3.upload.extra_flags= -AirM2M_CORE_ESP32C3.upload.use_1200bps_touch=false -AirM2M_CORE_ESP32C3.upload.wait_for_upload_port=false - -AirM2M_CORE_ESP32C3.serial.disableDTR=false -AirM2M_CORE_ESP32C3.serial.disableRTS=false - -AirM2M_CORE_ESP32C3.build.tarch=riscv32 -AirM2M_CORE_ESP32C3.build.target=esp -AirM2M_CORE_ESP32C3.build.mcu=esp32c3 -AirM2M_CORE_ESP32C3.build.core=esp32 -AirM2M_CORE_ESP32C3.build.variant=AirM2M_CORE_ESP32C3 -AirM2M_CORE_ESP32C3.build.board=AirM2M_CORE_ESP32C3 -AirM2M_CORE_ESP32C3.build.bootloader_addr=0x0 - -AirM2M_CORE_ESP32C3.build.cdc_on_boot=0 -AirM2M_CORE_ESP32C3.build.f_cpu=160000000L -AirM2M_CORE_ESP32C3.build.flash_size=4MB -AirM2M_CORE_ESP32C3.build.flash_freq=80m -AirM2M_CORE_ESP32C3.build.flash_mode=dio -AirM2M_CORE_ESP32C3.build.boot=dio -AirM2M_CORE_ESP32C3.build.partitions=default -AirM2M_CORE_ESP32C3.build.defines= - -AirM2M_CORE_ESP32C3.menu.CDCOnBoot.default=Disabled -AirM2M_CORE_ESP32C3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -AirM2M_CORE_ESP32C3.menu.CDCOnBoot.cdc=Enabled -AirM2M_CORE_ESP32C3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -AirM2M_CORE_ESP32C3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.default.build.partitions=default -AirM2M_CORE_ESP32C3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -AirM2M_CORE_ESP32C3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -AirM2M_CORE_ESP32C3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -AirM2M_CORE_ESP32C3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.minimal.build.partitions=minimal -AirM2M_CORE_ESP32C3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.no_ota.build.partitions=no_ota -AirM2M_CORE_ESP32C3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -AirM2M_CORE_ESP32C3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -AirM2M_CORE_ESP32C3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -AirM2M_CORE_ESP32C3.menu.PartitionScheme.huge_app.build.partitions=huge_app -AirM2M_CORE_ESP32C3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -AirM2M_CORE_ESP32C3.menu.CPUFreq.160=160MHz (WiFi) -AirM2M_CORE_ESP32C3.menu.CPUFreq.160.build.f_cpu=160000000L -AirM2M_CORE_ESP32C3.menu.CPUFreq.80=80MHz (WiFi) -AirM2M_CORE_ESP32C3.menu.CPUFreq.80.build.f_cpu=80000000L -AirM2M_CORE_ESP32C3.menu.CPUFreq.40=40MHz -AirM2M_CORE_ESP32C3.menu.CPUFreq.40.build.f_cpu=40000000L -AirM2M_CORE_ESP32C3.menu.CPUFreq.20=20MHz -AirM2M_CORE_ESP32C3.menu.CPUFreq.20.build.f_cpu=20000000L -AirM2M_CORE_ESP32C3.menu.CPUFreq.10=10MHz -AirM2M_CORE_ESP32C3.menu.CPUFreq.10.build.f_cpu=10000000L - -AirM2M_CORE_ESP32C3.menu.FlashFreq.80=80MHz -AirM2M_CORE_ESP32C3.menu.FlashFreq.80.build.flash_freq=80m -AirM2M_CORE_ESP32C3.menu.FlashFreq.40=40MHz -AirM2M_CORE_ESP32C3.menu.FlashFreq.40.build.flash_freq=40m - -AirM2M_CORE_ESP32C3.menu.UploadSpeed.921600=921600 -AirM2M_CORE_ESP32C3.menu.UploadSpeed.921600.upload.speed=921600 -AirM2M_CORE_ESP32C3.menu.UploadSpeed.115200=115200 -AirM2M_CORE_ESP32C3.menu.UploadSpeed.115200.upload.speed=115200 -AirM2M_CORE_ESP32C3.menu.UploadSpeed.1152000=1152000 -AirM2M_CORE_ESP32C3.menu.UploadSpeed.1152000.upload.speed=1152000 - - -AirM2M_CORE_ESP32C3.menu.DebugLevel.none=None -AirM2M_CORE_ESP32C3.menu.DebugLevel.none.build.code_debug=0 -AirM2M_CORE_ESP32C3.menu.DebugLevel.error=Error -AirM2M_CORE_ESP32C3.menu.DebugLevel.error.build.code_debug=1 -AirM2M_CORE_ESP32C3.menu.DebugLevel.warn=Warn -AirM2M_CORE_ESP32C3.menu.DebugLevel.warn.build.code_debug=2 -AirM2M_CORE_ESP32C3.menu.DebugLevel.info=Info -AirM2M_CORE_ESP32C3.menu.DebugLevel.info.build.code_debug=3 -AirM2M_CORE_ESP32C3.menu.DebugLevel.debug=Debug -AirM2M_CORE_ESP32C3.menu.DebugLevel.debug.build.code_debug=4 -AirM2M_CORE_ESP32C3.menu.DebugLevel.verbose=Verbose -AirM2M_CORE_ESP32C3.menu.DebugLevel.verbose.build.code_debug=5 - -AirM2M_CORE_ESP32C3.menu.EraseFlash.none=Disabled -AirM2M_CORE_ESP32C3.menu.EraseFlash.none.upload.erase_cmd= -AirM2M_CORE_ESP32C3.menu.EraseFlash.all=Enabled -AirM2M_CORE_ESP32C3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################# - - -XIAO_ESP32C3.name=XIAO_ESP32C3 -XIAO_ESP32C3.vid.0=0x2886 -XIAO_ESP32C3.pid.0=0x0046 - -XIAO_ESP32C3.bootloader.tool=esptool_py -XIAO_ESP32C3.bootloader.tool.default=esptool_py - -XIAO_ESP32C3.upload.tool=esptool_py -XIAO_ESP32C3.upload.tool.default=esptool_py -XIAO_ESP32C3.upload.tool.network=esp_ota - -XIAO_ESP32C3.upload.maximum_size=1310720 -XIAO_ESP32C3.upload.maximum_data_size=327680 -XIAO_ESP32C3.upload.flags= -XIAO_ESP32C3.upload.extra_flags= -XIAO_ESP32C3.upload.use_1200bps_touch=false -XIAO_ESP32C3.upload.wait_for_upload_port=false - -XIAO_ESP32C3.serial.disableDTR=false -XIAO_ESP32C3.serial.disableRTS=false - -XIAO_ESP32C3.build.tarch=riscv32 -XIAO_ESP32C3.build.target=esp -XIAO_ESP32C3.build.mcu=esp32c3 -XIAO_ESP32C3.build.core=esp32 -XIAO_ESP32C3.build.variant=XIAO_ESP32C3 -XIAO_ESP32C3.build.board=XIAO_ESP32C3 -XIAO_ESP32C3.build.bootloader_addr=0x0 - -XIAO_ESP32C3.build.cdc_on_boot=1 -XIAO_ESP32C3.build.f_cpu=160000000L -XIAO_ESP32C3.build.flash_size=4MB -XIAO_ESP32C3.build.flash_freq=80m -XIAO_ESP32C3.build.flash_mode=qio -XIAO_ESP32C3.build.boot=qio -XIAO_ESP32C3.build.partitions=default -XIAO_ESP32C3.build.defines= - -XIAO_ESP32C3.menu.CDCOnBoot.default=Enabled -XIAO_ESP32C3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -XIAO_ESP32C3.menu.CDCOnBoot.cdc=Disabled -XIAO_ESP32C3.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -XIAO_ESP32C3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.default.build.partitions=default -XIAO_ESP32C3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -XIAO_ESP32C3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -XIAO_ESP32C3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -XIAO_ESP32C3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -XIAO_ESP32C3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.minimal.build.partitions=minimal -XIAO_ESP32C3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.no_ota.build.partitions=no_ota -XIAO_ESP32C3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -XIAO_ESP32C3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -XIAO_ESP32C3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -XIAO_ESP32C3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -XIAO_ESP32C3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -XIAO_ESP32C3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -XIAO_ESP32C3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -XIAO_ESP32C3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -XIAO_ESP32C3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -XIAO_ESP32C3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.huge_app.build.partitions=huge_app -XIAO_ESP32C3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -XIAO_ESP32C3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -XIAO_ESP32C3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -XIAO_ESP32C3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -XIAO_ESP32C3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -XIAO_ESP32C3.menu.PartitionScheme.fatflash.build.partitions=ffat -XIAO_ESP32C3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -XIAO_ESP32C3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -XIAO_ESP32C3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -XIAO_ESP32C3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -XIAO_ESP32C3.menu.PartitionScheme.rainmaker=RainMaker -XIAO_ESP32C3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -XIAO_ESP32C3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -XIAO_ESP32C3.menu.CPUFreq.160=160MHz (WiFi) -XIAO_ESP32C3.menu.CPUFreq.160.build.f_cpu=160000000L -XIAO_ESP32C3.menu.CPUFreq.80=80MHz (WiFi) -XIAO_ESP32C3.menu.CPUFreq.80.build.f_cpu=80000000L -XIAO_ESP32C3.menu.CPUFreq.40=40MHz -XIAO_ESP32C3.menu.CPUFreq.40.build.f_cpu=40000000L -XIAO_ESP32C3.menu.CPUFreq.20=20MHz -XIAO_ESP32C3.menu.CPUFreq.20.build.f_cpu=20000000L -XIAO_ESP32C3.menu.CPUFreq.10=10MHz -XIAO_ESP32C3.menu.CPUFreq.10.build.f_cpu=10000000L - -XIAO_ESP32C3.menu.FlashMode.qio=QIO -XIAO_ESP32C3.menu.FlashMode.qio.build.flash_mode=dio -XIAO_ESP32C3.menu.FlashMode.qio.build.boot=qio -XIAO_ESP32C3.menu.FlashMode.dio=DIO -XIAO_ESP32C3.menu.FlashMode.dio.build.flash_mode=dio -XIAO_ESP32C3.menu.FlashMode.dio.build.boot=dio - -XIAO_ESP32C3.menu.FlashFreq.80=80MHz -XIAO_ESP32C3.menu.FlashFreq.80.build.flash_freq=80m -XIAO_ESP32C3.menu.FlashFreq.40=40MHz -XIAO_ESP32C3.menu.FlashFreq.40.build.flash_freq=40m - -XIAO_ESP32C3.menu.FlashSize.4M=4MB (32Mb) -XIAO_ESP32C3.menu.FlashSize.4M.build.flash_size=4MB -XIAO_ESP32C3.menu.FlashSize.8M=8MB (64Mb) -XIAO_ESP32C3.menu.FlashSize.8M.build.flash_size=8MB -XIAO_ESP32C3.menu.FlashSize.8M.build.partitions=default_8MB -XIAO_ESP32C3.menu.FlashSize.2M=2MB (16Mb) -XIAO_ESP32C3.menu.FlashSize.2M.build.flash_size=2MB -XIAO_ESP32C3.menu.FlashSize.2M.build.partitions=minimal -XIAO_ESP32C3.menu.FlashSize.16M=16MB (128Mb) -XIAO_ESP32C3.menu.FlashSize.16M.build.flash_size=16MB - -XIAO_ESP32C3.menu.UploadSpeed.921600=921600 -XIAO_ESP32C3.menu.UploadSpeed.921600.upload.speed=921600 -XIAO_ESP32C3.menu.UploadSpeed.115200=115200 -XIAO_ESP32C3.menu.UploadSpeed.115200.upload.speed=115200 -XIAO_ESP32C3.menu.UploadSpeed.256000.windows=256000 -XIAO_ESP32C3.menu.UploadSpeed.256000.upload.speed=256000 -XIAO_ESP32C3.menu.UploadSpeed.230400.windows.upload.speed=256000 -XIAO_ESP32C3.menu.UploadSpeed.230400=230400 -XIAO_ESP32C3.menu.UploadSpeed.230400.upload.speed=230400 -XIAO_ESP32C3.menu.UploadSpeed.460800.linux=460800 -XIAO_ESP32C3.menu.UploadSpeed.460800.macosx=460800 -XIAO_ESP32C3.menu.UploadSpeed.460800.upload.speed=460800 -XIAO_ESP32C3.menu.UploadSpeed.512000.windows=512000 -XIAO_ESP32C3.menu.UploadSpeed.512000.upload.speed=512000 - -XIAO_ESP32C3.menu.DebugLevel.none=None -XIAO_ESP32C3.menu.DebugLevel.none.build.code_debug=0 -XIAO_ESP32C3.menu.DebugLevel.error=Error -XIAO_ESP32C3.menu.DebugLevel.error.build.code_debug=1 -XIAO_ESP32C3.menu.DebugLevel.warn=Warn -XIAO_ESP32C3.menu.DebugLevel.warn.build.code_debug=2 -XIAO_ESP32C3.menu.DebugLevel.info=Info -XIAO_ESP32C3.menu.DebugLevel.info.build.code_debug=3 -XIAO_ESP32C3.menu.DebugLevel.debug=Debug -XIAO_ESP32C3.menu.DebugLevel.debug.build.code_debug=4 -XIAO_ESP32C3.menu.DebugLevel.verbose=Verbose -XIAO_ESP32C3.menu.DebugLevel.verbose.build.code_debug=5 - -XIAO_ESP32C3.menu.EraseFlash.none=Disabled -XIAO_ESP32C3.menu.EraseFlash.none.upload.erase_cmd= -XIAO_ESP32C3.menu.EraseFlash.all=Enabled -XIAO_ESP32C3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - - -XIAO_ESP32S3.name=XIAO_ESP32S3 -XIAO_ESP32S3.vid.0=0x2886 -XIAO_ESP32S3.pid.0=0x0056 -XIAO_ESP32S3.vid.1=0x2886 -XIAO_ESP32S3.pid.1=0x8056 - -XIAO_ESP32S3.bootloader.tool=esptool_py -XIAO_ESP32S3.bootloader.tool.default=esptool_py - -XIAO_ESP32S3.upload.tool=esptool_py -XIAO_ESP32S3.upload.tool.default=esptool_py -XIAO_ESP32S3.upload.tool.network=esp_ota - -XIAO_ESP32S3.upload.maximum_size=1310720 -XIAO_ESP32S3.upload.maximum_data_size=327680 -XIAO_ESP32S3.upload.flags= -XIAO_ESP32S3.upload.extra_flags= -XIAO_ESP32S3.upload.use_1200bps_touch=false -XIAO_ESP32S3.upload.wait_for_upload_port=false - -XIAO_ESP32S3.serial.disableDTR=false -XIAO_ESP32S3.serial.disableRTS=false - -XIAO_ESP32S3.build.tarch=xtensa -XIAO_ESP32S3.build.bootloader_addr=0x0 -XIAO_ESP32S3.build.target=esp32s3 -XIAO_ESP32S3.build.mcu=esp32s3 -XIAO_ESP32S3.build.core=esp32 -XIAO_ESP32S3.build.variant=XIAO_ESP32S3 -XIAO_ESP32S3.build.board=XIAO_ESP32S3 - -XIAO_ESP32S3.build.usb_mode=0 -XIAO_ESP32S3.build.cdc_on_boot=1 -XIAO_ESP32S3.build.msc_on_boot=0 -XIAO_ESP32S3.build.dfu_on_boot=0 -XIAO_ESP32S3.build.f_cpu=240000000L -XIAO_ESP32S3.build.flash_size=8MB -XIAO_ESP32S3.build.flash_freq=80m -XIAO_ESP32S3.build.flash_mode=dio -XIAO_ESP32S3.build.boot=qio -XIAO_ESP32S3.build.boot_freq=80m -XIAO_ESP32S3.build.partitions=default_8MB -XIAO_ESP32S3.build.defines= -XIAO_ESP32S3.build.loop_core= -XIAO_ESP32S3.build.event_core= -XIAO_ESP32S3.build.psram_type=qspi -XIAO_ESP32S3.build.memory_type={build.boot}_{build.psram_type} - -XIAO_ESP32S3.menu.JTAGAdapter.default=Disabled -XIAO_ESP32S3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -XIAO_ESP32S3.menu.JTAGAdapter.builtin=Integrated USB JTAG -XIAO_ESP32S3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -XIAO_ESP32S3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -XIAO_ESP32S3.menu.JTAGAdapter.external=FTDI Adapter -XIAO_ESP32S3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -XIAO_ESP32S3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -XIAO_ESP32S3.menu.JTAGAdapter.bridge=ESP USB Bridge -XIAO_ESP32S3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -XIAO_ESP32S3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -XIAO_ESP32S3.menu.PSRAM.disabled=Disabled -XIAO_ESP32S3.menu.PSRAM.disabled.build.defines= -XIAO_ESP32S3.menu.PSRAM.disabled.build.psram_type=qspi -XIAO_ESP32S3.menu.PSRAM.opi=OPI PSRAM -XIAO_ESP32S3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -XIAO_ESP32S3.menu.PSRAM.opi.build.psram_type=opi - -XIAO_ESP32S3.menu.FlashMode.qio=QIO 80MHz -XIAO_ESP32S3.menu.FlashMode.qio.build.flash_mode=dio -XIAO_ESP32S3.menu.FlashMode.qio.build.boot=qio -XIAO_ESP32S3.menu.FlashMode.qio.build.boot_freq=80m -XIAO_ESP32S3.menu.FlashMode.qio.build.flash_freq=80m -XIAO_ESP32S3.menu.FlashMode.dio=DIO 80MHz -XIAO_ESP32S3.menu.FlashMode.dio.build.flash_mode=dio -XIAO_ESP32S3.menu.FlashMode.dio.build.boot=dio -XIAO_ESP32S3.menu.FlashMode.dio.build.boot_freq=80m -XIAO_ESP32S3.menu.FlashMode.dio.build.flash_freq=80m - -XIAO_ESP32S3.menu.FlashSize.8M=8MB (64Mb) -XIAO_ESP32S3.menu.FlashSize.8M.build.flash_size=8MB -XIAO_ESP32S3.menu.FlashSize.8M.build.partitions=default_8MB - -XIAO_ESP32S3.menu.LoopCore.1=Core 1 -XIAO_ESP32S3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -XIAO_ESP32S3.menu.LoopCore.0=Core 0 -XIAO_ESP32S3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -XIAO_ESP32S3.menu.EventsCore.1=Core 1 -XIAO_ESP32S3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -XIAO_ESP32S3.menu.EventsCore.0=Core 0 -XIAO_ESP32S3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -XIAO_ESP32S3.menu.USBMode.hwcdc=Hardware CDC and JTAG -XIAO_ESP32S3.menu.USBMode.hwcdc.build.usb_mode=1 -XIAO_ESP32S3.menu.USBMode.default=USB-OTG (TinyUSB) -XIAO_ESP32S3.menu.USBMode.default.build.usb_mode=0 - -XIAO_ESP32S3.menu.CDCOnBoot.default=Enabled -XIAO_ESP32S3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -XIAO_ESP32S3.menu.CDCOnBoot.cdc=Disabled -XIAO_ESP32S3.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -XIAO_ESP32S3.menu.MSCOnBoot.default=Disabled -XIAO_ESP32S3.menu.MSCOnBoot.default.build.msc_on_boot=0 -XIAO_ESP32S3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -XIAO_ESP32S3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -XIAO_ESP32S3.menu.DFUOnBoot.default=Disabled -XIAO_ESP32S3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -XIAO_ESP32S3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -XIAO_ESP32S3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -XIAO_ESP32S3.menu.UploadMode.default=UART0 / Hardware CDC -XIAO_ESP32S3.menu.UploadMode.default.upload.use_1200bps_touch=false -XIAO_ESP32S3.menu.UploadMode.default.upload.wait_for_upload_port=false -XIAO_ESP32S3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -XIAO_ESP32S3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -XIAO_ESP32S3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -XIAO_ESP32S3.menu.PartitionScheme.default_8MB=Default with spiffs (3MB APP/1.5MB SPIFFS) -XIAO_ESP32S3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -XIAO_ESP32S3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -XIAO_ESP32S3.menu.PartitionScheme.max_app_8MB=Maximum APP (7.9MB APP No OTA/No FS) -XIAO_ESP32S3.menu.PartitionScheme.max_app_8MB.build.partitions=max_app_8MB -XIAO_ESP32S3.menu.PartitionScheme.max_app_8MB.upload.maximum_size=8257536 -XIAO_ESP32S3.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FFAT) -XIAO_ESP32S3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -XIAO_ESP32S3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-8MB-tinyuf2 -XIAO_ESP32S3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -XIAO_ESP32S3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" - -XIAO_ESP32S3.menu.CPUFreq.240=240MHz (WiFi) -XIAO_ESP32S3.menu.CPUFreq.240.build.f_cpu=240000000L -XIAO_ESP32S3.menu.CPUFreq.160=160MHz (WiFi) -XIAO_ESP32S3.menu.CPUFreq.160.build.f_cpu=160000000L -XIAO_ESP32S3.menu.CPUFreq.80=80MHz (WiFi) -XIAO_ESP32S3.menu.CPUFreq.80.build.f_cpu=80000000L -XIAO_ESP32S3.menu.CPUFreq.40=40MHz -XIAO_ESP32S3.menu.CPUFreq.40.build.f_cpu=40000000L -XIAO_ESP32S3.menu.CPUFreq.20=20MHz -XIAO_ESP32S3.menu.CPUFreq.20.build.f_cpu=20000000L -XIAO_ESP32S3.menu.CPUFreq.10=10MHz -XIAO_ESP32S3.menu.CPUFreq.10.build.f_cpu=10000000L - -XIAO_ESP32S3.menu.UploadSpeed.921600=921600 -XIAO_ESP32S3.menu.UploadSpeed.921600.upload.speed=921600 -XIAO_ESP32S3.menu.UploadSpeed.115200=115200 -XIAO_ESP32S3.menu.UploadSpeed.115200.upload.speed=115200 -XIAO_ESP32S3.menu.UploadSpeed.256000.windows=256000 -XIAO_ESP32S3.menu.UploadSpeed.256000.upload.speed=256000 -XIAO_ESP32S3.menu.UploadSpeed.230400.windows.upload.speed=256000 -XIAO_ESP32S3.menu.UploadSpeed.230400=230400 -XIAO_ESP32S3.menu.UploadSpeed.230400.upload.speed=230400 -XIAO_ESP32S3.menu.UploadSpeed.460800.linux=460800 -XIAO_ESP32S3.menu.UploadSpeed.460800.macosx=460800 -XIAO_ESP32S3.menu.UploadSpeed.460800.upload.speed=460800 -XIAO_ESP32S3.menu.UploadSpeed.512000.windows=512000 -XIAO_ESP32S3.menu.UploadSpeed.512000.upload.speed=512000 - -XIAO_ESP32S3.menu.DebugLevel.none=None -XIAO_ESP32S3.menu.DebugLevel.none.build.code_debug=0 -XIAO_ESP32S3.menu.DebugLevel.error=Error -XIAO_ESP32S3.menu.DebugLevel.error.build.code_debug=1 -XIAO_ESP32S3.menu.DebugLevel.warn=Warn -XIAO_ESP32S3.menu.DebugLevel.warn.build.code_debug=2 -XIAO_ESP32S3.menu.DebugLevel.info=Info -XIAO_ESP32S3.menu.DebugLevel.info.build.code_debug=3 -XIAO_ESP32S3.menu.DebugLevel.debug=Debug -XIAO_ESP32S3.menu.DebugLevel.debug.build.code_debug=4 -XIAO_ESP32S3.menu.DebugLevel.verbose=Verbose -XIAO_ESP32S3.menu.DebugLevel.verbose.build.code_debug=5 - -XIAO_ESP32S3.menu.EraseFlash.none=Disabled -XIAO_ESP32S3.menu.EraseFlash.none.upload.erase_cmd= -XIAO_ESP32S3.menu.EraseFlash.all=Enabled -XIAO_ESP32S3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -connaxio_espoir.name=Connaxio's Espoir -connaxio_espoir.vid.0=0x10C4 -connaxio_espoir.pid.0=0x8D9A - -connaxio_espoir.bootloader.tool=esptool_py -connaxio_espoir.bootloader.tool.default=esptool_py - -connaxio_espoir.upload.tool=esptool_py -connaxio_espoir.upload.tool.default=esptool_py -connaxio_espoir.upload.tool.network=esp_ota - -connaxio_espoir.upload.maximum_size=1310720 -connaxio_espoir.upload.maximum_data_size=327680 -connaxio_espoir.upload.flags= -connaxio_espoir.upload.extra_flags= - -connaxio_espoir.serial.disableDTR=true -connaxio_espoir.serial.disableRTS=true - -connaxio_espoir.build.tarch=xtensa -connaxio_espoir.build.bootloader_addr=0x1000 -connaxio_espoir.build.target=esp32 -connaxio_espoir.build.mcu=esp32 -connaxio_espoir.build.core=esp32 -connaxio_espoir.build.variant=connaxio_espoir -connaxio_espoir.build.board=connaxio_espoir - -connaxio_espoir.build.f_cpu=240000000L -connaxio_espoir.build.flash_size=4MB -connaxio_espoir.build.flash_freq=80m -connaxio_espoir.build.flash_mode=dio -connaxio_espoir.build.boot=dio -connaxio_espoir.build.partitions=default -connaxio_espoir.build.defines= -connaxio_espoir.build.loop_core= -connaxio_espoir.build.event_core= - -connaxio_espoir.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -connaxio_espoir.menu.PartitionScheme.default.build.partitions=default -connaxio_espoir.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -connaxio_espoir.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -connaxio_espoir.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -connaxio_espoir.menu.PartitionScheme.minimal.build.partitions=minimal -connaxio_espoir.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -connaxio_espoir.menu.PartitionScheme.no_ota.build.partitions=no_ota -connaxio_espoir.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -connaxio_espoir.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -connaxio_espoir.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -connaxio_espoir.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -connaxio_espoir.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -connaxio_espoir.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -connaxio_espoir.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -connaxio_espoir.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -connaxio_espoir.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -connaxio_espoir.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -connaxio_espoir.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -connaxio_espoir.menu.PartitionScheme.huge_app.build.partitions=huge_app -connaxio_espoir.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -connaxio_espoir.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -connaxio_espoir.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -connaxio_espoir.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -connaxio_espoir.menu.PartitionScheme.rainmaker=RainMaker -connaxio_espoir.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -connaxio_espoir.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -connaxio_espoir.menu.CPUFreq.240=240MHz (WiFi/BT) -connaxio_espoir.menu.CPUFreq.240.build.f_cpu=240000000L -connaxio_espoir.menu.CPUFreq.160=160MHz (WiFi/BT) -connaxio_espoir.menu.CPUFreq.160.build.f_cpu=160000000L -connaxio_espoir.menu.CPUFreq.80=80MHz (WiFi/BT) -connaxio_espoir.menu.CPUFreq.80.build.f_cpu=80000000L -connaxio_espoir.menu.CPUFreq.40=40MHz -connaxio_espoir.menu.CPUFreq.40.build.f_cpu=40000000L -connaxio_espoir.menu.CPUFreq.20=20MHz -connaxio_espoir.menu.CPUFreq.20.build.f_cpu=20000000L -connaxio_espoir.menu.CPUFreq.10=10MHz -connaxio_espoir.menu.CPUFreq.10.build.f_cpu=10000000L - -connaxio_espoir.menu.FlashFreq.80=80MHz -connaxio_espoir.menu.FlashFreq.80.build.flash_freq=80m -connaxio_espoir.menu.FlashFreq.40=40MHz -connaxio_espoir.menu.FlashFreq.40.build.flash_freq=40m - -connaxio_espoir.menu.UploadSpeed.921600=921600 -connaxio_espoir.menu.UploadSpeed.921600.upload.speed=921600 -connaxio_espoir.menu.UploadSpeed.512000.windows=512000 -connaxio_espoir.menu.UploadSpeed.512000.upload.speed=512000 -connaxio_espoir.menu.UploadSpeed.460800.linux=460800 -connaxio_espoir.menu.UploadSpeed.460800.macosx=460800 -connaxio_espoir.menu.UploadSpeed.460800.upload.speed=460800 -connaxio_espoir.menu.UploadSpeed.256000.windows=256000 -connaxio_espoir.menu.UploadSpeed.256000.upload.speed=256000 -connaxio_espoir.menu.UploadSpeed.230400.windows.upload.speed=256000 -connaxio_espoir.menu.UploadSpeed.230400=230400 -connaxio_espoir.menu.UploadSpeed.230400.upload.speed=230400 -connaxio_espoir.menu.UploadSpeed.115200=115200 -connaxio_espoir.menu.UploadSpeed.115200.upload.speed=115200 - -connaxio_espoir.menu.DebugLevel.none=None -connaxio_espoir.menu.DebugLevel.none.build.code_debug=0 -connaxio_espoir.menu.DebugLevel.error=Error -connaxio_espoir.menu.DebugLevel.error.build.code_debug=1 -connaxio_espoir.menu.DebugLevel.warn=Warn -connaxio_espoir.menu.DebugLevel.warn.build.code_debug=2 -connaxio_espoir.menu.DebugLevel.info=Info -connaxio_espoir.menu.DebugLevel.info.build.code_debug=3 -connaxio_espoir.menu.DebugLevel.debug=Debug -connaxio_espoir.menu.DebugLevel.debug.build.code_debug=4 -connaxio_espoir.menu.DebugLevel.verbose=Verbose -connaxio_espoir.menu.DebugLevel.verbose.build.code_debug=5 - -connaxio_espoir.menu.EraseFlash.none=Disabled -connaxio_espoir.menu.EraseFlash.none.upload.erase_cmd= -connaxio_espoir.menu.EraseFlash.all=Enabled -connaxio_espoir.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -aw2eth.name=CNRS AW2ETH - -aw2eth.bootloader.tool=esptool_py -aw2eth.bootloader.tool.default=esptool_py - -aw2eth.upload.tool=esptool_py -aw2eth.upload.tool.default=esptool_py -aw2eth.upload.tool.network=esp_ota - -aw2eth.upload.maximum_size=1310720 -aw2eth.upload.maximum_data_size=327680 -aw2eth.upload.flags= -aw2eth.upload.extra_flags= - -aw2eth.serial.disableDTR=true -aw2eth.serial.disableRTS=true - -aw2eth.build.tarch=xtensa -aw2eth.build.bootloader_addr=0x1000 -aw2eth.build.target=esp32 -aw2eth.build.mcu=esp32 -aw2eth.build.core=esp32 -aw2eth.build.variant=cnrs_aw2eth -aw2eth.build.board=ESP32_PICO - -aw2eth.build.f_cpu=240000000L -aw2eth.build.flash_size=4MB -aw2eth.build.flash_freq=80m -aw2eth.build.flash_mode=dio -aw2eth.build.boot=dio -aw2eth.build.partitions=default -aw2eth.build.defines= - -aw2eth.menu.PartitionScheme.default=Default -aw2eth.menu.PartitionScheme.default.build.partitions=default -aw2eth.menu.PartitionScheme.no_ota=No OTA (Large APP) -aw2eth.menu.PartitionScheme.no_ota.build.partitions=no_ota -aw2eth.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -aw2eth.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -aw2eth.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -aw2eth.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -aw2eth.menu.UploadSpeed.921600=921600 -aw2eth.menu.UploadSpeed.921600.upload.speed=921600 -aw2eth.menu.UploadSpeed.115200=115200 -aw2eth.menu.UploadSpeed.115200.upload.speed=115200 -aw2eth.menu.UploadSpeed.256000.windows=256000 -aw2eth.menu.UploadSpeed.256000.upload.speed=256000 -aw2eth.menu.UploadSpeed.230400.windows.upload.speed=256000 -aw2eth.menu.UploadSpeed.230400=230400 -aw2eth.menu.UploadSpeed.230400.upload.speed=230400 -aw2eth.menu.UploadSpeed.460800.linux=460800 -aw2eth.menu.UploadSpeed.460800.macosx=460800 -aw2eth.menu.UploadSpeed.460800.upload.speed=460800 -aw2eth.menu.UploadSpeed.512000.windows=512000 -aw2eth.menu.UploadSpeed.512000.upload.speed=512000 - -aw2eth.menu.DebugLevel.none=None -aw2eth.menu.DebugLevel.none.build.code_debug=0 -aw2eth.menu.DebugLevel.error=Error -aw2eth.menu.DebugLevel.error.build.code_debug=1 -aw2eth.menu.DebugLevel.warn=Warn -aw2eth.menu.DebugLevel.warn.build.code_debug=2 -aw2eth.menu.DebugLevel.info=Info -aw2eth.menu.DebugLevel.info.build.code_debug=3 -aw2eth.menu.DebugLevel.debug=Debug -aw2eth.menu.DebugLevel.debug.build.code_debug=4 -aw2eth.menu.DebugLevel.verbose=Verbose -aw2eth.menu.DebugLevel.verbose.build.code_debug=5 - -aw2eth.menu.EraseFlash.none=Disabled -aw2eth.menu.EraseFlash.none.upload.erase_cmd= -aw2eth.menu.EraseFlash.all=Enabled -aw2eth.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -department_of_alchemy_minimain_esp32s2.name=Department of Alchemy MiniMain ESP32-S2 -department_of_alchemy_minimain_esp32s2.vid.0=0x303A -department_of_alchemy_minimain_esp32s2.pid.0=0x80FF - -department_of_alchemy_minimain_esp32s2.bootloader.tool=esptool_py -department_of_alchemy_minimain_esp32s2.bootloader.tool.default=esptool_py - -department_of_alchemy_minimain_esp32s2.upload.tool=esptool_py -department_of_alchemy_minimain_esp32s2.upload.tool.default=esptool_py -department_of_alchemy_minimain_esp32s2.upload.tool.network=esp_ota - -department_of_alchemy_minimain_esp32s2.upload.maximum_size=1310720 -department_of_alchemy_minimain_esp32s2.upload.maximum_data_size=327680 -department_of_alchemy_minimain_esp32s2.upload.flags= -department_of_alchemy_minimain_esp32s2.upload.extra_flags= -department_of_alchemy_minimain_esp32s2.upload.use_1200bps_touch=true -department_of_alchemy_minimain_esp32s2.upload.wait_for_upload_port=true - -department_of_alchemy_minimain_esp32s2.serial.disableDTR=false -department_of_alchemy_minimain_esp32s2.serial.disableRTS=false - -department_of_alchemy_minimain_esp32s2.build.tarch=xtensa -department_of_alchemy_minimain_esp32s2.build.bootloader_addr=0x1000 -department_of_alchemy_minimain_esp32s2.build.target=esp32s2 -department_of_alchemy_minimain_esp32s2.build.mcu=esp32s2 -department_of_alchemy_minimain_esp32s2.build.core=esp32 -department_of_alchemy_minimain_esp32s2.build.variant=department_of_alchemy_minimain_esp32s2 -department_of_alchemy_minimain_esp32s2.build.board=DEPARTMENT_OF_ALCHEMY_MINIMAIN_ESP32S2 - -department_of_alchemy_minimain_esp32s2.build.cdc_on_boot=1 -department_of_alchemy_minimain_esp32s2.build.msc_on_boot=0 -department_of_alchemy_minimain_esp32s2.build.dfu_on_boot=0 -department_of_alchemy_minimain_esp32s2.build.f_cpu=240000000L -department_of_alchemy_minimain_esp32s2.build.flash_size=4MB -department_of_alchemy_minimain_esp32s2.build.flash_freq=80m -department_of_alchemy_minimain_esp32s2.build.flash_mode=qio -department_of_alchemy_minimain_esp32s2.build.boot=qio -department_of_alchemy_minimain_esp32s2.build.partitions=default -department_of_alchemy_minimain_esp32s2.build.defines= - -department_of_alchemy_minimain_esp32s2.menu.CDCOnBoot.cdc=Enabled -department_of_alchemy_minimain_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -department_of_alchemy_minimain_esp32s2.menu.CDCOnBoot.default=Disabled -department_of_alchemy_minimain_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -department_of_alchemy_minimain_esp32s2.menu.MSCOnBoot.default=Disabled -department_of_alchemy_minimain_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 -department_of_alchemy_minimain_esp32s2.menu.MSCOnBoot.msc=Enabled -department_of_alchemy_minimain_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -department_of_alchemy_minimain_esp32s2.menu.DFUOnBoot.default=Disabled -department_of_alchemy_minimain_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -department_of_alchemy_minimain_esp32s2.menu.DFUOnBoot.dfu=Enabled -department_of_alchemy_minimain_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -department_of_alchemy_minimain_esp32s2.menu.UploadMode.cdc=Internal USB -department_of_alchemy_minimain_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -department_of_alchemy_minimain_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -department_of_alchemy_minimain_esp32s2.menu.UploadMode.default=UART0 -department_of_alchemy_minimain_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -department_of_alchemy_minimain_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -department_of_alchemy_minimain_esp32s2.menu.PSRAM.enabled=Enabled -department_of_alchemy_minimain_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -department_of_alchemy_minimain_esp32s2.menu.PSRAM.disabled=Disabled -department_of_alchemy_minimain_esp32s2.menu.PSRAM.disabled.build.defines= - -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FFAT) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-4MB-tinyuf2 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.default.build.partitions=default -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -department_of_alchemy_minimain_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.40=40MHz -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.20=20MHz -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.10=10MHz -department_of_alchemy_minimain_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -department_of_alchemy_minimain_esp32s2.menu.FlashMode.qio=QIO -department_of_alchemy_minimain_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -department_of_alchemy_minimain_esp32s2.menu.FlashMode.qio.build.boot=qio -department_of_alchemy_minimain_esp32s2.menu.FlashMode.dio=DIO -department_of_alchemy_minimain_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -department_of_alchemy_minimain_esp32s2.menu.FlashMode.dio.build.boot=dio - -department_of_alchemy_minimain_esp32s2.menu.FlashFreq.80=80MHz -department_of_alchemy_minimain_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -department_of_alchemy_minimain_esp32s2.menu.FlashFreq.40=40MHz -department_of_alchemy_minimain_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -department_of_alchemy_minimain_esp32s2.menu.FlashSize.4M=4MB (32Mb) -department_of_alchemy_minimain_esp32s2.menu.FlashSize.4M.build.flash_size=4MB -department_of_alchemy_minimain_esp32s2.menu.FlashSize.8M=8MB (64Mb) -department_of_alchemy_minimain_esp32s2.menu.FlashSize.8M.build.flash_size=8MB -department_of_alchemy_minimain_esp32s2.menu.FlashSize.8M.build.partitions=default_8MB -department_of_alchemy_minimain_esp32s2.menu.FlashSize.2M=2MB (16Mb) -department_of_alchemy_minimain_esp32s2.menu.FlashSize.2M.build.flash_size=2MB -department_of_alchemy_minimain_esp32s2.menu.FlashSize.2M.build.partitions=minimal -department_of_alchemy_minimain_esp32s2.menu.FlashSize.16M=16MB (128Mb) -department_of_alchemy_minimain_esp32s2.menu.FlashSize.16M.build.flash_size=16MB - -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.921600=921600 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.115200=115200 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.256000.windows=256000 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.230400=230400 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.460800.linux=460800 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.460800.macosx=460800 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.512000.windows=512000 -department_of_alchemy_minimain_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.none=None -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.none.build.code_debug=0 -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.error=Error -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.error.build.code_debug=1 -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.warn=Warn -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.info=Info -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.info.build.code_debug=3 -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.debug=Debug -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.verbose=Verbose -department_of_alchemy_minimain_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -department_of_alchemy_minimain_esp32s2.menu.EraseFlash.none=Disabled -department_of_alchemy_minimain_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -department_of_alchemy_minimain_esp32s2.menu.EraseFlash.all=Enabled -department_of_alchemy_minimain_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - - -Bee_Data_Logger.name=Bee Data Logger -Bee_Data_Logger.vid.0=0x303a -Bee_Data_Logger.pid.0=815C - -Bee_Data_Logger.bootloader.tool=esptool_py -Bee_Data_Logger.bootloader.tool.default=esptool_py - -Bee_Data_Logger.upload.tool=esptool_py -Bee_Data_Logger.upload.tool.default=esptool_py -Bee_Data_Logger.upload.tool.network=esp_ota - -Bee_Data_Logger.upload.maximum_size=1310720 -Bee_Data_Logger.upload.maximum_data_size=327680 -Bee_Data_Logger.upload.flags= -Bee_Data_Logger.upload.extra_flags= -Bee_Data_Logger.upload.use_1200bps_touch=true -Bee_Data_Logger.upload.wait_for_upload_port=true -Bee_Data_Logger.upload.speed=921600 - -Bee_Data_Logger.serial.disableDTR=false -Bee_Data_Logger.serial.disableRTS=false - -Bee_Data_Logger.build.tarch=xtensa -Bee_Data_Logger.build.bootloader_addr=0x0 -Bee_Data_Logger.build.target=esp32s3 -Bee_Data_Logger.build.mcu=esp32s3 -Bee_Data_Logger.build.core=esp32 -Bee_Data_Logger.build.variant=Bee_Data_Logger -Bee_Data_Logger.build.board=BEE_DATA_LOGGER - -Bee_Data_Logger.build.cdc_on_boot=1 -Bee_Data_Logger.build.msc_on_boot=1 -Bee_Data_Logger.build.dfu_on_boot=1 -Bee_Data_Logger.build.f_cpu=240000000L -Bee_Data_Logger.build.flash_size=8MB -Bee_Data_Logger.build.flash_freq=80m -Bee_Data_Logger.build.flash_mode=dio -Bee_Data_Logger.build.partitions=default_8MB -Bee_Data_Logger.build.defines= -Bee_Data_Logger.build.loop_core=-DARDUINO_RUNNING_CORE=1 -Bee_Data_Logger.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -Bee_Data_Logger.build.boot=qio -Bee_Data_Logger.build.partitions=default -Bee_Data_Logger.build.defines= - -Bee_Data_Logger.menu.CDCOnBoot.default=Enabled -Bee_Data_Logger.menu.CDCOnBoot.default.build.cdc_on_boot=1 -Bee_Data_Logger.menu.CDCOnBoot.dis_cdc=Disabled -Bee_Data_Logger.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -Bee_Data_Logger.menu.MSCOnBoot.default=Disabled -Bee_Data_Logger.menu.MSCOnBoot.default.build.msc_on_boot=0 -Bee_Data_Logger.menu.MSCOnBoot.msc=Enabled -Bee_Data_Logger.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -Bee_Data_Logger.menu.DFUOnBoot.default=Disabled -Bee_Data_Logger.menu.DFUOnBoot.default.build.dfu_on_boot=0 -Bee_Data_Logger.menu.DFUOnBoot.dfu=Enabled -Bee_Data_Logger.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -Bee_Data_Logger.menu.USBMode.default=USB-OTG -Bee_Data_Logger.menu.USBMode.default.build.usb_mode=0 -Bee_Data_Logger.menu.USBMode.default.upload.use_1200bps_touch=true -Bee_Data_Logger.menu.USBMode.default.upload.wait_for_upload_port=true -Bee_Data_Logger.menu.USBMode.hwcdc=Hardware CDC and JTAG -Bee_Data_Logger.menu.USBMode.hwcdc.build.usb_mode=1 -Bee_Data_Logger.menu.USBMode.hwcdc.upload.use_1200bps_touch=false -Bee_Data_Logger.menu.USBMode.hwcdc.upload.wait_for_upload_port=false - -Bee_Data_Logger.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Bee_Data_Logger.menu.PartitionScheme.default.build.partitions=default -Bee_Data_Logger.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Bee_Data_Logger.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Bee_Data_Logger.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Bee_Data_Logger.menu.PartitionScheme.no_ota.build.partitions=no_ota -Bee_Data_Logger.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Bee_Data_Logger.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Bee_Data_Logger.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Bee_Data_Logger.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Bee_Data_Logger.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Bee_Data_Logger.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Bee_Data_Logger.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Bee_Data_Logger.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Bee_Data_Logger.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Bee_Data_Logger.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Bee_Data_Logger.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Bee_Data_Logger.menu.PartitionScheme.huge_app.build.partitions=huge_app -Bee_Data_Logger.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -Bee_Data_Logger.menu.DebugLevel.none=None -Bee_Data_Logger.menu.DebugLevel.none.build.code_debug=0 -Bee_Data_Logger.menu.DebugLevel.error=Error -Bee_Data_Logger.menu.DebugLevel.error.build.code_debug=1 -Bee_Data_Logger.menu.DebugLevel.warn=Warn -Bee_Data_Logger.menu.DebugLevel.warn.build.code_debug=2 -Bee_Data_Logger.menu.DebugLevel.info=Info -Bee_Data_Logger.menu.DebugLevel.info.build.code_debug=3 -Bee_Data_Logger.menu.DebugLevel.debug=Debug -Bee_Data_Logger.menu.DebugLevel.debug.build.code_debug=4 -Bee_Data_Logger.menu.DebugLevel.verbose=Verbose -Bee_Data_Logger.menu.DebugLevel.verbose.build.code_debug=5 - -Bee_Data_Logger.menu.EraseFlash.none=Disabled -Bee_Data_Logger.menu.EraseFlash.none.upload.erase_cmd= -Bee_Data_Logger.menu.EraseFlash.all=Enabled -Bee_Data_Logger.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################ - -Bee_Motion_S3.name=Bee Motion S3 -Bee_Motion_S3.vid.0=0x303a -Bee_Motion_S3.pid.0=0x8113 - -Bee_Motion_S3.bootloader.tool=esptool_py -Bee_Motion_S3.bootloader.tool.default=esptool_py - -Bee_Motion_S3.upload.tool=esptool_py -Bee_Motion_S3.upload.tool.default=esptool_py -Bee_Motion_S3.upload.tool.network=esp_ota - -Bee_Motion_S3.upload.maximum_size=1310720 -Bee_Motion_S3.upload.maximum_data_size=327680 -Bee_Motion_S3.upload.flags= -Bee_Motion_S3.upload.extra_flags= -Bee_Motion_S3.upload.use_1200bps_touch=true -Bee_Motion_S3.upload.wait_for_upload_port=true -Bee_Motion_S3.upload.speed=921600 - -Bee_Motion_S3.serial.disableDTR=false -Bee_Motion_S3.serial.disableRTS=false - -Bee_Motion_S3.build.tarch=xtensa -Bee_Motion_S3.build.bootloader_addr=0x0 -Bee_Motion_S3.build.target=esp32s3 -Bee_Motion_S3.build.mcu=esp32s3 -Bee_Motion_S3.build.core=esp32 -Bee_Motion_S3.build.variant=Bee_Motion_S3 -Bee_Motion_S3.build.board=BeeMotionS3 - -Bee_Motion_S3.build.cdc_on_boot=1 -Bee_Motion_S3.build.msc_on_boot=1 -Bee_Motion_S3.build.dfu_on_boot=1 -Bee_Motion_S3.build.f_cpu=240000000L -Bee_Motion_S3.build.flash_size=8MB -Bee_Motion_S3.build.flash_freq=80m -Bee_Motion_S3.build.flash_mode=dio -Bee_Motion_S3.build.partitions=default_8MB -Bee_Motion_S3.build.defines= -Bee_Motion_S3.build.loop_core=-DARDUINO_RUNNING_CORE=1 -Bee_Motion_S3.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -Bee_Motion_S3.build.boot=qio -Bee_Motion_S3.build.partitions=default -Bee_Motion_S3.build.defines= - -Bee_Motion_S3.menu.CDCOnBoot.default=Enabled -Bee_Motion_S3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -Bee_Motion_S3.menu.CDCOnBoot.dis_cdc=Disabled -Bee_Motion_S3.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -Bee_Motion_S3.menu.MSCOnBoot.default=Disabled -Bee_Motion_S3.menu.MSCOnBoot.default.build.msc_on_boot=0 -Bee_Motion_S3.menu.MSCOnBoot.msc=Enabled -Bee_Motion_S3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -Bee_Motion_S3.menu.DFUOnBoot.default=Disabled -Bee_Motion_S3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -Bee_Motion_S3.menu.DFUOnBoot.dfu=Enabled -Bee_Motion_S3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -Bee_Motion_S3.menu.USBMode.default=USB-OTG -Bee_Motion_S3.menu.USBMode.default.build.usb_mode=0 -Bee_Motion_S3.menu.USBMode.default.upload.use_1200bps_touch=true -Bee_Motion_S3.menu.USBMode.default.upload.wait_for_upload_port=true -Bee_Motion_S3.menu.USBMode.hwcdc=Hardware CDC and JTAG -Bee_Motion_S3.menu.USBMode.hwcdc.build.usb_mode=1 -Bee_Motion_S3.menu.USBMode.hwcdc.upload.use_1200bps_touch=false -Bee_Motion_S3.menu.USBMode.hwcdc.upload.wait_for_upload_port=false - -Bee_Motion_S3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Bee_Motion_S3.menu.PartitionScheme.default.build.partitions=default -Bee_Motion_S3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Bee_Motion_S3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Bee_Motion_S3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Bee_Motion_S3.menu.PartitionScheme.no_ota.build.partitions=no_ota -Bee_Motion_S3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Bee_Motion_S3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Bee_Motion_S3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Bee_Motion_S3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Bee_Motion_S3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Bee_Motion_S3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Bee_Motion_S3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Bee_Motion_S3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Bee_Motion_S3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Bee_Motion_S3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Bee_Motion_S3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Bee_Motion_S3.menu.PartitionScheme.huge_app.build.partitions=huge_app -Bee_Motion_S3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -Bee_Motion_S3.menu.DebugLevel.none=None -Bee_Motion_S3.menu.DebugLevel.none.build.code_debug=0 -Bee_Motion_S3.menu.DebugLevel.error=Error -Bee_Motion_S3.menu.DebugLevel.error.build.code_debug=1 -Bee_Motion_S3.menu.DebugLevel.warn=Warn -Bee_Motion_S3.menu.DebugLevel.warn.build.code_debug=2 -Bee_Motion_S3.menu.DebugLevel.info=Info -Bee_Motion_S3.menu.DebugLevel.info.build.code_debug=3 -Bee_Motion_S3.menu.DebugLevel.debug=Debug -Bee_Motion_S3.menu.DebugLevel.debug.build.code_debug=4 -Bee_Motion_S3.menu.DebugLevel.verbose=Verbose -Bee_Motion_S3.menu.DebugLevel.verbose.build.code_debug=5 - -Bee_Motion_S3.menu.EraseFlash.none=Disabled -Bee_Motion_S3.menu.EraseFlash.none.upload.erase_cmd= -Bee_Motion_S3.menu.EraseFlash.all=Enabled -Bee_Motion_S3.menu.EraseFlash.all.upload.erase_cmd=-e - -######################################################################## - -Bee_Motion.name=Bee Motion -Bee_Motion.vid.0=0x303a -Bee_Motion.pid.0=0x810D - -Bee_Motion.bootloader.tool=esptool_py -Bee_Motion.bootloader.tool.default=esptool_py - -Bee_Motion.upload.tool=esptool_py -Bee_Motion.upload.tool.default=esptool_py -Bee_Motion.upload.tool.network=esp_ota - -Bee_Motion.upload.maximum_size=1310720 -Bee_Motion.upload.maximum_data_size=327680 -Bee_Motion.upload.flags= -Bee_Motion.upload.extra_flags= -Bee_Motion.upload.use_1200bps_touch=true -Bee_Motion.upload.wait_for_upload_port=true -Bee_Motion.upload.speed=921600 - -Bee_Motion.serial.disableDTR=false -Bee_Motion.serial.disableRTS=false - -Bee_Motion.build.tarch=xtensa -Bee_Motion.build.bootloader_addr=0x1000 -Bee_Motion.build.target=esp32s2 -Bee_Motion.build.mcu=esp32s2 -Bee_Motion.build.core=esp32 -Bee_Motion.build.variant=Bee_Motion -Bee_Motion.build.board=Bee_Motion - -Bee_Motion.build.cdc_on_boot=1 -Bee_Motion.build.msc_on_boot=1 -Bee_Motion.build.dfu_on_boot=1 -Bee_Motion.build.f_cpu=240000000L -Bee_Motion.build.flash_size=4MB -Bee_Motion.build.flash_freq=80m -Bee_Motion.build.flash_mode=dio -Bee_Motion.build.boot=qio -Bee_Motion.build.partitions=default -Bee_Motion.build.defines= - -Bee_Motion.menu.CDCOnBoot.default=Enabled -Bee_Motion.menu.CDCOnBoot.default.build.cdc_on_boot=1 -Bee_Motion.menu.CDCOnBoot.dis_cdc=Disabled -Bee_Motion.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -Bee_Motion.menu.MSCOnBoot.default=Disabled -Bee_Motion.menu.MSCOnBoot.default.build.msc_on_boot=0 -Bee_Motion.menu.MSCOnBoot.msc=Enabled -Bee_Motion.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -Bee_Motion.menu.DFUOnBoot.default=Disabled -Bee_Motion.menu.DFUOnBoot.default.build.dfu_on_boot=0 -Bee_Motion.menu.DFUOnBoot.dfu=Enabled -Bee_Motion.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -Bee_Motion.menu.USBMode.default=USB-OTG -Bee_Motion.menu.USBMode.default.build.usb_mode=0 -Bee_Motion.menu.USBMode.default.upload.use_1200bps_touch=true -Bee_Motion.menu.USBMode.default.upload.wait_for_upload_port=true -Bee_Motion.menu.USBMode.hwcdc=Hardware CDC and JTAG -Bee_Motion.menu.USBMode.hwcdc.build.usb_mode=1 -Bee_Motion.menu.USBMode.hwcdc.upload.use_1200bps_touch=false -Bee_Motion.menu.USBMode.hwcdc.upload.wait_for_upload_port=false - -Bee_Motion.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Bee_Motion.menu.PartitionScheme.default.build.partitions=default -Bee_Motion.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Bee_Motion.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Bee_Motion.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Bee_Motion.menu.PartitionScheme.no_ota.build.partitions=no_ota -Bee_Motion.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Bee_Motion.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Bee_Motion.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Bee_Motion.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Bee_Motion.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Bee_Motion.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Bee_Motion.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Bee_Motion.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Bee_Motion.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Bee_Motion.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Bee_Motion.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Bee_Motion.menu.PartitionScheme.huge_app.build.partitions=huge_app -Bee_Motion.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -Bee_Motion.menu.DebugLevel.none=None -Bee_Motion.menu.DebugLevel.none.build.code_debug=0 -Bee_Motion.menu.DebugLevel.error=Error -Bee_Motion.menu.DebugLevel.error.build.code_debug=1 -Bee_Motion.menu.DebugLevel.warn=Warn -Bee_Motion.menu.DebugLevel.warn.build.code_debug=2 -Bee_Motion.menu.DebugLevel.info=Info -Bee_Motion.menu.DebugLevel.info.build.code_debug=3 -Bee_Motion.menu.DebugLevel.debug=Debug -Bee_Motion.menu.DebugLevel.debug.build.code_debug=4 -Bee_Motion.menu.DebugLevel.verbose=Verbose -Bee_Motion.menu.DebugLevel.verbose.build.code_debug=5 - -Bee_Motion.menu.EraseFlash.none=Disabled -Bee_Motion.menu.EraseFlash.none.upload.erase_cmd= -Bee_Motion.menu.EraseFlash.all=Enabled -Bee_Motion.menu.EraseFlash.all.upload.erase_cmd=-e - -##################################################################### - -Bee_Motion_Mini.name=Bee Motion Mini - -Bee_Motion_Mini.bootloader.tool=esptool_py -Bee_Motion_Mini.bootloader.tool.default=esptool_py - -Bee_Motion_Mini.upload.tool=esptool_py -Bee_Motion_Mini.upload.tool.default=esptool_py -Bee_Motion_Mini.upload.tool.network=esp_ota - -Bee_Motion_Mini.upload.maximum_size=1310720 -Bee_Motion_Mini.upload.maximum_data_size=327680 -Bee_Motion_Mini.upload.flags= -Bee_Motion_Mini.upload.extra_flags= -Bee_Motion_Mini.upload.use_1200bps_touch=false -Bee_Motion_Mini.upload.wait_for_upload_port=false - -Bee_Motion_Mini.serial.disableDTR=true -Bee_Motion_Mini.serial.disableRTS=true - -Bee_Motion_Mini.build.tarch=riscv32 -Bee_Motion_Mini.build.target=esp -Bee_Motion_Mini.build.mcu=esp32c3 -Bee_Motion_Mini.build.core=esp32 -Bee_Motion_Mini.build.variant=Bee_Motion_Mini -Bee_Motion_Mini.build.board=Bee_Motion_Mini -Bee_Motion_Mini.build.bootloader_addr=0x0 - -Bee_Motion_Mini.build.cdc_on_boot=1 -Bee_Motion_Mini.build.f_cpu=160000000L -Bee_Motion_Mini.build.flash_size=4MB -Bee_Motion_Mini.build.flash_freq=80m -Bee_Motion_Mini.build.flash_mode=dio -Bee_Motion_Mini.build.boot=qio -Bee_Motion_Mini.build.partitions=default -Bee_Motion_Mini.build.defines= - -Bee_Motion_Mini.menu.CDCOnBoot.default=Enabled -Bee_Motion_Mini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -Bee_Motion_Mini.menu.CDCOnBoot.dis_cdc=Disabled -Bee_Motion_Mini.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -Bee_Motion_Mini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Bee_Motion_Mini.menu.PartitionScheme.default.build.partitions=default -Bee_Motion_Mini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Bee_Motion_Mini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Bee_Motion_Mini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Bee_Motion_Mini.menu.PartitionScheme.no_ota.build.partitions=no_ota -Bee_Motion_Mini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Bee_Motion_Mini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Bee_Motion_Mini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Bee_Motion_Mini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Bee_Motion_Mini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Bee_Motion_Mini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Bee_Motion_Mini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Bee_Motion_Mini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Bee_Motion_Mini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Bee_Motion_Mini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Bee_Motion_Mini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Bee_Motion_Mini.menu.PartitionScheme.huge_app.build.partitions=huge_app -Bee_Motion_Mini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - -Bee_Motion_Mini.menu.CPUFreq.160=160MHz (WiFi) -Bee_Motion_Mini.menu.CPUFreq.160.build.f_cpu=160000000L -Bee_Motion_Mini.menu.CPUFreq.80=80MHz (WiFi) -Bee_Motion_Mini.menu.CPUFreq.80.build.f_cpu=80000000L -Bee_Motion_Mini.menu.CPUFreq.40=40MHz -Bee_Motion_Mini.menu.CPUFreq.40.build.f_cpu=40000000L -Bee_Motion_Mini.menu.CPUFreq.20=20MHz -Bee_Motion_Mini.menu.CPUFreq.20.build.f_cpu=20000000L -Bee_Motion_Mini.menu.CPUFreq.10=10MHz -Bee_Motion_Mini.menu.CPUFreq.10.build.f_cpu=10000000L - -Bee_Motion_Mini.menu.FlashFreq.80=80MHz -Bee_Motion_Mini.menu.FlashFreq.80.build.flash_freq=80m -Bee_Motion_Mini.menu.FlashFreq.40=40MHz -Bee_Motion_Mini.menu.FlashFreq.40.build.flash_freq=40m - -Bee_Motion_Mini.menu.UploadSpeed.921600=921600 -Bee_Motion_Mini.menu.UploadSpeed.921600.upload.speed=921600 -Bee_Motion_Mini.menu.UploadSpeed.115200=115200 -Bee_Motion_Mini.menu.UploadSpeed.115200.upload.speed=115200 -Bee_Motion_Mini.menu.UploadSpeed.256000.windows=256000 -Bee_Motion_Mini.menu.UploadSpeed.256000.upload.speed=256000 -Bee_Motion_Mini.menu.UploadSpeed.230400.windows.upload.speed=256000 -Bee_Motion_Mini.menu.UploadSpeed.230400=230400 -Bee_Motion_Mini.menu.UploadSpeed.230400.upload.speed=230400 -Bee_Motion_Mini.menu.UploadSpeed.460800.linux=460800 -Bee_Motion_Mini.menu.UploadSpeed.460800.macosx=460800 -Bee_Motion_Mini.menu.UploadSpeed.460800.upload.speed=460800 -Bee_Motion_Mini.menu.UploadSpeed.512000.windows=512000 -Bee_Motion_Mini.menu.UploadSpeed.512000.upload.speed=512000 - -Bee_Motion_Mini.menu.DebugLevel.none=None -Bee_Motion_Mini.menu.DebugLevel.none.build.code_debug=0 -Bee_Motion_Mini.menu.DebugLevel.error=Error -Bee_Motion_Mini.menu.DebugLevel.error.build.code_debug=1 -Bee_Motion_Mini.menu.DebugLevel.warn=Warn -Bee_Motion_Mini.menu.DebugLevel.warn.build.code_debug=2 -Bee_Motion_Mini.menu.DebugLevel.info=Info -Bee_Motion_Mini.menu.DebugLevel.info.build.code_debug=3 -Bee_Motion_Mini.menu.DebugLevel.debug=Debug -Bee_Motion_Mini.menu.DebugLevel.debug.build.code_debug=4 -Bee_Motion_Mini.menu.DebugLevel.verbose=Verbose -Bee_Motion_Mini.menu.DebugLevel.verbose.build.code_debug=5 - -Bee_Motion_Mini.menu.EraseFlash.none=Disabled -Bee_Motion_Mini.menu.EraseFlash.none.upload.erase_cmd= -Bee_Motion_Mini.menu.EraseFlash.all=Enabled -Bee_Motion_Mini.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################### - -Bee_S3.name=Bee S3 -Bee_S3.vid.0=0x303a -Bee_S3.pid.0=0x8110 - -Bee_S3.bootloader.tool=esptool_py -Bee_S3.bootloader.tool.default=esptool_py - -Bee_S3.upload.tool=esptool_py -Bee_S3.upload.tool.default=esptool_py -Bee_S3.upload.tool.network=esp_ota - -Bee_S3.upload.maximum_size=1310720 -Bee_S3.upload.maximum_data_size=327680 -Bee_S3.upload.flags= -Bee_S3.upload.extra_flags= -Bee_S3.upload.use_1200bps_touch=false -Bee_S3.upload.wait_for_upload_port=false - -Bee_S3.serial.disableDTR=false -Bee_S3.serial.disableRTS=false - -Bee_S3.build.tarch=xtensa -Bee_S3.build.bootloader_addr=0x0 -Bee_S3.build.target=esp32s3 -Bee_S3.build.mcu=esp32s3 -Bee_S3.build.core=esp32 -Bee_S3.build.variant=Bee_S3 -Bee_S3.build.board=Bee_S3 - -Bee_S3.build.usb_mode=1 -Bee_S3.build.cdc_on_boot=1 -Bee_S3.build.msc_on_boot=0 -Bee_S3.build.dfu_on_boot=0 -Bee_S3.build.f_cpu=240000000L -Bee_S3.build.flash_size=8MB -Bee_S3.build.flash_freq=80m -Bee_S3.build.flash_mode=dio -Bee_S3.build.boot=qio -Bee_S3.build.partitions=default_8MB -Bee_S3.build.defines= -Bee_S3.build.loop_core=-DARDUINO_RUNNING_CORE=1 -Bee_S3.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 - -Bee_S3.menu.USBMode.default=USB-OTG -Bee_S3.menu.USBMode.default.build.usb_mode=0 -Bee_S3.menu.USBMode.default.upload.use_1200bps_touch=true -Bee_S3.menu.USBMode.default.upload.wait_for_upload_port=true -Bee_S3.menu.USBMode.hwcdc=Hardware CDC and JTAG -Bee_S3.menu.USBMode.hwcdc.build.usb_mode=1 -Bee_S3.menu.USBMode.hwcdc.upload.use_1200bps_touch=false -Bee_S3.menu.USBMode.hwcdc.upload.wait_for_upload_port=false - -Bee_S3.menu.CDCOnBoot.cdc=Enabled -Bee_S3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -Bee_S3.menu.CDCOnBoot.default=Disabled -Bee_S3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -Bee_S3.menu.MSCOnBoot.default=Disabled -Bee_S3.menu.MSCOnBoot.default.build.msc_on_boot=0 -Bee_S3.menu.MSCOnBoot.msc=Enabled -Bee_S3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -Bee_S3.menu.DFUOnBoot.default=Disabled -Bee_S3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -Bee_S3.menu.DFUOnBoot.dfu=Enabled -Bee_S3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -Bee_S3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Bee_S3.menu.PartitionScheme.default.build.partitions=default -Bee_S3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Bee_S3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Bee_S3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -Bee_S3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -Bee_S3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -Bee_S3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -Bee_S3.menu.PartitionScheme.minimal.build.partitions=minimal -Bee_S3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Bee_S3.menu.PartitionScheme.no_ota.build.partitions=no_ota -Bee_S3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Bee_S3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Bee_S3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Bee_S3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Bee_S3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Bee_S3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Bee_S3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Bee_S3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Bee_S3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Bee_S3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Bee_S3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Bee_S3.menu.PartitionScheme.huge_app.build.partitions=huge_app -Bee_S3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -Bee_S3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -Bee_S3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -Bee_S3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -Bee_S3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -Bee_S3.menu.PartitionScheme.fatflash.build.partitions=ffat -Bee_S3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -Bee_S3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -Bee_S3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -Bee_S3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 - -Bee_S3.menu.CPUFreq.240=240MHz (WiFi) -Bee_S3.menu.CPUFreq.240.build.f_cpu=240000000L -Bee_S3.menu.CPUFreq.160=160MHz (WiFi) -Bee_S3.menu.CPUFreq.160.build.f_cpu=160000000L -Bee_S3.menu.CPUFreq.80=80MHz (WiFi) -Bee_S3.menu.CPUFreq.80.build.f_cpu=80000000L -Bee_S3.menu.CPUFreq.40=40MHz -Bee_S3.menu.CPUFreq.40.build.f_cpu=40000000L -Bee_S3.menu.CPUFreq.20=20MHz -Bee_S3.menu.CPUFreq.20.build.f_cpu=20000000L -Bee_S3.menu.CPUFreq.10=10MHz -Bee_S3.menu.CPUFreq.10.build.f_cpu=10000000L - -Bee_S3.menu.FlashFreq.80=80MHz -Bee_S3.menu.FlashFreq.80.build.flash_freq=80m -Bee_S3.menu.FlashFreq.40=40MHz -Bee_S3.menu.FlashFreq.40.build.flash_freq=40m - -Bee_S3.menu.UploadSpeed.921600=921600 -Bee_S3.menu.UploadSpeed.921600.upload.speed=921600 -Bee_S3.menu.UploadSpeed.115200=115200 -Bee_S3.menu.UploadSpeed.115200.upload.speed=115200 -Bee_S3.menu.UploadSpeed.256000.windows=256000 -Bee_S3.menu.UploadSpeed.256000.upload.speed=256000 -Bee_S3.menu.UploadSpeed.230400.windows.upload.speed=256000 -Bee_S3.menu.UploadSpeed.230400=230400 -Bee_S3.menu.UploadSpeed.230400.upload.speed=230400 -Bee_S3.menu.UploadSpeed.460800.linux=460800 -Bee_S3.menu.UploadSpeed.460800.macosx=460800 -Bee_S3.menu.UploadSpeed.460800.upload.speed=460800 -Bee_S3.menu.UploadSpeed.512000.windows=512000 -Bee_S3.menu.UploadSpeed.512000.upload.speed=512000 - -Bee_S3.menu.DebugLevel.none=None -Bee_S3.menu.DebugLevel.none.build.code_debug=0 -Bee_S3.menu.DebugLevel.error=Error -Bee_S3.menu.DebugLevel.error.build.code_debug=1 -Bee_S3.menu.DebugLevel.warn=Warn -Bee_S3.menu.DebugLevel.warn.build.code_debug=2 -Bee_S3.menu.DebugLevel.info=Info -Bee_S3.menu.DebugLevel.info.build.code_debug=3 -Bee_S3.menu.DebugLevel.debug=Debug -Bee_S3.menu.DebugLevel.debug.build.code_debug=4 -Bee_S3.menu.DebugLevel.verbose=Verbose -Bee_S3.menu.DebugLevel.verbose.build.code_debug=5 - -Bee_S3.menu.EraseFlash.none=Disabled -Bee_S3.menu.EraseFlash.none.upload.erase_cmd= -Bee_S3.menu.EraseFlash.all=Enabled -Bee_S3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -unphone7.name=unPhone 7 - -unphone7.bootloader.tool=esptool_py -unphone7.bootloader.tool.default=esptool_py - -unphone7.upload.tool=esptool_py -unphone7.upload.tool.default=esptool_py -unphone7.upload.tool.network=esp_ota - -unphone7.upload.maximum_size=1310720 -unphone7.upload.maximum_data_size=327680 -unphone7.upload.flags= -unphone7.upload.extra_flags= - -unphone7.serial.disableDTR=true -unphone7.serial.disableRTS=true - -unphone7.build.tarch=xtensa -unphone7.build.bootloader_addr=0x1000 -unphone7.build.target=esp32 -unphone7.build.mcu=esp32 -unphone7.build.core=esp32 -unphone7.build.variant=feather_esp32 -unphone7.build.board=FEATHER_ESP32 - -unphone7.build.f_cpu=240000000L -unphone7.build.flash_mode=dio -unphone7.build.flash_size=4MB -unphone7.build.boot=dio -unphone7.build.partitions=default -unphone7.build.defines=-DUNPHONE_SPIN=7 - -unphone7.menu.FlashFreq.80=80MHz -unphone7.menu.FlashFreq.80.build.flash_freq=80m -unphone7.menu.FlashFreq.40=40MHz -unphone7.menu.FlashFreq.40.build.flash_freq=40m - -unphone7.menu.UploadSpeed.921600=921600 -unphone7.menu.UploadSpeed.921600.upload.speed=921600 -unphone7.menu.UploadSpeed.115200=115200 -unphone7.menu.UploadSpeed.115200.upload.speed=115200 -unphone7.menu.UploadSpeed.256000.windows=256000 -unphone7.menu.UploadSpeed.256000.upload.speed=256000 -unphone7.menu.UploadSpeed.230400.windows.upload.speed=256000 -unphone7.menu.UploadSpeed.230400=230400 -unphone7.menu.UploadSpeed.230400.upload.speed=230400 -unphone7.menu.UploadSpeed.460800.linux=460800 -unphone7.menu.UploadSpeed.460800.macosx=460800 -unphone7.menu.UploadSpeed.460800.upload.speed=460800 -unphone7.menu.UploadSpeed.512000.windows=512000 -unphone7.menu.UploadSpeed.512000.upload.speed=512000 - -unphone7.menu.DebugLevel.none=None -unphone7.menu.DebugLevel.none.build.code_debug=0 -unphone7.menu.DebugLevel.error=Error -unphone7.menu.DebugLevel.error.build.code_debug=1 -unphone7.menu.DebugLevel.warn=Warn -unphone7.menu.DebugLevel.warn.build.code_debug=2 -unphone7.menu.DebugLevel.info=Info -unphone7.menu.DebugLevel.info.build.code_debug=3 -unphone7.menu.DebugLevel.debug=Debug -unphone7.menu.DebugLevel.debug.build.code_debug=4 -unphone7.menu.DebugLevel.verbose=Verbose -unphone7.menu.DebugLevel.verbose.build.code_debug=5 - -unphone7.menu.PartitionScheme.default=Default -unphone7.menu.PartitionScheme.default.build.partitions=default -unphone7.menu.PartitionScheme.no_ota=No OTA (Large APP) -unphone7.menu.PartitionScheme.no_ota.build.partitions=no_ota -unphone7.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -unphone7.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (Large APPS with OTA) -unphone7.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -unphone7.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -unphone7.menu.EraseFlash.none=Disabled -unphone7.menu.EraseFlash.none.upload.erase_cmd= -unphone7.menu.EraseFlash.all=Enabled -unphone7.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -unphone8.name=unPhone 8 -unphone8.vid.0=0x16D0 -unphone8.pid.0=0x1178 - -unphone8.bootloader.tool=esptool_py -unphone8.bootloader.tool.default=esptool_py - -unphone8.upload.tool=esptool_py -unphone8.upload.tool.default=esptool_py -unphone8.upload.tool.network=esp_ota - -unphone8.upload.maximum_size=8323072 -unphone8.upload.maximum_data_size=2424832 -unphone8.upload.flags= -unphone8.upload.extra_flags= -unphone8.upload.use_1200bps_touch=false -unphone8.upload.wait_for_upload_port=false - -unphone8.serial.disableDTR=false -unphone8.serial.disableRTS=false - -unphone8.build.tarch=xtensa -unphone8.build.bootloader_addr=0x0 -unphone8.build.target=esp32s3 -unphone8.build.mcu=esp32s3 -unphone8.build.core=esp32 -unphone8.build.variant=unphone8 -unphone8.build.board=unphone8 - -unphone8.build.usb_mode=1 -unphone8.build.cdc_on_boot=0 -unphone8.build.msc_on_boot=0 -unphone8.build.dfu_on_boot=0 -unphone8.build.f_cpu=240000000L -unphone8.build.flash_size=8MB -unphone8.build.flash_freq=80m -unphone8.build.flash_mode=dio -unphone8.build.boot=qio -unphone8.build.boot_freq=80m -unphone8.build.partitions=default_8MB -unphone8.build.defines=-DBOARD_HAS_PSRAM -DUNPHONE_SPIN=8 -unphone8.build.loop_core=-DARDUINO_RUNNING_CORE=1 -unphone8.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -unphone8.build.flash_type=qio -unphone8.build.psram_type=qspi -unphone8.build.memory_type={build.flash_type}_{build.psram_type} - -unphone8.menu.USBMode.default=Hardware CDC and JTAG -unphone8.menu.USBMode.default.build.usb_mode=1 -unphone8.menu.USBMode.hwcdc=USB-OTG (TinyUSB) -unphone8.menu.USBMode.hwcdc.build.usb_mode=0 - -unphone8.menu.CDCOnBoot.default=Disabled -unphone8.menu.CDCOnBoot.default.build.cdc_on_boot=0 -unphone8.menu.CDCOnBoot.cdc=Enabled -unphone8.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -unphone8.menu.MSCOnBoot.default=Disabled -unphone8.menu.MSCOnBoot.default.build.msc_on_boot=0 -unphone8.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -unphone8.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -unphone8.menu.DFUOnBoot.default=Disabled -unphone8.menu.DFUOnBoot.default.build.dfu_on_boot=0 -unphone8.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -unphone8.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -unphone8.menu.UploadMode.default=UART0 / Hardware CDC -unphone8.menu.UploadMode.default.upload.use_1200bps_touch=false -unphone8.menu.UploadMode.default.upload.wait_for_upload_port=false -unphone8.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -unphone8.menu.UploadMode.cdc.upload.use_1200bps_touch=true -unphone8.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -unphone8.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -unphone8.menu.PartitionScheme.default.build.partitions=default -unphone8.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -unphone8.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -unphone8.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -unphone8.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -unphone8.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -unphone8.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -unphone8.menu.PartitionScheme.minimal.build.partitions=minimal -unphone8.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -unphone8.menu.PartitionScheme.no_ota.build.partitions=no_ota -unphone8.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -unphone8.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -unphone8.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -unphone8.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -unphone8.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -unphone8.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -unphone8.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -unphone8.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -unphone8.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -unphone8.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -unphone8.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -unphone8.menu.PartitionScheme.huge_app.build.partitions=huge_app -unphone8.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -unphone8.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -unphone8.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -unphone8.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -unphone8.menu.PartitionScheme.rainmaker=RainMaker -unphone8.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -unphone8.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -unphone8.menu.PartitionScheme.max_app_8MB=Maximum APP (7.9MB APP No OTA/No FS) -unphone8.menu.PartitionScheme.max_app_8MB.build.partitions=max_app_8MB - -unphone8.menu.CPUFreq.240=240MHz (WiFi) -unphone8.menu.CPUFreq.240.build.f_cpu=240000000L -unphone8.menu.CPUFreq.160=160MHz (WiFi) -unphone8.menu.CPUFreq.160.build.f_cpu=160000000L -unphone8.menu.CPUFreq.80=80MHz (WiFi) -unphone8.menu.CPUFreq.80.build.f_cpu=80000000L -unphone8.menu.CPUFreq.40=40MHz -unphone8.menu.CPUFreq.40.build.f_cpu=40000000L -unphone8.menu.CPUFreq.20=20MHz -unphone8.menu.CPUFreq.20.build.f_cpu=20000000L -unphone8.menu.CPUFreq.10=10MHz -unphone8.menu.CPUFreq.10.build.f_cpu=10000000L - -unphone8.menu.UploadSpeed.921600=921600 -unphone8.menu.UploadSpeed.921600.upload.speed=921600 -unphone8.menu.UploadSpeed.115200=115200 -unphone8.menu.UploadSpeed.115200.upload.speed=115200 -unphone8.menu.UploadSpeed.256000.windows=256000 -unphone8.menu.UploadSpeed.256000.upload.speed=256000 -unphone8.menu.UploadSpeed.230400.windows.upload.speed=256000 -unphone8.menu.UploadSpeed.230400=230400 -unphone8.menu.UploadSpeed.230400.upload.speed=230400 -unphone8.menu.UploadSpeed.460800.linux=460800 -unphone8.menu.UploadSpeed.460800.macosx=460800 -unphone8.menu.UploadSpeed.460800.upload.speed=460800 -unphone8.menu.UploadSpeed.512000.windows=512000 -unphone8.menu.UploadSpeed.512000.upload.speed=512000 - -unphone8.menu.DebugLevel.none=None -unphone8.menu.DebugLevel.none.build.code_debug=0 -unphone8.menu.DebugLevel.error=Error -unphone8.menu.DebugLevel.error.build.code_debug=1 -unphone8.menu.DebugLevel.warn=Warn -unphone8.menu.DebugLevel.warn.build.code_debug=2 -unphone8.menu.DebugLevel.info=Info -unphone8.menu.DebugLevel.info.build.code_debug=3 -unphone8.menu.DebugLevel.debug=Debug -unphone8.menu.DebugLevel.debug.build.code_debug=4 -unphone8.menu.DebugLevel.verbose=Verbose -unphone8.menu.DebugLevel.verbose.build.code_debug=5 - -############################################################# - -unphone9.name=unPhone 9 -unphone9.vid.0=0x16D0 -unphone9.pid.0=0x1178 - -unphone9.bootloader.tool=esptool_py -unphone9.bootloader.tool.default=esptool_py - -unphone9.upload.tool=esptool_py -unphone9.upload.tool.default=esptool_py -unphone9.upload.tool.network=esp_ota - -unphone9.upload.maximum_size=8323072 -unphone9.upload.maximum_data_size=8716288 -unphone9.upload.flags= -unphone9.upload.extra_flags= -unphone9.upload.use_1200bps_touch=false -unphone9.upload.wait_for_upload_port=false - -unphone9.serial.disableDTR=false -unphone9.serial.disableRTS=false - -unphone9.build.tarch=xtensa -unphone9.build.bootloader_addr=0x0 -unphone9.build.target=esp32s3 -unphone9.build.mcu=esp32s3 -unphone9.build.core=esp32 -unphone9.build.variant=unphone9 -unphone9.build.board=unphone9 - -unphone9.build.usb_mode=1 -unphone9.build.cdc_on_boot=1 -unphone9.build.msc_on_boot=0 -unphone9.build.dfu_on_boot=0 -unphone9.build.f_cpu=240000000L -unphone9.build.flash_size=8MB -unphone9.build.flash_freq=80m -unphone9.build.flash_mode=dio -unphone9.build.boot=qio -unphone9.build.boot_freq=80m -unphone9.build.partitions=default_8MB -unphone9.build.defines=-DBOARD_HAS_PSRAM -DUNPHONE_SPIN=9 -unphone9.build.loop_core=-DARDUINO_RUNNING_CORE=1 -unphone9.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -unphone9.build.flash_type=qio -unphone9.build.psram_type=qspi -unphone9.build.memory_type={build.flash_type}_{build.psram_type} - -unphone9.menu.USBMode.default=Hardware CDC and JTAG -unphone9.menu.USBMode.default.build.usb_mode=1 -unphone9.menu.USBMode.hwcdc=USB-OTG (TinyUSB) -unphone9.menu.USBMode.hwcdc.build.usb_mode=0 - -unphone9.menu.CDCOnBoot.default=Enabled -unphone9.menu.CDCOnBoot.default.build.cdc_on_boot=1 -unphone9.menu.CDCOnBoot.cdc=Disabled -unphone9.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -unphone9.menu.MSCOnBoot.default=Disabled -unphone9.menu.MSCOnBoot.default.build.msc_on_boot=0 -unphone9.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -unphone9.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -unphone9.menu.DFUOnBoot.default=Disabled -unphone9.menu.DFUOnBoot.default.build.dfu_on_boot=0 -unphone9.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -unphone9.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -unphone9.menu.UploadMode.default=UART0 / Hardware CDC -unphone9.menu.UploadMode.default.upload.use_1200bps_touch=false -unphone9.menu.UploadMode.default.upload.wait_for_upload_port=false -unphone9.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -unphone9.menu.UploadMode.cdc.upload.use_1200bps_touch=true -unphone9.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -unphone9.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -unphone9.menu.PartitionScheme.default.build.partitions=default -unphone9.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -unphone9.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -unphone9.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -unphone9.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -unphone9.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -unphone9.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -unphone9.menu.PartitionScheme.minimal.build.partitions=minimal -unphone9.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -unphone9.menu.PartitionScheme.no_ota.build.partitions=no_ota -unphone9.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -unphone9.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -unphone9.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -unphone9.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -unphone9.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -unphone9.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -unphone9.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -unphone9.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -unphone9.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -unphone9.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -unphone9.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -unphone9.menu.PartitionScheme.huge_app.build.partitions=huge_app -unphone9.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -unphone9.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -unphone9.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -unphone9.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -unphone9.menu.PartitionScheme.rainmaker=RainMaker -unphone9.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -unphone9.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 -unphone9.menu.PartitionScheme.max_app_8MB=Maximum APP (7.9MB APP No OTA/No FS) -unphone9.menu.PartitionScheme.max_app_8MB.build.partitions=max_app_8MB - -unphone9.menu.CPUFreq.240=240MHz (WiFi) -unphone9.menu.CPUFreq.240.build.f_cpu=240000000L -unphone9.menu.CPUFreq.160=160MHz (WiFi) -unphone9.menu.CPUFreq.160.build.f_cpu=160000000L -unphone9.menu.CPUFreq.80=80MHz (WiFi) -unphone9.menu.CPUFreq.80.build.f_cpu=80000000L -unphone9.menu.CPUFreq.40=40MHz -unphone9.menu.CPUFreq.40.build.f_cpu=40000000L -unphone9.menu.CPUFreq.20=20MHz -unphone9.menu.CPUFreq.20.build.f_cpu=20000000L -unphone9.menu.CPUFreq.10=10MHz -unphone9.menu.CPUFreq.10.build.f_cpu=10000000L - -unphone9.menu.UploadSpeed.921600=921600 -unphone9.menu.UploadSpeed.921600.upload.speed=921600 -unphone9.menu.UploadSpeed.115200=115200 -unphone9.menu.UploadSpeed.115200.upload.speed=115200 -unphone9.menu.UploadSpeed.256000.windows=256000 -unphone9.menu.UploadSpeed.256000.upload.speed=256000 -unphone9.menu.UploadSpeed.230400.windows.upload.speed=256000 -unphone9.menu.UploadSpeed.230400=230400 -unphone9.menu.UploadSpeed.230400.upload.speed=230400 -unphone9.menu.UploadSpeed.460800.linux=460800 -unphone9.menu.UploadSpeed.460800.macosx=460800 -unphone9.menu.UploadSpeed.460800.upload.speed=460800 -unphone9.menu.UploadSpeed.512000.windows=512000 -unphone9.menu.UploadSpeed.512000.upload.speed=512000 - -unphone9.menu.DebugLevel.none=None -unphone9.menu.DebugLevel.none.build.code_debug=0 -unphone9.menu.DebugLevel.error=Error -unphone9.menu.DebugLevel.error.build.code_debug=1 -unphone9.menu.DebugLevel.warn=Warn -unphone9.menu.DebugLevel.warn.build.code_debug=2 -unphone9.menu.DebugLevel.info=Info -unphone9.menu.DebugLevel.info.build.code_debug=3 -unphone9.menu.DebugLevel.debug=Debug -unphone9.menu.DebugLevel.debug.build.code_debug=4 -unphone9.menu.DebugLevel.verbose=Verbose -unphone9.menu.DebugLevel.verbose.build.code_debug=5 - -unphone9.menu.EraseFlash.none=Disabled -unphone9.menu.EraseFlash.none.upload.erase_cmd= -unphone9.menu.EraseFlash.all=Enabled -unphone9.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################### -# Cytron Maker Feather AIoT S3 - -cytron_maker_feather_aiot_s3.name=Cytron Maker Feather AIoT S3 -cytron_maker_feather_aiot_s3.vid.0=0x303a -cytron_maker_feather_aiot_s3.pid.0=0x80f8 - -cytron_maker_feather_aiot_s3.bootloader.tool=esptool_py -cytron_maker_feather_aiot_s3.bootloader.tool.default=esptool_py - -cytron_maker_feather_aiot_s3.upload.tool=esptool_py -cytron_maker_feather_aiot_s3.upload.tool.default=esptool_py -cytron_maker_feather_aiot_s3.upload.tool.network=esp_ota - -cytron_maker_feather_aiot_s3.upload.maximum_size=1310720 -cytron_maker_feather_aiot_s3.upload.maximum_data_size=327680 -cytron_maker_feather_aiot_s3.upload.flags= -cytron_maker_feather_aiot_s3.upload.extra_flags= -cytron_maker_feather_aiot_s3.upload.use_1200bps_touch=true -cytron_maker_feather_aiot_s3.upload.wait_for_upload_port=true - -cytron_maker_feather_aiot_s3.serial.disableDTR=false -cytron_maker_feather_aiot_s3.serial.disableRTS=false - -cytron_maker_feather_aiot_s3.build.tarch=xtensa -cytron_maker_feather_aiot_s3.build.bootloader_addr=0x0 -cytron_maker_feather_aiot_s3.build.target=esp32s3 -cytron_maker_feather_aiot_s3.build.mcu=esp32s3 -cytron_maker_feather_aiot_s3.build.core=esp32 -cytron_maker_feather_aiot_s3.build.variant=cytron_maker_feather_aiot_s3 -cytron_maker_feather_aiot_s3.build.board=CYTRON_MAKER_FEATHER_AIOT_S3 - -cytron_maker_feather_aiot_s3.build.usb_mode=0 -cytron_maker_feather_aiot_s3.build.cdc_on_boot=1 -cytron_maker_feather_aiot_s3.build.msc_on_boot=0 -cytron_maker_feather_aiot_s3.build.dfu_on_boot=0 -cytron_maker_feather_aiot_s3.build.f_cpu=240000000L -cytron_maker_feather_aiot_s3.build.flash_size=8MB -cytron_maker_feather_aiot_s3.build.flash_freq=80m -cytron_maker_feather_aiot_s3.build.flash_mode=dio -cytron_maker_feather_aiot_s3.build.boot=qio -cytron_maker_feather_aiot_s3.build.partitions=default -cytron_maker_feather_aiot_s3.build.defines= -cytron_maker_feather_aiot_s3.build.loop_core= -cytron_maker_feather_aiot_s3.build.event_core= -cytron_maker_feather_aiot_s3.build.flash_type=qio -cytron_maker_feather_aiot_s3.build.psram_type=opi -cytron_maker_feather_aiot_s3.build.memory_type={build.flash_type}_{build.psram_type} - -cytron_maker_feather_aiot_s3.menu.LoopCore.1=Core 1 -cytron_maker_feather_aiot_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -cytron_maker_feather_aiot_s3.menu.LoopCore.0=Core 0 -cytron_maker_feather_aiot_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -cytron_maker_feather_aiot_s3.menu.EventsCore.1=Core 1 -cytron_maker_feather_aiot_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -cytron_maker_feather_aiot_s3.menu.EventsCore.0=Core 0 -cytron_maker_feather_aiot_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -cytron_maker_feather_aiot_s3.menu.USBMode.default=USB-OTG (TinyUSB) -cytron_maker_feather_aiot_s3.menu.USBMode.default.build.usb_mode=0 -cytron_maker_feather_aiot_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -cytron_maker_feather_aiot_s3.menu.USBMode.hwcdc.build.usb_mode=1 - -cytron_maker_feather_aiot_s3.menu.CDCOnBoot.cdc=Enabled -cytron_maker_feather_aiot_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -cytron_maker_feather_aiot_s3.menu.CDCOnBoot.default=Disabled -cytron_maker_feather_aiot_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -cytron_maker_feather_aiot_s3.menu.MSCOnBoot.default=Disabled -cytron_maker_feather_aiot_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -cytron_maker_feather_aiot_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -cytron_maker_feather_aiot_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -cytron_maker_feather_aiot_s3.menu.DFUOnBoot.default=Disabled -cytron_maker_feather_aiot_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -cytron_maker_feather_aiot_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -cytron_maker_feather_aiot_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -cytron_maker_feather_aiot_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -cytron_maker_feather_aiot_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -cytron_maker_feather_aiot_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -cytron_maker_feather_aiot_s3.menu.UploadMode.default=UART0 / Hardware CDC -cytron_maker_feather_aiot_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -cytron_maker_feather_aiot_s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -cytron_maker_feather_aiot_s3.menu.PSRAM.opi=OPI PSRAM -cytron_maker_feather_aiot_s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -cytron_maker_feather_aiot_s3.menu.PSRAM.opi.build.psram_type=opi -cytron_maker_feather_aiot_s3.menu.PSRAM.enabled=QSPI PSRAM -cytron_maker_feather_aiot_s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -cytron_maker_feather_aiot_s3.menu.PSRAM.enabled.build.psram_type=qspi -cytron_maker_feather_aiot_s3.menu.PSRAM.disabled=Disabled -cytron_maker_feather_aiot_s3.menu.PSRAM.disabled.build.defines= -cytron_maker_feather_aiot_s3.menu.PSRAM.disabled.build.psram_type=qspi - -cytron_maker_feather_aiot_s3.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FFAT) -cytron_maker_feather_aiot_s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -cytron_maker_feather_aiot_s3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-8MB-tinyuf2 -cytron_maker_feather_aiot_s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -cytron_maker_feather_aiot_s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -cytron_maker_feather_aiot_s3.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -cytron_maker_feather_aiot_s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -cytron_maker_feather_aiot_s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -cytron_maker_feather_aiot_s3.menu.CPUFreq.240=240MHz (WiFi) -cytron_maker_feather_aiot_s3.menu.CPUFreq.240.build.f_cpu=240000000L -cytron_maker_feather_aiot_s3.menu.CPUFreq.160=160MHz (WiFi) -cytron_maker_feather_aiot_s3.menu.CPUFreq.160.build.f_cpu=160000000L -cytron_maker_feather_aiot_s3.menu.CPUFreq.80=80MHz (WiFi) -cytron_maker_feather_aiot_s3.menu.CPUFreq.80.build.f_cpu=80000000L -cytron_maker_feather_aiot_s3.menu.CPUFreq.40=40MHz -cytron_maker_feather_aiot_s3.menu.CPUFreq.40.build.f_cpu=40000000L -cytron_maker_feather_aiot_s3.menu.CPUFreq.20=20MHz -cytron_maker_feather_aiot_s3.menu.CPUFreq.20.build.f_cpu=20000000L -cytron_maker_feather_aiot_s3.menu.CPUFreq.10=10MHz -cytron_maker_feather_aiot_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -cytron_maker_feather_aiot_s3.menu.FlashMode.qio=QIO 80MHz -cytron_maker_feather_aiot_s3.menu.FlashMode.qio.build.flash_mode=dio -cytron_maker_feather_aiot_s3.menu.FlashMode.qio.build.boot=qio -cytron_maker_feather_aiot_s3.menu.FlashMode.qio.build.boot_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.qio.build.flash_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.qio120=QIO 120MHz -cytron_maker_feather_aiot_s3.menu.FlashMode.qio120.build.flash_mode=dio -cytron_maker_feather_aiot_s3.menu.FlashMode.qio120.build.boot=qio -cytron_maker_feather_aiot_s3.menu.FlashMode.qio120.build.boot_freq=120m -cytron_maker_feather_aiot_s3.menu.FlashMode.qio120.build.flash_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.dio=DIO 80MHz -cytron_maker_feather_aiot_s3.menu.FlashMode.dio.build.flash_mode=dio -cytron_maker_feather_aiot_s3.menu.FlashMode.dio.build.boot=dio -cytron_maker_feather_aiot_s3.menu.FlashMode.dio.build.boot_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.dio.build.flash_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.opi=OPI 80MHz -cytron_maker_feather_aiot_s3.menu.FlashMode.opi.build.flash_mode=dout -cytron_maker_feather_aiot_s3.menu.FlashMode.opi.build.boot=opi -cytron_maker_feather_aiot_s3.menu.FlashMode.opi.build.boot_freq=80m -cytron_maker_feather_aiot_s3.menu.FlashMode.opi.build.flash_freq=80m - -cytron_maker_feather_aiot_s3.menu.FlashSize.8M=8MB (64Mb) -cytron_maker_feather_aiot_s3.menu.FlashSize.8M.build.flash_size=8MB - -cytron_maker_feather_aiot_s3.menu.UploadSpeed.921600=921600 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.921600.upload.speed=921600 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.115200=115200 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.115200.upload.speed=115200 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.256000.windows=256000 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.256000.upload.speed=256000 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.230400=230400 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.230400.upload.speed=230400 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.460800.linux=460800 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.460800.macosx=460800 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.460800.upload.speed=460800 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.512000.windows=512000 -cytron_maker_feather_aiot_s3.menu.UploadSpeed.512000.upload.speed=512000 - -cytron_maker_feather_aiot_s3.menu.DebugLevel.none=None -cytron_maker_feather_aiot_s3.menu.DebugLevel.none.build.code_debug=0 -cytron_maker_feather_aiot_s3.menu.DebugLevel.error=Error -cytron_maker_feather_aiot_s3.menu.DebugLevel.error.build.code_debug=1 -cytron_maker_feather_aiot_s3.menu.DebugLevel.warn=Warn -cytron_maker_feather_aiot_s3.menu.DebugLevel.warn.build.code_debug=2 -cytron_maker_feather_aiot_s3.menu.DebugLevel.info=Info -cytron_maker_feather_aiot_s3.menu.DebugLevel.info.build.code_debug=3 -cytron_maker_feather_aiot_s3.menu.DebugLevel.debug=Debug -cytron_maker_feather_aiot_s3.menu.DebugLevel.debug.build.code_debug=4 -cytron_maker_feather_aiot_s3.menu.DebugLevel.verbose=Verbose -cytron_maker_feather_aiot_s3.menu.DebugLevel.verbose.build.code_debug=5 - -cytron_maker_feather_aiot_s3.menu.EraseFlash.none=Disabled -cytron_maker_feather_aiot_s3.menu.EraseFlash.none.upload.erase_cmd= -cytron_maker_feather_aiot_s3.menu.EraseFlash.all=Enabled -cytron_maker_feather_aiot_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# RedPill(+) ESP32-S3 - -redpill_esp32s3.name=RedPill(+) ESP32-S3 -redpill_esp32s3.vid.0=0x303a -redpill_esp32s3.pid.0=0x1001 - -redpill_esp32s3.bootloader.tool=esptool_py -redpill_esp32s3.bootloader.tool.default=esptool_py - -redpill_esp32s3.upload.tool=esptool_py -redpill_esp32s3.upload.tool.default=esptool_py -redpill_esp32s3.upload.tool.network=esp_ota - -redpill_esp32s3.upload.maximum_size=1310720 -redpill_esp32s3.upload.maximum_data_size=327680 -redpill_esp32s3.upload.flags= -redpill_esp32s3.upload.extra_flags= -redpill_esp32s3.upload.use_1200bps_touch=true -redpill_esp32s3.upload.wait_for_upload_port=true - -redpill_esp32s3.serial.disableDTR=false -redpill_esp32s3.serial.disableRTS=false - -redpill_esp32s3.build.tarch=xtensa -redpill_esp32s3.build.bootloader_addr=0x0 -redpill_esp32s3.build.target=esp32s3 -redpill_esp32s3.build.mcu=esp32s3 -redpill_esp32s3.build.core=esp32 -redpill_esp32s3.build.variant=redpill_esp32s3 -redpill_esp32s3.build.board=REDPILL_ESP32S3 - -redpill_esp32s3.build.usb_mode=0 -redpill_esp32s3.build.cdc_on_boot=1 -redpill_esp32s3.build.msc_on_boot=0 -redpill_esp32s3.build.dfu_on_boot=0 -redpill_esp32s3.build.f_cpu=240000000L -redpill_esp32s3.build.flash_size=8MB -redpill_esp32s3.build.flash_freq=80m -redpill_esp32s3.build.flash_mode=dio -redpill_esp32s3.build.boot=qio -redpill_esp32s3.build.partitions=default -redpill_esp32s3.build.defines= -redpill_esp32s3.build.loop_core= -redpill_esp32s3.build.event_core= -redpill_esp32s3.build.flash_type=qio -redpill_esp32s3.build.psram_type=qspi -redpill_esp32s3.build.memory_type={build.flash_type}_{build.psram_type} - -redpill_esp32s3.menu.LoopCore.1=Core 1 -redpill_esp32s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -redpill_esp32s3.menu.LoopCore.0=Core 0 -redpill_esp32s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -redpill_esp32s3.menu.EventsCore.1=Core 1 -redpill_esp32s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -redpill_esp32s3.menu.EventsCore.0=Core 0 -redpill_esp32s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -redpill_esp32s3.menu.USBMode.default=USB-OTG (TinyUSB) -redpill_esp32s3.menu.USBMode.default.build.usb_mode=0 -redpill_esp32s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -redpill_esp32s3.menu.USBMode.hwcdc.build.usb_mode=1 - -redpill_esp32s3.menu.CDCOnBoot.cdc=Enabled -redpill_esp32s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -redpill_esp32s3.menu.CDCOnBoot.default=Disabled -redpill_esp32s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -redpill_esp32s3.menu.MSCOnBoot.default=Disabled -redpill_esp32s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -redpill_esp32s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -redpill_esp32s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -redpill_esp32s3.menu.DFUOnBoot.default=Disabled -redpill_esp32s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -redpill_esp32s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -redpill_esp32s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -redpill_esp32s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -redpill_esp32s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -redpill_esp32s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true -redpill_esp32s3.menu.UploadMode.default=UART0 / Hardware CDC -redpill_esp32s3.menu.UploadMode.default.upload.use_1200bps_touch=false -redpill_esp32s3.menu.UploadMode.default.upload.wait_for_upload_port=false - -redpill_esp32s3.menu.PSRAM.enabled=QSPI PSRAM -redpill_esp32s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -redpill_esp32s3.menu.PSRAM.enabled.build.psram_type=qspi -redpill_esp32s3.menu.PSRAM.disabled=Disabled -redpill_esp32s3.menu.PSRAM.disabled.build.defines= -redpill_esp32s3.menu.PSRAM.disabled.build.psram_type=qspi -redpill_esp32s3.menu.PSRAM.opi=OPI PSRAM -redpill_esp32s3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -redpill_esp32s3.menu.PSRAM.opi.build.psram_type=opi - -redpill_esp32s3.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FFAT) -redpill_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -redpill_esp32s3.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-8MB-tinyuf2 -redpill_esp32s3.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152 -redpill_esp32s3.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -redpill_esp32s3.menu.PartitionScheme.default_8MB=Default (3MB APP/1.5MB SPIFFS) -redpill_esp32s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -redpill_esp32s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 - -redpill_esp32s3.menu.CPUFreq.240=240MHz (WiFi) -redpill_esp32s3.menu.CPUFreq.240.build.f_cpu=240000000L -redpill_esp32s3.menu.CPUFreq.160=160MHz (WiFi) -redpill_esp32s3.menu.CPUFreq.160.build.f_cpu=160000000L -redpill_esp32s3.menu.CPUFreq.80=80MHz (WiFi) -redpill_esp32s3.menu.CPUFreq.80.build.f_cpu=80000000L -redpill_esp32s3.menu.CPUFreq.40=40MHz -redpill_esp32s3.menu.CPUFreq.40.build.f_cpu=40000000L -redpill_esp32s3.menu.CPUFreq.20=20MHz -redpill_esp32s3.menu.CPUFreq.20.build.f_cpu=20000000L -redpill_esp32s3.menu.CPUFreq.10=10MHz -redpill_esp32s3.menu.CPUFreq.10.build.f_cpu=10000000L - -redpill_esp32s3.menu.FlashMode.qio=QIO 80MHz -redpill_esp32s3.menu.FlashMode.qio.build.flash_mode=dio -redpill_esp32s3.menu.FlashMode.qio.build.boot=qio -redpill_esp32s3.menu.FlashMode.qio.build.boot_freq=80m -redpill_esp32s3.menu.FlashMode.qio.build.flash_freq=80m -redpill_esp32s3.menu.FlashMode.qio120=QIO 120MHz -redpill_esp32s3.menu.FlashMode.qio120.build.flash_mode=dio -redpill_esp32s3.menu.FlashMode.qio120.build.boot=qio -redpill_esp32s3.menu.FlashMode.qio120.build.boot_freq=120m -redpill_esp32s3.menu.FlashMode.qio120.build.flash_freq=80m -redpill_esp32s3.menu.FlashMode.dio=DIO 80MHz -redpill_esp32s3.menu.FlashMode.dio.build.flash_mode=dio -redpill_esp32s3.menu.FlashMode.dio.build.boot=dio -redpill_esp32s3.menu.FlashMode.dio.build.boot_freq=80m -redpill_esp32s3.menu.FlashMode.dio.build.flash_freq=80m -redpill_esp32s3.menu.FlashMode.opi=OPI 80MHz -redpill_esp32s3.menu.FlashMode.opi.build.flash_mode=dout -redpill_esp32s3.menu.FlashMode.opi.build.boot=opi -redpill_esp32s3.menu.FlashMode.opi.build.boot_freq=80m -redpill_esp32s3.menu.FlashMode.opi.build.flash_freq=80m - -redpill_esp32s3.menu.FlashSize.8M=8MB (64Mb) -redpill_esp32s3.menu.FlashSize.8M.build.flash_size=8MB - -redpill_esp32s3.menu.UploadSpeed.921600=921600 -redpill_esp32s3.menu.UploadSpeed.921600.upload.speed=921600 -redpill_esp32s3.menu.UploadSpeed.115200=115200 -redpill_esp32s3.menu.UploadSpeed.115200.upload.speed=115200 -redpill_esp32s3.menu.UploadSpeed.256000.windows=256000 -redpill_esp32s3.menu.UploadSpeed.256000.upload.speed=256000 -redpill_esp32s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -redpill_esp32s3.menu.UploadSpeed.230400=230400 -redpill_esp32s3.menu.UploadSpeed.230400.upload.speed=230400 -redpill_esp32s3.menu.UploadSpeed.460800.linux=460800 -redpill_esp32s3.menu.UploadSpeed.460800.macosx=460800 -redpill_esp32s3.menu.UploadSpeed.460800.upload.speed=460800 -redpill_esp32s3.menu.UploadSpeed.512000.windows=512000 -redpill_esp32s3.menu.UploadSpeed.512000.upload.speed=512000 - -redpill_esp32s3.menu.DebugLevel.none=None -redpill_esp32s3.menu.DebugLevel.none.build.code_debug=0 -redpill_esp32s3.menu.DebugLevel.error=Error -redpill_esp32s3.menu.DebugLevel.error.build.code_debug=1 -redpill_esp32s3.menu.DebugLevel.warn=Warn -redpill_esp32s3.menu.DebugLevel.warn.build.code_debug=2 -redpill_esp32s3.menu.DebugLevel.info=Info -redpill_esp32s3.menu.DebugLevel.info.build.code_debug=3 -redpill_esp32s3.menu.DebugLevel.debug=Debug -redpill_esp32s3.menu.DebugLevel.debug.build.code_debug=4 -redpill_esp32s3.menu.DebugLevel.verbose=Verbose -redpill_esp32s3.menu.DebugLevel.verbose.build.code_debug=5 - -redpill_esp32s3.menu.EraseFlash.none=Disabled -redpill_esp32s3.menu.EraseFlash.none.upload.erase_cmd= -redpill_esp32s3.menu.EraseFlash.all=Enabled -redpill_esp32s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -esp32c3m1IKit.name=ESP-C3-M1-I-Kit - -esp32c3m1IKit.bootloader.tool=esptool_py -esp32c3m1IKit.bootloader.tool.default=esptool_py - -esp32c3m1IKit.upload.tool=esptool_py -esp32c3m1IKit.upload.tool.default=esptool_py -esp32c3m1IKit.upload.tool.network=esp_ota - -esp32c3m1IKit.upload.maximum_size=1310720 -esp32c3m1IKit.upload.maximum_data_size=327680 -esp32c3m1IKit.upload.flags= -esp32c3m1IKit.upload.extra_flags= -esp32c3m1IKit.upload.use_1200bps_touch=false -esp32c3m1IKit.upload.wait_for_upload_port=false - -esp32c3m1IKit.serial.disableDTR=false -esp32c3m1IKit.serial.disableRTS=false - -esp32c3m1IKit.build.tarch=riscv32 -esp32c3m1IKit.build.target=esp -esp32c3m1IKit.build.mcu=esp32c3 -esp32c3m1IKit.build.core=esp32 -esp32c3m1IKit.build.variant=esp_c3_m1_i_kit -esp32c3m1IKit.build.board=ESP32C3_M1_I_KIT -esp32c3m1IKit.build.bootloader_addr=0x0 - -esp32c3m1IKit.build.cdc_on_boot=0 -esp32c3m1IKit.build.f_cpu=160000000L -esp32c3m1IKit.build.flash_size=4MB -esp32c3m1IKit.build.flash_freq=80m -esp32c3m1IKit.build.flash_mode=qio -esp32c3m1IKit.build.boot=qio -esp32c3m1IKit.build.partitions=default -esp32c3m1IKit.build.defines= - -esp32c3m1IKit.menu.CDCOnBoot.default=Disabled -esp32c3m1IKit.menu.CDCOnBoot.default.build.cdc_on_boot=0 -esp32c3m1IKit.menu.CDCOnBoot.cdc=Enabled -esp32c3m1IKit.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -esp32c3m1IKit.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.default.build.partitions=default -esp32c3m1IKit.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -esp32c3m1IKit.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -esp32c3m1IKit.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.minimal.build.partitions=minimal -esp32c3m1IKit.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.no_ota.build.partitions=no_ota -esp32c3m1IKit.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -esp32c3m1IKit.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -esp32c3m1IKit.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -esp32c3m1IKit.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -esp32c3m1IKit.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -esp32c3m1IKit.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -esp32c3m1IKit.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -esp32c3m1IKit.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -esp32c3m1IKit.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -esp32c3m1IKit.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.huge_app.build.partitions=huge_app -esp32c3m1IKit.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -esp32c3m1IKit.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -esp32c3m1IKit.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -esp32c3m1IKit.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -esp32c3m1IKit.menu.PartitionScheme.rainmaker=RainMaker -esp32c3m1IKit.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -esp32c3m1IKit.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -esp32c3m1IKit.menu.CPUFreq.160=160MHz (WiFi) -esp32c3m1IKit.menu.CPUFreq.160.build.f_cpu=160000000L -esp32c3m1IKit.menu.CPUFreq.80=80MHz (WiFi) -esp32c3m1IKit.menu.CPUFreq.80.build.f_cpu=80000000L -esp32c3m1IKit.menu.CPUFreq.40=40MHz -esp32c3m1IKit.menu.CPUFreq.40.build.f_cpu=40000000L -esp32c3m1IKit.menu.CPUFreq.20=20MHz -esp32c3m1IKit.menu.CPUFreq.20.build.f_cpu=20000000L -esp32c3m1IKit.menu.CPUFreq.10=10MHz -esp32c3m1IKit.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32c3m1IKit.menu.UploadSpeed.921600=921600 -esp32c3m1IKit.menu.UploadSpeed.921600.upload.speed=921600 -esp32c3m1IKit.menu.UploadSpeed.115200=115200 -esp32c3m1IKit.menu.UploadSpeed.115200.upload.speed=115200 -esp32c3m1IKit.menu.UploadSpeed.256000.windows=256000 -esp32c3m1IKit.menu.UploadSpeed.256000.upload.speed=256000 -esp32c3m1IKit.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32c3m1IKit.menu.UploadSpeed.230400=230400 -esp32c3m1IKit.menu.UploadSpeed.230400.upload.speed=230400 -esp32c3m1IKit.menu.UploadSpeed.460800.linux=460800 -esp32c3m1IKit.menu.UploadSpeed.460800.macosx=460800 -esp32c3m1IKit.menu.UploadSpeed.460800.upload.speed=460800 -esp32c3m1IKit.menu.UploadSpeed.512000.windows=512000 -esp32c3m1IKit.menu.UploadSpeed.512000.upload.speed=512000 - -esp32c3m1IKit.menu.DebugLevel.none=None -esp32c3m1IKit.menu.DebugLevel.none.build.code_debug=0 -esp32c3m1IKit.menu.DebugLevel.error=Error -esp32c3m1IKit.menu.DebugLevel.error.build.code_debug=1 -esp32c3m1IKit.menu.DebugLevel.warn=Warn -esp32c3m1IKit.menu.DebugLevel.warn.build.code_debug=2 -esp32c3m1IKit.menu.DebugLevel.info=Info -esp32c3m1IKit.menu.DebugLevel.info.build.code_debug=3 -esp32c3m1IKit.menu.DebugLevel.debug=Debug -esp32c3m1IKit.menu.DebugLevel.debug.build.code_debug=4 -esp32c3m1IKit.menu.DebugLevel.verbose=Verbose -esp32c3m1IKit.menu.DebugLevel.verbose.build.code_debug=5 - -esp32c3m1IKit.menu.EraseFlash.none=Disabled -esp32c3m1IKit.menu.EraseFlash.none.upload.erase_cmd= -esp32c3m1IKit.menu.EraseFlash.all=Enabled -esp32c3m1IKit.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -roboheart_hercules.name=RoboHeart Hercules - -roboheart_hercules.upload.tool=esptool_py -roboheart_hercules.upload.tool.default=esptool_py -roboheart_hercules.upload.maximum_size=1310720 -roboheart_hercules.upload.maximum_data_size=327680 -roboheart_hercules.upload.wait_for_upload_port=true -roboheart_hercules.upload.flags= -roboheart_hercules.upload.extra_flags= - -roboheart_hercules.serial.disableDTR=true -roboheart_hercules.serial.disableRTS=true - -roboheart_hercules.build.tarch=xtensa -roboheart_hercules.build.bootloader_addr=0x1000 -roboheart_hercules.build.target=esp32 -roboheart_hercules.build.mcu=esp32 -roboheart_hercules.build.core=esp32 -roboheart_hercules.build.variant=roboheart_hercules -roboheart_hercules.build.board=roboheart_hercules - -roboheart_hercules.build.f_cpu=240000000L -roboheart_hercules.build.flash_size=4MB -roboheart_hercules.build.flash_freq=40m -roboheart_hercules.build.flash_mode=dio -roboheart_hercules.build.boot=dio -roboheart_hercules.build.partitions=default -roboheart_hercules.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -roboheart_hercules.build.extra_libs= - -roboheart_hercules.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -roboheart_hercules.menu.PartitionScheme.default.build.partitions=default -roboheart_hercules.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -roboheart_hercules.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -roboheart_hercules.menu.PartitionScheme.default_8MB=8M Flash (3MB APP/1.5MB FAT) -roboheart_hercules.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -roboheart_hercules.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -roboheart_hercules.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -roboheart_hercules.menu.PartitionScheme.minimal.build.partitions=minimal -roboheart_hercules.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -roboheart_hercules.menu.PartitionScheme.no_ota.build.partitions=no_ota -roboheart_hercules.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -roboheart_hercules.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -roboheart_hercules.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -roboheart_hercules.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -roboheart_hercules.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -roboheart_hercules.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -roboheart_hercules.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -roboheart_hercules.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -roboheart_hercules.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -roboheart_hercules.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -roboheart_hercules.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -roboheart_hercules.menu.PartitionScheme.huge_app.build.partitions=huge_app -roboheart_hercules.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -roboheart_hercules.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -roboheart_hercules.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -roboheart_hercules.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -roboheart_hercules.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FAT) -roboheart_hercules.menu.PartitionScheme.fatflash.build.partitions=ffat -roboheart_hercules.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -roboheart_hercules.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9MB FATFS) -roboheart_hercules.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -roboheart_hercules.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -roboheart_hercules.menu.PartitionScheme.rainmaker=RainMaker -roboheart_hercules.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -roboheart_hercules.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -roboheart_hercules.menu.CPUFreq.240=240MHz (WiFi/BT) -roboheart_hercules.menu.CPUFreq.240.build.f_cpu=240000000L -roboheart_hercules.menu.CPUFreq.160=160MHz (WiFi/BT) -roboheart_hercules.menu.CPUFreq.160.build.f_cpu=160000000L -roboheart_hercules.menu.CPUFreq.80=80MHz (WiFi/BT) -roboheart_hercules.menu.CPUFreq.80.build.f_cpu=80000000L -roboheart_hercules.menu.CPUFreq.40=40MHz -roboheart_hercules.menu.CPUFreq.40.build.f_cpu=40000000L -roboheart_hercules.menu.CPUFreq.20=20MHz -roboheart_hercules.menu.CPUFreq.20.build.f_cpu=20000000L -roboheart_hercules.menu.CPUFreq.10=10MHz -roboheart_hercules.menu.CPUFreq.10.build.f_cpu=10000000L - -roboheart_hercules.menu.FlashMode.qio=QIO -roboheart_hercules.menu.FlashMode.qio.build.flash_mode=dio -roboheart_hercules.menu.FlashMode.qio.build.boot=qio -roboheart_hercules.menu.FlashMode.dio=DIO -roboheart_hercules.menu.FlashMode.dio.build.flash_mode=dio -roboheart_hercules.menu.FlashMode.dio.build.boot=dio - -roboheart_hercules.menu.FlashFreq.80=80MHz -roboheart_hercules.menu.FlashFreq.80.build.flash_freq=80m -roboheart_hercules.menu.FlashFreq.40=40MHz -roboheart_hercules.menu.FlashFreq.40.build.flash_freq=40m - -roboheart_hercules.menu.UploadSpeed.921600=921600 -roboheart_hercules.menu.UploadSpeed.921600.upload.speed=921600 -roboheart_hercules.menu.UploadSpeed.115200=115200 -roboheart_hercules.menu.UploadSpeed.115200.upload.speed=115200 -roboheart_hercules.menu.UploadSpeed.256000.windows=256000 -roboheart_hercules.menu.UploadSpeed.256000.upload.speed=256000 -roboheart_hercules.menu.UploadSpeed.230400.windows.upload.speed=256000 -roboheart_hercules.menu.UploadSpeed.230400=230400 -roboheart_hercules.menu.UploadSpeed.230400.upload.speed=230400 -roboheart_hercules.menu.UploadSpeed.460800.linux=460800 -roboheart_hercules.menu.UploadSpeed.460800.macosx=460800 -roboheart_hercules.menu.UploadSpeed.460800.upload.speed=460800 -roboheart_hercules.menu.UploadSpeed.512000.windows=512000 -roboheart_hercules.menu.UploadSpeed.512000.upload.speed=512000 - -roboheart_hercules.menu.DebugLevel.none=None -roboheart_hercules.menu.DebugLevel.none.build.code_debug=0 -roboheart_hercules.menu.DebugLevel.error=Error -roboheart_hercules.menu.DebugLevel.error.build.code_debug=1 -roboheart_hercules.menu.DebugLevel.warn=Warn -roboheart_hercules.menu.DebugLevel.warn.build.code_debug=2 -roboheart_hercules.menu.DebugLevel.info=Info -roboheart_hercules.menu.DebugLevel.info.build.code_debug=3 -roboheart_hercules.menu.DebugLevel.debug=Debug -roboheart_hercules.menu.DebugLevel.debug.build.code_debug=4 -roboheart_hercules.menu.DebugLevel.verbose=Verbose -roboheart_hercules.menu.DebugLevel.verbose.build.code_debug=5 - -roboheart_hercules.menu.EraseFlash.none=Disabled -roboheart_hercules.menu.EraseFlash.none.upload.erase_cmd= -roboheart_hercules.menu.EraseFlash.all=Enabled -roboheart_hercules.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -VALTRACK_V4_VTS_ESP32_C3.name=VALTRACK_V4_VTS_ESP32_C3 -VALTRACK_V4_VTS_ESP32_C3.vid.0=0x303a -VALTRACK_V4_VTS_ESP32_C3.pid.0=0x1001 - -VALTRACK_V4_VTS_ESP32_C3.bootloader.tool=esptool_py -VALTRACK_V4_VTS_ESP32_C3.bootloader.tool.default=esptool_py - -VALTRACK_V4_VTS_ESP32_C3.upload.tool=esptool_py -VALTRACK_V4_VTS_ESP32_C3.upload.tool.default=esptool_py -VALTRACK_V4_VTS_ESP32_C3.upload.tool.network=esp_ota - -VALTRACK_V4_VTS_ESP32_C3.upload.maximum_size=1310720 -VALTRACK_V4_VTS_ESP32_C3.upload.maximum_data_size=327680 -VALTRACK_V4_VTS_ESP32_C3.upload.flags= -VALTRACK_V4_VTS_ESP32_C3.upload.extra_flags= -VALTRACK_V4_VTS_ESP32_C3.upload.use_1200bps_touch=false -VALTRACK_V4_VTS_ESP32_C3.upload.wait_for_upload_port=false - -VALTRACK_V4_VTS_ESP32_C3.serial.disableDTR=false -VALTRACK_V4_VTS_ESP32_C3.serial.disableRTS=false - -VALTRACK_V4_VTS_ESP32_C3.build.tarch=riscv32 -VALTRACK_V4_VTS_ESP32_C3.build.target=esp -VALTRACK_V4_VTS_ESP32_C3.build.mcu=esp32c3 -VALTRACK_V4_VTS_ESP32_C3.build.core=esp32 -VALTRACK_V4_VTS_ESP32_C3.build.variant=VALTRACK_V4_VTS_ESP32_C3 -VALTRACK_V4_VTS_ESP32_C3.build.board=VALTRACK_V4_VTS_ESP32_C3 -VALTRACK_V4_VTS_ESP32_C3.build.bootloader_addr=0x0 - -VALTRACK_V4_VTS_ESP32_C3.build.cdc_on_boot=1 -VALTRACK_V4_VTS_ESP32_C3.build.f_cpu=160000000L -VALTRACK_V4_VTS_ESP32_C3.build.flash_size=4MB -VALTRACK_V4_VTS_ESP32_C3.build.flash_freq=80m -VALTRACK_V4_VTS_ESP32_C3.build.flash_mode=qio -VALTRACK_V4_VTS_ESP32_C3.build.boot=qio -VALTRACK_V4_VTS_ESP32_C3.build.partitions=default -VALTRACK_V4_VTS_ESP32_C3.build.defines= - -VALTRACK_V4_VTS_ESP32_C3.menu.CDCOnBoot.default=Enabled -VALTRACK_V4_VTS_ESP32_C3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -VALTRACK_V4_VTS_ESP32_C3.menu.CDCOnBoot.cdc=Disabled -VALTRACK_V4_VTS_ESP32_C3.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.default.build.partitions=default -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.minimal.build.partitions=minimal -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.no_ota.build.partitions=no_ota -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.huge_app.build.partitions=huge_app -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.fatflash.build.partitions=ffat -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.rainmaker=RainMaker -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -VALTRACK_V4_VTS_ESP32_C3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.160=160MHz (WiFi) -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.160.build.f_cpu=160000000L -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.80=80MHz (WiFi) -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.80.build.f_cpu=80000000L -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.40=40MHz -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.40.build.f_cpu=40000000L -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.20=20MHz -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.20.build.f_cpu=20000000L -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.10=10MHz -VALTRACK_V4_VTS_ESP32_C3.menu.CPUFreq.10.build.f_cpu=10000000L - -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.qio=QIO -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.qio.build.flash_mode=dio -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.qio.build.boot=qio -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.dio=DIO -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.dio.build.flash_mode=dio -VALTRACK_V4_VTS_ESP32_C3.menu.FlashMode.dio.build.boot=dio - -VALTRACK_V4_VTS_ESP32_C3.menu.FlashFreq.80=80MHz -VALTRACK_V4_VTS_ESP32_C3.menu.FlashFreq.80.build.flash_freq=80m -VALTRACK_V4_VTS_ESP32_C3.menu.FlashFreq.40=40MHz -VALTRACK_V4_VTS_ESP32_C3.menu.FlashFreq.40.build.flash_freq=40m - -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.4M=4MB (32Mb) -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.4M.build.flash_size=4MB -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.8M=8MB (64Mb) -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.8M.build.flash_size=8MB -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.8M.build.partitions=default_8MB -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.2M=2MB (16Mb) -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.2M.build.flash_size=2MB -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.2M.build.partitions=minimal -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.16M=16MB (128Mb) -VALTRACK_V4_VTS_ESP32_C3.menu.FlashSize.16M.build.flash_size=16MB - -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.921600=921600 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.921600.upload.speed=921600 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.115200=115200 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.115200.upload.speed=115200 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.256000.windows=256000 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.256000.upload.speed=256000 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.230400.windows.upload.speed=256000 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.230400=230400 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.230400.upload.speed=230400 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.460800.linux=460800 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.460800.macosx=460800 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.460800.upload.speed=460800 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.512000.windows=512000 -VALTRACK_V4_VTS_ESP32_C3.menu.UploadSpeed.512000.upload.speed=512000 - -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.none=None -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.none.build.code_debug=0 -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.error=Error -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.error.build.code_debug=1 -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.warn=Warn -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.warn.build.code_debug=2 -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.info=Info -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.info.build.code_debug=3 -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.debug=Debug -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.debug.build.code_debug=4 -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.verbose=Verbose -VALTRACK_V4_VTS_ESP32_C3.menu.DebugLevel.verbose.build.code_debug=5 - -VALTRACK_V4_VTS_ESP32_C3.menu.EraseFlash.none=Disabled -VALTRACK_V4_VTS_ESP32_C3.menu.EraseFlash.none.upload.erase_cmd= -VALTRACK_V4_VTS_ESP32_C3.menu.EraseFlash.all=Enabled -VALTRACK_V4_VTS_ESP32_C3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -VALTRACK_V4_MFW_ESP32_C3.name=VALTRACK_V4_MFW_ESP32_C3 -VALTRACK_V4_MFW_ESP32_C3.vid.0=0x303a -VALTRACK_V4_MFW_ESP32_C3.pid.0=0x1001 - -VALTRACK_V4_MFW_ESP32_C3.bootloader.tool=esptool_py -VALTRACK_V4_MFW_ESP32_C3.bootloader.tool.default=esptool_py - -VALTRACK_V4_MFW_ESP32_C3.upload.tool=esptool_py -VALTRACK_V4_MFW_ESP32_C3.upload.tool.default=esptool_py -VALTRACK_V4_MFW_ESP32_C3.upload.tool.network=esp_ota - -VALTRACK_V4_MFW_ESP32_C3.upload.maximum_size=1310720 -VALTRACK_V4_MFW_ESP32_C3.upload.maximum_data_size=327680 -VALTRACK_V4_MFW_ESP32_C3.upload.flags= -VALTRACK_V4_MFW_ESP32_C3.upload.extra_flags= -VALTRACK_V4_MFW_ESP32_C3.upload.use_1200bps_touch=false -VALTRACK_V4_MFW_ESP32_C3.upload.wait_for_upload_port=false - -VALTRACK_V4_MFW_ESP32_C3.serial.disableDTR=false -VALTRACK_V4_MFW_ESP32_C3.serial.disableRTS=false - -VALTRACK_V4_MFW_ESP32_C3.build.tarch=riscv32 -VALTRACK_V4_MFW_ESP32_C3.build.target=esp -VALTRACK_V4_MFW_ESP32_C3.build.mcu=esp32c3 -VALTRACK_V4_MFW_ESP32_C3.build.core=esp32 -VALTRACK_V4_MFW_ESP32_C3.build.variant=VALTRACK_V4_MFW_ESP32_C3 -VALTRACK_V4_MFW_ESP32_C3.build.board=VALTRACK_V4_MFW_ESP32_C3 -VALTRACK_V4_MFW_ESP32_C3.build.bootloader_addr=0x0 - -VALTRACK_V4_MFW_ESP32_C3.build.cdc_on_boot=1 -VALTRACK_V4_MFW_ESP32_C3.build.f_cpu=160000000L -VALTRACK_V4_MFW_ESP32_C3.build.flash_size=4MB -VALTRACK_V4_MFW_ESP32_C3.build.flash_freq=80m -VALTRACK_V4_MFW_ESP32_C3.build.flash_mode=qio -VALTRACK_V4_MFW_ESP32_C3.build.boot=qio -VALTRACK_V4_MFW_ESP32_C3.build.partitions=default -VALTRACK_V4_MFW_ESP32_C3.build.defines= - -VALTRACK_V4_MFW_ESP32_C3.menu.CDCOnBoot.default=Enabled -VALTRACK_V4_MFW_ESP32_C3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -VALTRACK_V4_MFW_ESP32_C3.menu.CDCOnBoot.cdc=Disabled -VALTRACK_V4_MFW_ESP32_C3.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.default.build.partitions=default -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.minimal.build.partitions=minimal -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.no_ota.build.partitions=no_ota -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.huge_app.build.partitions=huge_app -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.fatflash.build.partitions=ffat -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.rainmaker=RainMaker -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -VALTRACK_V4_MFW_ESP32_C3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.160=160MHz (WiFi) -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.160.build.f_cpu=160000000L -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.80=80MHz (WiFi) -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.80.build.f_cpu=80000000L -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.40=40MHz -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.40.build.f_cpu=40000000L -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.20=20MHz -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.20.build.f_cpu=20000000L -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.10=10MHz -VALTRACK_V4_MFW_ESP32_C3.menu.CPUFreq.10.build.f_cpu=10000000L - -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.qio=QIO -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.qio.build.flash_mode=dio -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.qio.build.boot=qio -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.dio=DIO -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.dio.build.flash_mode=dio -VALTRACK_V4_MFW_ESP32_C3.menu.FlashMode.dio.build.boot=dio - -VALTRACK_V4_MFW_ESP32_C3.menu.FlashFreq.80=80MHz -VALTRACK_V4_MFW_ESP32_C3.menu.FlashFreq.80.build.flash_freq=80m -VALTRACK_V4_MFW_ESP32_C3.menu.FlashFreq.40=40MHz -VALTRACK_V4_MFW_ESP32_C3.menu.FlashFreq.40.build.flash_freq=40m - -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.4M=4MB (32Mb) -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.4M.build.flash_size=4MB -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.8M=8MB (64Mb) -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.8M.build.flash_size=8MB -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.8M.build.partitions=default_8MB -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.2M=2MB (16Mb) -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.2M.build.flash_size=2MB -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.2M.build.partitions=minimal -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.16M=16MB (128Mb) -VALTRACK_V4_MFW_ESP32_C3.menu.FlashSize.16M.build.flash_size=16MB - -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.921600=921600 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.921600.upload.speed=921600 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.115200=115200 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.115200.upload.speed=115200 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.256000.windows=256000 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.256000.upload.speed=256000 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.230400.windows.upload.speed=256000 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.230400=230400 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.230400.upload.speed=230400 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.460800.linux=460800 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.460800.macosx=460800 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.460800.upload.speed=460800 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.512000.windows=512000 -VALTRACK_V4_MFW_ESP32_C3.menu.UploadSpeed.512000.upload.speed=512000 - -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.none=None -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.none.build.code_debug=0 -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.error=Error -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.error.build.code_debug=1 -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.warn=Warn -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.warn.build.code_debug=2 -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.info=Info -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.info.build.code_debug=3 -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.debug=Debug -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.debug.build.code_debug=4 -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.verbose=Verbose -VALTRACK_V4_MFW_ESP32_C3.menu.DebugLevel.verbose.build.code_debug=5 - -VALTRACK_V4_MFW_ESP32_C3.menu.EraseFlash.none=Disabled -VALTRACK_V4_MFW_ESP32_C3.menu.EraseFlash.none.upload.erase_cmd= -VALTRACK_V4_MFW_ESP32_C3.menu.EraseFlash.all=Enabled -VALTRACK_V4_MFW_ESP32_C3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -Edgebox-ESP-100.name=Edgebox-ESP-100 - -Edgebox-ESP-100.bootloader.tool=esptool_py -Edgebox-ESP-100.bootloader.tool.default=esptool_py - -Edgebox-ESP-100.upload.tool=esptool_py -Edgebox-ESP-100.upload.tool.default=esptool_py -Edgebox-ESP-100.upload.tool.network=esp_ota - -Edgebox-ESP-100.upload.maximum_size=1310720 -Edgebox-ESP-100.upload.maximum_data_size=327680 -Edgebox-ESP-100.upload.flags= -Edgebox-ESP-100.upload.extra_flags= -Edgebox-ESP-100.upload.use_1200bps_touch=false -Edgebox-ESP-100.upload.wait_for_upload_port=false - -Edgebox-ESP-100.serial.disableDTR=false -Edgebox-ESP-100.serial.disableRTS=false - -Edgebox-ESP-100.build.tarch=xtensa -Edgebox-ESP-100.build.bootloader_addr=0x0 -Edgebox-ESP-100.build.target=esp32s3 -Edgebox-ESP-100.build.mcu=esp32s3 -Edgebox-ESP-100.build.core=esp32 -Edgebox-ESP-100.build.variant=Edgebox-ESP-100 -Edgebox-ESP-100.build.board=Edgebox-ESP-100 - -Edgebox-ESP-100.build.usb_mode=1 -Edgebox-ESP-100.build.cdc_on_boot=0 -Edgebox-ESP-100.build.msc_on_boot=0 -Edgebox-ESP-100.build.dfu_on_boot=0 -Edgebox-ESP-100.build.f_cpu=240000000L -Edgebox-ESP-100.build.flash_size=4MB -Edgebox-ESP-100.build.flash_freq=80m -Edgebox-ESP-100.build.flash_mode=dio -Edgebox-ESP-100.build.boot=qio -Edgebox-ESP-100.build.boot_freq=80m -Edgebox-ESP-100.build.partitions=default -Edgebox-ESP-100.build.defines= -Edgebox-ESP-100.build.loop_core= -Edgebox-ESP-100.build.event_core= -Edgebox-ESP-100.build.psram_type=qspi -Edgebox-ESP-100.build.memory_type={build.boot}_{build.psram_type} - -Edgebox-ESP-100.menu.PSRAM.disabled=Disabled -Edgebox-ESP-100.menu.PSRAM.disabled.build.defines= -Edgebox-ESP-100.menu.PSRAM.disabled.build.psram_type=qspi -Edgebox-ESP-100.menu.PSRAM.enabled=QSPI PSRAM -Edgebox-ESP-100.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -Edgebox-ESP-100.menu.PSRAM.enabled.build.psram_type=qspi -Edgebox-ESP-100.menu.PSRAM.opi=OPI PSRAM -Edgebox-ESP-100.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -Edgebox-ESP-100.menu.PSRAM.opi.build.psram_type=opi - -Edgebox-ESP-100.menu.FlashMode.qio=QIO 80MHz -Edgebox-ESP-100.menu.FlashMode.qio.build.flash_mode=dio -Edgebox-ESP-100.menu.FlashMode.qio.build.boot=qio -Edgebox-ESP-100.menu.FlashMode.qio.build.boot_freq=80m -Edgebox-ESP-100.menu.FlashMode.qio.build.flash_freq=80m -Edgebox-ESP-100.menu.FlashMode.qio120=QIO 120MHz -Edgebox-ESP-100.menu.FlashMode.qio120.build.flash_mode=dio -Edgebox-ESP-100.menu.FlashMode.qio120.build.boot=qio -Edgebox-ESP-100.menu.FlashMode.qio120.build.boot_freq=120m -Edgebox-ESP-100.menu.FlashMode.qio120.build.flash_freq=80m -Edgebox-ESP-100.menu.FlashMode.dio=DIO 80MHz -Edgebox-ESP-100.menu.FlashMode.dio.build.flash_mode=dio -Edgebox-ESP-100.menu.FlashMode.dio.build.boot=dio -Edgebox-ESP-100.menu.FlashMode.dio.build.boot_freq=80m -Edgebox-ESP-100.menu.FlashMode.dio.build.flash_freq=80m -Edgebox-ESP-100.menu.FlashMode.opi=OPI 80MHz -Edgebox-ESP-100.menu.FlashMode.opi.build.flash_mode=dout -Edgebox-ESP-100.menu.FlashMode.opi.build.boot=opi -Edgebox-ESP-100.menu.FlashMode.opi.build.boot_freq=80m -Edgebox-ESP-100.menu.FlashMode.opi.build.flash_freq=80m - -Edgebox-ESP-100.menu.FlashSize.4M=4MB (32Mb) -Edgebox-ESP-100.menu.FlashSize.4M.build.flash_size=4MB -Edgebox-ESP-100.menu.FlashSize.8M=8MB (64Mb) -Edgebox-ESP-100.menu.FlashSize.8M.build.flash_size=8MB -Edgebox-ESP-100.menu.FlashSize.8M.build.partitions=default_8MB -Edgebox-ESP-100.menu.FlashSize.16M=16MB (128Mb) -Edgebox-ESP-100.menu.FlashSize.16M.build.flash_size=16MB -#Edgebox-ESP-100.menu.FlashSize.32M=32MB (256Mb) -#Edgebox-ESP-100.menu.FlashSize.32M.build.flash_size=32MB - -Edgebox-ESP-100.menu.LoopCore.1=Core 1 -Edgebox-ESP-100.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -Edgebox-ESP-100.menu.LoopCore.0=Core 0 -Edgebox-ESP-100.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -Edgebox-ESP-100.menu.EventsCore.1=Core 1 -Edgebox-ESP-100.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -Edgebox-ESP-100.menu.EventsCore.0=Core 0 -Edgebox-ESP-100.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -Edgebox-ESP-100.menu.USBMode.default=Hardware CDC and JTAG -Edgebox-ESP-100.menu.USBMode.default.build.usb_mode=1 -Edgebox-ESP-100.menu.USBMode.hwcdc=USB-OTG (TinyUSB) -Edgebox-ESP-100.menu.USBMode.hwcdc.build.usb_mode=0 - -Edgebox-ESP-100.menu.CDCOnBoot.default=Disabled -Edgebox-ESP-100.menu.CDCOnBoot.default.build.cdc_on_boot=0 -Edgebox-ESP-100.menu.CDCOnBoot.cdc=Enabled -Edgebox-ESP-100.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -Edgebox-ESP-100.menu.MSCOnBoot.default=Disabled -Edgebox-ESP-100.menu.MSCOnBoot.default.build.msc_on_boot=0 -Edgebox-ESP-100.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -Edgebox-ESP-100.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -Edgebox-ESP-100.menu.DFUOnBoot.default=Disabled -Edgebox-ESP-100.menu.DFUOnBoot.default.build.dfu_on_boot=0 -Edgebox-ESP-100.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -Edgebox-ESP-100.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -Edgebox-ESP-100.menu.UploadMode.default=UART0 / Hardware CDC -Edgebox-ESP-100.menu.UploadMode.default.upload.use_1200bps_touch=false -Edgebox-ESP-100.menu.UploadMode.default.upload.wait_for_upload_port=false -Edgebox-ESP-100.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -Edgebox-ESP-100.menu.UploadMode.cdc.upload.use_1200bps_touch=true -Edgebox-ESP-100.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -Edgebox-ESP-100.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.default.build.partitions=default -Edgebox-ESP-100.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -Edgebox-ESP-100.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -Edgebox-ESP-100.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -Edgebox-ESP-100.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -Edgebox-ESP-100.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.minimal.build.partitions=minimal -Edgebox-ESP-100.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.no_ota.build.partitions=no_ota -Edgebox-ESP-100.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -Edgebox-ESP-100.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -Edgebox-ESP-100.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -Edgebox-ESP-100.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -Edgebox-ESP-100.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -Edgebox-ESP-100.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -Edgebox-ESP-100.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -Edgebox-ESP-100.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -Edgebox-ESP-100.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -Edgebox-ESP-100.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.huge_app.build.partitions=huge_app -Edgebox-ESP-100.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -Edgebox-ESP-100.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -Edgebox-ESP-100.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -Edgebox-ESP-100.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -Edgebox-ESP-100.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -Edgebox-ESP-100.menu.PartitionScheme.fatflash.build.partitions=ffat -Edgebox-ESP-100.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -Edgebox-ESP-100.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -Edgebox-ESP-100.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -Edgebox-ESP-100.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -Edgebox-ESP-100.menu.PartitionScheme.rainmaker=RainMaker -Edgebox-ESP-100.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -Edgebox-ESP-100.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -Edgebox-ESP-100.menu.CPUFreq.240=240MHz (WiFi) -Edgebox-ESP-100.menu.CPUFreq.240.build.f_cpu=240000000L -Edgebox-ESP-100.menu.CPUFreq.160=160MHz (WiFi) -Edgebox-ESP-100.menu.CPUFreq.160.build.f_cpu=160000000L -Edgebox-ESP-100.menu.CPUFreq.80=80MHz (WiFi) -Edgebox-ESP-100.menu.CPUFreq.80.build.f_cpu=80000000L -Edgebox-ESP-100.menu.CPUFreq.40=40MHz -Edgebox-ESP-100.menu.CPUFreq.40.build.f_cpu=40000000L -Edgebox-ESP-100.menu.CPUFreq.20=20MHz -Edgebox-ESP-100.menu.CPUFreq.20.build.f_cpu=20000000L -Edgebox-ESP-100.menu.CPUFreq.10=10MHz -Edgebox-ESP-100.menu.CPUFreq.10.build.f_cpu=10000000L - -Edgebox-ESP-100.menu.UploadSpeed.921600=921600 -Edgebox-ESP-100.menu.UploadSpeed.921600.upload.speed=921600 -Edgebox-ESP-100.menu.UploadSpeed.115200=115200 -Edgebox-ESP-100.menu.UploadSpeed.115200.upload.speed=115200 -Edgebox-ESP-100.menu.UploadSpeed.256000.windows=256000 -Edgebox-ESP-100.menu.UploadSpeed.256000.upload.speed=256000 -Edgebox-ESP-100.menu.UploadSpeed.230400.windows.upload.speed=256000 -Edgebox-ESP-100.menu.UploadSpeed.230400=230400 -Edgebox-ESP-100.menu.UploadSpeed.230400.upload.speed=230400 -Edgebox-ESP-100.menu.UploadSpeed.460800.linux=460800 -Edgebox-ESP-100.menu.UploadSpeed.460800.macosx=460800 -Edgebox-ESP-100.menu.UploadSpeed.460800.upload.speed=460800 -Edgebox-ESP-100.menu.UploadSpeed.512000.windows=512000 -Edgebox-ESP-100.menu.UploadSpeed.512000.upload.speed=512000 - -Edgebox-ESP-100.menu.DebugLevel.none=None -Edgebox-ESP-100.menu.DebugLevel.none.build.code_debug=0 -Edgebox-ESP-100.menu.DebugLevel.error=Error -Edgebox-ESP-100.menu.DebugLevel.error.build.code_debug=1 -Edgebox-ESP-100.menu.DebugLevel.warn=Warn -Edgebox-ESP-100.menu.DebugLevel.warn.build.code_debug=2 -Edgebox-ESP-100.menu.DebugLevel.info=Info -Edgebox-ESP-100.menu.DebugLevel.info.build.code_debug=3 -Edgebox-ESP-100.menu.DebugLevel.debug=Debug -Edgebox-ESP-100.menu.DebugLevel.debug.build.code_debug=4 -Edgebox-ESP-100.menu.DebugLevel.verbose=Verbose -Edgebox-ESP-100.menu.DebugLevel.verbose.build.code_debug=5 - -Edgebox-ESP-100.menu.EraseFlash.none=Disabled -Edgebox-ESP-100.menu.EraseFlash.none.upload.erase_cmd= -Edgebox-ESP-100.menu.EraseFlash.all=Enabled -Edgebox-ESP-100.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -crabik_slot_esp32_s3.name=Crabik Slot ESP32-S3 -crabik_slot_esp32_s3.vid.0=0x303a -crabik_slot_esp32_s3.pid.0=0x1001 - -crabik_slot_esp32_s3.bootloader.tool=esptool_py -crabik_slot_esp32_s3.bootloader.tool.default=esptool_py - -crabik_slot_esp32_s3.upload.tool=esptool_py -crabik_slot_esp32_s3.upload.tool.default=esptool_py -crabik_slot_esp32_s3.upload.tool.network=esp_ota - -crabik_slot_esp32_s3.upload.maximum_size=1310720 -crabik_slot_esp32_s3.upload.maximum_data_size=327680 -crabik_slot_esp32_s3.upload.speed=921600 -crabik_slot_esp32_s3.upload.flags= -crabik_slot_esp32_s3.upload.extra_flags= -crabik_slot_esp32_s3.upload.use_1200bps_touch=false -crabik_slot_esp32_s3.upload.wait_for_upload_port=false - -crabik_slot_esp32_s3.serial.disableDTR=false -crabik_slot_esp32_s3.serial.disableRTS=false - -crabik_slot_esp32_s3.build.tarch=xtensa -crabik_slot_esp32_s3.build.bootloader_addr=0x0 -crabik_slot_esp32_s3.build.target=esp32s3 -crabik_slot_esp32_s3.build.mcu=esp32s3 -crabik_slot_esp32_s3.build.core=esp32 -crabik_slot_esp32_s3.build.variant=crabik_slot_esp32_s3 -crabik_slot_esp32_s3.build.board=CRABIK_SLOT_ESP32_S3 - -crabik_slot_esp32_s3.build.usb_mode=0 -crabik_slot_esp32_s3.build.cdc_on_boot=0 -crabik_slot_esp32_s3.build.msc_on_boot=0 -crabik_slot_esp32_s3.build.dfu_on_boot=0 -crabik_slot_esp32_s3.build.f_cpu=240000000L -crabik_slot_esp32_s3.build.flash_size=8MB -crabik_slot_esp32_s3.build.flash_freq=80m -crabik_slot_esp32_s3.build.flash_mode=dio -crabik_slot_esp32_s3.build.boot=qio -crabik_slot_esp32_s3.build.partitions=default -crabik_slot_esp32_s3.build.defines= -crabik_slot_esp32_s3.build.memory_type=qio_qspi -crabik_slot_esp32_s3.build.loop_core= -crabik_slot_esp32_s3.build.event_core= - -## IDE 2.0 Seems to not update the value -crabik_slot_esp32_s3.menu.JTAGAdapter.default=Disabled -crabik_slot_esp32_s3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -crabik_slot_esp32_s3.menu.JTAGAdapter.builtin=Integrated USB JTAG -crabik_slot_esp32_s3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -crabik_slot_esp32_s3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 - -crabik_slot_esp32_s3.menu.LoopCore.1=Core 1 -crabik_slot_esp32_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -crabik_slot_esp32_s3.menu.LoopCore.0=Core 0 -crabik_slot_esp32_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -crabik_slot_esp32_s3.menu.EventsCore.1=Core 1 -crabik_slot_esp32_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -crabik_slot_esp32_s3.menu.EventsCore.0=Core 0 -crabik_slot_esp32_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -crabik_slot_esp32_s3.menu.CDCOnBoot.default=Enabled (Requires Hardware CDC and JTAG Mode) -crabik_slot_esp32_s3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -crabik_slot_esp32_s3.menu.CDCOnBoot.discdc=Disabled -crabik_slot_esp32_s3.menu.CDCOnBoot.discdc.build.cdc_on_boot=0 - -crabik_slot_esp32_s3.menu.MSCOnBoot.default=Disabled -crabik_slot_esp32_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -crabik_slot_esp32_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -crabik_slot_esp32_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -crabik_slot_esp32_s3.menu.USBMode.default=Hardware CDC and JTAG -crabik_slot_esp32_s3.menu.USBMode.default.build.usb_mode=1 -crabik_slot_esp32_s3.menu.USBMode.default.build.cdc_on_boot=1 -crabik_slot_esp32_s3.menu.USBMode.usbotg=USB-OTG -crabik_slot_esp32_s3.menu.USBMode.usbotg.build.usb_mode=0 -crabik_slot_esp32_s3.menu.USBMode.usbotg.build.cdc_on_boot=0 - -crabik_slot_esp32_s3.menu.UploadMode.default=UART0 / Hardware CDC -crabik_slot_esp32_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -crabik_slot_esp32_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -crabik_slot_esp32_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -crabik_slot_esp32_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -crabik_slot_esp32_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -crabik_slot_esp32_s3.menu.CPUFreq.240=240MHz (WiFi) -crabik_slot_esp32_s3.menu.CPUFreq.240.build.f_cpu=240000000L -crabik_slot_esp32_s3.menu.CPUFreq.160=160MHz (WiFi) -crabik_slot_esp32_s3.menu.CPUFreq.160.build.f_cpu=160000000L -crabik_slot_esp32_s3.menu.CPUFreq.80=80MHz (WiFi) -crabik_slot_esp32_s3.menu.CPUFreq.80.build.f_cpu=80000000L - -crabik_slot_esp32_s3.menu.PartitionScheme.default=8M Flash (3MB APP/1.5MB FATFS) -crabik_slot_esp32_s3.menu.PartitionScheme.default.build.partitions=default_8MB -crabik_slot_esp32_s3.menu.PartitionScheme.default.upload.maximum_size=3342336 -crabik_slot_esp32_s3.menu.PartitionScheme.default_4MB=4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -crabik_slot_esp32_s3.menu.PartitionScheme.default_4MB.build.partitions=default -crabik_slot_esp32_s3.menu.PartitionScheme.defaultffat=4MB with ffat (1.2MB APP/1.5MB FATFS) -crabik_slot_esp32_s3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -crabik_slot_esp32_s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -crabik_slot_esp32_s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -crabik_slot_esp32_s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -crabik_slot_esp32_s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -crabik_slot_esp32_s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -crabik_slot_esp32_s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -crabik_slot_esp32_s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 - -crabik_slot_esp32_s3.menu.UploadSpeed.921600=921600 -crabik_slot_esp32_s3.menu.UploadSpeed.921600.upload.speed=921600 -crabik_slot_esp32_s3.menu.UploadSpeed.115200=115200 -crabik_slot_esp32_s3.menu.UploadSpeed.115200.upload.speed=115200 -crabik_slot_esp32_s3.menu.UploadSpeed.256000.windows=256000 -crabik_slot_esp32_s3.menu.UploadSpeed.256000.upload.speed=256000 -crabik_slot_esp32_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -crabik_slot_esp32_s3.menu.UploadSpeed.230400=230400 -crabik_slot_esp32_s3.menu.UploadSpeed.230400.upload.speed=230400 -crabik_slot_esp32_s3.menu.UploadSpeed.460800.linux=460800 -crabik_slot_esp32_s3.menu.UploadSpeed.460800.macosx=460800 -crabik_slot_esp32_s3.menu.UploadSpeed.460800.upload.speed=460800 -crabik_slot_esp32_s3.menu.UploadSpeed.512000.windows=512000 -crabik_slot_esp32_s3.menu.UploadSpeed.512000.upload.speed=512000 - -crabik_slot_esp32_s3.menu.DebugLevel.none=None -crabik_slot_esp32_s3.menu.DebugLevel.none.build.code_debug=0 -crabik_slot_esp32_s3.menu.DebugLevel.error=Error -crabik_slot_esp32_s3.menu.DebugLevel.error.build.code_debug=1 -crabik_slot_esp32_s3.menu.DebugLevel.warn=Warn -crabik_slot_esp32_s3.menu.DebugLevel.warn.build.code_debug=2 -crabik_slot_esp32_s3.menu.DebugLevel.info=Info -crabik_slot_esp32_s3.menu.DebugLevel.info.build.code_debug=3 -crabik_slot_esp32_s3.menu.DebugLevel.debug=Debug -crabik_slot_esp32_s3.menu.DebugLevel.debug.build.code_debug=4 -crabik_slot_esp32_s3.menu.DebugLevel.verbose=Verbose -crabik_slot_esp32_s3.menu.DebugLevel.verbose.build.code_debug=5 - -crabik_slot_esp32_s3.menu.EraseFlash.none=Disabled -crabik_slot_esp32_s3.menu.EraseFlash.none.upload.erase_cmd= -crabik_slot_esp32_s3.menu.EraseFlash.all=Enabled -crabik_slot_esp32_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - - -nebulas3.name=Nebula S3 -nebulas3.vid.0=0x303a -nebulas3.pid.0=0x1001 - -nebulas3.bootloader.tool=esptool_py -nebulas3.bootloader.tool.default=esptool_py - -nebulas3.upload.tool=esptool_py -nebulas3.upload.tool.default=esptool_py -nebulas3.upload.tool.network=esp_ota - -nebulas3.upload.maximum_size=1310720 -nebulas3.upload.maximum_data_size=327680 -nebulas3.upload.flags= -nebulas3.upload.extra_flags= -nebulas3.upload.use_1200bps_touch=false -nebulas3.upload.wait_for_upload_port=false - -nebulas3.serial.disableDTR=false -nebulas3.serial.disableRTS=false - -nebulas3.build.tarch=xtensa -nebulas3.build.bootloader_addr=0x0 -nebulas3.build.target=esp32s3 -nebulas3.build.mcu=esp32s3 -nebulas3.build.core=esp32 -nebulas3.build.variant=Nebula_S3 -nebulas3.build.board=NEBULAS3 - -nebulas3.build.usb_mode=1 -nebulas3.build.cdc_on_boot=0 -nebulas3.build.msc_on_boot=0 -nebulas3.build.dfu_on_boot=0 -nebulas3.build.f_cpu=240000000L -nebulas3.build.flash_size=4MB -nebulas3.build.flash_freq=80m -nebulas3.build.flash_mode=dio -nebulas3.build.boot=qio -nebulas3.build.boot_freq=80m -nebulas3.build.partitions=default -nebulas3.build.defines= -nebulas3.build.loop_core= -nebulas3.build.event_core= -nebulas3.build.psram_type=qspi -nebulas3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -nebulas3.menu.JTAGAdapter.default=Disabled -nebulas3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -nebulas3.menu.JTAGAdapter.builtin=Integrated USB JTAG -nebulas3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -nebulas3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -nebulas3.menu.JTAGAdapter.external=FTDI Adapter -nebulas3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -nebulas3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -nebulas3.menu.JTAGAdapter.bridge=ESP USB Bridge -nebulas3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -nebulas3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -nebulas3.menu.PSRAM.disabled=Disabled -nebulas3.menu.PSRAM.disabled.build.defines= -nebulas3.menu.PSRAM.disabled.build.psram_type=qspi -nebulas3.menu.PSRAM.enabled=QSPI PSRAM -nebulas3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -nebulas3.menu.PSRAM.enabled.build.psram_type=qspi -nebulas3.menu.PSRAM.opi=OPI PSRAM -nebulas3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -nebulas3.menu.PSRAM.opi.build.psram_type=opi - -nebulas3.menu.FlashMode.qio=QIO 80MHz -nebulas3.menu.FlashMode.qio.build.flash_mode=dio -nebulas3.menu.FlashMode.qio.build.boot=qio -nebulas3.menu.FlashMode.qio.build.boot_freq=80m -nebulas3.menu.FlashMode.qio.build.flash_freq=80m -nebulas3.menu.FlashMode.qio120=QIO 120MHz -nebulas3.menu.FlashMode.qio120.build.flash_mode=dio -nebulas3.menu.FlashMode.qio120.build.boot=qio -nebulas3.menu.FlashMode.qio120.build.boot_freq=120m -nebulas3.menu.FlashMode.qio120.build.flash_freq=80m -nebulas3.menu.FlashMode.dio=DIO 80MHz -nebulas3.menu.FlashMode.dio.build.flash_mode=dio -nebulas3.menu.FlashMode.dio.build.boot=dio -nebulas3.menu.FlashMode.dio.build.boot_freq=80m -nebulas3.menu.FlashMode.dio.build.flash_freq=80m -nebulas3.menu.FlashMode.opi=OPI 80MHz -nebulas3.menu.FlashMode.opi.build.flash_mode=dout -nebulas3.menu.FlashMode.opi.build.boot=opi -nebulas3.menu.FlashMode.opi.build.boot_freq=80m -nebulas3.menu.FlashMode.opi.build.flash_freq=80m - -nebulas3.menu.FlashSize.4M=4MB (32Mb) -nebulas3.menu.FlashSize.4M.build.flash_size=4MB -nebulas3.menu.FlashSize.8M=8MB (64Mb) -nebulas3.menu.FlashSize.8M.build.flash_size=8MB -nebulas3.menu.FlashSize.8M.build.partitions=default_8MB -nebulas3.menu.FlashSize.16M=16MB (128Mb) -nebulas3.menu.FlashSize.16M.build.flash_size=16MB - -nebulas3.menu.LoopCore.1=Core 1 -nebulas3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -nebulas3.menu.LoopCore.0=Core 0 -nebulas3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -nebulas3.menu.EventsCore.1=Core 1 -nebulas3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -nebulas3.menu.EventsCore.0=Core 0 -nebulas3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -nebulas3.menu.USBMode.hwcdc=Hardware CDC and JTAG -nebulas3.menu.USBMode.hwcdc.build.usb_mode=1 -nebulas3.menu.USBMode.default=USB-OTG (TinyUSB) -nebulas3.menu.USBMode.default.build.usb_mode=0 - -nebulas3.menu.CDCOnBoot.default= Enabled -nebulas3.menu.CDCOnBoot.default.build.cdc_on_boot=1 -nebulas3.menu.CDCOnBoot.cdc=Disabled -nebulas3.menu.CDCOnBoot.cdc.build.cdc_on_boot=0 - -nebulas3.menu.MSCOnBoot.default=Disabled -nebulas3.menu.MSCOnBoot.default.build.msc_on_boot=0 -nebulas3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -nebulas3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -nebulas3.menu.DFUOnBoot.default=Disabled -nebulas3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -nebulas3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -nebulas3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -nebulas3.menu.UploadMode.default=UART0 / Hardware CDC -nebulas3.menu.UploadMode.default.upload.use_1200bps_touch=false -nebulas3.menu.UploadMode.default.upload.wait_for_upload_port=false -nebulas3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -nebulas3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -nebulas3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -nebulas3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -nebulas3.menu.PartitionScheme.default.build.partitions=default -nebulas3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -nebulas3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -nebulas3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -nebulas3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -nebulas3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -nebulas3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -nebulas3.menu.PartitionScheme.minimal.build.partitions=minimal -nebulas3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -nebulas3.menu.PartitionScheme.no_ota.build.partitions=no_ota -nebulas3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -nebulas3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -nebulas3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -nebulas3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -nebulas3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -nebulas3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -nebulas3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -nebulas3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -nebulas3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -nebulas3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -nebulas3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -nebulas3.menu.PartitionScheme.huge_app.build.partitions=huge_app -nebulas3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -nebulas3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -nebulas3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -nebulas3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -nebulas3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -nebulas3.menu.PartitionScheme.fatflash.build.partitions=ffat -nebulas3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -nebulas3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -nebulas3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -nebulas3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -nebulas3.menu.PartitionScheme.rainmaker=RainMaker -nebulas3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -nebulas3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -nebulas3.menu.CPUFreq.240=240MHz (WiFi) -nebulas3.menu.CPUFreq.240.build.f_cpu=240000000L -nebulas3.menu.CPUFreq.160=160MHz (WiFi) -nebulas3.menu.CPUFreq.160.build.f_cpu=160000000L -nebulas3.menu.CPUFreq.80=80MHz (WiFi) -nebulas3.menu.CPUFreq.80.build.f_cpu=80000000L -nebulas3.menu.CPUFreq.40=40MHz -nebulas3.menu.CPUFreq.40.build.f_cpu=40000000L -nebulas3.menu.CPUFreq.20=20MHz -nebulas3.menu.CPUFreq.20.build.f_cpu=20000000L -nebulas3.menu.CPUFreq.10=10MHz -nebulas3.menu.CPUFreq.10.build.f_cpu=10000000L - -nebulas3.menu.UploadSpeed.921600=921600 -nebulas3.menu.UploadSpeed.921600.upload.speed=921600 -nebulas3.menu.UploadSpeed.115200=115200 -nebulas3.menu.UploadSpeed.115200.upload.speed=115200 -nebulas3.menu.UploadSpeed.256000.windows=256000 -nebulas3.menu.UploadSpeed.256000.upload.speed=256000 -nebulas3.menu.UploadSpeed.230400.windows.upload.speed=256000 -nebulas3.menu.UploadSpeed.230400=230400 -nebulas3.menu.UploadSpeed.230400.upload.speed=230400 -nebulas3.menu.UploadSpeed.460800.linux=460800 -nebulas3.menu.UploadSpeed.460800.macosx=460800 -nebulas3.menu.UploadSpeed.460800.upload.speed=460800 -nebulas3.menu.UploadSpeed.512000.windows=512000 -nebulas3.menu.UploadSpeed.512000.upload.speed=512000 - -nebulas3.menu.DebugLevel.none=None -nebulas3.menu.DebugLevel.none.build.code_debug=0 -nebulas3.menu.DebugLevel.error=Error -nebulas3.menu.DebugLevel.error.build.code_debug=1 -nebulas3.menu.DebugLevel.warn=Warn -nebulas3.menu.DebugLevel.warn.build.code_debug=2 -nebulas3.menu.DebugLevel.info=Info -nebulas3.menu.DebugLevel.info.build.code_debug=3 -nebulas3.menu.DebugLevel.debug=Debug -nebulas3.menu.DebugLevel.debug.build.code_debug=4 -nebulas3.menu.DebugLevel.verbose=Verbose -nebulas3.menu.DebugLevel.verbose.build.code_debug=5 - -nebulas3.menu.EraseFlash.none=Disabled -nebulas3.menu.EraseFlash.none.upload.erase_cmd= -nebulas3.menu.EraseFlash.all=Enabled -nebulas3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -lionbits3.name=Lion:Bit S3 STEM Dev Board -lionbits3.vid.0=0x303a -lionbits3.pid.0=0x1001 - -lionbits3.bootloader.tool=esptool_py -lionbits3.bootloader.tool.default=esptool_py - -lionbits3.upload.tool=esptool_py -lionbits3.upload.tool.default=esptool_py -lionbits3.upload.tool.network=esp_ota - -lionbits3.upload.maximum_size=1310720 -lionbits3.upload.maximum_data_size=327680 -lionbits3.upload.flags= -lionbits3.upload.extra_flags= -lionbits3.upload.use_1200bps_touch=false -lionbits3.upload.wait_for_upload_port=false - -lionbits3.serial.disableDTR=false -lionbits3.serial.disableRTS=false - -lionbits3.build.tarch=xtensa -lionbits3.build.bootloader_addr=0x0 -lionbits3.build.target=esp32s3 -lionbits3.build.mcu=esp32s3 -lionbits3.build.core=esp32 -lionbits3.build.variant=lionbits3 -lionbits3.build.board=LIONBITS3_DEV - - -lionbits3.build.usb_mode=1 -lionbits3.build.cdc_on_boot=0 -lionbits3.build.msc_on_boot=0 -lionbits3.build.dfu_on_boot=0 -lionbits3.build.f_cpu=240000000L -lionbits3.build.flash_size=4MB -lionbits3.build.flash_freq=80m -lionbits3.build.flash_mode=dio -lionbits3.build.boot=qio -lionbits3.build.boot_freq=80m -lionbits3.build.partitions=default -lionbits3.build.defines= -lionbits3.build.loop_core= -lionbits3.build.event_core= -lionbits3.build.psram_type=qspi -lionbits3.build.memory_type={build.boot}_{build.psram_type} - - -lionbits3.menu.JTAGAdapter.default=Disabled -lionbits3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -lionbits3.menu.JTAGAdapter.builtin=Integrated USB JTAG -lionbits3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -lionbits3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -lionbits3.menu.JTAGAdapter.external=FTDI Adapter -lionbits3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -lionbits3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -lionbits3.menu.JTAGAdapter.bridge=ESP USB Bridge -lionbits3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -lionbits3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -lionbits3.menu.PSRAM.disabled=Disabled -lionbits3.menu.PSRAM.disabled.build.defines= -lionbits3.menu.PSRAM.disabled.build.psram_type=qspi -lionbits3.menu.PSRAM.enabled=QSPI PSRAM -lionbits3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -lionbits3.menu.PSRAM.enabled.build.psram_type=qspi -lionbits3.menu.PSRAM.opi=OPI PSRAM -lionbits3.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -lionbits3.menu.PSRAM.opi.build.psram_type=opi - -lionbits3.menu.FlashMode.qio=QIO 80MHz -lionbits3.menu.FlashMode.qio.build.flash_mode=dio -lionbits3.menu.FlashMode.qio.build.boot=qio -lionbits3.menu.FlashMode.qio.build.boot_freq=80m -lionbits3.menu.FlashMode.qio.build.flash_freq=80m -lionbits3.menu.FlashMode.qio120=QIO 120MHz -lionbits3.menu.FlashMode.qio120.build.flash_mode=dio -lionbits3.menu.FlashMode.qio120.build.boot=qio -lionbits3.menu.FlashMode.qio120.build.boot_freq=120m -lionbits3.menu.FlashMode.qio120.build.flash_freq=80m -lionbits3.menu.FlashMode.dio=DIO 80MHz -lionbits3.menu.FlashMode.dio.build.flash_mode=dio -lionbits3.menu.FlashMode.dio.build.boot=dio -lionbits3.menu.FlashMode.dio.build.boot_freq=80m -lionbits3.menu.FlashMode.dio.build.flash_freq=80m -lionbits3.menu.FlashMode.opi=OPI 80MHz -lionbits3.menu.FlashMode.opi.build.flash_mode=dout -lionbits3.menu.FlashMode.opi.build.boot=opi -lionbits3.menu.FlashMode.opi.build.boot_freq=80m -lionbits3.menu.FlashMode.opi.build.flash_freq=80m - -lionbits3.menu.FlashSize.4M=4MB (32Mb) -lionbits3.menu.FlashSize.4M.build.flash_size=4MB -lionbits3.menu.FlashSize.8M=8MB (64Mb) -lionbits3.menu.FlashSize.8M.build.flash_size=8MB -lionbits3.menu.FlashSize.8M.build.partitions=default_8MB -lionbits3.menu.FlashSize.16M=16MB (128Mb) -lionbits3.menu.FlashSize.16M.build.flash_size=16MB -#lionbits3.menu.FlashSize.32M=32MB (256Mb) -#lionbits3.menu.FlashSize.32M.build.flash_size=32MB - -lionbits3.menu.LoopCore.1=Core 1 -lionbits3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -lionbits3.menu.LoopCore.0=Core 0 -lionbits3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -lionbits3.menu.EventsCore.1=Core 1 -lionbits3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -lionbits3.menu.EventsCore.0=Core 0 -lionbits3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -lionbits3.menu.USBMode.hwcdc=Hardware CDC and JTAG -lionbits3.menu.USBMode.hwcdc.build.usb_mode=1 -lionbits3.menu.USBMode.default=USB-OTG (TinyUSB) -lionbits3.menu.USBMode.default.build.usb_mode=0 - -lionbits3.menu.CDCOnBoot.default=Disabled -lionbits3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -lionbits3.menu.CDCOnBoot.cdc=Enabled -lionbits3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -lionbits3.menu.MSCOnBoot.default=Disabled -lionbits3.menu.MSCOnBoot.default.build.msc_on_boot=0 -lionbits3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -lionbits3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -lionbits3.menu.DFUOnBoot.default=Disabled -lionbits3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -lionbits3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -lionbits3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -lionbits3.menu.UploadMode.default=UART0 / Hardware CDC -lionbits3.menu.UploadMode.default.upload.use_1200bps_touch=false -lionbits3.menu.UploadMode.default.upload.wait_for_upload_port=false -lionbits3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -lionbits3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -lionbits3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -lionbits3.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -lionbits3.menu.PartitionScheme.default.build.partitions=default -lionbits3.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -lionbits3.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -lionbits3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -lionbits3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -lionbits3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -lionbits3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -lionbits3.menu.PartitionScheme.minimal.build.partitions=minimal -lionbits3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -lionbits3.menu.PartitionScheme.no_ota.build.partitions=no_ota -lionbits3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -lionbits3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -lionbits3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -lionbits3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -lionbits3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -lionbits3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -lionbits3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -lionbits3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -lionbits3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -lionbits3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -lionbits3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -lionbits3.menu.PartitionScheme.huge_app.build.partitions=huge_app -lionbits3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -lionbits3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -lionbits3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -lionbits3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -lionbits3.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -lionbits3.menu.PartitionScheme.fatflash.build.partitions=ffat -lionbits3.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -lionbits3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) -lionbits3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB -lionbits3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 -lionbits3.menu.PartitionScheme.rainmaker=RainMaker -lionbits3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -lionbits3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -lionbits3.menu.CPUFreq.240=240MHz (WiFi) -lionbits3.menu.CPUFreq.240.build.f_cpu=240000000L -lionbits3.menu.CPUFreq.160=160MHz (WiFi) -lionbits3.menu.CPUFreq.160.build.f_cpu=160000000L -lionbits3.menu.CPUFreq.80=80MHz (WiFi) -lionbits3.menu.CPUFreq.80.build.f_cpu=80000000L -lionbits3.menu.CPUFreq.40=40MHz -lionbits3.menu.CPUFreq.40.build.f_cpu=40000000L -lionbits3.menu.CPUFreq.20=20MHz -lionbits3.menu.CPUFreq.20.build.f_cpu=20000000L -lionbits3.menu.CPUFreq.10=10MHz -lionbits3.menu.CPUFreq.10.build.f_cpu=10000000L - -lionbits3.menu.UploadSpeed.921600=921600 -lionbits3.menu.UploadSpeed.921600.upload.speed=921600 -lionbits3.menu.UploadSpeed.115200=115200 -lionbits3.menu.UploadSpeed.115200.upload.speed=115200 -lionbits3.menu.UploadSpeed.256000.windows=256000 -lionbits3.menu.UploadSpeed.256000.upload.speed=256000 -lionbits3.menu.UploadSpeed.230400.windows.upload.speed=256000 -lionbits3.menu.UploadSpeed.230400=230400 -lionbits3.menu.UploadSpeed.230400.upload.speed=230400 -lionbits3.menu.UploadSpeed.460800.linux=460800 -lionbits3.menu.UploadSpeed.460800.macosx=460800 -lionbits3.menu.UploadSpeed.460800.upload.speed=460800 -lionbits3.menu.UploadSpeed.512000.windows=512000 -lionbits3.menu.UploadSpeed.512000.upload.speed=512000 - -lionbits3.menu.DebugLevel.none=None -lionbits3.menu.DebugLevel.none.build.code_debug=0 -lionbits3.menu.DebugLevel.error=Error -lionbits3.menu.DebugLevel.error.build.code_debug=1 -lionbits3.menu.DebugLevel.warn=Warn -lionbits3.menu.DebugLevel.warn.build.code_debug=2 -lionbits3.menu.DebugLevel.info=Info -lionbits3.menu.DebugLevel.info.build.code_debug=3 -lionbits3.menu.DebugLevel.debug=Debug -lionbits3.menu.DebugLevel.debug.build.code_debug=4 -lionbits3.menu.DebugLevel.verbose=Verbose -lionbits3.menu.DebugLevel.verbose.build.code_debug=5 - -lionbits3.menu.EraseFlash.none=Disabled -lionbits3.menu.EraseFlash.none.upload.erase_cmd= -lionbits3.menu.EraseFlash.all=Enabled -lionbits3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - - -gen4-ESP32-S3R8n16.name=4D Systems gen4-ESP32 16MB Modules (ESP32-S3R8n16) -gen4-ESP32-S3R8n16.vid.0=0x303a -gen4-ESP32-S3R8n16.pid.0=0x1001 - -gen4-ESP32-S3R8n16.bootloader.tool=esptool_py -gen4-ESP32-S3R8n16.bootloader.tool.default=esptool_py - -gen4-ESP32-S3R8n16.upload.tool=esptool_py -gen4-ESP32-S3R8n16.upload.tool.default=esptool_py -gen4-ESP32-S3R8n16.upload.tool.network=esp_ota - -gen4-ESP32-S3R8n16.upload.maximum_size=1310720 -gen4-ESP32-S3R8n16.upload.maximum_data_size=327680 -gen4-ESP32-S3R8n16.upload.flags= -gen4-ESP32-S3R8n16.upload.extra_flags= -gen4-ESP32-S3R8n16.upload.use_1200bps_touch=false -gen4-ESP32-S3R8n16.upload.wait_for_upload_port=false - -gen4-ESP32-S3R8n16.serial.disableDTR=false -gen4-ESP32-S3R8n16.serial.disableRTS=false - -gen4-ESP32-S3R8n16.build.tarch=xtensa -gen4-ESP32-S3R8n16.build.bootloader_addr=0x0 -gen4-ESP32-S3R8n16.build.target=esp32s3 -gen4-ESP32-S3R8n16.build.mcu=esp32s3 -gen4-ESP32-S3R8n16.build.core=esp32 -gen4-ESP32-S3R8n16.build.variant=esp32_s3r8n16 -gen4-ESP32-S3R8n16.build.board=ESP32_S3R8N16 - -gen4-ESP32-S3R8n16.build.usb_mode=1 -gen4-ESP32-S3R8n16.build.cdc_on_boot=1 -gen4-ESP32-S3R8n16.build.msc_on_boot=0 -gen4-ESP32-S3R8n16.build.dfu_on_boot=0 -gen4-ESP32-S3R8n16.build.f_cpu=240000000L -gen4-ESP32-S3R8n16.build.flash_size=16MB (128Mb) -gen4-ESP32-S3R8n16.build.flash_freq=80m -gen4-ESP32-S3R8n16.build.flash_mode=dio -gen4-ESP32-S3R8n16.build.boot=qio -gen4-ESP32-S3R8n16.build.boot_freq=80m -gen4-ESP32-S3R8n16.build.partitions=default -gen4-ESP32-S3R8n16.build.defines=-DBOARD_HAS_PSRAM -gen4-ESP32-S3R8n16.build.loop_core= -gen4-ESP32-S3R8n16.build.event_core= -gen4-ESP32-S3R8n16.build.psram_type=opi -gen4-ESP32-S3R8n16.build.memory_type={build.boot}_{build.psram_type} - -gen4-ESP32-S3R8n16.menu.PSRAM.opi=OPI PSRAM -gen4-ESP32-S3R8n16.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -gen4-ESP32-S3R8n16.menu.PSRAM.opi.build.psram_type=opi - -gen4-ESP32-S3R8n16.menu.FlashMode.qio=QIO 80MHz -gen4-ESP32-S3R8n16.menu.FlashMode.qio.build.flash_mode=dio -gen4-ESP32-S3R8n16.menu.FlashMode.qio.build.boot=qio -gen4-ESP32-S3R8n16.menu.FlashMode.qio.build.boot_freq=80m -gen4-ESP32-S3R8n16.menu.FlashMode.qio.build.flash_freq=80m - -gen4-ESP32-S3R8n16.menu.FlashSize.16M=16MB (128Mb) -gen4-ESP32-S3R8n16.menu.FlashSize.16M.build.flash_size=16MB - -gen4-ESP32-S3R8n16.menu.LoopCore.1=Core 1 -gen4-ESP32-S3R8n16.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -gen4-ESP32-S3R8n16.menu.LoopCore.0=Core 0 -gen4-ESP32-S3R8n16.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -gen4-ESP32-S3R8n16.menu.EventsCore.1=Core 1 -gen4-ESP32-S3R8n16.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -gen4-ESP32-S3R8n16.menu.EventsCore.0=Core 0 -gen4-ESP32-S3R8n16.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -gen4-ESP32-S3R8n16.menu.USBMode.default=Hardware CDC and JTAG -gen4-ESP32-S3R8n16.menu.USBMode.default.build.usb_mode=1 -gen4-ESP32-S3R8n16.menu.USBMode.hwcdc=USB-OTG (TinyUSB) -gen4-ESP32-S3R8n16.menu.USBMode.hwcdc.build.usb_mode=0 - -gen4-ESP32-S3R8n16.menu.CDCOnBoot.cdc=Enabled -gen4-ESP32-S3R8n16.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -gen4-ESP32-S3R8n16.menu.CDCOnBoot.default=Disabled -gen4-ESP32-S3R8n16.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -gen4-ESP32-S3R8n16.menu.MSCOnBoot.default=Disabled -gen4-ESP32-S3R8n16.menu.MSCOnBoot.default.build.msc_on_boot=0 -gen4-ESP32-S3R8n16.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -gen4-ESP32-S3R8n16.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -gen4-ESP32-S3R8n16.menu.DFUOnBoot.default=Disabled -gen4-ESP32-S3R8n16.menu.DFUOnBoot.default.build.dfu_on_boot=0 -gen4-ESP32-S3R8n16.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -gen4-ESP32-S3R8n16.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -gen4-ESP32-S3R8n16.menu.UploadMode.default=UART0 / Hardware CDC -gen4-ESP32-S3R8n16.menu.UploadMode.default.upload.use_1200bps_touch=false -gen4-ESP32-S3R8n16.menu.UploadMode.default.upload.wait_for_upload_port=false -gen4-ESP32-S3R8n16.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -gen4-ESP32-S3R8n16.menu.UploadMode.cdc.upload.use_1200bps_touch=true -gen4-ESP32-S3R8n16.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme1=Small App w/ OTA + Huge FS (2MB APP/2MB OTA/12MB SPIFFS) -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme1.build.custom_partitions=gen4esp32_2MBapp_2MBota_12MBspiffs -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme1.upload.maximum_size=2097152 -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme2=Medium App w/ OTA + Large FS (4MB APP/4MB OTA/7MB SPIFFS) -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme2.build.custom_partitions=gen4esp32_4MBapp_4MBota_7MBspiffs -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme2.upload.maximum_size=4718592 -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme3=Large App w/ OTA (8MB APP/8MB OTA) -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme3.build.custom_partitions=gen4esp32_8MBapp_8MBota -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme3.upload.maximum_size=8323072 -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme4=Huge App (16MB APP) -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme4.build.custom_partitions=gen4esp32_16MBapp -gen4-ESP32-S3R8n16.menu.PartitionScheme.gen4esp32scheme4.upload.maximum_size=16646144 - -gen4-ESP32-S3R8n16.menu.CPUFreq.240=240MHz (WiFi) -gen4-ESP32-S3R8n16.menu.CPUFreq.240.build.f_cpu=240000000L -gen4-ESP32-S3R8n16.menu.CPUFreq.160=160MHz (WiFi) -gen4-ESP32-S3R8n16.menu.CPUFreq.160.build.f_cpu=160000000L -gen4-ESP32-S3R8n16.menu.CPUFreq.80=80MHz (WiFi) -gen4-ESP32-S3R8n16.menu.CPUFreq.80.build.f_cpu=80000000L -gen4-ESP32-S3R8n16.menu.CPUFreq.40=40MHz -gen4-ESP32-S3R8n16.menu.CPUFreq.40.build.f_cpu=40000000L -gen4-ESP32-S3R8n16.menu.CPUFreq.20=20MHz -gen4-ESP32-S3R8n16.menu.CPUFreq.20.build.f_cpu=20000000L -gen4-ESP32-S3R8n16.menu.CPUFreq.10=10MHz -gen4-ESP32-S3R8n16.menu.CPUFreq.10.build.f_cpu=10000000L - -gen4-ESP32-S3R8n16.menu.UploadSpeed.921600=921600 -gen4-ESP32-S3R8n16.menu.UploadSpeed.921600.upload.speed=921600 -gen4-ESP32-S3R8n16.menu.UploadSpeed.115200=115200 -gen4-ESP32-S3R8n16.menu.UploadSpeed.115200.upload.speed=115200 -gen4-ESP32-S3R8n16.menu.UploadSpeed.256000.windows=256000 -gen4-ESP32-S3R8n16.menu.UploadSpeed.256000.upload.speed=256000 -gen4-ESP32-S3R8n16.menu.UploadSpeed.230400.windows.upload.speed=256000 -gen4-ESP32-S3R8n16.menu.UploadSpeed.230400=230400 -gen4-ESP32-S3R8n16.menu.UploadSpeed.230400.upload.speed=230400 -gen4-ESP32-S3R8n16.menu.UploadSpeed.460800.linux=460800 -gen4-ESP32-S3R8n16.menu.UploadSpeed.460800.macosx=460800 -gen4-ESP32-S3R8n16.menu.UploadSpeed.460800.upload.speed=460800 -gen4-ESP32-S3R8n16.menu.UploadSpeed.512000.windows=512000 -gen4-ESP32-S3R8n16.menu.UploadSpeed.512000.upload.speed=512000 - -gen4-ESP32-S3R8n16.menu.DebugLevel.none=None -gen4-ESP32-S3R8n16.menu.DebugLevel.none.build.code_debug=0 -gen4-ESP32-S3R8n16.menu.DebugLevel.error=Error -gen4-ESP32-S3R8n16.menu.DebugLevel.error.build.code_debug=1 -gen4-ESP32-S3R8n16.menu.DebugLevel.warn=Warn -gen4-ESP32-S3R8n16.menu.DebugLevel.warn.build.code_debug=2 -gen4-ESP32-S3R8n16.menu.DebugLevel.info=Info -gen4-ESP32-S3R8n16.menu.DebugLevel.info.build.code_debug=3 -gen4-ESP32-S3R8n16.menu.DebugLevel.debug=Debug -gen4-ESP32-S3R8n16.menu.DebugLevel.debug.build.code_debug=4 -gen4-ESP32-S3R8n16.menu.DebugLevel.verbose=Verbose -gen4-ESP32-S3R8n16.menu.DebugLevel.verbose.build.code_debug=5 - -gen4-ESP32-S3R8n16.menu.EraseFlash.none=Disabled -gen4-ESP32-S3R8n16.menu.EraseFlash.none.upload.erase_cmd= -gen4-ESP32-S3R8n16.menu.EraseFlash.all=Enabled -gen4-ESP32-S3R8n16.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# Namino Rosso - -namino_rosso.name=Namino Rosso -namino_rosso.vid.0=0x303a -namino_rosso.pid.0=0x1001 - -namino_rosso.bootloader.tool=esptool_py -namino_rosso.bootloader.tool.default=esptool_py - -namino_rosso.upload.tool=esptool_py -namino_rosso.upload.tool.default=esptool_py -namino_rosso.upload.tool.network=esp_ota - -namino_rosso.upload.maximum_size=1310720 -namino_rosso.upload.maximum_data_size=327680 -namino_rosso.upload.flags= -namino_rosso.upload.extra_flags= -namino_rosso.upload.use_1200bps_touch=true -namino_rosso.upload.wait_for_upload_port=true - -namino_rosso.serial.disableDTR=false -namino_rosso.serial.disableRTS=false - -namino_rosso.build.tarch=xtensa -namino_rosso.build.bootloader_addr=0x0 -namino_rosso.build.target=esp32s3 -namino_rosso.build.mcu=esp32s3 -namino_rosso.build.core=esp32 -namino_rosso.build.variant=namino_rosso -namino_rosso.build.board=NAMINO_ROSSO - -namino_rosso.build.usb_mode=0 -namino_rosso.build.cdc_on_boot=1 -namino_rosso.build.msc_on_boot=0 -namino_rosso.build.dfu_on_boot=0 -namino_rosso.build.f_cpu=240000000L -namino_rosso.build.flash_size=4MB -namino_rosso.build.flash_freq=80m -namino_rosso.build.flash_mode=dio -namino_rosso.build.boot=qio -namino_rosso.build.partitions=default -namino_rosso.build.defines= -namino_rosso.build.loop_core= -namino_rosso.build.event_core= -namino_rosso.build.flash_type=qio -namino_rosso.build.psram_type=qspi -namino_rosso.build.memory_type={build.flash_type}_{build.psram_type} - -namino_rosso.menu.LoopCore.1=Core 1 -namino_rosso.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -namino_rosso.menu.LoopCore.0=Core 0 -namino_rosso.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -namino_rosso.menu.EventsCore.1=Core 1 -namino_rosso.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -namino_rosso.menu.EventsCore.0=Core 0 -namino_rosso.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -namino_rosso.menu.USBMode.default=USB-OTG (TinyUSB) -namino_rosso.menu.USBMode.default.build.usb_mode=0 -namino_rosso.menu.USBMode.hwcdc=Hardware CDC and JTAG -namino_rosso.menu.USBMode.hwcdc.build.usb_mode=1 - -namino_rosso.menu.CDCOnBoot.cdc=Enabled -namino_rosso.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -namino_rosso.menu.CDCOnBoot.default=Disabled -namino_rosso.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -namino_rosso.menu.MSCOnBoot.default=Disabled -namino_rosso.menu.MSCOnBoot.default.build.msc_on_boot=0 -namino_rosso.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -namino_rosso.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -namino_rosso.menu.DFUOnBoot.default=Disabled -namino_rosso.menu.DFUOnBoot.default.build.dfu_on_boot=0 -namino_rosso.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -namino_rosso.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -namino_rosso.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -namino_rosso.menu.UploadMode.cdc.upload.use_1200bps_touch=true -namino_rosso.menu.UploadMode.cdc.upload.wait_for_upload_port=true -namino_rosso.menu.UploadMode.default=UART0 / Hardware CDC -namino_rosso.menu.UploadMode.default.upload.use_1200bps_touch=false -namino_rosso.menu.UploadMode.default.upload.wait_for_upload_port=false - -namino_rosso.menu.PSRAM.disabled=Disabled -namino_rosso.menu.PSRAM.disabled.build.defines= -namino_rosso.menu.PSRAM.disabled.build.psram_type=qspi -namino_rosso.menu.PSRAM.enabled=QSPI PSRAM -namino_rosso.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -namino_rosso.menu.PSRAM.enabled.build.psram_type=qspi -namino_rosso.menu.PSRAM.opi=OPI PSRAM -namino_rosso.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -namino_rosso.menu.PSRAM.opi.build.psram_type=opi - -namino_rosso.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -namino_rosso.menu.PartitionScheme.default.build.partitions=default -namino_rosso.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -namino_rosso.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -namino_rosso.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -namino_rosso.menu.PartitionScheme.minimal.build.partitions=minimal -namino_rosso.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -namino_rosso.menu.PartitionScheme.no_ota.build.partitions=no_ota -namino_rosso.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -namino_rosso.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -namino_rosso.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -namino_rosso.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -namino_rosso.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -namino_rosso.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -namino_rosso.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -namino_rosso.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -namino_rosso.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -namino_rosso.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -namino_rosso.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -namino_rosso.menu.PartitionScheme.huge_app.build.partitions=huge_app -namino_rosso.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -namino_rosso.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -namino_rosso.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -namino_rosso.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -namino_rosso.menu.CPUFreq.240=240MHz (WiFi) -namino_rosso.menu.CPUFreq.240.build.f_cpu=240000000L -namino_rosso.menu.CPUFreq.160=160MHz (WiFi) -namino_rosso.menu.CPUFreq.160.build.f_cpu=160000000L -namino_rosso.menu.CPUFreq.80=80MHz (WiFi) -namino_rosso.menu.CPUFreq.80.build.f_cpu=80000000L -namino_rosso.menu.CPUFreq.40=40MHz -namino_rosso.menu.CPUFreq.40.build.f_cpu=40000000L -namino_rosso.menu.CPUFreq.20=20MHz -namino_rosso.menu.CPUFreq.20.build.f_cpu=20000000L -namino_rosso.menu.CPUFreq.10=10MHz -namino_rosso.menu.CPUFreq.10.build.f_cpu=10000000L - -namino_rosso.menu.FlashMode.qio=QIO 80MHz -namino_rosso.menu.FlashMode.qio.build.flash_mode=dio -namino_rosso.menu.FlashMode.qio.build.boot=qio -namino_rosso.menu.FlashMode.qio.build.boot_freq=80m -namino_rosso.menu.FlashMode.qio.build.flash_freq=80m -namino_rosso.menu.FlashMode.qio120=QIO 120MHz -namino_rosso.menu.FlashMode.qio120.build.flash_mode=dio -namino_rosso.menu.FlashMode.qio120.build.boot=qio -namino_rosso.menu.FlashMode.qio120.build.boot_freq=120m -namino_rosso.menu.FlashMode.qio120.build.flash_freq=80m -namino_rosso.menu.FlashMode.dio=DIO 80MHz -namino_rosso.menu.FlashMode.dio.build.flash_mode=dio -namino_rosso.menu.FlashMode.dio.build.boot=dio -namino_rosso.menu.FlashMode.dio.build.boot_freq=80m -namino_rosso.menu.FlashMode.dio.build.flash_freq=80m -namino_rosso.menu.FlashMode.opi=OPI 80MHz -namino_rosso.menu.FlashMode.opi.build.flash_mode=dout -namino_rosso.menu.FlashMode.opi.build.boot=opi -namino_rosso.menu.FlashMode.opi.build.boot_freq=80m -namino_rosso.menu.FlashMode.opi.build.flash_freq=80m - -namino_rosso.menu.FlashSize.4M=4MB (32Mb) -namino_rosso.menu.FlashSize.4M.build.flash_size=4MB - -namino_rosso.menu.UploadSpeed.921600=921600 -namino_rosso.menu.UploadSpeed.921600.upload.speed=921600 -namino_rosso.menu.UploadSpeed.115200=115200 -namino_rosso.menu.UploadSpeed.115200.upload.speed=115200 -namino_rosso.menu.UploadSpeed.256000.windows=256000 -namino_rosso.menu.UploadSpeed.256000.upload.speed=256000 -namino_rosso.menu.UploadSpeed.230400.windows.upload.speed=256000 -namino_rosso.menu.UploadSpeed.230400=230400 -namino_rosso.menu.UploadSpeed.230400.upload.speed=230400 -namino_rosso.menu.UploadSpeed.460800.linux=460800 -namino_rosso.menu.UploadSpeed.460800.macosx=460800 -namino_rosso.menu.UploadSpeed.460800.upload.speed=460800 -namino_rosso.menu.UploadSpeed.512000.windows=512000 -namino_rosso.menu.UploadSpeed.512000.upload.speed=512000 - -namino_rosso.menu.DebugLevel.none=None -namino_rosso.menu.DebugLevel.none.build.code_debug=0 -namino_rosso.menu.DebugLevel.error=Error -namino_rosso.menu.DebugLevel.error.build.code_debug=1 -namino_rosso.menu.DebugLevel.warn=Warn -namino_rosso.menu.DebugLevel.warn.build.code_debug=2 -namino_rosso.menu.DebugLevel.info=Info -namino_rosso.menu.DebugLevel.info.build.code_debug=3 -namino_rosso.menu.DebugLevel.debug=Debug -namino_rosso.menu.DebugLevel.debug.build.code_debug=4 -namino_rosso.menu.DebugLevel.verbose=Verbose -namino_rosso.menu.DebugLevel.verbose.build.code_debug=5 - -namino_rosso.menu.EraseFlash.none=Disabled -namino_rosso.menu.EraseFlash.none.upload.erase_cmd= -namino_rosso.menu.EraseFlash.all=Enabled -namino_rosso.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# Namino Arancio - -namino_arancio.name=Namino Arancio -namino_arancio.vid.0=0x303a -namino_arancio.pid.0=0x1001 - -namino_arancio.bootloader.tool=esptool_py -namino_arancio.bootloader.tool.default=esptool_py - -namino_arancio.upload.tool=esptool_py -namino_arancio.upload.tool.default=esptool_py -namino_arancio.upload.tool.network=esp_ota - -namino_arancio.upload.maximum_size=1310720 -namino_arancio.upload.maximum_data_size=327680 -namino_arancio.upload.flags= -namino_arancio.upload.extra_flags= -namino_arancio.upload.use_1200bps_touch=true -namino_arancio.upload.wait_for_upload_port=true - -namino_arancio.serial.disableDTR=false -namino_arancio.serial.disableRTS=false - -namino_arancio.build.tarch=xtensa -namino_arancio.build.bootloader_addr=0x0 -namino_arancio.build.target=esp32s3 -namino_arancio.build.mcu=esp32s3 -namino_arancio.build.core=esp32 -namino_arancio.build.variant=namino_arancio -namino_arancio.build.board=NAMINO_ARANCIO - -namino_arancio.build.usb_mode=0 -namino_arancio.build.cdc_on_boot=1 -namino_arancio.build.msc_on_boot=0 -namino_arancio.build.dfu_on_boot=0 -namino_arancio.build.f_cpu=240000000L -namino_arancio.build.flash_size=4MB -namino_arancio.build.flash_freq=80m -namino_arancio.build.flash_mode=dio -namino_arancio.build.boot=qio -namino_arancio.build.partitions=default -namino_arancio.build.defines= -namino_arancio.build.loop_core= -namino_arancio.build.event_core= -namino_arancio.build.flash_type=qio -namino_arancio.build.psram_type=qspi -namino_arancio.build.memory_type={build.flash_type}_{build.psram_type} - -namino_arancio.menu.LoopCore.1=Core 1 -namino_arancio.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -namino_arancio.menu.LoopCore.0=Core 0 -namino_arancio.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -namino_arancio.menu.EventsCore.1=Core 1 -namino_arancio.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -namino_arancio.menu.EventsCore.0=Core 0 -namino_arancio.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -namino_arancio.menu.USBMode.default=USB-OTG (TinyUSB) -namino_arancio.menu.USBMode.default.build.usb_mode=0 -namino_arancio.menu.USBMode.hwcdc=Hardware CDC and JTAG -namino_arancio.menu.USBMode.hwcdc.build.usb_mode=1 - -namino_arancio.menu.CDCOnBoot.cdc=Enabled -namino_arancio.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -namino_arancio.menu.CDCOnBoot.default=Disabled -namino_arancio.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -namino_arancio.menu.MSCOnBoot.default=Disabled -namino_arancio.menu.MSCOnBoot.default.build.msc_on_boot=0 -namino_arancio.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -namino_arancio.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -namino_arancio.menu.DFUOnBoot.default=Disabled -namino_arancio.menu.DFUOnBoot.default.build.dfu_on_boot=0 -namino_arancio.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -namino_arancio.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -namino_arancio.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -namino_arancio.menu.UploadMode.cdc.upload.use_1200bps_touch=true -namino_arancio.menu.UploadMode.cdc.upload.wait_for_upload_port=true -namino_arancio.menu.UploadMode.default=UART0 / Hardware CDC -namino_arancio.menu.UploadMode.default.upload.use_1200bps_touch=false -namino_arancio.menu.UploadMode.default.upload.wait_for_upload_port=false - -namino_arancio.menu.PSRAM.disabled=Disabled -namino_arancio.menu.PSRAM.disabled.build.defines= -namino_arancio.menu.PSRAM.disabled.build.psram_type=qspi -namino_arancio.menu.PSRAM.enabled=QSPI PSRAM -namino_arancio.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -namino_arancio.menu.PSRAM.enabled.build.psram_type=qspi -namino_arancio.menu.PSRAM.opi=OPI PSRAM -namino_arancio.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -namino_arancio.menu.PSRAM.opi.build.psram_type=opi - -namino_arancio.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -namino_arancio.menu.PartitionScheme.default.build.partitions=default -namino_arancio.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -namino_arancio.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -namino_arancio.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -namino_arancio.menu.PartitionScheme.minimal.build.partitions=minimal -namino_arancio.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -namino_arancio.menu.PartitionScheme.no_ota.build.partitions=no_ota -namino_arancio.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -namino_arancio.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -namino_arancio.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -namino_arancio.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -namino_arancio.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -namino_arancio.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -namino_arancio.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -namino_arancio.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -namino_arancio.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -namino_arancio.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -namino_arancio.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -namino_arancio.menu.PartitionScheme.huge_app.build.partitions=huge_app -namino_arancio.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -namino_arancio.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -namino_arancio.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -namino_arancio.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -namino_arancio.menu.CPUFreq.240=240MHz (WiFi) -namino_arancio.menu.CPUFreq.240.build.f_cpu=240000000L -namino_arancio.menu.CPUFreq.160=160MHz (WiFi) -namino_arancio.menu.CPUFreq.160.build.f_cpu=160000000L -namino_arancio.menu.CPUFreq.80=80MHz (WiFi) -namino_arancio.menu.CPUFreq.80.build.f_cpu=80000000L -namino_arancio.menu.CPUFreq.40=40MHz -namino_arancio.menu.CPUFreq.40.build.f_cpu=40000000L -namino_arancio.menu.CPUFreq.20=20MHz -namino_arancio.menu.CPUFreq.20.build.f_cpu=20000000L -namino_arancio.menu.CPUFreq.10=10MHz -namino_arancio.menu.CPUFreq.10.build.f_cpu=10000000L - -namino_arancio.menu.FlashMode.qio=QIO 80MHz -namino_arancio.menu.FlashMode.qio.build.flash_mode=dio -namino_arancio.menu.FlashMode.qio.build.boot=qio -namino_arancio.menu.FlashMode.qio.build.boot_freq=80m -namino_arancio.menu.FlashMode.qio.build.flash_freq=80m -namino_arancio.menu.FlashMode.qio120=QIO 120MHz -namino_arancio.menu.FlashMode.qio120.build.flash_mode=dio -namino_arancio.menu.FlashMode.qio120.build.boot=qio -namino_arancio.menu.FlashMode.qio120.build.boot_freq=120m -namino_arancio.menu.FlashMode.qio120.build.flash_freq=80m -namino_arancio.menu.FlashMode.dio=DIO 80MHz -namino_arancio.menu.FlashMode.dio.build.flash_mode=dio -namino_arancio.menu.FlashMode.dio.build.boot=dio -namino_arancio.menu.FlashMode.dio.build.boot_freq=80m -namino_arancio.menu.FlashMode.dio.build.flash_freq=80m -namino_arancio.menu.FlashMode.opi=OPI 80MHz -namino_arancio.menu.FlashMode.opi.build.flash_mode=dout -namino_arancio.menu.FlashMode.opi.build.boot=opi -namino_arancio.menu.FlashMode.opi.build.boot_freq=80m -namino_arancio.menu.FlashMode.opi.build.flash_freq=80m - -namino_arancio.menu.FlashSize.4M=4MB (32Mb) -namino_arancio.menu.FlashSize.4M.build.flash_size=4MB - -namino_arancio.menu.UploadSpeed.921600=921600 -namino_arancio.menu.UploadSpeed.921600.upload.speed=921600 -namino_arancio.menu.UploadSpeed.115200=115200 -namino_arancio.menu.UploadSpeed.115200.upload.speed=115200 -namino_arancio.menu.UploadSpeed.256000.windows=256000 -namino_arancio.menu.UploadSpeed.256000.upload.speed=256000 -namino_arancio.menu.UploadSpeed.230400.windows.upload.speed=256000 -namino_arancio.menu.UploadSpeed.230400=230400 -namino_arancio.menu.UploadSpeed.230400.upload.speed=230400 -namino_arancio.menu.UploadSpeed.460800.linux=460800 -namino_arancio.menu.UploadSpeed.460800.macosx=460800 -namino_arancio.menu.UploadSpeed.460800.upload.speed=460800 -namino_arancio.menu.UploadSpeed.512000.windows=512000 -namino_arancio.menu.UploadSpeed.512000.upload.speed=512000 - -namino_arancio.menu.DebugLevel.none=None -namino_arancio.menu.DebugLevel.none.build.code_debug=0 -namino_arancio.menu.DebugLevel.error=Error -namino_arancio.menu.DebugLevel.error.build.code_debug=1 -namino_arancio.menu.DebugLevel.warn=Warn -namino_arancio.menu.DebugLevel.warn.build.code_debug=2 -namino_arancio.menu.DebugLevel.info=Info -namino_arancio.menu.DebugLevel.info.build.code_debug=3 -namino_arancio.menu.DebugLevel.debug=Debug -namino_arancio.menu.DebugLevel.debug.build.code_debug=4 -namino_arancio.menu.DebugLevel.verbose=Verbose -namino_arancio.menu.DebugLevel.verbose.build.code_debug=5 - -namino_arancio.menu.EraseFlash.none=Disabled -namino_arancio.menu.EraseFlash.none.upload.erase_cmd= -namino_arancio.menu.EraseFlash.all=Enabled -namino_arancio.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# Namino Bianco - -namino_bianco.name=Namino Bianco -namino_bianco.vid.0=0x303a -namino_bianco.pid.0=0x1001 - -namino_bianco.bootloader.tool=esptool_py -namino_bianco.bootloader.tool.default=esptool_py - -namino_bianco.upload.tool=esptool_py -namino_bianco.upload.tool.default=esptool_py -namino_bianco.upload.tool.network=esp_ota - -namino_bianco.upload.maximum_size=1310720 -namino_bianco.upload.maximum_data_size=327680 -namino_bianco.upload.flags= -namino_bianco.upload.extra_flags= -namino_bianco.upload.use_1200bps_touch=true -namino_bianco.upload.wait_for_upload_port=true - -namino_bianco.serial.disableDTR=false -namino_bianco.serial.disableRTS=false - -namino_bianco.build.tarch=xtensa -namino_bianco.build.bootloader_addr=0x0 -namino_bianco.build.target=esp32s3 -namino_bianco.build.mcu=esp32s3 -namino_bianco.build.core=esp32 -namino_bianco.build.variant=namino_bianco -namino_bianco.build.board=NAMINO_BIANCO - -namino_bianco.build.usb_mode=0 -namino_bianco.build.cdc_on_boot=1 -namino_bianco.build.msc_on_boot=0 -namino_bianco.build.dfu_on_boot=0 -namino_bianco.build.f_cpu=240000000L -namino_bianco.build.flash_size=4MB -namino_bianco.build.flash_freq=80m -namino_bianco.build.flash_mode=dio -namino_bianco.build.boot=qio -namino_bianco.build.partitions=default -namino_bianco.build.defines= -namino_bianco.build.loop_core= -namino_bianco.build.event_core= -namino_bianco.build.flash_type=qio -namino_bianco.build.psram_type=qspi -namino_bianco.build.memory_type={build.flash_type}_{build.psram_type} - -namino_bianco.menu.LoopCore.1=Core 1 -namino_bianco.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -namino_bianco.menu.LoopCore.0=Core 0 -namino_bianco.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -namino_bianco.menu.EventsCore.1=Core 1 -namino_bianco.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -namino_bianco.menu.EventsCore.0=Core 0 -namino_bianco.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -namino_bianco.menu.USBMode.default=USB-OTG (TinyUSB) -namino_bianco.menu.USBMode.default.build.usb_mode=0 -namino_bianco.menu.USBMode.hwcdc=Hardware CDC and JTAG -namino_bianco.menu.USBMode.hwcdc.build.usb_mode=1 - -namino_bianco.menu.CDCOnBoot.cdc=Enabled -namino_bianco.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -namino_bianco.menu.CDCOnBoot.default=Disabled -namino_bianco.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -namino_bianco.menu.MSCOnBoot.default=Disabled -namino_bianco.menu.MSCOnBoot.default.build.msc_on_boot=0 -namino_bianco.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -namino_bianco.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -namino_bianco.menu.DFUOnBoot.default=Disabled -namino_bianco.menu.DFUOnBoot.default.build.dfu_on_boot=0 -namino_bianco.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -namino_bianco.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -namino_bianco.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -namino_bianco.menu.UploadMode.cdc.upload.use_1200bps_touch=true -namino_bianco.menu.UploadMode.cdc.upload.wait_for_upload_port=true -namino_bianco.menu.UploadMode.default=UART0 / Hardware CDC -namino_bianco.menu.UploadMode.default.upload.use_1200bps_touch=false -namino_bianco.menu.UploadMode.default.upload.wait_for_upload_port=false - -namino_bianco.menu.PSRAM.disabled=Disabled -namino_bianco.menu.PSRAM.disabled.build.defines= -namino_bianco.menu.PSRAM.disabled.build.psram_type=qspi -namino_bianco.menu.PSRAM.enabled=QSPI PSRAM -namino_bianco.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -namino_bianco.menu.PSRAM.enabled.build.psram_type=qspi -namino_bianco.menu.PSRAM.opi=OPI PSRAM -namino_bianco.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM -namino_bianco.menu.PSRAM.opi.build.psram_type=opi - -namino_bianco.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -namino_bianco.menu.PartitionScheme.default.build.partitions=default -namino_bianco.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -namino_bianco.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -namino_bianco.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -namino_bianco.menu.PartitionScheme.minimal.build.partitions=minimal -namino_bianco.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -namino_bianco.menu.PartitionScheme.no_ota.build.partitions=no_ota -namino_bianco.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -namino_bianco.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -namino_bianco.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -namino_bianco.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -namino_bianco.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -namino_bianco.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -namino_bianco.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -namino_bianco.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -namino_bianco.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -namino_bianco.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -namino_bianco.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -namino_bianco.menu.PartitionScheme.huge_app.build.partitions=huge_app -namino_bianco.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -namino_bianco.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -namino_bianco.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -namino_bianco.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -namino_bianco.menu.CPUFreq.240=240MHz (WiFi) -namino_bianco.menu.CPUFreq.240.build.f_cpu=240000000L -namino_bianco.menu.CPUFreq.160=160MHz (WiFi) -namino_bianco.menu.CPUFreq.160.build.f_cpu=160000000L -namino_bianco.menu.CPUFreq.80=80MHz (WiFi) -namino_bianco.menu.CPUFreq.80.build.f_cpu=80000000L -namino_bianco.menu.CPUFreq.40=40MHz -namino_bianco.menu.CPUFreq.40.build.f_cpu=40000000L -namino_bianco.menu.CPUFreq.20=20MHz -namino_bianco.menu.CPUFreq.20.build.f_cpu=20000000L -namino_bianco.menu.CPUFreq.10=10MHz -namino_bianco.menu.CPUFreq.10.build.f_cpu=10000000L - -namino_bianco.menu.FlashMode.qio=QIO 80MHz -namino_bianco.menu.FlashMode.qio.build.flash_mode=dio -namino_bianco.menu.FlashMode.qio.build.boot=qio -namino_bianco.menu.FlashMode.qio.build.boot_freq=80m -namino_bianco.menu.FlashMode.qio.build.flash_freq=80m -namino_bianco.menu.FlashMode.qio120=QIO 120MHz -namino_bianco.menu.FlashMode.qio120.build.flash_mode=dio -namino_bianco.menu.FlashMode.qio120.build.boot=qio -namino_bianco.menu.FlashMode.qio120.build.boot_freq=120m -namino_bianco.menu.FlashMode.qio120.build.flash_freq=80m -namino_bianco.menu.FlashMode.dio=DIO 80MHz -namino_bianco.menu.FlashMode.dio.build.flash_mode=dio -namino_bianco.menu.FlashMode.dio.build.boot=dio -namino_bianco.menu.FlashMode.dio.build.boot_freq=80m -namino_bianco.menu.FlashMode.dio.build.flash_freq=80m -namino_bianco.menu.FlashMode.opi=OPI 80MHz -namino_bianco.menu.FlashMode.opi.build.flash_mode=dout -namino_bianco.menu.FlashMode.opi.build.boot=opi -namino_bianco.menu.FlashMode.opi.build.boot_freq=80m -namino_bianco.menu.FlashMode.opi.build.flash_freq=80m - -namino_bianco.menu.FlashSize.4M=4MB (32Mb) -namino_bianco.menu.FlashSize.4M.build.flash_size=4MB - -namino_bianco.menu.UploadSpeed.921600=921600 -namino_bianco.menu.UploadSpeed.921600.upload.speed=921600 -namino_bianco.menu.UploadSpeed.115200=115200 -namino_bianco.menu.UploadSpeed.115200.upload.speed=115200 -namino_bianco.menu.UploadSpeed.256000.windows=256000 -namino_bianco.menu.UploadSpeed.256000.upload.speed=256000 -namino_bianco.menu.UploadSpeed.230400.windows.upload.speed=256000 -namino_bianco.menu.UploadSpeed.230400=230400 -namino_bianco.menu.UploadSpeed.230400.upload.speed=230400 -namino_bianco.menu.UploadSpeed.460800.linux=460800 -namino_bianco.menu.UploadSpeed.460800.macosx=460800 -namino_bianco.menu.UploadSpeed.460800.upload.speed=460800 -namino_bianco.menu.UploadSpeed.512000.windows=512000 -namino_bianco.menu.UploadSpeed.512000.upload.speed=512000 - -namino_bianco.menu.DebugLevel.none=None -namino_bianco.menu.DebugLevel.none.build.code_debug=0 -namino_bianco.menu.DebugLevel.error=Error -namino_bianco.menu.DebugLevel.error.build.code_debug=1 -namino_bianco.menu.DebugLevel.warn=Warn -namino_bianco.menu.DebugLevel.warn.build.code_debug=2 -namino_bianco.menu.DebugLevel.info=Info -namino_bianco.menu.DebugLevel.info.build.code_debug=3 -namino_bianco.menu.DebugLevel.debug=Debug -namino_bianco.menu.DebugLevel.debug.build.code_debug=4 -namino_bianco.menu.DebugLevel.verbose=Verbose -namino_bianco.menu.DebugLevel.verbose.build.code_debug=5 - -namino_bianco.menu.EraseFlash.none=Disabled -namino_bianco.menu.EraseFlash.none.upload.erase_cmd= -namino_bianco.menu.EraseFlash.all=Enabled -namino_bianco.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -ioxesp32.name=IOXESP32 - -ioxesp32.bootloader.tool=esptool_py -ioxesp32.bootloader.tool.default=esptool_py - -ioxesp32.upload.tool=esptool_py -ioxesp32.upload.tool.default=esptool_py -ioxesp32.upload.tool.network=esp_ota - -ioxesp32.upload.maximum_size=1310720 -ioxesp32.upload.maximum_data_size=327680 -ioxesp32.upload.flags= -ioxesp32.upload.extra_flags= - -ioxesp32.serial.disableDTR=true -ioxesp32.serial.disableRTS=true - -ioxesp32.build.tarch=xtensa -ioxesp32.build.bootloader_addr=0x1000 -ioxesp32.build.target=esp32 -ioxesp32.build.mcu=esp32 -ioxesp32.build.core=esp32 -ioxesp32.build.variant=ioxesp32 -ioxesp32.build.board=IOXESP32 - -ioxesp32.build.f_cpu=240000000L -ioxesp32.build.flash_mode=dio -ioxesp32.build.flash_size=4MB -ioxesp32ps.build.flash_freq=40m -ioxesp32.build.boot=dio -ioxesp32.build.partitions=default -ioxesp32.build.defines= -ioxesp32.build.extra_libs= - -ioxesp32.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ioxesp32.menu.PartitionScheme.default.build.partitions=default -ioxesp32.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ioxesp32.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ioxesp32.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -ioxesp32.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -ioxesp32.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -ioxesp32.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ioxesp32.menu.PartitionScheme.minimal.build.partitions=minimal -ioxesp32.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ioxesp32.menu.PartitionScheme.no_ota.build.partitions=no_ota -ioxesp32.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ioxesp32.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ioxesp32.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ioxesp32.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ioxesp32.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ioxesp32.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ioxesp32.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ioxesp32.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ioxesp32.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ioxesp32.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ioxesp32.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ioxesp32.menu.PartitionScheme.huge_app.build.partitions=huge_app -ioxesp32.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ioxesp32.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ioxesp32.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ioxesp32.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -ioxesp32.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -ioxesp32.menu.PartitionScheme.fatflash.build.partitions=ffat -ioxesp32.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -ioxesp32.menu.PartitionScheme.rainmaker=RainMaker -ioxesp32.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -ioxesp32.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -ioxesp32.menu.FlashFreq.80=80MHz -ioxesp32.menu.FlashFreq.80.build.flash_freq=80m -ioxesp32.menu.FlashFreq.40=40MHz -ioxesp32.menu.FlashFreq.40.build.flash_freq=40m - -ioxesp32.menu.UploadSpeed.921600=921600 -ioxesp32.menu.UploadSpeed.921600.upload.speed=921600 -ioxesp32.menu.UploadSpeed.115200=115200 -ioxesp32.menu.UploadSpeed.115200.upload.speed=115200 -ioxesp32.menu.UploadSpeed.256000.windows=256000 -ioxesp32.menu.UploadSpeed.256000.upload.speed=256000 -ioxesp32.menu.UploadSpeed.230400.windows.upload.speed=256000 -ioxesp32.menu.UploadSpeed.230400=230400 -ioxesp32.menu.UploadSpeed.230400.upload.speed=230400 -ioxesp32.menu.UploadSpeed.460800.linux=460800 -ioxesp32.menu.UploadSpeed.460800.macosx=460800 -ioxesp32.menu.UploadSpeed.460800.upload.speed=460800 -ioxesp32.menu.UploadSpeed.512000.windows=512000 -ioxesp32.menu.UploadSpeed.512000.upload.speed=512000 - -ioxesp32.menu.DebugLevel.none=None -ioxesp32.menu.DebugLevel.none.build.code_debug=0 -ioxesp32.menu.DebugLevel.error=Error -ioxesp32.menu.DebugLevel.error.build.code_debug=1 -ioxesp32.menu.DebugLevel.warn=Warn -ioxesp32.menu.DebugLevel.warn.build.code_debug=2 -ioxesp32.menu.DebugLevel.info=Info -ioxesp32.menu.DebugLevel.info.build.code_debug=3 -ioxesp32.menu.DebugLevel.debug=Debug -ioxesp32.menu.DebugLevel.debug.build.code_debug=4 -ioxesp32.menu.DebugLevel.verbose=Verbose -ioxesp32.menu.DebugLevel.verbose.build.code_debug=5 - -ioxesp32.menu.EraseFlash.none=Disabled -ioxesp32.menu.EraseFlash.none.upload.erase_cmd= -ioxesp32.menu.EraseFlash.all=Enabled -ioxesp32.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -ioxesp32ps.name=IOXESP32PS - -ioxesp32ps.bootloader.tool=esptool_py -ioxesp32ps.bootloader.tool.default=esptool_py - -ioxesp32ps.upload.tool=esptool_py -ioxesp32ps.upload.tool.default=esptool_py -ioxesp32ps.upload.tool.network=esp_ota - -ioxesp32ps.upload.maximum_size=1310720 -ioxesp32ps.upload.maximum_data_size=327680 -ioxesp32ps.upload.flags= -ioxesp32ps.upload.extra_flags= - -ioxesp32ps.serial.disableDTR=true -ioxesp32ps.serial.disableRTS=true - -ioxesp32ps.build.tarch=xtensa -ioxesp32ps.build.bootloader_addr=0x1000 -ioxesp32ps.build.target=esp32 -ioxesp32ps.build.mcu=esp32 -ioxesp32ps.build.core=esp32 -ioxesp32ps.build.variant=ioxesp32 -ioxesp32ps.build.board=IOXESP32PS - -ioxesp32ps.build.f_cpu=240000000L -ioxesp32ps.build.flash_mode=dio -ioxesp32ps.build.flash_size=4MB -ioxesp32ps.build.flash_freq=40m -ioxesp32ps.build.boot=dio -ioxesp32ps.build.partitions=default -ioxesp32ps.build.defines=-DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -ioxesp32ps.build.extra_libs= - -ioxesp32ps.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -ioxesp32ps.menu.PartitionScheme.default.build.partitions=default -ioxesp32ps.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -ioxesp32ps.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -ioxesp32ps.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -ioxesp32ps.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -ioxesp32ps.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -ioxesp32ps.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -ioxesp32ps.menu.PartitionScheme.minimal.build.partitions=minimal -ioxesp32ps.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -ioxesp32ps.menu.PartitionScheme.no_ota.build.partitions=no_ota -ioxesp32ps.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -ioxesp32ps.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -ioxesp32ps.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -ioxesp32ps.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -ioxesp32ps.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -ioxesp32ps.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -ioxesp32ps.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -ioxesp32ps.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -ioxesp32ps.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -ioxesp32ps.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -ioxesp32ps.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -ioxesp32ps.menu.PartitionScheme.huge_app.build.partitions=huge_app -ioxesp32ps.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -ioxesp32ps.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -ioxesp32ps.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -ioxesp32ps.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -ioxesp32ps.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) -ioxesp32ps.menu.PartitionScheme.fatflash.build.partitions=ffat -ioxesp32ps.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 -ioxesp32ps.menu.PartitionScheme.rainmaker=RainMaker -ioxesp32ps.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -ioxesp32ps.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -ioxesp32ps.menu.FlashFreq.80=80MHz -ioxesp32ps.menu.FlashFreq.80.build.flash_freq=80m -ioxesp32ps.menu.FlashFreq.40=40MHz -ioxesp32ps.menu.FlashFreq.40.build.flash_freq=40m - -ioxesp32ps.menu.UploadSpeed.921600=921600 -ioxesp32ps.menu.UploadSpeed.921600.upload.speed=921600 -ioxesp32ps.menu.UploadSpeed.115200=115200 -ioxesp32ps.menu.UploadSpeed.115200.upload.speed=115200 -ioxesp32ps.menu.UploadSpeed.256000.windows=256000 -ioxesp32ps.menu.UploadSpeed.256000.upload.speed=256000 -ioxesp32ps.menu.UploadSpeed.230400.windows.upload.speed=256000 -ioxesp32ps.menu.UploadSpeed.230400=230400 -ioxesp32ps.menu.UploadSpeed.230400.upload.speed=230400 -ioxesp32ps.menu.UploadSpeed.460800.linux=460800 -ioxesp32ps.menu.UploadSpeed.460800.macosx=460800 -ioxesp32ps.menu.UploadSpeed.460800.upload.speed=460800 -ioxesp32ps.menu.UploadSpeed.512000.windows=512000 -ioxesp32ps.menu.UploadSpeed.512000.upload.speed=512000 - -ioxesp32ps.menu.DebugLevel.none=None -ioxesp32ps.menu.DebugLevel.none.build.code_debug=0 -ioxesp32ps.menu.DebugLevel.error=Error -ioxesp32ps.menu.DebugLevel.error.build.code_debug=1 -ioxesp32ps.menu.DebugLevel.warn=Warn -ioxesp32ps.menu.DebugLevel.warn.build.code_debug=2 -ioxesp32ps.menu.DebugLevel.info=Info -ioxesp32ps.menu.DebugLevel.info.build.code_debug=3 -ioxesp32ps.menu.DebugLevel.debug=Debug -ioxesp32ps.menu.DebugLevel.debug.build.code_debug=4 -ioxesp32ps.menu.DebugLevel.verbose=Verbose -ioxesp32ps.menu.DebugLevel.verbose.build.code_debug=5 - -ioxesp32ps.menu.EraseFlash.none=Disabled -ioxesp32ps.menu.EraseFlash.none.upload.erase_cmd= -ioxesp32ps.menu.EraseFlash.all=Enabled -ioxesp32ps.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -atd147_s3.name=ATD1.47-S3 -atd147_s3.vid.0=0x303a -atd147_s3.pid.0=0x1001 - -atd147_s3.bootloader.tool=esptool_py -atd147_s3.bootloader.tool.default=esptool_py - -atd147_s3.upload.tool=esptool_py -atd147_s3.upload.tool.default=esptool_py -atd147_s3.upload.tool.network=esp_ota - -atd147_s3.upload.maximum_size=1310720 -atd147_s3.upload.maximum_data_size=327680 -atd147_s3.upload.flags= -atd147_s3.upload.extra_flags= -atd147_s3.upload.use_1200bps_touch=false -atd147_s3.upload.wait_for_upload_port=false - -atd147_s3.serial.disableDTR=false -atd147_s3.serial.disableRTS=false - -atd147_s3.build.tarch=xtensa -atd147_s3.build.bootloader_addr=0x0 -atd147_s3.build.target=esp32s3 -atd147_s3.build.mcu=esp32s3 -atd147_s3.build.core=esp32 -atd147_s3.build.variant=atd147_s3 -atd147_s3.build.board=ATD143_S3 - -atd147_s3.build.usb_mode=1 -atd147_s3.build.cdc_on_boot=0 -atd147_s3.build.msc_on_boot=0 -atd147_s3.build.dfu_on_boot=0 -atd147_s3.build.f_cpu=240000000L -atd147_s3.build.flash_size=8MB -atd147_s3.build.flash_freq=80m -atd147_s3.build.flash_mode=dio -atd147_s3.build.boot=qio -atd147_s3.build.boot_freq=80m -atd147_s3.build.partitions=default_8MB -atd147_s3.build.defines= -atd147_s3.build.loop_core= -atd147_s3.build.event_core= -atd147_s3.build.psram_type=opi -atd147_s3.build.memory_type={build.boot}_{build.psram_type} - -## IDE 2.0 Seems to not update the value -atd147_s3.menu.JTAGAdapter.default=Disabled -atd147_s3.menu.JTAGAdapter.default.build.copy_jtag_files=0 -atd147_s3.menu.JTAGAdapter.builtin=Integrated USB JTAG -atd147_s3.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg -atd147_s3.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 -atd147_s3.menu.JTAGAdapter.external=FTDI Adapter -atd147_s3.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg -atd147_s3.menu.JTAGAdapter.external.build.copy_jtag_files=1 -atd147_s3.menu.JTAGAdapter.bridge=ESP USB Bridge -atd147_s3.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg -atd147_s3.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 - -atd147_s3.menu.PSRAM.disabled=Disabled -atd147_s3.menu.PSRAM.disabled.build.defines= -atd147_s3.menu.PSRAM.disabled.build.psram_type=opi -atd147_s3.menu.PSRAM.enabled=Enable -atd147_s3.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -atd147_s3.menu.PSRAM.enabled.build.psram_type=opi - -atd147_s3.menu.LoopCore.1=Core 1 -atd147_s3.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -atd147_s3.menu.LoopCore.0=Core 0 -atd147_s3.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -atd147_s3.menu.EventsCore.1=Core 1 -atd147_s3.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -atd147_s3.menu.EventsCore.0=Core 0 -atd147_s3.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -atd147_s3.menu.USBMode.hwcdc=Hardware CDC and JTAG -atd147_s3.menu.USBMode.hwcdc.build.usb_mode=1 -atd147_s3.menu.USBMode.default=USB-OTG (TinyUSB) -atd147_s3.menu.USBMode.default.build.usb_mode=0 - -atd147_s3.menu.CDCOnBoot.default=Disabled -atd147_s3.menu.CDCOnBoot.default.build.cdc_on_boot=0 -atd147_s3.menu.CDCOnBoot.cdc=Enabled -atd147_s3.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 - -atd147_s3.menu.MSCOnBoot.default=Disabled -atd147_s3.menu.MSCOnBoot.default.build.msc_on_boot=0 -atd147_s3.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -atd147_s3.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -atd147_s3.menu.DFUOnBoot.default=Disabled -atd147_s3.menu.DFUOnBoot.default.build.dfu_on_boot=0 -atd147_s3.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -atd147_s3.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -atd147_s3.menu.UploadMode.default=UART0 / Hardware CDC -atd147_s3.menu.UploadMode.default.upload.use_1200bps_touch=false -atd147_s3.menu.UploadMode.default.upload.wait_for_upload_port=false -atd147_s3.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -atd147_s3.menu.UploadMode.cdc.upload.use_1200bps_touch=true -atd147_s3.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -atd147_s3.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -atd147_s3.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -atd147_s3.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -atd147_s3.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -atd147_s3.menu.PartitionScheme.minimal.build.partitions=minimal -atd147_s3.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -atd147_s3.menu.PartitionScheme.no_ota.build.partitions=no_ota -atd147_s3.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -atd147_s3.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -atd147_s3.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -atd147_s3.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -atd147_s3.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -atd147_s3.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -atd147_s3.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -atd147_s3.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -atd147_s3.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -atd147_s3.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -atd147_s3.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -atd147_s3.menu.PartitionScheme.huge_app.build.partitions=huge_app -atd147_s3.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -atd147_s3.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -atd147_s3.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -atd147_s3.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 -atd147_s3.menu.PartitionScheme.rainmaker=RainMaker -atd147_s3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker -atd147_s3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 - -atd147_s3.menu.CPUFreq.240=240MHz (WiFi) -atd147_s3.menu.CPUFreq.240.build.f_cpu=240000000L -atd147_s3.menu.CPUFreq.160=160MHz (WiFi) -atd147_s3.menu.CPUFreq.160.build.f_cpu=160000000L -atd147_s3.menu.CPUFreq.80=80MHz (WiFi) -atd147_s3.menu.CPUFreq.80.build.f_cpu=80000000L -atd147_s3.menu.CPUFreq.40=40MHz -atd147_s3.menu.CPUFreq.40.build.f_cpu=40000000L -atd147_s3.menu.CPUFreq.20=20MHz -atd147_s3.menu.CPUFreq.20.build.f_cpu=20000000L -atd147_s3.menu.CPUFreq.10=10MHz -atd147_s3.menu.CPUFreq.10.build.f_cpu=10000000L - -atd147_s3.menu.UploadSpeed.921600=921600 -atd147_s3.menu.UploadSpeed.921600.upload.speed=921600 -atd147_s3.menu.UploadSpeed.115200=115200 -atd147_s3.menu.UploadSpeed.115200.upload.speed=115200 -atd147_s3.menu.UploadSpeed.256000.windows=256000 -atd147_s3.menu.UploadSpeed.256000.upload.speed=256000 -atd147_s3.menu.UploadSpeed.230400.windows.upload.speed=256000 -atd147_s3.menu.UploadSpeed.230400=230400 -atd147_s3.menu.UploadSpeed.230400.upload.speed=230400 -atd147_s3.menu.UploadSpeed.460800.linux=460800 -atd147_s3.menu.UploadSpeed.460800.macosx=460800 -atd147_s3.menu.UploadSpeed.460800.upload.speed=460800 -atd147_s3.menu.UploadSpeed.512000.windows=512000 -atd147_s3.menu.UploadSpeed.512000.upload.speed=512000 - -atd147_s3.menu.DebugLevel.none=None -atd147_s3.menu.DebugLevel.none.build.code_debug=0 -atd147_s3.menu.DebugLevel.error=Error -atd147_s3.menu.DebugLevel.error.build.code_debug=1 -atd147_s3.menu.DebugLevel.warn=Warn -atd147_s3.menu.DebugLevel.warn.build.code_debug=2 -atd147_s3.menu.DebugLevel.info=Info -atd147_s3.menu.DebugLevel.info.build.code_debug=3 -atd147_s3.menu.DebugLevel.debug=Debug -atd147_s3.menu.DebugLevel.debug.build.code_debug=4 -atd147_s3.menu.DebugLevel.verbose=Verbose -atd147_s3.menu.DebugLevel.verbose.build.code_debug=5 - -atd147_s3.menu.EraseFlash.none=Disabled -atd147_s3.menu.EraseFlash.none.upload.erase_cmd= -atd147_s3.menu.EraseFlash.all=Enabled -atd147_s3.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# ESP32-S3 PowerFeather - -esp32s3_powerfeather.name=ESP32-S3 PowerFeather -esp32s3_powerfeather.vid.0=0x303a -esp32s3_powerfeather.pid.0=0x81BB - -esp32s3_powerfeather.bootloader.tool=esptool_py -esp32s3_powerfeather.bootloader.tool.default=esptool_py - -esp32s3_powerfeather.upload.tool=esptool_py -esp32s3_powerfeather.upload.tool.default=esptool_py -esp32s3_powerfeather.upload.tool.network=esp_ota - -esp32s3_powerfeather.upload.maximum_size=1310720 -esp32s3_powerfeather.upload.maximum_data_size=327680 -esp32s3_powerfeather.upload.flags= -esp32s3_powerfeather.upload.extra_flags= -esp32s3_powerfeather.upload.use_1200bps_touch=false -esp32s3_powerfeather.upload.wait_for_upload_port=false - -esp32s3_powerfeather.serial.disableDTR=false -esp32s3_powerfeather.serial.disableRTS=false - -esp32s3_powerfeather.build.tarch=xtensa -esp32s3_powerfeather.build.bootloader_addr=0x0 -esp32s3_powerfeather.build.target=esp32s3 -esp32s3_powerfeather.build.mcu=esp32s3 -esp32s3_powerfeather.build.core=esp32 -esp32s3_powerfeather.build.variant=esp32s3_powerfeather -esp32s3_powerfeather.build.board=ESP32S3_POWERFEATHER - -esp32s3_powerfeather.build.usb_mode=1 -esp32s3_powerfeather.build.cdc_on_boot=1 -esp32s3_powerfeather.build.msc_on_boot=0 -esp32s3_powerfeather.build.dfu_on_boot=0 -esp32s3_powerfeather.build.f_cpu=240000000L -esp32s3_powerfeather.build.flash_size=8MB -esp32s3_powerfeather.build.flash_freq=80m -esp32s3_powerfeather.build.flash_mode=dio -esp32s3_powerfeather.build.boot=qio -esp32s3_powerfeather.build.boot_freq=80m -esp32s3_powerfeather.build.partitions=default_8MB -esp32s3_powerfeather.build.defines= -esp32s3_powerfeather.build.loop_core= -esp32s3_powerfeather.build.event_core= -esp32s3_powerfeather.build.flash_type=qio -esp32s3_powerfeather.build.psram_type=qspi -esp32s3_powerfeather.build.memory_type={build.flash_type}_{build.psram_type} - -esp32s3_powerfeather.menu.PSRAM.disabled=Disabled -esp32s3_powerfeather.menu.PSRAM.disabled.build.defines= -esp32s3_powerfeather.menu.PSRAM.disabled.build.psram_type=qspi -esp32s3_powerfeather.menu.PSRAM.enabled=QSPI PSRAM -esp32s3_powerfeather.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -esp32s3_powerfeather.menu.PSRAM.enabled.build.psram_type=qspi - -esp32s3_powerfeather.menu.FlashMode.qio=QIO 80MHz -esp32s3_powerfeather.menu.FlashMode.qio.build.flash_mode=dio -esp32s3_powerfeather.menu.FlashMode.qio.build.boot=qio -esp32s3_powerfeather.menu.FlashMode.qio.build.boot_freq=80m -esp32s3_powerfeather.menu.FlashMode.qio.build.flash_freq=80m -esp32s3_powerfeather.menu.FlashMode.qio120=QIO 120MHz -esp32s3_powerfeather.menu.FlashMode.qio120.build.flash_mode=dio -esp32s3_powerfeather.menu.FlashMode.qio120.build.boot=qio -esp32s3_powerfeather.menu.FlashMode.qio120.build.boot_freq=120m -esp32s3_powerfeather.menu.FlashMode.qio120.build.flash_freq=80m -esp32s3_powerfeather.menu.FlashMode.dio=DIO 80MHz -esp32s3_powerfeather.menu.FlashMode.dio.build.flash_mode=dio -esp32s3_powerfeather.menu.FlashMode.dio.build.boot=dio -esp32s3_powerfeather.menu.FlashMode.dio.build.boot_freq=80m -esp32s3_powerfeather.menu.FlashMode.dio.build.flash_freq=80m - -esp32s3_powerfeather.menu.LoopCore.1=Core 1 -esp32s3_powerfeather.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1 -esp32s3_powerfeather.menu.LoopCore.0=Core 0 -esp32s3_powerfeather.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0 - -esp32s3_powerfeather.menu.EventsCore.1=Core 1 -esp32s3_powerfeather.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -esp32s3_powerfeather.menu.EventsCore.0=Core 0 -esp32s3_powerfeather.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0 - -esp32s3_powerfeather.menu.USBMode.hwcdc=Hardware CDC and JTAG -esp32s3_powerfeather.menu.USBMode.hwcdc.build.usb_mode=1 -esp32s3_powerfeather.menu.USBMode.default=USB-OTG (TinyUSB) -esp32s3_powerfeather.menu.USBMode.default.build.usb_mode=0 - -esp32s3_powerfeather.menu.CDCOnBoot.cdc=Enabled -esp32s3_powerfeather.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -esp32s3_powerfeather.menu.CDCOnBoot.default=Disabled -esp32s3_powerfeather.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -esp32s3_powerfeather.menu.MSCOnBoot.default=Disabled -esp32s3_powerfeather.menu.MSCOnBoot.default.build.msc_on_boot=0 -esp32s3_powerfeather.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode) -esp32s3_powerfeather.menu.MSCOnBoot.msc.build.msc_on_boot=1 - -esp32s3_powerfeather.menu.DFUOnBoot.default=Disabled -esp32s3_powerfeather.menu.DFUOnBoot.default.build.dfu_on_boot=0 -esp32s3_powerfeather.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode) -esp32s3_powerfeather.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -esp32s3_powerfeather.menu.UploadMode.default=UART0 / Hardware CDC -esp32s3_powerfeather.menu.UploadMode.default.upload.use_1200bps_touch=false -esp32s3_powerfeather.menu.UploadMode.default.upload.wait_for_upload_port=false -esp32s3_powerfeather.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB) -esp32s3_powerfeather.menu.UploadMode.cdc.upload.use_1200bps_touch=true -esp32s3_powerfeather.menu.UploadMode.cdc.upload.wait_for_upload_port=true - -esp32s3_powerfeather.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) -esp32s3_powerfeather.menu.PartitionScheme.default_8MB.build.partitions=default_8MB -esp32s3_powerfeather.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 -esp32s3_powerfeather.menu.PartitionScheme.default_ffat_8MB=8M with ffat (3MB APP/1.5MB FATFS) -esp32s3_powerfeather.menu.PartitionScheme.default_ffat_8MB.build.partitions=default_ffat_8MB -esp32s3_powerfeather.menu.PartitionScheme.default_ffat_8MB.upload.maximum_size=3342336 -esp32s3_powerfeather.menu.PartitionScheme.large_spiffs_8MB=Large SPIFFS (1.2MB APP/5.3MB SPIFFS) -esp32s3_powerfeather.menu.PartitionScheme.large_spiffs_8MB.build.partitions=large_spiffs_8MB -esp32s3_powerfeather.menu.PartitionScheme.large_spiffs_8MB.upload.maximum_size=1310720 -esp32s3_powerfeather.menu.PartitionScheme.large_ffat_8MB=Large FFAT (1.2MB APP/5.3MB FATFS) -esp32s3_powerfeather.menu.PartitionScheme.large_ffat_8MB.build.partitions=large_ffat_8MB -esp32s3_powerfeather.menu.PartitionScheme.large_ffat_8MB.upload.maximum_size=1310720 -esp32s3_powerfeather.menu.PartitionScheme.max_app_8MB=Maximum APP (7.9MB APP No OTA/No FS) -esp32s3_powerfeather.menu.PartitionScheme.max_app_8MB.build.partitions=max_app_8MB -esp32s3_powerfeather.menu.PartitionScheme.max_app_8MB.upload.maximum_size=8257536 - -esp32s3_powerfeather.menu.CPUFreq.240=240MHz (WiFi) -esp32s3_powerfeather.menu.CPUFreq.240.build.f_cpu=240000000L -esp32s3_powerfeather.menu.CPUFreq.160=160MHz (WiFi) -esp32s3_powerfeather.menu.CPUFreq.160.build.f_cpu=160000000L -esp32s3_powerfeather.menu.CPUFreq.80=80MHz (WiFi) -esp32s3_powerfeather.menu.CPUFreq.80.build.f_cpu=80000000L -esp32s3_powerfeather.menu.CPUFreq.40=40MHz -esp32s3_powerfeather.menu.CPUFreq.40.build.f_cpu=40000000L -esp32s3_powerfeather.menu.CPUFreq.20=20MHz -esp32s3_powerfeather.menu.CPUFreq.20.build.f_cpu=20000000L -esp32s3_powerfeather.menu.CPUFreq.10=10MHz -esp32s3_powerfeather.menu.CPUFreq.10.build.f_cpu=10000000L - -esp32s3_powerfeather.menu.UploadSpeed.921600=921600 -esp32s3_powerfeather.menu.UploadSpeed.921600.upload.speed=921600 -esp32s3_powerfeather.menu.UploadSpeed.115200=115200 -esp32s3_powerfeather.menu.UploadSpeed.115200.upload.speed=115200 -esp32s3_powerfeather.menu.UploadSpeed.256000.windows=256000 -esp32s3_powerfeather.menu.UploadSpeed.256000.upload.speed=256000 -esp32s3_powerfeather.menu.UploadSpeed.230400.windows.upload.speed=256000 -esp32s3_powerfeather.menu.UploadSpeed.230400=230400 -esp32s3_powerfeather.menu.UploadSpeed.230400.upload.speed=230400 -esp32s3_powerfeather.menu.UploadSpeed.460800.linux=460800 -esp32s3_powerfeather.menu.UploadSpeed.460800.macosx=460800 -esp32s3_powerfeather.menu.UploadSpeed.460800.upload.speed=460800 -esp32s3_powerfeather.menu.UploadSpeed.512000.windows=512000 -esp32s3_powerfeather.menu.UploadSpeed.512000.upload.speed=512000 - -esp32s3_powerfeather.menu.DebugLevel.none=None -esp32s3_powerfeather.menu.DebugLevel.none.build.code_debug=0 -esp32s3_powerfeather.menu.DebugLevel.error=Error -esp32s3_powerfeather.menu.DebugLevel.error.build.code_debug=1 -esp32s3_powerfeather.menu.DebugLevel.warn=Warn -esp32s3_powerfeather.menu.DebugLevel.warn.build.code_debug=2 -esp32s3_powerfeather.menu.DebugLevel.info=Info -esp32s3_powerfeather.menu.DebugLevel.info.build.code_debug=3 -esp32s3_powerfeather.menu.DebugLevel.debug=Debug -esp32s3_powerfeather.menu.DebugLevel.debug.build.code_debug=4 -esp32s3_powerfeather.menu.DebugLevel.verbose=Verbose -esp32s3_powerfeather.menu.DebugLevel.verbose.build.code_debug=5 - -esp32s3_powerfeather.menu.EraseFlash.none=Disabled -esp32s3_powerfeather.menu.EraseFlash.none.upload.erase_cmd= -esp32s3_powerfeather.menu.EraseFlash.all=Enabled -esp32s3_powerfeather.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## -# senseBox MCU ESP32-S2 - -sensebox_mcu_esp32s2.name=senseBox MCU-S2 ESP32-S2 -sensebox_mcu_esp32s2.vid.0=0x303A -sensebox_mcu_esp32s2.pid.0=0x81B8 -sensebox_mcu_esp32s2.vid.1=0x303A -sensebox_mcu_esp32s2.pid.1=0x81B9 -sensebox_mcu_esp32s2.vid.2=0x303A -sensebox_mcu_esp32s2.pid.2=0x81BA - -sensebox_mcu_esp32s2.bootloader.tool=esptool_py -sensebox_mcu_esp32s2.bootloader.tool.default=esptool_py - -sensebox_mcu_esp32s2.upload.tool=esptool_py -sensebox_mcu_esp32s2.upload.tool.default=esptool_py -sensebox_mcu_esp32s2.upload.tool.network=esp_ota - -sensebox_mcu_esp32s2.upload.maximum_size=1310720 -sensebox_mcu_esp32s2.upload.maximum_data_size=327680 -sensebox_mcu_esp32s2.upload.flags= -sensebox_mcu_esp32s2.upload.extra_flags= -sensebox_mcu_esp32s2.upload.use_1200bps_touch=true -sensebox_mcu_esp32s2.upload.wait_for_upload_port=true - -sensebox_mcu_esp32s2.serial.disableDTR=false -sensebox_mcu_esp32s2.serial.disableRTS=false - -sensebox_mcu_esp32s2.build.tarch=xtensa -sensebox_mcu_esp32s2.build.bootloader_addr=0x1000 -sensebox_mcu_esp32s2.build.target=esp32s2 -sensebox_mcu_esp32s2.build.mcu=esp32s2 -sensebox_mcu_esp32s2.build.core=esp32 -sensebox_mcu_esp32s2.build.variant=sensebox_mcu_esp32s2 -sensebox_mcu_esp32s2.build.board=SENSEBOX_MCU_ESP32S2 - -sensebox_mcu_esp32s2.build.cdc_on_boot=1 -sensebox_mcu_esp32s2.build.msc_on_boot=1 -sensebox_mcu_esp32s2.build.dfu_on_boot=0 -sensebox_mcu_esp32s2.build.f_cpu=240000000L -sensebox_mcu_esp32s2.build.flash_size=4MB -sensebox_mcu_esp32s2.build.flash_freq=80m -sensebox_mcu_esp32s2.build.flash_mode=dio -sensebox_mcu_esp32s2.build.boot=qio -sensebox_mcu_esp32s2.build.partitions=default -sensebox_mcu_esp32s2.build.defines= - -sensebox_mcu_esp32s2.menu.CDCOnBoot.cdc=Enabled -sensebox_mcu_esp32s2.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 -sensebox_mcu_esp32s2.menu.CDCOnBoot.default=Disabled -sensebox_mcu_esp32s2.menu.CDCOnBoot.default.build.cdc_on_boot=0 - -sensebox_mcu_esp32s2.menu.MSCOnBoot.msc=Enabled -sensebox_mcu_esp32s2.menu.MSCOnBoot.msc.build.msc_on_boot=1 -sensebox_mcu_esp32s2.menu.MSCOnBoot.default=Disabled -sensebox_mcu_esp32s2.menu.MSCOnBoot.default.build.msc_on_boot=0 - -sensebox_mcu_esp32s2.menu.DFUOnBoot.default=Disabled -sensebox_mcu_esp32s2.menu.DFUOnBoot.default.build.dfu_on_boot=0 -sensebox_mcu_esp32s2.menu.DFUOnBoot.dfu=Enabled -sensebox_mcu_esp32s2.menu.DFUOnBoot.dfu.build.dfu_on_boot=1 - -sensebox_mcu_esp32s2.menu.UploadMode.cdc=Internal USB -sensebox_mcu_esp32s2.menu.UploadMode.cdc.upload.use_1200bps_touch=true -sensebox_mcu_esp32s2.menu.UploadMode.cdc.upload.wait_for_upload_port=true -sensebox_mcu_esp32s2.menu.UploadMode.default=UART0 -sensebox_mcu_esp32s2.menu.UploadMode.default.upload.use_1200bps_touch=false -sensebox_mcu_esp32s2.menu.UploadMode.default.upload.wait_for_upload_port=false - -sensebox_mcu_esp32s2.menu.PSRAM.enabled=Enabled -sensebox_mcu_esp32s2.menu.PSRAM.enabled.build.defines=-DBOARD_HAS_PSRAM -sensebox_mcu_esp32s2.menu.PSRAM.disabled=Disabled -sensebox_mcu_esp32s2.menu.PSRAM.disabled.build.defines= - -sensebox_mcu_esp32s2.menu.PartitionScheme.tinyuf2=TinyUF2 4MB (1.3MB APP/960KB FATFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2 -sensebox_mcu_esp32s2.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-4MB-tinyuf2 -sensebox_mcu_esp32s2.menu.PartitionScheme.tinyuf2.upload.maximum_size=1441792 -sensebox_mcu_esp32s2.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x2d0000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin" -sensebox_mcu_esp32s2.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.default.build.partitions=default -sensebox_mcu_esp32s2.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -sensebox_mcu_esp32s2.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.minimal.build.partitions=minimal -sensebox_mcu_esp32s2.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.no_ota.build.partitions=no_ota -sensebox_mcu_esp32s2.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -sensebox_mcu_esp32s2.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -sensebox_mcu_esp32s2.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.huge_app.build.partitions=huge_app -sensebox_mcu_esp32s2.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 -sensebox_mcu_esp32s2.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) -sensebox_mcu_esp32s2.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs -sensebox_mcu_esp32s2.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 - -sensebox_mcu_esp32s2.menu.CPUFreq.240=240MHz (WiFi) -sensebox_mcu_esp32s2.menu.CPUFreq.240.build.f_cpu=240000000L -sensebox_mcu_esp32s2.menu.CPUFreq.160=160MHz (WiFi) -sensebox_mcu_esp32s2.menu.CPUFreq.160.build.f_cpu=160000000L -sensebox_mcu_esp32s2.menu.CPUFreq.80=80MHz (WiFi) -sensebox_mcu_esp32s2.menu.CPUFreq.80.build.f_cpu=80000000L -sensebox_mcu_esp32s2.menu.CPUFreq.40=40MHz -sensebox_mcu_esp32s2.menu.CPUFreq.40.build.f_cpu=40000000L -sensebox_mcu_esp32s2.menu.CPUFreq.20=20MHz -sensebox_mcu_esp32s2.menu.CPUFreq.20.build.f_cpu=20000000L -sensebox_mcu_esp32s2.menu.CPUFreq.10=10MHz -sensebox_mcu_esp32s2.menu.CPUFreq.10.build.f_cpu=10000000L - -sensebox_mcu_esp32s2.menu.FlashMode.qio=QIO -sensebox_mcu_esp32s2.menu.FlashMode.qio.build.flash_mode=dio -sensebox_mcu_esp32s2.menu.FlashMode.qio.build.boot=qio -sensebox_mcu_esp32s2.menu.FlashMode.dio=DIO -sensebox_mcu_esp32s2.menu.FlashMode.dio.build.flash_mode=dio -sensebox_mcu_esp32s2.menu.FlashMode.dio.build.boot=dio -sensebox_mcu_esp32s2.menu.FlashMode.qout=QOUT -sensebox_mcu_esp32s2.menu.FlashMode.qout.build.flash_mode=dout -sensebox_mcu_esp32s2.menu.FlashMode.qout.build.boot=qout -sensebox_mcu_esp32s2.menu.FlashMode.dout=DOUT -sensebox_mcu_esp32s2.menu.FlashMode.dout.build.flash_mode=dout -sensebox_mcu_esp32s2.menu.FlashMode.dout.build.boot=dout - -sensebox_mcu_esp32s2.menu.FlashFreq.80=80MHz -sensebox_mcu_esp32s2.menu.FlashFreq.80.build.flash_freq=80m -sensebox_mcu_esp32s2.menu.FlashFreq.40=40MHz -sensebox_mcu_esp32s2.menu.FlashFreq.40.build.flash_freq=40m - -sensebox_mcu_esp32s2.menu.FlashSize.4M=4MB (32Mb) -sensebox_mcu_esp32s2.menu.FlashSize.4M.build.flash_size=4MB - -sensebox_mcu_esp32s2.menu.UploadSpeed.921600=921600 -sensebox_mcu_esp32s2.menu.UploadSpeed.921600.upload.speed=921600 -sensebox_mcu_esp32s2.menu.UploadSpeed.115200=115200 -sensebox_mcu_esp32s2.menu.UploadSpeed.115200.upload.speed=115200 -sensebox_mcu_esp32s2.menu.UploadSpeed.256000.windows=256000 -sensebox_mcu_esp32s2.menu.UploadSpeed.256000.upload.speed=256000 -sensebox_mcu_esp32s2.menu.UploadSpeed.230400.windows.upload.speed=256000 -sensebox_mcu_esp32s2.menu.UploadSpeed.230400=230400 -sensebox_mcu_esp32s2.menu.UploadSpeed.230400.upload.speed=230400 -sensebox_mcu_esp32s2.menu.UploadSpeed.460800.linux=460800 -sensebox_mcu_esp32s2.menu.UploadSpeed.460800.macosx=460800 -sensebox_mcu_esp32s2.menu.UploadSpeed.460800.upload.speed=460800 -sensebox_mcu_esp32s2.menu.UploadSpeed.512000.windows=512000 -sensebox_mcu_esp32s2.menu.UploadSpeed.512000.upload.speed=512000 - -sensebox_mcu_esp32s2.menu.DebugLevel.none=None -sensebox_mcu_esp32s2.menu.DebugLevel.none.build.code_debug=0 -sensebox_mcu_esp32s2.menu.DebugLevel.error=Error -sensebox_mcu_esp32s2.menu.DebugLevel.error.build.code_debug=1 -sensebox_mcu_esp32s2.menu.DebugLevel.warn=Warn -sensebox_mcu_esp32s2.menu.DebugLevel.warn.build.code_debug=2 -sensebox_mcu_esp32s2.menu.DebugLevel.info=Info -sensebox_mcu_esp32s2.menu.DebugLevel.info.build.code_debug=3 -sensebox_mcu_esp32s2.menu.DebugLevel.debug=Debug -sensebox_mcu_esp32s2.menu.DebugLevel.debug.build.code_debug=4 -sensebox_mcu_esp32s2.menu.DebugLevel.verbose=Verbose -sensebox_mcu_esp32s2.menu.DebugLevel.verbose.build.code_debug=5 - -sensebox_mcu_esp32s2.menu.EraseFlash.none=Disabled -sensebox_mcu_esp32s2.menu.EraseFlash.none.upload.erase_cmd= -sensebox_mcu_esp32s2.menu.EraseFlash.all=Enabled -sensebox_mcu_esp32s2.menu.EraseFlash.all.upload.erase_cmd=-e - -############################################################## - -nano_nora.name=Arduino Nano ESP32 -nano_nora.vid.0=0x2341 -nano_nora.pid.0=0x0070 -nano_nora.upload_port.0.vid=0x2341 -nano_nora.upload_port.0.pid=0x0070 - -nano_nora.bootloader.tool=esptool_py -nano_nora.bootloader.tool.default=esptool_py - -nano_nora.upload.tool=dfu-util -nano_nora.upload.tool.default=dfu-util -nano_nora.upload.tool.network=esp_ota -nano_nora.upload.protocol=serial -nano_nora.upload.maximum_size=3145728 -nano_nora.upload.maximum_data_size=327680 -nano_nora.upload.use_1200bps_touch=false -nano_nora.upload.wait_for_upload_port=false - -nano_nora.serial.disableDTR=false -nano_nora.serial.disableRTS=false - -nano_nora.build.tarch=xtensa -nano_nora.build.bootloader_addr=0x0 -nano_nora.build.target=esp32s3 -nano_nora.build.mcu=esp32s3 -nano_nora.build.core=esp32 -nano_nora.build.variant=arduino_nano_nora -nano_nora.build.board=NANO_ESP32 -nano_nora.build.code_debug=0 - -nano_nora.build.usb_mode=0 -nano_nora.build.cdc_on_boot=1 -nano_nora.build.msc_on_boot=0 -nano_nora.build.dfu_on_boot=1 -nano_nora.build.f_cpu=240000000L -nano_nora.build.flash_size=16MB -nano_nora.build.flash_freq=80m -nano_nora.build.flash_mode=dio -nano_nora.build.boot=qio -nano_nora.build.boot_freq=80m -nano_nora.build.partitions=app3M_fat9M_fact512k_16MB -nano_nora.build.defines=-DBOARD_HAS_PIN_REMAP {build.disable_pin_remap} -DBOARD_HAS_PSRAM '-DUSB_MANUFACTURER="Arduino"' '-DUSB_PRODUCT="Nano ESP32"' -nano_nora.build.loop_core=-DARDUINO_RUNNING_CORE=1 -nano_nora.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1 -nano_nora.build.psram_type=opi -nano_nora.build.memory_type={build.boot}_{build.psram_type} -nano_nora.build.disable_pin_remap= - -nano_nora.tools.esptool_py.program.pattern_args=--chip {build.mcu} --port "{serial.port}" --before default_reset --after hard_reset write_flash -z --flash_mode {build.flash_mode} --flash_freq {build.flash_freq} --flash_size {build.flash_size} {build.bootloader_addr} "{build.path}/{build.project_name}.bootloader.bin" 0x8000 "{build.path}/{build.project_name}.partitions.bin" 0xe000 "{runtime.platform.path}/tools/partitions/boot_app0.bin" 0xf70000 "{build.variant.path}/extra/nora_recovery/nora_recovery.ino.bin" 0x10000 "{build.path}/{build.project_name}.bin" -nano_nora.tools.esptool_py.erase.pattern_args=--chip {build.mcu} --port "{serial.port}" --before default_reset --after hard_reset erase_flash - -nano_nora.menu.PartitionScheme.default=With FAT partition (default) -nano_nora.menu.PartitionScheme.spiffs=With SPIFFS partition (advanced) -nano_nora.menu.PartitionScheme.spiffs.build.partitions=app3M_spiffs9M_fact512k_16MB - -nano_nora.menu.PinNumbers.default=By Arduino pin (default) -nano_nora.menu.PinNumbers.byGPIONumber=By GPIO number (legacy) -nano_nora.menu.PinNumbers.byGPIONumber.build.disable_pin_remap=-DBOARD_USES_HW_GPIO_NUMBERS - -nano_nora.menu.USBMode.default=Normal mode (TinyUSB) -nano_nora.menu.USBMode.hwcdc=Debug mode (Hardware CDC) -nano_nora.menu.USBMode.hwcdc.build.usb_mode=1 -nano_nora.menu.USBMode.hwcdc.build.copy_jtag_files=1 -nano_nora.menu.USBMode.hwcdc.build.openocdscript=esp32s3-builtin.cfg -nano_nora.menu.USBMode.hwcdc.build.debugconfig=esp32s3-arduino.json - -############################################################## - -makergo_c3_supermini.name=MakerGO ESP32 C3 SuperMini -makergo_c3_supermini.vid.0=0x303a -makergo_c3_supermini.pid.0=0x1001 - -makergo_c3_supermini.bootloader.tool=esptool_py -makergo_c3_supermini.bootloader.tool.default=esptool_py - -makergo_c3_supermini.upload.tool=esptool_py -makergo_c3_supermini.upload.tool.default=esptool_py -makergo_c3_supermini.upload.tool.network=esp_ota - -makergo_c3_supermini.upload.maximum_size=1310720 -makergo_c3_supermini.upload.maximum_data_size=327680 -makergo_c3_supermini.upload.flags= -makergo_c3_supermini.upload.extra_flags= -makergo_c3_supermini.upload.use_1200bps_touch=false -makergo_c3_supermini.upload.wait_for_upload_port=false - -makergo_c3_supermini.serial.disableDTR=true -makergo_c3_supermini.serial.disableRTS=true - -makergo_c3_supermini.build.tarch=riscv32 -makergo_c3_supermini.build.target=esp -makergo_c3_supermini.build.mcu=esp32c3 -makergo_c3_supermini.build.core=esp32 -makergo_c3_supermini.build.variant=makergo_c3_supermini -makergo_c3_supermini.build.board=MAKERGO_C3_SUPERMINI -makergo_c3_supermini.build.bootloader_addr=0x0 - -makergo_c3_supermini.build.cdc_on_boot=1 -makergo_c3_supermini.build.f_cpu=160000000L -makergo_c3_supermini.build.flash_size=4MB -makergo_c3_supermini.build.flash_freq=80m -makergo_c3_supermini.build.flash_mode=dio -makergo_c3_supermini.build.boot=qio -makergo_c3_supermini.build.partitions=default -makergo_c3_supermini.build.defines= - -makergo_c3_supermini.menu.CDCOnBoot.default=Enabled -makergo_c3_supermini.menu.CDCOnBoot.default.build.cdc_on_boot=1 -makergo_c3_supermini.menu.CDCOnBoot.dis_cdc=Disabled -makergo_c3_supermini.menu.CDCOnBoot.dis_cdc.build.cdc_on_boot=0 - -makergo_c3_supermini.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) -makergo_c3_supermini.menu.PartitionScheme.default.build.partitions=default -makergo_c3_supermini.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) -makergo_c3_supermini.menu.PartitionScheme.defaultffat.build.partitions=default_ffat -makergo_c3_supermini.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) -makergo_c3_supermini.menu.PartitionScheme.no_ota.build.partitions=no_ota -makergo_c3_supermini.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 -makergo_c3_supermini.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) -makergo_c3_supermini.menu.PartitionScheme.noota_3g.build.partitions=noota_3g -makergo_c3_supermini.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 -makergo_c3_supermini.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) -makergo_c3_supermini.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat -makergo_c3_supermini.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 -makergo_c3_supermini.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) -makergo_c3_supermini.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat -makergo_c3_supermini.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 -makergo_c3_supermini.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) -makergo_c3_supermini.menu.PartitionScheme.huge_app.build.partitions=huge_app -makergo_c3_supermini.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 - - -makergo_c3_supermini.menu.CPUFreq.160=160MHz (WiFi) -makergo_c3_supermini.menu.CPUFreq.160.build.f_cpu=160000000L -makergo_c3_supermini.menu.CPUFreq.80=80MHz (WiFi) -makergo_c3_supermini.menu.CPUFreq.80.build.f_cpu=80000000L -makergo_c3_supermini.menu.CPUFreq.40=40MHz -makergo_c3_supermini.menu.CPUFreq.40.build.f_cpu=40000000L -makergo_c3_supermini.menu.CPUFreq.20=20MHz -makergo_c3_supermini.menu.CPUFreq.20.build.f_cpu=20000000L -makergo_c3_supermini.menu.CPUFreq.10=10MHz -makergo_c3_supermini.menu.CPUFreq.10.build.f_cpu=10000000L - - -makergo_c3_supermini.menu.FlashFreq.80=80MHz -makergo_c3_supermini.menu.FlashFreq.80.build.flash_freq=80m -makergo_c3_supermini.menu.FlashFreq.40=40MHz -makergo_c3_supermini.menu.FlashFreq.40.build.flash_freq=40m - -makergo_c3_supermini.menu.UploadSpeed.921600=921600 -makergo_c3_supermini.menu.UploadSpeed.921600.upload.speed=921600 -makergo_c3_supermini.menu.UploadSpeed.115200=115200 -makergo_c3_supermini.menu.UploadSpeed.115200.upload.speed=115200 -makergo_c3_supermini.menu.UploadSpeed.256000.windows=256000 -makergo_c3_supermini.menu.UploadSpeed.256000.upload.speed=256000 -makergo_c3_supermini.menu.UploadSpeed.230400.windows.upload.speed=256000 -makergo_c3_supermini.menu.UploadSpeed.230400=230400 -makergo_c3_supermini.menu.UploadSpeed.230400.upload.speed=230400 -makergo_c3_supermini.menu.UploadSpeed.460800.linux=460800 -makergo_c3_supermini.menu.UploadSpeed.460800.macosx=460800 -makergo_c3_supermini.menu.UploadSpeed.460800.upload.speed=460800 -makergo_c3_supermini.menu.UploadSpeed.512000.windows=512000 -makergo_c3_supermini.menu.UploadSpeed.512000.upload.speed=512000 - -makergo_c3_supermini.menu.DebugLevel.none=None -makergo_c3_supermini.menu.DebugLevel.none.build.code_debug=0 -makergo_c3_supermini.menu.DebugLevel.error=Error -makergo_c3_supermini.menu.DebugLevel.error.build.code_debug=1 -makergo_c3_supermini.menu.DebugLevel.warn=Warn -makergo_c3_supermini.menu.DebugLevel.warn.build.code_debug=2 -makergo_c3_supermini.menu.DebugLevel.info=Info -makergo_c3_supermini.menu.DebugLevel.info.build.code_debug=3 -makergo_c3_supermini.menu.DebugLevel.debug=Debug -makergo_c3_supermini.menu.DebugLevel.debug.build.code_debug=4 -makergo_c3_supermini.menu.DebugLevel.verbose=Verbose -makergo_c3_supermini.menu.DebugLevel.verbose.build.code_debug=5 - -makergo_c3_supermini.menu.EraseFlash.none=Disabled -makergo_c3_supermini.menu.EraseFlash.none.upload.erase_cmd= -makergo_c3_supermini.menu.EraseFlash.all=Enabled -makergo_c3_supermini.menu.EraseFlash.all.upload.erase_cmd=-e - +garaginator.name=GARAGINATOR +garaginator.vid.0=0x303a +garaginator.pid.0=0x1001 + +garaginator.bootloader.tool=esptool_py +garaginator.bootloader.tool.default=esptool_py + +garaginator.upload.tool=esptool_py +garaginator.upload.tool.default=esptool_py +garaginator.upload.tool.network=esp_ota + +garaginator.upload.maximum_size=1310720 +garaginator.upload.maximum_data_size=327680 +garaginator.upload.flags= +garaginator.upload.extra_flags= +garaginator.upload.use_1200bps_touch=false +garaginator.upload.wait_for_upload_port=false + +garaginator.serial.disableDTR=false +garaginator.serial.disableRTS=false + +garaginator.build.tarch=riscv32 +garaginator.build.target=esp +garaginator.build.mcu=esp32c3 +garaginator.build.core=esp32 +garaginator.build.variant=esp32c3 +garaginator.build.board=ESP32C3_DEV +garaginator.build.bootloader_addr=0x0 + +garaginator.build.cdc_on_boot=0 +garaginator.build.f_cpu=160000000L +garaginator.build.flash_size=4MB +garaginator.build.flash_freq=80m +garaginator.build.flash_mode=qio +garaginator.build.boot=qio +garaginator.build.partitions=default +garaginator.build.defines= + +## IDE 2.0 Seems to not update the value +garaginator.menu.JTAGAdapter.default=Disabled +garaginator.menu.JTAGAdapter.default.build.copy_jtag_files=0 +garaginator.menu.JTAGAdapter.builtin=Integrated USB JTAG +garaginator.menu.JTAGAdapter.builtin.build.openocdscript=esp32c3-builtin.cfg +garaginator.menu.JTAGAdapter.builtin.build.copy_jtag_files=1 +garaginator.menu.JTAGAdapter.external=FTDI Adapter +garaginator.menu.JTAGAdapter.external.build.openocdscript=esp32c3-ftdi.cfg +garaginator.menu.JTAGAdapter.external.build.copy_jtag_files=1 +garaginator.menu.JTAGAdapter.bridge=ESP USB Bridge +garaginator.menu.JTAGAdapter.bridge.build.openocdscript=esp32c3-bridge.cfg +garaginator.menu.JTAGAdapter.bridge.build.copy_jtag_files=1 + +garaginator.menu.CDCOnBoot.default=Disabled +garaginator.menu.CDCOnBoot.default.build.cdc_on_boot=0 +garaginator.menu.CDCOnBoot.cdc=Enabled +garaginator.menu.CDCOnBoot.cdc.build.cdc_on_boot=1 + +garaginator.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) +garaginator.menu.PartitionScheme.default.build.partitions=default +garaginator.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS) +garaginator.menu.PartitionScheme.defaultffat.build.partitions=default_ffat +garaginator.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS) +garaginator.menu.PartitionScheme.default_8MB.build.partitions=default_8MB +garaginator.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336 +garaginator.menu.PartitionScheme.minimal=Minimal (1.3MB APP/700KB SPIFFS) +garaginator.menu.PartitionScheme.minimal.build.partitions=minimal +garaginator.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS) +garaginator.menu.PartitionScheme.no_ota.build.partitions=no_ota +garaginator.menu.PartitionScheme.no_ota.upload.maximum_size=2097152 +garaginator.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS) +garaginator.menu.PartitionScheme.noota_3g.build.partitions=noota_3g +garaginator.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576 +garaginator.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS) +garaginator.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat +garaginator.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152 +garaginator.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS) +garaginator.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat +garaginator.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576 +garaginator.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS) +garaginator.menu.PartitionScheme.huge_app.build.partitions=huge_app +garaginator.menu.PartitionScheme.huge_app.upload.maximum_size=3145728 +garaginator.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS) +garaginator.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs +garaginator.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080 +garaginator.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS) +garaginator.menu.PartitionScheme.fatflash.build.partitions=ffat +garaginator.menu.PartitionScheme.fatflash.upload.maximum_size=2097152 +garaginator.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS) +garaginator.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB +garaginator.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728 +garaginator.menu.PartitionScheme.rainmaker=RainMaker +garaginator.menu.PartitionScheme.rainmaker.build.partitions=rainmaker +garaginator.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728 +garaginator.menu.PartitionScheme.zigbee_zczr=Zigbee ZCZR 4MB with spiffs +garaginator.menu.PartitionScheme.zigbee_zczr.build.partitions=zigbee_zczr +garaginator.menu.PartitionScheme.zigbee_zczr.upload.maximum_size=1310720 +garaginator.menu.PartitionScheme.custom=Custom +garaginator.menu.PartitionScheme.custom.build.partitions= +garaginator.menu.PartitionScheme.custom.upload.maximum_size=16777216 + +garaginator.menu.CPUFreq.160=160MHz (WiFi) +garaginator.menu.CPUFreq.160.build.f_cpu=160000000L +garaginator.menu.CPUFreq.80=80MHz (WiFi) +garaginator.menu.CPUFreq.80.build.f_cpu=80000000L +garaginator.menu.CPUFreq.40=40MHz +garaginator.menu.CPUFreq.40.build.f_cpu=40000000L +garaginator.menu.CPUFreq.20=20MHz +garaginator.menu.CPUFreq.20.build.f_cpu=20000000L +garaginator.menu.CPUFreq.10=10MHz +garaginator.menu.CPUFreq.10.build.f_cpu=10000000L + +garaginator.menu.FlashMode.qio=QIO +garaginator.menu.FlashMode.qio.build.flash_mode=dio +garaginator.menu.FlashMode.qio.build.boot=qio +garaginator.menu.FlashMode.dio=DIO +garaginator.menu.FlashMode.dio.build.flash_mode=dio +garaginator.menu.FlashMode.dio.build.boot=dio + +garaginator.menu.FlashFreq.80=80MHz +garaginator.menu.FlashFreq.80.build.flash_freq=80m +garaginator.menu.FlashFreq.40=40MHz +garaginator.menu.FlashFreq.40.build.flash_freq=40m + +garaginator.menu.FlashSize.4M=4MB (32Mb) +garaginator.menu.FlashSize.4M.build.flash_size=4MB +garaginator.menu.FlashSize.8M=8MB (64Mb) +garaginator.menu.FlashSize.8M.build.flash_size=8MB +garaginator.menu.FlashSize.8M.build.partitions=default_8MB +garaginator.menu.FlashSize.2M=2MB (16Mb) +garaginator.menu.FlashSize.2M.build.flash_size=2MB +garaginator.menu.FlashSize.2M.build.partitions=minimal +garaginator.menu.FlashSize.16M=16MB (128Mb) +garaginator.menu.FlashSize.16M.build.flash_size=16MB + +garaginator.menu.UploadSpeed.921600=921600 +garaginator.menu.UploadSpeed.921600.upload.speed=921600 +garaginator.menu.UploadSpeed.115200=115200 +garaginator.menu.UploadSpeed.115200.upload.speed=115200 +garaginator.menu.UploadSpeed.256000.windows=256000 +garaginator.menu.UploadSpeed.256000.upload.speed=256000 +garaginator.menu.UploadSpeed.230400.windows.upload.speed=256000 +garaginator.menu.UploadSpeed.230400=230400 +garaginator.menu.UploadSpeed.230400.upload.speed=230400 +garaginator.menu.UploadSpeed.460800.linux=460800 +garaginator.menu.UploadSpeed.460800.macosx=460800 +garaginator.menu.UploadSpeed.460800.upload.speed=460800 +garaginator.menu.UploadSpeed.512000.windows=512000 +garaginator.menu.UploadSpeed.512000.upload.speed=512000 + +garaginator.menu.DebugLevel.none=None +garaginator.menu.DebugLevel.none.build.code_debug=0 +garaginator.menu.DebugLevel.error=Error +garaginator.menu.DebugLevel.error.build.code_debug=1 +garaginator.menu.DebugLevel.warn=Warn +garaginator.menu.DebugLevel.warn.build.code_debug=2 +garaginator.menu.DebugLevel.info=Info +garaginator.menu.DebugLevel.info.build.code_debug=3 +garaginator.menu.DebugLevel.debug=Debug +garaginator.menu.DebugLevel.debug.build.code_debug=4 +garaginator.menu.DebugLevel.verbose=Verbose +garaginator.menu.DebugLevel.verbose.build.code_debug=5 + +garaginator.menu.EraseFlash.none=Disabled +garaginator.menu.EraseFlash.none.upload.erase_cmd= +garaginator.menu.EraseFlash.all=Enabled +garaginator.menu.EraseFlash.all.upload.erase_cmd=-e + +garaginator.menu.ZigbeeMode.default=Disabled +garaginator.menu.ZigbeeMode.default.build.zigbee_mode= +garaginator.menu.ZigbeeMode.default.build.zigbee_libs= +garaginator.menu.ZigbeeMode.zczr=Zigbee ZCZR (coordinator) +garaginator.menu.ZigbeeMode.zczr.build.zigbee_mode=-DZIGBEE_MODE_ZCZR +garaginator.menu.ZigbeeMode.zczr.build.zigbee_libs=-lesp_zb_api_zczr -lesp_zb_cli_command -lzboss_stack.zczr.trace -lzboss_stack.zczr -lzboss_port ############################################################## diff --git a/package.json b/package.json index 4316e1c0096..e7eca1e3532 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "framework-arduinoespressif32", - "version": "3.0.0", - "description": "Arduino Wiring-based Framework for the Espressif ESP32, ESP32-S and ESP32-C series of SoCs", + "version": "1.0.0", + "description": "Arduino boards for GARAGINATOR", "keywords": [ "framework", "arduino", @@ -11,6 +11,6 @@ "license": "LGPL-2.1-or-later", "repository": { "type": "git", - "url": "https://github.com/espressif/arduino-esp32" + "url": "https://github.com/phybros/arduino-esp32" } } diff --git a/platform.txt b/platform.txt index 0ff2eae7395..e81cfb0db59 100644 --- a/platform.txt +++ b/platform.txt @@ -1,5 +1,5 @@ -name=ESP32 Arduino -version=3.0.0 +name=GARAGINATOR Arduino +version=1.0.0 tools.esp32-arduino-libs.path={runtime.platform.path}/tools/esp32-arduino-libs tools.xtensa-esp32-elf-gcc.path={runtime.platform.path}/tools/xtensa-esp32-elf diff --git a/variants/AirM2M_CORE_ESP32C3/pins_arduino.h b/variants/AirM2M_CORE_ESP32C3/pins_arduino.h deleted file mode 100644 index 48b128a25d0..00000000000 --- a/variants/AirM2M_CORE_ESP32C3/pins_arduino.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 12; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t LED_BUILTIN_AUX = 13; - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 4; -static const uint8_t SCL = 5; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 3; -static const uint8_t MISO = 10; -static const uint8_t SCK = 2; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/AirM2M_CORE_ESP32C3/variant.cpp b/variants/AirM2M_CORE_ESP32C3/variant.cpp deleted file mode 100644 index e7c8670a042..00000000000 --- a/variants/AirM2M_CORE_ESP32C3/variant.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "Arduino.h" - -extern "C" void initVariant(void){ - // Stop LEDs floating - pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); - pinMode(LED_BUILTIN_AUX, OUTPUT); digitalWrite(LED_BUILTIN_AUX, LOW); -} \ No newline at end of file diff --git a/variants/Aventen_S3_Sync/pins_arduino.h b/variants/Aventen_S3_Sync/pins_arduino.h deleted file mode 100644 index 3ced97de06d..00000000000 --- a/variants/Aventen_S3_Sync/pins_arduino.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 -#define USB_MANUFACTURER "Aventen" -#define USB_PRODUCT "Aventen S3 Sync" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 2; -static const uint8_t SCL = 3; -static const uint8_t SCL_1 = 21; -static const uint8_t SDA_1 = 20; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t ALS = 17; -static const uint8_t RGB_DI = 38; -static const uint8_t RF_SW = 37; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; -static const uint8_t T15 = 15; - -#endif /* Pins_Arduino_h */ diff --git a/variants/Bee_Data_Logger/pins_arduino.h b/variants/Bee_Data_Logger/pins_arduino.h deleted file mode 100644 index d007ea18c6a..00000000000 --- a/variants/Bee_Data_Logger/pins_arduino.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x815C -#define USB_MANUFACTURER "Smart Bee Designs" -#define USB_PRODUCT "Bee Data Logger" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 37; -static const uint8_t SCL = 36; - -static const uint8_t SS = 47; -static const uint8_t MOSI = 46; -static const uint8_t MISO = 45; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 48; - -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; -static const uint8_t A7 = 7; -static const uint8_t A8 = 8; -static const uint8_t A9 = 9; - - -static const uint8_t D3 = 3; -static const uint8_t D4 = 4; -static const uint8_t D5 = 5; -static const uint8_t D6 = 6; -static const uint8_t D7 = 7; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D38 = 38; -static const uint8_t D39 = 39; -static const uint8_t D41 = 41; -static const uint8_t D42 = 42; -static const uint8_t D43 = 43; -static const uint8_t D44 = 44; - - -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t BOOT_BTN = 0; -static const uint8_t VBAT_VOLTAGE = 1; -static const uint8_t VBUS_SENSE = 2; -static const uint8_t LDO2 = 34; -static const uint8_t RGB_DATA = 40; -static const uint8_t RGB_PWR = 34; - -#define PIN_NEOPIXEL RGB_DATA -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#endif /* Pins_Arduino_h */ diff --git a/variants/Bee_Motion/pins_arduino.h b/variants/Bee_Motion/pins_arduino.h deleted file mode 100644 index d11f332cef9..00000000000 --- a/variants/Bee_Motion/pins_arduino.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303A -#define USB_PID 0x810D -#define USB_MANUFACTURER "Smart Bee Designs" -#define USB_PRODUCT "Bee Motion S3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 36; -static const uint8_t SCL = 37; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 16; -static const uint8_t MISO = 38; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 15; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; - -static const uint8_t T1 = 1; -static const uint8_t T3 = 3; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T14 = 14; - -static const uint8_t BOOT_BTN = 0; -static const uint8_t PIR = 5; - - - -#endif /* Pins_Arduino_h */ diff --git a/variants/Bee_Motion_Mini/pins_arduino.h b/variants/Bee_Motion_Mini/pins_arduino.h deleted file mode 100644 index 3e308be5de6..00000000000 --- a/variants/Bee_Motion_Mini/pins_arduino.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t BOOT_BTN = 9; -static const uint8_t PIR = 5; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ - diff --git a/variants/Bee_Motion_S3/pins_arduino.h b/variants/Bee_Motion_S3/pins_arduino.h deleted file mode 100644 index 6eebf47d884..00000000000 --- a/variants/Bee_Motion_S3/pins_arduino.h +++ /dev/null @@ -1,86 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8113 -#define USB_MANUFACTURER "Smart Bee Designs" -#define USB_PRODUCT "Bee Motion S3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 37; -static const uint8_t SCL = 36; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 16; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 17; - -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; -static const uint8_t A7 = 7; -static const uint8_t A8 = 8; -static const uint8_t A9 = 9; -static const uint8_t A10 = 10; -static const uint8_t A11 = 11; -static const uint8_t A12 = 12; -static const uint8_t A13 = 13; -static const uint8_t A14 = 14; -static const uint8_t A15 = 15; - -static const uint8_t D5 = 5; -static const uint8_t D6 = 6; -static const uint8_t D7 = 7; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; -static const uint8_t D11 = 11; -static const uint8_t D12 = 12; -static const uint8_t D14 = 14; -static const uint8_t D15 = 15; -static const uint8_t D16 = 16; -static const uint8_t D17 = 17; -static const uint8_t D35 = 35; -static const uint8_t D36 = 36; -static const uint8_t D37 = 37; -static const uint8_t D43 = 43; -static const uint8_t D44 = 44; - - -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t BOOT_BTN = 0; -static const uint8_t VBAT_VOLTAGE = 1; -static const uint8_t VBUS_SENSE = 2; -static const uint8_t PIR = 4; -static const uint8_t LIGHT = 3; -static const uint8_t LDO2 = 34; -static const uint8_t RGB_DATA = 40; -static const uint8_t RGB_PWR = 34; - -#define PIN_NEOPIXEL RGB_DATA -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#endif /* Pins_Arduino_h */ diff --git a/variants/Bee_S3/pins_arduino.h b/variants/Bee_S3/pins_arduino.h deleted file mode 100644 index 2ea399fd532..00000000000 --- a/variants/Bee_S3/pins_arduino.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8110 -#define USB_MANUFACTURER "Smart Bee Designs" -#define USB_PRODUCT "BeeS3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 37; -static const uint8_t SCL = 36; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 38; -static const uint8_t SDO = 35; -static const uint8_t SDI = 38; -static const uint8_t SCK = 39; - - -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; -static const uint8_t A7 = 7; -static const uint8_t A8 = 8; -static const uint8_t A9 = 9; -static const uint8_t A10 = 10; - -static const uint8_t D3 = 3; -static const uint8_t D4 = 4; -static const uint8_t D5 = 5; -static const uint8_t D6 = 6; -static const uint8_t D7 = 7; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; -static const uint8_t D35 = 35; -static const uint8_t D36 = 36; -static const uint8_t D37 = 37; -static const uint8_t D38 = 38; -static const uint8_t D39 = 39; -static const uint8_t D43 = 43; -static const uint8_t D44 = 44; - - -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; - - - -static const uint8_t VBAT_VOLTAGE = 1; - -static const uint8_t RGB_DATA = 48; -static const uint8_t RGB_PWR = 34; - -#define PIN_NEOPIXEL RGB_DATA -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#endif /* Pins_Arduino_h */ diff --git a/variants/ET-Board/pins_arduino.h b/variants/ET-Board/pins_arduino.h deleted file mode 100644 index 7275f956f4f..00000000000 --- a/variants/ET-Board/pins_arduino.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 34; -static const uint8_t RX = 35; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 29; -static const uint8_t MOSI = 37; -static const uint8_t MISO = 31; -static const uint8_t SCK = 30; - -static const uint8_t A0 = 36; // BUILTIN_Potentiometer -static const uint8_t A1 = 39; // BUILTIN_CDS -static const uint8_t A2 = 32; // BUILTIN_temperature -static const uint8_t A3 = 33; // Analog Input -static const uint8_t A4 = 34; // Analog Input -static const uint8_t A5 = 35; // Analog Input -static const uint8_t A6 = 25; // Analog Input -static const uint8_t A7 = 26; // Analog Input - - -static const uint8_t D2 = 27; // BUILTIN_LED_Red -static const uint8_t D3 = 14; // BUILTIN_LED_Blue -static const uint8_t D4 = 12; // BUILTIN_LED_Green -static const uint8_t D5 = 13; // BUILTIN_LED_Yellow -static const uint8_t D6 = 15; // BUILTIN_BUTTON_Red -static const uint8_t D7 = 16; // BUILTIN_BUTTON_Blue -static const uint8_t D8 = 17; // BUILTIN_BUTTON_Green -static const uint8_t D9 = 4; // BUILTIN_BUTTON_Yellow - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ \ No newline at end of file diff --git a/variants/Edgebox-ESP-100/pins_arduino.h b/variants/Edgebox-ESP-100/pins_arduino.h deleted file mode 100644 index 0c14982ec9b..00000000000 --- a/variants/Edgebox-ESP-100/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -//Programming and Debugging Port -static const uint8_t TXD = 43; -static const uint8_t RXD = 44; -static const uint8_t RST = 0; - -//I2C -static const uint8_t SDA = 20; -static const uint8_t SCL = 19; - -//I2C INT fro RTC PCF8563 -static const uint8_t I2C_INT = 9; - -//SPI BUS for W5500 Ethernet Port Driver -static const uint8_t SS = 10; -static const uint8_t MOSI = 12; -static const uint8_t MISO = 11; -static const uint8_t SCK = 13; -static const uint8_t ETH_INT = 14; -static const uint8_t ETH_RST = 15; - -//A7670G -static const uint8_t LTE_PWR_EN = 16; -static const uint8_t LTE_PWR_KEY = 21; -static const uint8_t LTE_TXD = 48; -static const uint8_t LTE_RXD = 47; - -//RS485 -static const uint8_t RS485_TXD = 17; -static const uint8_t RS485_RXD = 18; -static const uint8_t RS485_RTS = 8; - -//CAN BUS -static const uint8_t CAN_TXD = 1; -static const uint8_t CAN_RXD = 2; - -//BUZZER -static const uint8_t BUZZER = 45; - -static const uint8_t DO0 = 40; -static const uint8_t DO1 = 39; -static const uint8_t DO2 = 38; -static const uint8_t DO3 = 37; -static const uint8_t DO4 = 36; -static const uint8_t DO5 = 35; - -static const uint8_t DI0 = 4; -static const uint8_t DI1 = 5; -static const uint8_t DI2 = 6; -static const uint8_t DI3 = 7; - -static const uint8_t AO0 = 42; -static const uint8_t AO1 = 41; - -#endif /* Pins_Arduino_h */ \ No newline at end of file diff --git a/variants/Microduino-esp32/pins_arduino.h b/variants/Microduino-esp32/pins_arduino.h deleted file mode 100644 index 7dc0d236de9..00000000000 --- a/variants/Microduino-esp32/pins_arduino.h +++ /dev/null @@ -1,82 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = -1; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define MTDO 15 -#define MTDI 12 -#define MTMS 14 -#define MTCK 13 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 22;//23; -static const uint8_t SCL = 21;//19; - -#define WIRE1_PIN_DEFINED 1 // See Wire.cpp at bool TwoWire::initPins(int sdaPin, int sclPin) -static const uint8_t SDA1 = 12; -static const uint8_t SCL1 = 13; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 12; -static const uint8_t A1 = 13; -static const uint8_t A2 = 15; -static const uint8_t A3 = 4; -static const uint8_t A6 = 38; -static const uint8_t A7 = 37; - -static const uint8_t A8 = 32; -static const uint8_t A9 = 33; -static const uint8_t A10 = 25; -static const uint8_t A11 = 26; -static const uint8_t A12 = 27; -static const uint8_t A13 = 14; - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 16; -static const uint8_t D3 = 17; -static const uint8_t D4 = 32;//ADC1_CH4 -static const uint8_t D5 = 33;//ADC1_CH5 -static const uint8_t D6 = 25;//ADC2_CH8 DAC_1 -static const uint8_t D7 = 26;//ADC2_CH9 DAC_2 -static const uint8_t D8 = 27;//ADC2_CH7 -static const uint8_t D9 = 14;//ADC2_CH6 -static const uint8_t D10 = 5; -static const uint8_t D11 = 23; -static const uint8_t D12 = 19; -static const uint8_t D13 = 18; -static const uint8_t D14 = 12; -static const uint8_t D15 = 13; -static const uint8_t D16 = 15; -static const uint8_t D17 = 4; -static const uint8_t D18 = 22; -static const uint8_t D19 = 21; -static const uint8_t D20 = 38; -static const uint8_t D21 = 37; - - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/Nebula_S3/pins_arduino.h b/variants/Nebula_S3/pins_arduino.h deleted file mode 100644 index 39fbe5707d2..00000000000 --- a/variants/Nebula_S3/pins_arduino.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT + 45; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SDA1 = 2; -static const uint8_t SCL1 = 1; - -static const uint8_t SS = 41; -static const uint8_t MOSI = 40; -static const uint8_t MISO = 39; -static const uint8_t SCK = 38; - -static const uint8_t D0 = 1; -static const uint8_t D1 = 2; -static const uint8_t D2 = 44; -static const uint8_t D3 = 43; -static const uint8_t D4 = 42; -static const uint8_t D5 = 41; -static const uint8_t D6 = 40; -static const uint8_t D7 = 39; -static const uint8_t D8 = 38; -static const uint8_t D9 = 27; -static const uint8_t D10 = 45; -static const uint8_t D11 = 4; -static const uint8_t D12 = 5; -static const uint8_t D13 = 6; -static const uint8_t D14 = 7; -static const uint8_t D15 = 15; -static const uint8_t D16 = 16; -static const uint8_t D17 = 17; -static const uint8_t D18 = 18; - -static const uint8_t A0 = 4; -static const uint8_t A1 = 5; -static const uint8_t A2 = 6; -static const uint8_t A3 = 7; -static const uint8_t A4 = 1; -static const uint8_t A5 = 2; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/S_ODI_Ultra_v1/pins_arduino.h b/variants/S_ODI_Ultra_v1/pins_arduino.h deleted file mode 100644 index 87a6d56e0b3..00000000000 --- a/variants/S_ODI_Ultra_v1/pins_arduino.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -static const uint8_t LED_BUILTINB = 4; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define BUILTIN_LED2 LED_BUILTINB - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ - -/* compitable with SPELEC S.ODI Ultra v1.0 (based on ESP32 Series)*/ diff --git a/variants/VALTRACK_V4_MFW_ESP32_C3/pins_arduino.h b/variants/VALTRACK_V4_MFW_ESP32_C3/pins_arduino.h deleted file mode 100644 index b473c8afff1..00000000000 --- a/variants/VALTRACK_V4_MFW_ESP32_C3/pins_arduino.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t TX1 = 0; -static const uint8_t RX1 = 1; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 6; - -static const uint8_t SS = 20; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 9; -static const uint8_t SCK = 8; - -static const uint8_t A0 = 2; -static const uint8_t A1 = 3; -static const uint8_t A2 = 4; -static const uint8_t A3 = 5; - -static const uint8_t D0 = 2; -static const uint8_t D1 = 3; -static const uint8_t D2 = 4; -static const uint8_t D3 = 5; -static const uint8_t D4 = 6; -static const uint8_t D5 = 7; -static const uint8_t D6 = 21; -static const uint8_t D7 = 20; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; - -static const uint8_t GPIO_IIC_DATA = 5; -static const uint8_t GPIO_IIC_CLOCK = 6; -static const uint8_t GPIO_PWRKEY = 7; -static const uint8_t GPIO_GSM_ENABLE = 10; -static const uint8_t GPIO_TPS_ENABLE = 4; -static const uint8_t GPIO_INT1 = 3; -static const uint8_t GPIO_ANALOG_IN = 2; -static const uint8_t GPIO_SOS = 9; -static const uint8_t GPIO_CHG_IN = 4; -static const uint8_t GPIO_LED_SIGNAL = 8; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/VALTRACK_V4_VTS_ESP32_C3/pins_arduino.h b/variants/VALTRACK_V4_VTS_ESP32_C3/pins_arduino.h deleted file mode 100644 index b473c8afff1..00000000000 --- a/variants/VALTRACK_V4_VTS_ESP32_C3/pins_arduino.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t TX1 = 0; -static const uint8_t RX1 = 1; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 6; - -static const uint8_t SS = 20; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 9; -static const uint8_t SCK = 8; - -static const uint8_t A0 = 2; -static const uint8_t A1 = 3; -static const uint8_t A2 = 4; -static const uint8_t A3 = 5; - -static const uint8_t D0 = 2; -static const uint8_t D1 = 3; -static const uint8_t D2 = 4; -static const uint8_t D3 = 5; -static const uint8_t D4 = 6; -static const uint8_t D5 = 7; -static const uint8_t D6 = 21; -static const uint8_t D7 = 20; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; - -static const uint8_t GPIO_IIC_DATA = 5; -static const uint8_t GPIO_IIC_CLOCK = 6; -static const uint8_t GPIO_PWRKEY = 7; -static const uint8_t GPIO_GSM_ENABLE = 10; -static const uint8_t GPIO_TPS_ENABLE = 4; -static const uint8_t GPIO_INT1 = 3; -static const uint8_t GPIO_ANALOG_IN = 2; -static const uint8_t GPIO_SOS = 9; -static const uint8_t GPIO_CHG_IN = 4; -static const uint8_t GPIO_LED_SIGNAL = 8; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/XIAO_ESP32C3/pins_arduino.h b/variants/XIAO_ESP32C3/pins_arduino.h deleted file mode 100644 index 8de70af9ea2..00000000000 --- a/variants/XIAO_ESP32C3/pins_arduino.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 6; -static const uint8_t SCL = 7; - -static const uint8_t SS = 20; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 9; -static const uint8_t SCK = 8; - -static const uint8_t A0 = 2; -static const uint8_t A1 = 3; -static const uint8_t A2 = 4; -static const uint8_t A3 = 5; - -static const uint8_t D0 = 2; -static const uint8_t D1 = 3; -static const uint8_t D2 = 4; -static const uint8_t D3 = 5; -static const uint8_t D4 = 6; -static const uint8_t D5 = 7; -static const uint8_t D6 = 21; -static const uint8_t D7 = 20; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; - -#endif /* Pins_Arduino_h */ diff --git a/variants/XIAO_ESP32S3/bootloader-tinyuf2.bin b/variants/XIAO_ESP32S3/bootloader-tinyuf2.bin deleted file mode 100644 index b11e5b236f0992d8351b579c8283c03a5e32a85c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21408 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 SVR0lq@zytgJh)Ff;r{>(gA@M% diff --git a/variants/XIAO_ESP32S3/partitions-8MB.csv b/variants/XIAO_ESP32S3/partitions-8MB.csv deleted file mode 100644 index 4026378b6fb..00000000000 --- a/variants/XIAO_ESP32S3/partitions-8MB.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 3776K, diff --git a/variants/XIAO_ESP32S3/pins_arduino.h b/variants/XIAO_ESP32S3/pins_arduino.h deleted file mode 100644 index cb77ca81cb6..00000000000 --- a/variants/XIAO_ESP32S3/pins_arduino.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x2886 -#define USB_PID 0x0056 - -static const uint8_t LED_BUILTIN = 21; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 6; - -static const uint8_t SS = 44; -static const uint8_t MOSI = 9; -static const uint8_t MISO = 8; -static const uint8_t SCK = 7; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A8 = 7; -static const uint8_t A9 = 8; -static const uint8_t A10 = 9; - -static const uint8_t D0 = 1; -static const uint8_t D1 = 2; -static const uint8_t D2 = 3; -static const uint8_t D3 = 4; -static const uint8_t D4 = 5; -static const uint8_t D5 = 6; -static const uint8_t D6 = 43; -static const uint8_t D7 = 44; -static const uint8_t D8 = 7; -static const uint8_t D9 = 8; -static const uint8_t D10 = 9; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; - -#endif /* Pins_Arduino_h */ diff --git a/variants/XIAO_ESP32S3/tinyuf2.bin b/variants/XIAO_ESP32S3/tinyuf2.bin deleted file mode 100644 index 86d981f8019368e49c7412d49731a0199b1722bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141936 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 diff --git a/variants/adafruit_camera_esp32s3/bootloader-tinyuf2.bin b/variants/adafruit_camera_esp32s3/bootloader-tinyuf2.bin deleted file mode 100644 index f0169612e1334529dae9678a0120c8959bc8212c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22112 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 E0E{UsQ~&?~ diff --git a/variants/adafruit_camera_esp32s3/pins_arduino.h b/variants/adafruit_camera_esp32s3/pins_arduino.h deleted file mode 100644 index 62132dcadc3..00000000000 --- a/variants/adafruit_camera_esp32s3/pins_arduino.h +++ /dev/null @@ -1,85 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x8117 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Camera ESP32-S3" -#define USB_SERIAL "" // Empty string for MAC adddress - - -static const uint8_t PIN_NEOPIXEL = 1; -static const uint8_t NEOPIXEL_PIN = 1; - -//By making LED_BUILTIN have the same value of RGB_BUILTIN -//NeoPixel LED can also be used as LED_BUILTIN with digitalMode() + digitalWrite() -static const uint8_t LED_BUILTIN = PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - - -static const uint8_t TFT_BACKLIGHT = 45; -static const uint8_t TFT_DC = 40; -static const uint8_t TFT_CS = 39; -static const uint8_t TFT_RESET = 38; -static const uint8_t TFT_RST = 38; - -static const uint8_t SD_CS = 48; -static const uint8_t SD_CHIP_SELECT = 48; -static const uint8_t SPEAKER = 46; - -static const uint8_t SCL = 33; -static const uint8_t SDA = 34; - -static const uint8_t SS = 48; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t BATT_MONITOR = 4; -static const uint8_t SHUTTER_BUTTON = 0; - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#define AWEXP_SPKR_SD 0 -#define AWEXP_BUTTON_SEL 1 -#define AWEXP_SD_DET 8 -#define AWEXP_SD_PWR 9 -#define AWEXP_BUTTON_OK 11 -#define AWEXP_BUTTON_RIGHT 12 -#define AWEXP_BUTTON_UP 13 -#define AWEXP_BUTTON_LEFT 14 -#define AWEXP_BUTTON_DOWN 15 - -#define RESET_GPIO_NUM 47 -#define PWDN_GPIO_NUM 21 -#define XCLK_GPIO_NUM 8 -#define SIOD_GPIO_NUM SDA -#define SIOC_GPIO_NUM SCL - -#define Y9_GPIO_NUM 7 -#define Y8_GPIO_NUM 9 -#define Y7_GPIO_NUM 10 -#define Y6_GPIO_NUM 12 -#define Y5_GPIO_NUM 14 -#define Y4_GPIO_NUM 16 -#define Y3_GPIO_NUM 15 -#define Y2_GPIO_NUM 13 -#define VSYNC_GPIO_NUM 5 -#define HREF_GPIO_NUM 6 -#define PCLK_GPIO_NUM 11 - - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_camera_esp32s3/tinyuf2.bin b/variants/adafruit_camera_esp32s3/tinyuf2.bin deleted file mode 100644 index 0247a171331c8b9ac80f659b67751ff0377b25f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 193520 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

=arX+rm zB-2I1p+&>;ECLWQa3bzbj$+n^n23kxu=JgBcruB!da6u%O==iL3jj77p)uIi5!ej& ze!*D*sn{OP0O24}3>awqCQ&1lX=%<=?P<|owH*F9N!AFGaShY$AssIV)d{UuSD;mQ z!7wCWwt5d)pLt-$&v>iTm$!` zxLLKfey0GLmYKfJR}WssS4C`$GyE0u74i0=G;cpJr1JLQH*|50rry+2J`^Z5^Mz2i zV1011q~n!dLxQr7)VttD;lB1?Pwczc{imb-<44o_UFXH}Omvvmr{saSx-y|m)kDLp zf2&VR`kgMV-~BSe-m_(wA@%`$3fJyB03D&ma;#>yt3EcK#Xu{3!hp-6+=*`a3^fz5 zS{|tMlX|yI?|bZ=@1M@mRXNf*>PafF)RvM6rel2V+CIZTun03$D>8D3>dK$Q!5tQ4 z-3IBu(P;(YR_7EI!K( zC}yrbBv*VpEORf1<(bQ10WArq?7{zqiHO(RLm7fY4LJc?`)f88V6ZE@E{nms=a=w? zI-Y4-fgc4E*(rNfiJ8)abp)A`OtnlQZzwTPnZmB@a2A8=d;d+Sn??E%<{h$sf$Skx zf%ZC(*vmz~Ep`nxa4sqTSmh#%=Yf5K#Q)Pe$FvTCc93{db=Jx# ztz;*5T$Har+8R75C^46kiq#Is=_BA-)3@1DYpaVx&G=@DI|Na5;>ABAlTA;1KD>0GgG+AmTz6HA<~X{cC1H4#Ttty`7JS+SX^l`x&KmHL6oeKW^P{Xd zaIIvINnQ#(Bvf;jj?Bzs`m2xS&pURLu9&g^*JL$!xB33!$18;zx6$u{w~c*h=AHdN zzjSc+!{cNF=qx@^DRj66l=(D?l8K?otXcVU%F3OK?ENT~7&6)qk4(4LcuU)zoof#~ zGU;~-@4F?x>vg!XGpGiT5VnOkfwKcZH5$?^cu&oOL_aC!6pE6UJ9EsCU5SS?wPz%0 zA-Q|n;R`6k6%REej$6RajEEPhB6EY4smU5z{vo%FSyN*CktnDUj23^AoTXi^{>0ol zSm`fcI82h!>=30Kv%@ZF%?^*mn;k18!R)A&tY$}pB$^!oso0EG*Z=r^Co35_r%B4; zoT8-VoOX%loE}NwoGTit4N zKo+mmr<5knEH?uFZ~6DKueauR_rGx8&sSgn%JCzQA20sX^Go&^4wYSaaM^-WdtZ6z G7yk#p+a%@y diff --git a/variants/adafruit_camera_esp32s3/variant.cpp b/variants/adafruit_camera_esp32s3/variant.cpp deleted file mode 100644 index 06e5c24cb76..00000000000 --- a/variants/adafruit_camera_esp32s3/variant.cpp +++ /dev/null @@ -1,45 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - pinMode(TFT_BACKLIGHT, OUTPUT); - digitalWrite(TFT_BACKLIGHT, LOW); - pinMode(SD_CS, OUTPUT); - digitalWrite(SD_CS, HIGH); - pinMode(TFT_CS, OUTPUT); - digitalWrite(TFT_CS, HIGH); - pinMode(TFT_RESET, OUTPUT); - digitalWrite(TFT_RESET, LOW); - delay(1); - digitalWrite(TFT_RESET, HIGH); -} -} diff --git a/variants/adafruit_feather_esp32_v2/pins_arduino.h b/variants/adafruit_feather_esp32_v2/pins_arduino.h deleted file mode 100644 index 7aae51a2d16..00000000000 --- a/variants/adafruit_feather_esp32_v2/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t TX = 8; -static const uint8_t RX = 7; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 22; -static const uint8_t SCL = 20; - -static const uint8_t SS = 33; -static const uint8_t MOSI = 19; -static const uint8_t MISO = 21; -static const uint8_t SCK = 5; - -// mapping to match other feathers and also in order -static const uint8_t A0 = 26; -static const uint8_t A1 = 25; -static const uint8_t A2 = 34; -static const uint8_t A3 = 39; -static const uint8_t A4 = 36; -static const uint8_t A5 = 4; -static const uint8_t A6 = 14; -static const uint8_t A7 = 32; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 35; - -// vbat measure -#define BATT_MONITOR 35 - -// internal switch -#define BUTTON 38 - -// User LED -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// Neopixel -#define PIN_NEOPIXEL 0 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -// Neopixel & I2C power -#define NEOPIXEL_I2C_POWER 2 - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32_v2/variant.cpp b/variants/adafruit_feather_esp32_v2/variant.cpp deleted file mode 100644 index 9345f6058a6..00000000000 --- a/variants/adafruit_feather_esp32_v2/variant.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels & I2C - pinMode(NEOPIXEL_I2C_POWER, OUTPUT); - digitalWrite(NEOPIXEL_I2C_POWER, HIGH); -} - -} diff --git a/variants/adafruit_feather_esp32s2/bootloader-tinyuf2.bin b/variants/adafruit_feather_esp32s2/bootloader-tinyuf2.bin deleted file mode 100644 index 6b885eb4e5039a8b9d662dd6c8c98ea38e4e2591..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22016 zcmb_@4O|mfw)oBDg8-uj&=iHPlVBhy*Z@|*YDth%X>|ouYHj;Uz#z1I3Bivp{WpUy z221w=c3bGPZ!^@a=*m-cxAmiJ32m)ywN<-r-9Bm2E&Xt-RVyEXB=bLK5(KR7`@i@8 z{5Ugn&pr3tbI-l^+;h%Mz86#Xt$bIaze)(90DONUV)UeJRT9F(U$2M|ZKj0q`v`$Y zLarH743(9p3Nuq+EGjmwWr|7}O=S$g0?k@RtEr5h6hMr5Wff*^G_%oI$>bZ0k<4gj zG8Z$tO&VR&CZNbGD>IX@Cv*=a#Fab*&8ni215;dPT+5UjE6hdaqOwxPY|JY*F{X-& zvI-Rtmjrm5#Fu1@HAyp>P5EZVSYBRSly4N8RhZUSnJUeUxr{NDnoSkVs`PjUdqno8 zivNPs+OjI_wZc?sGBZ_`MWySQ?8OX7^KfRyas~$ZKVv)E+L&)H+F<(UOhC^T!b=+T zDRKZBKmjlnAQT`RfB~2VpaqBl&;iT?NCH?0pa)0;SOTyVAQNCEz-j>BJm0z%1Fjsv z46q5H8o&au6~GEm56}ScGC(uHP5>LgE`TUMbDWS&8EAx$~Wd0n!J)cT~bo@ zG)}E|{VsqR4Y*sgah(aHc)G#_>$9>V|7qjewH3IUH!-DUW@cV&-e$9jF%}oCD>beC zZ*oJ)|G#iri);RW%V}dp5sU;`-8M$e+W*-gy$prusEty?ognc0xvpah-|DFDo@0i%Kh*lB!~JQ8}0(4XkU^ zx)NYkIhR>p3Vh9lCI$pEgE=xW8;gpInLHB%d#2p9*4IS_cEJ=?3hNTrFPhLh^qCHJ zsH|c$+RZV8tEn6}$O+qSl-!JK?EkUN@|A{(q)cToY!=PhyLa;tntD7^gjMr2NWa!- zHZo=9rV7Ed&&9)lStLyVI8i6e#|qfnFt{pXF$3*ktFK=KMjLqgxILkJ>TXS!;`sn) z73id(qO4?0F?f8H6%?S^z(wqBUsd{SY1zh7GO81@%8S7E+6!KV6dXcvldb{nI9A}r%Vro&Q7(udVpII9>!rSIiIJCj) zZZK686>J_iL}8_jYd1lunYYg5mAIf5+>I_Gf>~HbL4d+XC$|W9 z``w!S@;15{#$2%(8Q>Dpjcawg=)zJNCwfuo1~`t^#z42lf^o_-=07`5jQ>6>#t7;x zy(M3a*ZzQbaPAe4^?X+o0z(_MM~tv##{4|koM_p`5VxclcEHtmDGM8CwEY7bgHk!di2}h~mjf~kN;B%Xu5M)H#C6E__etgRU z&Wv?M`QD>b3m!}%E-~TA1Kx$E3RBAXMLl7yP2}l2pWyJSDn--Ipg(3>3x}8y_NLDj z$^)lK@a)lRLT|0YSh~(c%D@B_8_O$&I`GmnvJK0|kYhFuPvQJ$?^q*P(Vvfdh4<7% zd0^yVA!5C^(cy#B=Ub*I76B7_hlv~$z~?v$>h?uFUY$;~JrmXB-G8G8_~>l^v)LLa z^#pBsWskYFl1hx`{6g=3_g0NtKojiW=;UbDE`W6hx?hC4U^a|BqJabC{hJD5d(B^q zLD)EE69*(XDZWDxm(s=x*fDqacE=X_nD2MXC>0wk*1?RM3yq~r-27#!-cHA@Z|LAo zF@tw=VWn?VFtLnxL4t|SFRQ4iDmQz1J+!GD!a`il$jR%yqezu^nCUT5VZn^J6&LZ!_~) z+De~K4>aEKPiP7CK4SD*un&Pz=Hf-dI@NA8LK1~30g1=k^8W@4@AQtDK?3`IG{+)L z&eQp2B_(&5nUW&#l+Z>AyCWkl1~!dvH)_x$fwKa9y1T~7D+_Tm#8bX5(^-D7^=e?kT6w6{7ZSpn7layTE$(h&)4drr@D(x8$jW$#$tyB@_nT=v zL+sQm!q10stLL>|=hGL+3PS*4yv>%a&R9$`R;^EF_81Pq@B^)CbX{{Wa1BzGL#4I)}Wzr29OYcTrRa#k9UJglJ++(A>Z*4pwG@l?E1X4wJ%I}WKhZb*) z4;&^{z6FiTV01kQ3Cb>sK2$--e3p=MH=pv^vOERRV-B;6f6p?O%X|`Y)<%FEL4>>v z_viCGDHZ@&!sJUR-w)3h9@3{g2Y3A>F*y&<1S;F$ZUtD_F4FgUh+gqqk$x?}YM$t$ z)_YQ70TKX`0So}?0GR+Q0Uif<3Sb?;vjEiqB>?LIHURtzU?ac*ubdW=3-W+02y%cl zVli5v{w08~q3$f)Ak^Tad`9tqXP!^uJc#?_x@LQOH z5nc~6F9j%`BhokIrlvqXnwX)i2Yw)s;z^PQ^8F6xN>Anip69>f(|Sqn5&(jAFAVXa z0u8^P=eO}%cve{TDH6CZggfxaC35I*3IR>aph!fP0+HT@_5vUp;Awz20Bm0qeR!Ej zp9Xj96Cyp%^>bC8lp_EH`qoAe@|_r2fM8H};VqH=64d=-1I#->F+j5u1nm})tte|s z7mQKlA-tII@3?t=>J&0>Bg`)VA)&wp1S8k@`9>0#&o}M5lq9ADd$$BFur}gE{?Pw`zRg5nM2fHf$dB5I1#pKR4zTlFoiP|M6RoLR+Zx*T{SWQO)Op zRgIchn6E7jeNipcE1`s@?!7jj6{&Q*GMlh-`Cd6O#S-Og(lDOT?w2S(tO4a*cUlb5E<4rn16GbA|JRB)b zQ-9>9r)Jv-vvNx&W6r4|tsmXA&Dx@D3eXJjst`VE29+K~R5TxNBOq#g9_cGU{((F< ziLd^Noq;`cirYn+SyHHPQqvuTZ?#Ddv?y#XsHdhp8m`vt16GC2iio=Gb_qKPo2{0% zOR!Fw>#dNoazxv6B_#pb+)tWZN$%dR-G8EL)3NJR^%T8cl4JJR|3zXu%JfJamp$Bd zPx>MfzJ_&rprPTiC$F8)o;59I2GDDzxoQR6qot}ZJXt?@;PLS$xMb&1>=h)>o~44~ z5@~K4l4YRy&D~k2J@l;17KL6AzNH(G*1SxsLhltZPxZdX@VQ4z>D4uc_dI%aD-&tR zye!sV7H6h)Ma>)FPM{2$zk&`Xv7cc#S?_ydW-mDhjI&E`caVtIF_Q~P;c^?&*nL`G<`mU{*gW@bI=*|{St%OjJbQO#QBiOdfK+?)B*tcN@Wm0$P8Ah*Z7 zg2W@U8ksm;Y}q<5a>+e!uBMKs5PET>mZrB1B>B-H2W^z)fgNlv5_TOD#Vz$*&+wed z@HjF&PX)AzFL8u@66@Nf>=Sr56-wv;b|yZChwM(Mj5Bz4uP8BTu+tO|jC~qb#XaaT zruc@x(36>I22CW1;Zi6wEvg>Yr+M0TgtW}A9?yQp!Rr%lwbS7F)9>=BtffR*$DRsq<< zL8Exh6NH`Qp>g-O$k{+owNrSy_ZoEf0gkg^?<>a#aNjh_Je&*%VfF6_@c8VgeQ67fh4i>Nk6S=qnQ{v`;^s!YNV>#kRUGhIGk0kCt z?wmqbV>uPebFtiQ^FxF|MnBjynXVSd=_!4BS>t&(cizjn<8SWK{vh66_*ZPQN6vjBG!5_#F948M|KjI>4ZVF-Q1-Z+JC04+cYLIJz_4~&2Gn4M$?@%cB^R< z)01KYkbr)~v>ThCyujPrM)P}d+(YhmG5b8W>ZIsNbUi(zZIJxuzenzu|3b zB!*-+Er#R19IFpYxH9*FuBxX34jj0t4v>5hOx5bi>4=~O>TBvCMq{a=WOiRLTuSxQtx5lc^yrH84ZsLlXl4LWUQ&QfB><8Dij zh+7R;hP~;64o{VwtNy%2kGMBnYO4!IyDn7pA5BN zO|s=v$f_XS{qUfukq22;iRwgbI*MNspx?!?58`7lMXVy-Duxarp?Z?Q>5eL%56F2! z+7oyxkbcI#L#*4)^hycR$NT7aZ%NdACWgc3J~tQVW>2DgpuDLP&~jKp>qo(n`IPJ^ z-**~mBHdiHn|&8)WS{V04Wf{X_u475+03j45waiAHoye1U%B?+suSjmJLPhma?ydd zlU-~FvhdAg$0siCGuK(0sM{85zb01B7HK}h&O+Q=h?{Lg%Iaa?xorQl*fyKdoDe%` zH<(}A-9xdzLkg}FIBQOd=}?-oX?HM8E}Y}wi%Z=!^&*!X7p>~6l6Jyl->;-_c|qDk zouaU8PnO!-q>BPt9ddi6lpA(AhF!Kpt!Lo+Mh!cRyiWzt%Q`6}coN#0Dv`mjr0fk> zyQo>76xt$64$_oM+eMv}W&_+b&q)OzqOTK2ammG9cCj0fPv1U%R2Q1J#j5{wfki*_ zwTt`O#dI@l36j{4LL2U)fG9%5sE&GEtu~SUfEaWxXhicDspD_1&Hy^V-XZKEjx_$& zmD~th-s&GOn#KLa#UuoQfr(}<-lNFB@pV_cNFxxyR9s6CL2cWuTARJfen#5HGTN7I z?HbcLX%{RQhTV#Ca&M!)`u-?wbtvq6rJbU7 zDrvpuobpzQ|c>3`r`E>{aGkSz(i4r6z?dx*kf#29>90ro{4 zpi+_z&yNY^p?7$GBl#0PBj*r{5po22%yk?E+{XaJ0CU%QQs#l4jBvLD2>BPdGlh`* z0Eh!v1dtA}6yR}yJb-5aDggcu0H~W-;oc1}44^LZq?iHr1Mo8m>4Ccl^m*Si&=#N> z;O_u!e*nE%^eKy;^`z7SoB^PL&gus_Ab=r%k^XRiNUw+7M<|RlCRD0l0C$QZWJa+k zWfnjwzySbBi6PR@M#lV_8_jUkiNIe>+uz0 z(dszuxp>wCexKu0xC*YI)mw2Au|Dt6N@L2St+12Ub?#t}iF)@cj))E%75qzq&!&!U zPhdiBf(V>S-2%iXW1ktJAGA=li%8rtPrO*P;355mEr2~yXgKWA^?-d)oIZ)P9~K5C zELa5(Nt;sl6Ns(!35v`WSo1h?Nh+iz^fYdtCl^vWt3)=a^qx$G4=W{s1-bfNNYtFy zMsgDr`h09x)C`x3LM2?66w+dPn(^N~4J)?jSBW4ulIcxE6edoW#(&7`bl7}JTXq}C zOjGFQ3BtDlDoJi=^5})0;tPp@i27+T2^H$p!X+6;9*qL3waUm3CsqGMrt8TLu3?9+ zL9M_81geq>4bKA;JoE&5VT8W&CfNy|z%Lb zjOIGf(Dj|-g)>aoc&vZGSAY5xgI>DkM;^0HkqjO`AY=yXC5Jw>N8CyOASdnx?IC-<5@9@Q^R zhra~9wc38C`IcuxJ!EzexDYl=l|{`!@Ne0xu&IS$1$CY1|>%qATc z9?&-giZ&N~bX7Bp#Q9_1#NPwX3G0ueLyr-nmR8#l%|+hpKDOF6n|g0O^Y*X!*4?LB z9(~|ZfbsW!_Z#k0V)h1BRo|%n5)Bf_#$H3jq5$?s zyekh$ZF;kA!%CfPrLK6TE_;qsodW)?BDUR9X#EbKDHO1 z6YmcMD%~3ldjX3N-|yc^!Ib|E3$VDu-wQt!elA89J{W$v_Ip^z5YvC=K5OfOm2UNS zoOMGC1CJ0|f8y>qjp1pVKl`a0YzjQ?!3eX>AB@Fl0m97>-KR(6b0M6y`gh&Rup+(H ze>6b$`DpB)-Q1s%bF+LjP;ERW#LNDpv9aJ!Ls)s0?{nSqp;d>FNJ}wljZm*T;AZml z41187zrZ)AwFu_u^<}Zcs402OraieY);C6r?}a4cnC6j9o&8tjdSE*^;$6MgpuN`9R#=nWKmh%~=3LskpJ%rrjn76v9+F9AG&HQp zsMjVZncF2MH*b5Riw?0xZ1M4}p(dqLG(@9%D?>{owT#Ber&5zHQFLd3B`wIY!Od-O z_kPXLvFsDby1F0sTMadNS-`fVVPFk911?dM9VKqA)ZHUtS9nQc!DHSXI%L1eUtH_1 z4}nW(zzrbFcXK8r%RsW@{g`tCnU$>~khJe6-)bPO-HZtzM07ZM{Tga?EX@=h8tL!f zoY(ZB`^{((Ew^~52FFg%pykZ=Euh`kDZSq8((1Nv`Qf};Ob&`gC$p<>9GJc1-fOXP z<%_(vPU~-p&##|qiLcbDyCA+3!<&s*arz)%eM2@dx@R7AM+Q%!<=cV-*adENH>9kX zx*f5%VozhDJ5@%MW|8R|9-=Nsu$xP8vr}QbY+}7@lVt2UxRiWfo^WDyGP8@ zSPlKKI(&FOfV~gzOy@rR=6d-z5Pokb&A{|n^#m|yWivf>;){Zzvz0-ocUPSCTZ@3@5Q}(7Hc87syoEk z)-dfd_H#tU20+U96MSl?!1~4p)V?R!t#*n%jabcB!igZ*08me!jk#o#WR`Bpt+}K; zEHWKOT{XG5yk&>YHL+}kGFs=+`j!dx+V1@?_~?;o zv$p#``0?dJN5%yDLdW*o_$`=FwmK4#-Z6g^YelYBM*?EIZ5w^E2-r;yoj|)`ly;Lh zn;eQw3LP<6IZp7BQ8Hnm&E0JT>gj49M|1+!f)l8fH_mi52(LNSf-k3)Giqs0D!!~d zf`i;s=+);!T>fZhdijOT(Dv{o zu-I@vF}drQt_$9;p6vSIovWu?g0_D|{PhPK8k?4qFl+i%+^6(R$Q}O@GRiTSF76fG zDnE(kuSA$#hF#%JAoqPKq9MDC<%2d667-1Z2jNan@g|x3E{Ga+E)GIsxQ8+~S_Mz`pVXdlNT!f4EW6zJk8bnKNBbp85hHdBY zjnwY&62C=$Px);Yz2x`0Un?cuy_>2{CR%l!p(Rdj6tUN_5p4Erc<-3*QcZSop|0jQ zs{uqjLOrV9-PErYaep7N^xoW?diiVB-$xAlN9ZZ~!wUU}3NVRhZF+pSc2Q{m#fW~3 zLf3Fpze@2;!qIf2pX;?Wy}m#3%|%NmcU&F;Wz3{$Ag?h>*mKxo>EupXJ4MgznGBvJ zdm2%3!z0yyh0e8Nt0C9>9#zb}KXOGvPeBvZDQAxhWYXrYsm)WYl0Bl1 zbKVB$ph48mK2(xZWn!_-nGwf{5$@y&`vSHZQlW}gPf3y#P7T}mDF0%btWB^{)!!LD z9*O(&$hP3=1=MW&^U#z#G14PJC$k(|;@oMfapJ&W1D5L^IX;Bu->;2t5VY ze$7{iDdh*^f_tc1HCbOcqRHoLA}E-Wx;SeHXCA3j)riF(|Gh4#Mojg{>O^iokW+-M z!wTZxWoo|#F@R#<`N$IwRQoqHE7m_gQgGz3#WHV>byEbmfZJ=DLpCQ>s3TjnVH+#* zBG*4QBKw9X){spRb!v9i$maOx<;O4bn7VoK(?*V;1TME)5|2dj#|HPM0N`F?jUW{ zBC7hv&f&u$s>LI3#fO_#fetQS7(O53xMzgZkFcK%!%*M_xv&tl}e%y&ntU2UhZ`xg)e3QoZ1~XrAVOc%~*I zQrSiU!u|v@EeN2F-;2)icGfCaM??l%8SN$Xj9MLx=1E?8*=3E0`)OENDAGKN8-fcP zft9}-g#*tId(>oHc}jrbRBr~W$?R0g6WX>R8mV3lC-{EWM9JX z-f@AZYESUM`@--}t?41;AwwPw$V1l66HOZ6PKh~c1e|+sOlH5Aw7&5jYef>)Gu&7? z44bM&E)$YS^Nm#Xcgw`vc9e9ATDujdPx<<1+C_>W#=e_}t0@K8IUK{>^f@<2Ud;6}C6}LHm%WYR@n|2i&>6SP){nPVp&8POC3R(LTuz@32l!&AH;? zemCr$dt?CZVSF&koEl&Ftq~LMmEoLs!A72E&0cQcSH6Nzwdjsv8#oZzrqMbma}C2+ zq+olfP6-=`c${UF?Zx5V13{MGOk=E~0|yP3V+^-#_~6HGmO>&{F>EQ+`xR2x4A=nZ zN5@n{g((k{9EmtpotXL_lbV-U0}nQ`?a+L~reT-VbT6p)tUA%LVVK)6d_~M&bz-OR zeH%1rqYm17AK6Ra8$%yGXxH=00+i2;#0nuU+R&O=iPioUCln1E74&q=#;%3}o$H|M zmB7aGI*aan)g?L6S^6zKIvxBc8FY)#VkiDW4i9?+DR$X#&i#CiQF_TJ=?lUw`JKU$G0Z(O48f8Eg|=qZ z;+X{VP{G8CA5HAG!CSd@F*^-4)J{eF(f5W!)<`oCmZ|GCrBvSJ7e{3UOMEJ@(+}*&5G40vWsu?+ za$2@nwk0O815V3UczC#@-^ukmv8TQpe9jDcPJz4QhLiiri-H86Qu&B${WT|KeT+Xk zVg7RSE$gp3*BuTwUUjma&S&!1UxCtO;}1^u2v)93@?U@1`J9t{zq zcc^VUXGhWEXioh>cyty$EmoYX*^+UQVa!W9ir8dB^mVnLG|3PZp;kwcsCiWF3nW|R zpChIFE<%FPQRn0iI$4o0#yRAmN(#G&uGjBk`lRSjEiiqBR4+I=4iwK04#9Zuy;h_0 zQ#KNI*6&+jvAulZvgN%l_-4s= zGQVxTm-ktt!qm*4RVlpeAGM}m=1+t}mV~II5(_(W)m@LIrmjn*sq`0N2!$8x3)-dj zv*_3`xe{w*o{|2c+5V2lsB)gnGtP9@Pc<@5@St!yTtl4NS)@u1N)~1IGi(K_qCTP7 zk(2zrW-6bjlC>Hq<%loWr~;ae+N>6Nl3_`3Si+;$7uAnsBpd3u=&bZL&?oqEObw&9 z{irtj-*C)Q+sKO=+Cu)P_X8IX^NqSo0PrAN;$XAXu zy`?;Q%N1~e+a-@X>Mpiicb+lX_~)so0<0ICuMeHcdCjRl;W_31rkb*S#GF;hul>k? z(UR0%1V06da<&h`UL8oHG`l>u%go`%Hnzv_l*H5owK*U49}a;MFt@)bly4?Elo7Hd zR{5D!!+CO^lP0kcxxfb(?EgWj;WGnK-wV9s%+Ns_15ReVt=IG%zhIsa-H6#wk>;s@ zogbNgj|=hNhPV?$YzQJ99}LC7A!XmlXT3Z`i<4PY&1_rjl-swL8>C^6%ct2=c%Sx+q+gtJ<-c@sgN6-{WHCVy+U&(%7RAbA{ zJI-wT?I~qMpypK^a>Ee!+oANyu-{+tfOQ5-eIt_kPU+Y_#BCqyk+P=;K^e6_@PxGv zK?mDf*6n;rxx&x10~@nL+?FBs10+euuie2(S9BX0wgxrWtzz)|7zO(RmJT`;t&T$W zd3+A14>}6Fes5vRuv9<1Z-wbM$gX6FD<4Y#2aNq**~hjEBAp_ID?DF>kn&t1A6rU^VnH)0{##~OzsL*#7kP-FxJ*Sg?j z${O7G#h~h6hB7lHIX~fBKXu_8ylORuHAC=*PrzurnA59*e93}BAI6Y9bUWskKf^qF zI|g2V0z>ahTOUVXAr*3PD1wjuMBX9vR=qE|6(R_vs5S#dW;SMjvI_-KwVKpj@F_83 zZgDZp0RbjpQd@sUb9L}G8pF&9t>O#kfX6DZoi2199M>>7s-Ivl2JO2~V?IpWl%d-( zfj`5@e}<7vz%*%t<3vLTG$LJ#f)O&BO@&_m(ez^Y21pPp8m>*+$m)Yki=uZ`Q0C)^ z&Mu7fN)~rxaFlRVva7dYP^Hl#xM)QTbJME~Um1B6hR~F7pPt?+_$St2EtS(6keN9v zG9*R0g+xZIiA;D7qB)?7*J@NB4Z?e9MtH@oS~Cd9Y++WDD4lLvSOO92_4-D@rWQte z^@?r&JXk*3=2nB$!YIgy_?W&mXuAV}w)QG4cpu6B!P9pji9X)PM}{olw>5g zpbb{-8O+R_+Ax6})stFykL(L?m%%C}(&+9$GgWqGl;*cclX(Z4Y4Gyf*Vju(Q+@{; zrR*Jyhftr5)q^MTHvmnz*o6CZ;k6vb3|P;-K5*d@;@(9wkfAtTh)*fJq*+7_&-vDvmYQ8G1Pt~J>p&pgepN8^??$Yl+( z)dOIX?BP7^-?4nK`XunO2EvJ7@{!M?HvkZy9sX|abDO-;1XB_ z`cYz`zy(2LG=MGgbWHOBe;|b}0M#akGqN#YP)SJ+?tjPkHX5a}`g5{Dn^n=u=|_87 zIGeo(Cx-P52z=ib$M1gu%#Oer1Xvn4?n`QDKQMsp?PRn)`hW0AzOIF-y&;@IAjdxj zxT{`n@Np|xuvXCo(Odrm^#wjwV5{xp9bLk*7W5A<%P$VVyGp3#dIlKqp?!6&Tnu}) zUzkxCr|L6g4)3|=PV>I!{uIkrN+lnFWJF}>6xEr5`exPXftnNW&AufX-kb{hX?%Zx zJ2{|J;{pIxs}*e$}JqdfC?p zqCzNHGy#4~ZVmoYy0Lcd*p&}O5PYOnL{{(voP;(7(!ul&vfkCCBY9<*JH)b2Ts??-Wu#TXdN zP55S<(ZV-4$lkmCunyd!Bw?xR2EfQbRhv98VchO$hHdjQ*o6k~S6H}VlH`ri1Ki?) zh6DwCmJ5hvx!uXLs)0ro@=lUN#W(SjRS$sK#GRWg>~+<${&e`V4f~9nCeVp>3#RVd zL5Ia`Hx2RyAq*Qc&>Wm3Pn@o7+~417*CQ`~o0o+@xZLt2>g1ur>Nn>|+T!6A73iuU zM8odtZ`%6~kj86Ct4#}C3q2kVh8NdBwwo6WK|#c6dOPbu<;M;7vxEIWq!nA#3O1@A zmO6VK5z+WwPb-h#N4(C8&t}D4>4$RM1-Rm9qUCY20oC`|Aer*LkN*Zsu-8NbdMh3j zDl#zJs^a?@YpcrHZ>c%QXls1?jUDOdK0)$kd4n2EfPx#sl5eZy{_F1t?5LH5DzKW@ z`$x;dzGKh#S3f7P(5t~BE4a(IvH139EafzgJrU6fbSUKbo`mltLh$qozNg6s=@EMNtHDwsQ}PTQ3d`&`q-Gb~%8xdF+|PY1 zsKLMEott1mxDUaOpu+0>*$?`;54>Xr~DD5DaZ|IZt|A2Aoh)ZFjcBnlq~~S`4V~5Ry=>S^6HymtH?Ax zS;;X>6_M!~rZID+E>o=lmco2^SwrNTX$DU4RU2@EpJAxx_ruqRSuY8U>jlPAWGn^7 zLOY*q_xofkFE{^w%Y=+#3rGm5SIgF*j$ie|<~95ZxkL*-LEyvI!RjF>wgnQUo-}h| ztHKf*nsq4YYL0~HNfM{C>M~mxn+=ykId~NfW+b(8;9kT%ev?>(bXEmpWmI&(As-ei zqsmAAf-8|EiP{2E!dhW5kel%LE7y+hu%Uwyhq#$_bzjV0`M?4F$)2~qomBC IZ@&uqzuRtl@&Et; diff --git a/variants/adafruit_feather_esp32s2/pins_arduino.h b/variants/adafruit_feather_esp32s2/pins_arduino.h deleted file mode 100644 index 013ae6c6dea..00000000000 --- a/variants/adafruit_feather_esp32s2/pins_arduino.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x80EB -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on -#define I2C_POWER 7 // I2C power pin -#define PIN_I2C_POWER 7 // I2C power pin - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s2/tinyuf2.bin b/variants/adafruit_feather_esp32s2/tinyuf2.bin deleted file mode 100644 index 82b0d2aee8c7aa4b43629b309138eadfd1189483..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155104 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 diff --git a/variants/adafruit_feather_esp32s2/variant.cpp b/variants/adafruit_feather_esp32s2/variant.cpp deleted file mode 100644 index 069f735161d..00000000000 --- a/variants/adafruit_feather_esp32s2/variant.cpp +++ /dev/null @@ -1,46 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels. - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); - - // turn on the I2C power by setting pin to opposite of 'rest state' - pinMode(PIN_I2C_POWER, INPUT); - delay(1); - bool polarity = digitalRead(PIN_I2C_POWER); - pinMode(PIN_I2C_POWER, OUTPUT); - digitalWrite(PIN_I2C_POWER, !polarity); -} -} diff --git a/variants/adafruit_feather_esp32s2_reversetft/bootloader-tinyuf2.bin b/variants/adafruit_feather_esp32s2_reversetft/bootloader-tinyuf2.bin deleted file mode 100644 index 12d2166aaa551dfe5d1747d7d3f65c12df4fd3cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22016 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 Lrt9UZCi?#Xhb4J0 diff --git a/variants/adafruit_feather_esp32s2_reversetft/pins_arduino.h b/variants/adafruit_feather_esp32s2_reversetft/pins_arduino.h deleted file mode 100644 index d39b50628e2..00000000000 --- a/variants/adafruit_feather_esp32s2_reversetft/pins_arduino.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x80ED -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S2 Reverse TFT" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on - -#define TFT_I2C_POWER 7 -#define TFT_CS 42 -#define TFT_RST 41 -#define TFT_DC 40 -#define TFT_BACKLITE 45 - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s2_reversetft/tinyuf2.bin b/variants/adafruit_feather_esp32s2_reversetft/tinyuf2.bin deleted file mode 100644 index b223d53f65854b92c52e9db5d637f55b752e5623..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174256 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 X74IyWx%o&@@1L4}aE9f5 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 OesUwI=ns{iH~%m6<%Ng< diff --git a/variants/adafruit_feather_esp32s2_tft/pins_arduino.h b/variants/adafruit_feather_esp32s2_tft/pins_arduino.h deleted file mode 100644 index ca713ac315d..00000000000 --- a/variants/adafruit_feather_esp32s2_tft/pins_arduino.h +++ /dev/null @@ -1,68 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x810F -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S2 TFT" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 34 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on - -#define TFT_I2C_POWER 21 -#define TFT_CS 7 -#define TFT_RST 40 -#define TFT_DC 39 -#define TFT_BACKLITE 45 - -static const uint8_t SDA = 42; -static const uint8_t SCL = 41; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - -static const uint8_t TX = 1; -static const uint8_t RX = 2; -#define TX1 TX -#define RX1 RX - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s2_tft/tinyuf2.bin b/variants/adafruit_feather_esp32s2_tft/tinyuf2.bin deleted file mode 100644 index 22fccd4926b421190bab14d42354b831772e21ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174224 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%0D~;^TD=O|_$| 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%0A>a{X`r!Y>BZm9cf8micfd^!e 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 Sd-fMqkN#Bl=76&1#Qz4CRDfat diff --git a/variants/adafruit_feather_esp32s2_tft/variant.cpp b/variants/adafruit_feather_esp32s2_tft/variant.cpp deleted file mode 100644 index 548ce9ff4a1..00000000000 --- a/variants/adafruit_feather_esp32s2_tft/variant.cpp +++ /dev/null @@ -1,42 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has power control pins, and we must set them to output and high - // in order to enable the NeoPixels, TFT & I2C - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); - pinMode(TFT_I2C_POWER, OUTPUT); - digitalWrite(TFT_I2C_POWER, HIGH); -} - -} diff --git a/variants/adafruit_feather_esp32s3/bootloader-tinyuf2.bin b/variants/adafruit_feather_esp32s3/bootloader-tinyuf2.bin deleted file mode 100644 index 01e821012114f108ec44c8fae26f960484347d8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22624 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 R%oD0T-!xrW_*mAN{{uz^=ePg> diff --git a/variants/adafruit_feather_esp32s3/pins_arduino.h b/variants/adafruit_feather_esp32s3/pins_arduino.h deleted file mode 100644 index a8c491a64ad..00000000000 --- a/variants/adafruit_feather_esp32s3/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x811B -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S3" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on -#define I2C_POWER 7 // I2C power pin -#define PIN_I2C_POWER 7 // I2C power pin - - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; -static const uint8_t A6 = 3; -static const uint8_t A7 = 4; -static const uint8_t A8 = 5; -static const uint8_t A9 = 6; -static const uint8_t A10 = 9; -static const uint8_t A11 = 10; -static const uint8_t A12 = 11; -static const uint8_t A13 = 12; -static const uint8_t A14 = 13; - -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s3/tinyuf2.bin b/variants/adafruit_feather_esp32s3/tinyuf2.bin deleted file mode 100644 index 5f9d486d3f9f5bc025476b0c9f2d31b5fbe5ffeb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165520 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ð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 diff --git a/variants/adafruit_feather_esp32s3/variant.cpp b/variants/adafruit_feather_esp32s3/variant.cpp deleted file mode 100644 index 52acb84102e..00000000000 --- a/variants/adafruit_feather_esp32s3/variant.cpp +++ /dev/null @@ -1,43 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels. - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); - - // turn on the I2C power by setting LDO enable pin 'high' - pinMode(PIN_I2C_POWER, OUTPUT); - digitalWrite(PIN_I2C_POWER, HIGH); -} -} diff --git a/variants/adafruit_feather_esp32s3_nopsram/bootloader-tinyuf2.bin b/variants/adafruit_feather_esp32s3_nopsram/bootloader-tinyuf2.bin deleted file mode 100644 index cc6033500b64fc74822cf38fbf3d6529dc1c6d76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22624 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 St#O(Y!TodBIwzgG`~LvmN#kJv diff --git a/variants/adafruit_feather_esp32s3_nopsram/pins_arduino.h b/variants/adafruit_feather_esp32s3_nopsram/pins_arduino.h deleted file mode 100644 index 65aec064fad..00000000000 --- a/variants/adafruit_feather_esp32s3_nopsram/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x8113 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S3 No PSRAM" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on -#define I2C_POWER 7 // I2C power pin -#define PIN_I2C_POWER 7 // I2C power pin - - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; -static const uint8_t A6 = 3; -static const uint8_t A7 = 4; -static const uint8_t A8 = 5; -static const uint8_t A9 = 6; -static const uint8_t A10 = 9; -static const uint8_t A11 = 10; -static const uint8_t A12 = 11; -static const uint8_t A13 = 12; -static const uint8_t A14 = 13; - -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s3_nopsram/tinyuf2.bin b/variants/adafruit_feather_esp32s3_nopsram/tinyuf2.bin deleted file mode 100644 index a5bab006bca34e583bda2cc9c28cffaff1e8482c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165536 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 z 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 diff --git a/variants/adafruit_feather_esp32s3_reversetft/pins_arduino.h b/variants/adafruit_feather_esp32s3_reversetft/pins_arduino.h deleted file mode 100644 index 8fa045489fe..00000000000 --- a/variants/adafruit_feather_esp32s3_reversetft/pins_arduino.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x8123 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S3 Reverse TFT" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on - -#define TFT_I2C_POWER 7 -#define TFT_CS 42 -#define TFT_RST 41 -#define TFT_DC 40 -#define TFT_BACKLITE 45 - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s3_reversetft/tinyuf2.bin b/variants/adafruit_feather_esp32s3_reversetft/tinyuf2.bin deleted file mode 100644 index 7e852a31efd6eee386d2f998cafea699437a39f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187808 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%0AWgWksm^?y-5S(KkbjIj+29TH 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 V -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x811D -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Feather ESP32-S3 TFT" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 34 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on - -#define TFT_I2C_POWER 21 -#define TFT_CS 7 -#define TFT_RST 40 -#define TFT_DC 39 -#define TFT_BACKLITE 45 - -static const uint8_t SDA = 42; -static const uint8_t SCL = 41; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - -static const uint8_t TX = 1; -static const uint8_t RX = 2; -#define TX1 TX -#define RX1 RX - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_feather_esp32s3_tft/tinyuf2.bin b/variants/adafruit_feather_esp32s3_tft/tinyuf2.bin deleted file mode 100644 index fc895760a15eaf378d325d39403e71fd838596db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 185328 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�#5kE&fanQ$8&gchcNi|>L>m|C1wPT!HJ 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

i>2OmMq;X6h;?oUqg9nbMdos zUTh`)JWm8!sdR2(;Gq+avdb1xj>QyPML&z@Rft(GdT_OpOSEsO@gF-z`EzG`S>FnU zdj(~FK6j(1zI~Y2Oj)@cFRbg^hEZLluH_G}=AzF`vO6uq(Q7t|R^P`E=-k0#C71Bb z$H!*BQj_CimsTq5!eq(a`06v>Vg4YjYB?nIXEqEYadrt+G=DjMN+sou!(~ES>CmQB zvf_KXmqUE&u@2E#N|BB!(vxrGUa_d|$?hzig>S}@IJhoX=zeX%t~>X|bg+lnT8nqi z;b*=qcPNg5M?#^}gR=rzlGbL;jRoe{Vi$5A=m_6{TFl_tp!zZU5^?)`8X8) z;(3~E&Qz&=U7oX_t*%A;xtP@c=;}*kU%_1u4Qg5@U-n1VG&L79xJt<-*|*nN))Fy2 z`8hk;9IpcAoe=WoZ|t_r7l_%A8lB@(SW1SGYOkeKXJs^g3!)rF!}eT?D5RNfO=VVG z_(Aw^gpLX+)=DTDSW^@u5~l7s=(<2D(e}DP0cwLsh5W9VH5X|iLU?TdH}==Sr{g@> z?viQ@M#vBj=Hca>bm=n78`2ee+#YiIWeXQToi(b1Z763N$|a6J9|aAaAI4)H3b1RP zsG!wQmK$7>#VXpfEMO>e z6F&wsh5%C5M)cvAwkm_)c&yhK_T9{n{VR@bedOp^l+kyg{OzMtVUuqTgJR~Y2&1hM z9^epC(gb|tTqMR%J!K1Mclx49#@R3S^A1_|{(^yWO^H3u) z1gbRC+03Y8#x_OHqkK13HH)}R2@MBB)e}$5-qr{{Xv8YiMXB4XD1N1BOEAKN=S6t% zNOMCjTi4wRmRZ> zj~B2<;dBE(#RW`WI)-Px5v*1pBm1*L{LUl!-_p4;wU=s)G~Uz<8r~GX!M6qI?gmQp zviYYYaBj)`zZ8ZmxN*=RZCM2YtEe*f4Mup13%vhK5mK%rs!k zyW)_)HoieDx?0F3%&x8RKYtW4o`qoTKFA1Q?L331U5HrMa_qXcz|71%Fr(R}RMq_D zy

XH3Ct#$Bw4EGz4~ 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̜su&9sQn91hcBQ*#I9ac(vZr;VxLnZj$@%oB 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 g;J~G - - -#define USB_VID 0x239A -#define USB_PID 0x80F9 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Funhouse ESP32-S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -#define LED_BUILTIN 37 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -#define PIN_BUTTON1 3 -#define PIN_BUTTON2 4 -#define PIN_BUTTON3 5 -#define PIN_BUTTON4 0 // BOOT0 switch - -static const uint8_t PIN_DOTSTAR_DATA = 14; -static const uint8_t PIN_DOTSTAR_CLOCK = 15; - -static const uint8_t TFT_BACKLIGHT = 21; -static const uint8_t TFT_DC = 39; -static const uint8_t TFT_CS = 40; -static const uint8_t TFT_RESET = 41; - -static const uint8_t SPEAKER = 42; -static const uint8_t BUTTON_DOWN = PIN_BUTTON1; -static const uint8_t BUTTON_SELECT = PIN_BUTTON2; -static const uint8_t BUTTON_UP = PIN_BUTTON3; -static const uint8_t SENSOR_PIR = 16; -static const uint8_t SENSOR_LIGHT = 18; - -static const uint8_t SDA = 34; -static const uint8_t SCL = 33; - -static const uint8_t SS = 40; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 2; -static const uint8_t A2 = 1; -static const uint8_t A3 = 18; // light sensor - - - - - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define TX1 TX -#define RX1 RX - -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_funhouse_esp32s2/tinyuf2.bin b/variants/adafruit_funhouse_esp32s2/tinyuf2.bin deleted file mode 100644 index 9e2422846d5c080061b926205969f48512f08f67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 164528 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

9UciGD{cnOFVh& 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�QV19`d+nwr-%I*>Mc4>(7S%E-&0 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

BJbqPIQyJ&$ujlQ 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 -#include "soc/soc_caps.h" - -// User LED -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// Neopixel -static const uint8_t PIN_NEOPIXEL = 0; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -static const uint8_t NEOPIXEL_POWER = 2; - -static const uint8_t TX = 20; -static const uint8_t RX = 8; - -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 15; -static const uint8_t SCL = 27; - -static const uint8_t SS = 32; -static const uint8_t MOSI = 21; -static const uint8_t MISO = 22; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 25; -static const uint8_t A1 = 26; -static const uint8_t A2 = 4; -static const uint8_t A3 = 38; -static const uint8_t A4 = 37; -static const uint8_t A5 = 36; - -// internal switch -static const uint8_t BUTTON = 35; - -static const uint8_t T0 = 4; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_itsybitsy_esp32/variant.cpp b/variants/adafruit_itsybitsy_esp32/variant.cpp deleted file mode 100644 index 726ec8fa483..00000000000 --- a/variants/adafruit_itsybitsy_esp32/variant.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels. - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); -} - -} diff --git a/variants/adafruit_magtag29_esp32s2/bootloader-tinyuf2.bin b/variants/adafruit_magtag29_esp32s2/bootloader-tinyuf2.bin deleted file mode 100644 index 43d83bd371080ef3ca20e57c4ba25bca4244645e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21968 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 diff --git a/variants/adafruit_magtag29_esp32s2/pins_arduino.h b/variants/adafruit_magtag29_esp32s2/pins_arduino.h deleted file mode 100644 index aaeb744ce0a..00000000000 --- a/variants/adafruit_magtag29_esp32s2/pins_arduino.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x80E5 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "EPD MagTag 2.9\" ESP32-S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 1 // D1 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 4 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON LOW // power pin state when on - - -#define PIN_BUTTON1 15 -#define PIN_BUTTON2 14 -#define PIN_BUTTON3 12 -#define PIN_BUTTON4 11 -#define PIN_BUTTON5 0 // BOOT0 switch - -static const uint8_t EPD_BUSY = 5; -static const uint8_t EPD_RESET = 6; -static const uint8_t EPD_DC = 7; -static const uint8_t EPD_CS = 8; - -static const uint8_t ACCEL_IRQ = 9; - -static const uint8_t BUTTON_A = PIN_BUTTON1; -static const uint8_t BUTTON_B = PIN_BUTTON2; -static const uint8_t BUTTON_C = PIN_BUTTON3; -static const uint8_t BUTTON_D = PIN_BUTTON4; - -static const uint8_t LIGHT_SENSOR = 3; -static const uint8_t BATT_MONITOR = 4; -static const uint8_t SPEAKER_SHUTDOWN = 16; - -static const uint8_t SDA = 33; -static const uint8_t SCL = 34; - -static const uint8_t SS = 8; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - - - - - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define TX1 TX -#define RX1 RX - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t A2 = 1; -static const uint8_t A3 = 2; -static const uint8_t A4 = 3; -static const uint8_t A5 = 4; -static const uint8_t A6 = 5; -static const uint8_t A7 = 6; -static const uint8_t A8 = 7; -static const uint8_t A9 = 8; -static const uint8_t A10 = 9; -static const uint8_t A11 = 10; -static const uint8_t A12 = 11; -static const uint8_t A13 = 12; -static const uint8_t A14 = 13; -static const uint8_t A15 = 14; -static const uint8_t A16 = 15; -static const uint8_t A17 = 16; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - - -static const uint8_t T10 = 10; - - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_magtag29_esp32s2/tinyuf2.bin b/variants/adafruit_magtag29_esp32s2/tinyuf2.bin deleted file mode 100644 index 36b7a9bdfd1a13bc7d5a0fe715ba058ecac50bfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155136 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 diff --git a/variants/adafruit_magtag29_esp32s2/variant.cpp b/variants/adafruit_magtag29_esp32s2/variant.cpp deleted file mode 100644 index 750f5f72b02..00000000000 --- a/variants/adafruit_magtag29_esp32s2/variant.cpp +++ /dev/null @@ -1,37 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - -} - -} diff --git a/variants/adafruit_matrixportal_esp32s3/bootloader-tinyuf2.bin b/variants/adafruit_matrixportal_esp32s3/bootloader-tinyuf2.bin deleted file mode 100644 index dc5dc9e6e28b58c990cf0952c72194e8041b9d50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22112 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 -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x8125 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "MatrixPortal ESP32-S3" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -#define PIN_NEOPIXEL 4 -#define NEOPIXEL_PIN 4 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 -#define PIN_LIGHTSENSOR A5 - -#define PIN_BUTTON_UP 6 -#define PIN_BUTTON_DOWN 7 - -static const uint8_t TX = 18; -static const uint8_t RX = 8; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 16; -static const uint8_t SCL = 17; - -static const uint8_t SS = -1; -static const uint8_t MOSI = -1; -static const uint8_t SCK = -1; -static const uint8_t MISO = -1; - -static const uint8_t A0 = 12; -static const uint8_t A1 = 3; -static const uint8_t A2 = 9; -static const uint8_t A3 = 10; -static const uint8_t A4 = 11; -static const uint8_t A5 = 5; // Light - -static const uint8_t T3 = 3; // Touch pin IDs map directly -static const uint8_t T8 = 8; // to underlying GPIO numbers NOT -static const uint8_t T9 = 9; // the analog numbers on board silk -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_matrixportal_esp32s3/tinyuf2.bin b/variants/adafruit_matrixportal_esp32s3/tinyuf2.bin deleted file mode 100644 index ac5b6e0189900664c55b78d687c97d3c1c6ca3de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174352 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 diff --git a/variants/adafruit_metro_esp32s2/pins_arduino.h b/variants/adafruit_metro_esp32s2/pins_arduino.h deleted file mode 100644 index 3b2e02b1dc1..00000000000 --- a/variants/adafruit_metro_esp32s2/pins_arduino.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x80DF -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Metro ESP32-S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -#define LED_BUILTIN 42 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 45 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 - -#define PIN_BUTTON1 0 // BOOT0 switch - -static const uint8_t TX = 5; -static const uint8_t RX = 6; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 33; -static const uint8_t SCL = 34; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t A2 = 1; -static const uint8_t A3 = 2; -static const uint8_t A4 = 3; -static const uint8_t A5 = 4; -static const uint8_t A6 = 5; -static const uint8_t A7 = 6; -static const uint8_t A8 = 7; -static const uint8_t A9 = 8; -static const uint8_t A10 = 9; -static const uint8_t A11 = 10; -static const uint8_t A12 = 11; -static const uint8_t A13 = 12; -static const uint8_t A14 = 13; -static const uint8_t A15 = 14; -static const uint8_t A16 = 15; -static const uint8_t A17 = 16; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_metro_esp32s2/tinyuf2.bin b/variants/adafruit_metro_esp32s2/tinyuf2.bin deleted file mode 100644 index 2ada2351cd3b2348483ac989d8736da8f9fc76e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151232 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 M|Mr_J&o&(WKXI1IZ2$lO diff --git a/variants/adafruit_qtpy_esp32s3_nopsram/pins_arduino.h b/variants/adafruit_qtpy_esp32s3_nopsram/pins_arduino.h deleted file mode 100644 index e8f4ab08130..00000000000 --- a/variants/adafruit_qtpy_esp32s3_nopsram/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x8119 -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "QT Py ESP32-S3 No PSRAM" -#define USB_SERIAL "" // Empty string for MAC adddress - -#define PIN_NEOPIXEL 39 -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 38 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 5; -static const uint8_t RX = 16; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 7; -static const uint8_t SCL = 6; - -#define WIRE1_PIN_DEFINED 1 // See Wire.cpp at bool TwoWire::initPins(int sdaPin, int sclPin) -static const uint8_t SDA1 = 41; -static const uint8_t SCL1 = 40; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 9; -static const uint8_t A3 = 8; -static const uint8_t A4 = 7; -static const uint8_t A5 = 6; -static const uint8_t A6 = 5; -static const uint8_t A7 = 16; - -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_qtpy_esp32s3_nopsram/tinyuf2.bin b/variants/adafruit_qtpy_esp32s3_nopsram/tinyuf2.bin deleted file mode 100644 index 983de1f1f0d9bda0c1fd39621ea20991b3fa2d33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160832 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

AEP{d5@uiJXFCbY7uoB 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

1h`S!RJ>yUN1CQ=R8Z{U( zv*KU^qTyRZI{O?Cu&#=KkxkVrcq$(#8f-3IZyC;2V2n^u;*a?k+KHHwh0Xq zd0`yKP=lVK)AQhDCM{5|FHTkN=&5Eiu9cS;MHGXn#gmUtQJ1(fPn3H&kESzxNurmO zLuFC_buBWQmP02IaQ@JA5rf-oJVWxBde9kCPdzx&fPk>Wl4}#FlCOarlgeAJ!8#dq zqV=f_AQ* z4k>!Rro!0%yz=v7bDARC_q8a%Kh;!QRGkZy27#nBNVldlFtg~KaMFz5vgpZQ7@2de z4*sqRH0Y6OVJy$=CqH!Y`w64L*kKpHlkj^))IAr_2=F+^5v)h&cno$N_+S{?(aDRp z2qz)CVm^K1F?Q+5w5u*&{yB{G7$H&{%rZtMU_}j45`|R-xMCI)!YHq+Y33FV5QeC5 z#R@wk&*GOk`!^RI3`DT182pYsJFI!_S*wZ_8}WEv9!9m$rkCuKf07Q^ba=L>5>0Ii z0!Obp$DQA4W&$=@@YqgnyDlf-{d_FMqSd#@Ztq_z+Y+7K<$@#TT+Wv07)#`C9cX>~ z;C3vRrW2a9h{KOk@Eak91M+ZBEzkK~G&Y?XXZV6+~X7$9WE?@O*;E3kz%8UWbb=3`j z2f}kHxFdvQ&Z678_&Eao%!tgC18ydA#s<0voCVi3eyY~1GxP^Diz;~LT~+P^h&h6m z@9$Q6Hg{NLoQsa|E*7&DQ^G+RjgsB!p$4dD`)@=G>i4m2H_2@v?%1yO$H+h;hn6x) zq^~0@pRrR6%TH~_^eqawyRI|D#A56=mtG7`cQKrs5N|6kep}q1FIy)MV5_cXSy1)r z2rPV_pqi1tS-Ziu)&*Cl7hqKx2t>V4Fk*nQK2arCw=9RZWDteTF76-Tj5z_hB*jskf%3J8-iR(YRtp8 z`qi=xX#a~0)95rhK(%8FwmYX$Xxf6M1-P7uo;kt6Rz%PBg8mJ%hP5`43xuUM;f4lB z4hHBh;<*Do2i(rIu*g)LRkWjr%YJZmOKs)5#fL604U z95>|9=x&hB0&n8GaIF9$x?QM(IAhNJ3c1V2oi=tAzBPjE(W|$Z?-xiCN`w&)d*%QH zHAnyBq;}AxRJ~W(i>Qu;fJd@;#Zf|7kESgdeQU(Zuy*tz2>%ofP$M|PEQ4R822HLq z0Z~vepMN}tQ;Ata5P;vnYUFZlhS|5f_ukwaOT436Qt*b`&1von^ z`5V-uu6_p>FxAzdrhM|dHpLM_HI}*k{daNi;6W5!1DSxRQz7p`1k3vEumM@QqO^Ln z5OWw|DpyqcehQi<*MH1x*?=rW^BTB2I$d!cA zbC697<6S5-qyYVX-vkI1|I#!^<}d-8ZrVS5DgL71RT4Hj?^ypI%H9Po$}0aKf99EC zW`IW>24qk%pXY&L2Gg7wEWj{_Nf|6HBo#B;MG7c?wUxPR7uy&tE{fmvl8G&C1I3E2 zZc1fzu@DQf#cyWq=I+|2z<{^PTr6)n|M%xSa{+a?|94)mGv_(?&-t9s`JB)BoZFK< ziVV;=kHbm~=#B=@`-$#s>~h{C%VX@Dy32yHvL$xloWcAB4)qU@Z@FCF;a{61$VqYK z_YJp>;_hq0F4g zVHCtO7_1%g1F-q-;Nl(FpEP{#Tj6~x#hpC3d~I7<+T$g|OVUT&rw}vdsGg_0w^UIh z=q$N#{K7p3o2wfz9UWQ#pk^JPR0k)FQbxvaU$+B!VHIrpUEphmYF0 zcG2*#f0d$Y)B9#puE?_{EL;?Sz%PseC4y3J2{h-dsom7Go~Qiv1fx9r5+A5{$X`f+ zIDx=&*X+89O1HuiwYl%I^4+-Q5^~JpDC6SH0dz7j*SfXwd(?w7&d{@SUatFQ2M7Z* z4B`nmR-^mA%l0q36N!+~VxpOWC%E65IP&bocz;f2>s7-w%IM2au#s={m z*gMpw4QNx=9qT_PM50;C=q`H5YsNqWzKuPAD^>^*W%n%4!|QWZ9Bl$xxjg<@5F03{ zyK7!s;GUGKj)Iotnq;Kf98dI%0@-MOR^yST( z+ozToQ@7sMsOCyWra158vMaiSSLm$oMjcZ%(n_*3`9=ZoV2*vvUlMgTB(wTzdC(cD z7Kq+fmRB2>ov(IOy9E748OiAU9fj+wT_i40oGN3jwHgOFYOR?gGOejJ3TN=jupH7c z)T&pOmqd=Pa@8hmjLl4~PRdNUGUBSJri7NLx8L~zo1a*|O~zWe%C&Lq<`GQ^mX}l; zvCO>Dh0Lw`Xo4hg#!7)xypQvJ`IGtRPvQ2?>c(in+96dx?HxLd2v`>ub?+|hUi|v$ z!p_#V&S8&s8d@7#^Z%^Ln_u?m9K$o1aV>3Lu-M!B)UThM_Shp`)7NJgbUzuf_|G3r zH$SyynZ~)okU3mXfs5N(X*WcOwlw7!__2~y!uP$8uqG9!x))iYG znAT97h|Tz=&BoAtX*pl+=0+_=i)Uhkg`;hh^H#%jSz*-#A7pMZByY{=8gwna$Jnh1 z-b%ay^Nhx4_yhNGDQf=o2{j0H$N28u7rVBp zQaaN`Y*en||Cm6raTT-lZP!a{n<70QQym!1ZsUCmNQC2VQmLe4T{GU77sg6`UCp@E zxL$NDjFT4*_x$=OV#~W{ICjt5hD{YXh^6s-O*y2mJ&jnts-F~^Z*Ch?{`!&6_8x8X zie>K^8nD1zPtOWa8#eJcBpmpTo-=Vb4A)%+nG67x>+~yLRmEs^8s}s``l+uKSAjy?Ys#UIiD!efLs^l;3ZU*1vFc z$1_J)ly7NRivyYO@oT-D$Iyk17*K#DSgtliIE@#;gOIQ*V!yuTt>`%bDGz%?T9@q7XPpzGuplKo`J3t?+(;+)*ZMExGpDs54hZ}Y_33UNr7F7d0X zw^fN{g)ClKYz{krk2z8wJZ|!Eo+Vv7e%)2Q(DQhg5Lx|LVpDZ?Vs7;;p`%(7GOF!@ zl}m8qi1t{Cl;%xEXq}GeW#_${ZLP|=x#&a0fjXkcjpRl^|QKAa7VRjEP)VHt7Nn6-0Ip; zMr+0$WqCD4id8l*&K{ArowdiBTf2mp;0zxd^-Mv{sCaA;Rq(TBQrEH*fjGgWj9zZ) za<0#2Q9Tp8>L+&LGgU8&v$r&0Pn+6v{s>4>vUMqsn}W!Q#>P{uT7AlhAJ<&p#nw1B zQ)#vOl1%JfWAyJyQRq5&me?jE3qg&G(3E9JTC;ZECFbSDb)IeZ*6!E5+q_LJa-1tS zL&beQv&gXe)pX}nZ@Tl?AJUzdUdDU24e8Fq#9v**xhRj|ZwdSkuf!YVu!DYN)7$7l zcNOxfgCX}}*oUu(dr0D(4gQ^#TOn^v$8pB62~n=*tu$iA+L#5=}x@k>wNP|q&oyU zFmui&e@l02@Gf%AigafNOr4fCXFs(;nno_b_M_@Vwue?reDw{Q`N; zKz`$H*f-_#A$(TntaRro#9MF|-q?n*p`1&2BOdvyHCjIFuAzLEE|SmcL0#kFE`lk6 zsfD`^W)Z&MftiZ$T$l(Q=l~`;TPS=9wg~$WY%1#;*jhcGWrPu7roy;kehKps%u_HQ zy^-!*4by=#{YdjX{N9Jr!o42$n=rd!4#0d3(}Dg?^~5HmENc|rjQb2|}nxLJ62z8iFLG~Ia) z_It?ZW0)5Vs3+cHHw@#mH0WCkx|FxhXMhG;;r9{DCI9zm^G~O=j#Ig&!F?A@RUGG} zx4fq!|JmppX!SfK&nqlJ{^&nm*b5Lw@0BZW)T_92bJLyMe*$h{;Q8zesMm9#2bAAB z8*vZK2QJYsTd|)?jN!9VU=Rj!0Buo!OyZo6!0$IOzlCW+`m6=%&Z_xnKcv6zx_{BT z=p2lH**oat2%C-ec?k9)m`Cyb0OC#T1wNpbUS#C6&Xwc6c!W*-Q@S(ZP4r))d&DWM z=3GkqG% zx8ObbPQYe^f72G!=>?9fng-m#uLkxP1$@@TS$Ml1c=V3soXN0XfSrhbR&#H<(*Uy? z@unl67hunToda_#OfB4Z!k!0Xzrn`kg4fr)K7;RA#JL4VkN9(P98m?c?)`)9ksVQ`1;71BC34(-POt|9>W26R7y)H~X8rqa zZ?0mcAR^8ot7I&5`^ z>43SkmUGRs(t2J}zZI*cc8Vk|tA%sFQxdefXRY;By1fF$MM|n zbWd;`#|AkJ#zLV0lYsH53Gfx7ehYSikK=ng%sJ3l*AzYr59ww-J&9=kJO5wc9(psM z^#N=r>|eofZ+@hC1MWI}zXJR3i2DzGM`j_cP*q3;4x?T>4BZ^83vLZQE>)qt8Hl6w zW<*e(^N)G{i;~ugK#?*dN2R0OpTi z9$JLu7mw0jQ8W&Q8RVHlm>Xt-C(eNU1G8id`uIhRTQK8}p&vh; z?tBhy)`@scFo`gS0pF?RpcB|VFvnotHtw6U174exJfV4ikL` z`Y_CcFx$ZwYUe=qdk*%OoNL}cF~(z@0lbC&F_;R97&o1KA(sbJmfq@r<<}g3+iQ{b z0F3`xaHi9!&1&>x|BrtCo#4%&wddvmUXN5CNbCceu+Dj*mC zaeSW!{QWR#sAmpL!gh6G84L$wfQf?wT+*UPz7;NM@MFTH^8?Jy64kJfhHlg1Y>}SgF$zFwga+J4dmk%jOB-6 zRu9M6hcKeCaqvHlJki3>>UpJi0|8SKklz?^evUgb<%xUIR}f!>LD;iHVAm{wtOR=^ z4CT}EOSB0LPi#0^Z7{m&DVsysO5jgG>V))nnjE9G487B*L^_;_w8@M3nah%C3Ta4DHzg(*$!4ZJ^?uB1pww7q4p;5!4h4Q3hS z%__*3xv+0q$UUQy-JFc>C?|;)37RJQpl9I+go)z)2vBq-&!|#$R-J>_$b3W@Jy{Oz zRKF;`hJU8hLAcxMrZ_UsW$4BxF+Bv8Lw=)h*&^xxf^OzwdJ4m1VuP2%f(>>cOvX~T zm}EnlH4f~h!t5IgaHK&T*^5Il1n=A;uJ}$|mVp>Xioq-10A2Y|^erAL*PU6=!ra&n3zyTrJ_T2LZK$ggn~z{0D3xj-eGIEP7PdBcs;<2VW);xKV? z180fN#BqjU93sq6TizIlaDjzWa)2>|mkW57nzy_WhkFM#fUE)++n#P$;SUAiKcHU> z!ZukmKEhET$nHdIL8?wR352y&Qx5oCldkv_lzk=n*AqHXMZK)UN?ma;JWtCp8E!GH zO!1-1rN<^YbcwiiAF2BMn{^pFtI3k~-sIDvb{Vg6xZ~skf!YTME8yEl0H7wfxeuvD zTfc1L$0orW8FV89t%0(_>76JvNV8>K1j5_N50?c4C|4u_rS3H5;0i+>HZ)w3hxu#d z;V=Omf+g)OSr-@WK=E_C&LNv1E&X3;Pr=v!owkB_wicxDNf`y>)zI}#lCc>Ne{#%Z zUdp*B-d8T()i6_=my(S}Ty`c^*P?53d$Q@N@0r-&EAY;wbxIc?eIe0ui%uBnnM4tk z0|r6=OjC=gN!NG|*a*?NFhsyzz)d>Ogll9N?h8ir7e}lrSC<<%Pq%UoPRHWXcRH=& zk*`(GvP)DF-Z8%#Na*wwx*w0;kl@fI1p8ARjvyf&`h!QfGF?s-ce@3eW1a=;D0nkS zsHRAW@6wiL_!X%mc5M5;e{pT|(sRwC@nivm(`^be> ztV!`;0{~+tKM>$hoG&Sk%&SD_l52*48puQbFL|^Nj8oSowOw%VTp}+f8BlIbm-GR- zg>uE+2`;APIpS~Ms-f6l4Nyqu3wYnU(CGpb;W-LzJR1mA!d@R3R{Z^-u+4<4Fprbn z2C0#}Y8FeclC2%fNiSa*_da`5@KtIb=?{43+582r`IhP~Wb)GQFIce^3EXK6P`?pj z#a~j`1`2zT!txQ806?Y63w1pHK!?v$Mu_x0A~BAO`^CYFk?&FeW|P%qr3LFQ&>kq}^eQJCl{t=DzB#CJ)> zGjv+&8Jr{%WxCMWyej2QAK+LTrFf26)@_?es}2s=7%4vJ_eR(+M)4EF@kB`o`i0_& zDElwzx2I7>d}F`>! zRglZXH%Cba&d29RNxRR7Iz6!#$STUPf%7@I9ti#5Ndf&Kx~;J(msKHSCj+qG?XX1HUKP=2DzqeT-+* zWCn=C*6}6dSZBD9 za+00AX=oyduLCw5d#@8l?^m~c32?@#+R=+R-{rAK_)&*X3s zsu*O$RXLLY8EDqlY#D;IjWY(z@$uz2j@`bK;!qm}u%bYpVnm~~zs^bDp94Z1UOg}Z zo)yZgc$lhP{*USEIjNhad;LeSv4QD)(W>@1PC9&!$j6)wl$NonO_?J}`jUCd%+rOv zaALB70+U1*rC%;E5F+-9!gvMujd3an@aUWE&!d}YpJTPSg3^Y_rXj4|qGVmv&StzV zUGWsdNtFG)b0J!5{FQ%mx;35A+G46?$CoYX=wKa##)J5_h{42-X%63BLTwM~klTLv zLB0tc&OCzk4pqt81Y#R916mFdOr)wJf{LIvGGF9K%3yVvO?9~IT6GvIn})JFp#E&U zb~C;l!v<~NROT?sx|p3s)Mms<5oF9>elEnX6;5g{^lvU0T!Xp>YXOsWZe(i zcaSA64h~c-#b{4)+%Q)L20?}f?B+(4zk>`hyOax1Fxn(J*e1mnxpv4d*XR#(i+BZ5 zB}UecIs+T2_Ho#BL-;_}Yz*Fosat#lBob-_KvTTkkDFc8D(TL1pl@qA4d>y(y^cBu zBllho8Wz-_Cp^*@m?xXm-LxBW%uIf~dNO8OHrYK<)=i8?*I$Bae4`~!UQ=YXpaoN8 z;IE>TBZp2jW8O_AN%nI#n+CVG=JVV`{myChC?6S(SG4#h%zshF=}A~zNhQd|Vz6b>;8GSaO& z63GkDg=Kd{&h>;tJl^BW_HSNlU22uV>s%&bzXm8&1_tUrCId+`Pr-K3{O>VJtHq2G zC?^PYS`6+)u(G}XN9r7G*uX^wRIY>qWc#;2ib-X-Jj$VqVBK0Pw?RhKI&@lDr?I5% zbeIe-U4-;49$rQ#Mf3Th{3wpio^?zxjUYKRLOS##H~`6^5tby39DeDGu*a)ZUIgc` zfQ&Gq=PTawOGkc;mpSuRZD5{$6m9A#jgj3>*%EUFcIAQ?*%TvM!ASbi%&DepMImIc zPNlb+b~f`lzrdhMBHmt9oDCVppJ*FOL59wQUSmgkvjuPbH0}r0=gj7$4}WB=Viw-9 zpeL)xM^TfJmv$yV*2rzVTpDTJkh;mbiBQO^LP{CA0Nu!$;dYs#2tzDea|d$3+my0J zRU)Hr=)tRt_h=!CrRpGeON~Ev7J-~^B1XX!3m$KvR48w#)QSm6i;Y+)HQM@i>R#*K zt4fWgQgtpLMSvas*R0 zTj)InGw;`?B5lf`w2LDp=^CXb4NhBp`Em}{+c_ydkXWWUE)H)=#;X(KY!cK&sU{c; zVTm+vLOw)zX=pIlUATk8eExEUj*}vTeyn~!UeH(%!2Wn$q^1WrUMwa z!iBI20vH7AED$adcJVmHZuUV^4a}*2E-f)R71U@ZmKev1kNzLh79nj$0dyeG1=KFx z^iFdiC*NU~6XfH1@Pn86RqE-blOx7!XGXf*hM9VoJI>)wl-=Uh^$`}cSx+38thF>1 z^E^b0kaZ$NK^@Jxsc!Y$%erS&tAH8O20mE1aRX&(aJUno7NjgIMguRYm|_#L<{QWk zXfdJlv&2Hit}qep8=5U_dZiyMf7PJtLZL{>X#U!98Tvcp5UUC7%(?+IRsqpKaaF?A zRAAnB8RIw9wNOav5;Am_q_WUFo%E?puQaf#LOCJc4G0UUifFlQbnB2ZrBHNZnI<-! zU=a9r1A?7JkdfL2BFD#nfH#g8G+0!PuU)=M1q=-;M0TZWjXoaX0eT3IwVFS8cJS<*7&t`-$fgcT(7$JE;r+jS15X)+iIyeu^i^F_k zn3MwGNcL{IjKpEx&{a4xZyA82#!U*2BonI|jR$W8>o#O?aRG#dLEgGJ0GImehzjEV zf7Ge}?4VYmxqgUi4wJq=%j#78r@?i4n4excK4PYp^%1DFhqA_RtP52P_3&*R)cXGz zTu!LIL2mjcy-0c_l58v2!{qm;zR;yymG3}FoB@!{aI zs7@ip3-lMPEq7iWCtPo3n4-Oz lSKq3Ebv3UXRM%Gq=lvh+x_)pxz$wHA$DOMy z>haPG##h$$xvTQHx~@-O9p~D0y^2<2lG9J)}#y z2F&J12Eg3-&>)!2gEJ-+0A`Hn17R(`7=(4i;OKxAuP_7@fIu3mr1+Nuvh*!bvQ%0@xzWjUiQdo+G{w=u zgCf5O~GG$y-R7f(Nmo%>S?-H|EOH2e2IZ zI_Z68V`9WH#g(%91X+b(00h#T{SI8;(cCW^X)4EN)BFsq0IJ#goLWq}kNM%QHY%^F ze;~kHdB9GfnpAc9Qhk4h>@uk&Z+}2YdP!*j%*7~1jZ1o|zk+JV<(pJ_e-*_xk=?NR zTA*4%o|aia9DK5tI%mO9X=Q&#L8yw)vnp2hXOyCf&ns1Qn1)&lT)YDyo95UwX3Nk*_6$2O=sermbz#Q|Bi<8Cm00ew~y68nG@NnPerdg2$7wZG54Ii#JHGr9j!Ol{Cv;3|hXen{D20`1EQJot1!>rf zt8pT@UY)D>CRl@L(WrDYMTU)+QF$&N8WJ71ix;BID+gCPxJyEb&G?Hl-V}+hQtbdy zil!TA8~}E8)uhIM)6N7GkzsPERYV7kq#zsw7N3)hD#yjkSpLCGN1t^D%4VAR>mnJO zfnqxmQw?35!v%fFN_iB7+eFNYOF^fV^hhz15xx?EWBQieQL@)5yQ3XC=rf{2c|e6B zx9P)apP;mCew1NandZ_ZlKO#A;adO@fphAYtY%#HbMKXFVDr}AbsC<8xuKg9UQB&F&kUkI!4 z_A79U+X|JTfaaXLFhAVJzpP%RnW>!|EnDIqjw*5+9*!(>$33hsawp`w6J2i6;ZBy_ zR;6%;JJ5s3CK2$5hRKRaC^`uha<5WIp*r4bnM7bc&x&fP;QXHfjoXe2|9JYTle;_R;FnG2Z+0Yp$o1inq+`D}S z&Dz+e8n>oB2E9j<{f{$Occ4khtXCgChzM7QO8d{Cd+DI0hJus20Gdh@Z@dW28;x0M zn4)h;wKQ31nUbuxP}j-)I3rV!w0*_~hgy@XyMF3C-KaS~ zMSP!aKmLlmi@F$t<#wbIv)GW?HMyGo6u6hc>@ zDqD=`iprWFTOP`ZSHbU!#XSsrU_gHa7GyUjfJ13~)(V*I54{F%e?z!+vrHhIu=Pot zw#tgV9k1mepxfbOGcF(u2f$Wr#omUR-U0S?jlV8rH9 zNWVM@RSs++m^!z7 z!nNuM3XU64$HZ&JiIq*UK(*{1ZFR3Cg%FiJNW6j;dVyv6)s~A$ z`N2BnVZjF4{DUIOC%mhDv;FOlQ2S0z!OHW)3i7WYmIT?9FaVL)T?>&W*<@mf90ST} z%Y~loD$wMD;e^R}hiN!&CJkZ|a{ZXPgR)7xQ%<18AizDwvTlgg0{xr?-qEsLfH=V4 z7?pj}PF_oHk7BBg(zfrnV!31}$WKi-X7irS z^kDIo13hkr0*x}#G~ejYv9dCFWzpfDG+KpZVLqq7LS|tN5CTBcw}->bQ~cV|N>g>7 z31(Jo^V3EMhVc@4!PPKBYesNtr02eWzbyb~P^NyCAf>%J=qHi*gE)^xIxW*hYw!u~ z3OCf919xLyQ_f~`ko3U!qyWcQPS<@w=DP-K`Q`T{6*1i^`mrT8fk`3ka|mQ5;^e44 z7k}m={)tJoL+1}oEI3u1WnGeV*Z1*YwIo!nOv_#BbS??W2~-#DaKZ$H9UilI#Lq!Y zhehSslS^^?ztPZZ-87^%#*xZ~Br`tOG=SIoI!#R z7azs351EfHlT{cd;sF~}=>IheA3?cdcQ0+-O--l80Ia(iGSWHTX%p9oPEB|ZVjWhv z*@%4u<9nZ9u7HdPF9!x=^#oK!%7fGQwu0E z^{9$8{WQc!hbv2R<3sOoO_rwNLvXlmVQVzmz@_9oJ%cd?PcpT4NH2jhq)9A@<{_g) zVbqob*VeE{yZ|zANqG#}+LEG3(y8bc@QSQChD%(G7RSmy+EE!y@t{-EX}J_)S_G|; zgF(5*gU*`@8sCAYf*8ewd8Yi2Z(uU$cwro)@VvpC39J!&$&sqX1n`RA8zeK;xKI{N zc})Xw1U{i-9EPmSgX|yOn7pzSYqDb964s~Oi~Sk2b{A3$gC!etsyON2-^rz5S=xb; z)!b$ye8R#g1b`gQT8d7RV&p4s#pe|}0_HXhBfl&529ealhJFok16zrUcmP_FuwY() zS&JPo6mSE)EbCHP9FjH0GGyo=t&@}+o@U2`)A1Ge(71qQtO=9~?{8nHIBj!f2w4Wo zWCEiY=u$CHj%0Js#_B;Rufw3Lgn{8T3<`ptk~9n$LKU4s9Y$J13&B!92o}WS+i~g! zI80~g7$}y~+{li)5yEgIO}cTq!|PASF21o>WA3n#5I0D$WO++;4gwpDsrXW&i$7n^ zNd#b5q5iOZRR+rBA%<;!iISFmSF_ghG`-DCQw9hsQJo+;2n+aP+jN+x;ZNyo2NjiN ze(Q1$bVZ;`WxzzSHyuS^!F-?QEBU3dq?My7i*)~Y0VZmqfh(N`cv}f*WQeL)*48<+ zk0GBDnXgzxn+@8tRqYR94IHWxTZ=GU1bxz&kIKd4EjAWs zMiTSkU6^kNQYmrNG}35Xd_-`h(FR8vsAg$goXlI(*%++}kG-1U7#$JziwKU<+OVIN zjnTUB7_B3?^$Y@Nj4&DpJ|i(62R@@*7}N3 zF1}g&bNSle`quIWv{MrSmBTa2pkU?A)l`DA&#Ljy)*;~I2?W#^0#5v-- za9~DzlUOc)6zBFO}hh8My77c*kIixrrk%>1prvz4A<`7Q0?%}%pkrlj{rYfOEZ)r z1|FlC306}^mu!h0n}+PV$N`D`pd~FbKrT7+6hb0?wUBF{t&rp}**n&<4%;)GZI)PU zoj_wg#Z}BCf>k->p~w%1$5@669gUN9<5Kq$9nr4EjJ^Mbj@~z3qsgq{O3l(>^GLzp za6@Gf_l?>95ZpN8FfK^x6{(B|V%!4{aTJio<)r9vC|f&NSaux`iUH-*81!>VJ+lGfWxXmN#x8u+fiilyx_z_7VQG zWL;K9-&Ob*m(ctm%;y_pF6Xc{4hFw3c@X?G%^WahWvgfp<7ijub@`=ZWcQ;|%QvY| zKa7T8Gwv>Idu%_=G)C`z6Vw=aIg*8RkAkKeCk!1#qx>W~AV*MV&2?oW4vx3Yz(Nw= z2tCOWjFnjY+VV|&S32@fO-Fb}I&_e>i4&pE%}sY{G)||+S-3yceq$yZ8pnb)LH^r2SPSt7xG5Z-ChZ^ET~@ve483oeL06bnLY$(_iygjdgE4 zsli4bZVtm@gt9yYOCxk62F|({V9W>xiW8}F>2Ugsr$16`l+w=eQm`GlbR_+aa+p%2o4>(CPcBFy(C={Q?p#I( z+aP|*%>DBn3vya=nkToF@hSfW1jVgY3>`-A5EBVp4#Amo94= z$uBH&7KKfg-8p36BD>v*vVxaML9liaSPG@!fE8Q&O!T*7za>#pJLJs39tEoovq`33 z$=m?(fYd5D(5oSVrT}XEi=gnviVNoXRXn zEzKyfmO@hrk#_@zDP)t>g?^^Pn4X(%Z#YE?stz|TIhfC=H)FlvZ)a32R2Y(#CEN_} z7>M>F#@P+{{`xZQ5yxKaxoc_ZifKM>5QfqTS~gdD;3q9M`G!JV7BvJ0=WH>%>Qs=D zd@n2aJ(5l#SZ|ZE;#_g6P9~v)j;MH+6BgMaG}7w@Rr7U_1{E#PGT~|H+;w5#ivM~U zm+jE-`Cny9n$ue%6$}-f%EbBzcF?;CL%{`^3Aq+U%(*87bmLlfC#nMT^i84GYCMin zCD2*`y79=>%@xLaI>W1d+Nookfb(?1dE-~=&Cn73tr?95xnUDzhz*b-sC7d4KacrB z5dV8GW1lvc;kItFypd;h|Ir9#9MZX!bQx~xhEw=-=WY_Gwo2EZQn;DNt`MZsTo4j9 z`Iac>v{q`jfVywSPg)%D9RvgAyFrm-6fGP^W&qN%0rkYQK?8Lb(2HEXzh)uYSJ9aa zzMmkthm2De(4aT)meEkiyPyijIxRXG>vg!$Ah0ikD1Oj{J#?QzHp-ALoWwBsLw>Au zjy^^?FtxFtJ?XlYW4V&ThUG&8UwbrXKYbGDZJW0p=bEwA2Dk4@r%sA#V)lu!e=__t z(F19JtyTBO#h*xBC*^~5s49b(n}&&L2I*e`51hvRCwKr9~=EOFc>HNl^* zsLbH;em$!BTELBJHiUwtM&xUdULF`W1N)pblJ_LpQCMQ-q!&Z+1qT7XHXQwTp&tu9f7ZW>GqTMyI4U*(4l}Q2pAy3dd7kMMRJB} z3EgR{95a)bH=V}mII37?sK)4z!YFJq!3J-7dlp zPv)`Facmmf3N&7W8xC$`Hyor%-=DzXn%-cEY;0kYx-}hChy-(ulnJ;69b7{FbHS-Y zoBNMARMPPiz|8=^6k~+sJHdF5%^_OTWh1dP2pcSydAhM?=xqqQytMyBfSea25E7aY zN7vsb*Auea17VqqE2eS9J6LrvTZ|zcenmEou?#3v0I0Cj-hKk23M(M&31==Ki17m8 z_pbo>h^)H025=$2z+TB-KPr{CibI>azUhQigeUtd7<@YhnV!L zC`&jA>K8imK)m7k z6R9TYxf7`tX(^R$e}an5T+Ad3E%qSlIBG=TOX-SOt>dznoEUh^1%zgBuV73Z%o`B% z!9g+Qwzy!_;PT3qCVAuoXqCHsrf27apM4wm& z!lp|oX0YATkq?`oP&3OF1;NOuK>!wRp!^TJx(M@hpg6JT1AjVIXCDw&`gy}N<;c)l zz(7v)t+z+A*gpmX6re(M66B?{Ct5mp94rKX*f2-!fR}fv9nc7LPGvE35YkeNe9jDl zl=O>wMnekkmu2q7aw;@HR{);D5OCU$9}jkPZ8GMb|2bl3Afls)J1q{5mmy0ZAIIb_ zeldi=|5VU{P(fEGr#Yb^zI;Gxfv}tzstZFpwyCD9SLQmqq2nPP#X z(Uv9RR#=lBfBYpHdV?8N4>oySnV#kzqi@51&Y%7X`7z!&Bc zfovIe;RWpKWRot4U0VEP*j3JzM-Id;(5Tz#T1438a&WCJXv)N86kzKYPTQjZ3@o_? zV`-0d8Dkyr0X7vMjOR4Om^k1v7zYOf#MDx&C8HFOf&n5F&qyG1c5EQhlJ*LKi8o@Q z68*{)NhJZTOObzuiISqT8FtDsgj1zV=1mLT@OQxfdh$ofL4OoQ6p_iZQ5thY56vML z9V0}QLrIb@O1>Z`G{D6aKo}PAnT(lIKjxlt0r~*sO1?s5YS|^gHQUIC<^HfdVP9}; z5;ktgrU>QWWbvnd>=i<{vEO-&2GTU?mq>?Vm4WMyV>FuPvY@Hbykmi}msI8V9HZ$O zVq&g3{}@e7mG6RMnRK__Q#JsMn;96A<5+;37SZ%KENX&xHW=(< zkA)}2D@nM@;34xT8Meyy{28at7r-Wl5uTAEC7@KK8kxP>_2$c-@BO4*%mxg9K>zK zognyu*!_z`>h1$cnxud91@SAyS#<$99>^^+*gt1wRIIH6gWy`Ny=73K!%LG?q8O6iz!tUx*bE)G&wjN+mFD-c z@)K?btJD;%$H8ztmi3FtHk!B92Lc^ML+pPTR1yP&kxZS-zF|<1GM5agQ+`0d`Llvp z*7vY?2MS_NTG2;zQv_62vafvVv4&JjhDCa!4_|dI$V2BCnO5&nZvkC*pMw%Q>^&KD(S&Kdj&;v z6rq1pq}#EZV(2BS?gMMioiw_k9bp|Pw zCCF!-5qbjb6GX$GJ5UIJ}j;P3;*=ac1(8r4QHPt%ZjrkZBd~PWa9$YcJrYS>)f~6+9A)8zp?a z^~9`^NS@aydPb68eL|m*P#aZ~Sru8{p{nMmM^$UKMP$ZpO!mZ5xDcT{I7M&@^j1)4LbUt`D=3H;^ts{m%96A+ZOX6H5Mjcj8exTURuW`ay zPd|Om`lff&jVaOVQevmrPxT6#@+59`rnu7@>-mO)cSY^)>#gtW^_(P^^EJ_PJdgo+ zx2K!F<40a-%%fWm1$B<{P7rQwI@&AXO&(7VMJO2=Vc*h=og>?LdY5yx;Q5-ou^D3| z)YSWj>>9Fdi03eQq2>Nbw*6qQz-O*W^>_}Eb8=L}ZV``7?3P_iR#p>BXb~ZE>F8GrzH7gIDFLrSI~#vpX|J%WdD`DW6EOcKK>N#e8t> zCuetN>Ki`!&TCyBzj&zhhu$@R=tX}ompS}5q;hM1-z&fF$9HXHS-H*IU|YS`w)=%% z=|zflND!;UWoOEoZ3o_?3Bo(V?lt7!B9yHZcht~lwSd2>X!?rwtR$ZfJ^uF5-=S!4 zo9zG|aD$s-wCGpMHt(NE54BnEd8T(w8O3kXdu56ecr7mRrPVUUNY#6u>|OH|#jqls z5<^6t+Br3Jl-=UIut z;ym*d2!mkb(Mj_p@C>B6=#g2PSy!c**{eN6{Ze=rw;)P0dUxN}D~zVqa?kCQ0(L6d z_MF~r{C@R8Jirz0v5*fP)WLB`-jf`N=M2~q*{t7gKdIinOH)6o*IWi3l+frR0YUW{PL6vGQ(B6_0ds z+qnw7u!`|h`pyR(^v<+c&l$=Py*;V7KB?F99l1O=5G=X;YJu6Vu5_ok|N99R5zmGrHziLaS&UDRpx?bbEE zd5 z|Gof6s0zD(5Q-K*1`Z`7?^3j<&X-;1E8Al5B>86j9v`Cf zwlepPe2$sRuJz5T^(oE@iOb&LD_hZ8Igzipj>}%}yKM{pHof`Cju(93>gTaZq48XF z$^6H&*Z8(+JTs{b*y{r}b1MK%R|!+6#|WC~+1XV-N4Dr%$QyQus8)Qe25;Tkm!o+y zXQe)7E+#nxw<3EekCHe(=Tkqp56byII{R^-dj+3!#9wigaDtkgjxJgB2kjBR*}+xN zL%!&Xo~6EWJva9dp=_7hCv){ne7-yB{69PzGw4ML7SBH4CupBg3&X{?TW4ywPg}Q( z?tk)K^k+YSs^E@Ai%H*v_b*Fd!uxX#Nvd5D@$>z@^Zsob-)&q4gcB<37X&2bw~*Vh zz}M!DFw~2lZ9VYBhwpK!3dP$o*H=H+=b1~fgJVyI(Q}t?SsTd3p6^>xUYRzjewGi! zY@UXSncZCdoxb9!L~%`gaSmsn;e+T>d@Ff0$SR7YE_ShC8PNjeNK<`G>phR3skSAF zMP3yb>*Olx^QsJZU88*z_rtv5DGBxz>m8%gO7?Ws=laaIC;+9j+>_E#SW?w1-R#T0 znTX!X*H0olS5v`p^%H!JHv_K5$z1(-pKlU9|BKJ-edbAA&M7~RxBIfk22!OeskHQn zbiKu={hsVpUqwG`$?B`OQaHFn@lBLr2In!8N0q+sfr$DfpZP|vUiRf2XZWp`e756i zUmB;oFQR^ouQ-h};o~}=&%s&lyAdCi_l@%$>uE|562vX70*}ENJbg5w*^@~BSKK730yjIi19Vvz`5~Z@R@Jm3h*(^*Ek-SzY$ED=+?Iy0iw@2KeE;e)Zr+a+K zD9eYO&h!)~bM@c%_>zd0%_&^{cRgY=ku(SdQNQUC-%y*$Me$Dbh;ORR61kE%Y^=j; z@OtE5QpC6S;Z!`MLp&2b?x{6hJ(ZIp*BtG^1JPSH)<$kjTJv?!#NZyO;*Qx4)q98)k*N&oYq?vv*vF-N31bpH(Dc8lTs4IlqXV0pDuYo zkCYb*eBEwyG}|1K zH?0-i3Aps8m0^X}=4kD_FfOX`tiNH8&FfuaK1(GaJAAj(Go{2YJ$Lr({#SRczA9m( zRBiXn=n;mHLm0KPexs^4-D&*x}<^o>9Jh91nc z8c+EhvL^mku4(ZRHTYfQNxy>q_>qzImY&8F{svi#NcH9(-*LZvR8Pb1sk!QmSl7ZB z$3mk$p(j`ENK&~La+xunN`eXDp7(+u%m+|=0?@t{u$jAsUImC#sL>(w@v%SD>v|fy zQ6N`*%wHeTgZCgBWWKn|U$5>lclosk{B}(b=B;{4b8pn#kr7`-VFDEeuPVyeQ$qg_ zN73x}e)_Dx(7k(p_h<9Fy*nGce=PSbBu`A=Chv+snqQC$_EQ1-9QNE{?wl7fgGL**v#$unp}r(vl@l@DMo#R zSBo9L4PK4X;`M*+_I=?uuOR+#hKJ~l_rHbl!h&YZ&;Cvc1)367lfYG_TJvdl{iofS z!it~jKLGK;Q$Q_sQ;)NVTM6rN@gE)*MEr2M7XMv51SIH5Vvrn zYCt|p-2d$gM^s>uc2K@zl|kI73Wl+`(&aAL* zG!4nRT`JEyN?*m-;#Kf!zBZ=HNDo!lN>%des>iG4T6>iP9*)}VDi>^5?X0SN*!i^! ztBPP33abADM0y#vwYXmNRtcX{7yeY<5CiRlM+i6p20g+1i_8!CA7 z;y|6GN4ufiK~hw1u2qHlLB48QT=P_OTb$=1ifS#-`H^^0J?X2=W4P8WG2Z%C!${7t z+W=~990RJIsU8n8ZP|s=8y^)SR;G=QD20eDW7(Uwf~3V|drosK?);<+-+piIK7QL#bN9O+9-rSF9U}}q zzNl|h{_&?i*>|KfMu__4^A=_>Vfb@jU77$p6>%kzDgSk)?>=_*?;S@}`& zSSzES-L&?&K|0m-0N+{?Qz*3>jNIDYh8@Sd_G`CAdOoLucXW4oy1HJD+FsR)#G`T# zd=ztW9M*a;W{E6;^sg?El9g}kJZCkod^J@q{j*EHPgPzjtSyc9v{4?Pec2_{&^=n7 zLkuf>Yu^UJMK9}g-<+`MLFT~x2fQz#kCt&%dKLvM9|GMHt{#l@oqJ=&M|D} z^NUoQ8VB|UJ>|6WVC8!^9h3XE_zM1fgT4P~hI*^|?{9m4q(Tq9y(=nX^zL`NGF9h> z95Wu`>sx>a3h}g1+EMR~AEN!*-x4)%WYyRQCgBP1(g&Bmh)z4@azu-dI^% z>CTKyj1WeYzI7K4&>tG}Wz+nQVSQUq3M2Zqsf0)&es7aX&=zhq;92xj=lixz+}mW| zzN>ZnTdidewZ1d*?@@^nrDi^-!#}UIn!j6~xAZ~d-HvMag9V`L_;*e>d}7Gi?dSGd z4F`VJx@t&mo>k=ftQwDDcMPc= z-TF!E-br|n-Fc~e_3vAqoegChTb;+tZ8b5c|NZglbE31l!S;ukBe#BRtBQH)m9pnV z`_o;mdp;K8e$3=uUhbHBMa_xhE1v6!72-DBf}3nUsao;e<{{hoMCRC@VLVG({_8u;+PdRG|ufb2EOj6vb8Ex8F8NLsto= zwF<*+^VVs<^K;JaOORnPCk)SGYvOb9%6)vtO`Gl;9simt z`>~^sJ$BTYQ|5kqX!hcxk1bZd`SydD7+iKQ*9*y=5kk-ZN7lE1HFac<-`qS1;c5wB zihwqW0txCifGv;emVhE)yDLjL*og;!>^cbJe(PGz_c zQnOO>$=M4QGh^E8TT0&cwq$V)+FGyBb5Mo-@#{?sMh^3|Uth5D5^8+wYUI_tXL-#E zLA}DO@IEY`x?THg40c(bzXhJLODWlcSD~!|95k&*YQ2VCLIWw;%ND0GhOCkrwm5|e z-kAIKKXQdD%!e*0%|db(8MLO8llTku!R3g)a#^M_1#0H&Ei0V+q$X?RKI5iDgUHU>`URZ_9=bJBNuJft&B1b($ z>hTwLGooRaL5uh*9;_O8@yWjUBL^iE0Y^t3`n}z?gIbS z!#@ZU6{1BEY)hldk|lc4tL2CboFiWof^Z_(;s%#{zmZB>esPujmlZ{W)|PBTwq$SJ z2q^=7a5M%CdEs~KbA7X4 zWU`@N7D3qdhYP&{*-M!=!4lI3P-Pml<`*tF^Q7x)I9b65P;h2S0+Var2Xx_)_SsDv zFR)-R@WD+y`UOXuo;?@ zE|5PWNVXzS7A7>Lmx6a^k-=495*MswWS=n23ZF(1Z~?l4ovSB7{{zawSwX<7gN~Zw9ywBs>_v&`dvWjX(RwEKiEGf=R@DlVz^0bdFWFB4vAm{ zqR%SPF;!-q1bS;Y*)y4hn(z6V`GT0B0Gs@RyjdPv#6zDOrWrfr@>SDDA_Jf+!OZ$N z;)Z!*3NqBda;f@Y2A1td#n#~Q*76j>9QWhA4J-HUepR+sRJwu$VVr^Gf?#Lpt=m^eAbPH%l;u?VL~)3!6rOm*v3dm6D3MLhb~I*Cv626Fa)BCU6UUdw z?wG@O!-U)lZvf|y(?&>xGr|C>)SD?IkZ=3<{OunLA}SSi&h}Digh3@Xf9fpT5hqR! z+-K}SWnZkw@39aqem20`^7oo)v9xXli?8z$@WMQz@@faanpj3ut0)1Fu4HNqQ^t zlZYqdpXR3i63zQqv}NO4o8#Ece)Ke`2sw*QtQDy;2%)UAxc3*4KVzU}$aUwpT;O-n zyltYlHovtgdDNxdGL&9Al*+E~gITfcYx8SP+pEqt5qX_v7LoP%D>~|e1?%KSZ`e<` z>tFk_Q*Y*{2#)@wH?v1A%b|U9;w4*(bh-`qRGKYCS9?;FkaATp+lOQ$3cZ=PJAOsl zaz7>OyJ965DqmWZk@iS6I4q=-HKemGc=!u-oWn80LTr-T-Fg;9y3=Cj_pn#5*_SwN z=}vRHvonj4UzcAr$;c8!9v0+dW&77z%)DYSwqnd_&Kw^m6aARe_DWI^2o!;A@l6l^ zRjXWzBxfvZ@YBRMaeguJEYQ;(X_C)sB9RDf+S5elIk~A&ADnlcvZ-2Zj&s7|S((QR z<$S>9<`(h<)`;y1r~L`%faE@V%?FOe128WVg>on~PN;Pa#?-PfPXEU9#c{L9?1#Q1 z@EhAJ?%4t(O-8K&v(^F~z*jCJu><^0cAByGgP9l#YW!M%foMwd+PK5(# z%i_nud1t!66OIpsWI7_X^2s#(og9x)WXl*VPoFZoc*q1*iS+KP>7ve5Dxof5Hj!cgPlWro4j!n?xSyG zl!E8v(i&N^nWh_u6c2_Pd9^$xsLk#nJ&%m)O;j_?ch@!O^KK56-yGu7D#c{#Q2Eb8 z#yo~}A_{V2s9FqFD1q1bJbB6A5fQc#E#nh?bH<}9XNG^k$F;0QzyvQK-(fPIbHI9r zExbP7b~({Y{yyACYuREi%pIKjyiBrgFX=~c*_{V-M481*)eRw6ua*>E_s~N80rPMX zB_Pk!^8Ia44fkcIjkuAE?z`J=)ikDVr5vnC>YkEoPYh-L%n;jPxoxmiU|d7(N0?z5 zlNYdD@X}MmUwp(qA3wBenOwH;LDdxIQot?2s#kfd{*Pzs){flNwx5-c+?0=e+*FsT zb$+YmWIN}x*(S#MRnsa*)3+hQ%&T`~hwdB-u+ZP2WxtX8wFz)^dBT&x+t( zM#vY3Tbt-P-tlwkkqOod3@-_L2zD`L2I@%nuT@}p^BIl%Eyk$1@4Px^(LmSz6rYQFdrKe z(5hw2{DyD2uu|OPh%Y2SJb9T?Upu7Y8~h_8IRAZ7;MQczk;BpMeA=8Lpzn)7WHo%! zofpX-g5NkX;V_=!(f%L8i7>2KF%-GN4XR=RE|yQ&ak$|ixc4;2hx`s>a2#1YG%=3A z5K=8x2O^7fp78JI2~uDf6Wh4RCGlJZ~Gb1V6Q zXZ#DDjb+MWa#RdCKR6mbqz8SqddS{5U<(~Ghe43JXnK^JL_*!gLcca(d1c{ovu3Z$ z(et=q2yNuerrQd#V*r?)9jFK%(re|jH>uN06`UW8=(Rk3x=5X+)J9Z2$8wxi+Q?P? zn^k7{s-zZsf-*~*Q^6P_6qASQO=~RK3?Q+xAwJ3offHU!#ko23FxJX8_>mtm!obce)mVLZ z2KASJH|R7-x0F_hEfzeqn6M6MflV-#ce9D9H~BX0m*;F2RGs9LA;du2XVrWmmrd&; zvSaWf%Ub!JEU%em3=+-<$@4)Dsvs!58>V#-2JjBdUDqs?JDNaY7U8h++d*$Oi8wHx z!jYyytC)N}9_CiU0SRdtG=Di*FJ_Elo?gt>r!mGfo<5EB44=pk`S+mF#DfvG>K?Wf z$~!qUs1}DQgKkC%!~8(q%Y;SE&rQ5pb=zhBY_P=(p}3&Xn=VD&pn3nGk!AGYd4*+- zX^cLNr%Yp^(Y4@lDU17iv^Jm}IZ zc}gV{9@`IHZNN3$;iC2$DE~MZyY&`Eztmj@#gl`yEQ%*QzjN`I;B|qcd%~i#IQHi2 zD-}_Lcw!l~oF8%>BoIoaWZIyO7?j7a24`ZcHq2TOb5I$PlP!WnKiHbW1RfbWsF*Pr z%TMGpV5gD@?+PZu7A-hhF>Mge>Od(2`VzP}2lKw&H|KO1W=3Wm$C>Ep&&0K3?v8VDwpyW zFKEH0fby@3WC$O+4Qt6`2s>!9YS-6DEqNgq!7^(S_rjZH(;HIeOsX@zYx>QOx5|t%YPvw>I`q*Rq`yQo%BHY zX^k?8Hugk|AbjpCKKev6ujDhK{$KZXdY$&-fG$sJ40vh|Ke+O3XcnM(dh@S7!TWZ` z#MfsqZ%bw=9TkOo<#X`1giHAxufXIgyu~e32Kc-bHEETyDLlptHboIL^chUzmw`UZ zGM{*m{EdsTWH8Bi-pwRh#NnT@#k1f8bWbc;0ojfNlibm&4sY$Tf!TUxl8^DrO;N|> zFUQPQWqjI`ZCVQF9nB^mcnVh;ASsnr@`g`&!;!cpX_7&zObP-Ak(@-C6s($CkThAJ z^hidMZ+4P2Bgrp2$={L`U`d)%kR;P5J(`gen4L7Wg1664sahbnZcrwLSdym6O>f9m zZ&;G1E0Z1rhJo&)%J*8na4G&V0QT%E?Ruq@9^7mHF@SvAT;;n4>T7QwR&s)E-Weug z_EgDBQSjd<{GdRCP zKHe#*3@gtcFw6iYL%Hkx&Wb?t%0R{IC6&I%ldREzB*%|2taijIEzs~)g782|X0||) zJ5UmpP%4OhPO)YnChDRF4CkY@TwwfMRB;;2M!q-f&`L@tDQEI@rE-0eH+WZ82gC*d zg6PkNg-r4HSoh#4L;#~7_VMQiIIi$^h)*pC6GaXuAWH_oCi*a{$4rOiz>W@0(Te9OE=MQ7XSD2^2D00q#*4p0ylW3b@SR%lW z0YRH6M<6J?5r+$NYRCa)$X5=ehYsk&nI##%S&D(@10R9O$-b+9)j@f!aD^9~?Zdqq zbVL#H33>IQ^1xvqslhPan}MxIc1iS1(tt5G{{f{bXH+_1_Zv|21|+ce3nCxVerpEO zBSq5qSUnrETfAhsJ|RWFDo?*;xfWW&syuDHG9z(XV&e4dL~s<7jHV{ImN8^oGe(X} zxoKM*_07|U|H$r7BOg;rxBHc*zl`4Qx8Lp`r}Sr}EJ)C_##8j!>OF+ zh{d85)*aM_Cb94yBJ6lU28L|T2k>ukSemDia70Ws^6r;lV2qy6UX3Dz66^ir2ZfT=H1B_a?7mTZzx~)mIkl9k5RK)mTHC+- z8A)G)=?*!8(dkF}mq_j`3B4otjYvP#Z}qn|_A}*IDuwA^^e>rm$CrsnKiJRcu9OPX zKkujiDuu)I*yaAQ{1q8-*^vkO6B9$?*vR_+IKN0+f1DEkMd821;;*R8I0+Z{u|!i* zlwd7_bBB9z^3okwFL7II1v$muU}}KlcUK><((y^Z+mFdG%aFbOCA&alp!XUWX3}4)%2@9J(W)pT6ZBN+X_(`kpPgvIUEW2b; zQNof9vMQz`y`+-$TFWX5`(K*D7Ds_v6cnOpH9r|y$%ZwYAJ1rJB68=5U#gy_xYL)% zDhm2{hmm_&KF~De_nY(k$sG)Fq6%K6mh;}`EiWnB8MxV?jj?WM5a@k)%3z+ZO0h-h zb6wdyedO^2>uThoihasux~2uIPVBhmJ>Z?}%>=9D+ZU(_$8HZVl5gJ-Jm6S60!N=a zi^?_!zxSOi_?noT1m^>vc5{<1W!3vI_jzEfF-H=d3$4JQ?Nf#C`A&DH32rmY@m{Oyb;SIi22jMx)??G1E^-@K0zfP$$D#1Dd_MJ^Sy*8$S1ru9XgzSpO^&hlp z=zsXG1(+W&f&^1SdExc2uOyrwYM_;7@IxLF)#u6YqI(hZ^{a&+H0)UB7@gT$W6;jd@zAX=zm_n6IKFw zZ%eEqBEp!BhkYzz%=$0ngiitPoG-i^VX%rzc|?G6E&u6!qgTXQ0KbboX5Bc?O^V0` zX~u~nN6)uSia^Px@*{sd-{}5c!H>LlJ|Y^nGdFu7L*x}iIKv8Un~Y$D0ai~|F}6wa z1BQV|0>du&6brEb_dK{Tzl%$|qe7T5(vSgi_B=OliykyWsE`>zCVm~&L!;WykG7si zF!P!7al8mu$a@3)=1*|^A&CeO7UVzP6P`i5^99NObunO(=Z{{jLB6nwy{QazPdT9Q z%#Gk61NF-b)>PXhZr$Ys+!4g;ft%)r3%&d>oZBAIVhX8>djK6j1V;OG5{#rnT61C^ zl<5`w&r`emQkX^n?>ui#91cd``_5w(so;6ZTXKU&_dcj|Xg!*5_StUsf!6*P#Nl;i z7V*Uo#Xrv5cAr;EM|Yi9n*MG7+xhXS<0>XAagt&fGS`jOz#8dZ7H?O`q2|Y z7U&n|!9Lp{;vX8re+%nJQF7k)F5)i+{9o9MCh*e%aST7qN60ncuSJ{oiQ5|!_*?pH zEr|c?G5k)7|F!eBml6MKfd4D|pC<4heVG5X=RZw4cw1(uI-=YN4 zdNXeE;1GcYYfal9&O@N0ug>6Wd*M8sCBp&;Q~Qe1&KJwNr_Z(rdD%P0OC#mwne(<( zeis zl;-_D+nqk3DFT|k_S=2q?T~h3PdkZx&_`)zQkw6L(=7d8n!o=w&6qx04AP7pqnS== zI{Rz`Nb^dc(sIY%KS6WO!{xl-rWr?R=8w@VJTy+zeb0zQ{hDS_pDhS!(msp*Z7!vG ztk2ejG*1D|Z|wh>ph>&qSUJCR(+r_BmyXli{J%7({F>(dUfca%p!oo!y{@Rqqm_+xv*` zAArwce{TZc&^SIAGs^n@x6k1Fw%?P6@YgNU@u0G1b9gSzqn7y^3^S8>4HWbRX@r1t48D(AC-fC+Mzu zm~Nn(?s`hsI!^b~cg6*bg+;n~|4VmCuWbp^rCk#H$vR5+cCYPbuUe`!?HKjxv;W*X zJ{}}LMEBt80P+V4&hN8*Pr*Nc0UWMq^};wIAkR>KF859hxW@hOct%5wW+rTyw}T0H zELMJ;AHZwf%q62S63Rr~Yf~d{5o0n*qQp9TZKr|Q=y$zJQbIkE*^j2KZ?)R zYx_ImYXE!~?H^Cz`vH?Z;}H2|D)TDBM~wOfVaIP2+HD=kUQE!7b}kJ+@QG=V>>e zYI5luFrwJlYukW)zTc}f``KTg;PcCIK0$t7t3#^tUGVYf>Y$v@TwIDS8XVN^ULE>Z zIOQq6=^B2+1y(Uk&YxYdAAkX6xYRYreO&|hR(b3uzx7Yb%Wh~l_C{{(O-T0D#Q16! z$ajB6T966b(q4N3)H209CdL4{fbe!_}=R9i`AsA>(c^+JCH=?W$xkCTwYH4#ZRj<2};WQA8 zHrBY3J6+6hjY|ZkI1oPMYJrc?4p$2-p;2!Ro=!hX}tsGXw`ywc;AFQ z@vB%gv#i&acMdc~q#r>nSztE;XT^u4YDHY6TB}YE{jXc+5A8m_#}<$6=_z-m%pyw> zgW|tEHfIlvE0$%W{9gM|&-l2ap+w#5-GfO1B!z8SJ6s%9EHzUhScS zx{58oLB+(bik5<8G;XVU*yWKq2nTD*D_Bn8X-bc63i2cyR+$m#|;vtb)do3`;;JXF1$(9Dc=>jD|c_&(nShZC^z1 z+JKB4=WGt-r)`X%Zz+K{dTa$Kqun5*Kicyr_-THKpU5|{e!zkVvk=jkz&JIP%tLF^ zuMuEkP5S9M+owpgZj9y$N^^OSZ5h(k0nK&xr4ux(9;Ug%P18ncUOwlU=nLtHN7uog zdA{Z$np!3#g_~947Z%=t7g23nyTkNBoFP0mw%!6KX^-4Y^yLSNsqGmCpf=q*wOO6DR@i|w>CSVVupl92b zb}O4N6@TLjIc}TVgK?)_ww2vb(&9E3=L60QnAx%1R?L3_u&KDkxy@`#i;J6e6MnyR z%?_OH1BuDaaN4G99t`nr6w4147602cdpS@89*(+f@*W`Da>zA1&rMeJh07Mzt#9rH z%eg~4iVt9a0~t>x{@pwMy!tz?=G6a0=xSZwiW64B{ox-MB~AQ}L3h?wi>^ zk~!UQHpU$wA>A>47s8|cxg8**7{6{3-W?v@P9EznzV71A5D6qVliTNFqKp(dMiZ$pW zuI?Bp)_E5Zpa?;WRI~$bS_MriCx)dHeEu@l! zcJHj8#Z?j|2yI5l=AC}i!=i%8^zLLKGkXP@2C<5&_%*^@dybC7 zT^JQKxNnVkl{affDsKQKE z&H5Vbozleq^hNkgx=`FRofX>t=?dffaDxUeZ$Y4x zPoAS>ghcNqgXJZ^!#KsWh?6CM#)Qbl=Mwpf{sr2!b14C^cm;uswZFX}U8y@0|U&=f>yTr8pdV<`ITOA_8qBP{ft-A265s zH|Mt2%Vr2FB+jkUEtSBn!5b`#-LorQig<%v??WpSZ|<32rydg8?j2t#VoJw52?(EnEOT*mMu^=So!3sp{-N8S5QrYf6p`SojA%;1Js;3&W$GM3o*8A*3P?o&M02Z04!JL-7 z=`a?!WeI-X4<^neGpIPf?^c>`k6!DxU+Gr!uEFICJVh86XO^>jYldvKw?X9m5DqH= z5nKk*Juy;&LadZ7Iut^r6iqLnxu@oh_H`o;dtZ0*H5fO^X~bkc)eZLo?sdVZvRRcU z!dWd0Q0bM7@n1|r!n?50NuX7s&t@P#F>Jch#B(dc;q4lTQRYr3M=7c!-Jrd_f~Z=~ zxft>VjXa3>zrn~9QQ<{^&z?CQvdfiZmD{Vtn(4_u0z0^Ff=eO?^+Dvn2yNTnt+e<6 z*Ppt%uI?@tF$ZUal75=H7gD)VYq#C%5e=S69m3+$re^-^tnKr&315P*4UF@;5<*VV zd>=u+$$+)ejdfSI2sg&$=2_V_JSFva(l3>8w z{7N^hlg%5uOr9osZ}q{%$>bo#{};gTSKQ%(=S84_4{Ka_;;^w>b4I>J*`RDgef0ox z1ly{!F6JiWv(kL)A)l=H8016ikeoTL$aUTAaN%o)t|5x%>cCvMiwC=_oG)FSNpuj`GbyEToV^EC7g4N1y4o zuLdgEI-zZ@z;vUTt+a#TK!NFAg?)XrFZZZsXVHA`Fj`n9=5XNCr=^re>fZGmHB39vr+^;kPBFObC$FdkhW2zj8bq!J{T<|%JMLy(?U9w~@f`|}A#C$GI z?><}jmnAEG>y{zV3XESa;v!5B2Mha5%dn_pscFAXJv^3L&#GzmI+LKiM(SMVJ2q=J zE2NzY-~GWEU#gtTq*mj~6#$nfv^AVHnLYpu9Jq~Q%0>EXgbgeN^jG8U_6BWMoG zr~lFE1SW$N?vdy`IcP$AyP$5HwDZ%U_HJL@0HW#@syb+rx%7-&C#W;v9h$K`iC@ZP z^^**vS(RsX(aoBT`lcqqs*M&?88)&!p}nzd{Ttf#(M?S)zB&h3A^pT`lsXqkA@PJz zvr(Rg^WJ7}vX<7y+Ownr>!R4t#Xvl^(bp$h1_bjrpM|cKfAq|F+jWEGzlH-=Tsi!U zEeD8+K>j*RiK6Y6ws}k&59Y5%e7}lW1uld&z|K4@lT1%47}tkAm1le92To&~imS&ij^_Bv}#`~S49EI@3{s{a&@HGRQr z4}_}SQMN_MvZrA|E5r0-ooxO3 zZ!o(E?$t2+%=r;#*T3QG?s%JN>y<%kLz?Lbm0njUwa+;F@|~uyeAl~Yes?@Vz}tOz zPQM&b3Ys=bp&74tH+wh9e7`fcDQCx`ENmdcicIST2^)EJe5?Ij{eYP|Dg+%Njw<%VI(0J zG0oyuc`~HAOD~r1k0rM|F^3&;I7Tma+5by(P!(x6!WZ5FEdlwW%PP*X-UEXV&;g}t z59(Fqdz$Y+mvYa8(Q{q)ddP=!2u?D`F=HYSLJOhveO=i?d3dIp4ALC?Act$Twaea0 zb9n4Yj<~b%sop{RRhP3s`qr8XQKFfjx%uuhivg=K3#^0?s#*m1Nz?nUkXDLsN0 z%&_KxjT=cqoZ6}`&gZRnQI~2h)od-&C2aU&m-LH($+djsVh`r5NUts>f9rZHZ*=rOJEC($9Sxww5Vf4=X!~(E~ew1F1V0r{!16! zc+VL^D|6Z5yQtJb69QpX4BPT|T$3J5RFiioFDYHhy&sLf*=0}eQuD^Hi}A<{$d+e) z?}WupPS+MCtR6Er!7hR3i-&wWNAtSud63VeT>U*Q%XQR+GmJH_kx#C70GiyOsbEet z$(jw%2qe<|5BUM(LErctTw?Q*72PH;P^2@v?3q+B*kqnUY;dz2*N~a3S@IkO2?4qd zqtABPp9Q+td^~Fy%{aRU6N5=Ag_Hv1Ay_dacF_g$vRU1sEC$3%`iICPr$b&<~Ra%M}{Ez1aHGT&gyWSZ?9WV<@*(`6S@na~}@RZJ=L)J5Le z{*MTs!a4x<8c2n4OT~2ttSQN{Gh2;$V%z}b!Z?yAvgWK>^#tctSzdT|H0_FRcq8@as2tw`^dNc}%Uv?D0f@(NJ zn@__TRFS}@;!P};_RTX?g|P=g$+k1)ub+W~7Vm?JnpyOr7hK=a8zX9*MO5iaeWA7Mt=dj8k76)hMdCNki>08gx|Hndg)O`b z2Nfg}W1a6xx9q8i_o=Lm&ny)*L^y(T?zxQXSnwEE|LKoF!x(Wr%>XCKBLL-)N(R`01XNvo0EJkHsLIwrTZ_jpumu$q!_7tDA%%_g+q%^4f0w2?i=DVsN1x@(7ZojuDbmc9 z$7Ss=A|nWDyWgoa{dM$Cr~Pi{*xUg(-ANlV;~B5ukz7L-EMvIngrXg>e&EE$Uts@x zI~Q7Snhmf^Qsm?&HqRF&ukbS^BGN|@e+!7WjegT<|F+Y;gg~@kxY6=Jx1E>uqA1rt z%D%OI_Q_hl29OLRl2;_lv-%H{6BNf;z)_C5M>{*O`Pk2P*7CvDxq^l1TDJK&QEDdh zzn~|ipeF(JqtWA?b_bNhqmkK-)Hp9FM%f$KL@Wp?D`s$Z{s(@SMZ*zbuS>RZ6fXY5 zY1lCrEFDySDJkI}1QRR8`#Ip<2@KQ&1E8Wg*eSZ~LJi*Ctp!-14-hEDzt#&@erd`S zWAK7hBiW9TyPsGw1AKuloOfNlOtHT+PN@E?imYIFKe;xV^HV27bf#ioXPhXOsEgO~ zQ;1?wN31}NS)yCaF2=sFeco2sxzkbYZOPSLo^PYmh!ZG<-g#Fg68d_z7r^^@gr=~fTd zzd${*Wd}59eU^8oK`2`TO3*6s7@y7szRmim+t%#U}%oEC`TSk^qd6DF(p_=@P@ zO5WHNwU-gY48r&q}se!|;F!vJDKhonf16Q+jN^ zK?{Bb4RQIU+WB5BHCW8@p%jkx_o9{bt8QOPJ%Bj}8ec792N%Ni60gOq@0`OL#Sd^wYeTA@9A>pF8Z| zJ)HN@cwR%syc;orYSMwwstnse2ORHVru+8GGzYEsS~omjbi)evo8EM72Q=Is$;&sIevoPge4TD>faL0Ih`t!%7xigVr^%%G0VltU z>-_p^5IOqKY(tfKn zI_5R;jv=(CmKyAw|ZJ-s>U)@tI!LOn?;iaV=Q@KtXTZtG2T{F zYU_cTW>nWsXRW^Q?wEPmaFcVSl|NRXRRGM`Iqk z*9bc>J4754`_ROP0SOzCq=quy?F|f%%L3ynQ4!2Y@%w)h!Gs5(#D+Y9|weE4T|X<@Zy8XtyRDl zt1?6eb$Bcj4CEk6evYJ8a5S5IgV>;Te*hMxV}=d%V1RUE zzLsuUo-Ec7rAln$)pzh<`JvBBP-baE-)G8#%n#Za&ajTDq|8BNbPG+ zRlf;-*@VMQjAPgANo^tw; zaQIsnF|~tVjTFDknGa%>{d?eb96lE`Tmv@mLRrN9<7tij(0cIUg(nxaywGo5aHAKK z-nt7{t~8ptFG>LAz5~^8>Ah+)6MP^{GOI3L8Xp^SFlaN{9-*W}m@ zwSt`cE)%#6823S$1y`0Qfm<7$K?){4+y@+g5zHKkSY~&E?X`Ayn*CL152d{O0@@;` zqdW_5kUt?cJv;eXNy%XanTz>stJ{_AWcz9WS5t7*Quw*y@y-;qQQ%W%;Q@DWec7UA zEZ}AcKX~wn5f4t27m7T0ge)ewayMR{EapOb`|`=V&ypZY=lAXQ-vbfK&mD|$`#NCE zubdv>nJm60Wm9~8n=m7bA&U@63U9t7Vx|mQgM{XPy4{`t`S0^7hRYZ?M_4>|w>9#~ z_AGYwQ4b1M%dM% zPe-(1kVn**&;sv{m>K=dm_qM@2_uI z@%3K95Pr#l@XX|UED)%$qOHFF$RLJ@wXRE)as8SQm}=!ey(a2BO=nS-<`#*%!X5 z@~an(SyGZf87Mp*ONb{0%Muj@r;~eKvlftO%+wB>wOre) zr*9?O-=LzyI`*aTpdebW`3Y`)1sN`AcJ0_6+f-p^qTw~V)w0VXm|MJZ?5+VxW{rr* zDft&q+w+hz&m#dB#)8i7-#9B;6x{Ykok3#t0UeChUMew|cVF7B`=GyK`>`gg+38pf z<>(!~nB_YR3si+~&nT2+ab-;0SGAL>?5_BY;3xzhCgi*??qynTyRbex)AmVCe_Co|>3 zw(J?amkz~-`AsE5NY)l|`j)?4MFk1-@xKwjMIiO!@j}~DI;DHTh;MH1EYE*HR9OdCiEQi4fWc9&mV2ou}$~D=WMY1yxFnibuJS%6Ow9urkfa`#(4rQcMHy*hX+V z<84e+m9IYq>sRpK=WVit_TRbMYfKCUmo@e^7H|yx9^$?yOs#*G1wREZvLc7eYn`x( z&W$Fs7LQ%Z&YRypWmL#amA>X*9Q!Jpxv4M_SA1Ssul}6wU6@pnMKPVEASxOAJqe<+ z$UkL&9b|Ez^^8ZiFt%kcbS!vH3W~lS!9%!Kc-d+>dC5~SXzdc3JNuMy^L|V zm)np1Qp-3xp(B7&9V(cJF)cRAu?On;GKv#hkaqE@3=$(MBI>Q0mM(q({@+@@l$~b+du19Yqoy|v5xA7C@XvT0J-n3 zP*2&ed2M6cgb(5Qo4bIBCo0;FCu)}BVq1k+#ahgw@XG1d*a1;ZwE3b#BmXJlGuY;l zMnvgIixovg$I(S7$`SQFjeLj2%^~?K;;o21&p2c>I8{^%!hx z#O^r&ORi{XgA3PC?wu8*zN7Msb^(kgLQtJUSHE+=K}s#00;n{3WIHn8Zt)-&($a=E z-WN3}Lx1Bk#FxzVjZNdG#={0@^2cm4I`?DZ7jRP-#g4$EW*#}9@RC%A)W+iWw?Ry;I|gV+{(eN%6qz^j#Y#FLkS ze{h?n(6@oVp5bC4XiQD29khMJz5>l=Ng1f1Sx&KLvk$M}?h)aSI1x5WuOciXg#c~M&xGuG9x{+?;$94Y+B#ckk2^q7FW zg4sxFTU=DBGL>Gocgs+_u+4J{a~L7qm$xFdZK!1_(t$5ARNTR%a|bZh`90rxO<<32 z3;(-xfM36tdFD>lt~gF1Qfc0w1W3rSu~Hli&0QF zk~XuXjp#8HD~y`KWb(ZMV)t{T&<)TbY_s#)%z`$u86&bDI5_?$R#w824HyQqY(DuB zzufDja&#i_GA4xiv&l1 zaA?3MC-DmoSvno&GmdL`pDP7pVrL}7-2{I$@nzf&fS0qo7m@@_19`MK%nm33nU7)c zVMH8AgOhO}OHF3ceBtgy@`MNWh{N3M7!Z;u41*k+5j1%Zty}E@2i2`ThH2^lbilqN zPnaq52|*=O2$rf^=r|1J4MYIg#7!HqA8=&D9Jh`al_oxUWkA#@nwOUI`W@JoUql$L zX4vPxqSC=lvp?MmK0H`A&+t1PlkNZutW}RgH^Vy4`tTlhQVv{ z9G=9SMbw#B@YIoXxYKyx@uETiohwaX@K#G!MD*XXtcAK^$XXQmKEG*@FPDBAXL7+J z0kh4!LX}zS0tGal(8IpL{Gwxc?QPgYkoOV4lE;9@$ggooZa^BKt@P*}8O1^<3l5+* zOd#_d(2*OU=>Kx_0%albSP)qMH@SdM1l{LO6T;yzwC&0q0uK zf8iN6_n;2n26pQi=f`dvb68N$0;eG`09B)&#p+#n9_-*Ig52U?rydzgH69zcQ@48C zR-E`1m@V_<7~J9mTo9nUsG80MCoqT2g}3WYXq*lt(VREklLAk!#hW$1j&Ft>)6ml0 zRH&vkBd%D8F!-0> zKM7}hfp}!jn?ryZE+8?xKn*>kgA`&Tlyx7A7V)u>SMyCp-CKBOjJav%z(H%AQIv%4IGq zNb_+>?crTgbf!(JkY1L61)7l`wmE1;MC!_IlB0)KEt6+f-Bt0GX`CuroucH=EQ?Z_ z`06|*KeVhsmB%H47G0ee0*=dLJ^-8RxC$tE{=SoN%EB;N1Fg&1hUb=KcEVrqpPUD! z>y9)Xk!J6o`qHe)=J$@9{#jr5pGeauin?7*ODa2!DV)kr1fCgTr3)9xXnj`r5#veD zucUG^*>O@Ats^^6f*&0a6F5#p5o4Wu)-9lKjgXJUg-&Lgz^*+)rv&#q07lzBHy%gb z{$gB}k0%aVheip|xT%GB@|TmGx2ALlxrEBQPtrA4dM5VQpJUy^V^%EO%3XQavo(M=XJDTZ>6R=_g9nb5`0lbK6Ad@7NFt0SwvY+83)SUxBRCi(PBbw$^=zU^w-dIEGf+4-N2|T971bQ5H)L_N zD7@u9eaVBTHd^z&PNXF-`r>)*f!6$n)&zV)WU;IWaTSHo-_v9At&4>j0qKR;^gmLs}ADE7pALHZPgQCff2myt=s`I>`S!&YR&rbc-q26 zPqN9mjCNOR*56xcs3n_`l?K|Zt+n39EPih~aUi>IODZBe6~fG2EV+TQvwhrZH??}S zTW1iW@K&u?sh0F%szD1cpfYXVjl#-E!0;i)(fluZWrHN5*p@Uf#ls6%aJ^Ccek

    at~H_Q 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 z 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

    h$AF$debJ2~OhDP;VZ|eVK61M3D%S@El=u8; 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 diff --git a/variants/cytron_maker_feather_aiot_s3/variant.cpp b/variants/cytron_maker_feather_aiot_s3/variant.cpp deleted file mode 100644 index d90883480b3..00000000000 --- a/variants/cytron_maker_feather_aiot_s3/variant.cpp +++ /dev/null @@ -1,38 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2022 Wai Weng for Cytron Technologies - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // Turn on VPeripheral by default. - pinMode(VP_EN, OUTPUT); - digitalWrite(VP_EN, HIGH); -} -} diff --git a/variants/d-duino-32/pins_arduino.h b/variants/d-duino-32/pins_arduino.h deleted file mode 100644 index 935261996b1..00000000000 --- a/variants/d-duino-32/pins_arduino.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 4; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -// Wemos Grove Shield -static const uint8_t D1 = 5; -static const uint8_t D2 = 4; -static const uint8_t D3 = 0; -static const uint8_t D4 = 2; -static const uint8_t D5 = 14; -static const uint8_t D6 = 12; -static const uint8_t D7 = 13; -static const uint8_t D8 = 15; -static const uint8_t D9 = 3; -static const uint8_t D10 = 1; - -// OLed -static const uint8_t OLED_SCL = SCL; -static const uint8_t OLED_SDA = SDA; - -#endif /* Pins_Arduino_h */ diff --git a/variants/d1_mini32/pins_arduino.h b/variants/d1_mini32/pins_arduino.h deleted file mode 100644 index 1b507cde1fd..00000000000 --- a/variants/d1_mini32/pins_arduino.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include <../d32/d32_core.h> - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -static const uint8_t _VBAT = 35; // battery voltage - -#define PIN_WIRE_SDA SDA // backward compatibility -#define PIN_WIRE_SCL SCL // backward compatibility - -static const uint8_t D0 = 26; -static const uint8_t D1 = 22; -static const uint8_t D2 = 21; -static const uint8_t D3 = 17; -static const uint8_t D4 = 16; -static const uint8_t D5 = 18; -static const uint8_t D6 = 19; -static const uint8_t D7 = 23; -static const uint8_t D8 = 5; -static const uint8_t RXD = 3; -static const uint8_t TXD = 1; - -#define PIN_SPI_SS SS // backward compatibility -#define PIN_SPI_MOSI MOSI // backward compatibility -#define PIN_SPI_MISO MISO // backward compatibility -#define PIN_SPI_SCK SCK // backward compatibility - -#define PIN_A0 A0 // backward compatibility - -#endif /* Pins_Arduino_h */ diff --git a/variants/d1_uno32/pins_arduino.h b/variants/d1_uno32/pins_arduino.h deleted file mode 100644 index 6f46d419c83..00000000000 --- a/variants/d1_uno32/pins_arduino.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -// Board Pinmap: https://www.botnroll.com/en/esp/3639-wemos-d1-r32-w-esp32-uno-r3-pinout.html - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 2; -static const uint8_t A1 = 4; -static const uint8_t A2 = 35; -static const uint8_t A3 = 34; -static const uint8_t A4 = 36; -static const uint8_t A5 = 39; - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define PIN_WIRE_SDA SDA // backward compatibility -#define PIN_WIRE_SCL SCL // backward compatibility - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 26; -static const uint8_t D3 = 25; -static const uint8_t D4 = 17; -static const uint8_t D5 = 16; -static const uint8_t D6 = 27; -static const uint8_t D7 = 14; -static const uint8_t D8 = 12; -static const uint8_t D9 = 13; -static const uint8_t D10 = 5; -static const uint8_t D11 = 23; -static const uint8_t D12 = 19; -static const uint8_t D13 = 18; - -#define PIN_SPI_SS SS // backward compatibility -#define PIN_SPI_MOSI MOSI // backward compatibility -#define PIN_SPI_MISO MISO // backward compatibility -#define PIN_SPI_SCK SCK // backward compatibility - -#define PIN_A0 A0 // backward compatibility - -#endif /* Pins_Arduino_h */ diff --git a/variants/d32/d32_core.h b/variants/d32/d32_core.h deleted file mode 100644 index e658c980896..00000000000 --- a/variants/d32/d32_core.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef _D32_CORE_H_ -#define _D32_CORE_H_ - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif \ No newline at end of file diff --git a/variants/d32/pins_arduino.h b/variants/d32/pins_arduino.h deleted file mode 100644 index e517def5e8f..00000000000 --- a/variants/d32/pins_arduino.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -static const uint8_t _VBAT = 35; // battery voltage - -#endif /* Pins_Arduino_h */ diff --git a/variants/d32_pro/pins_arduino.h b/variants/d32_pro/pins_arduino.h deleted file mode 100644 index da7c14bc389..00000000000 --- a/variants/d32_pro/pins_arduino.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include <../d32/d32_core.h> - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t _VBAT = 35; // battery voltage - -#define TF_CS 4 // TF (Micro SD Card) CS pin -#define TS_CS 12 // Touch Screen CS pin -#define TFT_CS 14 // TFT CS pin -#define TFT_LED 32 // TFT backlight control pin -#define TFT_RST 33 // TFT reset pin -#define TFT_DC 27 // TFT DC pin - -#define SS TF_CS - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapkart/pins_arduino.h b/variants/deneyapkart/pins_arduino.h deleted file mode 100644 index 587f92433fa..00000000000 --- a/variants/deneyapkart/pins_arduino.h +++ /dev/null @@ -1,89 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 4; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define LEDB LED_BUILTIN -#define LEDR 3 -#define LEDG 1 - -static const uint8_t GPKEY = 0; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY -#define BOOT GPKEY - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 4; -static const uint8_t SCL = 15; - -static const uint8_t SS = 21; -static const uint8_t MOSI = 5; -static const uint8_t MISO = 18; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 34; -static const uint8_t A3 = 35; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; - -static const uint8_t T0 = 32; -static const uint8_t T1 = 33; -static const uint8_t T2 = 27; -static const uint8_t T3 = 14; -static const uint8_t T4 = 12; -static const uint8_t T5 = 13; - -static const uint8_t D0 = 23; -static const uint8_t D1 = 22; -static const uint8_t D2 = 1; -static const uint8_t D3 = 3; -static const uint8_t D4 = 21; -static const uint8_t D5 = 19; -static const uint8_t D6 = 18; -static const uint8_t D7 = 5; -static const uint8_t D8 = 0; -static const uint8_t D9 = 2; -static const uint8_t D10 = 4; -static const uint8_t D11 = 15; -static const uint8_t D12 = 13; -static const uint8_t D13 = 12; -static const uint8_t D14 = 14; -static const uint8_t D15 = 27; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t PWM0 = 23; -static const uint8_t PWM1 = 22; - -static const uint8_t CAMSD = 33; -static const uint8_t CAMSC = 25; -static const uint8_t CAMD2 = 19; -static const uint8_t CAMD3 = 22; -static const uint8_t CAMD4 = 23; -static const uint8_t CAMD5 = 21; -static const uint8_t CAMD6 = 18; -static const uint8_t CAMD7 = 26; -static const uint8_t CAMD8 = 35; -static const uint8_t CAMD9 = 34; -static const uint8_t CAMPC = 5; -static const uint8_t CAMXC = 32; -static const uint8_t CAMH = 39; -static const uint8_t CAMV = 36; - -static const uint8_t MICD = 12; -static const uint8_t MICC = 13; - -static const uint8_t IMUSD = 4; -static const uint8_t IMUSC = 15; - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapkart1A/pins_arduino.h b/variants/deneyapkart1A/pins_arduino.h deleted file mode 100644 index edac64ac794..00000000000 --- a/variants/deneyapkart1A/pins_arduino.h +++ /dev/null @@ -1,89 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+13; //D12 -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGBLED LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t GPKEY = 0; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY -#define BOOT GPKEY - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 4; -static const uint8_t SCL = 15; - -static const uint8_t SS = 21; -static const uint8_t MOSI = 5; -static const uint8_t MISO = 18; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 34; -static const uint8_t A3 = 35; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; - -static const uint8_t T0 = 32; -static const uint8_t T1 = 33; -static const uint8_t T2 = 27; -static const uint8_t T3 = 14; -static const uint8_t T4 = 12; -static const uint8_t T5 = 13; - -static const uint8_t D0 = 23; -static const uint8_t D1 = 22; -static const uint8_t D2 = 1; -static const uint8_t D3 = 3; -static const uint8_t D4 = 21; -static const uint8_t D5 = 19; -static const uint8_t D6 = 18; -static const uint8_t D7 = 5; -static const uint8_t D8 = 0; -static const uint8_t D9 = 2; -static const uint8_t D10 = 4; -static const uint8_t D11 = 15; -static const uint8_t D12 = 13; -static const uint8_t D13 = 12; -static const uint8_t D14 = 14; -static const uint8_t D15 = 27; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t PWM0 = 23; -static const uint8_t PWM1 = 22; - -static const uint8_t CAMSD = 33; -static const uint8_t CAMSC = 25; -static const uint8_t CAMD2 = 19; -static const uint8_t CAMD3 = 22; -static const uint8_t CAMD4 = 23; -static const uint8_t CAMD5 = 21; -static const uint8_t CAMD6 = 18; -static const uint8_t CAMD7 = 26; -static const uint8_t CAMD8 = 35; -static const uint8_t CAMD9 = 34; -static const uint8_t CAMPC = 5; -static const uint8_t CAMXC = 32; -static const uint8_t CAMH = 39; -static const uint8_t CAMV = 36; - -static const uint8_t SDMI = 2; -static const uint8_t SDMO = 14; -static const uint8_t SDCS = 12; -static const uint8_t SDCK = 27; - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapkart1Av2/pins_arduino.h b/variants/deneyapkart1Av2/pins_arduino.h deleted file mode 100644 index 34d84b057cf..00000000000 --- a/variants/deneyapkart1Av2/pins_arduino.h +++ /dev/null @@ -1,106 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8147 -#define USB_MANUFACTURER "Turkish Technnology Team Foundation (T3)" -#define USB_PRODUCT "DENEYAP KART 1A v2" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+48; //D9 -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGBLED LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t GPKEY = 0; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 47; -static const uint8_t SCL = 21; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 39; -static const uint8_t MISO = 40; -static const uint8_t SCK = 41; - -static const uint8_t A0 = 4; -static const uint8_t A1 = 5; -static const uint8_t A2 = 6; -static const uint8_t A3 = 7; -static const uint8_t A4 = 15; -static const uint8_t A5 = 16; -static const uint8_t A6 = 17; -static const uint8_t A7 = 18; -static const uint8_t A8 = 9; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 5; -static const uint8_t T2 = 6; -static const uint8_t T3 = 7; -static const uint8_t T4 = 8; -static const uint8_t T5 = 3; -static const uint8_t T6 = 10; -static const uint8_t T7 = 1; -static const uint8_t T8 = 2; - -static const uint8_t D0 = 1; -static const uint8_t D1 = 2; -static const uint8_t D2 = 43; -static const uint8_t D3 = 44; -static const uint8_t D4 = 42; -static const uint8_t D5 = 41; -static const uint8_t D6 = 40; -static const uint8_t D7 = 39; -static const uint8_t D8 = 38; -static const uint8_t D9 = 48; -static const uint8_t D10 = 47; -static const uint8_t D11 = 21; -static const uint8_t D12 = 10; -static const uint8_t D13 = 3; -static const uint8_t D14 = 8; -static const uint8_t D15 = 0; -static const uint8_t D16 = 13; -static const uint8_t D17 = 12; -static const uint8_t D18 = 11; -static const uint8_t D19 = 14; - -static const uint8_t PWM0 = 15; -static const uint8_t PWM1 = 16; -static const uint8_t PWM2 = 17; -static const uint8_t PWM3 = 18; -static const uint8_t PWM4 = 38; - -static const uint8_t CAMSD = 4; -static const uint8_t CAMSC = 5; -static const uint8_t CAMD2 = 41; -static const uint8_t CAMD3 = 2; -static const uint8_t CAMD4 = 1; -static const uint8_t CAMD5 = 42; -static const uint8_t CAMD6 = 40; -static const uint8_t CAMD7 = 38; -static const uint8_t CAMD8 = 17; -static const uint8_t CAMD9 = 15; -static const uint8_t CAMPC = 39; -static const uint8_t CAMXC = 16; -static const uint8_t CAMH = 7; -static const uint8_t CAMV = 6; - -static const uint8_t SDMI = 14; -static const uint8_t SDMO = 12; -static const uint8_t SDCS = 11; -static const uint8_t SDCK = 13; - -static const uint8_t BAT = 9; - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapkartg/pins_arduino.h b/variants/deneyapkartg/pins_arduino.h deleted file mode 100644 index 817f63affc1..00000000000 --- a/variants/deneyapkartg/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x814A -#define USB_MANUFACTURER "Turkish Technnology Team Foundation (T3)" -#define USB_PRODUCT "DENEYAP KART G" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+10; //D3 -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGBLED LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t GPKEY = 9; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY -#define BT GPKEY - -static const uint8_t TX = 21; -static const uint8_t RX = 20; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 8; -static const uint8_t SCL = 2; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; - -static const uint8_t D0 = 20; -static const uint8_t D1 = 21; -static const uint8_t D2 = 9; -static const uint8_t D3 = 10; -static const uint8_t D4 = 8; -static const uint8_t D5 = 7; -static const uint8_t D6 = 2; - -static const uint8_t PWM0 = 0; -static const uint8_t PWM1 = 1; -static const uint8_t PWM2 = 3; - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapmini/pins_arduino.h b/variants/deneyapmini/pins_arduino.h deleted file mode 100644 index b4f8b71e05f..00000000000 --- a/variants/deneyapmini/pins_arduino.h +++ /dev/null @@ -1,88 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303A -#define USB_PID 0x8141 -#define USB_MANUFACTURER "Turkish Technnology Team Foundation (T3)" -#define USB_PRODUCT "DENEYAP MINI" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = 35; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define LEDB LED_BUILTIN -#define LEDR 34 -#define LEDG 33 - -static const uint8_t GPKEY = 0; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY -#define BT GPKEY - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 36; -static const uint8_t SCL = 37; - -static const uint8_t SS = 21; -static const uint8_t MOSI = 40; -static const uint8_t MISO = 39; -static const uint8_t SCK = 38; - -static const uint8_t A0 = 8; -static const uint8_t A1 = 9; -static const uint8_t A2 = 10; -static const uint8_t A3 = 11; -static const uint8_t A4 = 12; -static const uint8_t A5 = 13; -static const uint8_t A6 = 16; - -static const uint8_t T0 = 8; -static const uint8_t T1 = 9; -static const uint8_t T2 = 10; -static const uint8_t T3 = 11; -static const uint8_t T4 = 12; -static const uint8_t T5 = 13; - -static const uint8_t D0 = 44; -static const uint8_t D1 = 43; -static const uint8_t D2 = 42; -static const uint8_t D3 = 41; -static const uint8_t D4 = 40; -static const uint8_t D5 = 39; -static const uint8_t D6 = 38; -static const uint8_t D7 = 37; -static const uint8_t D8 = 36; -static const uint8_t D9 = 26; -static const uint8_t D10 = 21; -static const uint8_t D11 = 18; -static const uint8_t D12 = 17; -static const uint8_t D13 = 0; -static const uint8_t D14 = 35; -static const uint8_t D15 = 33; -static const uint8_t D16 = 34; - -static const uint8_t PWM0 = 42; -static const uint8_t PWM1 = 41; - -static const uint8_t DAC0 = 17; -static const uint8_t DAC1 = 18; - -/* -#define SD SDA -#define SC SCL - -#define MO MOSI -#define MI MISO -#define MC SCK - -#define DA0 DAC0 -#define DA1 DAC1 -*/ - -#endif /* Pins_Arduino_h */ diff --git a/variants/deneyapminiv2/pins_arduino.h b/variants/deneyapminiv2/pins_arduino.h deleted file mode 100644 index 98ef80732f8..00000000000 --- a/variants/deneyapminiv2/pins_arduino.h +++ /dev/null @@ -1,88 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8144 -#define USB_MANUFACTURER "Turkish Technnology Team Foundation (T3)" -#define USB_PRODUCT "DENEYAP MINI v2" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+33; //D14 -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGBLED LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t GPKEY = 0; -#define KEY_BUILTIN GPKEY -#define BUILTIN_KEY GPKEY - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 36; -static const uint8_t SCL = 37; - -static const uint8_t SS = 21; -static const uint8_t MOSI = 40; -static const uint8_t MISO = 39; -static const uint8_t SCK = 38; - -static const uint8_t A0 = 7; -static const uint8_t A1 = 8; -static const uint8_t A2 = 9; -static const uint8_t A3 = 10; -static const uint8_t A4 = 11; -static const uint8_t A5 = 12; -static const uint8_t A6 = 13; -static const uint8_t A7 = 16; - -static const uint8_t T0 = 7; -static const uint8_t T1 = 8; -static const uint8_t T2 = 9; -static const uint8_t T3 = 10; -static const uint8_t T4 = 11; -static const uint8_t T5 = 12; -static const uint8_t T6 = 13; - -static const uint8_t D0 = 44; -static const uint8_t D1 = 43; -static const uint8_t D2 = 42; -static const uint8_t D3 = 41; -static const uint8_t D4 = 40; -static const uint8_t D5 = 39; -static const uint8_t D6 = 38; -static const uint8_t D7 = 37; -static const uint8_t D8 = 36; -static const uint8_t D9 = 26; -static const uint8_t D10 = 21; -static const uint8_t D11 = 18; -static const uint8_t D12 = 17; -static const uint8_t D13 = 0; -static const uint8_t D14 = 33; - -static const uint8_t PWM0 = 42; -static const uint8_t PWM1 = 41; - -static const uint8_t DAC0 = 17; -static const uint8_t DAC1 = 18; - -/* -#define SD SDA -#define SC SCL - -#define MO MOSI -#define MI MISO -#define MC SCK - -#define DA0 DAC0 -#define DA1 DAC1 -*/ - -#endif /* Pins_Arduino_h */ diff --git a/variants/department_of_alchemy_minimain_esp32s2/bootloader-tinyuf2.bin b/variants/department_of_alchemy_minimain_esp32s2/bootloader-tinyuf2.bin deleted file mode 100644 index 59fe0a4b196f92965bd656fca876039364f75f88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22016 zcmb_@3s_TEw(!o$g8)YjpeYI+PlAD|lts8HU}My z*3JO-0bYA2hnf)`xr&`>eUvGo*4kEEwd2(3Xp2ti!>LxSJOWA1zt%|*usZj@_y74= z=bXLv+H0@9_TFo+wa&@+V(Ou#?@9F62_Y1K?@vUGo|Mf>LU{P=5)q=!ln{PDA@E4Z z4MU2dveHyxW(tf&#imtEQ7NOTi~*RfS;c5ImC<7Yh%v9M!mN#E))_0Ad}A?^8O==Q zJVv)(qf1&36nSN3W)k+K?%{;El1HIgRWx#7ipz|vm~vx`x%ZrQhjY6{u)0!$%rI|68F{VjA0(EC8DUtN_~q>HuB_Xav{=U<23<&;qa@;2^*s0S*Ja12C-ZX9|jqm4)}1YjZ^r ztP4=)2-=boV>x49SCnrWF-fCV$lb)I_4%gCN~W@CqlwY1zhA3-V}7B@E6Fn@B~{Ph z)Oy$NY?#r2`!yTUnJ|iHDon6GD=YG!F|Jxwfvb5vQ(9(bX2j-gFq;@-anb5h)2ja= zHQRgphpn9O}tKgvifUlczx zYr*>U^O#CASeL4Drl7cN-TfwN`J#DH536>V8f@JN>QTJYiYmcO31;G#^BI$|qId(E zor<#Z4NPTORYksO`t<4E#%bA$7u{ngWRw_Jo0$BvQnRtBw2~>QDmE9Dg9*~Wx;CvY z0cMrcnZ>2R*IZ~~Krl0yBNMZ(sJNKPGcmAd%1x_$U1VSvOi`t0pP- zDmI|q95%R`$`OMcwe5z;&A7(?FWW3$Y8Xw*R2IW#(X6_EH;pt>nz>-Kfv1n#le(wx*K{GC4{%n2 zP6{f@N`@7K$5&ZF0h$e5#NPH*rO%a?tt%x%Iw8xv2y9P&nX`m>&a|PDm|)M2wP^@&x6g0mTeeu_gYLSd1Bb(OTTMGL;H^bZ?g=o zw=Cey zSY4FwJvz1E!4%>W6OKIKU1+K>rHowEqt@DJp1$)54zH?GH0=!fW2RMbh#6sT`dpzr zaGC_q9=#^?)+&spt4*W~Oi;10yi%wGFFhmMuxJ=LY~%10&VTNnHG&oW`M8&OPfe5u zMh+Gt)_WToJ~(~8Wr|`EFroLD$YB9|j-#M%U)1B(>1f+CT20>lH*|mx&Gx^Vtr1d> z(w0~Dm^&+}#Awbh^zL_W)rbW&%Ki;aj%L+tSa+cNxu^?f?eHTSI6%%^UkKZ4)+!9b zMlc&aAi+uT9fG)&)>XicxxcqNywHbzzdJ^$*jTX|X53t8EM?+mElTxvI%0i82lt8@ zyqgOveVc-bWxNX#Omu!(MMYJ)*~{zE_2m#2;%Y`tUhf@6s=UWc4~q&5W@v}Rjy&+a z@dZxaodxc75c3O*%7-iOr#r!SLzit)+Drx_5%0DJk-?Ict-HStGfHtx7~YO-c)wom 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 -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x80FF -#define USB_MANUFACTURER "Department of Alchemy" -#define USB_PRODUCT "MiniMain ESP32-S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -// Neopixel -#define PIN_NEOPIXEL 33 -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() and digitalWrite() for blinking -#define RGB_BUILTIN (PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -#define NEOPIXEL_NUM 1 // number of neopixels -#define NEOPIXEL_POWER 21 // power pin -#define NEOPIXEL_POWER_ON HIGH // power pin state when on -#define PIN_SERVO 2 // servo pin -#define PIN_ISOLATED_INPUT 40 // optocoupled input - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 18; -static const uint8_t A1 = 17; -static const uint8_t A2 = 16; -static const uint8_t A3 = 15; -static const uint8_t A4 = 14; -static const uint8_t A5 = 8; - - -static const uint8_t TX = 39; -static const uint8_t RX = 38; -#define TX1 TX -#define RX1 RX - -static const uint8_t T2 = 2; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/department_of_alchemy_minimain_esp32s2/tinyuf2.bin b/variants/department_of_alchemy_minimain_esp32s2/tinyuf2.bin deleted file mode 100644 index 5ab2d2d49219ff3d954a461f2c3ecfe1830da0dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 147376 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 z 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 diff --git a/variants/department_of_alchemy_minimain_esp32s2/variant.cpp b/variants/department_of_alchemy_minimain_esp32s2/variant.cpp deleted file mode 100644 index 5f7a3c0b55d..00000000000 --- a/variants/department_of_alchemy_minimain_esp32s2/variant.cpp +++ /dev/null @@ -1,39 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels. - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); -} -} diff --git a/variants/dfrobot_beetle_esp32c3/pins_arduino.h b/variants/dfrobot_beetle_esp32c3/pins_arduino.h deleted file mode 100644 index abf093cfccb..00000000000 --- a/variants/dfrobot_beetle_esp32c3/pins_arduino.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x3343 -#define USB_PID 0x8364 -#define USB_MANUFACTURER "DFRobot" -#define USB_PRODUCT "Beetle ESP32-C3" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = 10; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#define GDI_DISPLAY_FPC_INTERFACE -#ifdef GDI_DISPLAY_FPC_INTERFACE - -#define GDI_BLK LED_BUILTIN -#define GDI_SPI_SCLK SCK -#define GDI_SPI_MOSI MOSI -#define GDI_SPI_MISO MISO -#define GDI_DC A1 -#define GDI_RES A2 -#define GDI_CS SS -#define GDI_SDCS A0 -#define GDI_TCS A3 -#define GDI_SCL SCL -#define GDI_SDA SDA - -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/dfrobot_beetle_esp32c6/pins_arduino.h b/variants/dfrobot_beetle_esp32c6/pins_arduino.h deleted file mode 100644 index 147a19f7007..00000000000 --- a/variants/dfrobot_beetle_esp32c6/pins_arduino.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - - -static const uint8_t LED_BUILTIN = 15; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 19; -static const uint8_t SCL = 20; - -static const uint8_t SS = 4; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 21; -static const uint8_t SCK = 23; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/dfrobot_firebeetle2_esp32c6/pins_arduino.h b/variants/dfrobot_firebeetle2_esp32c6/pins_arduino.h deleted file mode 100644 index 0321b29e4d2..00000000000 --- a/variants/dfrobot_firebeetle2_esp32c6/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - - -static const uint8_t LED_BUILTIN = 15; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 19; -static const uint8_t SCL = 20; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 21; -static const uint8_t SCK = 23; - -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; - -static const uint8_t D2 = 8; -static const uint8_t D3 = 14; -static const uint8_t D6 = 1; -static const uint8_t D7 = 18; -static const uint8_t D9 = 9; -static const uint8_t D11 = 7; -static const uint8_t D12 = 6; -static const uint8_t D13 = 15; - -#define GDI_DISPLAY_FPC_INTERFACE -#ifdef GDI_DISPLAY_FPC_INTERFACE - -#define GDI_BLK D13 -#define GDI_SPI_SCLK SCK -#define GDI_SPI_MOSI MOSI -#define GDI_SPI_MISO MISO -#define GDI_DC D2 -#define GDI_RES D3 -#define GDI_CS D6 //LCD_CS -#define GDI_SDCS D7 -#define GDI_FCS -1 -#define GDI_TCS D12 -#define GDI_SCL SCL -#define GDI_SDA SDA -#define GDI_INT D11 -#define GDI_BUSY_TE -1 - -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/dfrobot_firebeetle2_esp32e/pins_arduino.h b/variants/dfrobot_firebeetle2_esp32e/pins_arduino.h deleted file mode 100644 index 335beebf32b..00000000000 --- a/variants/dfrobot_firebeetle2_esp32e/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -typedef unsigned char uint8_t; - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -static const uint8_t TX2 = 17; -static const uint8_t RX2 = 16; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 25; -static const uint8_t D3 = 26; -static const uint8_t D4 = 27; -static const uint8_t D5 = 0; -static const uint8_t D6 = 14; -static const uint8_t D7 = 13; -static const uint8_t D8 = 5; -static const uint8_t D9 = 2; -static const uint8_t D10 = 17; -static const uint8_t D11 = 16; -static const uint8_t D12 = 4; -static const uint8_t D13 = 12; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 34; -static const uint8_t A3 = 35; -static const uint8_t A4 = 15; -static const uint8_t A5 = 35; -static const uint8_t A6 = 4; -static const uint8_t A7 = 0; -static const uint8_t A8 = 2; -static const uint8_t A9 = 13; -static const uint8_t A10 = 12; -static const uint8_t A11 = 14; -static const uint8_t A12 = 27; -static const uint8_t A13 = 25; -static const uint8_t A14 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/dfrobot_firebeetle2_esp32s3/pins_arduino.h b/variants/dfrobot_firebeetle2_esp32s3/pins_arduino.h deleted file mode 100644 index 012596b01af..00000000000 --- a/variants/dfrobot_firebeetle2_esp32s3/pins_arduino.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x3343 -#define USB_PID 0x83CF -#define USB_MANUFACTURER "DFRobot" -#define USB_PRODUCT "FireBeetle 2 ESP32-S3" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 1; -static const uint8_t SCL = 2; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 16; -static const uint8_t SCK = 17; - -static const uint8_t A0 = 4; -static const uint8_t A1 = 5; -static const uint8_t A2 = 6; -static const uint8_t A3 = 8; -static const uint8_t A4 = 10; -static const uint8_t A5 = 11; - - -static const uint8_t D2 = 3; -static const uint8_t D3 = 38; -static const uint8_t D5 = 7; -static const uint8_t D6 = 18; -static const uint8_t D7 = 9; -static const uint8_t D9 = 0; -static const uint8_t D10 = 14; -static const uint8_t D11 = 13; -static const uint8_t D12 = 12; -static const uint8_t D13 = 21; -static const uint8_t D14 = 47; - -static const uint8_t LED_BUILTIN = D13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#define GDI_DISPLAY_FPC_INTERFACE -#ifdef GDI_DISPLAY_FPC_INTERFACE - -#define GDI_BLK 21 -#define GDI_SPI_SCLK SCK -#define GDI_SPI_MOSI MOSI -#define GDI_SPI_MISO MISO -#define GDI_DC 3 -#define GDI_RES 38 -#define GDI_CS 18 -#define GDI_SDCS 9 -#define GDI_FCS 7 -#define GDI_TCS 12 -#define GDI_SCL SCL -#define GDI_SDA SDA -#define GDI_INT 13 -#define GDI_BUSY_TE 14 - -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/dfrobot_romeo_esp32s3/pins_arduino.h b/variants/dfrobot_romeo_esp32s3/pins_arduino.h deleted file mode 100644 index 40774c71ddf..00000000000 --- a/variants/dfrobot_romeo_esp32s3/pins_arduino.h +++ /dev/null @@ -1,74 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 1; -static const uint8_t SCL = 2; - - -static const uint8_t MOSI = 15; -static const uint8_t MISO = 16; -static const uint8_t SCK = 17; -static const uint8_t SS = 18; - -#define GDI_DISPLAY_FPC_INTERFACE -#ifdef GDI_DISPLAY_FPC_INTERFACE - -#define GDI_BLK 21 -#define GDI_SPI_SCLK SCK -#define GDI_SPI_MOSI MOSI -#define GDI_SPI_MISO MISO -#define GDI_DC 3 -#define GDI_RES 38 -#define GDI_CS 18 -#define GDI_SDCS 0 -#define GDI_FCS 7 -#define GDI_TCS 12 -#define GDI_SCL SCL -#define GDI_SDA SDA -#define GDI_INT 13 -#define GDI_BUSY_TE 14 - -#endif /* GDI_DISPLAY_FPC_INTERFACE */ - -// CAM -#define CAM_DVP_INTERFACE -#ifdef CAM_DVP_INTERFACE - -#define CAM_D5 4 -#define CAM_PCLK 5 -#define CAM_VSYNC 6 -#define CAM_D6 7 -#define CAM_D7 8 -#define CAM_D8 46 -#define CAM_D9 48 -#define CAM_XMCLK 45 -#define CAM_D2 39 -#define CAM_D3 40 -#define CAM_D4 41 -#define CAM_HREF 42 -#define CAM_SCL SCL -#define CAM_SDA SDA - -#endif /* CAM_DVP_INTERFACE */ - -// Motor -#define MOTOR_INTERFACE -#ifdef MOTOR_INTERFACE - -#define M1_EN 12 -#define M1_PH 13 -#define M2_EN 14 -#define M2_PH 21 -#define M3_EN 9 -#define M3_PH 10 -#define M4_EN 47 -#define M4_PH 11 - -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/doitESP32devkitV1/pins_arduino.h b/variants/doitESP32devkitV1/pins_arduino.h deleted file mode 100644 index 467c58c0034..00000000000 --- a/variants/doitESP32devkitV1/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/doitESPduino32/pins_arduino.h b/variants/doitESPduino32/pins_arduino.h deleted file mode 100644 index f0b54aa45bd..00000000000 --- a/variants/doitESPduino32/pins_arduino.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -//SPI -static const uint8_t IO5 = 5; //SS -static const uint8_t IO23 = 23; //MOSI -static const uint8_t IO19 = 19; //MISO -static const uint8_t IO18 = 18; //SCK - -static const uint8_t SS = IO5; -static const uint8_t MOSI = IO23; -static const uint8_t MISO = IO19; -static const uint8_t SCK = IO18; - -//ANALOG -static const uint8_t IO36 = 36; -static const uint8_t IO39 = 39; -static const uint8_t IO4 = 4; -static const uint8_t IO2 = 2; -static const uint8_t IO35 = 35; -//ANALOG+ -static const uint8_t IO15 = 15; -static const uint8_t IO33 = 33; -static const uint8_t IO32 = 32; -static const uint8_t IO0 = 0; - -//DIGITAL -static const uint8_t IO13 = 13; -static const uint8_t IO12 = 12; -static const uint8_t IO14 = 14; -static const uint8_t IO27 = 27; -static const uint8_t IO16 = 16; -static const uint8_t IO17 = 17; -static const uint8_t IO25 = 25; -static const uint8_t IO26 = 26; -static const uint8_t TX0 = 1; -static const uint8_t RX0 = 3; -//TFlash(uSD) -static const uint8_t SD2 = 9; -static const uint8_t SD3 = 10; -static const uint8_t CMD = 11; -static const uint8_t CLK = 6; -static const uint8_t SD0 = 7; -static const uint8_t SD1 = 8; - -//Arduino Uno backward compatibility -static const uint8_t A0 = 2; -static const uint8_t A1 = 4; -static const uint8_t A2 = 35; -static const uint8_t A3 = 34; -static const uint8_t A4 = 36; -static const uint8_t A5 = 39; - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 26; -static const uint8_t D3 = 25; -static const uint8_t D4 = 17; -static const uint8_t D5 = 16; -static const uint8_t D6 = 27; -static const uint8_t D7 = 14; -static const uint8_t D8 = 12; -static const uint8_t D9 = 13; -static const uint8_t D10 = 5; -static const uint8_t D11 = 23; -static const uint8_t D12 = 19; -static const uint8_t D13 = 18; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define PIN_WIRE_SDA SDA // backward compatibility -#define PIN_WIRE_SCL SCL // backward compatibility - -#define PIN_SPI_SS SS // backward compatibility -#define PIN_SPI_MOSI MOSI // backward compatibility -#define PIN_SPI_MISO MISO // backward compatibility -#define PIN_SPI_SCK SCK // backward compatibility - -#define PIN_A0 A0 // backward compatibility - -// ESP-WROOM-32 does not have GPIO 14, 20(NC), 24, 28, 29, 30, 31, 36, 37, 38, 40+ -// All pins should be PWM capable. The board is a clone of WeMos D1 R32. - -#endif /* Pins_Arduino_h */ diff --git a/variants/dpu_esp32/pins_arduino.h b/variants/dpu_esp32/pins_arduino.h deleted file mode 100644 index 1b2e1b6634f..00000000000 --- a/variants/dpu_esp32/pins_arduino.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t SDA = 4; -static const uint8_t SCL = 5; - -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; -static const uint8_t SS = 15; - -static const uint8_t TP_RST = 21; -static const uint8_t TP_INT = 19; -static const uint8_t TFT_BL = 18; -static const uint8_t TFT_CS = 15; -static const uint8_t TFT_DC = 27; -static const uint8_t TFT_RST = 32; -static const uint8_t SD_CS = 23; -static const uint8_t SD_CD = 22; -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-devkit-lipo/pins_arduino.h b/variants/esp32-devkit-lipo/pins_arduino.h deleted file mode 100644 index fb715c0e79e..00000000000 --- a/variants/esp32-devkit-lipo/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define TX1 33 // Ext1 pin 8 -#define RX1 25 // Ext1 pin 9 - -#define TX2 19 // Ext2 pin 8 -#define RX2 18 // Ext2 pin 9 - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-evb/pins_arduino.h b/variants/esp32-evb/pins_arduino.h deleted file mode 100644 index 43691f02c7b..00000000000 --- a/variants/esp32-evb/pins_arduino.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t KEY_BUILTIN = 34; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define TX1 4 -#define RX1 36 - -static const uint8_t SDA = 13; -static const uint8_t SCL = 16; - -static const uint8_t SS = 17; -static const uint8_t MOSI = 2; -static const uint8_t MISO = 15; -static const uint8_t SCK = 14; - -#define BOARD_HAS_1BIT_SDMMC -#define BOARD_MAX_SDMMC_FREQ SDMMC_FREQ_DEFAULT - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-gateway/pins_arduino.h b/variants/esp32-gateway/pins_arduino.h deleted file mode 100644 index 1ba5fd0bfe9..00000000000 --- a/variants/esp32-gateway/pins_arduino.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#if defined (ARDUINO_ESP32_GATEWAY_E) || defined (ARDUINO_ESP32_GATEWAY_F) -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT -#define ETH_PHY_POWER 5 -#endif - -static const uint8_t LED_BUILTIN = 33; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 34; - -static const uint8_t SCL = 16; // This is extention pin 11 -static const uint8_t SDA = 32; // This is extention pin 13 - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A7 = 35; - -static const uint8_t T9 = 32; - -#if defined (ARDUINO_ESP32_GATEWAY_F) -#define BOARD_HAS_1BIT_SDMMC -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-poe-iso/pins_arduino.h b/variants/esp32-poe-iso/pins_arduino.h deleted file mode 100644 index b9033d74cfe..00000000000 --- a/variants/esp32-poe-iso/pins_arduino.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT -#define ETH_PHY_POWER 12 - -static const uint8_t KEY_BUILTIN = 34; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define TX1 4 -#define RX1 36 - -#define TX2 33 // ext2 pin 5 -#define RX2 35 // ext2 pin 3 - -static const uint8_t SDA = 13; -static const uint8_t SCL = 16; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 2; -static const uint8_t MISO = 15; -static const uint8_t SCK = 14; - -#define BOARD_HAS_1BIT_SDMMC - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-poe/pins_arduino.h b/variants/esp32-poe/pins_arduino.h deleted file mode 100644 index b9033d74cfe..00000000000 --- a/variants/esp32-poe/pins_arduino.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT -#define ETH_PHY_POWER 12 - -static const uint8_t KEY_BUILTIN = 34; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define TX1 4 -#define RX1 36 - -#define TX2 33 // ext2 pin 5 -#define RX2 35 // ext2 pin 3 - -static const uint8_t SDA = 13; -static const uint8_t SCL = 16; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 2; -static const uint8_t MISO = 15; -static const uint8_t SCK = 14; - -#define BOARD_HAS_1BIT_SDMMC - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-trueverit-iot-driver-mkii/pins_arduino.h b/variants/esp32-trueverit-iot-driver-mkii/pins_arduino.h deleted file mode 100644 index 222046998dc..00000000000 --- a/variants/esp32-trueverit-iot-driver-mkii/pins_arduino.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 18; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define TX1 12 -#define RX1 13 -#define TX2 33 -#define RX2 39 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SCL = 4; -static const uint8_t SDA = 15; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 32; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t T0 = 4; -static const uint8_t T2 = 2; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -#define ETH_PHY_ADDR 1 -#define ETH_PHY_POWER 2 -#define ETH_PHY_MDC 16 -#define ETH_PHY_MDIO 14 -#define ETH_PHY_TYPE ETH_PHY_DP83848 -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-trueverit-iot-driver-mkiii/pins_arduino.h b/variants/esp32-trueverit-iot-driver-mkiii/pins_arduino.h deleted file mode 100644 index 0a468d58856..00000000000 --- a/variants/esp32-trueverit-iot-driver-mkiii/pins_arduino.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 18; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define TX1 12 -#define RX1 13 -#define TX2 33 -#define RX2 39 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SCL = 4; -static const uint8_t SDA = 15; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 32; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t T0 = 4; -static const uint8_t T2 = 2; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -#define ETH_PHY_ADDR 0 -#define ETH_PHY_POWER 2 -#define ETH_PHY_MDC 16 -#define ETH_PHY_MDIO 14 -#define ETH_PHY_TYPE ETH_PHY_RTL8201 -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32-trueverit-iot-driver/pins_arduino.h b/variants/esp32-trueverit-iot-driver/pins_arduino.h deleted file mode 100644 index da4ef3ce633..00000000000 --- a/variants/esp32-trueverit-iot-driver/pins_arduino.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 18; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define TX1 12 -#define RX1 13 -#define TX2 33 -#define RX2 39 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SCL = 4; -static const uint8_t SDA = 15; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 32; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t T0 = 4; -static const uint8_t T2 = 2; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -#define ETH_PHY_ADDR 0 -#define ETH_PHY_POWER -1 -#define ETH_PHY_MDC 16 -#define ETH_PHY_MDIO 14 -#define ETH_PHY_TYPE ETH_PHY_LAN8720 -#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32/pins_arduino.h b/variants/esp32/pins_arduino.h deleted file mode 100644 index 27ecc063483..00000000000 --- a/variants/esp32/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp320/pins_arduino.h b/variants/esp320/pins_arduino.h deleted file mode 100644 index a7091aa09b2..00000000000 --- a/variants/esp320/pins_arduino.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 2; -static const uint8_t SCL = 14; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32_s3r8n16/gen4esp32_16MBapp.csv b/variants/esp32_s3r8n16/gen4esp32_16MBapp.csv deleted file mode 100644 index d3b9316c255..00000000000 --- a/variants/esp32_s3r8n16/gen4esp32_16MBapp.csv +++ /dev/null @@ -1,5 +0,0 @@ -# Name, Type, SubType, Offset, Size, Flags -nvs, data, nvs, 0x9000, 0x5000, -otadata, data, ota, 0xe000, 0x2000, -app0, app, ota_0, 0x10000, 0xFE0000, -coredump, data,coredump, 0xFF0000, 0x10000, diff --git a/variants/esp32_s3r8n16/gen4esp32_2MBapp_2MBota_12MBspiffs.csv b/variants/esp32_s3r8n16/gen4esp32_2MBapp_2MBota_12MBspiffs.csv deleted file mode 100644 index 431c235007d..00000000000 --- a/variants/esp32_s3r8n16/gen4esp32_2MBapp_2MBota_12MBspiffs.csv +++ /dev/null @@ -1,7 +0,0 @@ -# Name, Type, SubType, Offset, Size, Flags -nvs, data, nvs, 0x9000, 0x5000, -otadata, data, ota, 0xe000, 0x2000, -app0, app, ota_0, 0x10000,0x200000, -app1, app, ota_1, 0x210000,0x200000, -spiffs, data, spiffs, 0x410000,0xBE0000, -coredump, data, coredump,0xFF0000,0x10000, diff --git a/variants/esp32_s3r8n16/gen4esp32_4MBapp_4MBota_7MBspiffs.csv b/variants/esp32_s3r8n16/gen4esp32_4MBapp_4MBota_7MBspiffs.csv deleted file mode 100644 index a0483430726..00000000000 --- a/variants/esp32_s3r8n16/gen4esp32_4MBapp_4MBota_7MBspiffs.csv +++ /dev/null @@ -1,7 +0,0 @@ -# Name, Type, SubType, Offset, Size, Flags -nvs, data, nvs, 0x9000, 0x5000, -otadata, data, ota, 0xe000, 0x2000, -app0, app, ota_0, 0x10000, 0x480000, -app1, app, ota_1, 0x490000,0x480000, -spiffs, data, spiffs, 0x910000,0x6E0000, -coredump, data, coredump,0xFF0000,0x10000, diff --git a/variants/esp32_s3r8n16/gen4esp32_8MBapp_8MBota.csv b/variants/esp32_s3r8n16/gen4esp32_8MBapp_8MBota.csv deleted file mode 100644 index 840a2f0d10e..00000000000 --- a/variants/esp32_s3r8n16/gen4esp32_8MBapp_8MBota.csv +++ /dev/null @@ -1,6 +0,0 @@ -# Name, Type, SubType, Offset, Size, Flags -nvs, data, nvs, 0x9000, 0x5000, -otadata, data, ota, 0xe000, 0x2000, -app0, app, ota_0, 0x10000,0x7F0000, -app1, app, ota_1, 0x800000,0x7F0000, -coredump, data,coredump, 0xFF0000, 0x10000, diff --git a/variants/esp32_s3r8n16/pins_arduino.h b/variants/esp32_s3r8n16/pins_arduino.h deleted file mode 100644 index ba3f1908875..00000000000 --- a/variants/esp32_s3r8n16/pins_arduino.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 -#define USB_MANUFACTURER "4D Systems Pty Ltd" -#define USB_PRODUCT "4D Systems gen4-ESP32 16MB Modules (ESP32-S3R8n16)" -//#define USB_CLASS 2 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 17; -static const uint8_t SCL = 18; - -static const uint8_t SS = -1; // Modified elsewhere -static const uint8_t MOSI = -1; // Modified elsewhere -static const uint8_t MISO = -1; // Modified elsewhere -static const uint8_t SCK = -1; // Modified elsewhere - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32c2/pins_arduino.h b/variants/esp32c2/pins_arduino.h deleted file mode 100644 index 65978984e92..00000000000 --- a/variants/esp32c2/pins_arduino.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 20; -static const uint8_t RX = 19; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32c3-devkit-lipo/pins_arduino.h b/variants/esp32c3-devkit-lipo/pins_arduino.h deleted file mode 100644 index 7bed6a1ca3a..00000000000 --- a/variants/esp32c3-devkit-lipo/pins_arduino.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t LED_BUILTIN = 8; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUT_BUILTIN = 9; -#define BUILTIN_BUT BUT_BUILTIN // backward compatibility -#define BUT_BUILTIN BUT_BUILTIN // allow testing #ifdef BUT_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -// define I2C pins -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; -// define SPI pins -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -// external power sense - disabled by default - check the schematic -//static const uint8_t PWR_SENSE = 4; -// battery measurement - disabled by default - check the schematic -//static const uint8_t BAT_SENSE = 3; -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32c6-evb/pins_arduino.h b/variants/esp32c6-evb/pins_arduino.h deleted file mode 100644 index 5c266d190fd..00000000000 --- a/variants/esp32c6-evb/pins_arduino.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t LED_BUILTIN = 8; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUT_BUILTIN = 9; -#define BUILTIN_BUT BUT_BUILTIN // backward compatibility -#define BUT_BUILTIN BUT_BUILTIN // allow testing #ifdef BUT_BUILTIN - -#define REL1 10 -#define REL2 11 -#define REL3 22 -#define REL4 23 - -#define DIN1 1 -#define DIN2 2 -#define DIN3 3 -#define DIN4 15 - -// available at UEXT and pUEXT + -static const uint8_t TX1 = 5; -static const uint8_t RX1 = 4; - -static const uint8_t SDA = 6; -static const uint8_t SCL = 7; - -static const uint8_t SS = 21; -static const uint8_t MOSI = 18; -static const uint8_t MISO = 20; -static const uint8_t SCK = 19; -// available at UEXT and pUEXT - - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32c6/pins_arduino.h b/variants/esp32c6/pins_arduino.h deleted file mode 100644 index b551983d7fe..00000000000 --- a/variants/esp32c6/pins_arduino.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define PIN_NEOPIXEL 8 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 19; -static const uint8_t MISO = 20; -static const uint8_t SCK = 21; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32da/pins_arduino.h b/variants/esp32da/pins_arduino.h deleted file mode 100644 index 7e8a27cbf54..00000000000 --- a/variants/esp32da/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#define BOARD_HAS_DUAL_ANTENNA -static const uint8_t ANT1 = 2; -static const uint8_t ANT2 = 25; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32h2/pins_arduino.h b/variants/esp32h2/pins_arduino.h deleted file mode 100644 index 93a02871090..00000000000 --- a/variants/esp32h2/pins_arduino.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define PIN_NEOPIXEL 8 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 24; -static const uint8_t RX = 23; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 22; - -static const uint8_t SS = 0; -static const uint8_t MOSI = 25; -static const uint8_t MISO = 11; -static const uint8_t SCK = 10; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32micromod/pins_arduino.h b/variants/esp32micromod/pins_arduino.h deleted file mode 100755 index b31f20dbea5..00000000000 --- a/variants/esp32micromod/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#define TX1 17 -#define RX1 16 - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; -static const uint8_t I2C_INT = 4; - -#define WIRE1_PIN_DEFINED 1 // See Wire.cpp at bool TwoWire::initPins(int sdaPin, int sclPin) -static const uint8_t SDA1 = 26; -static const uint8_t SCL1 = 25; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 34; -static const uint8_t A1 = 35; -static const uint8_t BATT_VIN = 39; - -static const uint8_t PWM0 = 13; -static const uint8_t PWM1 = 12; - -static const uint8_t D0 = 14; -static const uint8_t D1 = 27; - -static const uint8_t G0 = 15; -static const uint8_t G1 = 25; -static const uint8_t G2 = 26; -static const uint8_t G3 = 17; -static const uint8_t G4 = 16; -static const uint8_t G5 = 32; -static const uint8_t G6 = 33; - - - -static const uint8_t AUD_OUT = 17; -static const uint8_t AUD_IN = 16; -static const uint8_t AUD_LRCLK = 25; -static const uint8_t AUD_BCLK = 26; - - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s2-devkit-lipo-usb/pins_arduino.h b/variants/esp32s2-devkit-lipo-usb/pins_arduino.h deleted file mode 100644 index 8f1106a0c1d..00000000000 --- a/variants/esp32s2-devkit-lipo-usb/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define PIN_NEOPIXEL 18 -#define RGB_BUILTIN PIN_NEOPIXEL -#define RGB_BRIGHTNESS 64 - -static const uint8_t BUT_BUILTIN = 0; -#define BUILTIN_BUT BUT_BUILTIN // backward compatibility -#define BUT_BUILTIN BUT_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -// external power sense - disabled by default - check the schematic -//static const uint8_t PWR_SENSE = 7; -// battery measurement - disabled by default - check the schematic -//static const uint8_t BAT_SENSE = 8; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s2-devkit-lipo/pins_arduino.h b/variants/esp32s2-devkit-lipo/pins_arduino.h deleted file mode 100644 index b041e2b3a73..00000000000 --- a/variants/esp32s2-devkit-lipo/pins_arduino.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define PIN_NEOPIXEL 18 -#define RGB_BUILTIN PIN_NEOPIXEL -#define RGB_BRIGHTNESS 64 - -static const uint8_t BUT_BUILTIN = 0; -#define BUILTIN_BUT BUT_BUILTIN // backward compatibility -#define BUT_BUILTIN BUT_BUILTIN // allow testing #ifdef BUT_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -// define I2C pins -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -// define SPI pins -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -// external power sense - disabled by default - check the schematic -//static const uint8_t PWR_SENSE = 7; -// battery measurement - disabled by default - check the schematic -//static const uint8_t BAT_SENSE = 8; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s2/pins_arduino.h b/variants/esp32s2/pins_arduino.h deleted file mode 100644 index ea68934a69b..00000000000 --- a/variants/esp32s2/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// GPIO pin for Saola-1 & DevKitM-1 = 18 -#define PIN_NEOPIXEL 18 -// GPIO pin for Kaluga = 45 -//#define PIN_NEOPIXEL 45 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s2thing_plus/pins_arduino.h b/variants/esp32s2thing_plus/pins_arduino.h deleted file mode 100644 index d5c4510aa5d..00000000000 --- a/variants/esp32s2thing_plus/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x1B4F -#define USB_PID 0x0027 -#define USB_MANUFACTURER "SparkFun" -#define USB_PRODUCT "ESP32-S2 Thing Plus" -#define USB_SERIAL "" - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -#define TX1 34 -#define RX1 33 - -static const uint8_t SDA = 1; -static const uint8_t SCL = 2; - -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t A2 = 14; -static const uint8_t A3 = 9; -static const uint8_t A4 = 7; -static const uint8_t A5 = 5; - -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s2usb/pins_arduino.h b/variants/esp32s2usb/pins_arduino.h deleted file mode 100644 index 636c62482a0..00000000000 --- a/variants/esp32s2usb/pins_arduino.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// Default USB Settings -#define USB_VID 0x303A -#define USB_PID 0x0003 -#define USB_MANUFACTURER "Espressif Systems" -#define USB_PRODUCT "ESP32-S2-USB" -#define USB_SERIAL "0" -#define USB_WEBUSB_ENABLED false -#define USB_WEBUSB_URL "https://espressif.github.io/arduino-esp32/webusb.html" - -// Default USB FirmwareMSC Settings -#define USB_FW_MSC_VENDOR_ID "ESP32-S2" //max 8 chars -#define USB_FW_MSC_PRODUCT_ID "Firmware MSC" //max 16 chars -#define USB_FW_MSC_PRODUCT_REVISION "1.23" //max 4 chars -#define USB_FW_MSC_VOLUME_NAME "S2-Firmware" //max 11 chars -#define USB_FW_MSC_SERIAL_NUMBER 0x00000000 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3-devkit-lipo/pins_arduino.h b/variants/esp32s3-devkit-lipo/pins_arduino.h deleted file mode 100644 index bbad39f745f..00000000000 --- a/variants/esp32s3-devkit-lipo/pins_arduino.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = 38; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUT_BUILTIN = 0; -#define BUILTIN_BUT BUT_BUILTIN // backward compatibility -#define BUT_BUILTIN BUT_BUILTIN // allow testing #ifdef BUT_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -// available at pUEXT + -static const uint8_t TX1 = 17; -static const uint8_t RX1 = 18; - -static const uint8_t SDA = 48; -static const uint8_t SCL = 47; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; -// available at pUEXT - - -// external power sense -static const uint8_t PWR_SENSE = 5; -// battery measurement -static const uint8_t BAT_SENSE = 6; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3/pins_arduino.h b/variants/esp32s3/pins_arduino.h deleted file mode 100644 index 339b47df0b4..00000000000 --- a/variants/esp32s3/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// Some boards have too low voltage on this pin (board design bug) -// Use different pin with 3V and connect with 48 -// and change this setup for the chosen pin (for example 38) -#define PIN_NEOPIXEL 48 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3_powerfeather/pins_arduino.h b/variants/esp32s3_powerfeather/pins_arduino.h deleted file mode 100644 index 2066cf3e002..00000000000 --- a/variants/esp32s3_powerfeather/pins_arduino.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303A -#define USB_PID 0x81BB -#define USB_MANUFACTURER "PowerFeather" -#define USB_PRODUCT "ESP32-S3 PowerFeather" -#define USB_SERIAL "" - -static const uint8_t ALARM = 21; -static const uint8_t INT = 5; - -static const uint8_t LED = 46; -static const uint8_t BTN = 0; -static const uint8_t EN = 7; - -static const uint8_t TX = 44; -static const uint8_t RX = 42; -static const uint8_t TX0 = 43; - -static const uint8_t SS = -1; -static const uint8_t MISO = 41; -static const uint8_t MOSI = 40; -static const uint8_t SCK = 39; - -static const uint8_t SCL = 36; -static const uint8_t SDA = 35; - -static const uint8_t A0 = 10; -static const uint8_t A1 = 9; -static const uint8_t A2 = 8; -static const uint8_t A3 = 3; -static const uint8_t A4 = 2; -static const uint8_t A5 = 1; - -static const uint8_t D5 = 15; -static const uint8_t D6 = 16; -static const uint8_t D7 = 37; -static const uint8_t D8 = 6; -static const uint8_t D9 = 17; -static const uint8_t D10 = 18; -static const uint8_t D11 = 45; -static const uint8_t D12 = 12; -static const uint8_t D13 = 11; - -#define LED_BUILTIN 46 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3box/pins_arduino.h b/variants/esp32s3box/pins_arduino.h deleted file mode 100644 index 115ded2a2ec..00000000000 --- a/variants/esp32s3box/pins_arduino.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 41; -static const uint8_t SCL = 40; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; - -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -// Wire1 for ES7210 MIC ADC, ES8311 I2S DAC, ICM-42607-P IMU and TT21100 Touch Panel -#define I2C_SDA 8 -#define I2C_SCL 18 - -#define ES7210_ADDR 0x40 //MIC ADC -#define ES8311_ADDR 0x18 //I2S DAC -#define ICM42607P_ADDR 0x68 //IMU -#define TT21100_ADDR 0x24 //Touch Panel - -#define TFT_DC 4 -#define TFT_CS 5 -#define TFT_MOSI 6 -#define TFT_CLK 7 -#define TFT_MISO 0 -#define TFT_BL 45 -#define TFT_RST 48 - -#define I2S_LRCK 47 -#define I2S_MCLK 2 -#define I2S_SCLK 17 -#define I2S_SDIN 16 -#define I2S_DOUT 15 - -#define PA_PIN 46 //Audio Amp Power -#define MUTE_PIN 1 //MUTE Button -#define TS_IRQ 3 //Touch Screen IRQ - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3camlcd/pins_arduino.h b/variants/esp32s3camlcd/pins_arduino.h deleted file mode 100644 index 9580091dd3a..00000000000 --- a/variants/esp32s3camlcd/pins_arduino.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 17; -static const uint8_t SCL = 18; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -// Wire1 for Cam and TS -#define I2C_SDA 17 -#define I2C_SCL 18 - -#define PWDN_GPIO_NUM -1 -#define RESET_GPIO_NUM -1 -#define XCLK_GPIO_NUM 40 -#define SIOD_GPIO_NUM 17 -#define SIOC_GPIO_NUM 18 -#define Y9_GPIO_NUM 39 -#define Y8_GPIO_NUM 41 -#define Y7_GPIO_NUM 42 -#define Y6_GPIO_NUM 12 -#define Y5_GPIO_NUM 3 -#define Y4_GPIO_NUM 14 -#define Y3_GPIO_NUM 47 -#define Y2_GPIO_NUM 13 -#define VSYNC_GPIO_NUM 21 -#define HREF_GPIO_NUM 38 -#define PCLK_GPIO_NUM 11 - -#define TFT_FREQ 40000000 -#define TFT_BITS 8 -#define TFT_WIDTH 480 -#define TFT_HEIGHT 320 -#define TFT_WR 4 -#define TFT_DC 2 -#define TFT_D0 45 -#define TFT_D1 16 -#define TFT_D2 15 -#define TFT_D3 10 -#define TFT_D4 8 -#define TFT_D5 7 -#define TFT_D6 6 -#define TFT_D7 5 - -#define SDMMC_CMD 20 -#define SDMMC_CLK 9 -#define SDMMC_DATA 19 - -#define MIC_CLK 0 -#define MIC_DATA 1 - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3usbotg/pins_arduino.h b/variants/esp32s3usbotg/pins_arduino.h deleted file mode 100644 index 1983c45d1a4..00000000000 --- a/variants/esp32s3usbotg/pins_arduino.h +++ /dev/null @@ -1,90 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 45; -static const uint8_t SCL = 46; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; - -static const uint8_t T3 = 3; - -// SDCARD Slot -#define BOARD_HAS_SDMMC -#define SDMMC_D2 33 // SDMMC Data2 -#define SDMMC_D3 34 // SDMMC Data3 / SPI CS -#define SDMMC_CMD 35 // SDMMC CMD / SPI MOSI -#define SDMMC_CLK 36 // SDMMC CLK / SPI SCK -#define SDMMC_D0 37 // SDMMC Data0 / SPI MISO -#define SDMMC_D1 38 // SDMMC Data1 -#define BOARD_MAX_SDMMC_FREQ SDMMC_FREQ_DEFAULT - -// 240x240 LCD -#define BOARD_HAS_SPI_LCD -#define LCD_MODEL ST7789 -#define LCD_WIDTH 240 -#define LCD_HEIGHT 240 // *RAM height is actually 320! -#define LCD_MISO -1 // LCD Does not use MISO. -#define LCD_DC 4 // Used to switch data and command status. -#define LCD_CS 5 // used to enable LCD, low level to enable. -#define LCD_CLK 6 // LCD SPI Clock. -#define LCD_MOSI 7 // LCD SPI MOSI. -#define LCD_RST 8 // used to reset LCD, low level to reset. -#define LCD_BL 9 // LCD backlight control. - -// Buttons -#define BUTTON_OK 0 // OK button, low level when pressed. -#define BUTTON_UP 10 // UP button, low level when pressed. -#define BUTTON_DOWN 11 // Down button, low level when pressed. -#define BUTTON_MENU 14 // Menu button, low level when pressed. - -// LEDs -#define LED_GREEN 15 // the light is lit when set high level. -#define LED_YELLOW 16 // the light is lit when set high level. - -// Board Controls -#define DEV_VBUS_EN 12 // High level to enable DEV_VBUS power supply. -#define BOOST_EN 13 // High level to enable Battery Boost circuit. -#define LIMIT_EN 17 // Enable USB_HOST current limiting IC, high level enable. -#define USB_HOST_EN 18 // Used to switch the USB interface. When high level, the USB_HOST interface is enabled. When low level, the USB_DEV interface is enabled. - -// Board Sensors -#define OVER_CURRENT 21 // Current overrun signal, high level means overrun. -#define HOST_VOLTS 1 // USB_DEV voltage monitoring, ADC1 channel 0. actual_v = value_v * 3.7 -#define BAT_VOLTS 2 // Battery voltage monitoring, ADC1 channel 1. actual_v = value_v * 2 - -// USB Port -#define USB_DN 19 // USB D- -#define USB_DP 20 // USB D+ - -// Bottom header -#define MTCK 39 -#define MTDO 40 -#define MTDI 41 -#define MTMS 42 -// #define FREE_6 3 // Idle, can be customized. -// #define FREE_4 26 // Idle, can be customized. -// #define FREE_1 45 // Idle, can be customized. -// #define FREE_2 46 // Idle, can be customized. -// #define FREE_5 47 // Idle, can be customized. -// #define FREE_3 48 // Idle, can be customized. - -typedef enum { USB_HOST_POWER_OFF, USB_HOST_POWER_VBUS, USB_HOST_POWER_BAT } UsbHostPower_t; -void usbHostPower(UsbHostPower_t mode); -void usbHostEnable(bool enable); - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32s3usbotg/variant.cpp b/variants/esp32s3usbotg/variant.cpp deleted file mode 100644 index f5f24fdac2a..00000000000 --- a/variants/esp32s3usbotg/variant.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#include "Arduino.h" - -void usbHostPower(UsbHostPower_t mode){ - static UsbHostPower_t m = USB_HOST_POWER_OFF; - if(m == mode){ - return; - } - if(mode == USB_HOST_POWER_OFF){ - digitalWrite(LIMIT_EN, LOW); - if(m == USB_HOST_POWER_VBUS){ - digitalWrite(DEV_VBUS_EN, LOW); - } else if(m == USB_HOST_POWER_BAT){ - digitalWrite(BOOST_EN, LOW); - } - } else if(mode == USB_HOST_POWER_VBUS){ - if(m == USB_HOST_POWER_BAT){ - digitalWrite(BOOST_EN, LOW); - } - digitalWrite(DEV_VBUS_EN, HIGH); - } else if(mode == USB_HOST_POWER_BAT){ - if(m == USB_HOST_POWER_VBUS){ - digitalWrite(DEV_VBUS_EN, LOW); - } - digitalWrite(BOOST_EN, HIGH); - } - if(mode != USB_HOST_POWER_OFF){ - digitalWrite(LIMIT_EN, HIGH); - } - m = mode; -} - -void usbHostEnable(bool enable){ - digitalWrite(USB_HOST_EN, enable); -} - -extern "C" void initVariant(void){ - // Route USB to Device Side - pinMode(BOOST_EN, OUTPUT); digitalWrite(BOOST_EN, LOW); - pinMode(LIMIT_EN, OUTPUT); digitalWrite(LIMIT_EN, LOW); - pinMode(DEV_VBUS_EN, OUTPUT); digitalWrite(DEV_VBUS_EN, LOW); - pinMode(USB_HOST_EN, OUTPUT); digitalWrite(USB_HOST_EN, LOW); - - // Turn Off LCD - pinMode(LCD_RST, OUTPUT); digitalWrite(LCD_RST, LOW); - pinMode(LCD_BL, OUTPUT); digitalWrite(LCD_BL, LOW); -} diff --git a/variants/esp32thing/pins_arduino.h b/variants/esp32thing/pins_arduino.h deleted file mode 100644 index 68178cc2296..00000000000 --- a/variants/esp32thing/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 2; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32thing_plus/pins_arduino.h b/variants/esp32thing_plus/pins_arduino.h deleted file mode 100644 index 9b4b1e25147..00000000000 --- a/variants/esp32thing_plus/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 17; -static const uint8_t RX = 16; - -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -static const uint8_t SS = 33; -static const uint8_t MOSI = 18; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -// mapping to match other feathers and also in order -static const uint8_t A0 = 26; -static const uint8_t A1 = 25; -static const uint8_t A2 = 34; -static const uint8_t A3 = 39; -static const uint8_t A4 = 36; -static const uint8_t A5 = 4; -static const uint8_t A6 = 14; -static const uint8_t A7 = 32; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; - - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32thing_plus_c/pins_arduino.h b/variants/esp32thing_plus_c/pins_arduino.h deleted file mode 100644 index fbfe934a698..00000000000 --- a/variants/esp32thing_plus_c/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -static const uint8_t RGB_BUILTIN = SOC_GPIO_PIN_COUNT+2; -#define RGB_BUILTIN RGB_BUILTIN // necessary to make digitalWrite/digitalMode find it -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 17; -static const uint8_t RX = 16; - -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 26; -static const uint8_t A1 = 25; -static const uint8_t A2 = 34; -static const uint8_t A3 = 39; -static const uint8_t A4 = 36; -static const uint8_t A5 = 35; -static const uint8_t A6 = 14; -static const uint8_t A7 = 32; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; - - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32vn-iot-uno/pins_arduino.h b/variants/esp32vn-iot-uno/pins_arduino.h deleted file mode 100644 index fd196bdf34f..00000000000 --- a/variants/esp32vn-iot-uno/pins_arduino.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; - - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp_c3_m1_i_kit/pins_arduino.h b/variants/esp_c3_m1_i_kit/pins_arduino.h deleted file mode 100644 index 8f5f433fea3..00000000000 --- a/variants/esp_c3_m1_i_kit/pins_arduino.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - For more information about this board: - https://docs.ai-thinker.com/_media/esp32/docs/nodemcu-esp-c3-m1-i-kit_v1.2.0_specification.pdf -*/ - -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// User LEDs are also connected to USB D- and D+ -static const uint8_t LED_WARM = 18; -static const uint8_t LED_COLD = 19; - -// RGB LED -static const uint8_t LED_RED = 3; -static const uint8_t LED_GREEN = 4; -static const uint8_t LED_BLUE = 5; - -static const uint8_t LED_BUILTIN = LED_WARM; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// Standard ESP32-C3 GPIOs -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/espea32/pins_arduino.h b/variants/espea32/pins_arduino.h deleted file mode 100644 index 2a27157366f..00000000000 --- a/variants/espea32/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/espectro32/pins_arduino.h b/variants/espectro32/pins_arduino.h deleted file mode 100644 index 449b79247ac..00000000000 --- a/variants/espectro32/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#ifndef ESPECTRO32_VERSION -#define ESPECTRO32_VERSION 1 -#endif - -static const uint8_t LED_BUILTIN = 15; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SD_SS = 33; -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/espino32/pins_arduino.h b/variants/espino32/pins_arduino.h deleted file mode 100644 index 571912b7ee9..00000000000 --- a/variants/espino32/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 16; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUILTIN_KEY = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/feather_esp32/pins_arduino.h b/variants/feather_esp32/pins_arduino.h deleted file mode 100644 index bc7c2dc6656..00000000000 --- a/variants/feather_esp32/pins_arduino.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 17; -static const uint8_t RX = 16; - -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -static const uint8_t SS = 33; -static const uint8_t MOSI = 18; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -// mapping to match other feathers and also in order -static const uint8_t A0 = 26; -static const uint8_t A1 = 25; -static const uint8_t A2 = 34; -static const uint8_t A3 = 39; -static const uint8_t A4 = 36; -static const uint8_t A5 = 4; -static const uint8_t A6 = 14; -static const uint8_t A7 = 32; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; - -// vbat measure -static const uint8_t BATT_MONITOR = 35; -static const uint8_t A13 = 35; -//static const uint8_t Ax = 0; // not used/available -//static const uint8_t Ax = 2; // not used/available - - -static const uint8_t T0 = 4; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/firebeetle32/pins_arduino.h b/variants/firebeetle32/pins_arduino.h deleted file mode 100644 index 7fd4a527975..00000000000 --- a/variants/firebeetle32/pins_arduino.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -typedef unsigned char uint8_t; - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 25; -static const uint8_t D3 = 26; -static const uint8_t D4 = 27; -static const uint8_t D5 = 9; -static const uint8_t D6 = 10; -static const uint8_t D7 = 13; -static const uint8_t D8 = 5; -static const uint8_t D9 = 2; -static const uint8_t D10 = 0; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 34; -static const uint8_t A3 = 35; -static const uint8_t A4 = 15; -static const uint8_t A5 = 35; -static const uint8_t A6 = 4; -static const uint8_t A7 = 0; -static const uint8_t A8 = 2; -static const uint8_t A9 = 13; -static const uint8_t A10 = 12; -static const uint8_t A11 = 14; -static const uint8_t A12 = 27; -static const uint8_t A13 = 25; -static const uint8_t A14 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/fm-devkit/pins_arduino.h b/variants/fm-devkit/pins_arduino.h deleted file mode 100644 index b0cc94038f6..00000000000 --- a/variants/fm-devkit/pins_arduino.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -// IO -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -static const uint8_t SW1 = 4; -static const uint8_t SW2 = 18; -static const uint8_t SW3 = 19; -static const uint8_t SW4 = 21; - -//I2S DAC -static const uint8_t I2S_MCLK = 2; // CLOCK must be an integer multiplier of SCLK -static const uint8_t I2S_LRCLK = 25; // LRCLK -static const uint8_t I2S_SCLK = 26; // SCLK - Fs (44100 Hz) -static const uint8_t I2S_DOUT = 22; // DATA - -//GPIO -static const uint8_t D0 = 34; // GPI - Input Only -static const uint8_t D1 = 35; // GPI - Input Only -static const uint8_t D2 = 32; // GPO - Output Only -static const uint8_t D3 = 33; // GPO - Output Only -static const uint8_t D4 = 27; -static const uint8_t D5 = 14; -static const uint8_t D6 = 12; -static const uint8_t D7 = 13; -static const uint8_t D8 = 15; -static const uint8_t D9 = 23; -static const uint8_t D10 = 0; - -// I2C BUS, 2k2 hardware pull-ups -static const uint8_t SDA = 16; -static const uint8_t SCL = 17; - -// SPI - unused but you can create your own definition in your sketch -static const int8_t SCK = -1; -static const int8_t MISO = -1; -static const int8_t MOSI = -1; -static const int8_t SS = -1; - -#endif /* Pins_Arduino_h */ diff --git a/variants/franzininho_wifi_esp32s2/pins_arduino.h b/variants/franzininho_wifi_esp32s2/pins_arduino.h deleted file mode 100644 index 4a07156d0c3..00000000000 --- a/variants/franzininho_wifi_esp32s2/pins_arduino.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80A9 -#define USB_MANUFACTURER "Franzininho" -#define USB_PRODUCT "Franzininho WIFI" -#define USB_SERIAL "0" -#define USB_WEBUSB_ENABLED false - -static const uint8_t PIN_NEOPIXEL = 18; -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = (PIN_NEOPIXEL + SOC_GPIO_PIN_COUNT); -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/franzininho_wifi_msc_esp32s2/pins_arduino.h b/variants/franzininho_wifi_msc_esp32s2/pins_arduino.h deleted file mode 100644 index 0589ad421d2..00000000000 --- a/variants/franzininho_wifi_msc_esp32s2/pins_arduino.h +++ /dev/null @@ -1,80 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80A9 -#define USB_MANUFACTURER "Franzininho" -#define USB_PRODUCT "Franzininho WIFI MSC" -#define USB_SERIAL "0" -#define USB_WEBUSB_ENABLED false - -// Default USB FirmwareMSC Settings -#define USB_FW_MSC_VENDOR_ID "ESP32-S2" //max 8 chars -#define USB_FW_MSC_PRODUCT_ID "Firmware MSC" //max 16 chars -#define USB_FW_MSC_PRODUCT_REVISION "1.23" //max 4 chars -#define USB_FW_MSC_VOLUME_NAME "S2-Firmware" //max 11 chars -#define USB_FW_MSC_SERIAL_NUMBER 0x00000000 - -static const uint8_t PIN_NEOPIXEL = 18; -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = (PIN_NEOPIXEL + SOC_GPIO_PIN_COUNT); -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/frog32/pins_arduino.h b/variants/frog32/pins_arduino.h deleted file mode 100644 index 27ecc063483..00000000000 --- a/variants/frog32/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/esp32c3/pins_arduino.h b/variants/garaginator/pins_arduino.h similarity index 65% rename from variants/esp32c3/pins_arduino.h rename to variants/garaginator/pins_arduino.h index 71318e27cf9..763a21a7558 100644 --- a/variants/esp32c3/pins_arduino.h +++ b/variants/garaginator/pins_arduino.h @@ -4,9 +4,8 @@ #include #include "soc/soc_caps.h" -#define PIN_NEOPIXEL 8 // BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; +static const uint8_t LED_BUILTIN = 7; #define BUILTIN_LED LED_BUILTIN // backward compatibility #define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN // RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() @@ -16,19 +15,17 @@ static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; static const uint8_t TX = 21; static const uint8_t RX = 20; -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; +// static const uint8_t SDA = 8; +// static const uint8_t SCL = 9; -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; +// static const uint8_t SS = 7; +// static const uint8_t MOSI = 6; +// static const uint8_t MISO = 5; +// static const uint8_t SCK = 4; static const uint8_t A0 = 0; static const uint8_t A1 = 1; static const uint8_t A2 = 2; static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; #endif /* Pins_Arduino_h */ diff --git a/variants/gpy/pins_arduino.h b/variants/gpy/pins_arduino.h deleted file mode 100644 index 255363ce5c7..00000000000 --- a/variants/gpy/pins_arduino.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// Sequans Monarch LTE Cat M1/NB1 modem -// NOTE: The Pycom pinout as well as spec sheet block diagram / pin details -// incorrectly list the LTE pins. The correct pins are defined in the source and CSV -// at https://github.com/pycom/pycom-micropython-sigfox/tree/master/esp32/boards/GPY. -#define LTE_CTS 18 // GPIO18 - Sequans modem CTS -#define LTE_RTS 19 // GPIO19 - Sequans modem RTS (pull low to communicate) -#define LTE_RX 23 // GPIO23 - Sequans modem RX -#define LTE_TX 5 // GPIO5 - Sequans modem TX -#define LTE_WAKE 27 // GPIO27 - Sequans modem wake-up interrupt -#define LTE_BAUD 921600 - -// Neopixel -#define PIN_NEOPIXEL 0 // ->2812 RGB !!! -static const uint8_t LED_BUILTIN = PIN_NEOPIXEL + SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#define ANT_SELECT 21 // GPIO21 - WiFi external / internal antenna switch - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SS = 17; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 37; -static const uint8_t SCK = 13; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/healthypi4/pins_arduino.h b/variants/healthypi4/pins_arduino.h deleted file mode 100644 index 69471053402..00000000000 --- a/variants/healthypi4/pins_arduino.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 15; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 17; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 2; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADS1292_DRDY_PIN = 26; -static const uint8_t ADS1292_CS_PIN = 13; -static const uint8_t ADS1292_START_PIN = 14; -static const uint8_t ADS1292_PWDN_PIN = 27; -static const uint8_t AFE4490_CS_PIN = 21; -static const uint8_t AFE4490_DRDY_PIN = 39; -static const uint8_t AFE4490_PWDN_PIN = 4; - -static const uint8_t PUSH_BUTTON = 17; -static const uint8_t SLIDE_SWITCH = 16; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wifi_kit_32/pins_arduino.h b/variants/heltec_wifi_kit_32/pins_arduino.h deleted file mode 100644 index a164f9e153a..00000000000 --- a/variants/heltec_wifi_kit_32/pins_arduino.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define WIFI_Kit_32 true -#define DISPLAY_HEIGHT 64 -#define DISPLAY_WIDTH 128 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t Vext = 21; -static const uint8_t LED = 25; -static const uint8_t RST_OLED = 16; -static const uint8_t SCL_OLED = 15; -static const uint8_t SDA_OLED = 4; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wifi_kit_32_V3/pins_arduino.h b/variants/heltec_wifi_kit_32_V3/pins_arduino.h deleted file mode 100644 index c64fe199860..00000000000 --- a/variants/heltec_wifi_kit_32_V3/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define WIFI_Kit_32_V3 true -#define DISPLAY_HEIGHT 64 -#define DISPLAY_WIDTH 128 - -static const uint8_t LED_BUILTIN = 35; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 8; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 11; -static const uint8_t SCK = 9; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t Vext = 36; -static const uint8_t LED = 35; -static const uint8_t RST_OLED = 21; -static const uint8_t SCL_OLED = 18; -static const uint8_t SDA_OLED = 17; - -static const uint8_t DIO0 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wifi_lora_32/pins_arduino.h b/variants/heltec_wifi_lora_32/pins_arduino.h deleted file mode 100644 index b702b97f437..00000000000 --- a/variants/heltec_wifi_lora_32/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define WIFI_LoRa_32 true -#define DISPLAY_HEIGHT 64 -#define DISPLAY_WIDTH 128 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t Vext = 21; -static const uint8_t LED = 25; -static const uint8_t RST_OLED = 16; -static const uint8_t SCL_OLED = 15; -static const uint8_t SDA_OLED = 4; -static const uint8_t RST_LoRa = 14; -static const uint8_t DIO0 = 26; -static const uint8_t DIO1 = 33; -static const uint8_t DIO2 = 32; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wifi_lora_32_V2/pins_arduino.h b/variants/heltec_wifi_lora_32_V2/pins_arduino.h deleted file mode 100644 index d316145b8c6..00000000000 --- a/variants/heltec_wifi_lora_32_V2/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define WIFI_LoRa_32_V2 true -#define DISPLAY_HEIGHT 64 -#define DISPLAY_WIDTH 128 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t Vext = 21; -static const uint8_t LED = 25; -static const uint8_t RST_OLED = 16; -static const uint8_t SCL_OLED = 15; -static const uint8_t SDA_OLED = 4; -static const uint8_t RST_LoRa = 14; -static const uint8_t DIO0 = 26; -static const uint8_t DIO1 = 35; -static const uint8_t DIO2 = 34; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wifi_lora_32_V3/pins_arduino.h b/variants/heltec_wifi_lora_32_V3/pins_arduino.h deleted file mode 100644 index bd0d35a8912..00000000000 --- a/variants/heltec_wifi_lora_32_V3/pins_arduino.h +++ /dev/null @@ -1,74 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define WIFI_LoRa_32_V3 true -#define DISPLAY_HEIGHT 64 -#define DISPLAY_WIDTH 128 - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = 35; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 41; -static const uint8_t SCL = 42; - -static const uint8_t SS = 8; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 11; -static const uint8_t SCK = 9; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t Vext = 36; -static const uint8_t LED = 35; -static const uint8_t RST_OLED = 21; -static const uint8_t SCL_OLED = 18; -static const uint8_t SDA_OLED = 17; - -static const uint8_t RST_LoRa = 12; -static const uint8_t BUSY_LoRa = 13; -static const uint8_t DIO0 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wireless_stick/pins_arduino.h b/variants/heltec_wireless_stick/pins_arduino.h deleted file mode 100644 index 0910fcc7672..00000000000 --- a/variants/heltec_wireless_stick/pins_arduino.h +++ /dev/null @@ -1,68 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define Wireless_Stick true -#define DISPLAY_HEIGHT 32 -#define DISPLAY_WIDTH 64 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t Vext = 21; -static const uint8_t LED = 25; -static const uint8_t RST_OLED = 16; -static const uint8_t SCL_OLED = 15; -static const uint8_t SDA_OLED = 4; -static const uint8_t RST_LoRa = 14; -static const uint8_t DIO0 = 26; -static const uint8_t DIO1 = 35; -static const uint8_t DIO2 = 34; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wireless_stick_lite/pins_arduino.h b/variants/heltec_wireless_stick_lite/pins_arduino.h deleted file mode 100644 index ec4bac483de..00000000000 --- a/variants/heltec_wireless_stick_lite/pins_arduino.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define Wireless_Stick_Lite true -#define DISPLAY_HEIGHT 0 -#define DISPLAY_WIDTH 0 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t Vext = 21; -static const uint8_t LED = 25; -static const uint8_t RST_LoRa = 14; -static const uint8_t DIO0 = 26; -static const uint8_t DIO1 = 35; -static const uint8_t DIO2 = 34; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wireless_stick_lite_v3/pins_arduino.h b/variants/heltec_wireless_stick_lite_v3/pins_arduino.h deleted file mode 100644 index bf6cf207660..00000000000 --- a/variants/heltec_wireless_stick_lite_v3/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define Wireless_Stick_Lite_V3 true -#define DISPLAY_HEIGHT 0 -#define DISPLAY_WIDTH 0 - -static const uint8_t LED_BUILTIN = 35; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 2; -static const uint8_t SCL = 3; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 12; -static const uint8_t A8 = 14; -static const uint8_t A9 = 15; -static const uint8_t A10 = 16; -static const uint8_t A11 = 17; -static const uint8_t A12 = 18; -static const uint8_t A13 = 19; -static const uint8_t A14 = 20; - -static const uint8_t T0 = 1; -static const uint8_t T1 = 2; -static const uint8_t T2 = 3; -static const uint8_t T3 = 4; -static const uint8_t T4 = 5; -static const uint8_t T5 = 6; -static const uint8_t T6 = 7; - -static const uint8_t Vext = 36; -static const uint8_t LED = 35; - -#endif /* Pins_Arduino_h */ diff --git a/variants/heltec_wireless_tracker/pins_arduino.h b/variants/heltec_wireless_tracker/pins_arduino.h deleted file mode 100644 index d8a759a094c..00000000000 --- a/variants/heltec_wireless_tracker/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// Some boards have too low voltage on this pin (board design bug) -// Use different pin with 3V and connect with 48 -// and change this setup for the chosen pin (for example 38) -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+48; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 41; -static const uint8_t SCL = 42; - -static const uint8_t SS = 8; -static const uint8_t MOSI = 10; -static const uint8_t MISO = 11; -static const uint8_t SCK = 9; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t Vext = 3; -static const uint8_t LED = 18; -static const uint8_t RST_OLED = 39; -static const uint8_t SCL_OLED = 41; -static const uint8_t SDA_OLED = 42; -#endif /* Pins_Arduino_h */ diff --git a/variants/honeylemon/pins_arduino.h b/variants/honeylemon/pins_arduino.h deleted file mode 100644 index 044dad7f269..00000000000 --- a/variants/honeylemon/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUILTIN_KEY = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/hornbill32dev/pins_arduino.h b/variants/hornbill32dev/pins_arduino.h deleted file mode 100644 index a868a7edffa..00000000000 --- a/variants/hornbill32dev/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/hornbill32minima/pins_arduino.h b/variants/hornbill32minima/pins_arduino.h deleted file mode 100644 index a8fb52c60f7..00000000000 --- a/variants/hornbill32minima/pins_arduino.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; //taken out on pgm header -static const uint8_t RX = 3; //taken out on pgm header - -static const uint8_t SDA = 21; //1 -static const uint8_t SCL = 22; //2 - -static const uint8_t SS = 2; //3 -static const uint8_t MOSI = 23; //4 -static const uint8_t MISO = 19; //5 -static const uint8_t SCK = 18; //6 - - - -static const uint8_t A6 = 34; //7 -static const uint8_t A7 = 35; //8 -static const uint8_t A10 = 4; //9 -static const uint8_t A11 = 0; // taken out on pgm header -static const uint8_t A12 = 2; // with SPI SS -static const uint8_t A13 = 15; //10 -static const uint8_t A14 = 13; //11 - - - -static const uint8_t DAC1 = 25; //12 -static const uint8_t DAC2 = 26; //13 - - -static const uint8_t T0 = 4; //used -static const uint8_t T1 = 0; // taken out on pgm header -static const uint8_t T2 = 2; //used -static const uint8_t T3 = 15; //used - - - - -#endif /* Pins_Arduino_h */ diff --git a/variants/imbrios-logsens-v1p1/pins_arduino.h b/variants/imbrios-logsens-v1p1/pins_arduino.h deleted file mode 100644 index 338b9151f7d..00000000000 --- a/variants/imbrios-logsens-v1p1/pins_arduino.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// Renaming few signals -#define SPI_CLK SCK // IO14 -#define SPI_MISO MISO // IO12 -#define SPI_MOSI MOSI // IO13 -#define SPI_CS0 SS // IO15, Default SPI CS: Extension Header, Pin_3 -#define SD_SPI_CS1 SPI_CS1 // SPI Chip Select: MicroSD Card -#define LED_WIFI_LINK LED1_BUILDIN // LED6 on the LogSens V1.1 Board -#define LED_WIFI_ACT LED2_BUILDIN // LED7 on the LogSens V1.1 Board\ - -/* LED_BUILTIN is kept for compatibility reason; mapped to LED2 on the LogSens V1.1 Board */ -static const uint8_t LED_BUILTIN = 33; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -/* UART0: Serial Port for Programming and Debugging on the LogSens V1.1 Board */ -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -#ifdef BOARD_VARIANT_RS485 -/* UART2: Serial Port conencted to RS485 transceiver on the LogSens V1.1 Board */ -static const uint8_t UART2_TX = 17; -static const uint8_t UART2_RX = 16; -static const uint8_t UART2_RTS = 4; -#endif /* BOARD_VARIANT_RS485 */ - -#ifdef BOARD_VARIANT_CAN -/* CAN Bus conencted to CAN transceiver on the LogSens V1.1 Board */ -static const uint8_t CAN_TX = 17; -static const uint8_t CAN_RX = 16; -static const uint8_t CAN_TXDE = 4; -#endif /* BOARD_VARIANT_CAN */ - -/* I2C Bus: Shared between RTC chip, Expansion Header (X3), Sensor Header (X7) on the LogSens V1.1 Board */ -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -/* SPI Bus: Shared between MicroSD Card (X6) and Expansion Header (X3) */ -static const uint8_t SS = 15; // SPI Chip Select - 0; Connected to Extension Header, Pin_3 on the LogSens V1.1 Board -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; - -static const uint8_t SPI_SS1 = 23; // SPI Chip Select - 1; connected to MicroSD Card on the LogSens V1.1 Board - -/* Software Controlled: IO, LEDs and Switches */ -static const uint8_t BUZZER_CTRL = 19; // Signal connected to MOSFET gate pin to control conenctor (X8) -static const uint8_t SD_CARD_DETECT = 35; // MicroSD Card (X6): Card Detect Signal - -static const uint8_t SW2_BUILDIN = 0; // Tactile Switch-2 (SW2); ESP32 BOOT0 pin, Use it with care !! -static const uint8_t SW3_BUILDIN = 36; // Tactile Switch-3 (SW3) -static const uint8_t SW4_BUILDIN = 34; // Tactile Switch-4 (SW4) - -static const uint8_t LED1_BUILDIN = 32; // Connected to LogSens V1.1: LED6 -static const uint8_t LED2_BUILDIN = 33; // Connected to LogSens V1.1: LED7 - - -/* Analog Input Channels accessible on the LogSens V1.1 Board */ -//static const uint8_t A0 = 36; -//static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -//static const uint8_t A6 = 34; -//static const uint8_t A7 = 35; -//static const uint8_t A10 = 4; -//static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -//static const uint8_t A14 = 13; -//static const uint8_t A15 = 12; -//static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -//static const uint8_t T0 = 4; -//static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -//static const uint8_t T4 = 13; -//static const uint8_t T5 = 12; -//static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -/* DAC Channels accessible on the LogSens V1.1 Board */ -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/intorobot-fig/pins_arduino.h b/variants/intorobot-fig/pins_arduino.h deleted file mode 100644 index a0e8db822e8..00000000000 --- a/variants/intorobot-fig/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 4; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_R_BUILTIN = 27; -static const uint8_t RGB_G_BUILTIN = 21; -static const uint8_t RGB_B_BUILTIN = 22; - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 23; -static const uint8_t SCL = 19; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 16; -static const uint8_t MISO = 17; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 35; -static const uint8_t A3 = 25; -static const uint8_t A4 = 26; -static const uint8_t A5 = 14; -static const uint8_t A6 = 12; -static const uint8_t A7 = 15; -static const uint8_t A8 = 13; -static const uint8_t A9 = 2; - -static const uint8_t D0 = 19; -static const uint8_t D1 = 23; -static const uint8_t D2 = 18; -static const uint8_t D3 = 17; -static const uint8_t D4 = 16; -static const uint8_t D5 = 5; -static const uint8_t D6 = 4; - -static const uint8_t T0 = 19; -static const uint8_t T1 = 23; -static const uint8_t T2 = 18; -static const uint8_t T3 = 17; -static const uint8_t T4 = 16; -static const uint8_t T5 = 5; -static const uint8_t T6 = 4; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ioxesp32/pins_arduino.h b/variants/ioxesp32/pins_arduino.h deleted file mode 100644 index 2a27157366f..00000000000 --- a/variants/ioxesp32/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lilygo_t_display/pins_arduino.h b/variants/lilygo_t_display/pins_arduino.h deleted file mode 100644 index beae4b311c6..00000000000 --- a/variants/lilygo_t_display/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x1A86 -#define USB_PID 0x55D4 -#define USB_MANUFACTURER "Lilygo" -#define USB_PRODUCT "T-Display" -#define USB_SERIAL "" - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t VBAT = 34; - -static const uint8_t RIGHT_BUTTON = 35; -static const uint8_t LEFT_BUTTON = 0; - -#endif /* Pins_Arduino_h */ \ No newline at end of file diff --git a/variants/lilygo_t_display_s3/pins_arduino.h b/variants/lilygo_t_display_s3/pins_arduino.h deleted file mode 100644 index 42b01587c39..00000000000 --- a/variants/lilygo_t_display_s3/pins_arduino.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t BUTTON_1 = 0; -static const uint8_t BUTTON_2 = 14; -static const uint8_t BAT_VOLT = 4; - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 18; -static const uint8_t SCL = 17; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t TP_RESET = 21; -static const uint8_t TP_INIT = 16; - -// ST7789 IPS TFT 170x320 -static const uint8_t LCD_BL = 38; -static const uint8_t LCD_D0 = 39; -static const uint8_t LCD_D1 = 40; -static const uint8_t LCD_D2 = 41; -static const uint8_t LCD_D3 = 42; -static const uint8_t LCD_D4 = 45; -static const uint8_t LCD_D5 = 46; -static const uint8_t LCD_D6 = 47; -static const uint8_t LCD_D7 = 48; -static const uint8_t LCD_WR = 8; -static const uint8_t LCD_RD = 9; -static const uint8_t LCD_DC = 7; -static const uint8_t LCD_CS = 6; -static const uint8_t LCD_RES = 5; -static const uint8_t LCD_POWER_ON = 15; - -// P1 -static const uint8_t PIN_43 = 43; -static const uint8_t PIN_44 = 44; -static const uint8_t PIN_18 = 18; -static const uint8_t PIN_17 = 17; -static const uint8_t PIN_21 = 21; -static const uint8_t PIN_16 = 16; - -// P2 -static const uint8_t PIN_1 = 1; -static const uint8_t PIN_2 = 2; -static const uint8_t PIN_3 = 3; -static const uint8_t PIN_10 = 10; -static const uint8_t PIN_11 = 11; -static const uint8_t PIN_12 = 12; -static const uint8_t PIN_13 = 13; - -// Analog -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; - - -// Touch -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lionbit/pins_arduino.h b/variants/lionbit/pins_arduino.h deleted file mode 100644 index 25d7bc1765c..00000000000 --- a/variants/lionbit/pins_arduino.h +++ /dev/null @@ -1,87 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 0; // GPIO0, ADC2_CH1, TOUCH1, RTC_GPIO11, CLK_OUT1,EMAC_TX_CLK -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SWITCH_A = 2; // GPIO2, ADC2_CH2, TOUCH2, RTC_GPIO12, HSPIWP, HS2_DATA0,SD_DATA0 -static const uint8_t SWITCH_B = 4; // GPIO4, ADC2_CH0, TOUCH0, RTC_GPIO10, HSPIHD, HS2_DATA1,SD_DATA1, EMAC_TX_ER - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -/* LionBit pin setup */ -static const uint8_t D0 = 3; //Rx GPIO3, U0RXD, CLK_OUT2 -static const uint8_t D1 = 1; //TX GPIO1, U0TXD, CLK_OUT3, EMAC_RXD2 -//------------------------------------------------------------------- - -//Please do not use while using QIO SPI mode ; Use only DIO flash mode -static const uint8_t D2 = 9; //I/O U1RX GPIO9, SD_DATA2, SPIHD, HS1_DATA2, U1RXD -static const uint8_t D3 = 10; //I/O U1TX GPIO10, SD_DATA3, SPIWP, HS1_DATA3, U1TXD -//------------------------------------------------------------------- -static const uint8_t U1RX = 9; //I/O U1RX -static const uint8_t U1TX = 10; //I/O U1TX - -//Second Segment - Sector -01 (Voltage (*5v or 3.3V) can be selected by using D4-7 Jumper -static const uint8_t D4 = 16; //I/O U2RX GPIO16, HS1_DATA4, U2RXD, EMAC_CLK_OUT -static const uint8_t D5 = 17; //I/O U2TX GPIO17, HS1_DATA5, U2TXD, EMAC_CLK_OUT_180 -static const uint8_t D6 = 21; //I/O SDA GPIO21, VSPIHD, EMAC_TX_EN -static const uint8_t D7 = 22; //I/O SCl GPIO22, VSPIWP, U0RTS, EMAC_TXD1 - -//Second Segment - Sector -02 (Voltage (*5v or 3.3V) can be selected by using D8-11 Jumper -static const uint8_t D8 = 5; //I/O GPIO5, VSPICS0, HS1_DATA6, EMAC_RX_CLK -static const uint8_t D9 = 23; //I/O GPIO23, VSPID, HS1_STROBE **********************************************Don not use when display "ON or USE"************************* -static const uint8_t D10 = 19; //I/O GPIO19, VSPIQ, U0CTS, EMAC_TXD0 -static const uint8_t D11 = 18; //I/O GPIO18, VSPICLK, HS1_DATA7 **********************************************Don not use when display "ON or USE"************************* - - -// Analog to Digital Converter (Support 5V) ADC2 pins not recommended while using Wifi -static const uint8_t A0 /*ADC2_CH3 */ = 12; //MAX 5V,I/O GPIO12, ADC2_CH5, TOUCH5, RTC_GPIO15, MTDI, HSPIQ, HS2_DATA2,SD_DATA2, EMAC_TXD3 -static const uint8_t A1 /*ADC1_CH0 */ = 14; //MAX 5V,I/O GPIO14, ADC2_CH6, TOUCH6, RTC_GPIO16, MTMS, HSPICLK, HS2_CLK,SD_CLK, EMAC_TXD2 -static const uint8_t A2 /*ADC2_CH6 */ = 34; //MAX 5V,GPIO34, ADC1_CH6, RTC_GPIO4 ***********************/////////////////////Connected LDR///////////////////////////// -static const uint8_t A3 /*ADC1_CH7 */ = 35; //MAX 5V,GPIO35, ADC1_CH7, RTC_GPIO5 -static const uint8_t A4 /*ADC2_CH5 */ = 15; //MAX 5V,GPIO15, ADC2_CH3, TOUCH3, MTDO, HSPICS0, RTC_GPIO13, HS2_CMD,SD_CMD, EMAC_RXD3 -static const uint8_t A5 /*ADC2_CH4 */ = 13; //MAX 5V,GPIO13, ADC2_CH4, TOUCH4, RTC_GPIO14, MTCK, HSPID, HS2_DATA3,SD_DATA3, EMAC_RX_ER - //------------------------------------------------------------------- - -//------------------Touch Sensors------------------------------------------------- -static const uint8_t VP = 36; // GPIO36, ADC1_CH0, RTC_GPIO0 -static const uint8_t VN = 39; // GPIO39, ADC1_CH3, RTC_GPIO3 - -static const uint8_t T0 = 36; -static const uint8_t T1 = 39; - -static const uint8_t DAC1 = 25; // I/O GPIO25, DAC_1, ADC2_CH8, RTC_GPIO6, EMAC_RXD0 -static const uint8_t DAC2 = 26; // I/O GPIO26, DAC_2, ADC2_CH9, RTC_GPIO7, EMAC_RXD1 - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -/* Hardware HSPI */ -static const uint8_t MOSI = 13; // 13; -static const uint8_t MISO = 12; // 12; -static const uint8_t SCK = 14; // 14; -static const uint8_t SS = 15; // 15; - -/* Software VSPI [Note : D9 and D11 Do not use when display "ON or USE"]*/ -static const uint8_t VMOSI = 23; //23 /*Do not use when display "ON or USE"*/ -static const uint8_t VMISO = 19; // 19 -static const uint8_t VSCK = 18; // 18 /*Do not use when display "ON or USE"*/ -static const uint8_t VSS = 5; // 5 - -// Inbuilt Display Unit 128*128 ST7735 Driver -static const uint8_t RST = 33; // - RESET GPIO33, XTAL_32K_N (32.768 kHz crystal oscillator output),ADC1_CH5, TOUCH8, RTC_GPIO8 -static const uint8_t CLK = 18; // - (18) CLK (D11) and D9 pin will engaged when display "ON or USE" -static const uint8_t CS = 27; // - CS GPIO27, ADC2_CH7, TOUCH7, RTC_GPIO17, EMAC_RX_DV -static const uint8_t DC = 32; //- DC/A0 GPIO32, XTAL_32K_P (32.768 kHz crystal oscillator input), ADC1_CH4,TOUCH9, RTC_GPIO9 -static const uint8_t ST_MOSI = 23; // - MOSI (D9) This D9 pin will engaged when display "ON or USE" - -static const uint8_t MTDO = 15; // A4 JTAG SIGNAL -> TDO -static const uint8_t MTDI = 12; // A0 JTAG SIGNAL -> TDI -static const uint8_t MTCK = 13; // A5 JTAG SIGNAL -> TCK -static const uint8_t MTMS = 14; // A1 JTAG SIGNAL -> TMS - -#endif /* Pins_Arduino_h */ diff --git a/variants/lionbits3/pins_arduino.h b/variants/lionbits3/pins_arduino.h deleted file mode 100644 index f7817d8340d..00000000000 --- a/variants/lionbits3/pins_arduino.h +++ /dev/null @@ -1,94 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 0; //GPIO0, -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SWITCH_A = 46; //GPIO46, -static const uint8_t SWITCH_B = 47; //GPIO47, -//Wifi and Bluetooth LEDs -static const uint8_t WIFI_LED = 38; -static const uint8_t BT_LED = 37; - - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -//------------------------------------------------------------------- -static const uint8_t U1RX = 9; //IO,GPIO9 -static const uint8_t U1TX = 10;//IO,GPIO10 -/* LionBits3 pin setup */ -static const uint8_t D0 = 3; //RX,GPIO3,MCPWM -static const uint8_t D1 = 1; //TX,GPIO1,ADC1_CH0,MCPWM -static const uint8_t D2 = 9; //IO,GPIO9,ADC1_CH8,TOUCH9,MCPWM -static const uint8_t D3 = 10; //IO,GPIO10,ADC1_CH9,TOUCH10,MCPWM -static const uint8_t D4 = 11; //IO,GPIO11,ADC2_CH0,TOUCH11,MCPWM -static const uint8_t D5 = 12; //IO,GPIO12,ADC2_CH1,TOUCH12,MCPWM -static const uint8_t D6 = 13; //IO,GPIO13,ADC2_CH2,TOUCH13,MCPWM -static const uint8_t D7 = 14; //IO,GPIO14,ADC2_CH3,TOUCH14,MCPWM -static const uint8_t D8 = 15; //IO,GPIO15,ADC2_CH4,MCPWM -static const uint8_t D9 = 16; //IO,GPIO16,ADC2_CH5,MCPWM -static const uint8_t D10 = 17; //IO,GPIO17,ADC2_CH6,MCPWM -static const uint8_t D11 = 18; //IO,GPIO18,ADC2_CH7,MCPWM -static const uint8_t D12 = 8; //IO,GPIO8,ADC1_CH7,MCPWM -static const uint8_t D13 = 39; //IO,GPIO39,MCPWM -static const uint8_t D14 = 40; //IO,GPIO40,MCPWM -static const uint8_t D15 = 41; //IO,GPIO41,MCPWM -static const uint8_t D16 = 48; //IO,GPIO48,MCPWM -static const uint8_t D17 = 21; //IO,GPIO21,MCPWM - -//Other pins. -static const uint8_t BUZZER = 21; -static const uint8_t LDR = 7; - -static const uint8_t RGBLED = 48; - -// Analog to Digital Converter (Support 5V) ADC2 pins not recommended while using Wifi -static const uint8_t A0 = 2; //IO,GPIO2,ADC1_CH1,TOUCH2,MCPWM -static const uint8_t A1 = 1; //IO,GPIO1,ADC1_CH0,TOUCH1,MCPWM -static const uint8_t A2 = 3; //IO,GPIO3,ADC1_CH2,TOUCH3,MCPWM -static const uint8_t A3 = 4; //IO,GPIO4,ADC1_CH3,TOUCH4,MCPWM -static const uint8_t A4 = 5; //IO,GPIO5,ADC1_CH4,TOUCH5,MCPWM -static const uint8_t A5 = 6; //IO,GPIO6,ADC1_CH5,TOUCH6,MCPWM -static const uint8_t A6 = 7; //IO,GPIO7,ADC1_CH6,TOUCH7,MCPWM -static const uint8_t AD1 = 7; //IO,GPIO7,ADC1_CH6,TOUCH7,MCPWM - - -// Inbuilt Display Unit 128*128 ST7735 Driver New - -static const uint8_t SDA = 40; //GPIO40; -static const uint8_t SCL = 41; //GPIO41; - -/* Hardware HSPI */ -static const uint8_t MOSI = 35; //GPIO35; -static const uint8_t MISO = 37; //GPIO37; -static const uint8_t SCK = 36; //GPIO36; -static const uint8_t SS = 34; //GPIO34; -static const uint8_t SDO = 35; //GPIO35; -static const uint8_t SDI = 37; //GPIO37; -//---------------------------------- - -static const uint8_t TFT_RST = 38; //GPIO38; -static const uint8_t TFT_SCLK = 35; //GPIO35; -static const uint8_t TFT_CS = 42; //GPIO42; -static const uint8_t TFT_DC = 37; //GPIO37; -static const uint8_t TFT_MOSI = 36; //GPIO36; - -static const uint8_t LCD_A0 = 37; //GPIO37, -static const uint8_t LCD_BACK_LIGHT = 45; //GPIO45, -static const uint8_t DAC1 = 21; //GPIO21, -//LCD aditional pins - -//Adafruit 128*128 ST7735 Driver New -static const uint8_t rst = 38; -static const uint8_t sclk = 35; -static const uint8_t cs = 42; -static const uint8_t dc = 37; -static const uint8_t mosi = 36; - -#define VP 36 //GPIO36, -#define VN 39 //GPIO39, - -#endif /* Pins_Arduino_h */ \ No newline at end of file diff --git a/variants/lolin32-lite/pins_arduino.h b/variants/lolin32-lite/pins_arduino.h deleted file mode 100755 index 6aa497a8575..00000000000 --- a/variants/lolin32-lite/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t LED_BUILTIN = 22; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SDA = 19; -static const uint8_t SCL = 23; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin32/pins_arduino.h b/variants/lolin32/pins_arduino.h deleted file mode 100644 index cba6162b645..00000000000 --- a/variants/lolin32/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_c3_mini/pins_arduino.h b/variants/lolin_c3_mini/pins_arduino.h deleted file mode 100644 index 842683330cd..00000000000 --- a/variants/lolin_c3_mini/pins_arduino.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 7; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 10; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 4; -static const uint8_t MISO = 3; -static const uint8_t SCK = 2; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_s2_mini/pins_arduino.h b/variants/lolin_s2_mini/pins_arduino.h deleted file mode 100644 index 558e2e02a23..00000000000 --- a/variants/lolin_s2_mini/pins_arduino.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// Default USB Settings -#define USB_VID 0x303a -#define USB_PID 0x80C2 -#define USB_MANUFACTURER "WEMOS.CC" -#define USB_PRODUCT "LOLIN-S2-MINI" -#define USB_SERIAL "0" - - -// Default USB FirmwareMSC Settings -#define USB_FW_MSC_VENDOR_ID "ESP32-S2" //max 8 chars -#define USB_FW_MSC_PRODUCT_ID "Firmware MSC" //max 16 chars -#define USB_FW_MSC_PRODUCT_REVISION "1.23" //max 4 chars -#define USB_FW_MSC_VOLUME_NAME "S2-Firmware" //max 11 chars -#define USB_FW_MSC_SERIAL_NUMBER 0x00000000 - -static const uint8_t LED_BUILTIN = 15; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 39; -static const uint8_t RX = 37; - -static const uint8_t SDA = 33; -static const uint8_t SCL = 35; - -static const uint8_t SS = 12; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 9; -static const uint8_t SCK = 7; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_s2_pico/pins_arduino.h b/variants/lolin_s2_pico/pins_arduino.h deleted file mode 100644 index 325e11ecff1..00000000000 --- a/variants/lolin_s2_pico/pins_arduino.h +++ /dev/null @@ -1,77 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// Default USB Settings -#define USB_VID 0x303a -#define USB_PID 0x80C5 -#define USB_MANUFACTURER "WEMOS.CC" -#define USB_PRODUCT "LOLIN-S2-PICO" -#define USB_SERIAL "0" - - -// Default USB FirmwareMSC Settings -#define USB_FW_MSC_VENDOR_ID "ESP32-S2" //max 8 chars -#define USB_FW_MSC_PRODUCT_ID "Firmware MSC" //max 16 chars -#define USB_FW_MSC_PRODUCT_REVISION "1.23" //max 4 chars -#define USB_FW_MSC_VOLUME_NAME "S2-Firmware" //max 11 chars -#define USB_FW_MSC_SERIAL_NUMBER 0x00000000 - -static const uint8_t LED_BUILTIN = 10; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 38; -static const uint8_t RX = 33; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t S2_PICO_OLED_RESET = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_s3/pins_arduino.h b/variants/lolin_s3/pins_arduino.h deleted file mode 100644 index d058630b69d..00000000000 --- a/variants/lolin_s3/pins_arduino.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = 38+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 42; -static const uint8_t SCL = 41; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_s3_mini/pins_arduino.h b/variants/lolin_s3_mini/pins_arduino.h deleted file mode 100644 index 8c8b5c93854..00000000000 --- a/variants/lolin_s3_mini/pins_arduino.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x8167 - -static const uint8_t LED_BUILTIN = 47+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 35; -static const uint8_t SCL = 36; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lolin_s3_pro/pins_arduino.h b/variants/lolin_s3_pro/pins_arduino.h deleted file mode 100644 index 6a3259ed6e8..00000000000 --- a/variants/lolin_s3_pro/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x8161 - -static const uint8_t LED_BUILTIN = 38+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 9; -static const uint8_t SCL = 10; - -static const uint8_t SS = 0; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t TF_CS = 46; - -static const uint8_t TS_CS = 45; -static const uint8_t TFT_CS = 48; -static const uint8_t TFT_DC = 47; -static const uint8_t TFT_RST = 21; -static const uint8_t TFT_LED = 14; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lopy/pins_arduino.h b/variants/lopy/pins_arduino.h deleted file mode 100644 index 2c44d12d06b..00000000000 --- a/variants/lopy/pins_arduino.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 17 // GPIO17 - SX1276 CS -#define LORA_RST 18 // GPIO18 - SX1276 RST -#define LORA_IRQ 23 // GPIO23 - SX1276 IO0 -#define LORA_IO0 LORA_IRQ // alias -#define LORA_IO1 LORA_IRQ // tied by diode to IO0 -#define LORA_IO2 LORA_IRQ // tied by diode to IO0 - -// Neopixel -#define PIN_NEOPIXEL 0 // ->2812 RGB !!! -static const uint8_t LED_BUILTIN = PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#define ANT_SELECT 16 // GPIO16 - External Antenna Switch - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SS = 17; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 37; -static const uint8_t SCK = 13; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/lopy4/pins_arduino.h b/variants/lopy4/pins_arduino.h deleted file mode 100644 index ba89a4b401f..00000000000 --- a/variants/lopy4/pins_arduino.h +++ /dev/null @@ -1,73 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 18 // GPIO18 - SX1276 CS -#define LORA_IRQ 23 // GPIO23 - SX1276 IO0 -#define LORA_IO0 LORA_IRQ // alias -#define LORA_IO1 LORA_IRQ // tied by diode to IO0 -#define LORA_IO2 LORA_IRQ // tied by diode to IO0 -#define LORA_RST NOT_A_PIN - -// Neopixel -#define PIN_NEOPIXEL 0 // ->2812 RGB !!! -static const uint8_t LED_BUILTIN = PIN_NEOPIXEL+SOC_GPIO_PIN_COUNT; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#define ANT_SELECT 21 // GPIO21 - External Antenna Switch - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 37; -static const uint8_t SCK = 13; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_atom/pins_arduino.h b/variants/m5stack_atom/pins_arduino.h deleted file mode 100644 index 06a3ec76f64..00000000000 --- a/variants/m5stack_atom/pins_arduino.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 26; -static const uint8_t SCL = 32; - - -static const uint8_t G12 = 12; -static const uint8_t G19 = 19; -static const uint8_t G21 = 21; -static const uint8_t G22 = 22; -static const uint8_t G23 = 23; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G27 = 27; -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; -static const uint8_t G39 = 39; - -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G37 = 37; -static const uint8_t G36 = 36; -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -static const uint8_t SS = 19; -static const uint8_t MOSI = 33; -static const uint8_t MISO = 23; -static const uint8_t SCK = 22; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_atoms3/pins_arduino.h b/variants/m5stack_atoms3/pins_arduino.h deleted file mode 100644 index 2fab4d136b1..00000000000 --- a/variants/m5stack_atoms3/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// Some boards have too low voltage on this pin (board design bug) -// Use different pin with 3V and connect with 48 -// and change this setup for the chosen pin (for example 38) -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT + 48; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 38; -static const uint8_t SCL = 39; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 21; -static const uint8_t MISO = -1; -static const uint8_t SCK = 17; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G36 = 36; -static const uint8_t G37 = 37; -static const uint8_t G38 = 38; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G42 = 42; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_capsule/pins_arduino.h b/variants/m5stack_capsule/pins_arduino.h deleted file mode 100644 index 2f3473bb368..00000000000 --- a/variants/m5stack_capsule/pins_arduino.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 13; -static const uint8_t SCL = 15; - -static const uint8_t SS = 11; -static const uint8_t MOSI = 12; -static const uint8_t MISO = 39; -static const uint8_t SCK = 14; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G15 = 15; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G41 = 41; -static const uint8_t G42 = 42; -static const uint8_t G43 = 43; -static const uint8_t G44 = 44; -static const uint8_t G46 = 46; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_cardputer/pins_arduino.h b/variants/m5stack_cardputer/pins_arduino.h deleted file mode 100644 index 14a7d56fa06..00000000000 --- a/variants/m5stack_cardputer/pins_arduino.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 13; -static const uint8_t SCL = 15; - -static const uint8_t SS = 12; -static const uint8_t MOSI = 14; -static const uint8_t MISO = 39; -static const uint8_t SCK = 40; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G15 = 15; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G41 = 41; -static const uint8_t G42 = 42; -static const uint8_t G43 = 43; -static const uint8_t G44 = 44; -static const uint8_t G46 = 46; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - - - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_core/pins_arduino.h b/variants/m5stack_core/pins_arduino.h deleted file mode 100644 index 1984ab6bc6e..00000000000 --- a/variants/m5stack_core/pins_arduino.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t TXD2 = 17; -static const uint8_t RXD2 = 16; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G19 = 19; -static const uint8_t G18 = 18; -static const uint8_t G3 = 3; -static const uint8_t G16 = 16; -static const uint8_t G21 = 21; -static const uint8_t G2 = 2; -static const uint8_t G12 = 12; -static const uint8_t G15 = 15; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G1 = 1; -static const uint8_t G17 = 17; -static const uint8_t G22 = 22; -static const uint8_t G5 = 5; -static const uint8_t G13 = 13; -static const uint8_t G0 = 0; -static const uint8_t G34 = 34; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_core2/pins_arduino.h b/variants/m5stack_core2/pins_arduino.h deleted file mode 100644 index c5ea5d78eee..00000000000 --- a/variants/m5stack_core2/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX2 14 -#define RX2 13 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 38; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G38 = 38; -static const uint8_t G18 = 18; -static const uint8_t G3 = 3; -static const uint8_t G13 = 13; -static const uint8_t G21 = 21; -static const uint8_t G32 = 32; -static const uint8_t G27 = 27; -static const uint8_t G2 = 2; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G1 = 1; -static const uint8_t G14 = 14; -static const uint8_t G22 = 22; -static const uint8_t G33 = 33; -static const uint8_t G19 = 19; -static const uint8_t G0 = 0; -static const uint8_t G34 = 34; - -static const uint8_t G12 = 12; -static const uint8_t G15 = 15; -static const uint8_t G17 = 17; -static const uint8_t G5 = 5; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_coreink/pins_arduino.h b/variants/m5stack_coreink/pins_arduino.h deleted file mode 100644 index 84c0903c166..00000000000 --- a/variants/m5stack_coreink/pins_arduino.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX2 14 -#define RX2 13 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 9; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 34; -static const uint8_t SCK = 18; - -static const uint8_t G26 = 26; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; - -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; - -static const uint8_t G21 = 21; -static const uint8_t G22 = 22; - -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; - -static const uint8_t G12 = 12; -static const uint8_t G19 = 19; - -static const uint8_t G5 = 5; -static const uint8_t G10 = 10; -static const uint8_t G2 = 2; -static const uint8_t G37 = 37; -static const uint8_t G38 = 38; -static const uint8_t G39 = 39; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_cores3/pins_arduino.h b/variants/m5stack_cores3/pins_arduino.h deleted file mode 100644 index c9bbb02c72f..00000000000 --- a/variants/m5stack_cores3/pins_arduino.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// Some boards have too low voltage on this pin (board design bug) -// Use different pin with 3V and connect with 48 -// and change this setup for the chosen pin (for example 38) -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT + 48; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 17; -static const uint8_t RXD2 = 18; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 11; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 37; -static const uint8_t MISO = 35; -static const uint8_t SCK = 36; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G17 = 17; -static const uint8_t G18 = 18; -static const uint8_t G19 = 19; -static const uint8_t G20 = 20; -static const uint8_t G21 = 21; -static const uint8_t G33 = 33; -static const uint8_t G34 = 34; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G37 = 37; -static const uint8_t G38 = 38; -static const uint8_t G45 = 45; -static const uint8_t G46 = 46; - -static const uint8_t ADC = 10; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_dial/pins_arduino.h b/variants/m5stack_dial/pins_arduino.h deleted file mode 100644 index 14a7d56fa06..00000000000 --- a/variants/m5stack_dial/pins_arduino.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 13; -static const uint8_t SCL = 15; - -static const uint8_t SS = 12; -static const uint8_t MOSI = 14; -static const uint8_t MISO = 39; -static const uint8_t SCK = 40; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G15 = 15; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G41 = 41; -static const uint8_t G42 = 42; -static const uint8_t G43 = 43; -static const uint8_t G44 = 44; -static const uint8_t G46 = 46; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - - - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_fire/pins_arduino.h b/variants/m5stack_fire/pins_arduino.h deleted file mode 100644 index 0cb66c9eb50..00000000000 --- a/variants/m5stack_fire/pins_arduino.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G19 = 19; -static const uint8_t G18 = 18; -static const uint8_t G3 = 3; -static const uint8_t G16 = 16; -static const uint8_t G21 = 21; -static const uint8_t G2 = 2; -static const uint8_t G12 = 12; -static const uint8_t G15 = 15; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G1 = 1; -static const uint8_t G17 = 17; -static const uint8_t G22 = 22; -static const uint8_t G5 = 5; -static const uint8_t G13 = 13; -static const uint8_t G0 = 0; -static const uint8_t G34 = 34; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_paper/pins_arduino.h b/variants/m5stack_paper/pins_arduino.h deleted file mode 100644 index 68b64386bef..00000000000 --- a/variants/m5stack_paper/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX2 14 -#define RX2 13 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 25; -static const uint8_t SCL = 32; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 12; -static const uint8_t MISO = 13; -static const uint8_t SCK = 14; - -static const uint8_t G25 = 25; -static const uint8_t G32 = 32; - -static const uint8_t G26 = 26; -static const uint8_t G33 = 33; - -static const uint8_t G18 = 18; -static const uint8_t G19 = 19; - -static const uint8_t G21 = 21; -static const uint8_t G22 = 22; - -static const uint8_t G36 = 36; -static const uint8_t G2 = 2; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G23 = 23; - -static const uint8_t G37 = 37; -static const uint8_t G38 = 38; -static const uint8_t G39 = 39; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_poe_cam/pins_arduino.h b/variants/m5stack_poe_cam/pins_arduino.h deleted file mode 100644 index 75c8831b923..00000000000 --- a/variants/m5stack_poe_cam/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 25; -static const uint8_t SCL = 33; - -// Modified elsewhere -static const uint8_t SS = -1; -static const uint8_t MOSI = -1; -static const uint8_t MISO = -1; -static const uint8_t SCK = -1; - -static const uint8_t G23 = 23; -static const uint8_t G25 = 25; -static const uint8_t G27 = 27; -static const uint8_t G22 = 22; -static const uint8_t G26 = 26; -static const uint8_t G21 = 21; -static const uint8_t G32 = 32; -static const uint8_t G35 = 35; -static const uint8_t G34 = 34; -static const uint8_t G5 = 5; -static const uint8_t G39 = 39; -static const uint8_t G18 = 18; -static const uint8_t G36 = 36; -static const uint8_t G19 = 19; -static const uint8_t G15 = 15; - -static const uint8_t G2 = 2; -static const uint8_t G33 = 33; - -static const uint8_t G13 = 13; -static const uint8_t G4 = 4; - -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stamp_c3/pins_arduino.h b/variants/m5stack_stamp_c3/pins_arduino.h deleted file mode 100644 index 66399b0c04b..00000000000 --- a/variants/m5stack_stamp_c3/pins_arduino.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stamp_pico/pins_arduino.h b/variants/m5stack_stamp_pico/pins_arduino.h deleted file mode 100644 index d052243f92a..00000000000 --- a/variants/m5stack_stamp_pico/pins_arduino.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 19; -static const uint8_t MOSI = 26; -static const uint8_t MISO = 36; -static const uint8_t SCK = 18; - -static const uint8_t G26 = 26; -static const uint8_t G36 = 36; -static const uint8_t G18 = 18; -static const uint8_t G19 = 19; -static const uint8_t G21 = 21; -static const uint8_t G22 = 22; -static const uint8_t G25 = 25; -static const uint8_t G1 = 1; -static const uint8_t G3 = 3; -static const uint8_t G0 = 0; - -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stamp_s3/pins_arduino.h b/variants/m5stack_stamp_s3/pins_arduino.h deleted file mode 100644 index d2af16ecaf9..00000000000 --- a/variants/m5stack_stamp_s3/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 13; -static const uint8_t SCL = 15; - -// Modified elsewhere -static const uint8_t SS = -1; -static const uint8_t MOSI = -1; -static const uint8_t MISO = -1; -static const uint8_t SCK = -1; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G15 = 15; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G41 = 41; -static const uint8_t G42 = 42; -static const uint8_t G43 = 43; -static const uint8_t G44 = 44; -static const uint8_t G46 = 46; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_station/pins_arduino.h b/variants/m5stack_station/pins_arduino.h deleted file mode 100644 index 3a5812e3262..00000000000 --- a/variants/m5stack_station/pins_arduino.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t TXD1 = 14; -static const uint8_t RXD1 = 13; - -static const uint8_t TXD2 = 17; -static const uint8_t RXD2 = 16; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = -1; -static const uint8_t SCK = 18; - -static const uint8_t G1 = 1; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G16 = 16; -static const uint8_t G17 = 17; -static const uint8_t G18 = 18; -static const uint8_t G19 = 19; -static const uint8_t G23 = 23; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G37 = 37; -static const uint8_t G38 = 38; -static const uint8_t G39 = 39; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stickc/pins_arduino.h b/variants/m5stack_stickc/pins_arduino.h deleted file mode 100644 index 6a32c71f697..00000000000 --- a/variants/m5stack_stickc/pins_arduino.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 36; -static const uint8_t SCK = 13; - -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G37 = 37; -static const uint8_t G39 = 39; -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; -static const uint8_t G26 = 26; -static const uint8_t G36 = 36; -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stickc_plus/pins_arduino.h b/variants/m5stack_stickc_plus/pins_arduino.h deleted file mode 100644 index 6a32c71f697..00000000000 --- a/variants/m5stack_stickc_plus/pins_arduino.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 36; -static const uint8_t SCK = 13; - -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G37 = 37; -static const uint8_t G39 = 39; -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; -static const uint8_t G26 = 26; -static const uint8_t G36 = 36; -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_stickc_plus2/pins_arduino.h b/variants/m5stack_stickc_plus2/pins_arduino.h deleted file mode 100644 index 6a32c71f697..00000000000 --- a/variants/m5stack_stickc_plus2/pins_arduino.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 36; -static const uint8_t SCK = 13; - -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G37 = 37; -static const uint8_t G39 = 39; -static const uint8_t G32 = 32; -static const uint8_t G33 = 33; -static const uint8_t G26 = 26; -static const uint8_t G36 = 36; -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_timer_cam/pins_arduino.h b/variants/m5stack_timer_cam/pins_arduino.h deleted file mode 100644 index 5a2cc5dcdb4..00000000000 --- a/variants/m5stack_timer_cam/pins_arduino.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 4; -static const uint8_t SCL = 13; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G25 = 25; -static const uint8_t G27 = 27; -static const uint8_t G22 = 22; -static const uint8_t G26 = 26; -static const uint8_t G21 = 21; -static const uint8_t G32 = 32; -static const uint8_t G35 = 35; -static const uint8_t G34 = 34; -static const uint8_t G5 = 5; -static const uint8_t G39 = 39; -static const uint8_t G18 = 18; -static const uint8_t G36 = 36; -static const uint8_t G19 = 19; -static const uint8_t G15 = 15; - -static const uint8_t G2 = 2; -static const uint8_t G33 = 33; - -static const uint8_t G13 = 13; -static const uint8_t G4 = 4; - -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_tough/pins_arduino.h b/variants/m5stack_tough/pins_arduino.h deleted file mode 100644 index c5ea5d78eee..00000000000 --- a/variants/m5stack_tough/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX2 14 -#define RX2 13 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 32; -static const uint8_t SCL = 33; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 38; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G38 = 38; -static const uint8_t G18 = 18; -static const uint8_t G3 = 3; -static const uint8_t G13 = 13; -static const uint8_t G21 = 21; -static const uint8_t G32 = 32; -static const uint8_t G27 = 27; -static const uint8_t G2 = 2; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G1 = 1; -static const uint8_t G14 = 14; -static const uint8_t G22 = 22; -static const uint8_t G33 = 33; -static const uint8_t G19 = 19; -static const uint8_t G0 = 0; -static const uint8_t G34 = 34; - -static const uint8_t G12 = 12; -static const uint8_t G15 = 15; -static const uint8_t G17 = 17; -static const uint8_t G5 = 5; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_unit_cam/pins_arduino.h b/variants/m5stack_unit_cam/pins_arduino.h deleted file mode 100644 index 5697b1303ba..00000000000 --- a/variants/m5stack_unit_cam/pins_arduino.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 4; -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 17; -static const uint8_t SCL = 16; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G25 = 25; -static const uint8_t G27 = 27; -static const uint8_t G22 = 22; -static const uint8_t G26 = 26; -static const uint8_t G21 = 21; -static const uint8_t G32 = 32; -static const uint8_t G35 = 35; -static const uint8_t G34 = 34; -static const uint8_t G5 = 5; -static const uint8_t G39 = 39; -static const uint8_t G18 = 18; -static const uint8_t G36 = 36; -static const uint8_t G19 = 19; -static const uint8_t G15 = 15; - -static const uint8_t G2 = 2; -static const uint8_t G33 = 33; - -static const uint8_t G13 = 13; -static const uint8_t G4 = 4; - -static const uint8_t G0 = 0; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/m5stack_unit_cams3/pins_arduino.h b/variants/m5stack_unit_cams3/pins_arduino.h deleted file mode 100644 index d2af16ecaf9..00000000000 --- a/variants/m5stack_unit_cams3/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t TXD2 = 1; -static const uint8_t RXD2 = 2; - -static const uint8_t SDA = 13; -static const uint8_t SCL = 15; - -// Modified elsewhere -static const uint8_t SS = -1; -static const uint8_t MOSI = -1; -static const uint8_t MISO = -1; -static const uint8_t SCK = -1; - -static const uint8_t G0 = 0; -static const uint8_t G1 = 1; -static const uint8_t G2 = 2; -static const uint8_t G3 = 3; -static const uint8_t G4 = 4; -static const uint8_t G5 = 5; -static const uint8_t G6 = 6; -static const uint8_t G7 = 7; -static const uint8_t G8 = 8; -static const uint8_t G9 = 9; -static const uint8_t G10 = 10; -static const uint8_t G11 = 11; -static const uint8_t G12 = 12; -static const uint8_t G13 = 13; -static const uint8_t G14 = 14; -static const uint8_t G15 = 15; -static const uint8_t G39 = 39; -static const uint8_t G40 = 40; -static const uint8_t G41 = 41; -static const uint8_t G42 = 42; -static const uint8_t G43 = 43; -static const uint8_t G44 = 44; -static const uint8_t G46 = 46; - -static const uint8_t ADC1 = 7; -static const uint8_t ADC2 = 8; - -#endif /* Pins_Arduino_h */ diff --git a/variants/magicbit/pins_arduino.h b/variants/magicbit/pins_arduino.h deleted file mode 100644 index 0e91fa211a0..00000000000 --- a/variants/magicbit/pins_arduino.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t BUZZER = 25; -static const uint8_t RED_LED = 27; -static const uint8_t YELLOW_LED = 18; -static const uint8_t GREEN_LED = 16; -static const uint8_t BLUE_LED = 17; -static const uint8_t LDR = 36; -static const uint8_t POT = 39; -static const uint8_t RIGHT_PUTTON = 34; -static const uint8_t LEFT_BUTTON = 35; -static const uint8_t MOTOR1A = 27; -static const uint8_t MOTOR1B = 18; -static const uint8_t MOTOR2A = 16; -static const uint8_t MOTOR2B = 17; - -static const uint8_t LED_BUILTIN=16; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#endif /* Pins_Arduino_h */ diff --git a/variants/makergo_c3_supermini/pins_arduino.h b/variants/makergo_c3_supermini/pins_arduino.h deleted file mode 100644 index f62df83dbf5..00000000000 --- a/variants/makergo_c3_supermini/pins_arduino.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX1 0 -#define RX1 1 - -static const uint8_t LED_BUILTIN = 8; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BOOT_BUILTIN = 9; // built-in boot button - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ - diff --git a/variants/metro_esp-32/pins_arduino.h b/variants/metro_esp-32/pins_arduino.h deleted file mode 100644 index cc13c5f6ffc..00000000000 --- a/variants/metro_esp-32/pins_arduino.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t ADR = 12; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/mgbot-iotik32a/pins_arduino.h b/variants/mgbot-iotik32a/pins_arduino.h deleted file mode 100644 index 84de808ee08..00000000000 --- a/variants/mgbot-iotik32a/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 4; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -#define TXD TX -#define RXD RX - -static const uint8_t TX2 = 17; -static const uint8_t RX2 = 16; -#define TXD2 TX2 -#define RXD2 RX2 - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/mgbot-iotik32b/pins_arduino.h b/variants/mgbot-iotik32b/pins_arduino.h deleted file mode 100644 index 81ee34f16e5..00000000000 --- a/variants/mgbot-iotik32b/pins_arduino.h +++ /dev/null @@ -1,64 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 18; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// IR receiver -static const uint8_t IR = 27; -#define IR_RECV IR -#define IR_INPUT IR - -static const uint8_t TX = 1; -static const uint8_t RX = 3; -#define TXD TX -#define RXD RX - -static const uint8_t TX2 = 17; -static const uint8_t RX2 = 16; -#define TXD2 TX2 -#define RXD2 RX2 - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/mhetesp32devkit/pins_arduino.h b/variants/mhetesp32devkit/pins_arduino.h deleted file mode 100644 index 467c58c0034..00000000000 --- a/variants/mhetesp32devkit/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/mhetesp32minikit/pins_arduino.h b/variants/mhetesp32minikit/pins_arduino.h deleted file mode 100644 index 467c58c0034..00000000000 --- a/variants/mhetesp32minikit/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/micro_s2/pins_arduino.h b/variants/micro_s2/pins_arduino.h deleted file mode 100644 index 18fd2685b80..00000000000 --- a/variants/micro_s2/pins_arduino.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x239A -#define USB_PID 0x80C5 -#define USB_MANUFACTURER "microDev" -#define USB_PRODUCT "microS2" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t LED_BUILTIN = 21; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t PIXEL_BUILTIN = 33; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (PIXEL_BUILTIN + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -static const uint8_t BUTTON_BUILTIN = 0; - -#endif /* Pins_Arduino_h */ diff --git a/variants/mpython/pins_arduino.h b/variants/mpython/pins_arduino.h deleted file mode 100644 index 5f17b4ad1e3..00000000000 --- a/variants/mpython/pins_arduino.h +++ /dev/null @@ -1,82 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - - -static const uint8_t P0 = 33; -static const uint8_t P1 = 32; -static const uint8_t P2 = 35; -static const uint8_t P3 = 34; -static const uint8_t P4 = 39; -static const uint8_t P5 = 0; -static const uint8_t P6 = 16; -static const uint8_t P7 = 17; -static const uint8_t P8 = 26; -static const uint8_t P9 = 25; -static const uint8_t P10 = 36; -static const uint8_t P11 = 2; -static const uint8_t P13 = 18; -static const uint8_t P14 = 19; -static const uint8_t P15 = 21; -static const uint8_t P16 = 5; -static const uint8_t P19 = 22; -static const uint8_t P20 = 23; - -static const uint8_t P = 27; -static const uint8_t Y = 14; -static const uint8_t T = 12; -static const uint8_t H = 13; -static const uint8_t O = 15; -static const uint8_t N = 4; - -static const uint8_t BTN_A = 0; -static const uint8_t BTN_B = 2; -static const uint8_t SOUND = 36; -static const uint8_t LIGHT = 39; -static const uint8_t BUZZER = 16; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/namino_arancio/pins_arduino.h b/variants/namino_arancio/pins_arduino.h deleted file mode 100644 index 2236ca712a3..00000000000 --- a/variants/namino_arancio/pins_arduino.h +++ /dev/null @@ -1,197 +0,0 @@ -// -// Copyright (c) 2023 Namino Team, version: 1.0.20 @ 2023-10-06 -// -// -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -#define NAMINO_ARANCIO_BOARD - -/* Begin Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t GPIO4 = 4; -static const uint8_t GPIO5 = 5; -static const uint8_t GPIO6 = 6; -static const uint8_t GPIO7 = 7; -static const uint8_t GPIO15 = 15; -static const uint8_t GPIO16 = 16; -static const uint8_t GPIO17 = 17; -static const uint8_t GPIO18 = 18; -static const uint8_t GPIO8 = 8; -static const uint8_t GPIO19 = 19; -static const uint8_t GPIO20 = 20; -static const uint8_t GPIO3 = 3; -static const uint8_t GPIO46 = 46; -static const uint8_t GPIO9 = 9; -static const uint8_t GPIO10 = 10; -static const uint8_t GPIO11 = 11; -static const uint8_t GPIO12 = 12; -static const uint8_t GPIO13 = 13; -static const uint8_t GPIO14 = 14; -static const uint8_t GPIO21 = 21; -static const uint8_t GPIO47 = 47; -static const uint8_t GPIO48 = 48; -static const uint8_t GPIO45 = 45; -static const uint8_t GPIO0 = 0; -static const uint8_t GPIO35 = 35; -static const uint8_t GPIO36 = 36; -static const uint8_t GPIO37 = 37; -static const uint8_t GPIO38 = 38; -static const uint8_t GPIO39 = 39; -static const uint8_t GPIO40 = 40; -static const uint8_t GPIO41 = 41; -static const uint8_t GPIO42 = 42; -static const uint8_t GPIO44 = 44; -static const uint8_t GPIO43 = 43; -static const uint8_t GPIO2 = 2; -static const uint8_t GPIO1 = 1; - -static const uint8_t RESET_ADD_ON = GPIO46; -static const uint8_t SS = GPIO10; -static const uint8_t MOSI = GPIO11; -static const uint8_t MISO = GPIO13; -static const uint8_t SCK = GPIO12; -// SPI SD CARD -static const uint8_t CS_SDCARD = GPIO2; -// prog pins -static const uint8_t BOOT_MODE = GPIO47; -static const uint8_t ISP_TX = GPIO17; -static const uint8_t ISP_RX = GPIO18; -static const uint8_t NM_RESET = GPIO48; -/* End Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t ADC1_CH3 = GPIO4; -static const uint8_t ADC1_CH4 = GPIO5; -static const uint8_t ADC1_CH5 = GPIO6; -static const uint8_t ADC1_CH6 = GPIO7; -static const uint8_t ADC2_CH4 = GPIO15; -static const uint8_t ADC2_CH5 = GPIO16; -static const uint8_t ADC2_CH6 = GPIO17; -static const uint8_t ADC2_CH7 = GPIO18; -static const uint8_t ADC1_CH7 = GPIO8; -static const uint8_t ADC2_CH8 = GPIO19; -static const uint8_t ADC2_CH9 = GPIO20; -static const uint8_t ADC1_CH2 = GPIO3; -static const uint8_t ADC1_CH8 = GPIO9; -static const uint8_t ADC1_CH9 = GPIO10; -static const uint8_t ADC2_CH0 = GPIO11; -static const uint8_t ADC2_CH1 = GPIO12; -static const uint8_t ADC2_CH2 = GPIO13; -static const uint8_t ADC2_CH3 = GPIO14; -static const uint8_t ADC1_CH1 = GPIO2; -static const uint8_t ADC1_CH0 = GPIO1; -/* End Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t TOUCH4 = GPIO4; -static const uint8_t TOUCH5 = GPIO5; -static const uint8_t TOUCH6 = GPIO6; -static const uint8_t TOUCH7 = GPIO7; -static const uint8_t TOUCH8 = GPIO8; -static const uint8_t TOUCH3 = GPIO3; -static const uint8_t TOUCH9 = GPIO9; -static const uint8_t TOUCH10 = GPIO10; -static const uint8_t TOUCH11 = GPIO11; -static const uint8_t TOUCH12 = GPIO12; -static const uint8_t TOUCH13 = GPIO13; -static const uint8_t TOUCH14 = GPIO14; -static const uint8_t TOUCH2 = GPIO2; -static const uint8_t TOUCH1 = GPIO1; -/* End Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ - -static const uint8_t TX = GPIO17; -static const uint8_t RX = GPIO18; - -static const uint8_t SDA = GPIO1; -static const uint8_t SCL = GPIO0; -static const uint8_t NAMINO_ARANCIO_I2C_SDA = SDA; -static const uint8_t NAMINO_ARANCIO_I2C_SCL = SCL; -static const uint8_t NM_I2C_SDA = SDA; -static const uint8_t NM_I2C_SCL = SCL; - -static const uint8_t A0 = ADC1_CH0; -static const uint8_t A1 = ADC1_CH1; -static const uint8_t A2 = ADC1_CH2; -static const uint8_t A3 = ADC1_CH3; -static const uint8_t A4 = ADC1_CH4; -static const uint8_t A5 = ADC1_CH5; -static const uint8_t A6 = ADC1_CH6; -static const uint8_t A7 = ADC1_CH7; -static const uint8_t A8 = ADC2_CH0; -static const uint8_t A9 = ADC2_CH1; -static const uint8_t A10 = ADC2_CH2; -static const uint8_t A11 = ADC2_CH3; -static const uint8_t A12 = ADC2_CH4; -static const uint8_t A13 = ADC2_CH5; -static const uint8_t A14 = ADC2_CH6; -static const uint8_t A15 = ADC2_CH7; - -static const uint8_t DAC1 = 0; -static const uint8_t DAC2 = 0; - -/* Begin Arduino naming */ -static const uint8_t RESET_ARDUINO = GPIO46; -static const uint8_t PC0 = GPIO3; -static const uint8_t PC1 = GPIO4; -static const uint8_t PC2 = GPIO5; -static const uint8_t PC3 = GPIO6; -static const uint8_t PC4 = GPIO7; -static const uint8_t PC5 = GPIO8; -static const uint8_t PB5 = GPIO35; -static const uint8_t PB4 = GPIO36; -static const uint8_t PB3 = GPIO37; -static const uint8_t PB2 = GPIO38; -static const uint8_t PB1 = GPIO39; -static const uint8_t PB0 = GPIO40; -static const uint8_t PD7 = GPIO41; -static const uint8_t PD6 = GPIO42; -static const uint8_t PD5 = GPIO21; -static const uint8_t PD4 = GPIO16; -static const uint8_t PD3 = GPIO14; -static const uint8_t PD2 = GPIO9; -static const uint8_t PD1 = GPIO17; -static const uint8_t PD0 = GPIO18; -/* End Arduino naming */ - -/* Begin alternate naming */ -static const uint8_t J1_io0 = SCL; - -static const uint8_t J2_35 = PB5; -static const uint8_t J2_36 = PB4; -static const uint8_t J2_37 = PB3; -static const uint8_t J2_38 = PB2; -static const uint8_t J2_39 = PB1; -static const uint8_t J2_40 = PB0; - -static const uint8_t J3_io8 = PD7; -static const uint8_t J3_7 = PD6; -static const uint8_t J3_21 = PD5; -static const uint8_t J3_16 = PD4; -static const uint8_t J3_14 = PD3; -static const uint8_t J3_9 = PD2; -static const uint8_t J3_17 = TX; -static const uint8_t J3_18 = RX; - -static const uint8_t J4_cs_io2 = CS_SDCARD; -static const uint8_t J4_sclk = SCK; -static const uint8_t J4_mosi = MOSI; -static const uint8_t J4_miso = MISO; - -static const uint8_t J9_io3 = PC0; -static const uint8_t J9_4 = PC1; -static const uint8_t J9_5 = PC2; -static const uint8_t J9_6 = PC3; -static const uint8_t J9_7 = PC4; -static const uint8_t J9_8 = PC5; - -static const uint8_t J10_enc_A = 0; -static const uint8_t J10_enc_B = 0; -static const uint8_t J10_sw = 0; -/* End alternate naming */ - -#endif /* Pins_Arduino_h */ diff --git a/variants/namino_bianco/pins_arduino.h b/variants/namino_bianco/pins_arduino.h deleted file mode 100644 index 48fbf6da301..00000000000 --- a/variants/namino_bianco/pins_arduino.h +++ /dev/null @@ -1,198 +0,0 @@ -// -// Copyright (c) 2023 Namino Team, bianco version: 1.0.1 @ 2023-10-06 -// -// -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -#define NAMINO_BIANCO_BOARD - -/* Begin Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t GPIO4 = 4; -static const uint8_t GPIO5 = 5; -static const uint8_t GPIO6 = 6; -static const uint8_t GPIO7 = 7; -static const uint8_t GPIO15 = 15; -static const uint8_t GPIO16 = 16; -static const uint8_t GPIO17 = 17; -static const uint8_t GPIO18 = 18; -static const uint8_t GPIO8 = 8; -static const uint8_t GPIO19 = 19; -static const uint8_t GPIO20 = 20; -static const uint8_t GPIO3 = 3; -static const uint8_t GPIO46 = 46; -static const uint8_t GPIO9 = 9; -static const uint8_t GPIO10 = 10; -static const uint8_t GPIO11 = 11; -static const uint8_t GPIO12 = 12; -static const uint8_t GPIO13 = 13; -static const uint8_t GPIO14 = 14; -static const uint8_t GPIO21 = 21; -static const uint8_t GPIO47 = 47; -static const uint8_t GPIO48 = 48; -static const uint8_t GPIO45 = 45; -static const uint8_t GPIO0 = 0; -static const uint8_t GPIO35 = 35; -static const uint8_t GPIO36 = 36; -static const uint8_t GPIO37 = 37; -static const uint8_t GPIO38 = 38; -static const uint8_t GPIO39 = 39; -static const uint8_t GPIO40 = 40; -static const uint8_t GPIO41 = 41; -static const uint8_t GPIO42 = 42; -static const uint8_t GPIO44 = 44; -static const uint8_t GPIO43 = 43; -static const uint8_t GPIO2 = 2; -static const uint8_t GPIO1 = 1; - -static const uint8_t SS = GPIO48; -static const uint8_t MOSI = GPIO11; -static const uint8_t MISO = GPIO13; -static const uint8_t SCK = GPIO12; - -/* End Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t ADC1_CH3 = GPIO4; -static const uint8_t ADC1_CH4 = GPIO5; -static const uint8_t ADC1_CH5 = GPIO6; -static const uint8_t ADC1_CH6 = GPIO7; -static const uint8_t ADC2_CH4 = GPIO15; -static const uint8_t ADC2_CH5 = GPIO16; -static const uint8_t ADC2_CH6 = GPIO17; -static const uint8_t ADC2_CH7 = GPIO18; -static const uint8_t ADC1_CH7 = GPIO8; -static const uint8_t ADC2_CH8 = GPIO19; -static const uint8_t ADC2_CH9 = GPIO20; -static const uint8_t ADC1_CH2 = GPIO3; -static const uint8_t ADC1_CH8 = GPIO9; -static const uint8_t ADC1_CH9 = GPIO10; -static const uint8_t ADC2_CH0 = GPIO11; -static const uint8_t ADC2_CH1 = GPIO12; -static const uint8_t ADC2_CH2 = GPIO13; -static const uint8_t ADC2_CH3 = GPIO14; -static const uint8_t ADC1_CH1 = GPIO2; -static const uint8_t ADC1_CH0 = GPIO1; -/* End Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t TOUCH4 = GPIO4; -static const uint8_t TOUCH5 = GPIO5; -static const uint8_t TOUCH6 = GPIO6; -static const uint8_t TOUCH7 = GPIO7; -static const uint8_t TOUCH8 = GPIO8; -static const uint8_t TOUCH3 = GPIO3; -static const uint8_t TOUCH9 = GPIO9; -static const uint8_t TOUCH10 = GPIO10; -static const uint8_t TOUCH11 = GPIO11; -static const uint8_t TOUCH12 = GPIO12; -static const uint8_t TOUCH13 = GPIO13; -static const uint8_t TOUCH14 = GPIO14; -static const uint8_t TOUCH2 = GPIO2; -static const uint8_t TOUCH1 = GPIO1; -/* End Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ - -static const uint8_t TX = GPIO17; -static const uint8_t RX = GPIO18; - -static const uint8_t SDA = GPIO1; -static const uint8_t SCL = GPIO2; -static const uint8_t NM_I2C_SDA = SDA; -static const uint8_t NM_I2C_SCL = SCL; - -static const uint8_t A0 = ADC1_CH2; -static const uint8_t A1 = ADC1_CH3; -static const uint8_t A2 = ADC1_CH4; -static const uint8_t A3 = ADC1_CH5; -static const uint8_t A4 = ADC1_CH6; -static const uint8_t A5 = ADC2_CH4; -static const uint8_t A6 = 0; -static const uint8_t A7 = 0; -static const uint8_t A8 = 0; -static const uint8_t A9 = 0; -static const uint8_t A10 = 0; -static const uint8_t A11 = 0; -static const uint8_t A12 = 0; -static const uint8_t A13 = 0; -static const uint8_t A14 = 0; -static const uint8_t A15 = 0; - -static const uint8_t DAC1 = 0; -static const uint8_t DAC2 = 0; - -/* Begin Arduino naming */ -static const uint8_t RESET_ARDUINO = 0; -static const uint8_t PC0 = GPIO3; -static const uint8_t PC1 = GPIO4; -static const uint8_t PC2 = GPIO5; -static const uint8_t PC3 = GPIO6; -static const uint8_t PC4 = GPIO7; -static const uint8_t PC5 = GPIO15; -static const uint8_t PB5 = GPIO35; -static const uint8_t PB4 = GPIO36; -static const uint8_t PB3 = GPIO37; -static const uint8_t PB2 = GPIO38; -static const uint8_t PB1 = GPIO39; -static const uint8_t PB0 = GPIO40; -static const uint8_t PD7 = GPIO41; -static const uint8_t PD6 = GPIO42; -static const uint8_t PD5 = GPIO21; -static const uint8_t PD4 = GPIO16; -static const uint8_t PD3 = GPIO14; -static const uint8_t PD2 = GPIO47; -static const uint8_t PD1 = GPIO17; -static const uint8_t PD0 = GPIO18; -/* End Arduino naming */ - -/* Begin alternate naming */ -static const uint8_t PB_SCL = SCL; -static const uint8_t PB_SDA = SDA; -static const uint8_t PB_35 = PB5; -static const uint8_t PB_36 = PB4; -static const uint8_t PB_37 = PB3; -static const uint8_t PB_38 = PB2; -static const uint8_t PB_39 = PB1; -static const uint8_t PB_40 = PB0; - -static const uint8_t PD_io41 = PD7; -static const uint8_t PD_42 = PD6; -static const uint8_t PD_21 = PD5; -static const uint8_t PD_16 = PD4; -static const uint8_t PD_14 = PD3; -static const uint8_t PD_47 = PD2; -static const uint8_t PD_17 = TX; -static const uint8_t PD_18 = RX; - - -static const uint8_t PC_io3 = PC0; -static const uint8_t PC_4 = PC1; -static const uint8_t PC_5 = PC2; -static const uint8_t PC_6 = PC3; -static const uint8_t PC_7 = PC4; -static const uint8_t PC_15 = PC5; - -static const uint8_t M1_3_AN = GPIO3; -static const uint8_t M1_RST = 0; -static const uint8_t M1_48_CS = SS; -static const uint8_t M1_12_SCK = SCK; -static const uint8_t M1_13_MISO = MISO; -static const uint8_t M1_11_MOSI = MOSI; -static const uint8_t M2_47_PWM = GPIO47; -static const uint8_t M2_14_INT = GPIO14; -static const uint8_t M2_18_RX = GPIO18; -static const uint8_t M2_17_TX = GPIO17; -static const uint8_t M2_2_SCL = SCL; -static const uint8_t M2_1_SDA = SDA; - -static const uint8_t J3_SCL = SCL; -static const uint8_t J3_SDA = SDA; - -/* End alternate naming */ - -#endif /* Pins_Arduino_h */ diff --git a/variants/namino_rosso/pins_arduino.h b/variants/namino_rosso/pins_arduino.h deleted file mode 100644 index aa5075a4bee..00000000000 --- a/variants/namino_rosso/pins_arduino.h +++ /dev/null @@ -1,197 +0,0 @@ -// -// Copyright (c) 2023 Namino Team, version: 1.0.20 @ 2023-10-06 -// -// -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -#define NAMINO_ROSSO_BOARD - -/* Begin Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t GPIO4 = 4; -static const uint8_t GPIO5 = 5; -static const uint8_t GPIO6 = 6; -static const uint8_t GPIO7 = 7; -static const uint8_t GPIO15 = 15; -static const uint8_t GPIO16 = 16; -static const uint8_t GPIO17 = 17; -static const uint8_t GPIO18 = 18; -static const uint8_t GPIO8 = 8; -static const uint8_t GPIO19 = 19; -static const uint8_t GPIO20 = 20; -static const uint8_t GPIO3 = 3; -static const uint8_t GPIO46 = 46; -static const uint8_t GPIO9 = 9; -static const uint8_t GPIO10 = 10; -static const uint8_t GPIO11 = 11; -static const uint8_t GPIO12 = 12; -static const uint8_t GPIO13 = 13; -static const uint8_t GPIO14 = 14; -static const uint8_t GPIO21 = 21; -static const uint8_t GPIO47 = 47; -static const uint8_t GPIO48 = 48; -static const uint8_t GPIO45 = 45; -static const uint8_t GPIO0 = 0; -static const uint8_t GPIO35 = 35; -static const uint8_t GPIO36 = 36; -static const uint8_t GPIO37 = 37; -static const uint8_t GPIO38 = 38; -static const uint8_t GPIO39 = 39; -static const uint8_t GPIO40 = 40; -static const uint8_t GPIO41 = 41; -static const uint8_t GPIO42 = 42; -static const uint8_t GPIO44 = 44; -static const uint8_t GPIO43 = 43; -static const uint8_t GPIO2 = 2; -static const uint8_t GPIO1 = 1; - -static const uint8_t RESET_ADD_ON = GPIO46; -static const uint8_t SS = GPIO10; -static const uint8_t MOSI = GPIO11; -static const uint8_t MISO = GPIO13; -static const uint8_t SCK = GPIO12; -// SPI SD CARD -static const uint8_t CS_SDCARD = GPIO2; -// prog pins -static const uint8_t BOOT_MODE = GPIO47; -static const uint8_t ISP_TX = GPIO17; -static const uint8_t ISP_RX = GPIO18; -static const uint8_t NM_RESET = GPIO48; -/* End Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t ADC1_CH3 = GPIO4; -static const uint8_t ADC1_CH4 = GPIO5; -static const uint8_t ADC1_CH5 = GPIO6; -static const uint8_t ADC1_CH6 = GPIO7; -static const uint8_t ADC2_CH4 = GPIO15; -static const uint8_t ADC2_CH5 = GPIO16; -static const uint8_t ADC2_CH6 = GPIO17; -static const uint8_t ADC2_CH7 = GPIO18; -static const uint8_t ADC1_CH7 = GPIO8; -static const uint8_t ADC2_CH8 = GPIO19; -static const uint8_t ADC2_CH9 = GPIO20; -static const uint8_t ADC1_CH2 = GPIO3; -static const uint8_t ADC1_CH8 = GPIO9; -static const uint8_t ADC1_CH9 = GPIO10; -static const uint8_t ADC2_CH0 = GPIO11; -static const uint8_t ADC2_CH1 = GPIO12; -static const uint8_t ADC2_CH2 = GPIO13; -static const uint8_t ADC2_CH3 = GPIO14; -static const uint8_t ADC1_CH1 = GPIO2; -static const uint8_t ADC1_CH0 = GPIO1; -/* End Analog Pins on ESP32-S3-WROOM-1U-N4R8 */ - -/* Begin Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ -static const uint8_t TOUCH4 = GPIO4; -static const uint8_t TOUCH5 = GPIO5; -static const uint8_t TOUCH6 = GPIO6; -static const uint8_t TOUCH7 = GPIO7; -static const uint8_t TOUCH8 = GPIO8; -static const uint8_t TOUCH3 = GPIO3; -static const uint8_t TOUCH9 = GPIO9; -static const uint8_t TOUCH10 = GPIO10; -static const uint8_t TOUCH11 = GPIO11; -static const uint8_t TOUCH12 = GPIO12; -static const uint8_t TOUCH13 = GPIO13; -static const uint8_t TOUCH14 = GPIO14; -static const uint8_t TOUCH2 = GPIO2; -static const uint8_t TOUCH1 = GPIO1; -/* End Touch Pins on ESP32-S3-WROOM-1U-N4R8 */ - -static const uint8_t TX = GPIO17; -static const uint8_t RX = GPIO18; - -static const uint8_t SDA = GPIO1; -static const uint8_t SCL = GPIO0; -static const uint8_t NAMINO_ARANCIO_I2C_SDA = SDA; -static const uint8_t NAMINO_ARANCIO_I2C_SCL = SCL; -static const uint8_t NM_I2C_SDA = SDA; -static const uint8_t NM_I2C_SCL = SCL; - -static const uint8_t A0 = ADC1_CH0; -static const uint8_t A1 = ADC1_CH1; -static const uint8_t A2 = ADC1_CH2; -static const uint8_t A3 = ADC1_CH3; -static const uint8_t A4 = ADC1_CH4; -static const uint8_t A5 = ADC1_CH5; -static const uint8_t A6 = ADC1_CH6; -static const uint8_t A7 = ADC1_CH7; -static const uint8_t A8 = ADC2_CH0; -static const uint8_t A9 = ADC2_CH1; -static const uint8_t A10 = ADC2_CH2; -static const uint8_t A11 = ADC2_CH3; -static const uint8_t A12 = ADC2_CH4; -static const uint8_t A13 = ADC2_CH5; -static const uint8_t A14 = ADC2_CH6; -static const uint8_t A15 = ADC2_CH7; - -static const uint8_t DAC1 = 0; -static const uint8_t DAC2 = 0; - -/* Begin Arduino naming */ -static const uint8_t RESET_ARDUINO = GPIO46; -static const uint8_t PC0 = GPIO3; -static const uint8_t PC1 = GPIO4; -static const uint8_t PC2 = GPIO5; -static const uint8_t PC3 = GPIO6; -static const uint8_t PC4 = GPIO7; -static const uint8_t PC5 = GPIO8; -static const uint8_t PB5 = GPIO35; -static const uint8_t PB4 = GPIO36; -static const uint8_t PB3 = GPIO37; -static const uint8_t PB2 = GPIO38; -static const uint8_t PB1 = GPIO39; -static const uint8_t PB0 = GPIO40; -static const uint8_t PD7 = GPIO41; -static const uint8_t PD6 = GPIO42; -static const uint8_t PD5 = GPIO21; -static const uint8_t PD4 = GPIO16; -static const uint8_t PD3 = GPIO14; -static const uint8_t PD2 = GPIO9; -static const uint8_t PD1 = GPIO17; -static const uint8_t PD0 = GPIO18; -/* End Arduino naming */ - -/* Begin alternate naming */ -static const uint8_t J1_io0 = SCL; - -static const uint8_t J2_35 = PB5; -static const uint8_t J2_36 = PB4; -static const uint8_t J2_37 = PB3; -static const uint8_t J2_38 = PB2; -static const uint8_t J2_39 = PB1; -static const uint8_t J2_40 = PB0; - -static const uint8_t J3_io8 = PD7; -static const uint8_t J3_7 = PD6; -static const uint8_t J3_21 = PD5; -static const uint8_t J3_16 = PD4; -static const uint8_t J3_14 = PD3; -static const uint8_t J3_9 = PD2; -static const uint8_t J3_17 = TX; -static const uint8_t J3_18 = RX; - -static const uint8_t J4_cs_io2 = CS_SDCARD; -static const uint8_t J4_sclk = SCK; -static const uint8_t J4_mosi = MOSI; -static const uint8_t J4_miso = MISO; - -static const uint8_t J9_io3 = PC0; -static const uint8_t J9_4 = PC1; -static const uint8_t J9_5 = PC2; -static const uint8_t J9_6 = PC3; -static const uint8_t J9_7 = PC4; -static const uint8_t J9_8 = PC5; - -static const uint8_t J10_enc_A = 0; -static const uint8_t J10_enc_B = 0; -static const uint8_t J10_sw = 0; -/* End alternate naming */ - -#endif /* Pins_Arduino_h */ diff --git a/variants/nano32/pins_arduino.h b/variants/nano32/pins_arduino.h deleted file mode 100644 index 571912b7ee9..00000000000 --- a/variants/nano32/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 16; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t BUILTIN_KEY = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/nina_w10/pins_arduino.h b/variants/nina_w10/pins_arduino.h deleted file mode 100644 index 660424de2b6..00000000000 --- a/variants/nina_w10/pins_arduino.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_GREEN = 33; -static const uint8_t LED_RED = 23; -static const uint8_t LED_BLUE = 21; -static const uint8_t SW1 = 33; -static const uint8_t SW2 = 27; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 26; -static const uint8_t D3 = 25; -static const uint8_t D4 = 35; -static const uint8_t D5 = 27; -static const uint8_t D6 = 22; -static const uint8_t D7 = 0; -static const uint8_t D8 = 15; -static const uint8_t D9 = 14; -static const uint8_t D10 = 5; -static const uint8_t D11 = 19; -static const uint8_t D12 = 23; -static const uint8_t D13 = 18; -static const uint8_t D14 = 13; -static const uint8_t D15 = 12; - -static const uint8_t D16 = 32; -static const uint8_t D17 = 33; -static const uint8_t D18 = 21; -static const uint8_t D19 = 34; -static const uint8_t D20 = 36; -static const uint8_t D21 = 39; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/node32s/pins_arduino.h b/variants/node32s/pins_arduino.h deleted file mode 100644 index f4d30d32c09..00000000000 --- a/variants/node32s/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/nodemcu-32s/pins_arduino.h b/variants/nodemcu-32s/pins_arduino.h deleted file mode 100644 index f4d30d32c09..00000000000 --- a/variants/nodemcu-32s/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/nologo_esp32c3_super_mini/pins_arduino.h b/variants/nologo_esp32c3_super_mini/pins_arduino.h deleted file mode 100644 index 3b4c144cca6..00000000000 --- a/variants/nologo_esp32c3_super_mini/pins_arduino.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 8; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -#endif /* Pins_Arduino_h */ diff --git a/variants/nologo_esp32s3_pico/pins_arduino.h b/variants/nologo_esp32s3_pico/pins_arduino.h deleted file mode 100644 index 42109e0c12b..00000000000 --- a/variants/nologo_esp32s3_pico/pins_arduino.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = 21; -#define BUILTIN_LED LED_BUILTIN -#define LED_BUILTIN LED_BUILTIN -#define RGB_BUILTIN SOC_GPIO_PIN_COUNT + LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -// SPI - unused but you can create your own definition in your sketch -static const int8_t SCK = -1; -static const int8_t MISO = -1; -static const int8_t MOSI = -1; -static const int8_t SS = -1; - -// I2C - unused but you can create your own definition in your sketch -static const uint8_t SDA = -1; -static const uint8_t SCL = -1; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; - -#endif /* Pins_Arduino_h */ diff --git a/variants/nora_w10/pins_arduino.h b/variants/nora_w10/pins_arduino.h deleted file mode 100644 index ee473f5856f..00000000000 --- a/variants/nora_w10/pins_arduino.h +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// The pin assignments in this file are based on u-blox EVK-NORA-W1, a Arduino compatible board. -// For your own module design you can freely chose the pins available on the module module pins - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -static const uint8_t RTS = 45; -static const uint8_t CTS = 6; -static const uint8_t DTR = 1; -static const uint8_t DSR = 7; - -static const uint8_t SW1 = 46; -static const uint8_t SW2 = 0; // BOOT -static const uint8_t SW3 = 47; -static const uint8_t SW4 = 48; - -static const uint8_t LED_RED = 5; -static const uint8_t LED_GREEN = 2; -static const uint8_t LED_BLUE = 8; -#define BUILTIN_LED LED_BLUE // backward compatibility -#define LED_BUILTIN LED_BLUE - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 11; -static const uint8_t A1 = 12; -static const uint8_t A2 = 13; -static const uint8_t A3 = 5; -static const uint8_t A4 = 15; -static const uint8_t A5 = 16; - -static const uint8_t D0 = 44; // RX0 -static const uint8_t D1 = 43; // TX0 -static const uint8_t D2 = 46; -static const uint8_t D3 = 4; -static const uint8_t D4 = 3; -static const uint8_t D5 = 2; -static const uint8_t D6 = 14; -static const uint8_t D7 = 10; - -static const uint8_t D8 = 33; -static const uint8_t D9 = 38; -static const uint8_t D10 = 34; // SS -static const uint8_t D11 = 35; // MOSI -static const uint8_t D12 = 37; // MISO -static const uint8_t D13 = 36; // SCK -static const uint8_t SDA1 = 21; -static const uint8_t SCL1 = 0; - -static const uint8_t D14 = 45; // RTS -static const uint8_t D15 = 6; // CTS -static const uint8_t D16 = 1; // DTR -static const uint8_t D17 = 7; // DSR -static const uint8_t D18 = 47; -static const uint8_t D19 = 48; -static const uint8_t SDA = 18; -static const uint8_t SCL = 17; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/odroid_esp32/pins_arduino.h b/variants/odroid_esp32/pins_arduino.h deleted file mode 100644 index dc10a37cd8a..00000000000 --- a/variants/odroid_esp32/pins_arduino.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 15; -static const uint8_t SCL = 4; - -static const uint8_t SS = 22; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t ADC1 = 35; -static const uint8_t ADC2 = 36; - -#endif /* Pins_Arduino_h */ diff --git a/variants/onehorse32dev/pins_arduino.h b/variants/onehorse32dev/pins_arduino.h deleted file mode 100644 index 03cbbc1676c..00000000000 --- a/variants/onehorse32dev/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 5; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/openkb/pins_arduino.h b/variants/openkb/pins_arduino.h deleted file mode 100644 index c429cc3f32a..00000000000 --- a/variants/openkb/pins_arduino.h +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 16; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t LDR_PIN = 36; - -static const uint8_t SW1 = 16; -static const uint8_t SW2 = 14; - - -static const uint8_t BT_LED = 17; -static const uint8_t WIFI_LED = 2; -static const uint8_t NTP_LED = 15; -static const uint8_t IOT_LED = 12; - -static const uint8_t BUZZER = 13; - -static const uint8_t INPUT1 = 32; -static const uint8_t INPUT2 = 33; -static const uint8_t INPUT3 = 34; -static const uint8_t INPUT4 = 35; - -static const uint8_t OUTPUT1 = 26; -static const uint8_t OUTPUT2 = 27; - -static const uint8_t SDA0 = 21; -static const uint8_t SCL0 = 22; - -#define WIRE1_PIN_DEFINED 1 // See Wire.cpp at bool TwoWire::initPins(int sdaPin, int sclPin) -static const uint8_t SDA1 = 4; -static const uint8_t SCL1 = 5; - -static const uint8_t KB_GPIO18 = 18; -static const uint8_t KB_GPIO19 = 19; -static const uint8_t KB_GPIO23= 23; - -#endif /* Pins_Arduino_h */ diff --git a/variants/oroca_edubot/pins_arduino.h b/variants/oroca_edubot/pins_arduino.h deleted file mode 100644 index e9322abb9c9..00000000000 --- a/variants/oroca_edubot/pins_arduino.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 17; -static const uint8_t RX = 16; - -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -static const uint8_t SS = 2; -static const uint8_t MOSI = 18; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - - -static const uint8_t A0 = 34; -static const uint8_t A1 = 39; -static const uint8_t A2 = 36; -static const uint8_t A3 = 33; - -static const uint8_t D0 = 4; -static const uint8_t D1 = 16; -static const uint8_t D2 = 17; -static const uint8_t D3 = 22; -static const uint8_t D4 = 23; -static const uint8_t D5 = 5; -static const uint8_t D6 = 18; -static const uint8_t D7 = 19; -static const uint8_t D8 = 33; - -// vbat measure -static const uint8_t VBAT = 35; - - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/pico32/pins_arduino.h b/variants/pico32/pins_arduino.h deleted file mode 100644 index 27ecc063483..00000000000 --- a/variants/pico32/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/piranha_esp-32/pins_arduino.h b/variants/piranha_esp-32/pins_arduino.h deleted file mode 100644 index aa170ca1605..00000000000 --- a/variants/piranha_esp-32/pins_arduino.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A11 = 0; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T1 = 0; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/pocket_32/pins_arduino.h b/variants/pocket_32/pins_arduino.h deleted file mode 100644 index 325331dbb26..00000000000 --- a/variants/pocket_32/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 16; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/quantum/pins_arduino.h b/variants/quantum/pins_arduino.h deleted file mode 100644 index 27ecc063483..00000000000 --- a/variants/quantum/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/redpill_esp32s3/pins_arduino.h b/variants/redpill_esp32s3/pins_arduino.h deleted file mode 100644 index 4c3672d263f..00000000000 --- a/variants/redpill_esp32s3/pins_arduino.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x1001 - -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT + 3; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 16; -static const uint8_t MISO = 17; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/redpill_esp32s3/tinyuf2.bin b/variants/redpill_esp32s3/tinyuf2.bin deleted file mode 100644 index 3b10b6f1fc8e1a9fe24a2bf9ef9c595187dea218..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151648 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

    G%i`oIL~9(?6(O-am8*P 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 P(ra$M)Oq&JzxDoKaYg;J diff --git a/variants/roboheart_hercules/pins_arduino.h b/variants/roboheart_hercules/pins_arduino.h deleted file mode 100644 index fc98590040f..00000000000 --- a/variants/roboheart_hercules/pins_arduino.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// Motor driver pins -#define MOTOR_A_IN1 25 // PHASE/IN1 -#define MOTOR_A_IN2 26 // ENABLE/IN2 - -#define MOTOR_B_IN1 27 // PHASE/IN1 -#define MOTOR_B_IN2 32 // ENABLE/IN2 - -#define MOTOR_C_IN1 33 // PHASE/IN1 -#define MOTOR_C_IN2 4 // ENABLE/IN2 - -#define SLEEP_MOTOR_ABC 2 // nSLEEP - -#define LED_ROBOHEART 14 // Built in LED -#define BUILTIN_LED LED_ROBOHEART // backward compatibility -#define LED_BUILTIN LED_ROBOHEART - -#define BUTTON_ROBOHEART 0 // Button - -// I2C IMU sensor -#define IMU_SDA 21 -#define IMU_SCL 22 - -#define RXD1 16 -#define TXD1 17 - -// GSM Vela connector board pins -#define GSM_PWRKEY 12 -#define GSM_DTR 13 -#define GSM_CTS 15 -#define GSM_RTS 14 -#define GSM_TX TXD1 -#define GSM_RX RXD1 -#define BATTERY_PIN 36 // Battery ADC pin - -static const uint8_t TX = 35; -static const uint8_t RX = 34; - -static const uint8_t TXD2 = 17; -static const uint8_t RXD2 = 16; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t G23 = 23; -static const uint8_t G19 = 19; -static const uint8_t G18 = 18; -static const uint8_t G3 = 3; -static const uint8_t G16 = 16; -static const uint8_t G21 = 21; -static const uint8_t G2 = 2; -static const uint8_t G12 = 12; -static const uint8_t G15 = 15; -static const uint8_t G35 = 35; -static const uint8_t G36 = 36; -static const uint8_t G25 = 25; -static const uint8_t G26 = 26; -static const uint8_t G1 = 1; -static const uint8_t G17 = 17; -static const uint8_t G22 = 22; -static const uint8_t G5 = 5; -static const uint8_t G13 = 13; -static const uint8_t G0 = 0; -static const uint8_t G34 = 34; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sensebox_mcu_esp32s2/bootloader-tinyuf2.bin b/variants/sensebox_mcu_esp32s2/bootloader-tinyuf2.bin deleted file mode 100644 index 3e0f1f360a3bd8c0f65b15da7f147b706d22cf9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22848 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 - -#define USB_VID 0x303A -#define USB_PID 0x81B8 -#define USB_MANUFACTURER "senseBox" -#define USB_PRODUCT "MCU-S2 ESP32S2" -#define USB_SERIAL "" // Empty string for MAC adddress - -// Default USB FirmwareMSC Settings -#define USB_FW_MSC_VENDOR_ID "senseBox" // max 8 chars -#define USB_FW_MSC_PRODUCT_ID "MCU-S2 ESP32S2" // max 16 chars -#define USB_FW_MSC_PRODUCT_REVISION "1.00" // max 4 chars -#define USB_FW_MSC_VOLUME_NAME "senseBox" // max 11 chars -#define USB_FW_MSC_SERIAL_NUMBER 0x00000000 - -#define PIN_NEOPIXEL 1 // NeoPixel LED -#define NEOPIXEL_PIN 1 // NeoPixel LED -#define NEOPIXEL_NUM 1 // number of neopixels - -// Default I2C QWIIC-Ports -static const uint8_t SDA = 39; -static const uint8_t SCL = 40; -#define PIN_QWIIC_SDA 39 -#define PIN_QWIIC_SCL 40 - -// Secondary I2C MPU6050 -#define WIRE1_PIN_DEFINED 1 // See Wire.cpp at bool TwoWire::initPins(int sdaPin, int sclPin) -static const uint8_t SCL1 = 42; -static const uint8_t SDA1 = 45; -#define PIN_I2C_SCL 42 -#define PIN_I2C_SDA 45 -#define PIN_I2C_INT 46 - -// SPI -static const uint8_t SS = 42; -static const uint8_t MOSI = 35; -static const uint8_t SCK = 36; -static const uint8_t MISO = 37; - -// XBEE Pins -#define PIN_XBEE_ENABLE 41 -#define PIN_XBEE_INT 33 -#define PIN_XBEE_CS 34 -#define PIN_XBEE_MOSI 35 -#define PIN_XBEE_SCLK 36 -#define PIN_XBEE_MISO 37 -#define PIN_XBEE_RESET 38 -#define PIN_XBEE_TXD 17 -#define PIN_XBEE_RXD 18 - -// Alias XB1 -#define PIN_XB1_ENABLE 41 -#define PIN_XB1_INT 33 -#define PIN_XB1_CS 34 -#define PIN_XB1_MOSI 35 -#define PIN_XB1_SCLK 36 -#define PIN_XB1_MISO 37 -#define PIN_XB1_RESET 38 -#define PIN_XB1_TXD 17 -#define PIN_XB1_RXD 18 - -// IO Pins -#define PIN_LED 1 -#define PIN_IO2 2 -#define PIN_IO3 3 -#define PIN_IO4 4 -#define PIN_IO5 5 -#define PIN_IO6 6 -#define PIN_IO7 7 -#define IO_ENABLE 8 - -static const uint8_t A2 = PIN_IO2; -static const uint8_t A3 = PIN_IO3; -static const uint8_t A4 = PIN_IO4; -static const uint8_t A5 = PIN_IO5; -static const uint8_t A6 = PIN_IO6; -static const uint8_t A7 = PIN_IO7; - -static const uint8_t D2 = PIN_IO2; -static const uint8_t D3 = PIN_IO3; -static const uint8_t D4 = PIN_IO4; -static const uint8_t D5 = PIN_IO5; -static const uint8_t D6 = PIN_IO6; -static const uint8_t D7 = PIN_IO7; - -// UART Port -static const uint8_t TX = 43; -static const uint8_t RX = 44; -#define PIN_UART_TXD 43 -#define PIN_UART_RXD 44 -#define PIN_UART_ENABLE 26 - -// UART XBee -static const uint8_t TX1 = 17; -static const uint8_t RX1 = 18; - -// PD-Sensor -#define PD_SENSE 14 -#define PD_ENABLE 21 -#define PIN_PD_ENABLE 21 - -// SD-Card -#define VSPI_MISO 13 -#define VSPI_MOSI 11 -#define VSPI_SCLK 12 -#define VSPI_SS 10 -#define SD_ENABLE 9 - -#define PIN_SD_ENABLE 9 -#define PIN_SD_CS 10 -#define PIN_SD_MOSI 11 -#define PIN_SD_SCLK 12 -#define PIN_SD_MISO 13 - -// USB -#define PIN_USB_DM 19 -#define PIN_USB_DP 20 - -// Touch Pins -static const uint8_t T2 = PIN_IO2; -static const uint8_t T3 = PIN_IO3; -static const uint8_t T4 = PIN_IO4; -static const uint8_t T5 = PIN_IO5; -static const uint8_t T6 = PIN_IO6; -static const uint8_t T7 = PIN_IO7; - - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - - -#endif /* Pins_Arduino_h */ diff --git a/variants/sensebox_mcu_esp32s2/tinyuf2.bin b/variants/sensebox_mcu_esp32s2/tinyuf2.bin deleted file mode 100644 index bdc4d839ed7eb9433d7dbc365d69009376e606f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 154912 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 QsQ%+>$C}lh({Bv?4=BeA2LJ#7 diff --git a/variants/sensebox_mcu_esp32s2/variant.cpp b/variants/sensebox_mcu_esp32s2/variant.cpp deleted file mode 100644 index 311f69b8d35..00000000000 --- a/variants/sensebox_mcu_esp32s2/variant.cpp +++ /dev/null @@ -1,55 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - //enable IO Pins by default - pinMode(IO_ENABLE, OUTPUT); - digitalWrite(IO_ENABLE,LOW); - - //reset RGB - pinMode(PIN_NEOPIXEL, OUTPUT); - digitalWrite(PIN_NEOPIXEL, LOW); - - //enable XBEE by default - pinMode(PIN_XB1_ENABLE, OUTPUT); - digitalWrite(PIN_XB1_ENABLE, LOW); - - //enable UART by default - pinMode(PIN_UART_ENABLE, OUTPUT); - digitalWrite(PIN_UART_ENABLE, LOW); - - //enable PD-Sensor by default - pinMode(PD_ENABLE, OUTPUT); - digitalWrite(PD_ENABLE, HIGH); - -} -} diff --git a/variants/sonoff_dualr3/pins_arduino.h b/variants/sonoff_dualr3/pins_arduino.h deleted file mode 100644 index e7d6c6c1555..00000000000 --- a/variants/sonoff_dualr3/pins_arduino.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t BUTTON = 0; -static const uint8_t LED_LINK = 13; -static const uint8_t RELAY_2 = 14; -static const uint8_t RELAY_1 = 27; -static const uint8_t SWITCH_2 = 33; -static const uint8_t SWITCH_1 = 32; - -static const uint8_t CSE7761_TX = 25; -static const uint8_t CSE7761_RX = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sparkfun_esp32_iot_redboard/pins_arduino.h b/variants/sparkfun_esp32_iot_redboard/pins_arduino.h deleted file mode 100644 index abef21cdbbd..00000000000 --- a/variants/sparkfun_esp32_iot_redboard/pins_arduino.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t LED_BUILTIN = 18; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -#define NEO_PIXEL 2 //WS2812 LED -static const uint8_t RGB_BUILTIN = (SOC_GPIO_PIN_COUNT+NEO_PIXEL); -#define RGB_BUILTIN RGB_BUILTIN // necessary to make digitalWrite/digitalMode find it -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sparkfun_esp32c6_qwiic_pocket/pins_arduino.h b/variants/sparkfun_esp32c6_qwiic_pocket/pins_arduino.h deleted file mode 100644 index 06bfee15b29..00000000000 --- a/variants/sparkfun_esp32c6_qwiic_pocket/pins_arduino.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = 23; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 6; -static const uint8_t SCL = 7; - -static const uint8_t SS = 2; -static const uint8_t MOSI = 3; -static const uint8_t MISO = 4; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sparkfun_esp32c6_thing_plus/pins_arduino.h b/variants/sparkfun_esp32c6_thing_plus/pins_arduino.h deleted file mode 100644 index 60bd42884d1..00000000000 --- a/variants/sparkfun_esp32c6_thing_plus/pins_arduino.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define PIN_NEOPIXEL 23 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 6; -static const uint8_t SCL = 7; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 20; -static const uint8_t MISO = 21; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; -static const uint8_t A6 = 6; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sparkfun_lora_gateway_1-channel/pins_arduino.h b/variants/sparkfun_lora_gateway_1-channel/pins_arduino.h deleted file mode 100755 index 529ee3d003c..00000000000 --- a/variants/sparkfun_lora_gateway_1-channel/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const int LED_BUILTIN = 17; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 16; -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/sparkfun_pro_micro_esp32c3/pins_arduino.h b/variants/sparkfun_pro_micro_esp32c3/pins_arduino.h deleted file mode 100644 index 8c29399fc63..00000000000 --- a/variants/sparkfun_pro_micro_esp32c3/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x1B4F -#define USB_PID 0x0035 -#define USB_MANUFACTURER "SparkFun" -#define USB_PRODUCT "SparkFun_Pro_Micro-ESP32C3" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t LED_BUILTIN = 10; - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; - -static const uint8_t D0 = 0; -static const uint8_t D1 = 1; -static const uint8_t D2 = 2; -static const uint8_t D3 = 3; -static const uint8_t D4 = 4; -static const uint8_t D5 = 5; -static const uint8_t D6 = 6; -static const uint8_t D7 = 7; -static const uint8_t D8 = 8; -static const uint8_t D9 = 9; -static const uint8_t D10 = 10; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 6; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 3; -static const uint8_t MISO = 1; -static const uint8_t SCK = 0; - -static const uint8_t PIN_I2S_SCK = 6; // Frame clock, no bit clock -static const uint8_t PIN_I2S_SD_DOUT = 7; // data out -static const uint8_t PIN_I2S_SD_IN = 5; // data in -static const uint8_t PIN_I2S_FS = 10; // frame select - -#endif /* Pins_Arduino_h */ diff --git a/variants/tamc_termod_s3/pins_arduino.h b/variants/tamc_termod_s3/pins_arduino.h deleted file mode 100644 index 637da583243..00000000000 --- a/variants/tamc_termod_s3/pins_arduino.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// This board has no NeoLED or any User LED - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t BAT_LV = 1; -static const uint8_t CHG = 2; -static const uint8_t TFT_CS = 10; -static const uint8_t TFT_DC = 18; -static const uint8_t TFT_RST = 14; -static const uint8_t TFT_BCKL = 48; // TFT Backlight is enabled by soldering JP2 together -static const uint8_t SD_CS = 21; -static const uint8_t SD_CD = 47; // uSD Card Detect is enabled by soldering JP1 together. - -#define DISPLAY_PORTRAIT 2 -#define DISPLAY_LANDSCAPE 3 -#define DISPLAY_PORTRAIT_FLIP 0 -#define DISPLAY_LANDSCAPE_FLIP 1 - -#define DISPLAY_WIDTH 240 -#define DISPLAY_HEIGHT 320 - -/** - * Get battery voltage in volts - * @return Battery voltage in volts - */ -float getBatteryVoltage(); -/** - * Get battery level in percent - * @return Battery level in percent(0-100) - */ -float getBatteryCapacity(); -/** - * Get battery charge state - * @return Battery charge state(true=charging, false=not charging) - */ -bool getChargingState(); -/** - * Set on charge start callback - * @param func On charge start Callback function - */ -void setOnChargeStart(void (*func)()); -/** - * Set on charge end callback - * @param func On charge end Callback function - */ -void setOnChargeEnd(void (*func)()); - -#endif /* Pins_Arduino_h */ diff --git a/variants/tamc_termod_s3/variant.cpp b/variants/tamc_termod_s3/variant.cpp deleted file mode 100644 index 72bbf62614d..00000000000 --- a/variants/tamc_termod_s3/variant.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#include "Arduino.h" - -float getBatteryVoltage() { - int analogVolt = analogReadMilliVolts(1); - float voltage = analogVolt / 1000.0; - voltage = voltage * (100.0+200.0) / 200.0; - return voltage; -} - -float getBatteryCapacity() { - float voltage = getBatteryVoltage(); - float capacity = (voltage - 3.3) / (4.2 - 3.3) * 100.0; - capacity = constrain(capacity, 0, 100); - return capacity; -} - -bool getChargingState() { - return !digitalRead(CHG); -} - -void (*__onChargeStart__)(); -void (*__onChargeEnd__)(); -void setOnChargeStart(void (*func)()) { __onChargeStart__ = func; } -void setOnChargeEnd(void (*func)()) { __onChargeEnd__ = func; } - -void ARDUINO_ISR_ATTR chargeIsr() { - if (getChargingState()) { - __onChargeStart__(); - } else { - __onChargeEnd__(); - } -} - -extern "C" void initVariant(void){ - pinMode(CHG, INPUT_PULLUP); - attachInterrupt(CHG, chargeIsr, CHANGE); - analogReadResolution(12); -} diff --git a/variants/tbeam/pins_arduino.h b/variants/tbeam/pins_arduino.h deleted file mode 100644 index b27a913e1ff..00000000000 --- a/variants/tbeam/pins_arduino.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 18 // GPIO18 - SX1276 CS -#define LORA_RST 23 // GPIO23 - SX1276 RST -#define LORA_IRQ 26 // GPIO26 - SX1276 IO0 -#define LORA_IO0 LORA_IRQ // alias -#define LORA_IO1 33 // GPIO33 - SX1276 IO1 -> wired on pcb AND connected to header pin LORA1 -#define LORA_IO2 32 // GPIO32 - SX1276 IO2 -> wired on pcb AND connected to header pin LORA2 - -static const uint8_t KEY_BUILTIN = 39; - -static const uint8_t LED_BUILTIN = 14; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A14 = 13; -static const uint8_t A16 = 14; -static const uint8_t A18 = 25; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T4 = 13; -static const uint8_t T6 = 14; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-lora32-v1/pins_arduino.h b/variants/ttgo-lora32-v1/pins_arduino.h deleted file mode 100644 index b637cc51799..00000000000 --- a/variants/ttgo-lora32-v1/pins_arduino.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// I2C OLED Display works with SSD1306 driver -#define OLED_SDA 4 -#define OLED_SCL 15 -#define OLED_RST 16 - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 18 // GPIO18 - SX1276 CS -#define LORA_RST 14 // GPIO14 - SX1276 RST -#define LORA_IRQ 26 // GPIO26 - SX1276 IRQ (interrupt request) - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-lora32-v2/pins_arduino.h b/variants/ttgo-lora32-v2/pins_arduino.h deleted file mode 100644 index 3d5a0b36f3c..00000000000 --- a/variants/ttgo-lora32-v2/pins_arduino.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// I2C OLED Display works with SSD1306 driver -#define OLED_SDA 21 -#define OLED_SCL 22 -#define OLED_RST 16 - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 18 // GPIO18 - SX1276 CS -#define LORA_RST 12 // GPIO14 - SX1276 RST -#define LORA_IRQ 26 // GPIO26 - SX1276 IRQ (interrupt request) - -// SD card -#define SD_SCK 14 -#define SD_MISO 2 -#define SD_MOSI 15 -#define SD_CS 13 - -static const uint8_t LED_BUILTIN = 22; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-lora32-v21new/pins_arduino.h b/variants/ttgo-lora32-v21new/pins_arduino.h deleted file mode 100644 index a333d80917d..00000000000 --- a/variants/ttgo-lora32-v21new/pins_arduino.h +++ /dev/null @@ -1,83 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -/************************* -* Definitions for TTGO-Lora32-V2.1.6 Boards -* Labeled with T3 v1.6 20180606 -* or sold as TTGO-LoRa32 2.1 Revision 1.6 -************************/ - -#include - -// I2C OLED Display works with SSD1306 driver -#define OLED_SDA 21 -#define OLED_SCL 22 -#define OLED_RST 16 - -// SPI LoRa Radio -#define LORA_SCK 5 // GPIO5 - SX1276 SCK -#define LORA_MISO 19 // GPIO19 - SX1276 MISO -#define LORA_MOSI 27 // GPIO27 - SX1276 MOSI -#define LORA_CS 18 // GPIO18 - SX1276 CS -#define LORA_RST 23 // GPIO23 - SX1276 RST -#define LORA_IRQ 26 // GPIO26 - SX1276 IRQ (interrupt request) -#define LORA_D1 33 // GPIO33 - SX1276 IO1 (for LMIC Arduino library) -#define LORA_D2 32 // GPIO32 - SX1276 IO2 - -// SD card -#define SD_SCK 14 -#define SD_MISO 2 -#define SD_MOSI 15 -#define SD_CS 13 - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 27; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-t-oi-plus/pins_arduino.h b/variants/ttgo-t-oi-plus/pins_arduino.h deleted file mode 100644 index 782b5fb4342..00000000000 --- a/variants/ttgo-t-oi-plus/pins_arduino.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 3; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 19; -static const uint8_t SCL = 18; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A1 = 2; -static const uint8_t A2 = 4; -static const uint8_t A3 = 5; - -static const uint8_t BAT_ADC_PIN = 2; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-t1/pins_arduino.h b/variants/ttgo-t1/pins_arduino.h deleted file mode 100644 index e6024f0ac5b..00000000000 --- a/variants/ttgo-t1/pins_arduino.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t LED_BUILTIN = 22; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SDA = 21; -// Despite the many diagrams from TTGO showing SCL on pin 22, due to the on-board LED -// also on this pin it is better to shift to 23 instead to avoid issues. -static const uint8_t SCL = 23; - -// These are the settings used for the on-board SD card slot -static const uint8_t SS = 13; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 2; -static const uint8_t SCK = 14; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-t7-v13-mini32/pins_arduino.h b/variants/ttgo-t7-v13-mini32/pins_arduino.h deleted file mode 100755 index eecb5dc5817..00000000000 --- a/variants/ttgo-t7-v13-mini32/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t LED_BUILTIN = 22; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ttgo-t7-v14-mini32/pins_arduino.h b/variants/ttgo-t7-v14-mini32/pins_arduino.h deleted file mode 100755 index 496141a7364..00000000000 --- a/variants/ttgo-t7-v14-mini32/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t LED_BUILTIN = 19; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/turta_iot_node/pins_arduino.h b/variants/turta_iot_node/pins_arduino.h deleted file mode 100644 index 64ebeb17172..00000000000 --- a/variants/turta_iot_node/pins_arduino.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// LED -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -// UART -static const uint8_t TX = 10; -static const uint8_t RX = 9; - -// I2C -static const uint8_t SDA = 23; -static const uint8_t SCL = 22; - -// SPI -static const uint8_t SS = 21; -static const uint8_t MOSI = 18; -static const uint8_t MISO = 19; -static const uint8_t SCK = 5; - -// Analog Inputs -static const uint8_t A0 = 4; -static const uint8_t A1 = 25; -static const uint8_t A2 = 26; -static const uint8_t A3 = 27; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A8 = 38; - -// Right side -static const uint8_t T0 = 4; -static const uint8_t T1 = 25; -static const uint8_t T2 = 26; -static const uint8_t T3 = 27; -static const uint8_t T4 = 32; -static const uint8_t T5 = 33; -static const uint8_t T6 = 34; -static const uint8_t T7 = 35; - -// Left side -static const uint8_t T8 = 22; -static const uint8_t T9 = 23; -static const uint8_t T10 = 10; -static const uint8_t T11 = 9; -static const uint8_t T12 = 21; -static const uint8_t T13 = 5; -static const uint8_t T14 = 18; -static const uint8_t T15 = 19; - -// Module -static const uint8_t T16 = 37; -static const uint8_t T17 = 14; -static const uint8_t T18 = 2; -static const uint8_t T19 = 38; - -// DAC -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/twatch/pins_arduino.h b/variants/twatch/pins_arduino.h deleted file mode 100644 index e10a0d6a8e1..00000000000 --- a/variants/twatch/pins_arduino.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -// touch screen -#define TP_SDA 23 -#define TP_SCL 32 -#define TP_INT 38 - -// Interrupt IO port -#define RTC_INT 37 -#define APX20X_INT 35 -#define BMA42X_INT1 39 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -//Serial1 Already assigned to GPS LORA -#define TX1 33 -#define RX1 34 - -// Already assigned to BMA423 PCF8563 and external extensions -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; -// SPI has been configured as an SD card slot and must be removed when downloading -static const uint8_t SS = 13; -static const uint8_t MOSI = 15; -static const uint8_t MISO = 2; -static const uint8_t SCK = 14; -// Externally programmable IO -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_edu_esp32/pins_arduino.h b/variants/uPesy_edu_esp32/pins_arduino.h deleted file mode 100644 index 64fea337a89..00000000000 --- a/variants/uPesy_edu_esp32/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 33; -static const uint8_t A1 = 32; -static const uint8_t A2 = 35; -static const uint8_t A3 = 34; -static const uint8_t A4 = 36; -static const uint8_t A5 = 39; - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN - -#define PIN_WIRE_SDA SDA // backward compatibility -#define PIN_WIRE_SCL SCL // backward compatibility - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 26; -static const uint8_t D3 = 25; -static const uint8_t D4 = 17; -static const uint8_t D5 = 16; -static const uint8_t D6 = 27; -static const uint8_t D7 = 14; -static const uint8_t D8 = 12; -static const uint8_t D9 = 13; -static const uint8_t D10 = 5; -static const uint8_t D11 = 23; -static const uint8_t D12 = 19; -static const uint8_t D13 = 18; - -#define PIN_SPI_SS SS // backward compatibility -#define PIN_SPI_MOSI MOSI // backward compatibility -#define PIN_SPI_MISO MISO // backward compatibility -#define PIN_SPI_SCK SCK // backward compatibility - -#define PIN_A0 A0 // backward compatibility - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_esp32_wroom_devkit/pins_arduino.h b/variants/uPesy_esp32_wroom_devkit/pins_arduino.h deleted file mode 100644 index 467c58c0034..00000000000 --- a/variants/uPesy_esp32_wroom_devkit/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_esp32_wrover_devkit/pins_arduino.h b/variants/uPesy_esp32_wrover_devkit/pins_arduino.h deleted file mode 100644 index 467c58c0034..00000000000 --- a/variants/uPesy_esp32_wrover_devkit/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_esp32c3_basic/pins_arduino.h b/variants/uPesy_esp32c3_basic/pins_arduino.h deleted file mode 100644 index 62c27c4c051..00000000000 --- a/variants/uPesy_esp32c3_basic/pins_arduino.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303A -#define USB_PID 0x8195 -#define USB_MANUFACTURER "uPesy Electronics" -#define USB_PRODUCT "uPesy ESP32C3 Basic" -#define USB_SERIAL "" - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 3; -static const uint8_t SCL = 10; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -static const uint8_t VBAT_SENSE = 0; - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_esp32c3_mini/pins_arduino.h b/variants/uPesy_esp32c3_mini/pins_arduino.h deleted file mode 100644 index 041078e74af..00000000000 --- a/variants/uPesy_esp32c3_mini/pins_arduino.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303A -#define USB_PID 0x819B -#define USB_MANUFACTURER "uPesy Electronics" -#define USB_PRODUCT "uPesy ESP32C3 Mini" -#define USB_SERIAL "" - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 3; -static const uint8_t SCL = 10; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 6; -static const uint8_t MISO = 5; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -static const uint8_t VBAT_SENSE = 0; - -#endif /* Pins_Arduino_h */ diff --git a/variants/uPesy_esp32s3_basic/pins_arduino.h b/variants/uPesy_esp32s3_basic/pins_arduino.h deleted file mode 100644 index 76eded265bd..00000000000 --- a/variants/uPesy_esp32s3_basic/pins_arduino.h +++ /dev/null @@ -1,82 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8192 -#define USB_MANUFACTURER "uPesy Electronics" -#define USB_PRODUCT "uPesy ESP32S3 Basic" -#define USB_SERIAL "" - - -static const uint8_t RGB_DATA = 38; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 43; -static const uint8_t RX = 44; -static const uint8_t TX0 = 43; -static const uint8_t RX0 = 44; - -static const uint8_t TX1 = 17; -static const uint8_t RX1 = 18; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t MTMS = 42; -static const uint8_t MTDI = 41; -static const uint8_t MTDO = 40; -static const uint8_t MTCK = 39; - - - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_feathers2/pins_arduino.h b/variants/um_feathers2/pins_arduino.h deleted file mode 100644 index edcde26ac71..00000000000 --- a/variants/um_feathers2/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x239A -#define USB_PID 0x80AB -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "FeatherS2" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t LDO_2_POWER = 21; - -static const uint8_t APA_DATA = 40; -static const uint8_t APA_CLK = 45; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_feathers2neo/pins_arduino.h b/variants/um_feathers2neo/pins_arduino.h deleted file mode 100644 index d66d565d280..00000000000 --- a/variants/um_feathers2neo/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x80B4 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "FeatherS2 Neo" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t A2 = 14; -static const uint8_t A3 = 12; -static const uint8_t A4 = 6; -static const uint8_t A5 = 5; -static const uint8_t A6 = 1; -static const uint8_t A7 = 3; -static const uint8_t A8 = 7; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; - - -static const uint8_t T1 = 1; -static const uint8_t T3 = 3; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t NEOPIXEL_MATRIX_DATA = 21; -static const uint8_t NEOPIXEL_MATRIX_PWR = 4; - -static const uint8_t NEOPIXEL_DATA = 40; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (NEOPIXEL_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t NEOPIXEL_PWR = 39; - -static const uint8_t VBAT_SENSE = 2; -static const uint8_t VBUS_SENSE = 34; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_feathers3/bootloader_tinyuf2.bin b/variants/um_feathers3/bootloader_tinyuf2.bin deleted file mode 100644 index 5a2cde3f57abf72053c61c1d71fbc892c9bf0f59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22736 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 diff --git a/variants/um_feathers3/partitions_tinyuf2.csv b/variants/um_feathers3/partitions_tinyuf2.csv deleted file mode 100644 index 003418ceac2..00000000000 --- a/variants/um_feathers3/partitions_tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 11968K, diff --git a/variants/um_feathers3/pins_arduino.h b/variants/um_feathers3/pins_arduino.h deleted file mode 100644 index 804a60d28e4..00000000000 --- a/variants/um_feathers3/pins_arduino.h +++ /dev/null @@ -1,68 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80D6 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "FeatherS3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; - -static const uint8_t T1 = 1; -static const uint8_t T3 = 3; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T14 = 14; - -static const uint8_t VBAT_SENSE = 2; -static const uint8_t VBUS_SENSE = 34; - -// User LED -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -static const uint8_t RGB_DATA = 40; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 - -static const uint8_t RGB_PWR = 39; -static const uint8_t LDO2 = 39; -static const uint8_t LED = 13; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_feathers3/tinyuf2.bin b/variants/um_feathers3/tinyuf2.bin deleted file mode 100644 index 178044761cdc48bb72002bc66513dc388d9bf158..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157296 zcmeFa30zc1wm)8dd!fNL=>{dl<#}oC*g7uFq9DPsyIBNR1U1G<9yHJh30s;*(U>X&F2bk?!MVk#%~y7{s8YI;TabjIi0ca`KMpB~#*aow*!t)BVPlGgSA{`dcg{9w)|Q^On222a?v?01ttZ}{}vy*=~(EBq^s z%)A-U0H`)G^G9*aO!byeV&*Eq%YboFNWWiQ8ZI2iur z@IN)2ndbw}1BQ9sj-kwaeV7;*4fkQdwvo&{QOnG3z&-F&m>?ZMalUY0?hK@_22RgJ zGjm%EGY7#>;oD)&6lUIp^f06yp25szb3`~ZyW8)JyHod>SwCEMF6!>+(N2ro$H^}5nAysjjM zHx(E2Nast7Cm^vPppPsmwxT|=gcT%o*OFRVSeRG1gfA-OOW@{P`K%(Fm0xPH;j?n{ipTMprFPzeHuFm0&C9p*%ku2Gd_ifxJ#V~FrlhpExX5PjiA}Gj;&QE7 zkMj0hi=B^~J0~%DdU|4NLPF~NxoPPO<|N0>O--P>t%a7%d}}tJSI8Gw3rn+#3Ul(7 z^w+^O8XH2N5W`@MLvg!pIbU3q2jo$ku2?LZmH((XJ`n{Ebay@?oPRWF1;1#%X%=5t zWao2=N(-~c@g?XP`iyGrMZm*uwG~?O`LIa_A$L(pR$hL-#a?6+s~(g+Xf%Ac&5m#A zh1ugvORP2wY__$(j?hHr*sPDm@Ve~&@?gUA^Rg`VJj_*IVNQ{)K=8-(mmerRV$HJi zg_Z(q3{Q`)q`$mGOiQh{64Whb{eir3MFquqAQXFEcfCK5Jz-WNpF{c6l1$-~CZl>? z$%F|#siYTKC#0o}PmWLYV$l<8td$dwFmw65DC2^{M+=LV6*4~w9>f!{%aRO^T*hV0 zwiXnD46;iLig}Qmp^PPGS+a7ie97{{EWX%c!;oNFF(pJ@r8aR;tu|YcZ5$}n$_rlJ zlAUd{mXz?8!fdRL6;`4s)TIZE85rQJv)E?MFS2C+)78fR3sLme^{+zh0b8Ek%4b@z ze#Ma~%E~IW*|1EP<TXedDaqIG|Rg4Bb1YGDapln&7Qr$yFPO)U>ki`Wy#9I zkPC|s^Wd8Sj5x2)D_m;H&&%cu3QEO##;|y6X6X{%T9#!k7S@H$YAGQSW@!R5OS4;x zd6u-yjQB@Irog~6(2Xohp#>DO%z~9JCII;*ORUr#LG*rUdyu22yEjcZfh|g{n#Ah}2_< zym%hL@ZQ0Q-oePOU`iZ$d7h=Dc|9hB&m&ZcB$H4Xd4y`nBUC`1NxsaJeV!}Z4l*VQy z%!wC0adQ{UnU5I8zEN_qZ2;!a#rgvR0Yd?!0OJ9Z0n-3UfO&w$fGj{hpcL>QfVF@s zz*ayF;3dF5z#%|F7tzq%losY2Odwq0PTMc8G*-{Vpi7}yV`hOsz-p=IZli2EgN z&%!Fi`VhGvkszuP7nC)dCFkc`mss+XiF8Y|Xt}VoenP=yfh*guHPAExv zcA+VucU@SCt$X8&a`Q65<$7T1tEdZgUv0Ultt+y-Hj2Wg>#Ii?x*p-UVncjh35zQZ z6P<9;i4dJg(U~MVlSL?j69zjsrvjW&j=psiX+8P+}y)z3-wPqF-Q59mAT&txxJ#9kB1kq-R@& zZLUX3fsnP|1Tkk`A*c)IwA&7p$%xLw_P2s?;8RVrdCO8uUOp{;oLjNaEXO%7FN+tN z_~C=0$ely4CEx^a5KTOZdW?|RBt&KR}b zGhT*ra&K8bxFz{kYjGb$7w0`6h0AqVxUrYN1HG;E~#d6{0RfU5K6?>-9T zb#2^OIv{tF-*nlb0nA!boKAv~jg>6N`L93-h$GOep;X`buq3zCo()-s7f%^B0evf^ zP^-i+@*2P0$(Upzq(dWL)h@y92g~pB@ zn~<71Hx({#qM61Cn$~hoe$g_b0K28+Q83+H9HcU>;40aWuClO~PUvIqasC!%_7VtW z*`@h7BVzzfDJgX5=~pc5yHrZ*+#aPs$lfOjE*SNbgErwSXJgDz1};dPpOl&w zVV*m8exhl97)cDVq1i=Q_T|M^KG$B5|MP%Y!HLZ*%3l8S*pe(;Ua|e>0d!2HQDC`dtO>4ny1>8LB+ zJK|VBPb(Q$j+L%gG6@d|0jL2=09L-RWArgIslv$xF)K$30{dsSAhFhkfO za0cUveHC~&ym7@W!w856ECM_PCKFUqD--82SC3hU!jFNuGm&0q+-b@jd9JmrjrJ{z8}i@Jc?p5V#~jL8HrF$k1WH3*&8I#$sX$FeokV_R}6Ih9H63VzBLstqFb1hMY;ecCjThFF((|+>5o)XW=jb z3d&Egs1PS9o42by61ux6L=xSJQQsfst{C4?-ab9vFp|LrvievdiP)KO5VS4L z%K}5gBF2H$j*}4`uSoAftTih=2f5O7N(-}aauSkzka3^Pwxrk!wj-<#i)~3M=`u(& z>{UYUSf*&5WL%j(0B>`u!4K zwhiH!t{h6Og;~o5F*v&vD+g?~D8E!treZG;+Q)7HT~i*W9^*#WD^QY_;vl|6D4(9Y zf+zVCg~676g(vXYc}vp;P5abdR~mhes5mCH6ZJnL-|q)ukJhK^N^fr+QT=PNI)RARjUjk5nlvtF(Cf1^>c!~fu1_DJ{k}Y)z*`F~U0};4XA^BgS=;PwyC8iCxT)iDOo} zucVN>XF=e?aCGQnZP95ebrEk~keHZ|$|o+EHLE|e>YY;%mio&&e*AdUnOT~XgY%ue zsE98iy%6nf{gvg#4WtQ zg2sU*F9Qee%E;r?FJ$e}Sf5OmG$(=v(JDv@|M1Xw3-sDU#SOw6#V@fIT5Zti(CwC2 zo$+Hx^_V0}KB;e(cW=_dEPA`$Up+m_i`rH3==Vd}z4=J5(_glp3obr2c_9}653INO zP{s%nTp_Oc^6csMvh?ht!k%~iea;7=F34?yF@dnz9 z`3@HSwdWgx9+%}ru(aEEk$AU^NRk(%IdEk`l1mqeo0w|4a21>`iljnBHx4*&L60J2 z>M?9Wgh*??1DOz&S7O8YLcCQKBS>b1WrlAnpo+Y^0(ohNAzmQlr2wYIo@*1;V>mNX z9z@~92lE=JYLn;ou>tr-K}h$>i<+}^>TDmKAY%f73Eq~Kw=ctSzQ2(xDb7n5>yg^VAdA%YxU_5(+VWa=`H z8=oaG+CnMPYmlZV2fGIpxLD<*abt}OkHaF6K_2f9n?j-CjYYINt*UuoZP_`2b3 z?uW)S&D&#OO%&6^CWIOq*VPq~wJ0ZtPAzl*SZ2e*vi5rl?4BdR7Kw(; zCv%SD^KsCp<0Q6SK5X)AvxsgF`b7h|eXKH(E-2B9Ep(+KV#EWA1mgs;t^^+o5o+o} zrjI)36!Ej;CwbXSFXFP3?xMeuOzEOQA)8Q#kCXLRh6sYBOp$nrThUD}2=Rvqs$09v zgI$Q`NnQ;W-Tw6C7HIdjdsyGqhQJ_kXz!OWL>@v%Gg5O3?3CuMM^Abk3FEz2CSG)e zDgHU8lAmq%+FoXn`3O|A%Zp%+CM5V21YXNabes4ucnfsDWOF5G@bdZP)?P-Lz1D)5 zFR$nadm_{YHGyq;F|k6?x{Fo|AyiNb4KP#$z=*gTZuZE)qkl3MTfDtCFCXw#CYY5% ziB0Dbkg6@e}W;3QV7r z9i@eNP?qp{-U>=^_hl3AhH@-WK?}ZY90P@06PAsGhxk0!757+I932F3Ux_mRbG{<% zgun|(kS|;Cb?uIQtlBODB+|p>#G_+G!PLi9XyX^C5-Xbgkg3UnPGlCae!wM|P-+4X zn-|c7cMt7v?)qr1Cl9;x))sUb3;qap-jhf77|^X{It;J+7>xO()E0~bvx}DSOE6ts zCV&(8`RIL45v)Fz5m`_zAR5>u(p+LmV6_wWU8QNf$W*q+Nc1{&fa8Md^tzIMPXPTh z8C;oSH~*o+9Nk8 z4`v7Kt?w9aTNrzz7_I!RUOzrvFrg9YS`Oy5*(2MOl=ee;R<9=9l}v;DjHj2dq{J0hj*t<6hsKY_dN>8} zIPb6=(TlGf)lqqeVL4-u za%3~+y2EniJ<8Eq-*JcKXaarxqcN(x({dPmUpe|#?&Uizhe7m}BYVAuJ1qy~eB}n9 z+`c<4hY9qRQ=#1cJ1xg|mm7$3uia@mV|Tf`P_FS#%awPRyBp<>-Dx>Yps#;Kt0(Tb z9M@Hj*7&JAE+^|MM||eY9hW1EDUnYE!F}hB%c;A{k=f$;J1)m}l^cw5^bnu%@f}*r zv@U6l(Rv};CpspYB>Ey+p?Rk{r1_w+rE#J@6aIt?)k}Qzf9nZFdr<&-s4rSTGzIWb zcqG90F)4*d0VqHD33LET_l56+Kc+{R>Y}jkp|D_7>W!fAR9~Vu?fxEN-#GZ9%6*>y zrVEwm_>x>pABXH@@Ao{U6t&UkVUxnbC)#nv47*2N={TsF=|l}tA|g7nzr*v7)FDcz zxa7tMd}sq!QTRTIbR=l1zbb(U4;x;(p-YEYO6qRHL)5bgYBoX8Ae=3}k0vuoH{M@` ziGntfGy#HDCMoPux7TW_ze1!*#;~Pl7g$6cwO62``yT;4@5M;B8Ms)JAfy*jQQXp} zFG2A>M!p9|S&x;%{G?}%;{;W+PdzNmI;y@+(dko+`}BFfd*=SSBF%kFEgJcwmWR_w(NXKZc%AIl(iO^8o@9ukM3{D^rOps=MH*+ zdqOKObli&s87fx*?MvfTt^e&?) z$^;W6Zx5J|vsXaW5DD~^o(D@hp#V(5yj>I{$aK&bA@WxjGTNH{N1x<5i430tvpJ?Ytk6=(th)ScUxNh_ zi8&MS6krp8!jVY)OS{MOXQ{Y#8Lcf>&|c4b8dTV#EW(Bj=YvUW$KHq@tt?q zhW~m?eI@P@&S=Zx@Hwlk#AbYxE2D9*BV88cJ zI#0;{zkHHmh=PmE%HvK5t- z!0sb|{G90%CkP1>%k0*|63cin{fO|Ai1F6^oQWm2tcjpZe2Cz4;LVy?V$Y_iY33TKS>p|Lf_olO^U{ zy@Xf;D>mWVQ|~y?So{$9&QqdG>&}!GmrUHGzvsu&*}tBg3h|BZjh-Do+;AglS;gYmKb8FQ8ZjfmwpP`u#0}Ydw9MTt3~!(Y#z*niNHD z&E_EmaE;B|4K;A9{_WUn@4=0{@9LwfI3J$Ob^gf*BA3Ro6LXdn9DXT|P2G@janax7 zjFqpH4gcNX_>^xiymxWP%=nG(&Q`p2xjg>bjK9CZjejM6->*Md9#{57{K)Z!pYbd= ze-*~Gk7_U3l>;BB^j`O`U<^w~|Y; zFS#V+l1s8Hxg_I~OR_DwKli#sq#uE9e}e!2j)9LCi2R}FTjUiWk)NKQM&PFr_-O=w z8iAii;HMGzX#{>6fuBa;rxEyR1b%P?y5$N{j>z5z{mExh##R8k1eqRi>C-6VW#|qG z?730KY`~c{ObGkp^Vc%73g8Pb#*pvRI>oKwn^83l$)$T2qLq|LQK&TkqtH_q9<5eL3lHhS@Pc0QI}fJPPm{ zfUSr!rUadwHfT+h(FkZlTsGp$5l7`e^1A=s3nk_1DC0Q5iB(a?m4HZq9#9Dwgm`M> z_NN%}Dc&?=KY5G;G5Y>fnd_OKv&PZ>jCcDn!=RJXwjYf$HUiEARL7!>27nPDQz-H4 z8_>j_i!vtt1$2z{as90*BYy^c1)K;|DnG!bIKP{Mmy5W;je^$(c4kR)qh4= zxE~=e;k+9D?SL|rBePvxXwpxU7TWXip}P2sn=y>cTMZNOqls|EH>sogedx2UuAdC< zWi9Kwx$OGjv&W@xFMEDpMtnJzPCqbAKXyEiek2XQt&E>W6h1QO{f$bmc1jC-81;95 zTI&oTxj7F1B;!;Xm;v=o+-tdJ=pXexj@Ma4)_dW!w+fSFw+-D4Y!*z(Cjgk$1;8 zQO5i)qm0A81J4Cq2MC5m;8d<}QRkKJI(&6){t9?~9c9d=G%&Od)DhhhW$d^dWpn{3 z-zbF7AkRCfBLwN^(UuGCWEL&AQ2He=4js4Qu(BQNs^iCT$iFG#5Q6+YaTta+nouXT zaXSw4kw!Qy>Fb9lx<32kbBjvw6&Wl$=m%rO34&334-)RNNP1B@z7&GNd~s1Be!DHl zR#bo=4ikQ>V_7ap3%@iW*w<4Y`WO&q7YoEsFp}eY{(xJr8U@>Y;d>SQav^Jty=ZpaXflQ9T5}@8>>==dn)gANz440L|Q(|5T3jq-`?QDWQP}z_#SxtPxFs#v_*4f&&7Pw zT^+`u3Vgyh4%GfX%R7FEf7PKaY9AlTWa5i8k&c&TGP+|d-i{G|Jz4#3GT)qRxSGu9 z^5-9YUiVkO>(4j)8?O2bMl4Cv%jHJ?Qz;)EX^b!!&q~W9GzP7K|1=0TB5n4+Aoa7d zB)r#%d;iH~cGh40K{Ee&vf)Ouu{=4YDmlZIT-hPQ*{BmbH5 z?*zSmq5s-{JmuXW`TfF$`j2PrGsk;D@=5Y6@k6+<;>f5bd}wkOXL3&17kE5>^Q=TW zmo&^cYzQ;%3t>h*+(x*A?q$ZNx0t!90`dy{{1RqP%EjM!d7PQI10RTzou#Nx$7JlC zJm><9s*Dam8RE(Tt*eSkQ2iE9u zA;@2T-ZKJcj9*4IHvQ6%UAGA~BB+%aH^a{9kN7?Q7vR1K@WXHDzXJCt;4GjOW5bs) za~<#>XMmgxs6+n^m=Bbfu=1!z&o33M19jt@RJQ9b{5JVg{LLZ4hXi9XfWU-pKsGysT{HzPa>^Hs;4oOV7P@+tHmxsj0h)wGXt zv7t!wL@8Ju+G@&*GHMYfD}HBolyM~aosD`_FRep8O3le>5y#XAkD+`q;Ed-l(?}nq zoP2WHX6SVE>!7E>{0vKZbJ`$42tW;p2SftK0Y(900j;pvc?fPUbQ5S$9gDe*CcqfS z0wMv~NL!6O)q;+MtXHmk_Q78V*oS!1gG}bR*cd=I;28jjCIgdCgF@yi#c=<05qQG= z8=wvFt@!mO#t#4MKt~r*S2N%%z;=W^pqKM#Gz&DXNU?$oCM| z2kJNH!u32~3NLGrkwO6EaXl6NL!O3Uh z4%#$e93ufTgk{LjYq(e=>dwX-+Q9?Pu$1)9u29{SS6 zS1h);&p_RGl}+v`9G18;1?_kSqwKNvI(VCB*b z9*I?mqtV}VINfvAPhXuqxNr!$UVQr zyBwik<|9poy3~L{0JIsn0AcH;&S#~4Nf*Zhpw?H;VSY3^??Q=MDZ-$-`@x$O> zggDY^y@NHd9sNENa1wT5?H(TVz60UypnY%-j~Zj^gi({h!OZx(U&f^HlhaNheOM>> zvj*z{VF_d9YPd4MS4g|`82B9A%Yb;q*#Q}VS%6^x1E2|MrvMiL`vHxBGk}i(?*JMA zF<6_bKxUi-x3~^+KlnU>0alG*E%+U1E;c8JsI75UCGxKZ%n#yXR{-ompcNQx8Bn$f zyjKk#oDCTEKJdmEV`(&cq?c*_I?zw)YZ%8_po92ERfZ9e1Ym$!fJJ~5z*5%HOTV}rn3;gWti1LKYP^f(b- z4!JNIYorSP*pD%8e`6q4&=%yVD!3N`5@0t7d9oqLehHn%1n5yug)(CZ;>zKlR0_&` z3-;&8dkUbqfd$i!dY<=qLjUUVd^8fo`?bgO6=>`m4P(z^L`cq~w$G!U$NrDUGYv^?Ov? zNB?SoiqoQqe)wg~+(s#@+F?5P<^wOra_8POR8>WuGqakL4{V9$YEHs1RWdZNw4m47KMe_Ga5 zt#SOObDPttL}S#C8dtVs7ZqI7;+bq=?&mt2WBpVCj@Kw|d_av$;&_$3?iV@_yE|0_ zT&Efxzo&@%Qq^u(=i&eK#_bj|ZSNeXQa$DP9R(b}6{5C^Q7=;f^}a-I=(C++n>+XH zV0@f9Y*VLYb7xGX!Em+d1&!-qW9WuXM-AoDt&}?4I^xNeHzy0-FgwCh8)Xb{ zn@o~Y%NG~htCp!9W=ajd=hhV$JDk}0_1zyU4snJTco7rt`xlhQA-qGAI$sUk$vGk@ z%6d+UF<(gD!*QLv<2zLW&ABWruG17pw4s+8wS?mssY6eBOv5`>fhs9twDE*TxQR{W zC?sJ#Z{MEDe<|h1%bLP9p@TbPw0f?I6KKer6&X_n^pPE8g%T-3?OGFMNR>&tYU+x2 z44`J$e2N8fLCRF}g-w0~C4px>frpL$CU!QNeJb@2W&5Q58g@AOh~@5c7WI?AlCf{3 zoMkYT@Rx6A?4s24Z=Li9HclKDt&|0uJ)xZ)d<}1XT6xYTIa0I8 zxR0;rYRia&C8UC*ov3Vr8LK}MB0T=XV~QqtxM*Ns|>*y4bX-k?a1LS zTldJV{vv*k&pVLdxI}MSr=JNy;XV8^$~!)#h|o_ufOCbw1uByq7sTAzj(YMOZ$nem zmN>K47;fQuR$DFszO^x&w{N;z9zxUc4wdl6HFtPa0}%ICSDb^bylMS7KsE66z(WIT z4y$#E%H~I<+7~YI2Wk!PHL2fwSr@h;^DTRE(@u2i1p;Hsvo2GlNrUp1RTLz{Dy zs-aZ=DJ8w1QHH+S@svB7(+5ro)mo&@Wy+`Ax?kdj0S(>TQ7;jaBwCBaigA=!pTMj3 zDJ96hn%YtgaXd$^W54kJ1HHw`QgN!FhdE=~s(QIDm(|OyIc%P*BbHY0I{CckY1H8U zr`P?p*WK=Qe*sqSTkdu502 zpu#tgFDcw*9eaM~X?|Hzg=wcej?#_|r5)=l*1kH{Vei;r7rY}jlytc59osglLber1AqtPRE8N9qYBKkkPM7 zR7xSg*j7DPS>ni|2>?Ql0P-BCgAw6Tp_PPdxs4|-PvNTlD^9d-)z&F@1~%Wo_Bnb; z@aPu?gf8shBh;Y_@aAidc3N9K;{$lYh00qPpUNAJcCDNHbTGGO3_Idd8}{~N^agY6_(h)|;m?Gcall4s$b zwuLQii$cdsgA=a1RfyMp=1Kgkhq)CUr~MAe9WPSb$FF#hA>x|iT{;I~0Qb0<+RZx- zQsPsGXYR(@YUfm{LlO|$C5*nnV?@3YcC)=f3vFz9xC{JJ;8#NX*eJ9Qj=&Yq( zbuW%%jw|hBlqzA3DKDGExo_O7F&;d^yX=mys4bCqebMezp3;w34!>MoR=KV^dW%+8 zowP;!wbQxghCnkGX1dTmI&!RER*>r0^i^8bC}RYFzjoy@Y-wv4yXTWDD!J)=dy`dD zCOfru=z^R{msJ6ZVeG`RQ?X@h*WC0xGCfH)UD{IbcT!S&nKSHCpO8dtyXcpdniS2QdUcXXLN)fZ{HO^cEz$+2cC1WGpG48hxqz|R;7RF zk@m5pMo; z0jCZe-q(IeS}$|#6-Pki$>DrxL%UYXa=3xJf7cE|v~~#N&UU}l9<_(V8_WG$L@nHQ z%d``LL$ca$D7dTh@Ne3Ix76`G)wkw~&}OiWbGX|#Jl9UkRjxhKfvU0ReC|25;^TnR z0fz#b+m&@I4sq7A7&!oLfBy4_OIK2|q+ z@=)#T9oQM~L5&wZ1p!}uA?^fc>iODh%6fV21w;mKyVd*w=h~ruar5-LrJ#Gc^)E`` z8*r1i@mL+y#S0$S3_f_pjk=|WxKp4`>ubv3vF)y-St+mZ#vQ!l->FBS`)1IqY|RJ2 zN8#Ns>$%giLsEe=ocf~j=;0+80$RO72_i)F3Bw)w3vo;}hZnaKlaTpFm9fJMXk788 zxo8$fcJZy?k+4E1cnVW>le1 zJ>Kf&-L(mdupn<0*6E6>FQrw#mN_)-p?9}eIm?@pHK|HA1E) z`5$mX%3C;wHNTU5jttTUlH~t)rL;$rYf9)ujx02 zFyVy0aS_|EtU4%Z*dM0no_mU`<6MUmTrRoe6PmB)C}5?Vj$u`N?E!1suWUM~NfbI> zF33~J&db+seAeYoaJ)|?d}}Q{Ko_Y9JMC?>c@i28E|a5G)er~*LaR=$VYeN+wu2+P z7T{5(GoZ>TDR+kbp;}%sg!$!8t6PlK{oG4ZtgU>s2FzZgc61XIv|6SrKy1S=doe>N z*0g#Emsco{;u>b?z56>WwBGYwjh?y6<)cGBvW`W+YNseLK*zuJV5}b7MVJ=9$m@Ql zz`@;Muwy$-NwH^S*fT!mKbF(V!g0?{)s7FS_d|z-F}7@{av8tjYe)AgSI>!M9M4gS zdPQ@%nBQG>b7gz;s9t%|21K2DuG8;pg}2l?D&>Cirgb6_1n@h=HGU~=JS}stzUgSc zfkf|`XdbR`m)|_2)ex!dDz}dC=0C#Sz2Whjjg7LV*E9!qIs-lmS(iB`V5jX=S{=7P zQ1@?41?~XOLg#_4(f*@1y`2dD z`E&qAwk~(!V$aUZF}W2dLe|-i)9?bf+QABUI^i&OmvxlTzJ)m+zKMy!c%POW;>Jj7 zKao2nIU#aTbMtT??%{4O_<|xV^=7U#+${~BtcVWGk?(XWzN8Rdx8>4VC{%Zmah2sGHT{9|SgTRc{Ud!^YrU zPQB92-`vgLtPHQ?_Gl%Bqr47wV<6VAaYpjCZ%H`)yfn4_ao)gf9?0itFo$-{Kv8!6?fl2 zKX>a5)z4}d`RT69Arkn}bkZD$UbzwW+zk;o@yydyp$YxwhU(t+;B2Hp+C*m+?WadC8UsAIozr->@#UGF9bV7n&0!S8I6dbC?H4cWhGJu{~*l9+0so zHMf`?ADkvY70510bBx@Y|6B*p)*Ki)73(yLKhWiY#vWNHh4M#i4} zozy2I@9vV34Xm#?QD7Iac-<}KcT4XNXA-I3rn~Ux?1IY~*XS`YDdU0+yMq#TNdwPH z0uMK?yv*~P*jXv{d(HFs&5aHCEvN5`{z4C_E0F&s&))EtppOqaQX8Ab%$s6Ke(Z`R z@bxXy;J4Z(&)hIJNtxV*&F$$MhA*XtsWN_~OV4SKBu(LlaRzNgnDfTi2*$TUayK>w z878^((i>8Y#pn?g!4-FzvDdBUjz_V1zr4ZX4dzrRX%kZByUc--MRFF;n^PrvEi)u6 z)^_YI|M@3VxGKB?rDiV3EFEcFH5RKGvR-XpfYSYWjGTh#pycXx&cf6Zp5bQx7g9;vbu2BA4}Vc=xF9vPUN>mf5Ius=$w1Z723m4P zamkrn*Ns?jvZ?`QWLRkP42?H_5;UyE*lILJG>ZFLV?>qd;&o$0Ly~m7A~y)@Pw_c+ zm*by#o_tW+V_h5}eb^pa_UCAQpZDPeYmZc^x_*Bj55d*JzYPdxWZP4n&y&u9C@ z^YsM6^C;oDw+qh*;^!iVPz|y?bN$b0EXc^>-AxgirUjaqrPZ8jsJQRcb4K6JW4)qq za;kxgok%$m;wZmfeoF1oUdKkX->+d?gBIWto|}cnnMlGyI0)rEUfu!v}>r*GT$-QdXKWT+sNE}7K$Z0IfYSq-w@MRl(pl8>Ga4I= zg0(^(u4UUdA^Wq^hXX3Ni6SNBZH*Gbg1_uRu3n~lS}yFnCZ-yOy`HQ6iqtAJ$EsOE z_{*;FFj868ej!M+Lb?zZrCWsexJd5_xsql{2+Jt^oiAMBBK1&3CWDgl6RH$>y5nX- z!lgLy2sf{_Fl&ogt}E=V*Fu#bUH7HOait9+_}Y!K(93OOB=r)g0|<3NpC#mhp2hLG zFV7_*kM+uJd1^oPIGTKU{)#+kUiX~`b4T6it_xDR<2_%#cg1|Q-+n(|?cY81q=FLr zBI0UoLY%0tLZ6SgE(^Nf$TpC_<5-(hS*_oyt&VnvYzC0lsg@houi6r#+^X2>Crp6**|rUv+v)f-KAZIIjCRc-qR)CDv&Ts-{AHFi*goDgim$MERR5uRdg;@_dpOn^!0s|OH0*9@kTu*`bwf4ao0+GEI)`eHd-WG0 zPl^gu5t&1;1l39N1wY3M>h3&yTbRAANvq)(l=BhgH9CeRqT4OKZwS}?z90BYk~Dbr zEmM9Qyt&e`@o>syrbpVwu7+>F^30Pw-1p+WZ+_IGW9E({qiuWSQQkS4Z)8y1_bFP1CcT`(ryaqkksOK8?sZEh>#$v!_Az;#^fd0& zYVG9lgJ+ri#9^vj_k8T@!r=(0;I9Tfq3+a;<22VwJkT?CI$c3-ZisnK)uZa;! zoTKAf%KS;H;FWEvF)Ke*&0P7~!mD$USTl0?V^^=ac0{TMue_$xulztrI

    m$qD3| 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

    xCmWn4@-W&FXF;!b`;|q3&XO!3S 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 diff --git a/variants/um_nanos3/partitions_tinyuf2.csv b/variants/um_nanos3/partitions_tinyuf2.csv deleted file mode 100644 index 4026378b6fb..00000000000 --- a/variants/um_nanos3/partitions_tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 3776K, diff --git a/variants/um_nanos3/pins_arduino.h b/variants/um_nanos3/pins_arduino.h deleted file mode 100644 index 84d5b5a6219..00000000000 --- a/variants/um_nanos3/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8179 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "Nanos3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; - -static const uint8_t RGB_DATA = 41; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 42; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_nanos3/tinyuf2.bin b/variants/um_nanos3/tinyuf2.bin deleted file mode 100644 index b2723dcf3b96151b080a83a7274501eea78ddee1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152608 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%0D6?JpemQ7 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 p=X$ zX-h5xT49|IK8~*#GmR&3h6bCVvm?K_>Ud1pOF^bG)kgyg%~a>Jtj;oMkJQ56SPQ?S z;MIc#$MK^ib4%CY2fyjqS2VWj!Rl#%vo#6B=;=|SC;W@i)7?YqY1SY;Rhggo z=UsU(K&4GB#JjJdHJgOh+DoCUDN`fa64-??8*>#|!%1cs4VDfzT}N{=acrZG!GvhE zbMmznD+mH%#H+<(ti)^yK9IyJETbCQv%`wIX|PU)Cz9DY_1McosZ<$Z&&n}&zE ze}=GIhlJr13ruNgJJ_bqp8o=R!cwM*RR!6lqpEV2!Scphm}Rt}3TF;TBk=9^IF_YL zN_`aQqQJaw9LsKs1`<9nA8BSQw($Y}&M@Rxd9CJxNxTG)0t&@OK&Bis|3OYYt&e0& zOC9M_F&3BYJcj!1j&;;{FP0xs89d+uzFH8%VI{{|3NV%$TUexUwctO+f21l<&4uRtz@Nb}5-~s?^DX zX`&n9E`;Ai;ix$lj;e?v3V9}_VH?V1LoPl>h^mE?q`)SIW1P^0FXjNk@({d^gQav9 zwx?8%F#x@iud^|?>{GxsTgZp${cs^Jkh~m7KZ5qMRPW6m-|y zjtLoXui}u4X;+-$urx>jzG1`K*hJ@;VKG7q%SP_aSHM*3i5`i3y@RhV<0fkw*yL|X<||gjm`@Q z8=@=#lUkPcOgvoC6=GI@{}R4rOKeYZ47YW6gW!i^_fIbI_y9=KD)tP-@GGP`^ie$? z$gMCrKVx;265N>#xePlyz0Qw^MZ}P!$M9wzN?Q~Ud>jv1t}D*>hvi~@6%~TbI_DpT zMY{ZCq!PuD_6D}F9l*Nv;6D4*3RPy|){7zC;1GWoYsZ0jJC>idjmsmuZDTajRgvU; zd00&h3`Q~=yv`SgMJcxApgZLp#?9{(#Imu6wL5SSbK>d&l;NlVDxYI-Wi(<Q z{ONFy|Dw3vdehYMnWGE8I{${1&yypWye>EoPt4IqEsQQHAOw~rT2 zj(;@kk1Bd`uws}97xWlpWR~Obha2p(8DL$z#o&|@5%l{BIzdW`D8wq3;r7dXwLh<={IQeS7 zFdCH5TndB{zPvUer7G21W!7Wnx$-4?o%417##^!z*Jh{O?mW{kXlgUL z)rGe0juiQ8ir!`1{ds@j^M3g&`YL|eCVv?%0K8j1PVbg6m$GKjsfU6(dKVl{Z5rqo zj1FEtK?$nHXq{X8v2tV!Z%Vd>YXmt=!B~tj25#zoNxPD^B+0!Lgq}M>Pv@uo0$;c$ zN0z(kbE+}8+a@2RS9c48zr+%MOfMKg zUq<9V(W_F{2eIhA^b+`E|L$G=DDI=3tgQDaaGwzvo<(KtjwNnaUQF^I=w+8G==ZxH zmv_>K{RO_Hiw-7yo4&TFtKc5>nMDO zP_xRmt(jgM1^jDBq_;$Q4TbDA;NJ)I@6$woN8bJ}%J~7M*kM>L<@tYW!|Nu4yrO?i z9i?wI_}P`FIh4g=$arBjyDc-vAV1T;riM~DkdF$hG!$sKGrjMxJwqE9)NpVV=oj_!AsIq{n?e9+tT zQ{)R_L}0Y%^apbK7l5CykQ7j3%)42c-T(YWWm>he8o0{!w{=zCEM+ zcNqie{rfa>AAL9Q+ue7|N0h7qOaFm)F-0zS$D$_5e~(6)5M{!AzWldXT$=oGG|t%H z`|j)m?=C>jKT}XfI*l)SE9JLO%9lT&SI?y|YUcV6sgUe_3V}%3?iwZUrgubL3LkiP zG2;F}-=SSxc#W!Zo2qg=m-SbbcsAV1H_dlE+GVbMO&@w8()4$QG40=Cli#5X;mg{< zsjz&Sy(j9zSGD5tu=99$?)-0YRb@fj4w?S6l<0E zQh19hCt2Q1MW6u;33#$^@zXHV-(c#6ej(^0z-o_%t2-8Pz86M0URGMInua>c4Ei5N zu{CTcDHUPA=3sTvt8P8X@*b+HBO#|RXwW32MVC*FA}Ss8YQ<=0p(+a1=DKK=o}4;udF8K z&Dv7TWYpZ>Cn8`wrH%f7gWfGh2%+%tL^&At1j99(O>$0nP5>{q;u$r*TlkVJ&hzW= zoL`5P&pMIwycn)o*Y-HDzj!@iY#Nl&B>*C%oq-r+-uRgeB!*AvNdaqK=_j79nBaIJxx z`zfJpmpUwQfv3WiGim=n0zz&Ml9KU$=Yp`HdqORYvc1_pOSkpTwY%v2r|{*7=O<`N z)^yHpHMFXC>8fAA-P6HL)h?}Nek6P`vPDyg)#u7Rv+~0PB$c<2+g1_o@M}#0oBVno z0`XG0n3_UzX4?bdzyo3V0ZJW{J#Mpne|UKZ$i+D?yt1}FzbH^11~G>`XjteDE^uEs zTuc<#%7?w2vn&kNC44&t1SJ(EQipG2(GrqH>k(&!nb&(BKTDmLX{+$7=+5oB!0ZN7 zRVm+@&Yhb#Dm%@Y?f5}@e$~6ZfgglJMG8RKJARnGcR^J{zvu~jJVf-kakrSBrJ6d9 z3)~XUas#fcA})|0t}H+&hYGoXGaQ=Cm7I!TdwbZE7tJ+M$)y8};{p@Hy07RtF5}e7jT42jx%`^u!r-Gt1I(3{X^P7RyaJ7 zv*Kl3xN;(Af9Mvx)IT&{{-O`peWuwqw+lRkGkAI?p;?yb{{&-TbQnwq6^-Wt)^O-1 zt^g%i!&x_RKD=1MpQ`j`e zR%z#!>|PLv^a;99Huq>Kn9H>pIm-`K;Vdp-2v=rtkG|YG2B`wNaA+KNS5?*a&&u96 zdEYZFdw#F1C%`Ok>*l_zm88_{GQQKw1y1$ZwyDD+7dY2fDWa~*Y%Xx2FKpui=ld#c zM9U#i@;809Hg)BVL?B4|b)W5Zb?63sQM%K8w%@BmW9jQgP6z*6Rf+-SS5@$x1K1VM z=&)8w9skstV}12S32O%WdRmh=uWw0MpSdR7w?4niE%)^`-T@2fAtuw1wrXCkV8DH& zX^kmzcb{Nv%tYX({QidIH3$289Lc%s9SJ#^*=e@yCvwJ~u3BV3O0|yqx$231@-GQ} zo78o5TZs5k-=>tDJ38r3Ve!v>Id_zN9l@AsFbf%tss`^aRbz643w*Uv%yG(lDI3w zY5)}_&=<@Wx>9;rxxr|;94q%X-(T+eqpUsAa=)gp!E$9Tu)0q$v=}9isdgca=h_^7 zP0jP!$G$dwWb5#&+IE{NS5wmnhIA>hHfZ3wa_KwkN(7gMvT(VkuhkI#mUT0w6IOWr z3AUzNYWz#y{1P=i+mM4#+?2c7QkP^ii!@s^Zxf%Lx6QB=rP9*YD< z_u*cLpu|`9MgrEptlkLjq;{tD!T!vkJP#V@j?o@6!VoedXaf~2KSlq4Y$Pl833?5T z=-d61qaXd`sDFFV|4Oa=GYW(mHg%U4d6v)@o!?hckzmGv3qT=-M`3*nzyelS|Xn&^{#%Z!u{&TyE8`PpVe(67VF-5{<9 zXFVP`el+}-Na#5l=Vy4R&<_e?#&E9PCQxhWMo{f6 z^#rI}%P&>mvRKfr%AcUEhN>%J`kIz>G#2<-uYRiL7i>Dj8gi2 zu6Io(pGLS($5kcqbxy9iOVwPhS=Sc#mi&@H=-HM0ce*(It2>U~b#niPjrZ8dH$%5PluS+%^BYWTGJSSr=>k8Qa}dk*2bBWZWm(YI8eYG6>= zkM>;h$p2318kVIuK)KlKt9v_ATdi-d)^=1IKC2ELiF{hUx4xykVOdEy!hPVY`zF%5 ze3$xzdU*`>*^iBT>n$ICj%CfW->}JAD#_J(MbLKYu_zS$(wB z@Q7i09ieAjdGn#MryJDM)s1UoGDy@Pm9@bXyYSfg`A3+xcGkT81PMOTIiFb2gA!HkLs= z(+g5^@Eu(j9OhLo<*3Ckd!>g|wbep%b)x(UmGRNZUZIK3!;()itn6ud69kvIyvuiM z+M|y+)@@06WaGSzAi;9GV#_C6wz2&>VeE!LA)j!rgm$<&ZrQTPVkf9YuSHE!&Ho|{; zPcbrz!sH|AXxUass!DF^`_OUm!7&fuw~MoR_E4T?OWeyuX(Kftudb& zGqlxNe97L(yy`~&erevaN6h!T8hwwHgRU)aoeq9zD%l<3_Bc%Yf71S3QcL}+Nc#Hq z^(8Q(kpFW58V+;@G0+RG=VgM~`I}xax>B_qps$Z!>=n}XCbf)h|FC^ekxDQWU#Z0v z_QhSnn)U6)$7}PNl23pA{^<+0;>KX!uakT3ct5Wp`Gw!qJZp3QZ*Tj%?+dBt3wf`f zJEmUQbmI8RXZNNEsq1dTi8LQJtbBG;(iZ->x-sRgv2s0C=78iyw*a2-xrqEU!I5K7 z_-##ZgQ3eY0bebK)qZWk3)|UxD;TQA@HoUg z{XSuI%??}e!>hC3TH$Y5yZVQw`sW{6@QN*5tKE1{!WLbYtX=nzwrf7QinGUDkj$LT zubF%4s<5}F)>PG+sK{V>J<*uZfUvplZ|xPS^$+dKE7H)BfcfphsJwY=bzep}+)}tj z7p~-lQM2dgVV{NWMC3t3=P{-$dFaM<9=D3jGCpUVdr7;kpqHH6KcIF$XSAHq2wl50 z@+hk2Ib(}q+nv2Qq~&x_wROE|+a0}dtKn#J?xkdW;{Bs3z3UBola5U7eNi~rD3}Ff zac~9nvaX``;EGr0uXi*i5vsTy30wWzjroV*9sF(Hz)J1bZFkz=`SYxVmYg~mW{uQ)L%_0k^2Ue8T3%Lp{^!W!|8u0cq{jE= z2v6OS$Lo}LzViSS{Hwkd24P&6R_H6vw^i|ciHBR>Cw${G<8t^6aQL+4?+HKinUk0Q zzRW+?XHF=4E%NVP;mzXm72A#;3HlB4B|_k)IhIT2z~v*$FUuDCR-6z574M3=?hCAmyaI_1~^<1-zYzw z5L_ti@NCg%{S94suxPP=+Ud7do_`!^RTXbGZQX3!q?)Db5H)S0e)+dhpFWAay18Mu zWl>5H*U**LucR%_t*HV?Yb46}p|(M;f0?hF!8I(b-^|yQa_P&e_WY(wdw*cx5hYMrL)zwrNumD}Y5B;q`BFnd&73;{yf#F@KmNv%xsN7p(aZazm2}b*R*5bgY4A{a zEjPA~?%EtB{l8P}4&&-~R9kmA-!%WCbv}kiOHRq}BODc()fssj_?W$T+Ua$wz`7$( zsQk-JtC!iH#KtHE7@SqOMIU}YVi|L$LEm{Wl0L0cyq%AWMgbWToc<%f|sAJU^6A0RRelpm4*gOXH; zX_jnl!<Wp>dL+hE zEzL>rKVyc@@7Ly?ROe0A6pTsTHtC41!&X_VqO&vnbT!+8v8SC53?)d`JE&~Pi5voG z2QN&oP3NGt?=-Zg4^qqBlxDA4NNAY9al=n6kLVijmv5%923{Bg%P^tlg%zu7mbUO9 z=7JL{@$v-<&_9|4hQU`ldA66P2s+J_wEE`HFd7xR+eoS44F2ki zp1BhD)#p9i!ach`A5v~VC4l21aHMBjZ_hrp+^dwU+oEpjz-^xC`6zI04;5HBjjxN^ z^Vss280;{}&4-a&XldjHN3GY8;b_EFjl`=@lRL!um!AE!D8a!y5A+CWc~ZNewz=0% zP%CLNF4%YA5XZ5n<*uIG2Dn7em7Yev)hE@fU)1ET7vJmI-mvl9*0`qMITd*&m~&ggckELe%(7f z)(*b8UOVtM-#LkUqN2&(x@6O`)+J9GAK%i`>Rt8%F58lS%i3fu`6ANldc3vgg0%Q4 z)8f}`md*MgKhpZ>!#yvx3#l9PRkL)fceL*tc}QRUPJ5$jy?8wN%tF*jxf@h1;<4ll z&R23L7u_z5KA*38QMYp0Q%@H1Pny}R&N_n3?cJhtl*!LC(0Q``b@KnxN9WWPxCBA#C#p7Y}2>HPg>NX4c-ffYU5YJ2wSc;ow0gtP#(50`=6#l>!&m5=pLB{48Q+PcWeVlt1

    ?)rg}rSIX0=N48Dx**(4Iknvmo^F&N-J18$zigt+8deH0BC}ax{KJAUZ z3BpZs@sRi1=$+^ld7M*wJh%4jp3<{zYLBvZA?Uv~M}svI6O6BpaoP{N)f?`RZ=#xE z7T(emxTOcPyADQK>O#z0&awAk8c-{{sL)om?4;)eqowGooOZauV40_q)1$ewdIH&$ zJB_{@v~$MwK<8|M>woroniySAUW#VN=;d!H-_46gSH2plgFS`uA!hUlV~FiP-;K;0 z&9EHy@3ZYnB0D;X$`eQR2s3u!>`fNmd{{L1>{4w}NpPE)2&5>E+Wh3<%~C6U?cro& z&l)3gt~baN4zEe*Xi~g{TFJ|WrG?n zeVTlkqU+%7gFeGAKQlv{In%TZLZXdfqzUh7}-NZ?$=P4$u9DllOM7+1uTyX?~ck z{oukDZc*wyP4%teH-E{O7ad-3pUraT)zB#JSn37Mf}f}s{7~ip#B=(bXa8Sqr_b3= zzu3NYuBWHpBUsi=R%blu~wZbU7TZJVchBdEr%c1Vg`9-%hYSyP>Ro?o<57Kjg3d>|NStdod z?ayv6nk1y!C&Mh6o!?%Z-@b*%D4N8kI|y%{z~SPTZSviOPUnWhwV7OVCi#<^cEB|$*LJUw zyBpQ(Q-D=Af_CuoFAuxTHNUFOo9N6dtf^Vm22a_#d>*us>&U$c#DT#mq;1USYyI5T zwss8Du$l-6b#39B%;5_W>J)`{m=J+*c?GMz=CDKEkdm7#q-=EINRpNByq&M)^DIA% z`t6iRehRN3bu1Tn@-Uu-204?$Svj61lx{42i;E9C7b{5}Jkq(<^60^Ip>*t7nvf`0 zQV8*mio3w*8|y zhlPy#Nh(2@y|%r5ef!=d$Jm-CxYO#Vpe-nLb88+%UrIepQ}x!inys(bRGx{fW_W-N z$>0wkyijsA%JVQ0gs_ENrGt~tbboc*;ad2pix2Pq%b{&k4hN>n$X)`Yz25a1o3COQw-dTbevoH>o6U?kR~ePD?2)2_%eKV__;Q}sr^-3V*WV13~{*4@kVt?C23s)Oemj6xz+ucoGtLDQ8qN4mkZk5TTe9m%$?b~wp$ zyIR%z;VVm$k5V{GC;zRx)gX5dehc$4DIy>04*a9L&A>GqRJ8`aZ3fpoLsdJ2kFrdH zNB(PfvtI?S8oEN1!eE#8cjp+gr7`DR+H5miyj-?xYL)j~=wc-Br|wQYr4q(uor{Qj zx&!ZaH}hOAPEFzY<{4b=43#v42hnxHqJ|!KK2paJlJNp;eR*fM_+~dIZ4_vNUar}z zs`c`n{V{s{J7$#=z&D#_;ECD%@R3NUoC`ak5MB^+abBA;R)t*5!_eR%_&0T<1005Q z2@kC133NMnOBvQ%=(1hoC=G&x4*D-SI5-9Bu_n?Vv2D)FI-9`!v=rrl$37w$XtRFn ziqM&az|Xt8%z-uCp>PDs8S0U_ZL7P54VMG*)q}wJwx4$kS1?6znLgxI-IoK63-Q3m zKI7$W(8#}`2qdVZF#m_PT`FRLUs7mrcbZ(IByHQB2ElxSLRlX+tGQbL4L1MM*|xLw zqm#g7JN!1`hoP*?Xb4WYBJo0P-lr21Y2DvG%DMbZ)5};Jqz;YY((}E4;b**2J?ZoW zO>9m};B()ob`dw+{ZKbjxiQ%jNza!K@Vbl4*YzWGprPr0VMb*Sa9S&ImM0?eeCj64 zN{n_j7Vm|-BejxBk~q8jAcoqZNcf`&TWdl1pAFt!8{}&5RoWoV>Sk>bXGWiQ(Nm_S z{ySgF&R;0-=l)~9IK7)@8(s6%8E1fjDGW>gr5;bWt>_^f1h!!5P16dtOSzR5I!yGz z9EH$!PU#kly4`B8n!_3sFYW~N!YoVA7bkUNeh!Wp_(-tn4YD57gdaps7bSZpbkCXC z?SBf+qNNpnZh>v-vbO)z;WuGINF_HB?rL|N9(72>WNbB)R?4sp;0mq1m!}lDqP&9A zAUeHDx>t4Av`!)g!he>NlgD%mIaqNvy4&CCS-d$pxX9G8x0Kd5?Zecs^j2+Z3cAC17)s{RZ~vM zm8{-7u1c?MmhNDL?hR_}lYX37>kX*tf3L0m-M2NhHJ(d{Y8E9or)Ex2r>}n+Bmqy; zfBsKm`o?tyMQvr=)5e>mu9oGs(ml8nA|l-b>A%DuS$;uEO{{h$Es)yn1$r1kxtX

    t?|RoHfy)z2mqvRKsOH4>{$d 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%0DAJmtO@3f{aPvSIJ)-QnKRc*|LS;|PvCLk z^!Xp{XRcp7eK`3jOYXR+(<=Mx>_l>|uVx0X${pSG_>k^7YA{r!W+eImQ2SQ`m>Ff^ z)YXSXo(c#2z}~9({5Z8n^_85BW#eb+!bN3|&>o!wkl|57^|>yW&wY_SdVQtoaJ)P> zE4PK$ZrV-DCVZsd0t>f?$$Nf(TOX*_`AVkx$4q79g>Eb7R_zNcB$4fkN2EktLXLE! z@Ohj8{f>k3;>Jr0afvmX^h`%%ky3;eQMk`lg#P+1mq=1e;EJw9S(0AaSR6Y#+0zCQ z_2i_lBbJdZSFTbrGSY_>m`?dKVUS-D5B=wTuP6m4wB=sk+EgMl-!{)JE$X}@guSQB zzw~uTS1GHn`p6O@_uLtU+A)b0`|9F_nindg0a3H>a)s)}Sgf7HqRCx8SVbKPWfWZq z{X8PtwDqBJ!#-EizS3c~$90ku6D;>CHGFR8GX0I6g-c0eTZ)B^yin!Yne|lh2k#>a z!l;K)PTU~ zAngmqcul^Gi9G(bkU7Kkw|;K87frs9HIj)dSu$nssz7vCrQf=CWDKkuBW{)y#d zEzf=}eV=`wCl8d+etoAQ8M4Q8-fl?7wJhktPM*ze#PmO%o0SxBXu)CJu<(-HEIWHG zUB?=dv5JMvn48E9eyIk1k`(aGyp!3OaeoDifosyGzCZh?8=>pmEByvITI}sl=NBl> zhlheAx4)XKbB1iv&1hKNODQty4c%}JAjAHDDe7W!eJ>c6O$myIe-yseHxPyda5h-V z2FYrC`IiNUZd;{^be9AX2AsqMm}yI1-oHaPm+5i#c&NaP47S10NJ!kWJyMv{>f)%j zBVmMndC!HfEZYDH0K+WXBPlp^b41#9O|VP-b2YVJZuBWz1zj^W3}1+ z>|0Z?j33|DMN{O{2QFj-Ahwnr_W6<&3kZ(H-wA?E)#4<2N{Pe%_~w3BO@Gh3O77=m zXp&|9P>0KVvVHW&!(@4InqGSfnw#hK*7ZPAjdT zMugtYDS&~5o(VNrx1^QjSQZc!gDz3|4xdTXc7%n?h>$ePwlL%SW9fyRh4Yt|$eizb zI^^hA%lm&=+=;z=v86-i&f1xxYJbP)Oz{veTfjND8>jh;zBS?{P@CzJEe{+J!KVBb znqO3zy+KsUdnz#}RBJ0dt9c^5-ySZ9)j@i3wur*7{ojPUD^A;w2Hw}ZiQ3?Lq__L# z-Z=eCPTY@Bv;_SdxTEDhm-8!?4D zRke=J4)m54vn&TRc}LncMuIg&o;Mk95>|=KvBtqry#;6fO}gkfw+_esZ9`{pGL47N zQE`S7qlpeRx|rb9*4fo4@j4CowKdfuOu5^7#pwD?Y1bK=d?8*~(I*?CU#DOEkeJcI zXhZj&J+6jEkoFBrE5&`8J7YbUSE^pFDE*am^-9ezN^RPN7uQxizhhM@Zq9Jb7YnPW8P*n?yUKN{cv73@VCop!&~hb(~VQjC#uGSY{n+^I;2&=lNz z1P(7^25~3PP%mY!TAJ`8Tj6<0yej$?>5CtVUXi-RWAXtB_bP#`k6w$V5Um%#y#6Kl z!;y&}luHQ?$k8s?dd{iaZI$PUaCxg*BaunTCGSJo>4+0#MT%8a8M-+uN2ES~7jF9Z z(Af|=g~%-L*%#H))hyM#w3u|jLeJ$ARcm41JJP30G;iePYgf0_7e2pZbu!LdG-o4d zk49F{B+Zs|Xt^wc9>DaxPb?C9oOZ~X+m_0jwb{5SA|*yhiMN%f5(LR%1$ko*=Fmdd zQ7xGzOX1V5(9i7)*4-(<;jV*id)~X#tq2 z%M8IZ>uU9z6!nC(WGN#p$xoCPm?P%nAM_lf%Crv`*uo36kCfRW3T%;#8uVGrdN{*`yXJrGD~ZMxyy_q$WB;Q+_p-#W>GoG!`Pk@GN8uM z!R91GuS`yz$x*dtK@XtwjpfV|S(}v7eB5^A=#G8o>m)77=#a!O7qzTxl!{PqODd_1 z&wT@T5pxTh^m0^(8H@V#_v&+KBWtJXn@6EGM6ZPO5?xZ5qheaK#nhQ6Rf`v*zSgYQ zLA6kU=EKIrN1OW3*C}#T=6QR2FuCXB8j^dI^v1SyblDRU(rH;Pu!4mdn1wb9nOt-C zGS6ui_L#%Dxg_WQ*8I4=r>+-hBRBH@RA?^@+Wck|4@8^XY0LDFCccKDuEz0^8lS!Q zoVOI0E+VoU|ND1XOh}A)Adw3v@Lo~IDwW0gFBg{N55v%#GKR=DUS0WxNS`n4YuZmg zOrEvZ&r@@s^_`aTiVV*+hu$P`ODInmThKU2s9zUvTk3H77WD-howb;nH$lN5Z_We< zOc)A0Bj11Zt0z$d@Li`172u^!y}M}-i#T#}d;OaZLX;@9c?(b%_1Gk7Fhh z#v-*?Pi~9D z88K_ZQ5+tp5y|NW&?a^MuO9-^k%OWDAbNkHt?r4!^l`#BkK_IDFM3#v$UVY!Dx@@xn(qZ}12{xgDz>L3+=s z+4$eKYPQh7j=>k0fKi9wi@6c^V7g6>*M_J3Bi%468J;O&YpO^GFp3+F8&L| zsr0PZ#fzG8JfsNn3PZD}wGnQfh#Mwme}O@`T|m&DTw6E`b&uW^8aNI9!-+AHVSY! zU$66iA(JBicCY2P z@Zr(>4sN+iy#jzdxGj4y;{)Itz9d=t0`l&;;SIpMI{=>84EJ5y_XWV0?wNh06?@6| zzJR0qf;{)%-B9Yj+!=J{zL(x+MbxkSm@qS$CCt<4UX*K5a7jWRFNyjUGjnXlfS7c< zo+SP0D&bvR-d;v*RU$kfj@xPG^6VR_k-9W<@~Yh?@r`I&HcWBP?MCha<%HSW+w1D> zMJGl3iBMP)W!u0c>Kd1F-H4o z$goM8jHGQ^|FpTicjE=1Yr??#$2!^7%aC!+5u2T)!|s1Ezx{*v)*rk#O}$qUNRDTy zrmJ-JYltJ;n}1=q0BL$YvGb*DuGEmlCfD`KpF#X7vR{F>f8zn@#Nd2Mh0COqfrHk0fJn;UzUroO!|FSp#9WocKV(x`|HIR2j z{$F-a)kvV={o4;8d>3zQpGF9uO^O}RX#E{!KD7%+A@d@Fp1*cU{?ol1&rf4%e!7=Y zlKhg=sXpaO$$6_`S+99WSX%*H;WYMSj+qqZ)ZNqA;@zr9{%Nma%HuEj9$?O$?gM}R z2QuTMchA)O6fpBNaG`4g%zvH+KK1>>55HgjpYMHdnA;2MSfR=XK?Xc`?R&50+F}uk-Ty@j2+24!36JH_e{ShhxVFlcac;vuBu5Eaq_HQ z^RuLX?k8!3ut<;s?cCX7>Dk{v=`3X-`moIfGFE` z;nSG1+qKIzyo(9p#3bt)<<4A|D<{jyS!7@NW7>$A;-da6?p>0b`;Kt$%&f0wot`x| z3z|w~q0A?lv9M>Ko(W~bkA%gOO41gmz+`b=nNzghY5PiXS^*}S=nFaE2lXO>^R{wK z@|6UJ9x|w2HE@$8t%KvTN!jKG-ZjG21zdU}^|8U;E%dVV{mIYnLR_0YaJBRg1Q*13 z>EGkpzlVE{yuqLKKa*cZ$^9#VGaTeYS757S|P&_;d#-D$^r z_G3Qt<7DuM{|*}xa_hy+tLXmf#;N@YH8KI@ic$K@&0)MUE?hm@Os?*>!KeTmo~9+Y zQ|A&5-$p!7F$ro%_9m`}pu}Ym1iQQTc)Rux@8C>2$C9RU?~||C#e}^6U`7o)_H5Tn zxjUo;kZ{CP>PlbCqOW7te#<57a_Ff&rcf@Cd?kT*n)kT2?Lj&L_Lk6ke~glbtz=E} z5$X-Tn9ys8spOPSHhzmZG=CDZzDX!t-QsfRw=mI$K@X)9644HTCGWX6Gbt#V4f>R*^g!r3^3*jRW zB795#Iry+>uj;U3Z#Y7|eI>*{dVbFuTDxwK2?sE?fK6?krTxb}db-FV*Iwz-(=wL& zpf<1;Qf0#Uyw)5}puPqlmRrpBD)Xka`@xp4_W;GsI>+EmUa?6n)pU}G2S*cBY@uBj zBeFPWv+SHjTf)sHs7kY9mE>rq$`ocW%)wx%h2e&rE1d5BpY`DCT|+vdXz@2XTEacC zr&*!t=ukx6V(oK|wy1W5JaY71Rc9f@0GgCl(wZ>r`&k5RN}2?Ilrez#QdUkm%CRu0 z_Deo^=_hj064+~q*4t=qKB;Qk%j7cZZ@#$nSzPL#J`t}NQB7#OBtlPP4sd|;gTI?+ zQZshKhW(gJzwl^Pu{NTi~+B`Te613T*3S%+(QB29S>u4L7Nr{m*G(prp-mBIRjOgI&lL0Mgx@DN1C zFFaC64qv>>U1+am9pzHQ)qZ+v9l-xcaDZ;`raoAxmCSu%{_3`m_|FxCe!k4HedON# zSes5_98$F3_3cQJ>vZCT&K)WAWRjm}?-Ikq=hV5WsE2~)GYRC`g4hL@|Lgj zy|yEvJ9bI^=LF->C9+cwhECS_+R7yAm+wMALPME?$k2k*j2*h_>r=S8>ALid-^J`A ztR7j9c#kaq2yb|XrK0`EH59yOw=8pjeI1VQT00309fd<4&;lhp6WyB6@CsE@tANb$_ai<%% z@s`OpBnw_Mfx~DcX)bjA==K<@=nD#}aYVX*1Jx7Jx?g__jv-0n*MJ12iRDUy;g}?5 z0GYPE><)ga6OJ*(klFLWRvobI2wp^RMPn}eh>H)>?x@ioQ2%$~Lwy31O?`}bREha3 z+FCy8>kj;UOx*r+pVip@g|9id{#B0vCMU%j-4W6v-nN_j?F8=Tr~o3~Y#f%~ai|{6Y=yD3|c%Q1&Z-_%dIJ-$FhnweM0|%<#8l?F&9$9|h0t z4LasE2u@~TxKy%k757rZpH(MCSFuzsoSa?{W{SOtQ1t}mowX__@4?*dyy{-pNKWK)mh99qt3t5zfDeom~>6cL{EOKHzqcB<{VF z@n^N~o`l^={FRz7S<6f@^LGy!x47l+*~C)q&~+JTD} z&_PU&1Q&Ob;4oj|FwcU&7l#>!z&}K1jPCKO2s%6g+$EZPM1Xl;Mt~U*{>{|-#iWb+ zW@@crwmx((U0kl2PRAU_Ol(j1=7Cs48A}}*DQ!9@RTM%39<+y`VBKmM7ykpPbZTsl z-$uv4iVllZD2n++sv_-U0;3SvqQ@rZ+DU`p@5T&gr%^S@OtB+h$s^V;AC4)HPowGj zb-HQ4MOYV1AnB4OQp({xbT6}@CrRq%?&bNl067Ql3z$l{0XEUdYzi3=AuGJD;b04V zxYUV89f=5zMs8}M%cH;blPm#8$$*4lnX``jCjpdc8cB!qovDf)dIAoT6WjLwPg7ZUnrs!T)OiKkxOw3m>?sZ!~r z6a<8GEcr?+U0@bjL!(|RFpJZ)La$0t8*pxZo~Rvif19X_z`q(L{-GF|a0GudrEi4K zj|^5KUl9|SQdg$Ql8NwvnwwP`J*d%@>Kthh6?vY3>D`J9-3pXaTkZ-`<)+H2GVCZD zhO$;o7P(iLoAm^pCS~UcdG$U}E}}J2l z(DsBXw*H0D4(;}d1U=hYl@w6-64BJs_MAXY+^BZC;3H9pPkF(Dco?`LkJbP44bwyF z4GP!$Co00tT=N98k5?R1NSG0sii)+S?6E%KdhbL$4;)Fn#WRRx%)*9p8j1uoU-$t>XS^V!rS$o<9O* zaBjl{^B5^AjWSgeKG!9z%`Q<1$L%1Q0FpTh)(xNmmGexfN_~imZV(S`cnD7__|9byiZLC z+U1-(_K$fpP#pFhrWfWMtA&*H*bsEQO>zAgIkw?Zg5>QRws z4I(HoN*$22g+etlIInRFR8vQlqw%CI0!m#3IJZJTN_I{gs#gLTeH(7>C8!V4L$pCp z&H4Q0wYn7<>pjl*Jh+t-ce;+*!nn7EGHNDpq`ymch9S7YZma0lw>)qRa_EEEETG;c zTU-bvUxpSHT+?E{TXp<1jAT*xJVxU-8g^F=dI>|js5Qi-TC`MY(z%VM=P?RmVH9*O zd0ZqN^J~PQ5Y9-rPa~pFGL{Wb9_N-G_mhT}2I6(vNDyLpflRVB$xrlwN zW&-&>{}xx2ev5xpNF(}Ys(booMg2GLG}$$Cp!H&dNS3oLK;*Xct*2 zxGfQ56W<8NatsZRU^K`$+7Gf8Vdo_EyumTGkJ>0l@Qm0IR_pu>yb`)p9WIJ_R_OA& z6R!Fb+Vgs6@i{8{Pd*v9zB_&Ge}Ry zR`B5i>0Zl;Zp#UfaiABIMESW)vUh-eAavY>VKnU$cFoZvCQKqe#26jcryv|g2%~UT zkweBP-}u{Gt*!M{RUh1hD|@9W1)ur#h#rDgt-n9S5$GBRiD0fIrw<;-8zkJHi&oTS z-Hk*ECajgz6>6D7>VoniRCS!M3UxK3uKHGc{i{{`p%yRzsjOv=1X)b$nNV_&UVk4; z6VNcaWT~x6Q}BRfsu}+;>XZKG_38in`tEf^PdtT&!?Ul#x%qo-+FZ52(v3**Jj78v zkHZ$SeXm``Lhmp9@9ME(>D^oF;0;MlxCU|x$H7s)=eM`|JMmK2OgfKO@*9wWl;GXM z)P=2Cr$a;;Oz;pZHINA4nD^wIIv_#jN@VtTAm*helaXdD-J)5@gt_TTWm)XZGcsy_ zWF;17S!@Kk&d2+y&)p(t=?hM$zM#Vy!`ispUW=8_}O3UI<2XCh!C0cIk;3Kw-# zT!w%zU<+%9x2&O|rU6?C{XDW&VBnIJmuh)YUNO5YT+6Emlzd<5cGA&6ScZ;GQkv9t zt)^Yj7$mPaHHPS-!+P`-$wia-l%z~;jnk_cjZPQnPrL^iI{K9&qf3!jnyXJWJn&VH*z~ha7=OK~SfE9dpzJ%Zbbh32Yaqc-~h&Mcc^?$(WiUZNI(MnT3~a zR&(z0x)Af?<8GSp!`N)Bp(sf}S>NmNMhSg6+G!C*8RmH`m@RWKTW~&kfMzUEj$S0| z(JIVa3HlQPV60`s{k7b>1xs07iIa%H?3WO9+;sAfjt__k>yGTE5R@~m@1m!cx1R)s zBN4=8fznS-B-7*sQVQVkKcgk?d$dG-VH$xnf~_&H9Jp#wWs1;24yq zO_U~&euk5fFeEuDa?BLE;sKibKcG!!>VkzZ@_j*35w5+TcK3gl_gg3R^qJ)cD_ z0WZZ&@#f?f_J6}){$4=#f5%@+g}L^>W-b33*0^MC>jp3H(UCK2BN4vQEY^}9 zJ38i~i{b`9Y4CpHw)A-QHC#(W%$@1u=D!e}9U^RFi2c;s+-N46Wr+ceX0gMp=9T8> zKWp@|e0WPTmY+bJ^_HmcO^wNV@QN&Nws(ji3w7mu>g0o{4i#H}y}p%oE&LRcB?Ku3 z`vRtdq2XNB7U1TXV6Kd?EZpOtF#)x;_QtAuY}_WNe#^FV+GU>@37e!)hltuI?h?+l z@H1E8XWY*Sf)8JIy3HNp>^nZR#cg54So&!koKg>nqecl&`kcQRQHemCc9S+3g%;?Q zMlYL|46fMNDaFKrDIW;vXu3|s#v|yA&^Lf50lXZp{V#}2;D=W{4G$_uVjP_SH76NR z%_*O`Y4pq#F|y1dC#h3M93nP0ToJ1e?+}xNc9bMXY!&M*aiLITLx3056BSA%U>GN& zV~IFBU;O_ukp40K4|KKv0lKR5^GDNsl0e(XrfB=*CjxDE{)e-;NK_fz@DHCjVnY}W zj$4pEq|xMz7yAfdlx5_2=X{x6+4{?J&)x2upL)Ojbn1Nf;oT$>)pY7S#RZWba??0W zRpNwKd3-=Z&Udn@^WAf9`l(l&m7Xs>rTmKKy*MM-)aPtr8I_(h0dVCJ_KFhbo8pVz z+(MzFwd&O=c5=L1q9}Ut+oCtW&HmDV=BOlGfx0Y~uwXLyRFDk7hC2!)UZ$hCza1l! z>F+-Qbw~_Y1n$2kO^b<}ql${g8xu_kg=|1%3K4cuKR;I-Y6L$=xEC@i7!N`l(SFMu zsLo+5iv+ckyrc>kHtU4BV9_)S7^EgP2VZt!Ttab zhx3$x)x;DgIG90w43+%nxXgJFmp2~31^YRB-RS%q(eqIlT~gLmCD?`h*D@9KU{_#y z0EKnW&TL*!(jUtSdxLayd;4HP36@@N=kjFRNhbOp8tz%w=l2jAs0$ax53 z0-hm~`x&8(fY*j_c*2gXHj;ZJoJqK4Jp>mXw_-)m>8^Z z`?kAW`lqbklc7^pgamM1$55^YrcZ%e3@&qECsm`ecS5$sLSl_C9R=0Xv1qwOLK3G- zDwF?(lr)w>kqt$Y&4DSTXo^r2x2`CKHVEsQwTd-5iq0_Phz(E!PH`RoIuJy`pkv`? ziA@PIe4POmC8Efk6N0?D!Py3*$6yT!VktI9tZtLb&nX@{7ZGG7cS`hE|i=vb1Bx-sdmdGuSW827AWv8LVFv14{6$3v)l63kU)!hMsYm37&!B zxvW!ZbOx*Vn{&#*6uf*>_6>X^5q&G8%An(*pN|p-u{e>w*CIwo3Q~`1Dcg@e$vZDz zLY2k@J*H#N6UYm{^39Os36B^%6K(j@*QQ`YP>4xqP=%O`21$s?Vqii{1qL?6RA$hI znARI~Atr|*Is{PH{^W}^+7Kj83pS|4X*z>MoMtq@9L{23VHs`EiV@aKCr(>$h!&?g zkRLceW$jBF>E~#c{gPlHtP!M3GW_ZDST@CA@PG23#HqX>;QycetzI1de~#?>a5(1V eK+f^5mo%^Q`5Ry0Bh}}Bv%T-@@GsxF@c#jwS`M!O diff --git a/variants/um_pros3/bootloader_tinyuf2.bin b/variants/um_pros3/bootloader_tinyuf2.bin deleted file mode 100644 index e92ef2b566a269c20b6f2cc552edfa26ab234660..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22576 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 Y^P+dI>k9tvwXeR3f94L>vb_C&0ijRRmjD0& diff --git a/variants/um_pros3/partitions_tinyuf2.csv b/variants/um_pros3/partitions_tinyuf2.csv deleted file mode 100644 index 003418ceac2..00000000000 --- a/variants/um_pros3/partitions_tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 11968K, diff --git a/variants/um_pros3/pins_arduino.h b/variants/um_pros3/pins_arduino.h deleted file mode 100644 index 9a8e8120151..00000000000 --- a/variants/um_pros3/pins_arduino.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80D3 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "ProS3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t VBAT_SENSE = 10; -static const uint8_t VBUS_SENSE = 33; - -static const uint8_t RGB_DATA = 18; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 17; -static const uint8_t LDO2 = 17; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_pros3/tinyuf2.bin b/variants/um_pros3/tinyuf2.bin deleted file mode 100644 index 1e8ee8ca70fe48e07513c3334c9afed7f5967189..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152608 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

    )1w-zzxX_?H$IBNXRMh8Q=v!P%7hQA* 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 VCfB=`gucD?dgXgXyJ!FQ{{lE%2^s(Z diff --git a/variants/um_rmp/pins_arduino.h b/variants/um_rmp/pins_arduino.h deleted file mode 100644 index 5d3b7acc283..00000000000 --- a/variants/um_rmp/pins_arduino.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8001 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "RM Pro" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 14; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t VBAT_SENSE = 3; -static const uint8_t VBUS_SENSE = 21; - -static const uint8_t RGB_DATA = 1; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 2; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_tinyc6/pins_arduino.h b/variants/um_tinyc6/pins_arduino.h deleted file mode 100644 index 54fb497cd46..00000000000 --- a/variants/um_tinyc6/pins_arduino.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x1001 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "TinyC6" -#define USB_SERIAL "" - -static const uint8_t TX = 16; -static const uint8_t RX = 17; - -static const uint8_t SDA = 6; -static const uint8_t SCL = 7; - -static const uint8_t SS = 18; -static const uint8_t MOSI = 21; -static const uint8_t MISO = 20; -static const uint8_t SDO = 21; -static const uint8_t SDI = 20; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; - -static const uint8_t VBAT_SENSE = 4; -static const uint8_t VBUS_SENSE = 10; - -static const uint8_t RGB_DATA = 23; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 22; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_tinypico/pins_arduino.h b/variants/um_tinypico/pins_arduino.h deleted file mode 100644 index b10b9274178..00000000000 --- a/variants/um_tinypico/pins_arduino.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SDO = 23; -static const uint8_t SDI = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -static const uint8_t APA_POWER = 13; -static const uint8_t APA_DATA = 2; -static const uint8_t APA_CLK = 12; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_tinys2/pins_arduino.h b/variants/um_tinys2/pins_arduino.h deleted file mode 100644 index b3431781d99..00000000000 --- a/variants/um_tinys2/pins_arduino.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x8001 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "TinyS2" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 14; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -static const uint8_t VBAT_SENSE = 3; -static const uint8_t VBUS_SENSE = 21; - -static const uint8_t RGB_DATA = 1; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 2; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_tinys3/bootloader_tinyuf2.bin b/variants/um_tinys3/bootloader_tinyuf2.bin deleted file mode 100644 index e89596f423da26e33803ba6b943ff7db350fa892..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22576 zcmb_^3tSUd*7(ijL5QO!fD{$mAs7r+Z2&6|+ciN%vDzXkTDSd7fFM{vgjlspw;AkW zuyzaB?Sh}(X3}OwE34RU>!WN5ZK-XgRr^@m>MnJgt+g+zydjzYIg>=d)!qO1{r~(t zGjq>9_uO;OJ@?#m?o9kvOfAsn&e#7)2nh!8|B2+Hjs?bWLU{PoW=aU3M~Db3yF^C3 zNdTk(GJqfeLwUKm%);cG3X9BnOkoM5DW3(9qRC^ln)2B33S!FHRA$k}GFwgMOs=U2 z$xId|b0MSKrqLyB1B#qYn=EANFLm=1;))kRvn{d6fhpQ#%414RWtKuq;ieMCV#+Bp zGv>0gO=VF)T&(ali7(C=X_98Pm~$HB2VlKBZmQ9Sg#9}UER;R}^ z*dwwxm;DD$d7HLiuVvbDc9$;XQ|2wvU)}~xb;iKk%&jgfg zCA_4D807#ofD#}KAOau~fB~2epaqx(paYl-kOXiKfF2+XUgFy;bUe-v+Y)`a!t7f zW}hVMi;K6c$0_#NaSF_=;#SQ@bta5reVG~Tw7e{Ly(urR46S+_Q?kjz%$=RH-C|}; zMTHwm%z6JqZYcTx7fyL-`~R<;ww4vbNRZVHW7OpR?*{2(D9q1w+5R7SmF12aCUXnb zk8u`jm&f0|V#&5`3z>2Yc$qDwOn%X(t+$$}waXVmJy`7sHTb+y)MI$36_$g$65Pf8 ziy5=2tY|yBpR!G*+nMrBTgr0HbLPzPHBQTVVEIi}LPoJ^gPF@U;|}84%0@ZpqASEi5Wxa?A{@nNo9}zl#j)f+;K)>=Nx4 zUFl8wOb36oscbv?&k@I~DIYb+G0QGMZb2LSzijisD#KV(ro0Fiize^Z-7G?vk6Vji zHS0n8Jd?%5Y$`RE2`+vPZVJr3!t{?4bD~o zH_W53d4tz|)Ld4WzkSpY1xp##Zj4ehukX#P(4bOoMHd~-EHmYpi62lWnM*cU3U0+w6Q9RuX2;Dd4_tNe+Zc`Sl7vr5qrLtZp%<0p!L0q8 zA&yZE8cShG{-#m%zFh^3ryTaFO-y+)#59byxUi(KcuO&c1n7IpV{avTnmONuYZ)R5 zP%H~(9L2jW!sSfnuu;xs~bfZOl6elg(Z)|c9b^@x-Al%Q;sS3kx^p& z&si}hP-n??`DXe24~Pf*UeQR;w{#&ew17Wige5Z)@4@0k&o+X%(H0Ym*NjAd={Jlh zu>Kf`Iya%0yxz@qhPN8+Xqm=%wQ_VAx0K0TUbqVE#O z3qU`9vw%HgLt(CO>(oL7Q-CHWYs>!$h0vmW> zw*TF1jgorI@O`q+x^79uCQELCZ@v4fMj6l;{}-4XOG7Lm2H6h%u-+~VdCa3PxW;= z%D$n4o8=6?#f6prMZwHwdA@MN2|-dcwlB{(Kb zb4NG4RWCOkhHs&lY$?tGeg8Y_8)+>#U(_3Vdq|^Uzk}cl90W$S+h+-prLej91evQ_ zzT`2IBwXWt*Liai5tsJB>QyA&0DFDbB10Nkk?{aofv7ZiSh?(hH9mCQ@>GI0K;{A@ z0mK8~;+q3*HX*(|;U+WYUxix>%q2|OmXZ>b4x{$b(fuq)<&n)TPY_a}l3AIV!K^F= zm&J@Y1sK=-gfS}#sg`fb3q&#hi8NhE9#&#zcLV8|jVv?k0cK(5YC+XGW*mxe_K>rk zS(CQPAI}T2jA>=a%>0k7Mtm26MH)CD5wyBKcT;ikO;lQ32;mJn7Qv)5(q@6B`n~EpQ+MoBJp^kOZ=w{K5@e%0Th?5b_6N zs!=U*zr&3a=6AF%#>|V*VW17D8UzJSb1-xImnxsNZZ6!kz8GfGr-3od7M1w(I51Q} zs8LJ&)_yVFcN_)*9%ctCG8Qp8g%;l;F^^`5o%%%hSM$2wbDl3^^k<*K5I`7Tv*l|u z7LtsWD>EQ9C`sK^l1CP&5h1Z%J#VgotXe`2hjlDyBMjl`jq~;Wh4b~YR{`@p(UXs^ zV~zvnC&2J$p#BYjU>9Ic!RgQl=54?*waOPswSH$FLGZh|={ zdG5_DVP)p*jI?w#qj<1-@G6kNjEL`>kAIZ|R#qvbSB#~w7>;xjQ{v)NbpDvV%#yo4 zx9E|Zth>N|lP{cJmgH_9#eK}W4-jUpTDX4gD#Nn%=~;_btj}7s7&i2xE#?$|s57eh zn90~uQog0M6wYUH#RdAhz6^!z+Sk-CD&#_iH#@2gh=Go4gpVMCuf1Rv0rLe!%R?DeK6&qy^5Sw*y>N5poFbzoR-9)C2UwGa;=!oQ;y@ zP*$cBV;$V}b01Lo& zfX4xL0z3s!1MnxE0M8RblmKw5{x$#Mf=z&P0%Ug5##I1o0UiP{0^|V{0CWO;4R9IYdw?#0Zh(FO zIiZa-z!G>~2JmVG(RYRuef?yj&r}e7E0pm|4sz#Zr0fk_<;ehUElH)^8^xh%#p z5fTPREAQ1-8!~x1eKynNnuN{ zoI{B!U%F&HSlL;n+Gy)6fJ+WVtW}0e0~w8?T34$&V^kZ}M-o(>IV$~Xhd#jpWcsC! zjcO(a$VF$@^0fS`wY=IuWo8?6^9=fQgH_91wOe!R3@}8PUxN1HP1kz z3_K83s)?2P+FIkD(Lg;HL1+r>UMs{6e@iNiMoxCw-XRGK8LtBBL8rn zi{LA+u^Q~5McgEEXGo#GzO5N*!ucZ&N_ztXh`JnF7@_otO=-6wraG%h!bV`TdRdbM z5Vqh&`+6ZLvYw#Dnrk=Rc#7bUJ9FX!>L z&mxgiSP3>X^mwzH_{!<3$eBQ|m1nAzaF3NoeeGrYz3^CFhZi*zfVy&e2$Yt{Gt-bN zLvFZ$BpFDO5zl^sBvF^W%)!d2PvGjX|Iwg_xw|6Pt6TTS_i~?mvm8Y889!@~btA3m zGjD3lUC>x7$yDPwVsWp;9xsllSA|LnOk&0!s;YpO{T5x-JOg1IjF0Ql%AqlC5=1jjXLQyoJ0n(Vz_7}D~@{ugQh9KsB?)soeuHZAq_x*S_p z%Ea_S>yvY1v|)7UYe|ZDyF4Z-xboC+q?o?bI)4xQYosz2cz@3G7Rb)#d0lzlhZT*o z)>lNAIKn=LwM|lXJKi;$CA5M~!N-RcFsp1LK32ZdlXKW(PhmF5gRiJ;)pondbpk(g|1%V2`N+c+Dchs=ahD zNYEf>8E?ga@HDLpy89eE&p-HFdoK^`&ba{W7VhWl;MwKOQRbd0?$5;2x^PXl*#RwY zeS^7Yo%2&ME==EA1zKEL_Z-xGB96Q4X%w>x90Kf56!$qXprpd&2}_V(>O6}q zk>~Zc<}>1`&pnM4JB0GkbPG*CO|R2@B&NsDRv>$Nsrf@_6_8B{vVkM$7?BMG!zS(z z#56ryK|kF>-?L8hf!KOb#mrJtSLy@#% z?o-b(YPsUbnJskDkt5xY?hbDiiCami>l05GLs~_l1g?~L>S?t?^4AbbrYC1Ks&(ov zwQA<{I!cy9Nv#d4N=j~QU~;G+t4&q&-#Vj>*%?fw-%Xqz@i_<`AXK=hvR-5=DXK+5 zY^pOh<{TwtMsYx zOk33=y_!jtPk`FYG$u@+EWR1BTwHc}=X}&vZ%&OlggudjFGg?w`fr{C?}DcsvzEim?YbyRuj#;Vn+_C z0W(8e;Zi-WR1ZDQe!7*Nfuw#LYF_9$XBV~EBWQ(2DcLtg^DXvg@o*Lodppuq4El@} zc(^U-t=<0=yNW!p{E9pmDRvUlaPh#|eML-1(3D-fhhdChYhVLr4^2JACC9}^Ip31D zz@zg$DO@_F7pV>k%kFBab3l5p!r_veT~cnH$FyUScf?nQ2A;HVg zR^vhj?@8G#Pm`!#o)pm_N>;gBq)nn0%KaAH-0w;SJ9l2dain^D#HQxgf$k{Xxm*!#G81^4XV*VW3a0UVKcSHnqbgu`uP*_e1HVS2O-z9S;dzzCy z5Qd$>b;XkAL{H?hCJ{}s^N`|R(Q*o`U;ipIRqYNT_a)?K{X|b~8m9?Crt>&bJKK|7 z3y#DV950&A-RWTxRCb#(mbLo)VQ}pXPrOJY5O5k#SAqy?8?V>eom zG_z!J(>%4)JV*{g*7$-kaqScz23#N1REy(94Er;Vt4ZvPl5wG^WT#r@a4DVRWXfg+ z;)eLBAg5GzVW#sGs*m993k zrDd&ZrB2Pn@xv_f#Im}0<<31Ad1%_DGs-454-dohi3EC_?!*rF`_e|%?vQFO;Qhr( znsYF7g01S*qL@&{p@lKgs+fc+fTYE`OPM-`q(eGHC+KoA2|N$LbF^%Lr?2@Dy%_$C z{j<;4pNa<*19=Ku;Li$))I_+K`VT(dgt8d(I=KHGpby|D%xf{f0vh4pL*kAFpG!Ly z1j#xUU~WnvHxhCz$gd(GM^!?;7y*EJBP?GchyG|rNiG0wH$WrMW1d_eN%UVr?)XoD zs{q3Q^C5R@2B3_PVFF-&S`7UWvVgn@cOm~I*VukOIg!&giS$e3FK)sSY;nOrvj1s^hzn#2R zpgTSN;9iEHuyobLG&vOBA z@+jypg@(Kx;I{y00H%)zIjxC$LVlqq)>ELXj}{aHZU;a;z+qo~EB{0g=s&Sl`R0cU z3WQu8#_$Aw9k>bLy*GJY2K}9S^WAgv^#s-rA+N7oBLbOdyM_!RKN zvzZkjt7JmQf?$C00QUj>8sH-U)R_dv8ac6J!7_ka01n_H03AZ~2Qvxz4xak}zWa{n z*DB%c2H-CM!vGI~jtT%Q0KV@TVU>UmxRmpmAj2~NKlA(oFVDZr3tu;O3ac6qO9nt_ zFCmeHSjFTr$WR1l8WsR0*sl?QzsB=l1D?G4wqzNsO(XCnWCDyGSl$5~{();lL|UIj zyqvrZ_qT-aEWLar(84hY)DsC%E&v$n%Am+AEMUMI^qs_Lg!O@EBCSCCJoI}30Aw*T zK(q~TJS;>I?g^07DtIFpO#ytfX~pk0jWCWEkUtOg#99P6Jfnd$QRw!!59;u;I+X{`q_+&)l%MVqU|`_-G?)`Lpd z8*mjWY`%))h&|#*(U|`?7PQd1mOac#QRhMBanX?zNPb-4v#t5CcU*!oL3HGxQkNox z^Vnxb#Jdet)h|d~qc=$$FP@yTNPl4m;7=78oL=2Uk^Z#u%xR>4uV7q4%4&E>+Ln5_ zH8XP+WQv(9vF1VKlT<)U=t*3I*9Zq3t3`IG6!ysY0@>nlX-+$D)IW=4^*M)#F+r)% z#g>Kja49PYhwG98T1-ze?ef;F+@W6$ic~^42l$MF#L3e5_jsKSn=fh1Iz-?gK{prc zk{jWYBscuptM~Us1jLMMeMzX)0WA{Y=wnetwKhEFz3~;-$Yed)!`1B3)u@%YmqArh zfuRtX2pJ913uE+`w^f1J!kj`JpP6aNG7;T1FdYj9?2O%_`HJ`F?}oMB_`|u45?>Ok zmCzAuDVoYOZb_M^)9zq&meVh)5C39j43o5Dw)jx!^;82w@8mKuEm(RAM;Qt|6I8mY9#Js%R7-a^;!?svZ3M(-@r5>&(4;F{A=mfTX2|w`W@D zXrr-PcegTpUNBt+0tuO??`(kHXuih7qYQ#IIBB@bCr-MnlVvU34ZvMNib}EXkrDCelwwKK0N+%?APf(sbn0(3`{l zg612Z6?@4{6@)Q%>lUk;VF?_~DD7&-ADhJWc+}Cv0payD0>SX^r6?^S^wda&vmcag z$$$TQ4MPmqFhaiO!J~s~7!YE_3t5-Le%#&3`@&y`eY7RvZXhCPjsO%Sc$BW2&i=fu0m z0hR7WhJ6Q%i|-C@p_(LY8x~;bk#9%768Y&YS!7@2m8x%j{lDRH9J&LHy$7VR@ zsFyrUj-FwJARo$2;+POgjGCU-#r^>$m3hD}*yr&veGne8P3tQv{mC|1YHYo4Fo0uf zwmc1sEC0QD)_RN8YRUh6LglF+=*jdKJ5MmrQ|&UcY|8!yIJx;2aC>Eg{6mWU4T{QB z-_etMwSTK&EdFu8F(bPJxgOaCfqiSIO?A+A#s+rP1_aO#EU;yc!#w*dr17tFh`*Us z#tCl+s2O`FBw3myW)E+Fv6T+BNAK|St)#}MQZ(ehaH>c@M@u(Es5Jw8DmDHRMYkv* zS9NXla2q|HUo*zf7<)!Xi{dH}uJ&+ikWk1@(|ho&1!NC*h(KaM1%RCOEi0r|vz^Yq26)ZuLzO>VTd?%b8s}K+Dfldc9>>tJ}5X`}1ls zIVu*N&Z@Y2Wage}U9;ukPw}>DZLl>ycXyaIzFenng*;QtB<-0kPVeI@uF8bKANa94 zPfW-}TD~(x!Orri+u*2%sopbN9n`IL32P%u28t`tfCc_Qx3Z4#Y5--Cs@iWF}ZU|6z6gFdTQAr?pM#k#u(U zEE^Ap=@Rxfq?)bRH>mkLvioV6n~3>xmymx2u}ZA2`U)+P4rvPVOOZ}eG_s3A4(}a? z^Nf9`STPc^lyH^em6lhgk|>d*I9-Uh^s9bssaX_F?X)VcE}o_@CwaR6}Q)YGYc4 zXt`{yXieC$+OLP%SBAF*TURN!PFmHVVlNJ`YM8!#+4v4=(?s^Kh^ki| znsPv;`3Ph>uW}t8<~|x`k6;Ci_YB@;=W+Z^K@SGAr?I^G?C@ij%r&jsq{daP>sD@; z-j|l%iR-ovYr&W5USaI(m?jzfE+S?t;7If@_yiW$3EsTwZNdLEQEV$>-G382ys*|m zJvnyfl3kKnvcp(;Dg2no`3~x;dYF4{_y-xx%r0!=KkYC+c`1CY$oUrP#rRKrQ}M(w z*EB3xn$8#&{+!6|5=?0OFn3@WG{-)Mt*dbJaX-mt?;7$6+eGblvK&^ydxomZJo^GZ z%OH(K`-fc-cD*w#3>@k`fu0O)c=fRB_ru`#j$w$=h#^CLL91HT>T{&Nva4ozZ24&@ z3(nGCziUjrw(al}etKkDuWkDiKe}AtGK`@waQ*5Ae(__|6b^2-s~dtw6gWK)cO%k{Tfl%rzY=;jzIl_da z8?F)F(x?jvptW*FEzM5FmvP6na5+%m)8{>C{^)DuP1Mei31=4%U)_J#591T-Cjy=@ z=NLHsf$dG>Al90&-SP|Dq3yBp;Jx8~YC`KtT`RmYI^Fv2n?IguQ0;o31nZB~)YdH{ zQ*G%#;yR`8zc_)ONLSEP9ri+YK29$^$A>y<7a?w*fcwR0vN!=Xk)8(i5RO!|jAv&d zsy1qv`*H|+#%)nJvk9)9Hq1>!dl-e9GR#f60d?Cj7jXk>(lFO?125GurwUM^xm3fh zi#9i5xONyxwen>OpHgGxtYWzCC7)(1z7HUy_@P>nz=5Lg@Ey;1J^5;@RM`59n?MtSqcLl-9i8p-6%=Z3g5I07F7xxcxb{cwnTO~7L# zo1%Hc5M6P^cL1m0P7O65!AhIrh;Kd>?At>}5C0udjq(6%q0s!_C;>bkkaKSgHNSDa zRrATA06T$E^D!tZn_nM;4dz}QYMB@arI0R|Yaa5ID+>vl;j=?%ns=aawoGiZ2O;hm z#Qi{Bq|k!>=DJIu1Kac&CX)RIQMg>t-i1AfCGO3F|7#fH_72e!HU&w*(>v_Myq#RN z?;E^&sVy=?^{}K^k|BCra<9ZeN%y~mZ=$towTWVvV}scWb{XEeokPtvLv;@FXtfN4 zKd!j%V7-Vn43&0v@5;FHwPDf_JyHLbQvbSA*k8L2GwcFvSFd7|hBARDnVxv%ANoHl z_3a}Rzeb9I^206WIJAn8aNN_s^fP z@5OK91`L{9*eK5C4!Qnoh|3vb36l34F2~j19)B0vHlfZ$n*VFaF^3#EXl;IIX#f0} z@Yh7x&bc1jJvijb9O70Du~!HE?QFLfOk6vmS~WH8KK`j6Wygg*tKzaDYbY*#XlKae zd}^lqm(Y}ZVCbR*PFdN1U`y1$c^xVpHgLdl8AI)GQbsfnB5C^24-&{K#O!&bm30G8 z7T!5U9<}ohmxNu2GEYrN7QqR1bh634hL4*+bYL?YikJ?wR%&Q*_7cfjD)W%R{S<7P zhUlTwUtAQ=q9K@*YIXx=pTe1i9nBenZY1nqup8$Jz?>IxGlu|k!Y^b{fmENMgG|fH z8e~_5vDrde#HY1rIS?D9HK+mgV-EiqoLfU=|gen2aT^` z(&5bGA#7d24_?^oT#5qRJ_Nh9xI@bR0bBU8FVf~xg87>NM(i7zeM>bc+t=(cG1=;6ZP_V~x;?O*ZRqHUquv#L`!pBYU5n~&$_&j$0gRQnfvZ<6wmcJoJr z`4Lq5U-``+47PvDZ$34czl5s#nBUw!n7@`vKg+|pxxgf(n%ex#&lG9mfa-GSd9mxc zLGHD|cF;9wq|MGWiC7mlm_;8wr+lAdTd)9;S{5Jm+8`~5*9j2Fy6@$`-&h$P6W&Mx z!kmIk^A%M4G)$a!u{OCnI%b@W(O!~W;)%n>xKsG>E5o+vxL*y17l_QUxFEO}2f^~E zAbZFLAf|NBz{&dqV#5%dB+3^@B(X7KMbgi}L!;&QhlbFh@u{SWA|z=uyf%vA_wTtt zQ&p#U;GH+PPwR|E9=}B%V&oxfS!zLsEjf=O!`B|p!r#m`2&96-WW+sT>c=C#EVII=ny7gE*{qz#L*IHZ$8P7 zOZ%tfM5;O_{w>ks=xFE{UhO#Fg*6;EXE6MrL=%n!dl(1Sft`ZQKv)foG*av`Rp>JO zlOdr`&D;F$!RPjL8!`q{B_v$Z-6BrE#5alEukuy@%zg`e&CSG=a{yY)YR}}BwHd*RVSvt&7|feR>Fgw?0jXO;ljYM z)ZGOi+MH7-y1p3Tz8LsH%+3=O1n(7~K_hk4-nsN3J#7|!;;1`}U#I5gY;K9+^= zxDqRZ%T6h4wkqk#)~&5I`MTkw!_SSYEv>fd&TqLSCpv47^`cG(|B?*4dvSM3yj?UL zv%9h*s6{x0_&cwjo=D3dD=W)Olt~F3EW%rDd!rTW-Q)SE72$(}zJma^c_904zS1PU zWRjTOUT`0m4X&mE?oR`d><6RJwiQ*lf5KT%88cgaUt*hmm>$<8W;bJH6BQdoPm6>T zOtT!8)bQSLsk|;|Djo5#qGs)$%o@wS2lc{{#_sdZPxu3p@VzpD_*1?vNK$G4HgyKs zIr;YRbQ1NhJU0XSaywjXT@-)l~75^KKl4yRNGNh8HOU%5TIci8y_ zkX{Osx+({_-wb%fKz~u7|A8lwJK{GaR(;2-IT5&m*^2hdg8Yf<@z+z#rt$8N`86;7 zNJk`2hf^4O@*1^>4zAHE{YPfF@5UNt%NFmUWb4V|=<8>v<}^R;;c*;ka!8wa>Y27Ez^vyac-J8?Lx`Jn;s zmjb1;m#0GxEv?NRU{?)nNS3fU1G{!?O`hCr960gn&X>dJ+u>6!d80wo2jdVHfAf6< z9pez)BFA^WrZoeb*9;hQts4?InX(6JGX{)#)(x*yG7V{7Il!$HdeL<8*@|)5=Y}@V zA84L0px~I({Uh`pzH5+88z?PrHO(8?nj|qTfq}&>8AzF%n51l81VU_hS?H}p)_#$1 zo)hR>mi`6wyzNv>1y=(tuk!G81in@$^S&aFQ^~bSlvv;Oke=iloW(R5)}ozP!h7v}AuKUGYSJ;@xZ32D8@wr_ySz{TZfR zzoEl+9*2V})7JjlZT%a~bi{_^c-EN4z`0`hOSjofRGtU{1eM2NO_cTQAee>xnc6Z4DSC59HoopW(tN<6>N^WGqD!tc67DetsM-5_Cxk#EymzMi_grxrG?Dr(F zeZx_^`!(7nE-Iuc*xce>ny*i2ZBK??Nt2v@s?wwa5{xdoz}P}6qg0LZ@TK0yi10xVto!AQ zkDWTj?mFH$Zg<5g`Z8-jt$S}mI3;pD*Z)^}Qrj$Ibz55x>JCh3+zSQ$wPjkyy}dRJSfoP2G@4Q|V8^5DLE9 zoew$0#~9c#Mv1L9$3%Z$?|#~AD(gR;V=C?69cJ3x4-q6z$9?@=S$|+F%co=-+=NVzMa+2t?g&4 zu|G$YJbWEFYA4PL9s(M8(7(j6SA{vxKrPdgUQ42~?Btl3rs&DV)RDqHaJpzTE8AR* zv2918Yg~abb_b-@(k4muR}DW8oYnj{Urar&uzgkkbN|`w_XpIcydA->sYM-%b5ZiH zpO_Z-jJodCUJ{MQ_8!d`j6Tf2(aVroz9JX%3L9{6SH@q z)jzJ-_rBYLM)+MH7tzly#)huj`e(tW2bs|3uls0mGK*^2i`t;Ynn(C#Hhawvz3NFT zRh`(d77=15Cru=2!UopO2mW{@~P;PbE~r zx`A)@_vYJVK{=s~QoBu8Et{$?2sP#yHpG9O-pe;m!sr^zClF(|Kw?YJbY2p6gn1^> zim*P20M<&2scn;J>4TDsQuc?wx^QB(b{~01wXS8UnVrA;Fg$vk(~Lvz?Bm>h>F~Q2XP&prgqh3L80vDk>x(|_i#}j1L1nam z&lC21AMoGVuwmcR;VXmOCTx7RkNdcf9qI*=bo|8wBq+)@6T_avMr~0Hez&G%Kf=;c zm(t-XU_0VqnLA3*PhX@V$u5wZu6Z zQePqgDnA#)PrWx_QXT(7QwBmJpX+@aHjTl=7t8_^5(p*>orlDo=nd#6#E0ozt(?;qVl$j6u z2Ja&XiAx7IzF`C;NWB4rs*4rDMJr;MZr`B&W$dINl*S`lb;0EHw}jZk7NVuH9l@EI z(_=#K3g1CuqL;=bY=m4NsN%ITQA{6vOTh#_)W|A`(Hjgvr!S<5=qnvdBM@le zl*i9R)n~s6L2T8JV90)w;J!0AA(`3k=3_!1IJ6@sx+Fhgw?G>bB?fa2s~JO%>PRiP zP4Oy32fQUT69h@%24p7j5 zAwU`ob+s#c9Zo&ejl8L65B1W)4fs|S>RHlD&%|mu;Z3e)qcAWQAy|`e4|p# z{u8n00lv1bx8i-j7)qW0*G9F!?X842MDSHja1&+qePn~L3v9u0wqBi08UGRqkjDL{ zm;Fs|wHPkI&@cOrUZ!SMb7gN=1Fj4>k#A5oTYKRgK9EBT*yf5}=DF#B)itQbR&4EM z8nD7RrlMZX%#t{ocu2iV)vCa&6JP}|tsVjAffExeyp#t0K{S2n61$<7+t3T>dU@1_ z-asFz?44tpld zW;i7|diYHc8gK`McNW3i@?JQFaB%v-3xs=SvWrpgY;}*o_t3TY!%u+Q5jcbHmW>@~jT?6Ag!(q4faPxe_gAdRfl#D|(Mr_BQP*)IZjdR#P*wgC& z>_h08i|vK?_)yDfdKrkN{dEp*7JCOuD4YRBtw%An6f(~9c))CIldbdVfD>WFrC86M*2wi_kmwYfL;wj zy%ooxU4bNv>$K*hY6>NA*(RZ@j9YPvw@VD}o;9IVyYSn$wGw(+>uN^b)(KS)O6WxR zsBJ1^*^y$pjXJ7+hZ`71*g`RUFhj-CeJT-`-aXtM_+|8WBD zF8Y4@;p=pQ3gEp_3H^8nyg5QL5t2o{+>?y&f?zl>wyDb|;%q5t0v&EGu zO()CnAP;1T6Kpm$n&_8?#f04rAEm@hUvGXxkYjZZXX#<{Q3#)clf>{z4vckbf^Jt^ z26Z4LSzR5U-p{kkg#ihx7<2(IawOlMf^~d)2e{mY@BlA@VnS8maATt1ZU2U+ZFFdp zy!}Uhxfq>sLi+bSNSFPhXStlteMpXy;wuW2&yd(tsm95TpH6fsVHb`aQ#ZytzvlBp z$4A{SEQOHUE>Z61eIH=uM`&Y0BMt4{l?UJSwefl5_&j31%pVJJpXM9m%`fon*Laez z{ea%ZMho-)1eosffUAE52khR9JFHd$e%&g>O0l@AY?7$39@x2}9_wa&zF!ih>M_jj z$-q}0C@*8}hM(>*T85pD(p~qjY*5e0v!q8G@VnqXxI2)tUS6XHcckQ|Vaflc8v24M zJ%9~(Yp4S6y`(!(7VL>NbXPnku+XbvXHaqzZeTI)Us%x9BOC-hFQ>BOZ*#uF=TD)k z9)_Rpdg%~*>W-+H-M|;#$E`KQOsA^Wk{~lBTZ7Y4KviG(kQ$hJZMSasxT@y1Q$@>G@d- zWNiPn+ON9(UX3ETBeWMr(?)%YU0{cKASL|9_sk9v@Ns>64bX*@>2x>Sg^yYp*V65u zO&R-w4+TH-0Y?kJKsg7WdP3xxPuO?S0N4Z9;L4r9#X8nZwnJsJ{qLg}us#Ia z-40OOJMq5G3Xv{>09 zYUK>}mzi<4g9mo)pr@XRGyFaU4$Mi4ZP!V*5_KYcAIM^YdHwIwwfml(rajfLXx5yq dv!1!K_IImi?mhO}-AkEw;>-Fsd~)i={{t*W(vJWD diff --git a/variants/um_tinys3/partitions_tinyuf2.csv b/variants/um_tinys3/partitions_tinyuf2.csv deleted file mode 100644 index 4026378b6fb..00000000000 --- a/variants/um_tinys3/partitions_tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 3776K, diff --git a/variants/um_tinys3/pins_arduino.h b/variants/um_tinys3/pins_arduino.h deleted file mode 100644 index 251b1f8dd7d..00000000000 --- a/variants/um_tinys3/pins_arduino.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80D0 -#define USB_MANUFACTURER "Unexpected Maker" -#define USB_PRODUCT "TinyS3" -#define USB_SERIAL "" - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 34; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SDO = 35; -static const uint8_t SDI = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; - -static const uint8_t VBAT_SENSE = 10; -static const uint8_t VBUS_SENSE = 33; - -static const uint8_t RGB_DATA = 18; -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN (RGB_DATA + SOC_GPIO_PIN_COUNT) -#define RGB_BRIGHTNESS 64 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = RGB_BUILTIN; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t RGB_PWR = 17; - -#endif /* Pins_Arduino_h */ diff --git a/variants/um_tinys3/tinyuf2.bin b/variants/um_tinys3/tinyuf2.bin deleted file mode 100644 index b2723dcf3b96151b080a83a7274501eea78ddee1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152608 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%0D6?JpemQ7 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 p=X$ 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

    t?|RoHfy)z2mqvRKsOH4>{$d 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%0DAJmtO@3f{aPvSIJ)-QnKRc*|LS;|PvCLk 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 diff --git a/variants/unphone8/pins_arduino.h b/variants/unphone8/pins_arduino.h deleted file mode 100644 index 66e30bdd564..00000000000 --- a/variants/unphone8/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x16D0 -#define USB_PID 0x1178 - -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -static const uint8_t TX = 37; -static const uint8_t RX = 36; - -static const uint8_t SDA = 1; -static const uint8_t SCL = 2; - -static const uint8_t SS = 3; -static const uint8_t MOSI = 39; -static const uint8_t MISO = 40; -static const uint8_t SCK = 38; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 8; -static const uint8_t A3 = 9; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 14; -static const uint8_t A7 = 7; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 2; -static const uint8_t T2 = 8; -static const uint8_t T3 = 9; -static const uint8_t T4 = 5; -static const uint8_t T5 = 6; -static const uint8_t T6 = 14; -static const uint8_t T7 = 7; -static const uint8_t T8 = 15; -static const uint8_t T9 = 33; -static const uint8_t T10 = 27; -static const uint8_t T11 = 12; -static const uint8_t T12 = 13; -static const uint8_t T13 = 14; -static const uint8_t T14 = 15; - -#endif /* Pins_Arduino_h */ diff --git a/variants/unphone9/pins_arduino.h b/variants/unphone9/pins_arduino.h deleted file mode 100644 index e20cd337b7f..00000000000 --- a/variants/unphone9/pins_arduino.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x16D0 -#define USB_PID 0x1178 - -#define LED_BUILTIN 13 -#define BUILTIN_LED LED_BUILTIN // backward compatibility - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 3; -static const uint8_t SCL = 4; - -static const uint8_t SS = 13; -static const uint8_t MOSI = 40; -static const uint8_t MISO = 41; -static const uint8_t SCK = 39; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 8; -static const uint8_t A3 = 9; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 14; -static const uint8_t A7 = 7; -static const uint8_t A8 = 15; -static const uint8_t A9 = 33; -static const uint8_t A10 = 27; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 2; -static const uint8_t T2 = 8; -static const uint8_t T3 = 9; -static const uint8_t T4 = 5; -static const uint8_t T5 = 6; -static const uint8_t T6 = 14; -static const uint8_t T7 = 7; -static const uint8_t T8 = 15; -static const uint8_t T9 = 33; -static const uint8_t T10 = 27; -static const uint8_t T11 = 12; -static const uint8_t T12 = 13; -static const uint8_t T13 = 14; -static const uint8_t T14 = 15; - -#endif /* Pins_Arduino_h */ diff --git a/variants/vintlabsdevkitv1/pins_arduino.h b/variants/vintlabsdevkitv1/pins_arduino.h deleted file mode 100644 index d0559b9f01b..00000000000 --- a/variants/vintlabsdevkitv1/pins_arduino.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -// PWM Driver pins for PWM Driver board -static const uint8_t PWM0 = 12; -static const uint8_t PWM1 = 13; -static const uint8_t PWM2 = 14; -static const uint8_t PWM3 = 15; -static const uint8_t PWM4 = 16; -static const uint8_t PWM5 = 17; -static const uint8_t PWM6 = 18; -static const uint8_t PWM7 = 19; - -#endif /* Pins_Arduino_h */ diff --git a/variants/watchy/pins_arduino.h b/variants/watchy/pins_arduino.h deleted file mode 100644 index b5bc02f374c..00000000000 --- a/variants/watchy/pins_arduino.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t MENU_BTN_PIN = 26; -static const uint8_t BACK_BTN_PIN = 25; -static const uint8_t DOWN_BTN_PIN = 4; -static const uint8_t DISPLAY_CS = 5; -static const uint8_t DISPLAY_RES = 9; -static const uint8_t DISPLAY_DC = 10; -static const uint8_t DISPLAY_BUSY = 19; -static const uint8_t ACC_INT_1_PIN = 14; -static const uint8_t ACC_INT_2_PIN = 12; -static const uint8_t VIB_MOTOR_PIN = 13; -static const uint8_t RTC_INT_PIN = 27; - -#if defined (ARDUINO_WATCHY_V10) - static const uint8_t UP_BTN_PIN = 32; - static const uint8_t BATT_ADC_PIN = 33; - #define UP_BTN_MASK GPIO_SEL_32 - #define RTC_TYPE 1 //DS3231 -#elif defined (ARDUINO_WATCHY_V15) - static const uint8_t UP_BTN_PIN = 32; - static const uint8_t BATT_ADC_PIN = 35; - #define UP_BTN_MASK GPIO_SEL_32 - #define RTC_TYPE 2 //PCF8563 -#elif defined (ARDUINO_WATCHY_V20) - static const uint8_t UP_BTN_PIN = 35; - static const uint8_t BATT_ADC_PIN = 34; - #define UP_BTN_MASK GPIO_SEL_35 - #define RTC_TYPE 2 //PCF8563 -#endif - -#define MENU_BTN_MASK GPIO_SEL_26 -#define BACK_BTN_MASK GPIO_SEL_25 -#define DOWN_BTN_MASK GPIO_SEL_4 -#define ACC_INT_MASK GPIO_SEL_14 -#define BTN_PIN_MASK MENU_BTN_MASK|BACK_BTN_MASK|UP_BTN_MASK|DOWN_BTN_MASK - -#endif /* Pins_Arduino_h */ diff --git a/variants/wesp32/pins_arduino.h b/variants/wesp32/pins_arduino.h deleted file mode 100644 index 670c75fff93..00000000000 --- a/variants/wesp32/pins_arduino.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define TX1 12 -#define RX1 13 -#define TX2 33 -#define RX2 39 - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SCL = 4; -static const uint8_t SDA = 15; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 32; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; - -static const uint8_t T0 = 4; -static const uint8_t T2 = 2; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -#define ETH_PHY_ADDR 0 -#define ETH_PHY_POWER -1 -#define ETH_PHY_MDC 16 -#define ETH_PHY_MDIO 17 -#define ETH_PHY_TYPE ETH_PHY_LAN8720 -#define ETH_CLK_MODE ETH_CLOCK_GPIO0_IN - -#endif /* Pins_Arduino_h */ diff --git a/variants/widora-air/pins_arduino.h b/variants/widora-air/pins_arduino.h deleted file mode 100644 index 0c0472b3ac8..00000000000 --- a/variants/widora-air/pins_arduino.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 25; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 23; -static const uint8_t SCL = 19; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 16; -static const uint8_t MISO = 17; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 39; -static const uint8_t A2 = 35; -static const uint8_t A3 = 25; -static const uint8_t A4 = 26; -static const uint8_t A5 = 14; -static const uint8_t A6 = 12; -static const uint8_t A7 = 15; -static const uint8_t A8 = 13; -static const uint8_t A9 = 2; - -static const uint8_t D0 = 19; -static const uint8_t D1 = 23; -static const uint8_t D2 = 18; -static const uint8_t D3 = 17; -static const uint8_t D4 = 16; -static const uint8_t D5 = 5; -static const uint8_t D6 = 4; - -static const uint8_t T0 = 19; -static const uint8_t T1 = 23; -static const uint8_t T2 = 18; -static const uint8_t T3 = 17; -static const uint8_t T4 = 16; -static const uint8_t T5 = 5; -static const uint8_t T6 = 4; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/wifiduino32/pins_arduino.h b/variants/wifiduino32/pins_arduino.h deleted file mode 100644 index cc3841aba73..00000000000 --- a/variants/wifiduino32/pins_arduino.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 2; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t KEY_BUILTIN = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 5; -static const uint8_t SCL = 16; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 27; -static const uint8_t A1 = 14; -static const uint8_t A2 = 12; -static const uint8_t A3 = 35; -static const uint8_t A4 = 13; -static const uint8_t A5 = 4; - - -static const uint8_t D0 = 3; -static const uint8_t D1 = 1; -static const uint8_t D2 = 17; -static const uint8_t D3 = 15; -static const uint8_t D4 = 32; -static const uint8_t D5 = 33; -static const uint8_t D6 = 25; -static const uint8_t D7 = 26; -static const uint8_t D8 = 23; -static const uint8_t D9 = 22; -static const uint8_t D10 = 21; -static const uint8_t D11 = 19; -static const uint8_t D12 = 18; -static const uint8_t D13 = 2; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/wifiduino32s3/pins_arduino.h b/variants/wifiduino32s3/pins_arduino.h deleted file mode 100644 index db372a34358..00000000000 --- a/variants/wifiduino32s3/pins_arduino.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -// No USER LED or NeoLED - -static const uint8_t TX = 45; -static const uint8_t RX = 44; - -static const uint8_t SDA = 4; -static const uint8_t SCL = 5; - -static const uint8_t SS = 46; -static const uint8_t MOSI = 3; -static const uint8_t MISO = 20; -static const uint8_t SCK = 19; - -static const uint8_t A0 = 7; -static const uint8_t A1 = 6; -static const uint8_t A2 = 2; -static const uint8_t A3 = 1; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -static const uint8_t D0 = 44; -static const uint8_t D1 = 45; -static const uint8_t D2 = 42; -static const uint8_t D3 = 41; -static const uint8_t D4 = 0; -static const uint8_t D5 = 45; -static const uint8_t D6 = 48; -static const uint8_t D7 = 47; -static const uint8_t D8 = 21; -static const uint8_t D9 = 14; -static const uint8_t D10 = 46; -static const uint8_t D11 = 3; -static const uint8_t D12 = 20; -static const uint8_t D13 = 19; - -#endif /* Pins_Arduino_h */ diff --git a/variants/wifiduinov2/pins_arduino.h b/variants/wifiduinov2/pins_arduino.h deleted file mode 100644 index f80247e24b9..00000000000 --- a/variants/wifiduinov2/pins_arduino.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 13; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 21; -static const uint8_t RX = 20; - -static const uint8_t SDA = 4; -static const uint8_t SCL = 5; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 3; -static const uint8_t MISO = 10; -static const uint8_t SCK = 2; - -static const uint8_t A0 = 0; -static const uint8_t A1 = 1; -static const uint8_t A2 = 2; -static const uint8_t A3 = 3; -static const uint8_t A4 = 4; -static const uint8_t A5 = 5; - -static const uint8_t D0 = 20; -static const uint8_t D1 = 21; -static const uint8_t D2 = 9; -static const uint8_t D3 = 13; -static const uint8_t D4 = 12; -static const uint8_t D5 = 11; -static const uint8_t D6 = 6; -static const uint8_t D7 = 18; -static const uint8_t D8 = 19; -static const uint8_t D9 = 8; -static const uint8_t D10 = 7; -static const uint8_t D11 = 3; -static const uint8_t D12 = 10; -static const uint8_t D13 = 2; - -#endif /* Pins_Arduino_h */ diff --git a/variants/wipy3/pins_arduino.h b/variants/wipy3/pins_arduino.h deleted file mode 100644 index 1cff6173ea1..00000000000 --- a/variants/wipy3/pins_arduino.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -// Neopixel -#define PIN_NEOPIXEL 0 // ->2812 RGB !!! -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = (PIN_NEOPIXEL + SOC_GPIO_PIN_COUNT); -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -#define ANT_SELECT 21 // GPIO21 - External Antenna Switch - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 12; -static const uint8_t SCL = 13; - -static const uint8_t SS = 2; -static const uint8_t MOSI = 22; -static const uint8_t MISO = 37; -static const uint8_t SCK = 13; - -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/wt32-eth01/pins_arduino.h b/variants/wt32-eth01/pins_arduino.h deleted file mode 100644 index 49cc740efb3..00000000000 --- a/variants/wt32-eth01/pins_arduino.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -/** - * Variant: WT32-ETH01 - * Vendor: Wireless-Tag - * Url: http://www.wireless-tag.com/portfolio/wt32-eth01/ - */ - -#include - -// interface to Ethernet PHY (LAN8720A) -#define ETH_PHY_ADDR 1 -#define ETH_PHY_POWER 16 -#define ETH_PHY_MDC 23 -#define ETH_PHY_MDIO 18 -#define ETH_PHY_TYPE ETH_PHY_LAN8720 -#define ETH_CLK_MODE ETH_CLOCK_GPIO0_IN - -// general purpose IO pins -static const uint8_t IO0 = 0; -static const uint8_t IO1 = 1; // TXD0 / TX0 pin -static const uint8_t IO2 = 2; -static const uint8_t IO3 = 3; // RXD0 / RX0 pin -static const uint8_t IO4 = 4; -static const uint8_t IO5 = 5; // RXD2 / RXD pin -static const uint8_t IO12 = 12; -static const uint8_t IO14 = 14; -static const uint8_t IO15 = 15; -static const uint8_t IO17 = 17; // TXD2 / TXD pin -static const uint8_t IO32 = 32; // CFG pin -static const uint8_t IO33 = 33; // 485_EN pin - -// input-only pins -static const uint8_t IO35 = 35; -static const uint8_t IO36 = 36; -static const uint8_t IO39 = 39; - -// UART interfaces -static const uint8_t TXD0 = 1, TX0 = 1; -static const uint8_t RXD0 = 3, RX0 = 3; -static const uint8_t TXD2 = 17, TXD = 17; -static const uint8_t RXD2 = 5, RXD = 5; -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -//SPI VSPI default pins -static const uint8_t SS = -1; -static const uint8_t MOSI = 14; -static const uint8_t MISO = 15; -static const uint8_t SCK = 12; - -//I2C default pins -static const uint8_t SDA = 33; -static const uint8_t SCL = 32; - -#endif /* Pins_Arduino_h */ diff --git a/variants/xinabox/pins_arduino.h b/variants/xinabox/pins_arduino.h deleted file mode 100644 index b5978d1ea94..00000000000 --- a/variants/xinabox/pins_arduino.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t LED_BUILTIN = 27; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -#endif /* Pins_Arduino_h */

    _brsj_>r3+@gH{1w8|rb)Pr_%J+~JR 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 diff --git a/variants/adafruit_qtpy_esp32s3_nopsram/variant.cpp b/variants/adafruit_qtpy_esp32s3_nopsram/variant.cpp deleted file mode 100644 index 5f7a3c0b55d..00000000000 --- a/variants/adafruit_qtpy_esp32s3_nopsram/variant.cpp +++ /dev/null @@ -1,39 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) -{ - // This board has a power control pin, and we must set it to output and high - // in order to enable the NeoPixels. - pinMode(NEOPIXEL_POWER, OUTPUT); - digitalWrite(NEOPIXEL_POWER, HIGH); -} -} diff --git a/variants/adafruit_qualia_s3_rgb666/bootloader-tinyuf2.bin b/variants/adafruit_qualia_s3_rgb666/bootloader-tinyuf2.bin deleted file mode 100644 index e0b64a8f24a3de33ab2d0df240a4f337e168f7fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21696 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Ξ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 - -#define USB_VID 0x239A -#define USB_PID 0x8147 - -#define USB_MANUFACTURER "Adafruit" -#define USB_PRODUCT "Qualia ESP32-S3 RGB666" -#define USB_SERIAL "" // Empty string for MAC adddress - -static const uint8_t PCA_TFT_SCK = 0; -static const uint8_t PCA_TFT_CS = 1; -static const uint8_t PCA_TFT_RESET = 2; -static const uint8_t PCA_CPT_IRQ = 3; -static const uint8_t PCA_TFT_BACKLIGHT = 4; -static const uint8_t PCA_BUTTON_UP = 5; -static const uint8_t PCA_BUTTON_DOWN = 6; -static const uint8_t PCA_TFT_MOSI = 7; - -static const uint8_t TX = 16; -static const uint8_t RX = 17; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 8; -static const uint8_t SCL = 18; - -static const uint8_t SS = 15; -static const uint8_t MOSI = 7; -static const uint8_t MISO = 6; -static const uint8_t SCK = 5; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 16; - -static const uint8_t T3 = 3; // Touch pin IDs map directly -static const uint8_t T8 = 8; // to underlying GPIO numbers NOT -static const uint8_t T9 = 9; // the analog numbers on board silk -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; - - - static const uint8_t TFT_R1 = 11; - static const uint8_t TFT_R2 = 10; - static const uint8_t TFT_R3 = 9; - static const uint8_t TFT_R4 = 46; - static const uint8_t TFT_R5 = 3; - static const uint8_t TFT_G0 = 48; - static const uint8_t TFT_G1 = 47; - static const uint8_t TFT_G2 = 21; - static const uint8_t TFT_G3 = 14; - static const uint8_t TFT_G4 = 13; - static const uint8_t TFT_G5 = 12; - static const uint8_t TFT_B1 = 40; - static const uint8_t TFT_B2 = 39; - static const uint8_t TFT_B3 = 38; - static const uint8_t TFT_B4 = 0; - static const uint8_t TFT_B5 = 45; - static const uint8_t TFT_PCLK = 1; - static const uint8_t TFT_DE = 2; - static const uint8_t TFT_HSYNC = 41; - static const uint8_t TFT_VSYNC = 42; - -#endif /* Pins_Arduino_h */ diff --git a/variants/adafruit_qualia_s3_rgb666/tinyuf2.bin b/variants/adafruit_qualia_s3_rgb666/tinyuf2.bin deleted file mode 100644 index dd2ef92b724baf327e347d94d6fa38e98ff8cd40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157728 zcmeFa30#a_|37|a+A|21B3z}kXqgsmqG{S`Q%Q(sYNi^d8Z%R}+*FiG5kmHg?0X`+ zk`#s9_U#U3yDcGvGQZEcW`=mUpXd2L&-ed({a*k3;ys_Ue$MAQ=X18J&$+Ir%GAJc ze+R}(gpe9Qc2NjKb*T?{`Ocs=D!+ zTiYpiHR}w6Uw%@(zj$bG{T1IO{x5iFQHW^>U;yl*5py;dF)`ccVTjoQ&>4rAd&41q zk~Ey*gqY?Ii0J{q?%y2|vlq~b;Qs)y0(Z0vqyg*!v<;WiE6#{{N#@o7It;Lm3F+Ms zvl!49+}Mv11;Al)|Ig?sh}Q&}`bGj_~w>} z{i`%C;ji;XCL(5Gm$H7wcSpRGM<1Y}V?&tE9_}8v-fzuEObm{UE|Ae9K%)goks>i$ zC`SD!(udpH#QPE^MoFfGk;s{F69@>1Cz1q~5E-xjlO#dH#GfRwj`#e=B{(S|ftL_V zBqk6dpnNV7ohalI$!sByoggL>V+b}89mf-x6H!TGf(>QzMBwD{#l&=;IF5)<;){6} zWFAqHK#(XDca`S5qTJ)S(NhU=99vAd2L^cgdPjN%dwK?k28KkA4e)gj4EDslxe4qj zK9@uA5{P(iLQ-^MLJTkVS2q}f>jsOD1%t{khwNhE3__5|1L1+2kwBU?nm<)qKeqAX zzTLd74KdYcCJ`R$=0_wXiiw!Sqy&yRA%Z)Ddj_`RM36(w6(+Fxg!M2wnL1Gv&Exag z;zXg8wI)Z?7+gQJj=bv0)+3TcTp?5}hx@A=!3`NB1fVVX1U!-+Uj2G}gQN+A&eE%Z3 zr=J%QgVTrjxY-P|2lhrHOUtfW@|{|Hh6GvodU(mC=qfezm8^Wkq>pi6j7^xDkT^X7 zsZij8a17K+VNo$fRF*$CJ`vP_lN2u?K;7sm$TylD9mgd^GZLZ+0b2-F0?i6dg0(A2 zD6LekP?#t*2My&Cq?2HCI6|&SM6eS$&^u;wu|@$e6M$)VbvaLgkjqbGbN*wt9{)uV zWxW1dqKy;s#9ShZ4gFVIGl|jBNkSoX)9G=zX*p8S#X=reggedjZ|T7o!)J@)puYV5 z$IAL=3>$`xpR-~|M?;m9oe$bU-U3kLgb6Ppna$^Mi1_#KePnSl3@UgL6d`~9GltAOY z#n6dwafli0={6erpGYhuq@Dn|j}*oi1|R|vLT)TigjEddpfiGkM1)W_*22){8xo9_ zPs~jbJ44NQ2Dw{fRd>efMG)Y%`QB^$z1QxmH^?132?7O$$Q*8Txr1a0QEntN>>$}- z2gv|ChRGA#%N-7Khoju#BzIU#StB=VDQj>@S%X8$8XQvA;E=LLA#TBBe&iYM?(Q}= z#1lKh+&nyjkss638^<9(&j1gp!#!|pKq!PD^iq}T@&SOFAfFE#*c`~v!$V=fDrQY zbl*a8x==r+KTjlOjoo;K;=>b@MUi*+RVr!evarNBUKEUST_lw=`YO7dTO4rv8u*PH z4uVNn&WEhJE`E0b-Ge7W?gDEmv5^v6DY281VNzl*B@URt<)%(`2?9(3%mS;#+x zJOSu-qq>*_>;R(x;{iN?05Bhr3s?!*F2io1CjnOhj{%(kH5%{%;56nkDo^hQ{$N0? zEPN)=Y?&LUSq1JQz!t!6Ksn$T;56VIpu2i^btVkEVj(-4>x`W7C`V5*qC19z6B9(t zcCmmZVDQ+WP)`q;FCf%6V60~d!nyx(j`vOyCK3Kz4o@tdy-7uJCfxDz6~Sbjz>7AP z4(66H9dO0uIx*_oL?B%kkaN3`D^3#PWiYHups4QZ|FC93!Q80CM9e~(B#z4#L`Jg( zBKX1G0DTL95`G>M$>EaoUYE4-WYS+oNK^6>K;2;B_QML(7lL^(AI`)=5y5W$1Us3{ zcxL z(tNkL4+(US4E7B13=Z>*^!M}+3?2_&Z{NTGawddfNXSlzcEcTj;lMx)gcPtFU#YdOC>2(Eq#NQ;oh#N5>H5zR{O7v(oxp#-i{Bai z^xw>t#MKv)L1zJ;xCfrBl*?TlZ6O`lx6;qP&fC{ zRvyqO$ivDPlaL^i1Ox^|dic9Vl2O5-?l=mr91W_Aq6R|hsxk&Z=Hsv+gu2PYC19icW%CiK*6y#}eBwQ956Yl+NxL1VOGT(_xQNf?3Vxz*?y|Kq zEc{_tBua!W5UkJme8M}(H;@qU5=5{LBFNkX?0Uqqy^bfjpF=Q^Va@yrUn5vwCy5jB zW+uAJ)(du?Bx5PV?-uG(y%36{zx9mowsqVX*l*$Kn?uAvk1!{uMnd99J|_`xudtWH zi~Z(JCS#*`Y>^FJnt(_qQ+x|j@3L?D>!L(lF{~4$>)R;))JV|p$awaYL?Pze73dZegjbQj+-LthS5Rt#bQVUFd)DhgVg zZf#?0H_YC_(aDYJ?&0Yb>J>_OrUk&T)n9`=-j6jhWc5QbEg(lAj|gc$>-6eTtNUKB(zFn|cE0t2b5D5Ybf zj3jE5Vu~773k{K=B-Q1NG^(1ySI-jaDI#iy7#6WV%8LGU$;Y>Y0TMtdP#S8-E($oH zWN@V-Q+Vo$;JzY5Y?*<9p~%ZE)EaNYCc43R2%E)8-PL_z;2YuP76y;U0xaPNFNA=H zlnVtBNMRsC+7Ol<6yV)my&sP5?&|}4D>4lQslu(J_p?|p5E^jK*TXF|<<^UJ(`PTg zdiT`H4>7Oi8|G@*5HvMg23mf8SqIuOPi z(6qHruN{mVv-Ti%hDNR7pF<9RI5C%AU-59&hqaG|Cm#>0{cZi*jtinW7j;j*9ey%; zu*WO|)8<(behx*e6!`c1hmEnAuu~(gxSPmiv(|@?&6{%PT4&N5OETyi#FL9o__xem zc~CUMzVSf@eP!t6qRQxZN2ir7VwWh<*h8jutnRnx>Z{GmS7!IM;HZ|VK1^QJzIBd6 z!Xm-)IBWO9Gd|bax6N?~m~1%VK#_iZ(eT8^2jeJr_|bdg#<=SQ+AR*+QS|BV717){ zOAY>wiuF;RS6|gMFpp$uJI>$N_IUJ}tFK}lGD?)}wU5S86qi*U&mA}Iw;@W!0Ypj` zOW8Pdwj?2UTm%NVYl)v_RB z2RqMdg|%Up_Q?5@pWmsaT#b~hIwI25-1O+xA9-uuwe_8prEyF5qWvVe^Yq&ueGTS^&3vP8xlX+)YM^yV zwdB1`sTF8I~SK{KEAbqQqpbnhHmbZgrGOvC)){+w z!KQ4>DAiZZdv9EMHeHmuucX_y#jKaq2Q%`shq!Ju&bW5Zr1vp(R;=0Y{u?%X2K(%P zQj*zPZDPOrPR9n{S-Sd1w$4<&rd>4LH8zg1{>rj3VJ{WaLntK`%jzg*6U{fe_xEhB zs^Pp>+4RwM8FQMuVRX?V|3MQj^IjfIFxHqoiDA?8$&I$+jFg(*Lyz2;pk}YM*LKxJ zg%e)m7*>r+*GKI&Wz3DaG^{D`#nihdC6%RUUq@;qb^V%CiaQcC)hv~C&fB>a>n-@* zU3|a1m!Eomm6*NzmV%DKk@j1vLzF6VeXGJAFVjhE$TO(ih@RfDJfM4`di6^-cvjK_ zp1l2R9nm)Q5_7K!Lp?;%PjYK%ecVvstF5GSp{1%}U*Cz=^Em<&2JQMNdiV2XQB8$S zL8x7`&DJO&4{kQs;7gh|c z9UO8%HNG}~^RQqax=E^^!XELCj3oz;P^%jQx0?*uR;*3ztzK$8VScjVgodF-Wt6L4 zI`_A0oz4!q`pz;Uvv!bGWk1Hmr8{?`*Ud}arw2bRnaM6&-|vpu?!?XMF##c?hiP4D z^jo<7^Tj0rQB9Gndsgkdwt0O>YIu!sXmqV18cOv9t3Zmma}eWan^vft+)Gmj2@Yeg`xrXS3-FtIj>HkG1t5xM#`KOINoFo*Q&ePSAMn|L0=5@bJp(h3@Om zo?G$f!X58RHec?2A*EY=#NgU34t-`Uv5JfPFnT~k@c2J0wxDF8=fa|Vogp@h|40&i z+4|nrgJ#!qWudm)faJQ>L4UM0#nwmrt=Zi)pL6Z%_J-JgL^E zxy57QmCUdn;fWd*^--I<4bP}=Sy8q_>s>*X_SWw2p7*gxpYYtgd25`0sBP-uJ4~IR zvzC+8pKs2L9-zG9);7+bC*wA*pf6hHUmRy0y3B8+_ss>%?1u0r_jIi9?{apHxly{F z!h3D4*MW7)r8zp4FH>u-+M3044FpSS3Qq;BuzuPRu-5v}t+UtsGi9y?{*Y=J0s4o%Y{X9}Ow>q78@!@=bW z=LZff-Fi22J1@%MwR7{$Qwzh&sI$+S9PB13Dc=-w=M3F`$FUtbDlTp9+h%XtF=D1) z`hauWovz2mH|v^tblaE~I?ym<*jDSQRqG|b2+qbE;MFroUykmas)1j+29PfR(B2zd)^WfyO;Z0Xt zL+U90y(>PZkB$G5I5^wIYfNpBjW2QTAv1Z@n$HvCidOeNSe7^7`Nq{Tz4q9oj}PrO z=*G4{i-Mp%t+%Gnc3yh%8mIe>KOTwq`+TxlmQiqN(>8N|y=Yy@Y0do#`_2}1R+MKP z(yh9?qJKl?(0jzp)fczEd;PhW-uBbS98(q!Lmsw;YbsWxIWy0AEOAqQxRu>=Xn19h z9!kl%`4{KTpWFDT^xd4~*2RxEJ##r(={y?RT3_%vbu)ta}0SB_TsvG1anjM$s^aL#VQj#f)SNc950*dZen!ZUS* zbuG&0Zus`*KAR5z&zH z#uxQle!JIic|)c;Cfq%p@3ME{xXzi9?oq3mDrJtnOK+`+G0yb!5*m%OF5F!)%|y3< z`}%-_%Q_z3gRLIBpA5L2ac65Sn!0TJo7?BK+#NDSy32Ij9QbyP&v%5h?n0KMeApFA zeY1x@d}O<#eZa%OsHK_>M@I5JmRw*B5o&F$BXWo6tv~;A&)#7j%PA37+fMAL^j{UZ zpnL!0JGGnZjHk63EuL!1?diEQMn!9YdqVs5_feCH#gvlsC2L}oW@SY^)m7YnZ(x7x zwql2IK{Y*cOroaVCbUQS<(w5*PdLKzo8r_ke9ocxwx)pn9^Iy>+gJH+wpuCFI<5M! z+3CYrBlV_Dg$Xn*fyu@-VH2kHf75LCrH<`-oyOX%)pJg;n`2$G$Z6iz`*cgANr++e z_Q_c-ispeuBluh9tFQIQ4{#pO`9060!Tmst(uJ_YW-i@!EzAquY?JFs-w;!}N7VOX ze*dCyrltLxaVLt`ekvP0Zg`_%zE7gMZY9gc->KLtSO41Zx88&8XTH@eKenf1h0nl8 zV#c+j*Q_s0-I%zg+v$o8iye0h2VHdY`e@4TJ5uY!WZfH~9*Hf-cPtyx7M1mMWAn`Q z4+rmgO}T3qT%&w~#@Du{2)LzG9T{>4WkCH_kXr?mKUPN_G0I5*lM+ z-mct!mbTV@v-&>Q)-Bi|okj$A%yly=HU`r1n|oV$T88JkyS z#y1DmXm_vN5TO@iw507r)TNL0=hK6fMLJQzJWkD-ljUQhhR)LQi2Pk~VX^Bhr=l}; zOQwW1`khcotfAYd+^LFx{JFk@#ZQfQIyb0%&Y5z(sQQm@N9GzYcS(+;v94EpnVCLm zzNhP{6gjI^t@iQs?Vsm51n3=D8yLV}@piqqb#DFjk*~_F=f(O*3>Sq|Z`^rVM~R;E z)TOa5u6)Dr@VoaDw{%-Pi4YRybiBx9V4@>ELia9?nSPuD$k|Lg?|J-hME$|G6nUa<|Y z#x$Cq44HjSbgU*!Z}QN&eFEuAQzlJSSW=(ATWjm%!8QG-zRrDcR?lHPzwgl*^Ub?o zU9!{p{f1?eTq;@a%0g3f&B-nCzw58JD|!6N$K_PFBz70lM+O6C_Q$e#q9H*?6tvb=jtwA#%`Lm&(?eCO@`4P zdcEJFdx~=^vytYe<-c{TIzRS+;!3kcpF(Q*^A?u`#H6)upZ<`e;yO&iuTUKLAe^Co zrAq(Hg$9n<^zQCYZcVT?HjVE2*>RNCa!1uI z-E?WOF28B^m_4Op@pNl5y=ZDkyOMjxOr2}3y{z^-wf3ryZ@YgpwO;L(abF8NK~C@Y z(^7@~#+G~J)!WDA>QxFR_YV5<{#BG~&&Cm##!3eG`o)%S>*iUr#fo-AyI-Zodd`lf zrNi5Erh0sKm~UIq*YA)zwX)l_`)5g_A`YFhpf*TG%BstYZi@+wH-U>0sm$e zu_A%SQB|UCKB{P0nm4;%#BV#Y>%wTa`XRY~yIW>yK8u*xP17=9|Kjfa7P|4)BJI8b zcW&&99-Peyellvvj5gynyA9Q{)-+`YPkuD^B)iqQSE1Ry-E~l>J zEEK!ma%wo4vVO#^gdXCJ{K4sVZ)!L9bmHWDDfaScoOvzkdiol1aQ5%|Y5Mx>8aA&wGX;BwRH1^hReo8oYN5|t;=ex9(9k?t3_=0bn|QN z>nX<`62?A8XAKmtyf1ibW;OKAC@WL@Bi0$?Zfq0OUAs<8>DhBu-kaEmy?TDod@K6Y zxSYTH;n+p0laGv9xprst>bR*JMm}$DMUnl5j{X*jw%1}0O&h)C*@((@@h`Jl%tjup z*L_xgtdiC3;Q06_mA~!0l(K*F*~F9co#y0KNUpk3BI;k+(Vy4-K5%vxceLeu>)W^X zU;! z`cu$qx>1YPKRV^;>2;qE-*~uu%$=e8)YmozrnSAYUQe%ivyc5Jw|mFwSEj7kC#T={ z_>eH>yEG^!|MCp zWA7}F)-h@=x|mluWrt+gnI3xU*Ooc7=T0xI`D4?~OZPWt?5aQbsd0pFhu7(C$4;D> z)AD8bGMDG!H=aE9Ire4X!R0wVmW$r@i{3Tj`8zIK|vjMri< zIo#Lj^j;q9H2a4R;H^0`ZlGw}eeXH18ra!pb$ZH&=R27`4w>T-c;0iso78o6&#m`< zT5RKgW@`2$HLGhiVe5nUK5+CrGyl?=X<=pAW|O9>`#-;*bizCH-N_DHnuB<*pTfzp zEwiSNSaAGNIivC^q1NG_(Y8zTt3EbN6r#2b8C;@+1&*X zPPq+!xAp;j_|4NJdyLs(#yH3>+=d<&vYT#FEsoWVIy3I9u;-zV9qX6s)G<#c6f_(= zowvQpC)2uci*B7{|GXEoJzUf{`2lY}{+>DDO0c)m7Dvw!Nl|9^X76u571Vd()wVGm z&sAfBw-eq*l?fYDCeJ%yG5h?m;2Aws3VjCJS6_V?F(tH7V}Wg6l+ui_X$wj^YNpz# z9lmjch~Gq{G-J=dP8TG zg_S+`t~h_|e8sb;Rj#!6dpkWE(|z@aAT8B?KWSu(B?t*hcIpw#| zTyy6wVfT&+7HwL?N@;!Kobc{rb=;6Lzp}c+tF~zEw5oo+eYedOn~4EidTi{g7hRDy zS^2Ti%yh zANu`z^*po63!2GqUAj-+BlwuzfAf6J&HJ++4q4&uUYR#|$v*ALpRyiPHh=0Ma-W<$ zn{soR32m@e(I9uvzTSOxUCwzdTfpP_*-vd|p z5B4%i&1<}T0X1n%+%$21-UEa2{2^W@4C=#8FA!^(aVb>Uac=hHg!$BF`UJ7{vEZ|Z zMuxRlH~MQw=g(2vYke!V&xiVw`S38S)n`Jh2}5tCuin9qiHq3Fc6UqF9Dk?!-B8A$ zWyex;n>05x=H5o*dTh+@F;Gdz^y1oseTI%#I55RVan-_gVyE|NPsXN(?=Ijnf6sQl zw^3d2sqI~#dFw2NeBG-%(9O%1l*;SoBR}s6?&sO>`LeN;xBybcQZV9Nqt1%8E(xUtY0F&3owVFZQNH6%sA|7=7m64~cm3<)G*87dmf> zyeT$Xnc?c@0rwuZ1Z?~=g0F2+xc14IRO{ZmDHZKYw~U~DoD%N0Bkn%O<0#c*^bJbI z_{xVbW=dYQXZCJzT8M_@jNMcD8oN$OC4KA<-TS?`2Mz{J7V__QTs(9C9+7 z5PI{{b~M-Fppnz9_>mAg{-l(-%{G@8`@N@b;$Z zgyu4zeZ7muQfB(@Q*L@>Vr9MXVyOB1ghz?+I8ZOu!zo!gZsJn&{33;|u}XVh8(`_uIF5o1xtcHS_Jgy@1L!_)h?!K@*^AO zg259E%V;ij;ZrBLjce3WyEP%Tvg%msYSTxfzce^cS~Ftxj0JN#+LRGdR;W>P?;zHD(XGOFf}_r^?!XZ(+-Ghx*fVT}4laoQd$F zKht6r=DhvfcA059e7sw);oIm}=0A)Xa58px$;0S*{mRu@TY?%tj+n_SF0e32^9J!?WmDV8dzMHm=P1W>T<1#n?k>kYhnkmU4(cAlYcN^5Z?qT19>JUlm^Dx3b zq{eGSS9bDIe7T~wXdc?Sgr{8DEPBN@6b^ z-sH9gV!E62u7?~9uIq8HX`u4>wjHnh3_g^NYsoq*R4+>MNEp0qs?O-1&mFfF74G71 z3GKaj;zrfSQFG2{ZLW5kSQo0MaDA)cYVnb!F-(u&X4Kx-JvZ-=lIr~p;V(I5_pecW zHJhjh=Iq#<@q$leN4OtNe`wx(;7Lh_CPO!2(Y_qzH?#=ap5_qUlD?Um4AU*+1Jy=6 zO}I3Cc-?1xrM=n~&!YxgH}~s3@Z{PI@b^nN7w)NbSll?`)e;X1bE|RApW%MXE{s2A z|HiYgBGV#Od#z^KBDyf?ri&4e!c;HH3)y*J@#dzfFV&gqtZDsj)+8^jyO#21fuTC# zSwC~(<@(?r`xYL3QhYxl)wrjL(fMn_0_|C=^WcLLp`QD?=4 zemS4Fy_tEZdVyWG_K5k@ss(*K514d(nN+{b?D7;Ea}A3rs-mnW^%d<;)%9EkJVWWLBEB>a)>yY}v48G<4W{~o_L1jD98}0VcD^Y{ zGN|LmlZIu_iw{p~No?LC?hAjhVf3mqd9+_mCE;0kjh^zkm>D1ES}N##aXk01rSoAOesAm<=cdtOZm6jsb1}?f}{W9RQta zh@}T`1h@dg0TF-{08bEY#6htFUgA##H4=e&To=YlQAuDM z6_3q&x&(5-AQs#C2-s0PK2JPD7KclUBrTmHMO;1@ABo7qy999)x`qgVcaq@8bT|}S zzWgj4QvV|hGV%ApV80ZJ`9xyLyB3KfI6NU(p$6`LYx98k=O}fSN-qi6#mOOy=AUvcD-r4iqqNcyhJ%3Dg74Iht5B9CrF!4WL5)DgsSg={{y_xcxP|CRys0lSw3 z(&7nQ8{!i=|6)sgZ9q8U1J;Q$Q*#huX3{^CL7r70`c+=Ji1dHwiG^&k+ll1CFoU^rpxevBqyY)s>0bk|5n7^{9hoQ){iJ_=J-J3e z8a#OZ>PF+^*#dbQ@<0pe{0}{R-U{MG5 zSlB9!w5lWz&;3PHhsNP%#aV$0xyd|y*bLH>2Mciv!x_GB=i5jPAkSt2du+}O){VUQ zr1-8mEeUsag0UE%tC5+xVezH*W0Ck~e{vJ}h!O|u)DKAs@pN8v*W-ELDY{6&izH7m zk!)oKefY3WS6f0}JUdoq;QC!=cYN+q1fpY;PB7sEsrk`K*nE~la*$f8e&Yqr_k$54 z$ys`k%_xO53Y60X-lOEs}x)Z|Hnn*I$kr-}4l4WATs--7X1!jX2~P z6)s0a#IsZWqD_7AEn~CsSU3s_x$vxwTO@`Dr!N!mi8wJBsY5e=P4X+Vt*4Oi6!IL9&x!^4pLV_g8fqBD-Ud8f#3KlV-Re^RKreRe5qv0_?t*;k$#2 z^0JLM&T!*!o@E414JNN&o%jeL1P)7ygCnT+9DI!TU#JeO$fUigIjJqCGBx^DPHDR) z#>8MtWNbe=T?ieE`^ypdTN{xl9C4LF(~$@5%n3fs)v&68GrI|dwY@)6T4)#jg#zM! z(#xcJfg|O{uNH(A0}=^;k73d?y5B387+aSAsy>3g z>L8hncN1hynfejPwl#8v>Uf`fF0c*O3uM4(a(v z=}M2BQM(QtWajVmNN(y&j+HQR{ZdDy!wDYCU_z0Othfog+|+jl(jGDsVwpH(YmbCh zCH$GP!`R#w55+Ldh-6&wDv?jj;C^@N`@7pAdo#hq zruV9Ou`9k&~a1=E-VN4hxp^bL7&U~eM5rhN^Y_B9MQ8XSUv zJpX&HM3@voE)W8{IHc?AMER2r{8a(5>cQ%Cswn{r3OJM~8({DnfYeHuIj}p5M;_6Y zjvH{k3arA(T$ThJssnwHO{c$VyPp)-bvXOiOB?(3H1a=@PPPd7RtMOMKN3!M{-iQO zv4KB%`k0d#OT&D(mzkI&1=c}ed{9wVhVeb-Ax=8^OHF~1VT|2zC}+OF3>^W*a5W#fF< z-}S=ni!Zs{UHv!=%O}6EU!Gsi6Q`Hw#p!;$KY6@7y_}!iZv=Um0B?Xh0H2HT0Qdqt z0iyt3fYAWOe8f@(&;S|$O@IzS4?qA60VV)*03Bcla0Ivj7yu7|55Nx)1PBF$1Az5+ z7azg|05Kp1FdL8xm=A#WWw3Gq`G5jIAz&?_2(SsT6|fVq7jOVj0XPOY1*is?K}im> z(r_J^0^~0`!hS7)698Y>Zvw#S<@IF@ZX7T74*|Dx7eD5O{qhU@$penE0PG(jkCep? z@8XxpE_qO@-0?r8u+g><#j$@fUi->+82BYILi{R|Vb(TQVt82y94RwOGKbem;K3PY zC0j?kUyWt|gokvY!=07{FPnif_;~F@uDqeBU$F#12slp)d+3-*SmD5vMN$s@LJU|( z;msR4XJMJy@)!I>!872gzhdY`?osigQg&__=Ha9m*((Kpl?gwefNG2U`glY(H=DzZ zMT#eXK=k#5vXm3K-h&69acp?)MkIa?@{^kHB2o0TBzOYZm7_WN07L$KiEMTJN*LLt zK%uB8C{ZX>Dpf&2QBg@jQ9)7OrT>Q-^3SvR26!QOJr4?S3qT3%1jIGsb8xQZ6bds3 zPzE>(zwq70l-q&fwmNt*ho~1VH zR_0z*Ju=bAJ#i<;L^-Y(f)ixY%LHF?&o`Q-@%^Rv^^%3Vk(ay@yHaTaCV4@n{=v=L87P1qfZz>N0inaz{Vtwn*s$Qz~D=|GqlK!<(C;$>t^3G`b+#Z!+=z zwQ-z zUxo~lpz%`5SS+Pkr=@gCJ4sXLTe=~*F7=Kk>HO;}Ny=?#z?6tAqT+UWlI-JvX-Pr9 zc%Y1ywe%98`2(wuT?1-24Tz1e+~JN!EMYZ=-*;!^mZuEZ zqva9w>cO?UiDYL*qZ9`e$@T5REu(t1M6+$&s|;xaI$$|&ZA{kY9A z#S=NE$})=gF4&Lvf|#nwsJe{e_lV$dtP_}am(dc}YWvpBq;jN<#metfT(Li3Rn4sernkc<*CsxPAkGCEjB4P_MXMKB+{ zrp6SnwK2tOa7^)99aFr9$8@NSn#-t#j9SX5m5jpnnM`jjqxj9IIKQoo;x!BQ50g=Q z8O7^<9FEuQnBsLmrg(ji>2Mjv>wE0S>v~K_$|zRcT+rvg@&DgCkdF(}F{A6Rbo>An z`TP322L7&rziZ&{8u+^g{;q+)YvAu1_`3%Fu7SU6;HNe4Z9gI1Kd?5#^ORe#M+JBQ z!U5(t9TFZ4ys|S0- zAEqf(1;_w@YY2>lx6FlxhoY^Db*^(U6S#Z>JUqkUiN8;%Kl*3~@5Gh{Be$`kfx%+~ z2>dsSDkuv-gTR;U4RZv%VGcDxxGsJu0hjyO;9&gx9KT|(>lF&$M8Pk&V}7-_B>wR; zDqwa1b^$ZsjeqdIL`&;o@R5~a_VyOBG1go<-JU~tf_LcqWBVcamWAxx0rAVX{K5N! z6WKxzd>X)6`sTk7TMI}G=3^FMOUmr74)2PFH%oT;_)2$mFVd_i1guTS_o{cjf&a(d zcxN0pO!_WZzKjZFR4k(@GCEsEQ)P6%jAjAN1>^$?0EK|H09-XPHTtfW4k*{T%KH<3 z7WegHAQpDZ2phYUO80_ zq`KheX}Np{1|!~qape!hd;&;qg72jWp|7dbx!TQfV6Xt1_Yt!e!Z;9y%RVKe|IgFnf4$-%}}S0<+9cO~#E$Uz>kl7_EA;8&~T_vezYL1&BL!!uyA zK>ktRnfR{l;A{<8s=;4lK*tP^NcHLx=+YI?5mnF|tXFLS7jPFHb6{Y-sy_-k3T~`d zdx6#;f<6LN&RDKj*zW^L=6W|@!F~Y=ncsFn|99@7fv4Cp9$B#&pL7WC3b%66nW2IK5 zz8+oQCjDIpBh3xTxe{LPj?G5@!9o?kpd0>rE)sC@_mL74V3;rt_jfnO_Q78}r&M6X zfbku-dpNXH*E;{-Z1)b(1G3J!32^Kv8evP@$XJ;N+USZ*rk#)eyE4@Szb3%X^q>R6 zu}ttO3g~4Bg~L3D>qYVL|2Hz|K=}leg=L6Ofl7h)`N2*dtaIe5BvTG7D9p)N&Ir(b zdHWRrADt%-j7q{I5YjOBnDz1ksFiyzp0hj-ujvaqBem#e> zaQR^O8wE!AQazp?1%n@qnTw&8&-iLw^(9(->F<0I{zKfqd!13!xT;39sL|i4p<$5O zN1-*9K|E3*9PJpkbVj2>s%7Bj|hHp@iFN@_X5csC1`sU~R78UvK{VQ1-)HLp@5iivCLiwF)jL~XA6V+H#)daKD zQWvV_uTd-7p|McVzt$&X z=zo&`dLJdT|0I87pNz_%ZBG8xI)VHr|C9XxYB|41$8bY50zK)Yv|a&yzoY&|h983M z(-2w*HXsCi%hY8s>~mmTxY0yo-2sGv{}RO2gRRCjz!>lc0q!VKT?iG#2z8_|pC}>5 zDP_dC1k^AWF&!6!IWzdNO^FVScd#T2!axitI29pW4&K>;uev!H?90IQ5qRq_8$_-AClQn&XZn5L1;hdy z62cIu2S5>1BgEi?yz>Ejp>ClbPJmo+lXWL05^Q;bPDzTuOSEo~3<8swxelkA=Bl99 zLeiE8r)Ly^J=$^jj@d?_TL1?E)qu-@HmDn&Rfw4dveOLfTvY*E;ofVZJ)j(D1BX+R zxyq;m_`)$8bhHQ6W%gRcynHI8nD{GotLk_)c*IoWeln3v&MTgo12b7&vB$2nI5 zpaakVm|*`2#Pk803(p;(01X#tOGm&ZsMjlidO#MABXIo?_@=P=j{xY&W+(^fAAk>l zSJG1@&=&B2E7k?zn}K-))`DLG?R^D!ne(O3CoX{<7k);;V$fJ9h{h^}bP=H6z@Hfh zRI(unoM^8i-qa%sDg;>yAkAKFNCRPO!B2;EhY|})1}FfO0l&FZU8XUpE;pd8-9S0e zpRWUTW>Q_0-KZ{gKz{>j2hTw+4F+BWLPfx<7{XowOx7W0PcRZ16oAldkWUA%ZJqtOsOiT=FQbFiIwPHKu?*O1w1r`em$j9YD%dBNlS)rFGtSj{tRz3@{T7%#m1BA6h zi>sW1=VM@>mI}a9OE%z^#2rd97k*R0HxQF zPG*7s80aVTZi$95s3;hMIc~xI+qKM54>8P#)Vc12G#;HWjzRwC;D%aAZ3FrQa0#$= zC5%%*uK-LSeK^1aKnEazCZHPP_5x}FYXO@82LPu46@UUj4)h^fZ^Xy|%3lp@MHrJY z=wKxZ!vG>ER2Qf@L_w$g_>i6hDAlC8oCk>eAjWL)L$jh($bSdM$xAT)8^V|w^ng6p z(gF9Va183f58BJ)6ph6I_y7>V4-gIr0)ztaz$1Y=f_i9|NGh=|w1P)v1I!YVivWoN z1a&}oDq4Iz@eA%zFdRY{iU3d%oyyWdpclC7;dVk)79?dAJKqR`%!>h_e6C+4lCzLc z13idizfSSO*fC3V>Lm%>iz2-%D?$8^aY1Zo_MhAp(z&$K!CLC6SJBPFy0OgO+ zc|Ie=+8~kW--BnQgAwZeLLzw%`t=fw4>v%K;Jp|w`v<wn!q;fH@lTZiaEE1E31y zNh?qVn8fYfP};}NrK)JBFHLQ!4_fk}v!p1$@qOp&?KD+dc5-%)oFk_QRMidLs;C-` z`e)H}X{to_ywp^2n28cSdtO+rVmDjbM_QJH6P2Fk)|%DJ`f+E@e%e~&HQi`b1IS`B zpcQ0Vs(|u0xm`XtZi@@`@;Q2bzTIUeDybW{(uG=52L`^B{FuCGA{ix(Pbys9|(M z^|*RvZD(<9XWB)QhxGRX>8|di=|YC3J{0{bGA9+my{!#T{Zk<|PqC@6SK9H;)md4p zP#C_Ck|Iu8CC-@nR$|Xa#k)FN#L6`FwBK=Z~l6h1HUY$~w(yw1sIk*pqgK4B9IVI*mQRw~CA+OU&)ZwL$vZJFT~N?%#w6 zcMWi`w{|+)(dqA+HufqydP={vGpzz=Fj7!RJ1BFQ4Ph9ZGSXE~%fkU~^E-t_6u4ob z2bz}NNf7U{RG^MpcHlai+gZG#Gc6OR+eJy+f@wNM^}UIOiOSC4(rv2x$(_g5ix+h^ zP}6?Hk&Y_44~@1$&f**#mV(28Q@SylwxIK%V;}Bj)uJOrC9ku1e&=14Gy#sM^()XvLLk`}EZfUZ&{J+q$`tw?PUw8m^RDu7Dt#l7HVuc%eo3jMvgt>39`3!3n&yq8 zTc#*L{ZGZt%5k0h!aHf|rBjggxK6imSWiq87zS8IQ-w4aoW{+%lh&K203ik*SPmOE zGy*>LgbXN%AjE51%k}AY5$bBj_v-6c9}*tW~8urFWyGcO^s34K@0rM+$2C=zxM+FI4GU#qN2T zt&wp`0lie9vbAsyHKnx(H7mH;cH$5DHTR(jYGCN4Sa+(TdOD4j2_tKf5|yoqu0Re2 zig_n`)F+;@yf@0IQBc(fk7_S;ppUAxjvH+HA(4h1q73dVg02pISKk2FQ5Ka(O-=PM zF4WW?)H(YjgqToiIt1Z?2M`ki_a{ip_)~%5uV~%7Gq=E?h+^O_trr6Yq|KD*_wFQ0 z2yU6m_N4jipRvyI6%L>17uDoM}%CT zv=7qMFaTgj%?Bt7%P(!&(leB>98{V{0eM@_P-ORJ^hJWjOnZuR$iiAWB(!c2*8DXr z4bA>ks;o}y-q8Jc_mWBtBfbjvA=O~x6XHlo_|1~?WAwOR%ltTvar~w6n>yW^=mtJ zQOGEY0h_{wdZchS!cXZw6;S(KxGY+~v>lkHHITpc_*dFkG%CC*mC6X2w@ZmT741?g z<)Ja<9WJ={W-E<3fNKqCnT+n2(S0(yS4z|Nbd1@9orS7F-+I5PDik_q$IrsIboeR# zBzZ{(&FIJALe<$VN7$2sl7ok)_aX>3g$E#DSqiN|KOVV*BCuJhv zj;51)Gi_GKlGzjJy6eajld3=Q%o`KW)Sw~Lzr!QxW0vgc1C-#J`~G+Eb;n7f{OJz8dQ!er5(fN zD!-FJ0?~WrYj`~XmAAhLX%rJ_mvH35%F+9FQCeWTKs!zWC3^}rPmV7}C)9!})qUZ@3pk;KnGC=O&6AJ zX_C*Tsx-3yskXXF_2N`nFUHX-qDY+f5z8VS*FJpCQmr?!P#w@(n39`a=(y5AvCwCw z!HcY{%#Wl#vC)`UpSv-=hncHHYtgE`=NZxr8Mef5gW1(E;VDyqci)GtG$ps@&rRH3 zDT?(A`j3qn)=E=X)s?Y7WPXxN@%B;lR(QKhrH*2hLZxrlsHHfpZdQp7_HjtN z@p;M3&p966PM)Kg#}#+cR#93cDuop7Q62i1KX3Oin>qb(_sd1-QUh`6II*jHsghpZjcPwv9Tv1lQ(q>MmN#XBF*H?U|p+z6;umd-YpM(I}$+ zR_^}FQ=gA3z<7HS*MbG8J=CxD@y|AcQH(;*eaAjS;?fRDkuzbTFral`#b@I(>b^rb z)aVrs4V&^s+vbbgfzP|B#}$oUO8yUH?*rG=c{PsTKS>DTYLkEwfv(AgK%livg4JNx zjiiWR?K?n4bnOP%AiDLPwRWO&?{Y(h1o0hz+8UgFm!wS%Oj^O#qLvL%(YCm$U0d7f zM$!1UDt|>$$oHIkgMa$&_xrpb{oLI9{5{Wk&NpEN?A6$|1p*sB?HMa^!1Z)u)49*l)d=2nOLThR>bxhPw^U|Z|a`nN^R{#ab;d~7w zNTgefT2pcx23|rbI<2=+kcg~z`0)YZbQa#8(@Mb;=0g;?4$1k;Csgqhxz9t&F)?)S zyM~Ff@y-`+w~L!;E|14A003?4^St_EJ42m*60jz*egP$`tBy&45l6-V=AJ%)DJKL| z2G$F~1bla3QjUYh&^7t)$-MnoIIIc|SzLsAU-@o_dS(QCI)SDH`L4n#r;mv$rzyGE z+m+K)wR3NSm}DN_HVr6+nW=3SGZctnW=h4REY_snRu`v-ge$Y#SFtOHxzf%v-&c`3{xt8tJv zhv6fa*d9ZKmHybjJb(Mdn}4E#*M14T0c3}~D0)PDeY7lVy!-dlvbr zHl_9l1OwD^kvgUHNAG+(?5phwe(BCXKjJTQ7B{XL1FU?;bY%ESLwI7XkuI)yYBR=PgJu47~l%~KEzW*YED;k5zf;l)wwo}PufEGK* zl4vnf_`{R18$Fb&Ph!X)E2WJdS~Xi@QkGKs5;c6}mxz7Q#L}mjkKUl>&y@tG6VJ(B zhzQ7u1sj>jopVTrE~XyJIbbU+6zxw1d2~IPrZlL>97g>Tx#5|y4V2y?&nZx6v&)Q3 z1a^u`N3%qW`U1}{*f$$ym^0?!`!0jN9Z(7TR{6z7>LI-zSBFbM?(s3$-#5A1!d=DH z$w$|Ivf=336JOnGU^>6J#e{!CHL#sYV=m*@%8mwkgYly}Rg*&}^~8_0#E(@Q{ZuPU z>JO^5VW^H-uY#@>>fb6N46$QuJYkO~)hTch`c5MZs_MZ0RAK(OX=BU+7wQ!Du zjW4TWIr&&K1%{P-^Y4imV?R=s2=u;+_^r-HuS>pL`g&o-^s`*5HMpVL3iBrNnqqmqxwHqbAWO1`NV49>q z&B!f7!z}?eVb9fTS7-)qF*B+_+M!jd9`zdN*F)GlK8W6oZ~<-HXx+d~15}tQ}4li4!zrWqQDGPzQew z`hS}e_%Y&Gz@9+9c`KZRK`!I+I(n0H(~7cR9xPHG{)kfj?KW9+E4`N{#BNyl{`;2x z3ax)yq>gv%D7Gsrjf$i6tli+em6A%Rhrtq%-W#cZ(ygO!(SVGkKT_TQ3aac=EwB{6 zMs?32a&5PW480`}Y{2t!7P~D5Tk7de1%hb;;51qBhhb)TjM~ITtO@tom%i*C^ z!-Lhs!-ZKeBR}=cKCaf4wI5*xM466P%#rOzm&b$>?PDxAz zk*YWT94K*K`ZF;71y3wbxUZypgDP|8f?b^7ojlUFYrGPUX>hD=@hDMO}{`l&;vKK(;Ora`@Y$jHj|3V15?%Ao}9 zv4nSzB_vIb&wVCAb2Y(xH6eaH;T;^`phj81WxZ_FNLY>d@ZW>%BUBi5iD2che=DtO+mkoYctsG>VFWAd?PU3EX)2J@NsLI}eOS0r!Aei|4E1o8jaX zk~k50cq2uQ+yo{AI#Qpb^?kH?=%${P!>&a&2%Jir^vHba0`r;w2zOF|qoyXp0tNEd z24geQ&ql@#r4Og4r*;SnT}Nt-`RvW~)ZJNhVWPS?9+|P?A}lzW7lJ4!$|#T*_e+B= z9=2A5?IiO27XoZ2BgHRM{|T^xeCR?eUF)RO zkQ*O__aG1N9)$OEgm;$!@8^-?5{hhm5Z;~l!Tb6B@b00_3;%EM*8Km#yF!5XAi}%n zF1)F@h6oabi7Im3{A>{snNDPQdQ%m>OB8c|?V^}iT$Yl-#+E+0LRl3O2gOWT?tq-5 z(cFfcwjMbbdlMF{wy@pXJ9ao3RrOOZg}b+_xmRw^_1CQ?io1ipIx4>;2$~xx94+f2&w@&exA3BO;^atw(gzM|!G;0NF}|NJIsLa^`Y z5ILxxHdw-Ysh$|?+%Ru3#4e}ea^>JQF2ETqi8OB5$Bb&whNNoZ=Q`Qrc|H_0>L#P&k zNt5vXJ{Z9=Q4Fn~Rj*eUc7u5Yc4M%yE6I>qAEwP$3XTE#TK-vqdush+iGsAE(+ zWi`PLm50$Mg?{y3mY7tTeY3-MpQm^4p0(pZ$upF8W*C?z<>3GTBV}hImkUdmCQ{cKzI!lV!f(%UB1$SH^cf$Q_$3^BI(Z?zIC! zm^bOvupxno z#2OLCIk4$m`>4S_+RG}`OKj>?n^#K!IcmS45@RSU5eB?(i6>O+CM<501I6+9%%;uj zM^iH3txRNoRd~x1^_=5g89gIParmXMQxo|rDA>vMN{EuECi6?9V82pl*!&{2=LcS+ zG6P8a+^SIq?F|j6q>?K~ljUjZY`yyLbTaW+j<9YSibwTlBZUD}zilWSWklJu1VkfY z_!<9BzAze2zynmP=SOu^2RLjNkLu(mb(Wr723dE-65y+yV%_RGQoph_cZ}i*D(T*m0X9hg^ z3>2@BQE>xOcZZS~hOgYt=-cbn2gu$g`95;@ek{I^Z>Ow9H5!pxm`d($lI!PUdK&hb z9et#Ms`wFMczo1E8|fKy=cS)6hxDVR=0`{MXUOy(`SBhs{Yhy=>f9ypVk)z|-;tBE zI6YOKvj}sRVLPT$M#N0>JTh9ixIAYG>4wZy%rurt=BvaYq4(SUFyxMQ?$~`7-YsbfGultYM z@gUcGgGf=>Sh?Hws*P21XKvV<E`N>SE-NRhU4PXkjdxZN6UmyeMG>}01zMiQ4 z{08tDz+%rPxDz+PNe1uUEIuV1UF0fL5cgj_H*BoUPX)$;zJE+;55U$I+u)91dr!+a zIsOvm3b$X~h>Q$lkZaV2r8mrfxuG}O=6o>2@S_`G;f80@p8M^-+T#*#KUNmF!TjM3 z2Aw|+5u?;=>r14cBbr3M|Dj7_;+EDQw*GYj_Q(eR4foqNa98wt74Tvm1+f;l1>{?l zsKs}~?7ne~YNnuKUIxLvjg42w1Ue*;U>Ajk6o>+W;)@Xp`>^?u?`D33yesTCEp8H) zJN2w`bL|bRlt3g!-{mdsVTtbzx>}hS^WCPKkn0qgH{SqBlak=4KwklQKR3fK0+DE~ zrxRmjn%~@DBB7Ykf_u)ukqLPEY9R-gcHg@+w+Z3HsX}~eHe!c5inlDnHzO04DSo~# z2f0_UCzuE*1j|lfm|sY69)5+bn16Z0?KL;O!^(&|Ck>@Hdh--K7nO<)^&|S(^6&O= zRxAgFl47QUht^aM=BS?3LR0+?I%O6!E$>JOCS0=>e&ce|#qMh%=_r9j!)jo%`QfZ3K08a#@ zY(m?DeKfY=gYJ>in?L6eiw(Ud`CD6(lri5*-1Zb4T9F`FZp@CNZRbAx1Cq|wtf z((;2FP2S&vE05fHfU0q-Yh!P;)Qo_yFJ{{Tl97RpBODLvmJ8}ZF`5Rh$ptaPD!33 zG=n2=iBb|49NZR1Nz{bq#z+~p;mPVbpS@AHQUv}c)+&M`X<8GNJuNmhjnZk-#OjO= z9SP%4$zUk$iD1txu)6$@q`;glPLuEi$o*racfaDBv8pSB51|0KIJNp$yIXB-5f}a- zifuYF_n+xa9pLYX?U}Qk>i#Eer7FGw{a1nxrIuqOy^V_9O}0J?Yo1IYT9b(Czkc+v z;jY40EBWZ*c*xr)^J`9#?#2$Fj+P@M-!#<~iMxs<+>sHO?4w1lTrWk$HpDi0EyT0y zW7+O*Fl9YQBVJDOvQfQe7_Faq9_qVMZpX-6i$m&&o^MJp_YSvwG_oL72$T7Q{956A zVFChQo|ENy$fM*b#n!N%v6)DYy#cK|h7>U%?k-@UvBd_FbUK zz@DJNJp%3{)gsCsPb9fsa7DJfKGIn?a^f$;j!0d6ilZ_)){$DR(>;@%rF+In1r7vN zG>PUnCy&tmjdmH)a}^-6M>6ejANA0o@)}8|#sv zd%3#$8$VgSy`^wurkE?nNy&X-WO)X}YzZk%zAJptb7s1(nyhmTS2Kgr!c?YK%ldt$+d*0ZpbosMZ!91|@+01lwT z!_beP^j(Be0q(&>{&MEXX^{gWKKPid>gD>k>(LG9ryMf7PEqYRCIL?tRH~+%X;WCc z%oN#7fjJ5$59-@J;!0(4l5UROLnY~Sb`M$U)v59*?#IJm(^Q#A?N22bvSb|b7)Q=f z+%wp{?`IObM^st&HIN9W8%fg5;F3lvy|H!=2$jp6cBHcI&#Z^8K;&}qBfRWjJralz z<7JpZGg4X%dS!0(h%o_o2;3uxJk<)Z>KjtKSfW$5s77v5ozWv_WLG1YxxQ=(Lrd_Y zK_X3Q0tX9_8VulR*>^IBvR&fPK@&JW8Rjw(q47PN@w80!%`LR;8a-mw@*r=i2#Yy z7NPImIs)c*^T)%g<)Xk3C7pj624sWc4&i7n;BHY0>x#6O(BC`@aTbnY5;{fvY1n*|?&s)=DDBnt_a z(yNNci+(b!ljuU=?HBva+*?DsnA#mfx;`h_plBxn@R_pjK6QcAKE6u5Yj&x*UFJ|R zj}%MwS7ob;UXt~`r{4X3x!b)?wVd#3Bs&vhXGRpw9rl|GBp`$Gv?L5`t4y{32Jb3p z4sV}wOycx3w0vEAiM#bOhyj@YcFN&#wVbNG$lZK7Y;| zZb=zl`a|$3#g1hUiQ^ZcJV$QT5?e_J3K0mrozX6J@2f9_Fu4Qjqh<%ybHx!2p%N|7 zh^s}l;7WUVt!VgIgf1Ky#^^U+6`i5^Ij#5vWl(Skw+sC5VfY1ES8)*ehv(HBLqG$i zRCaD@BJ5Y6ljW}#m72>`Ym?-vuqmoVQ_Aukxs@ML-9}=$Ya9IPiCy#juo9NaO1q)L z%aS4Z+e@p8^2a0&b0b--qlyzn`6WQGB*s?wO>ITTNGRtZUy?bCRI4ZM&GmD#?^gTG zSw)VR^jBBdb@HRRAZxx-7w)ZxVLd0?m2w~do6Nd+U7pH2=1*;xz|bUMcYR4D`7Y>( zD2$^qAR`#4QvEIj;z(ebcxnimaOAF8(y`Iu%-xup|M%PZ^KN!u4Vph5%KRF}Zt+l= zUm*@U3ARY8`4EtxE@p}1L<(R9UYPq(DThc6_42V@q~zX^ZMzQBm_ynx}B(3O~nF zeYGP*Dfv}WKnW+1e}0w3&mFC`r;u$PSiK6rR2Q!AfT1j%qnRWUUr_v*)V6ZPG1Nv# zj>M79@Kjt9=;WBx{Ym{Appzc;Db7Ki-sOmHXBs-2r$8xJC#)E?t5a7yoVBoxVHh62 zMn88|d`85R3o^m6@Jx_q+}fdT)OmqcP`DAZzlB@L73N4U$GMK@nb??IBQ3@<`;ut-D5pe^^o?w7$S>*Hstxm z5VvL!paOB~3+AY2sai=*kx)#eDxdJ3730FYc*s*cgrN>|*V;9THHC{)+VV?8YHP<2 zZ?0_n(Lx3=(1EQilsH6Qjhxp3VEU>g@Nq`sia8cmmki66y+{cQja{Ssc=Z|SF=@NB zS*pDvUQ?KHx&+#agSH-e4BKkPwjPrJT@i8k-H6|D5~Q{=Y`<)JyA%jutE^}BYIbQW z1pzUD4UJr91RT;3)g|R6lH^m+&m|Q{gE(eTOaXteXY5j^|6Sbbx!pOzU9()Rc7*iz*!#1N>FzLs%S z)txjEzpnCqK_VB6u;cCq`lznIOFsV)Yc&%NW9`%-TUAHpz6ftI#d^Z3MQOmTIu^HF z;X^xHuP~7i%W?~KB$mRk9xz7ddkKz40AOs@vXC7P_LRXvyN-lp+#5i7?lyei=MN4* z%&TCt1OM+kR7r{$j0b@asX+8ZBO8Jb0-XZWC%nZpi{TW4{)l6^JaBIe+<6?3mnFE} z_~KVG6gPqSll{Jj$q=qRiiwSo4H*EBU@*vkg*JaR2+D7oDEF&D-UB_KW<-!+qMFf? zkWFb9(eoFHAQCBVB54Hx`C_1a9NRX0I>;Byrg`-P+kBUe0Bs%3EnuPU7Mr`UMUmD* zbDe{|b;1_YC2bbzLxHTm=V&In$FA9n5I6xa&4+`0kPx&b*rI)7leTBU7VW#mf6MRp zCrt)%^WLt`>`w;3S2ph)`lP?-T-FbQ{qQC73)A=%VNND-I*Ak4+O6T$jSkAC)Uh=V zwHjibc-0)oHd*HTbsTJdH0h^wGJZj3WFcyENL7vrzY$Qbl1)g!1b}Tg*lL#}y1IZ* zN6nkp4b4RD)d8vUm?4vdhlkUL|CNrO4TjAyndfhg@{A6MN!;=M- zg|iEpBLZ%qsHbXx&xP|K4RW=Ye4vW=J%qE%LqvGppVfEV3x#$`J#z-xt_jHXqzv@b*3!DJ(Yi1&lU>kaT8qfQhWFBZr^YDP}zo#WeKcq<-tafP<2kl2Em~dNi zeQ4aZj|_U)K|PCzhas|Z&+!4bLk^ZgNJtK6=5k?o`!LTK+|&lirLev3wUyuiS0OKz ziI|GQ^;ltp$gCJ#8j1P>d=-e8g&j-OY*#OQEE6$vz%U!DURTa6iSw(UEkEi0h1Xr8 ze!g5?T0T=0XdUnPLZLpRW*&p^b$3aiW&DhU`62(VZ5baIF;khD@CV;9&$X#p?*%r9yE<6O@G6ANjO@*F@4iBRXUD(=00;3JUp zpCP8XLj$e55PN=UL@LlUyfq@xx};!u2F9r24a{knWRlkI8>kU%#Ztrc0dC&_hE;qx zkW9k^3g~FC`*I%)gk}@XvIv`|6*D0sKs~It!M-&tqP*_?@ydOVXnxmkhZWnc+pCKV ztmc2=^yl5VTJ$Rsn-UQaJB?aV50IWlPy-o^&8xD^Of7M;EzDlzIuI}Rl# ztkV3nAL17Wt;MK2R1A132e_gT6i^iQ!{C7foEQ(1`l>EVF$n)O)@elDnOnmT5OL%H zv_;wMqVG<5J?TB=&r6wS;01Q&iIIwu_&?a){UF{M2l%a|nb(5P(Eu-#+I=Mm`_10` z`tj$a%!=ow@GiN4d|X64PtU2Nx}PG9Za2J07Q;(FrYs^1PxLb)6FomtVO`3jZrOn6 z`2lVgf^1kgaMCRrqfamm z#@5>O0sWI2TWSYWM$qXteG4~#K%c4rUBF>TYAf~39cY=0Lw3k^JLGzkntKAj(q!;3 zNjH7!1~cp1e#DxeWEO7{4BhxWobYw!cHz1PT)wo)}0Ahg5#z8Ic4? z+cRTe(`QhH?zoB-gh81)OYMaGnEbTr`V)< z$^bV7YwJWnqU1DUMd0xN0=`TVZ0VT#4 z3G1<7o6@&C=r{U$gWX`oDban#RB?ScIhwEgfw`%B%xzsguKA)LCX>21nc7u2nIBz; z^4P5i&<+EIS69X9odRrpeTV% zcp8&!`XD`34pGMsCZ2=Dki3$4-sxBWou@R}rgg`+LP>du(69xEY}4luD%pQVaaJql>2!=W}* zA<#}t_0zin;wE{z;Gm=puk~C06y!5NV@Pk3*KEfY8bH0?YILu)+2#5Ja)<;szE42t z5bWbEZX1YD!}|XD(j+Jd*m)KHiVW7trVVTRD~mPos-u~8>B9Pff>tQ^ODHFY(;)*!6drL*!13|GZ@e2&UDPS?H`EQz5iULd@mPB2QhrCc)?0WY9(3e1TKR7C+1W~C%c zv3@CK_Yk%c>~|H#EyZFw>5*ccW=Ve?uZEOT5XM_mqOMh6=gVLn>9&e6{H4N5u4@+b z*FM{?e^CJm4yvX^UYpfl19Km0k}t;1>#v>HA6nfhV#U3(>Gzk_n6P{7@I`=9GMhMF zPC`4Kq|kHG6aCziJb)6~-q$+$tMwIyutV0Ri-e6)BCHYgZ==62F7u(TE06h3j zmO!zRD7i2;NLWR6etBJTG}zA%R!BH;y<+@L`gMouw*H1T()B_|)nIrvaWi0oSa4 zp8X{m6Q+OCTf#2p9=qPzf87>uw=K5YUi0Ss++1bv*O57S>Jxp}Y)_b*#c-ghA93N{ z+`-JKe3E=CYzc7^Fjz;pq3b$`E=>o{sS{%wAQS*{zn6N$+@ zW7%Z7M5)q@UxN(L23luOik;Wlcj2xTdx~NTGo@ef(P}(=&Fff`KpXNds2l;6zbn>U z6YB1uqAAUrSj&qqGoZ}{q(;1t#y-Jp=L@uX2n=zAkKM-fnj(hyS+7Z9-(u1MCb zdHig$p=iVPLRQXp(P}Xtgv5sQsG;#(U+hk~HQN;c7w;+($Lv>V&AuYMG6Sw)ze@>kAxs$W06Wv!gIQwf@kzwL|4&_lSMIg zMX^T*AWYNM$#$+eoG*bPGW~>6ej}AKx@ppUok&#!h9E>!2rlmEk?U>g|Mr<~OBdpm z1&lz9U6*FYNli?hCU#2rl>RdW^sxCk$&@LqMrG7YR}+z}CR$HMs;Nk$CQ_HHrz1^8 zSuYoGrL|=qM~kb|f1>SM9yo|0g~(Ib3WrM9?X$Nwxl$9Qv+E_1HXIWLIf zX#Enq!Fnwx)n+*;&vO%nD~K|BeI2=sel~S}>QEt0HbH=~eaFeG#NkW9DN}d+g#9^n zV%fEuPlOfI7pIKm~zD~0el8||QLuOZ)M6`Y}J1W8r^pUI_66h!Mm#2tKC zN~5hl8p8L$r-2rtci`L-oQ$KbZ_%B-*Z8;U$s`wjMs$n{od@&Kr~5El`xcE&K|n?4 z7uQbw)z2b@2Cj_G;D&jz~4=VWPYEQaq9&8 z>A(AxT=!K#g+mDe$8#Mf)~TFhI&GrTl>ElpZ{+@r*>+a$GTLl~RShPp!8m81*u_>k zoyL-ca7HwL+OCKt-IqYz^Ug5P;VrB(nd~_Pi_fIz)z>I0K7`SP5~~)4nC@J`@Y2>Z z@a8zjP)plp!dsqb-Z2_Hp)e|lXW_ri-4x@|x)ZsL4GtmypX>2oc)i{p3I7Gt|h$U+rLSv-n z6?Y{-Fb1(G{`|DL#`jToFDIcFC<8vU;QY3hizd`FbXBz|j=zCSfd) zsU0A_T?xK^QUbr`BqbDloxBGvVp3@|v1;J=uC!z3P+kIyaH-s)vO9 zWrW^YukzoqyB9;BP7)q2va$iMI&qLpw0>TB@`!z2X13U9g>&@~4*@$xinS{FFaa1p z=x?nAnppWWs@BaSz1Lp-wmzk6e%(d({XgwA_IW>D>~n&JcE=b5OD@O+4-p)+`E;?d zSni~<2k}w>qnm)E&&FbicI4^f9{=1SVIu=)qFtnkMVgaR`gkGa6MZ<@=HF7^8}DyL zJ(%M&ijORu8IEKR zQ5L=tL_pgG|EMc>=Tnp_LyX5Uo5LVccfofkXiQS>8mgvFiy$C5%=cMva$dB1CJNtG z2PQ}c#-K}5d2eYG$(_pAGf#zRNViR;9QPhc@QFwW6Yy$8`TGf|;k!*TR0Vi=d(xUo zYZTcm@r{uPi}ot~V1e%tpt`UOq9MK{9IdtNe58`PuzB~T%!3M}WNW7!0=yJt{%Vwi z{tK?rZ81}u!?d3TA$x>mW^^A8wwb+0$H6A%*790mq@@Dd@9 zxJ#_*vG*f{W zMHZF{Ov5O#ov%l>8JWn41N)3UTd)GK3dHH6I~n>>cdTo56VQeB9~h#^+_?Qh)l^m2rj3aC1CpWy&HrBU?tKeY@%|P9VS@fYYtY6dKNIs3X%Ye5Xrts zKtzDGm-LfdZb($|5+W}#T=nX>w>trD5GV$^%C85R7YGn4?HzYwJ;Wt~|1Fku`#y0gsr?~DT{OA_GhfCLuHJRo`>#{FA+kmw&LdS*imc7SLWSwBOX z7X{kk2lLx;ta(%hu_V4k9L7gG=JB#IkDB*D8ZZ5iAmL*?cps5p1<^2p%AiUn0YdLe z(0&3!Ui$|K!O|WM5xTEzf>8;pb6_v_Q_!b+@&;~D@(u^JZ{iZLtPdV0OZ5AV9p`}TPC(8eZU;#T_<1=N(Lklxgh!^m{fE|+Bi2UL^pvGwTk&-8go+p99Pk`S{ z+eX3|P`zmaoMCyJKG5M$V5oozfk$Hhpz50mJ4<6m_f3p1)7L*JW3 z?qg^docMUO9UPSa8&Iy3^t~K(kRSyj9EgoR(347}Ps3}0WzHMZjcyW`i$9PcPPiX` z2TBi0Lw-F6l)@61uB{Jv2vy#=`^kFM&>b+kLm1FqP0EtdeT~;W?#bIJA|nqKOqtaQ zh=87SeStTGa{zFj#g390;y$bqB0H7Y6Kz%Cff5+&R@&5gOyvK()$MbV*$VF5Wq{_C zBJ1;rx3*_&`UJFW2WeRmsnUfr;c>EGS54X8)*3-o9089Ea^Wz-0iWQ~b zIu91FP%;wxim2ih)3&_r#Q4He(t9w@T1q;|xCWcEOZE2oob zcreHQj7icf$kN(tS76Kz+=Bb1+;>-cwr{!x@4R~r#h)wOl?MNkC;fEyEg{-58YmEG zCZ8p&6L9oty2?ScvMR3|eYwEunCI;(6v%{V}j{0YZZ_KDc@f1-s7#txHHx6M|Bg zLezbNLJtmqVN-NO1N=15-QR}B!1Z1>d#+&gwhl6~khfhFx9y5+RppE%_;B#BQ}$CN z-kO*1{Z#7v30Xp;m8p&LynbcN0c|#a2NWcLE~lSmGnP{G_e2@~8@u--p|(+cq3)5O z`L~$pO+ZjuS)%nbsc$~1DZ|7psPqy1rcvOS0NipvztT*BZ-r~SJn43ZDA%KN+ERVL zBr{>nv+>s?RJU=vFGDpx&lDphCPq)?nl3Xjm>vyvOrOErF|uw9u|uB7{n-_eG~&Qw z(o=Y)Xdd4^giJ&6Y?*n-<(2i1!fUCBzvHYdYK|(7iQKW?(OueAc4TE6B(FEgn8=lL z#DW>3cZFj0>)2Ize)JUhO-34Z$x3D{sr`>DaocJd)fmy`n*}`LQp7syK8afIy5z~a zVofFCsfFkKD?TGWt?)Em2^dJvkFNL(Bxkr%`y&LdLCVd&Qu{Q%!X;0T<_HI277i(n zE=co-SMJAobB040Y*iDdztY>JX!37q^*sS+=B$gzmkn68ENs{4Cfw$%&d|<7xt1kT zts_bgSy*QNUWGu(^Xs2>^BWPZXaW%Q6PQ_!#mWw8egVe%JHo3^@jtFE$I;4tRQErE zt6zhJWGNqfM6`9mYH=gE9nkZOEtv@GW3A~Rb108g8m~RCM_qfI6_zq-tax|8;m+!k6>*~j3N09fMw zfMqSb!znKwSvRj3pWqg7^FV_E6F!q^pD&oZ`Lem^5`5{zNqhf;p#;kloM2s!+y&>n z5B1K2_gu&2-V82E*m5~N74yO5n7?Qgr8GksUcwGt zC{$eGJR+!6*L}^;*u#M{U22?@E(Z^(4^;A zmyaHS{8O?c?YQCUT21usQgk%gU~UaXmw|WOaI)q$Aus~6(mPP9P3Ax1`fS^NO7c&b z_U_X`L-7NHhue&f^Y>)VzYKC;`w)3=N)}&+V?WSD7NyC*yyNxI5Ft*M<NDT4Nav2rsE%aSV>B36COq#8IFxmgTVr^9G zXC`a(B&eavI;!RI%l?yb3%Qv{i@O&59~#j{k%d?2!k0w3(U&sceqeNBYhZZJ@yi&cJPcOmxJ0xPz_x>!4rhkHO|e{%F4Swz(hu z&pS{++I=G^j6e4xkM4O4Hkdrgaey=2XXx;VIbr_b63`Op%G%2Wlm#=rDwWY0O~#)3Gc;U! z1<^;=U($I8<3P%PNqFOxT-_zjzDt!ch+Q`?$Dx{osxE^cmL>E1!nZ7H7W+OYH1A#V zALR3PwjmFAi;3P8MHB1s;2_(@P2Rv~*q|_UW`>*XV8rTWG+ataWt5PUjAu+P6L88?7?NP>!E-`FJqTMx zAiThG?P87n66i5GyyY6KlQ9R|4*LEpDCotU9Yu^o>ZG`}p*P;Ngz^w}=sjK`BoL3o zE~iy=&|DnCqwfnsQ-U?TY-lz#?u$rscD_AOa_rLl9jETHVMvrRG<%XXTJmAD4VOcM z{Fy0D3^#Cvm)fR5y`xfxxWm!G#MvIJueNkNrv7OEwB0Ek+gerbhK}70wz?H~Z{#qT z)nNGFz|7)VuuO=<+@&PJ_tk!f9ywZ`J8H%o~)m)_Ko zwzhY+Vs&Z}aS4tQI*M1P&T*w|F~Y9TPjJ*FT^BUzk|ymF!Edq@4nD#iOh79jw%zaA z0&b#uotvk5YuR|SSbGRCeGi<_Afl4q#Cuo%SGow(zrHX1KJZhi%+G@`^6q1}#=}W< z_S3?ixtfHF!UB#o=T+zT5rK0-xED2a0iKa&KgAQ{{2aml%z|dhz95@2X#?E~&Vuv0 zDH`G~{lUy)1!3Mbhc3b>9TcP7aa1iV?!aVS5L^^u7CYGQAQ)Pw=5}73)GIvxi$Dw3 zoy3|e^cqliE?wxIqX3N@S}LG%zm8TuOP3Vb&stBIT2*j=LRXxxj^LUunxt?@P71NH z(lzDfzm@iuDwZmvxUVl1y0Cg(GLbYxT*oTcH!S!3{vzB<=_G1v5JXdWEDFH1aKm3O ztbPXGvOqyjdR^2UrfnrWuU+*0i2$QHU?`A;CpoOiLBm$Q9=)_qzw2{29Kt<|WhG%%2f?-`%xhqI$p5md*mw2rU4z;<+OYZ}&@&y_HYr9as}Zag zfwx27)}>Gp@CtJP=L}0y?(%{)nl}8Dud97MwA7kcUBp#20lF`sB6v5=eXC{$B17{qey>o zbwkbO@?EDw-B=a5|9N3G!df6M?J79DbavFeoV1IpmoO^GTO|%9Zib_yDD+;#3ex;( zBh|`4crf>I9D`0=H1pzj>^%m_#6%czzc2@&s97!JnH?a#G_s3aB-U|J@W_(R-$zLr zaoV!*TPIZ~bl`_L=>r^~PP~_W3Vtm*oLsmw0N%5ufkpT69ClSIatnbPSSL#?w2>^X zIE6|V9y3G!FkidC8xk3@uZ&n)hi5|lT{ZmefQH8|^foBA*JD%RrQIv%Qr!te!P+-B zlcB+bD!K?V0a1tJ-Y8tsv1~0YKyHUE_v{70Nii$Qao8%~%*JWb7ELbMfGi|(ICFI{ ztxNN-3-Ios=I|4jM!{)pJuip~_p04Ko3?;prono@iQru*lcWIs-fIGs3Snk(8Zg;G z7qd~iqfBJdY%1qT^$RpCbfK~Cxgh8OfmP`H0lLG*^Vb61>G>sR!Mb>cjgPXgn3go7Ex+J4dr%5mP#&!EQE@Ifxa@qT@t~oR9~vE^ zNxFBg0&Gg44r~5!0rg_9%?gfCWyL=MIGl&-5NvSIu*xXSW2fbR7}Dy{+}%fkly`O6 zQeP>VRx)SCiqMe#3hv%6N3oDNnc@$xOPLniP`7&8y>y3QYLjYzj=~wnTzyZu@co@CdKM@VC?zLEDY@0> zaY{F1`%;9FU3`bSH`PKq6AkJFWZEr@cgzyl3S89M3lqY-l^KT?3kYo3x8Ob!yuZ~Q zb*h8(gAJRcd@R3Z#o`cIzzzdt0vw$b89&DkEzc}2ggss!zs`KWa)bpgY!qnjL0h)A zo60{sVNir{X*Cmhum?}Z0f-mFvu+;$WEX=Mf#2)a6)#SVrZVG+g4X;cw?qBFj#znt z*I+>8yb*?Ts(qB;mho%qh=~o**I;rq$MD)5e3orVLHszZ^Z0(Bk zTsRLq$dJM_Kjy2pF72s_yRydOj)t?s5GfS8rPul)mHXH8y!xakeAb}rQ+rBO1Lagc zC!5ojV_Y3IXWs(d#8E+CqgHPF+1iw8 zs_C$5>0ViO@XfVETwM;^!LA7Ftx&9XX#Rx#m#u&k+uM@2ywV(IjU>3{^CsK`xTJIV z{?nu&%H}o!qp$f$4ZQA)AXa`T74W4!dk5_Fj{_)ROJOLp`~1^XSEszSGs@c;omONl z5?kjJjv{92&D^8r7Wa9N`+Ty(N%sCzZT;6oqv+X;5@qtP1wNW6iAhXfL70DYe)8&w zs`CIsvPfgY-!#g{Kp$XtxEL&vjoj7a18-5lduVP!JZ!N$m78ukjZO?Pq3J1nl~hRC#JXM9@p_X}>7 z`J>xpAMLx58M=SduXM2vOG8TI41aXecCrCn?+q4cTqlh{NRpB3`QTK50sNG{?(x9i z#_#cf{yeOpJZ&aRH}4GTGet|!cP=@<_Wl0Co{p}bht~ASJG>ov?}>7j+tw_R{}y(k z>sy~+>+ab2>V|nQuMK3sVP1HCgLv(GhqARBn>LBktK@0Z7#fZTO4FX?QUjn4Zk5$$ zocCm$-^dm=b^K;kO-*6VoAR2bj;f~8d0uN=IxAnCecsSz-A?T!LLoeOCwlN#KEND7mon!e&G$ci-O2XQz&@AQEY+|1u5C+rpmjydBuR zPoGFnxf6>dr-IE z?rHHzLv`*AwCoLd_6Cy4afgs26*Ydw>^|g^U4+hTZYa(s#NbrLTbFm{& z&qeAB;cy(GOo#L3dWYIp$d|K4;xSajjrsy4fIQ_^1zJ`IoJCw|fC+cL9OrkMHzQeX~f=K(vmcY=i_nB#R_yic^*&C_CeSb{9)H}!8MCMg7ih|oSdkhkyf|sm}q}1 z*xP%tw}<Wykr7q0bZN&TYDW`~c#UPdVjiWBbp@cVDXS70wShAm@}L;=t3g-D&lk{)u;U z?eX+NiFSl%A7-~%20lNBAEs7nDi$w@xYFC3;l4&fOQB}aM{_ERZ=~=2zd(KW9!02$ ztX2x0V5hQnZ!c%x|DF1byrw}>^A(j86G)yv?3x$Ip!UraoVsb(4 z@6ScNm{UT+fix(=L|{(AOA$xgrxQy&HsRDoR31&`zaiq~P+3Od=JMLPXKgkS{4p-QgS1s5_|6P?lr4@Z zfu9YCkTQk+eFBcJ*w)JnS7M1(m|BXDRf~&hk_kIrpZc;n@No#hQ&rRzY;eEG~-$jr${sFtmRM}es5>$9N~CL;cO{RsNo zApO0*W@<7gkAZ!Fm1RNl)@!3(4#BU?j|m5KxVTi zifvow*^iQ&oG^YSJn?AQrdxzGy{4wtW-G*H@-mGwBD& z^alBE;oNcNjyCfj1!UGGhT$Q!9cLle=0ptGOTyrpCE;9WLua6nvn`3l`r#YG3-?l= zkYgz!vSgM7d9R45epLuIwEp4Vy#OvHly`(z-o%9n#x%Kynf%r9`C#X@ImBw6p4SJS zTE~djtTn$SUatkOAd^}6;tB{;l{AxeMMPbZh?|Qzv>%Rwb;wUv*`b3*U13JY>QsK& zfoRivYuOjaM6F!~u#(NhI^SQ(u!VoSlCfC&{*?^oqX^~kCg{wsEBt@Ny$yU6)ww@D zJK5~yWr58mWP?PQnY_#ff^H_rZZODZpxL0%rm3)KwZ&*&^so0?N{hEmYc^^UHMYEH zff{RwreKTZ%?nud79u84v8A*X+e=6YM!13sh)N5xzwdKqW?zzE@4daB&woFkvomwf znRA}=oaa2xbDr~@Gb@N6gBe2sS@H`)7!z&v?)43W-5p`WghzY;QLhYc-FeK6@^qZP zBWKWC%9r25A=y`NFj|~PiN_M+G4;}xT8ELJo_*3CMc@il3rqJ&I^S)zXLj!$m_=l< z@xtyI4{@1(?)CN9Vh5#2hv@<(J+P;EFm*ak;smUoUx+OK3lI2btfs_zagL?v#zDM- zPwpUMUVSHTFRCDNao68^YvqpB;FBImscn?Xj`nmvpl;r6@aUTj9{m8zUsO7%ZQ=~Z zT8}8-Mrp<%_5k8mKRmNu)E_9(y|#!y4q1TPg0=Ka=rTlrQHBLEvfI~SFnGD%NBJy8 zUo{z@rM85(6>y)rtLsN0DvN zql;6D@}=3ZeT>V$W&Dm?ismQezx%FmL$7_0ue2+?0xJAp$H@dh#?d|gjov5L~xS<2rv%8AST z4_?L|m}t>J?UHILth(OUbI{;9t&j~Ts~{SxAR6i|C+}<}$XOthvW|DzeJ z68KB=>{*qMKD7R|V~AOM7g&D>bO^A1#y}pu3$d-sFtcE%w}M&W3mJ&IWmz}aJej&$ z?>g9?X1{9dua2$gdZ_XjmMyK04qY3+>xsnR1Z(Oom5om#-{L1%ZQ@oebQogi$z3@x z0C&9>Zb~5DxcIJvt!egTl=IB7#upy)qnw3~4qZaswI(YOcHhPoR7_QF3T@6^=veUx z!O?UVX{A-UTxi8H?2*=AurB6@^YT|1CyVmp*4h&f5cEy?#31KovM+J1tv&c>aN0c$ z#}4j#2uv2rl)+?cpGj)DI?hv{dKOO|=9>Q$DxyUym7F+eT;GIe_R0 zFWnx?OSgJyXtu%+bBm6v~ zzVWQS)M52?N9+52q&~f(&yU4cB=~S5UQ9jp&W67rU+bqY+CWgadz6Gx>vvaP9C#}c zF)Pm=do960kQOaw4i$4JE2Mk#Z}5J{lW9f~cdp{cY}@?cipL&8o{e{|XvG<$j>gBR_($)= zU+bKEQ&QJq{=H(w+!bqCt#ewdU*v^)4^HB3t(JZ~;HtldG9FsF#iWKqc$Raf-0N#( z0!Y4d3gg#9?}vNXA(wjg50Twbj#W4Gr=iCzdVn@+;2HB;@~@QL8#`)<;%@PIuatV#kJ6P`#$5up`2#4gR+4b}vlZh#l)Vg*q26f))Fg0{;8rs_N zd?Olb&kD@MOvugudf}~$53WuN9U1uPDu|J?hpCd*5>x`+*${3esA;B3aLv;_eu`N? zw@uH_xSGBt_GU3n67Y{fv!ESZZ+!<-7}dKcPy<v}`pMsSe552shI<^2`A zJ@~qNI+x++ir4GA8!M9A9`WlsD6%(P@c2AX?826HXWwi(k8UWfdlCkOJ= zlR~Qp@^g6nKk6*uTb(PX4oE8pDl4svK4w%`UkGqycYfIu11t1F$T%EgFlE#ALfMQd zdt_jEOlU;R4~NHSx>bQ{a~mb0th4CG2!5P;3_K)s z1zD~)Vv4i@`@G?CHw7o3bf2l2QV|ks@d;Kt%u87M{=+Nq2 zw!i9CI;Fo-9?vLwGHib^^Bkf)m80Ytk7Fo|x_(P}?jI#jrtLSnoz=~+e7XNXHS(__ zB4XDG*k+~kH^T4wM~)sL{c)9hsxB{9)lX%Q`Q~Fjtvw=2uFql#PBX!YokNU|uyTC; z2hN!<>Y4*yG+)pooIU!P@s$6x%F?DvHAh7z%FKGx?M-F`xL91xlkJ+BG#UIcQuh(r zD61-3R`k_owr3q@-|_gQ-jPmZZ7Rr@lKcI|X<)WEGzl^4-2j&LcT<5=dZ1s7OJnE4 z&mex<>O62a)kVlOiB&J3+H_zQ(lF}9YjMIOyLFbEYag%ieF=N+>|d12?Wyixe`o*T zn-@aW#2XD>d?3B(oBcROy`iVAs@1ttm1XPnwryGv}V- zii{`tw!f^uy5D|ND3dh|_S4RvHx|eR>Z)p3ax$`V{@pe!nBPsUH@(vG(+}Cw zH1QA!a2z*@U8mhI__qCg-|p8NfBn+5l$yx5gffdKH|)ERU;>$yv{mrJ1 z2e)khws)7vaoX;=7VeJ=svXOI;`JX`>Giu;d;MG^@Y)y-pHJibxZ^4u`)AKZ5G{OZ z7OuW?`)2zd;4}w?wEeU1LMTO?9oLh1XJCcbKN0z+A{KBCv2y&fgB$@kOyEC^pH$S#ZIN9Jd7f54do+Km4T3%J65FHj3|V09>ia zo6Pb%E`^IvJCZ3o_b|s{(VF8#M=D*C=oWus1p?jsIY-ixEvUZ@h;gx=JjVF&&?A# ze|D#_2z&l?5!9>pAK+lLrwM$MWusS(+4#zbhEvd=t-}M)i z)#&w~M!pMgdi_TZc>QzpIRCESdi@n|dHwCkQ-RQKT+kdi_gKCI|Q%5eImPmi_}*bo&0^gu^yM%Ip`yh9~1`uGha2 zb-#;ptxs~={eb7Cm%RRm@AmrZQRWJiXV2X~`%h!|(vGhJcgW}Yn%D0~@SvVc;V{Y# zCs=KK>DR{cr9v`a`YzgO>F`<{|_TzKL)z!uJq1{v2&a*oQj9c;^wsy^3JN^HaFKgs=zUAVNP~ zG3Kb9*pOc8PT@-*MtjR}{S%%yKE-M8;5qwdln31H0!~_S-HmG!+Fw^&Tl)^`7(hr` z$7v^VO+7x@=Y1mnT|B7|1p@-EQUg&$zdBaGV(Y!SvD42L-`oPfKF z2*0u3271fGIQ${%FaPcAO^3by>2CwipzQ-F=WT?S9B5~F_I7C;`U+#J1L^Og|Mwys zMBJYcE``sc&woGL3LdZs&vzlTW^n#O(EdAs?PiP(^m-*;ue=%KYwlxSzYq0>!+QV* z9VcbsPA>wyXT5&MIj>_1}iH+t4q|a2-H+0QYl|uK{D8 z!`6h~r}L$oUf{IzNXz<}*MAB9{Q&x<5_vMVaN1vxK7>#KJS|4t-ZzjBW9!LYum4X7 zw;^r`!gQ3&+c~ZvgD)*bxF3N!;sWyAh4yT8@1K1$Lh)Y5D@VZN|AaBNBw_#TONiTx z{-^-0FG09auz&U$gwqIq4PR8L1)OzWf6^4dgE}}|7X!z)A=FRZKl^9n`O-$f=|Ftj zGZ;^}ufHBVa31=lg2zFroWJ8L&Yz3xlenJ2__>(ObF59|)_Klf*X$r!MIs0d?Lf{bBi~QEP`)7M_ zzY*cvNWT{$3-3RS>t=)`yuYwqO$mPW_MdtFb!$pp@P~UXBFEk7=WyN{_&naXQ@}f* z=kTsqIL(#`Nr7OW``g(a*8y&X`(Nd>)3^$d11~|2y_3uN{YdvAhzMB-4g?Q^8{xq7 z7%vDJU7&{VOz^Fn_|gYa z#%6^7Ldfy)rMDvd5}_YqdshL0Exs3(^{KeHzzVT;IiYGOpog z!{M*fH9QV*&{keQmoT2={)o7Kgrw{F()r)Q*Z?f|9^$mM*_?kC;sOZG2-!abK9K$Z z(l6oJUdoqh2=Cqx-f=&-q!IF9+4n*BBFB9P@ed;GK^Q*^up_)pybRCJ<9-kUK3Qq0bJXl%b>iIYcOV^1AsliLd9{nO~AVd zNAC0bYf;wolTijj!V-?V^lgk?$icY?p}Bl%%N)M+Q-t=9y#6+XWkcnau)p7&oALB5gNU_!_R()!*9!Jyq{Z+@?Y9( z4L^ucaRx0~k$`tT3*UzLdqI1bz$3Px?&lFEBo-x=-pH5!Cj#Do-3|s`h;}uCbU;4g zJ8-`X?RXX8m$?5Agsd$IOBxY41P4L}f*m0nK}7H)>_+~B;9(B%uq9~ECVWB*%TQVt zXVK;(JTS?kwIMA7SA$g>+2_m@3&UB{ES&c1GF^L63y??K0vC8eO#y8!dU;8&Gs-zC6x0oQ#9*@*8z zaDY}IA|JFY0AB%)UPAjUfGrsz1z`*V;b1JTc?jd6`|ZawbZ~sB{KD)z=KSlO8(I#{ z-o9_iMT}I%cM_A8u+QA}= zHa8vf2DAk*J~$t=I2WN5VLHOeG`{oR43WO=U&+Q##pxW5G5<2=Fzgfj?*&=EH- z;g=*qf2>D1>4B~rr>T$n^zJh3y4&h4< zr1=p)AK}a+m}`J{9KjqR7rN0tJg@jV#zu~=n~xt4n74!PZ1(yap;z=nk7(QC_4^Um zfamO7=m8XPpM|RfVK3=$fPDq7nA1AGC3fN)zu(}oOK}$5B*YvK+(6q@?6-!@ghTj@ zJ1CFbfrGO+S-^2RT;8qxv=roUQVw2^hTo`uLna8a+5W&%Ae6YKAvUR8;M~GQeD;G= zg(PKlqFZQAguE6I;S;9h6bMLF-7cm09a0b0GCdPUZ640Oroh#3u0V0S3cPNmAm9!Z1l_?}-r8`k z93TY`P_|Ug7o3&=SJ9dBfJ%RI+ALl=cTv2vN&H&p0$XK%SwWqOfylmvvR^31Y4x=?m7BHsLWFbuy??Ow?$Z5WoDa9<-Aqx(yTZ)Q=1iAs5a~f5l zkgz8Zr4qf-xUHjc>l0|yuAOy;!Lx_PLGLuH8kjBzv)#P~0thY0+hou|FHt&;4bOSm z#ZSpWJjw&A2|y~(OXbOJ8D7sUZmmoIR~I9H1*Rhm%vfz^KX zTM4^*vG3q|iq>So-KP2k^e(o!(>>#?ZegBM;ssU|pSMKCf1m`TRaLS|WL#X?Y85^q zs*kl00!jYl5^3S87-R<{f9UE=9tLBY823xGdsTb0}8 zmO+A$1ywF<<)1~dTV#j3dPgmjI1R}UolXfuz=;K*Gafe`04B+G7Fn_AU{ZBHmjPy1 z-iRWpZTSq*z7}6jMT?e^Ko09@()B14qZ8vMa}@{%onE5IL7Q9A+kp$U0~gi~8`_~n z+hL2gqh{)8l{P0+$u=-Qg4asOSTJRHqqb-53};6$S{PhB#afUB;Wlm0IvB7>u$V zXLy%uUx?Q{$7oHoUB_PPwv&PTZ^KLFZFzbfqPPTnuu;tcFpXdiIS%}T-+|c?3<+vb zkb_C83p^-E%(;{COfW;s|GGb%BY*|1_Q3v&Ld_0Il$AuiLxR*HL9;`WSciZHA^+I` zr}2Ys0e)lpqQ-^3C=fOVYTggK=|nW-mn=W9$aNWN-FT)k1Tp@vkpoL)S7Fikzbo5q zV9QI8PgXMAYQawT&des8duKr}r21j-xfAZg1)sS;lj|I^;$U*Uc^vXO4piekh(wN4 z6~{>7{`bF$bDG4}oljU-%f$k zyX%PI5i_jiA$xl;4|A`9yyu}*aK1Go>pRNo%juNsCTew8H7OGtp;K&dZ_q1Eac@AK z%R_G)b*c(13aDFk6{=O>1=on;yTrlAlQ)_&5PD`X zgLEs1KT$5jsA#^5bGsn--8{&T7_FDYmoESht18GAs{yaZA<9?AVlB~FjBI@5m&NkY zSf28Jr;5kdzs%PY+$}fB1uYm65G+A%(W(msfw&A>f-Y*?R~cXw)Is}|d$Vw^48O4@ z^e{DpB&RW^OV;RZXo+nDG{Q9`A*sh95j7spWjJs`)OeoO-lvNYgpD$}cM_vUYw;Q8 zHGpSL1fD||hr=_7<57YPlnn5rH5l@tI|vqE&?rF{=W#kbgaUl!G#4&dH57+1wCU{p z9G~Dz_jrbM*5-nT##hW%VH_P}`asEH(od@E9BMFI4o-6Sg0so4Nn*}!#w)TJufTn> zyVopQCHApL4yMFLC9^1K5(Ec|F*7qbfHTF>wiJK)&Rfe#6l9|irFb$VX-w9frnmTA zhc~)Hc?4$p0%9a7Z}HodF`bGfBvK@DgO{dM9G*E{b8)(W2~D7s<}%7|lp8G+H2^Xo zL@#>i?QqWwjB!^=LpK#G}tQ^c+0KOr6%TpXj~Juc@U?h z_@Yo!dy*E(m#KXPu4XH^!YJ92DO)nKHCsq&qpYB$wod#R&D$5Ab;i*5?l9(6M7RG9 z`T*6tLcJG&N#p(h-{@m;q#q}ZLLaV;heOX0nB`wK$-{!EwG@SJ^Bo4+_xchTb?8oA zp_P=@to=j!K+$=7!ad$m=mSYLzqvAfRQ>Pi1H(N^8ZMBA3sVAZp7#o*K?F2Pt_WrL zS{T9M7)g-GNE$&qhPFj%Bm^3{ou3B9T7zZ~gt}tK(2!krngS3yNpC4mCBkLRB}>PP4H*4G#6TOdoIKo@Kny&&Q%M^7HO5bduESX( zI@~mCRh>%?7D9cajxGPWp}3I_HHZn-6?G_PzgR=>kUeG;73xQy#i(pdcOrWXbSS1e zwR}eWLdgIL$WCy`$bBM6Q&z@zbr&$C${{r7(>NnhwgrL}+)i zE0NKXOLc*WT&5OZSYAx&Bjm`T`C%5)uy^^=vA05SVfF`DEhq$%qbaF z8Bi4p{a@Pc_n-IgrK3f0AkPkLYNy_C6+(s9a}&{VYEYJgIczXuej~HNNH?l0hYd!I zY0PU1F}oR5TtsxcT%Ae=PN_C)A}lpLOBz2!4zNP)%=9Xaz*A}Ptx_;p=2K&BXI{>vlA z!{sKiE+47y4}Ka;te7h>;~}mf)?ny}4nVfAm*7peLZPdmTP-6IxV!M#2l&zxQviDN zb}{@xs{%0?*%Ognb7kv|AL>8`Xrrv8szfLe8X0)oWmAb~ZMKAV8&&FUCOJV$E+c(+ zKp!+9O_~_9heSM#U}?~dqMW@M^m1j^P6ZM9qUUMCikudmxb^yVUB)dK6?@Jbw^Xe- z2foU7-khG^S!UWb)4Nt-2@;}mrVG%&~xOJF)W5E%>c6WYt4paw%H*4tGALjr~k zCVn^qlxBYz^kkaWr~1sc$p(E7=7%i@s$jn(A2?sj$YDS9No?C-9$;<56~n$Rbd+k2 zYa0QYPUAT;-tVUI9zZTMGIqQR#^h+|j*;UX_A88cSAjy4b~fJm&|a!5vVL$!?A!rz z4hM;Vp>7oNwxBeOu@UK48|lB&)BmsW^z;|v>B)bLr>;dNp3rflwg2I`_M7n2+=*tW zdS^o)xk6`~>nSZJiyx)0@A)K_#Sic6J6Zj%E3kO`xG0Msx`mnoyCQ)_O@V1a?@BBL zDWNL8Al=v4YzOi(Lk`jFm4y`1>+&eQjv}T?;`(8@m{Mc=0epO8Z{7yL+TMxkhiOu6 zFt>qh%drSTluIJsq6VFEFr74Y@U(QSqMcvRxm@TuRZLw!F zLvt}IgCOZ;!`TY!9E}S!96ST`zM)`egx*s_Npbx>f}Ra}uUUv9zkuFrzNV)e`YaTR z|3jN&-+5vVusPbUWOID`JPq22%@Lh@1vX1IM_TV=e71aaeYu-eXRcq4ur5Y z&hf1gIEn)-A12KJBTUNL7^uyCKny=>%4yGML=9D8=+G zS|SsTtm?$mU|NR^-T-UtPK@(j*!d5;4@VU5!zNcgJW>K%<9h6b`vjA~xQg4vP9-(; z`NuTGT)e7el+?+=u~=RuZDOoa>@;r~n;O?le9K+OKpab|#W*~;#xY)mDfBoU9{?Ft z29}M1YM9J}p&?d>F&%@lX*mrv;zT>O3aw;UG#=LyOi<_|+u-wp_8W{7S~Jbk*xX2x zT_S^rZd6R#$WS54K{ERr*`fGOl7o}=`TJzk)=M|4Yck6}nN5K+eCRbRP2a|&Vpjt6 zQ)PQLo}eabLm_p&xLb(IW;B2 z@|-<~dgaZQDRW|*hB+IphXx#7pMzJoVUf}1<)oo=g|FJ_81c}lb6`k#E>LzUaCJCL zkF!#w!E+_NbnF~9rqO%@zIL2+^c+o5(Ct32nr^A^R%9&pKE4nipiMN^P5xrM`)7Lh zPv*PWkHAT9oNMRthb5!ejZCj26Vusx*gWAyzUxT%1*o5_KKd+x+vVm5&>(?>BM4|| z2eo^mif84yxA3G24z||eKr8T>F1WH_t^MXi=7SIdJ)p^E`BVrhc$-y_sV1UmCtiOs zA-4RV#gzX$=^2I~!22A-&vWOpF|!Hd`C0bdan61~e}0;tF}w}g$8b&c0jjRg!d=@e zv(D&!eFtEw8DjF%wEwjcZi&%Jt-u!6rG?PrRNMl556QGZM2RqJH`GZS<7^MgEa>&* zpns=#^~aUH$a#(QZ7Nlfdvnooy(B0i&S$7qcRnNKEjUt)Rh^5SNb24VFk{)=bx@YQ zm=@F$ocKC9;9P=17KLrmV7@Hm*&kB2^X07^{Mn@7xhXkrzJmup7jn@JAB5c-@Pah= zoT~BVG^Sa6-s!OP<#UgN{|a&wNTKyvo8rB9D;Am&`JwrxlzLD zXbI^UI%vhu^#LG{!2rVFHXdv;M*7(pPMW#RCjHmh%qpAo z&e;fKTLSh80}XXO7Qewp2F`*W$k&aNei!@ptFrXhvzrcu{zB>H$((z`rYiRa-%eH+ z$x?W^CE^e3P_xdEtiv<8zOfM{y?z!1+yY~N=nZ<`q_>Aq=@Dmn01Hoeg*nTaubB2d zj6=1~qSeu?5Uo|=i}Za9-2i3#6nsUO#y*>i?IHfC){T(^p3V*qpN?}MCO+D+gc!JI z8E)X0hLwctEnIAhxUBY&B6Xc5epNo*f_8VF1q1pH`q;DYFny*s^fQ7PXI>PdNaESz zT)57x*T{W;1+|k{BBPA3PqEMC5SP+JZi7VeB=%T zJqs<(OF$ziS2fGkoi5=$A^D?k!eK#44@#xcm`vE%1P_S#e1bINEF`~7OXG;hTOXFx zv#O8`Zi1EXO_U9>7FrLv!h6p{@U!dqk=Raq$M*N`MZKdcRPWLo@>m;<~xh>)oXAZ z1vO4^u$8I2cR`x0r_x!I^X=2%pF^#bEj?EQhLK}rQ8lJGV}QI`C)!3OF`@NGt{i+b z8qxIzWP7Fz?^6a2XnS+mo>DW_BGsP(&AXd)_2CE&6h;_!i;V~aQwQLb?!bJRC58F) zEa0al%z~G%A79dzg}JF<1Itk6t-=dfrE04tM@vh-OumT!0#mrm3u2x`H9*48KZ9cv zb{D5r@!Y-VO&2O7Q@)vL4rSWHGHILpV{$z$VNMyr@)`a+p_=w$^p2ckPlqM zeHd>2Y*mSe-G|a(bRv&E3?AQ3atuZk=JL$1IA5a?TgDuaeO@R zT_7OCX}l@lm9M$Q&DQs|Y5E4m8PLw|Q2yG=DIZ?^s@qs1jWHjPAG#Fz^RX|yAM(2Be z6_zf1lqqvV=|ZgC433a;ppxd=@t7x;;z|?UU^pZNXhC~q7QzM_d`WKCj%~c{n-IRF z10MazkS$%;37vHy&B{X^&VAl(3O+75^f5+)Z6PPU{SghM<|;1qr;nKAq|T%$bT|3o zcJp#wGHf#FRzf1Y<4l)*Ox97PFQBo`xR=v{Ub07NHgfq=8g(!u^IQrXx!I6(oMLUMXEHDw?~t! zK7z?Xc(_DS6%jr)0piMF54ZvUGBxdXr+rMrB{s2`K~3!02#7F_>L$p&cd^AHnsa=W zwLS=c{Y=$uPYHdQo^3xvR;h?;Hs}7Co%zx<0~Gt5h;kxbYk*Qmpe$#~31lTe5miBq zfFd(cmSepvoyv!#G+@b+dzUa+DD4^s%Nkk9%IuyDSf;YP4Ft>BI9Sw4QpzZ3u^X^# zAXs)n_XIO$uz;<5hQYFPXeT@mc;y~{MeZtsQ`T-9Dp|EL>OqbXuVhW{lZ&Di3Fh0cNq_lJM=&#t zWNK;BpDBXKBih&0VOP=LMEZki4}^xCZT<}I(Z8d#PI8>SIBP*0N>)>)DpW>mI@G~+Zw_x$(mNGrXf3^7j`<6Lo+WvKOeF2EjHMFy@K)~$RCn(SH zIF~A7Zz;fjDy(k?pvKWwAlhAmWyB`TiD7qe!E0TSg)Gb+guI=Yx9Rh=5O7oy1TT;@ z!U%5MK?Wv~tUjmSQB94rb5aR%&?nhDmBgXvF2$+lq+0ec9mugwNhBS0YyvWvbzpuc zY9g#8q{cu2%#a0mYeN}JHmB{V&hXzJh8sYS2_vT4Pz0yssND|9_2HD9i*kWWy6QtW zPfo5wKfGj|um68q&*vW)^>9W#T`gukKd{`#&#Rl3xB&Yb9V(g=94npsK*t|z2;?iM z<1QwM^`?OZ1HExOy&_F38~h-m=8`=^=Al1Z@iHx{+Hz_5={P8Rhce;=h!N9;2Ga#> zGsg4}W(hF$49zvR&$_RUbkmv~Z0TsDZF{iTGdz~{##e?Cq5=lC55jfXe~io%;WFcN zR}|eBWh5T9{1bTSh_Cj_c=$gW;T z{vT36b$msUmPd_`nun5@O0)O=-=R=|6Q_+c5bNuGzN#! zzq{i>85J)(N9Kv*#VF@jBlASZjbU3P;Q$#OM+Xo8soucpc$bONscm z8=TiJJ!zuh#nUuZ?7?yt!vz&!iZGh%L0>TWBW939*rD~*b`l<7v8-%e7CvZ{Xvo4i zq#ALf^KoW*O_5&L&E;PODCvbp2`BX}A-> z31U8crm<*E>!+rlv<1o{>MJ@O3vedpe481pF3YQ$H088U#u9v4!RdL*eCs@K2^L{s za0p`iCe8pz;P64k0OmHAP613i4_V2>N{;!62A1ctv}w}B)6LX+?7_7}_pWw5Xn<_W z!IB_p1hZ_U;6NR)pY{bKC>Wx$rKHooI-tO&qW~@k?x4ooWM055TA!W{_m+i`@$aY9 zDjRi(kx@5yZt9lKpOT%nwkFJCiRQ6hhd#wr{uIE9s-ByiNE28Z_4m-RxK!3wDBQ-r z=Q7}4I(jO5J}tO}-XNH1)GU$S=o?iB0l z1GrFE|CU{C>_s-l?gPJ^S9i;D9aqqvh;hLTY#F8>;RuFTPGL%^kU&z>XS8Zmrp5{R-ZzL zu0oy!X$AU2z(l~k{L@2q%vDW#oZwk1J!ZhuO7KiI?N$L|5Sze897Q2Cf^3$(alMn- zjUBbZjgYS><~{}=dH?+gA897H_esEEaFPwny{^aE`*rgZ zN|xh&xH$QiyVo!_g!lKY*@bmBTj;Mb?~~F6d!YqzYKleMn^fhRWG?o1c>#2U@3PL| z%Few%vcWTRub0smx{RZ7YvesKYTlcoc|*vHv1+|#d1Rgw$ifs7?-P10?&a-EeaojR z_PdDFv++-`GiM79(f2YwvYp~Ux0sjMpLk24j_rEa0G;;NzlM4Di#$6F!Zs@vZbbK` zR0kaQC07SB?n|l;WK{*S*+e{7#$23LjFV zxVKOTEt)-JeIoI8yQXBR$^==tYFoh38OT@_$Z85?R|iC#K%oWPYM_uAgQ%HTt_gWC zN<6R;e;;E(O(&LuuCiu2 zFT%=8va5vFp;8Euswh)a(=v&W$66C;GSr|+5+cpmNk+GxT{Gq(j`A&TswV7UAd5~czUNU9hKD;<4=F<<^L z#;+giI9fMl!a{?tdsbpW5i3fEL{v|mmoQWn?pex;%UAjG`$xqhb~9$hU~$rDSj1j- z7sKLYkWF_5M&~GK98YM>R9)k-+0{fN<^_}64`D~o4mpcfGy(TyW%U@h0@J60XhI|M z0DY4+VN#XL#?Z$b=*#=}F}68`4A8j^Xdk72v9WW40ljA#j(X4%rM&;zgk`(2bizy` zQvjv^0wawjVx}(BBD0^7_>d>e-13Z?n8u*@PU4{si!l!JZU{HaW)6wo^#yJ!rp0xX z0m9EK4coGfp2LvVORkw3F3-{<)muk`kA+(mw-&PhTC zLYHKvuP!(Aq1P)|-Vd-%l8#Hm%;qW7=3vJeRk&jKZeG_2o{z~KoAR)E4V$mJT~Oy; z?m=k6ZdXaC+hs3SHLM3Q4e=T(Pqg>xd_1oM<*_*t>=y8EA|*kwV4@Sre{F>;`*S^W z%`+@B>SJe)Ko;Z75n}n!T--423ph%Pj<_Nn)2(WD_Zq;l#(=})Usla0*%K=lIs9J| zH7&_gQRb((7b+*OohRpc14jp0;lm; zJeH+E=v27SbwoR?pUn3!lI)I_0Q!qrx&~+FX7P>Cg1`o`yq-h+P?y#E`#7%XB1v8B zfN*h4XGwwH5cp!OuwBk#PIsiN_0*OYHnKLh)O^YcgwOUDmvW#RMu^O6yB%s1*L*E` zg7f1Fo0Qep!||L@PP!D9d4O`eEZBX@2$V-XLoqX?Qf!lqQaY8@#YQO@J!1+2R0>VU zeSs0Bu*C=l17@Ty%YmhAic7BJ|EL9QD;NnNdK-f(qPIT5-v_@IOxv*1#?cf5i$h6h zhSYNcYNV=_N_%mWq-wLIZrs>a?FP2ibqDaM7iAw)x(PFCKJTKjpvClKX~&8Aj46bk zJOMgjy0Gz%w1p+nT;+*K8uc;8Cf3eqY{GhDCmUa4ZBrUuZMD_OWPcHEQiTSLK(B6k}bw9FfK%wl0)ntL!F{Z^~)^% zaswM!jOX9Z>@a$pS-0mq;fDh6H2kC*vALBH#RVk`q`tyO!Qc=dljW9zBa>0agksb-XU0?je`aG_#T|Hi}f}yLr1L2O7p2Aw2cs^c3k#4=cyfGFLd!K zBQbXbn~{cToUCk#<2DLI17WJZjuhvOm&>6)j8cF+q5yqjkp|%8K#KI?du^*iAH2sH zC7$7ANNPQl2i!3iGZyLirI&dEQe8D$FPFn+14U97ps04nF^nCu=V2~WRhLc{J(|u) zZ@*_STNep9FA024EofwnDlL$)&G#?!%X<ma9M$G&i7Q<^ei_CaS&yzqB$*S>*ru?*-@)KrVPccAb?E@Qroyq*7y|THbvu8joVbWmlyz?3+(Bn z007c2664ru>jLX=fq@KCUJ^6u$@(2c#RD6aq17a`m~3yCfme(yOs!p@jiGOao1dZ~ z$bWGinM=VQk%x&e2rNJIm-q=+-VC~94|y+ewuguX0T5DKdLE?x{a*-pCZ9sH1PDVi zPvHz*h%u40jOE;L{Ua(2;Z^^S$}LjfQ?_GG-EYrkVBQ(F-9~&FT0Ts2*J?1y<&J^M zdb_o3(tD;|F7NW^v6F_(L2S^l9b-P1V|>cR;;%a2D|1G3d$||Dy5DXB?xCKY=BXhp zUxlmUPkPxxBzM<~R+gKGwcG%z=GJiePYGMXrOtoU9x|C5uMI5femF$)CE7PFH4JS!WJGtZw8BeK z`nRD?QOeS7waX}fvpyG$?Dt@(gGQppNwsze25gK(M+`d{8Q243C*e%ya(!4Zwp%kc zPJCv{N&kp8eJgKOd))YLs=!8Nf#5D()Ez(`OllT}%d@dGi3PH&hcXY9qwE4NQb-TPY2VXfEw1ot zR;%A{^2$IOPH2wM%6GEK1rHz=)$-&w7ZWHh|1o#HEcUcLXihUd0 zy|8r~YdF2Tc5Yk~`Zoje?y2BFTTum9zDWmOVPL!2e*va)b@r z*Ih$@*Q%~BOSSJ}GAReYOfCGGDm>djn^a*Il_@&#Z1y=h&>?rUPf;G1?QMm$>{>@v zvnXsk%eJ$)>Xvd{|G3fxf2 zqiidHbmzMyV9+t4B~%1y3RX>sO#P#xS6{zdA*Z24kLNCii&nb{rdpQ6-qXsiM5wlwrrIp|Feeu@6d=`TQk74(O*;pO0s z^mh~e&8NQws_>ZJBFs@c?q_g3X2zj^9B(fou5ivqog99gk5XTyh;2oigFAj0259Yt)EtC2O04L(RsA`i`@a!pvji zIVtVk_9hw*N-+)w!selEii+VGvQtZ6Alf&MJ)tq18pd3ah6a{{;RAbRpICOLd(rCZy&{=S5cEZF(4Emvym+3h6w2DC(tHs=Iwg@A9vGxVrDQPfTp0_(KEEVm^<1w{? zoZP0QK}H|AY@3YXov^4Xky)YvU-lF*5PT>8rcv)zEO6QP%_+PO)16u=Ts z$Mm;QBo+#%sY0II>t=>0+vhe~mxRzt!(2gA5}<7PZx+jbc^pn2hW+l2&ta@!w!4xw zP$|g)SYO%Sc%05#LW8JZx~TWy?FyR&Y^3HAcRMs`-O|=z|2{B#1``nx3cwmP`!|=% z$D>`AFGego&@NfW>?6nNOl7#O1b|sO%|W-JU0da{mOXgf9PKrW05E)+;fHg0-U%#Y zVqFb=-1W!UKJNN0`q+Iqu8R*x`pL_BqUfIECr_Z4ywpqB+x-GeaBpjHP=>m70;<vX=v}hUxG70#fC1 zxKMoM_`V>sw=X0#>RTS!WE~5zSfovq>)^`_jP3ql)q9VYra#wWsesi~&c{nR$Hii?Op3nRDn!j-zK8GxgHzKfu-$}Pc>Bs4%rP4ThvahCxD#;#w(4-{F z;nU>jIaDVlvizEqpvM;S6v-Kpmj_GdPzkG~i-WkjSCLc8MOeN?=`)Hb>6AVhln3CKj zk8_&Q%>Oi=(agU@lB6Rj*CG8WHf=tfh^*4#LAs`337V7MisZMe1o-}F_MS)*VyUR^ z*fje?RMg%>shQSJoJ~iu_6U}#s^3A?NzLH2jz3;CZC7+2a4myoV?>e6amz9bKq3Yw$ zMZN^UPwasN4kK>VO|MulaqL)1YqJfUCcqAwG>eDV@swibku}YFMoznt9nw-PWe!3Z zd%@6gLeemkDt#{pJ_ue=H#srbaHnCNKWULl<%6VXpCYhW0R|q~wlbhvq}PrC!!dFB z&P0hHWc}$;MLKE(2mj!xd%cv!!jwGS$sU9D)G=egEJY$zReJ{K^mDoEsmtCq(n^-v zP!^Z>OJ+5~>^qItPMXW0vg=^E46ve)MaPfne%Sc@!SFn39RPX7Fpvji%g8qT;n)@1 z;EHL(uVdQ~+klrM4Uo1T1LD9YvAW-lr2(8al&r4jAl0r{#hm9v8AmbEF-6$-h~~j= zN~iP})Zwrqj*TI~kxHMxm@bw*dra>3572o#H_0dxXRpw=T0(4GIHc!}VM9yju>wVU zis~-<2~}I7FS6KZiy}we2z=?o9jl>S*{Wl)r}$t70S;;A#3tRCoGo!VFtYLFHnRp6O8IWnsLzwFP|yt%_ERhPiISCrcBM zns7yOu0E!(8~Zju9@6Q@_|65H9?6e}E?NrICnwGnhf_c|mRq7vgVYynvFiZ*=`s({ zf(ZFjpdAVMP8<_Ki*yH79J`eX%8&)V%zq5Xn=)5gaBPasK@nMWJ^G`9;`Nb1QRSdL zvFtiCA)41?Mp0hK^&$|VLn=L{tga#@FSXWrqokO`B+En}jsk^>l;hu|{o2x$V{H9K zns%&8;4#k1vX04bFi?ydU749qhm>v>2%{MvOPym(>O9mu1H+4|Nn$N5mL>qJ3`B-5 z>ZUn_fuao7vdaTH9>&Gu;co*mI!gumj4!gX+#j0>Q9OKTMj3ecXn^qW_kmbE3=J5J z!Nfy=iX4c4(;WaFP7dgJI5lA4;q3wW4W>TnHJX0OG)7GROM5J&!vkQq_;Z2qbV@J@ z68sJ^;C-nh2$FW2fjoL{0>YBo(at1eL;+uJ{wGcGF@y*+L(v-pCfl>+GK8Bccr`BL z1|y?d&7Bdco@f<5S?U-7S!6DSz8n)D_x`3xMI&D)n}H*^PkdZ zsih7$7QR1XJZ((&-L6e{s4w@|-rQq5~!BPC^*?jUa z{2p9p{C!B5dqLJ1P;vB7l55wELic1}zYYkO)8~PA3Y&9f7vS z`hu{llBZ@+^pzoQqFfP}k{gNhe1f>C@o~QIAny8@I6U42Q9@tXf}5FA{8RKqCbTM} zD#&#k+l9Lv77ln}Ehn!&9MmG?6iHO-UOrLQ>!V1OB0ZnDmrpe!2|rl-cCwuWcz~os z44omTxtzv%+bFaJvM&a|>^nu|`s|)4`(c)Tq93?W+-s=u8hv$*unxF@Fj4~bVi|f7 z1@sDZ?k1V8Kwh-a&d^JnYUrC8bYP%?UZ7Ffq1{91<;r0O22J71Zg9iJ)E62c$=HhE z6xt)u$XE$tfK5FHx(@YVmT;S^AF1&?4sEB>m-5Xbb10n;Tr-DKxS>RKt)k-onQ$he zBi(5;w58_vVfd+G*c9dWlYlLjym$}QvH@F^N28`}GE15(dHM|Di>rO2C`_b66A}3)>KNc`a8rxssC36?1e6hwgxahd;)v&Vo zymD`0WRKIPqs)BcFzssxFBT2P6^@d@bVO_B;Mk%gaVhq6Rx7DeDF?ct4PuyJWy#4a ztC!$L?ZC-auu2k_pfzf+1G`lVq^SWX&RoTGD~q7SVj)(3aab9`8tCFUW{7MYJ+cGyuVTVAWBxTkRQc!I)p6 z-?WUPHdaRk!L9eHj#^nLdL%BzM6EyvsnL!;F@i*VXHBE8^CqL0fkYeyg0GYUCZM#S z4q-Vc8rl{i5juY|(2T><5eXG+0v*rPo52ih+b$N>$5qKtVF>e8wxT=Y60y3Y_ciFW zVhh;WEoiDw0M~pgK_5-{mSqvuTl%Vrg+oy+G~jb+9@0H;G!oV7F-3v6niv?2 z&fB#je_WDoXNZ{LK3&R}|4ervGtX%ugm9926ot5}(GwnaS4FG_ioH*fq@%cN$L7ML zMUyBER*U?jZ2mO#AD59{M(J(cl6)q=xRpAQ)SjA|mI78XT>BCI#N53}lK zse(`LEoId`e9@<{<7GE(lU~$Iz4siI`U}0(nss4mgC37;;2F>B@#yazeFT`ybv+lx z(`I^VbLQ<1OHZ@>Rno8f=!LcHg(_xQn!)x&gZ_$M>XZJx&vRTn)WN;Q+fNnVGql&j zvKafOiAI0fC(9fR*Ii~3ooOp=?1Nrgh7-qMObz|K4~&`CG0G@k=sDw&o{KvBws!R4 z*qOXUTEI9m6X(x9OX;C!`d&yn@V(9)E)R<&>n+S@6ZzNmHC%i#A+(P2Ea0V|^x=5g zRfzbBQD`e4$oj}F+y0I(zoY!l4tr5 za??J`qx`&-N3Aa=mSn8U4K-1^J#kv1S?~Azwrvgr&d~QMh3xd7h1*lMez$M!l-AS@ zYsark4c$j60Oi~4U0COzNZsY$@bras?(z#^z~VoZ;9meso7!>bYrOs57qJm3bPwhA zuKJLwA$UV|ef9|;lvNc#7@n~MKhvI2o8iA58-xTbY~D#PYZhpN~?#J4Bd zPK57EZ2pAsww{x|+-Fa5^P#U&uG*^-i?aH#L+3@_ktWt0P6^GYXgFtG1wZb$#=JJ> z#WA6I6ouZapli|WK09BsvLF=t5D(iR=FlzOXzb?a{*LXPduH_gVMbrab4{Te zDDtfo`-0ba%5%M$c_!Up#C;SFsdTHC$H> zHZv>wjU$vtH?LVbJ34&d3gys)@>9P203Gft(bJ2TkVw~#_Y;~rIvRi7+4zg5w-WmJ zP=+3xZuS@1gp*j@6tT0z5=x}|rtVL6_^y__KeA`plf|_Ut-!b853Ty`Cp$`#I)D37 zhx?(-rQ@X3zLlvo=9**<|D6Tg%A`Jda~St)lN*~n9i5&Pt2}!weNqDDddDudiVf!) zw|Ne};=uFE_C1%6;JVA+__(p9e=H~Zt`eq=mN#;BR=&12z&FmCavARIKj8Fh=T7%PalUo_emv}=h*+rb7Vwx3;QZ_%(|Md z_-w>^XoQ)L4&LN2=76UGpD_nV>gf(XoU&p3NEOE55kKz6*PULtTJN(0pIl#VxW;d2 z7MS;qsI<_1gROBq(>1=SUJzC}?;TQvU||)i7~l}-EB-nX^VgC1#vtuAzILZTQ8QAZ zWP+i5x)ea>i8Kb3trX~K$fs<%Q~Eu~lTeD>5!kmm5*J8bL4?f`XXS{wa)jh!i0sDy z40^ug$lNI;+Y3-KV*b;}1wMHR!{FKMNncO0FsvyaX_lD(IMN{?=@{12M-pBl3p`oP z+eUg$MnjTjB55v}?@f9WlKjE>ha^p;1(WBzX>W{NJh`Oj8A{L}NDxgX)voR6aDpNRYIzHvWX)(PHXti8l@(_aa)<2Vro`@$=NGk0D4AD47 z&wdeRR~~t17$TQk<1YaxQ02&Ifpq=*(9}Ce(>DoVo}S;`yn1WOf^h8odUILhYIrB70tN5ffl@OR+w zAM6i@VU&-Tz$W2y!1bG&d&Bhtas&$p&qv-T7xple$zv8|N*O_>MsssGRwGZzqy6o2 zD3&Zxph~1-t`FDq5|>79R287^0e7}tMI41ebXq4{ibH+DGZM|naC!xuHp-TMg))JX zJS{0)|2NSntBR#czs0!_=H$^~9n7->D6(e$n36JI7#@2G?;b%JCQwz76X9Y`4l|;y zd}fOLbH`#)!@^z70st7h&uY4%DApILh^b;5zge_)kMHzx%M4z#P_~L4yUW%K#8n%n+1Pl-W28o3kMB`IPyi;jtvBWEH%AFsw?V(yp_x z^*pTE<;`XA(f*^ylfj*Jx#5Em#xFrIUtGW zcs%=7sK?b6WI`C-0FfuR|c2>kO31I2*9FrRi^f}1$FcBoSZ&E8(UXt*rNw>oQh)F!Q~G5Xfb zsLmL!iE}5A^x^VUbwK1AZcYQ(!rUlET+U~L%L9pKn30svfXLdoZ}igYUk#6{rBO9% z-^dx^!Se8}k<-Tui^KrQ7hydYZtWmu`&~vA9vVE;_NEUdf*$AR7^I`grK^MS5sOZ(sFW%QVy!8J+-dFwu z?~4Dzdwa$+n(-l6uAs{Q5+;&sLk)4#ia5qsXA-}yhf(N&fmg#{6bB<~h6fku4(72T zMr@QQHU7Fh90zofK3eUE;g`Sn@0Pcic#Tef>jfCOxOxv&`splU${mGa)dN;^AL;?e zuf8Fhcu}$jEwTQ{T24lrOq*3dA_YJP@2G*_+b*lHd z=ytGD1#q6gO`#=B}&QoAmoE|G7}Nt3l{@iU&R!7KI!F}3peG%{P!-#OdpR` z(z3wY<_$yEuYn*{aG5p#erW6>ywe32S@Z9PR2NxM7aQ}&5Ugdn7W|qdCq#Hb0t+e$ zMBPLJq!a(&kl;$P17FQ+hMXq{yH5_9j#x~e=tw(8!g6kYvk>x}#t=Ne_CCMB=h(m5 z+-%u$n05EBx_EqZh+B-X|CKG~$sgbpW#} zJV0zQiQq(l#U$|5xcP;lv2(1d0>_72G^pNr%w%Q`^J*ik*HTa>3@&iWQQ^|_suPCH z2}7`kneFRcNbn3antAlRsw#oJMrzXg|B@i!63lakAkF_j(mco_hRkX}CWlZt;NjLp zh-Y;T?=d_c*o47f06n}YLJ+T9?=P?6O{8(KinW9A)a55}<0=Uls;BkvwSx|UOie*~ zxHhVRm8B1iR-n>F1p5;S7BsrfKN@DWK+}v84u()+ZqFxxt`0!5h91fgxbb`1pxa=B zz0b;$1eTdT%{=k|<*lcUygmAI+9=frz%#(8&?~F-Z`BwyAP^V@nX}Lr}FY?I#?I%y_S#>M6=mCpDQJ{vlMX z(;r%^^(knzi}`avO)I{)_Sp@La7Wx6;aX6UmEf|0eot}I`^%QRtZ^)tE?MgEpF$D- zV7Aj=FFukGNQ6iM7FEXw%_jyS0YZ$pL%i1bYQ*04n#REnpGQq*t@%yL&-eP4r|7e5l_;*z<*;|+8f5kS za53y2hAxji>7O>hQUfy!C()%bl)=q2tQG8T{Ke{W4eM>RSvqul^tkkhis*F-|?Z=7x#k&>D2a9M& zp>(yv;U7R5oc{Lg!46TqF9}1!_7?}qqQQ?P4SEM;4$bKLLVABT?9aiRCFe3I(g&d_ zsp%H?9d*EteUW^{f3xVs9r!)7XwyW9X9{rqy%r~Z!R{0otqpIbaG=AQz#>=S&iP z$u>!HL-bKaNsMp#+I3rwrmtMF>e@s88^WD_HD$)K^hDnL>jGBBmZz^<0qt6LbllSJpXOw#(`x^&-#d0rGM4RNLu+cv(qQog`EM|w z8KDkw51Cf{FaRnHs#{NDFy__(40#!R@&kstzZ+nJTPGRj@Eq-q(@8u=ocusn^;bu- z+oG*;Bwx`*S4zjfKQ(?wo?LE;{+o0(^;EQ8y65lO_vJBP4LDAoVuF53X@y3FZL8j9O_`JP=Y*(u4nC$#Ga&~W}YEdEZ3?5coqHw#D}lG!OSitQf` zz(rBx7G6V*zkSyLnCIa09n?N41mV5Aa-c@sI_ayO10ORZa4?6FBwI>APje?ZEG3_= zs!^9uLQzpoz6~bffw&7`X8fP%OBKQf`@)Fhor`^qk)^P}E1wBwb5QP4hYZ1u$2v24 z2l;`VkH>A9h;vez)hYX^mF8{sW&G;R9llQrkhZ#?gLr(Hd;P9kCW`5-edV+e*bdvuCFDJY0|*G>gS;fN0K&}7K|U` zX=V-Bc*%AC4R!Kb-eO*hLeQx2DSim*R6qM^o!%)c3bX`KOh#D+UY%eIVxVa~QSW1& zC(x6!{d8#-rOzv?qf0ZW&@F|h|6V9uX`ViyGz-b|$e?X0iNPn-2U8$A#agCOn?|VUL$eUz6%No07b@%kX+NBGD zd7%}V-zXf&S?^cxLzG@3!T5w#lW2_9YY?CDDcdx6oww=F!qg^7)p1@!Q_SZ9AJ|qw z_b^7L9cC#+sdBOJf;^UNSTMeuXTEfPE6=pWziNwo8yvv&Fat+z>V3vev9gd`dLP#a z8@j-@Dy^BNK+>g7cEbT!s0&gQqVy=*)y!J*M6da{j?=%4=@l@Ilj4qH0cGw&?>X zI5j1iDl{Jex-%(ewquKY)5}!xPpj8PHx&A>lYG=e*)&T|$wBKPUC4!cX}vI$RtIG) zjSMPiXFp%#1J(E`%Fuk^JUN9R`HEm!xKO{e96p33(zBaP;!Ue4*(X$s!mn8bTv#Kh z-D@U6p9IR#C;x_-p*W_ud1mAJB7vtI>jb6eSgLr$vBe)4YABS8Mp&R^MFOA+!g@Mw zBlPV&ikY;Ihc}VHCK7C`T2F$XHaDiq43of)4ZD9PlQ8-kKYG3(J|xKg{&{(e+*-uL zyL?Re-MQ7%$78mh=XL}?MBFe|Z{u17&1C9ADNy52h;5-iw-yt^v<5J~`c((^{$93D zRKAjEF-}i2A+S>P)$S>&(rz}=(3s<|@*uA-<7YB2?2r@$BaE*h7tBi9D&c6YwEDI4 zbv0V^!s5$RNU~N>Y_KiiU+xQY{+nJ-*5MNz>-*XAP*8h5mdJ|k){DW|2*nq5d)CYK zwCd)BEk&`epEGd>lHXxYP%|^nn={W7FCKIHd3*Z#4w|H634PX2f)RtZmhj+$S-PMS z)WvzhWrjf}sepj0QLqCqY1G1-wSvclsPIh%Z&3yBVQM*#$r}43yp8F3%qkVWsq{bZ zv8MNfH9CQRBrcR>A}8Im&$|P*rY^_Ze<6JwO)@b-=ey9Q zL`}y8oM(cgl@5k4PuMjF_l^K2>`p`zTuM8AoG|C3^k9~~oiPsis;=>?J{CmPCbHg9$ni$6G9_YI1Zualt3~xTBm`qqriy zmB%M6=GOC!ip$bFF`q;|m-H)U+D~!3k3|(*wr@+Mw*_!JOXrcZgp_)bI-B(2dp(VI z1QF@Pfa^>4-V03dr8wSB(e`cIx2D}>HKTn?zwFDTR|de0T6x-hvftj)-ytHWxy&N+ z1wKV5SWtc^H~Yfc1nnpqO5^C)nfV!l6F=z8^a)EY^bJP5q@qNt-TXiuT~Tso84s4*c0Ytkx@ z%|>DEx0v|@^z|Fg{rz@pzuDT~lSj#K$uF8@WIrMg5An0nBkL_@9vqSbyYJun3;d{@ zIyg_rH7~LkfxxIpm)`dBKlTc%*xjE%>jR>b985rb5_o4&+T#xSEC=}$LYwwENL4>G z4eEpOZBROD#pa#;polArcm;*Na9MB#*?~1;FYkAj_g|1aq;L2!QKSs>B2g%Z;!pih z>m0Uv8pik%OoKOunMKHB@9*I|wpYj#^T&QoaliB3e)}K$Jw6o{)ANx6>p>XwJ`IUk z*O$QGn@Zk5%Fxr^?l-^P4?E85xt7IG6igpqTGS6)kwVV^W8;%eheGv5 zxjgckH+Nybc`fE%g<-vLX+b~et41*VEvdoX*&4KX7}V2>Kl6kQMboS{wiMQ8FeWQr z>t{l6%IG@>nGXcODx|AJ-aHA{nEauyI;-DMM3G3uM>6_r#ZZM3)t!m4kozG|Poa)IG>ZtSGSWK>a5u3+u+W1oLSuSoiG^>Vpv;Unu5>T=K>!Rp`h zR=>hC^=rm&Yr6X6^*Kc6<{i%(;F~cJ$uSAiJ=? zR$vR&`}Nle_Zag{ys|`uYj1CNeRP6Xp<|{*B=EpZMO;00j{N&vU0l+$<${_Z@a(Md zYYUC~11xi%qf<;&(hFVTj-d74eW#wT3>dq^Vx@S-5r0U4cyf}X?&wqV^?^}QOyGf7 zxI(Go_^~)oKFx_fp#M1nkz?@6t=h=ZK6oaINh8K{cr=X&SC3&uLtjjT2ULv)y97S5 z{S2p)vGXN!{D>7}a2&Dp{W6Zg5K=3S3`Q0?-Np}0T`HjnHT$ve*@6Jpl!a}Fe1w_j zNM7>;JDB`^M|X7}6IM2t$1qEFIUF^P)=BE=+Db6fmCb{)0Ma^JG)#kmWw6fWH#BM+ z4rvQ+u`qx_`NwWUkAWvcH`B%URKK~C28|WM1>sn(JPHh8TYG84@*+rq~MWd9S08FYJKd;9kLdQw9w+cCzwf1 zVCLwUMAl%GjVAf{1nYnZHd}3UQvmr5M(F8z<XP)2JD5eZzo=!|RW>JPLo-T{FF2{8&#{-G) zGnjZVqFEnc&3NKs`y$2R%8=W!!tekv)l%WH^9xgMTko>wIelo_f-~G9s@tq0vd^sQ zGtiU{ZdIabLl&jW;wiJ}v6sXy-0GwXequ|x!iMcB_?{(C_9>?I!RCvH8%qjhNa5*H zXxBGhc@%uj5?P-tmm*WJ9AlYcSr$zK`$lp}KwnNUAO0&dh!oST8DiM&Ck(#l+IBcBuZ_Y6fV2dD{YpGwKyKgSfBVXgl-66Se2Ms(569C{} z7-wpiH}i0ynu)O%XD}J?fHpdVVKRLRW4XFF@F|_?Nx5nB68R5h(Zka=&aAy&K;j4nAp=|=%~-u#^R{u zJbn(Keg&I7Y-pUahZfyMTbJU7-h5(Tcw8Ps z-+ptI!h8;QDPwc_^JtL32b`2ln>97(Miu0X;LHUqKVhPc`QV(w za4vzL!l&?C04d-Q56iI7I7Q_-*q;N#3)n>9L?_J8PJdM^JDw!f{OR1%vU8^GU>w?< zZ=zPqH*aY?+hX#E4Iv(J_JHhkPXG04I6@J|$hC7T2x#+Q3e~+#BSe&fG$9NmhZZVd z<}F&_!lr<2L6tx$Hk~siXlm)Do6adVoZAp5jm-~xLjq;V!?J8Lzh~OwVBViE*>X6` zzW&^*?O|a+b3fwy*e9%gr{Hb<6iSl3I=MPId2W^_MF3lg4^lFz&>GGoeaF5Oz_7q^ zWb+I5SI^a1$*YL{QF8SA(YtpgXKJz%mAR56B^+$=i;d0o z)3pZsEzkK3Zo-%^0e3Q-3tBAb3d<)|$iqmFJp&rUtJ$%=ym{BjAGva-K2jd6Q>Jnq zE5#y+nEQsGF2&3%J1o@w6EJwJyZTJtV6L9k@K{U^WB1H0ps8ndZ) zC9{-nW3f)T48EJgDwpv#nb_hx%yMOr-`dzotCfz3cpq3OMa|G5{f6qQj`!`Ej zvZ*xOPp48W;)ug=^Ax;*EsF*(BfA`!WKN9viZxTu&DJSX{S04hjXf#fbnuhe8DT%> zn^wSnN{h)4z8k3wl9Wqpcq$+G45KA=l3uDz4S{=X8HqAAR6Tc7>SSH&6WOW$`Ki+E z)PVfdKucTg@3<@ zBYvR^3~gBC4<9iL#y^l|)pXUs&V6IBq(SKjU!ZKw0Bon>qHz=3lmK%>iiJvcuZcPi z^)(giCT$O^>F?EAq#1(rB--^6yL7lWa@k70VqMSDq29wXj%VLwu1qsU(&Asul z7o*`oLY#&PPMVA6QoY&0_k|T(S@|U8OrEw}u1ocWPYOo{B?JM2xWi*Ys`MJxJKWqO zfKe95l23aXruc4{Up)g8+1L`A)b@f8_AxZIfip2#g0jFd9bqlKda*jgGiUz2H~E|# zMtRu3X{HN)Gohm?jJ*kTIDfU~b~nQZ?doaF|C+?21anri(6mnrQ)^yzF9xDN(UQO5 zaQYyLusyN8{$;z)Gl9^bgE7xYNla<4=59|DZG%0|f|qD~xgh8ejb+fq-zNe+hI0}D zzBazoyY!E}x(I4XwtwFC-W9=5z~t$?*0cJEyk5A{2mA)0lj7YvQJ)Y~_b=sPBuwzf zl4xT|vaJMc*bfrr<-4w5W_EyA(!YFQ8yows8R5H&kYTh{@hMW+Teb&GVWbyRT;H=6 zGwros6^!_J7O23}&o0sw76!*KGZmXBf~}2M6P3tQ_4~}1R0bs{t@TcbK#uc4-w5Ct%v4n29P!%P>58`Q zA~;&!yEmMi!E{)KM)#Vddr2FH7?F`zqhWk^`pU~nb_Z|MYvOI2n*=&Po-&lDwJIu< zez%k@PmVuxXnmbrr8uBmu5~O}-L~t7?*-p9Un*2BuUZgE7`iH=L|(Ny^n!ccIBc=) zE~(rW`sYis&>LcA64;#&_A`?%=Qa9K4|(7eFh>$v2(Ed0&5$}`-z9CY13c;H_%2!i zW>;v4C|g@ZlRvjU^==v;KvuhSQiZTrtJE5lunP`r5{Fi&iEpC8l@lhuJ#naWfI$hy zW$uy?Fi#1RP07{8x57_Jm;khFD$U9kR=&XB=%e_)2P{yL{_z&EpR!o5Rmww^CsN)i zuPQ$T`-2sw9dx~b@hexKU%dhpMKHNrGGI%_2p`LKEK#OL)ztXNmpfnwZRa;r zIQx~}C#vQhwN`zo!&g2-QI9P$9FYw2$V-T(k>-%3Py;-@qDz$;r7uSeMk(y&K)I1` z)i{js;ir6=VB}bD_R~{A_%zx4Nh`++m~iWCwIaRGD#*>1m$YL7Y2*GKJ)cR!5>9RSTuxdzfTKOd_oMVSaXF84bwPUdp`K=+sC58-4Ab)(dzeX4g&@sD zQA|Tm$D}BfY$iYEA3e>U_m%vZPkW-`K=pQF{+L=sIKu{Qo1DN1us%+*iNW|gi5$f+ zr>ihD+)o$ewDiE$`u9Pdum%cX^a#OoK1@&p2ehXnrIDMJzOd_mgRECrrlfj@ZK6_~7UD}%}V2o1)t z!YBqZc>4V{cBjN+*MfTR!fk&HZn_6fb>(q5kKdWa6sCIl5p?`8cVo*^at(_d);_lM zQKe4t+aAupyBtO{XqRSpx82K>)#J7-=`B=3R* zj8h?G6ycO+ZtRVD4a5us7FTCP#MQDI%-5ON?#1=6q?E%O`0=+PPB8O(bQJT!Zu>!` zd2oVeJ4Z94$G#A0W&q7W=Yn5oo_w5UvWMm&%tEeoW6MIC<^N6d)BmJt=(Zb>reT6+ zJx6m^k6n#4X9LZ9&WK-Ve)2fY86KJ+aWp|v9-75Rf2QdR*(nw$QUW^T7V7is2B(0r4ld9&O8 zZFi(pX<2^r`)=or?w{-PcaPCLk{U$Ta^Tmx?O$`?IpFR{X}<1;dKQozj+aUgFKW8_ z>uz91Pp^)Xf<6)L@jil4iY)f9ly()@4$#Kpy6thuQ``hkzvhTQ(`y4FH+#C3`xMUB zUwBG?j3=^jqUc<~eb%VLd?(r!cM-zgMlJ!qitBA{(9U2r`@6evWCYwlATdE)e5EQ5 zt0+2Zwz!Tj1FBbPGsDf4&cJZi!epbZ!B!Y~tcG<6X z0Y6s}FZM$rN1&wJu029%1rCKYR!4hfluk#6B@|LSRfJCz;3k;Uxt4 zr5|>5**lPC#{|vGn64=7wy!~&8-V6|XZ|lVzj~bJ|MSr7=4kp%&@4uWF;Cz3_KEh# zXu`fq1~aQHAUvXp28Vt7r=8)t5Jn%7kkDuWtHl$yQ~a4la5w*KzuQV0Qs?+hA8#~i z!?S<1ALu-i{hht0Gd%x_vgK|V49xPT646gAGhi?6EDJank)W{uy))c!rqN6tF`QzW z?8y+_Y)|f1w)_BV{-#~7YiwAs{SAmc5Ro8Owv6k{ROt;iObxWl0(L1|Zs_*oreWA+ z`?K9;0lJ8UUxyj(&vcdp2iwaw4my2a)-G=8E?Cjv# zevp{f0u~Bo%fG^Wo5k{@C8ht%&dvpDz{3gF{z@m1bsc4A7kS8vK4PUPMlqIoOnrU=k5IO$gexW zp1>R;x6Z}~d=(KF$m{|c#Rv40jLwL-E|T0?dW&UxNmOTiKnuCj6(4&7(!(2%kf~7i z??8Pi*#+(%uz7~XSAZQMF>DP{b;SpK5D_O0OJ&sY0TnNbBjWx9l7@Yxuo9x~jOWA) zY{Wy+hFAjIaxG)vnLj(BEMRd&Lg?&iv&Fjs<{TR)jyOt-df0gxOiHw_q_mTrz3fFX z=I>xhP$%YZXJ@ZLR1nw75(#iM2(`tiqsw=>PO@QoM(2V>D9Y$^M8fp28nUo+cjGLk zhNN`v4wwi9RxGNk9)4a!ejFa6t35=85OW<eH4Mkf!S_*7Z_oWs4j7feqHAy+;f~F{UXu$*4u%3of zEsY1i1Js77TUmN=P8!!sF|-~+)lprXS=lCLg23?_2I*2nRrz{7P2Ta4X9T6Ns|55i z=!AeBFMG}nb7`X`(u(&JjDB&6#_P+B8SZHXKeDk!f>;v|&4O=ohzHDrZ~^80l#@aAg01|bK(ZEr^rirpEy{3EG;>iQZJ8Ze+RMH%q7GNbrMeB?r7c^QGA@sTWi0U5#00~m3!`TSqn83+Tk z!SmQddj`@@#aN{MT*0LY+Ve5)zi8*H!+>gbQ5Z)(yJ$L)pNnuvJ_=uu{521GSo0>5 zT*B~~sf+pY^pYj2UnIeamgjS5(2={Hc;UFvV&1Inq~v+k_uHm%Y%8PC=bq72gW+x9kb8W^P>St117#9$;}%%MtnIOCcsgRxo>{l zdBe|X>a6F3&BRC>@`SQ&Psc`5IbXvWwGJ%DM*#ZK&0U?&-B6Aj;Gzf0`CUZ9_&_l# z-@+#HHA2ctDRA{8qxfDK2Zyf)S=pAG;EdGG!k9?um#PCYG9o?*C6_t8TEM#-7bU; zL}BEg)MO>S_qla(Oh9BBMCT|rbtZ}uNMz|ceg;vLolOu#VwO0UnWdbi9rJcT8GegG zc~^3M5BY-Q=T+dxd~;=|^EV*YZBi^NK>aV46uq@hVPiMH)Cp~u`~x#ozu2jaq;qch zZHuh_!`VomnuzMm&d7M1ud0r1rWYL;JI^yt4U<5NQbyh~aXO=N-K{x3<`+7RN#G@# zL_S6|dX2jXyu%FmZh(ts#5J1ojrxtuv`=zjGhb%{n>jDJViz=MU7l}_UMPDV1|jPS zR=t!7ewX%B%hhuEU%Y3vEZDz98Q>Iq)R&mbfV&ld{aZO-##My0YBKbAT-sS5x^^7qW zN}o&qA3_?dWo;t!y|dsvxDvw&wE3sAXve`97{XEM|4umpC%U zBPc59TbIuF+36$t2g?LR&ny8Sp-KZ2vLS01I9KLu9{hPlordtRzNn|KZz72puy>u+ znf`rq_^h+@>;(xpAB8~gCUGbai^pU}>2(k&eSl{)a`I_1i_3QMtkN`o^Xyrt^DNc{ zWP;iyDojork#`T)j&?@O*F~N}!vT-U-z6$Nw(X2j8o0)tKs}N3)qpbvEWn z$BkXka0ev6``+=bH2Q-7=mnhQ1|`>L!{cI9KuAn#10vk>VCmAy#+pn?I0G2f4bd+*9&|Ju z^^ZP|RFA4%r&$VK)Z$+jUtAE7a7T$F#j;QDLyS@#&``zYZS=3=@-`L)z}Y@;9kjc# z>hjMj%^^28oOP~#T#norzzxeF$9o5iD)LVbItQRbZx)<&7W^W^qbOme8BMfCx@nr; zcl@u?+H8IBv58`jq!>&lZaOonO|@8tS~YqmdssACFvd~@_q~*UJ;B>Pj@t7;E&Ar7 zv(7|lR*^h!`{2e2jyF6#W%+^yA6VIXnta6Nc^dLOck_j_&KJ&Ra-$YELRTS=Xa}Lf z56un}$0s}```(9Ca5)r^BQp_TZ^oSE#@?8-pl^qtT+2ii_73UkrW8D8);ew6D9w3C zSW#|*{pw0!8R~JiU&DXaW7vO1OtU|AHoA`UoaPE{DVmm<54W!3Dg_Qq%@?O#0w0$U z*BHx$-d+H=4ODPb|6V}f>f4|d6u;9oAZ<9|-{q-#Ux;t=Ek5Bm?hopXb_YtX93%D9 z>;jIE-rr>7Bs>iqYCSr^^-YQ_cLE-A+*?8xW09LB-S;}2Uw4?l?zm`fC7Bq6 zdGcs|tU9HG*VxSi^+T7JtjyD>{z6rTnA39+_NaIL3gq=Gzw80;+_ z&Xx|ZL5;yOqTbe;wdm#z-UWU$Kan?f29%5Vkf#WrgFn*Y{2buHffeUIPf7ULiV}FU z8Q3Hckg_v?Wj52;>)*bgypI8!l>85(PP>eD+=kbstMj$7g{TUsWK{A3sk81(?b~p6 zL^$T4+JVX|;26lry9QXgw?i$24IuMhJI2maizS7UUsfiUkOVl%Ho_)5e4C-3 zG9}4n_a1^I3K}V06dwf5FPl5b2&c5l4vSO`R3x}m73_lvEN9O{vKvdq>4~u>e@37@ zIiAdYz6EyAVcTTvAmvViQ6CPp#^I-!zr+#WYj$r#x^PdNdy@_Zbj~fJk#qkV`-UaI z?ErthjDVb(j}nw4`#M09OvqRr*iMDAsE4gt&3siOoGT~=>rg#U^$iOiR+zN?K5X4Y zN6&pt0w@n0ss(2n>trhQP`G4PLy|NpCV{`?_{I3=rxpKT+8=Fl2pZ-=WagR+;G0r# zl@-C})~e&+Vo;lRf$k7^>^W#RXI`{`O0pQMz`Iuif`S9tsuZx6N9>uLu(@7P@Q^iu zE7H&B5X!TMsr!gNe{B)Q(bXaCjf<39jljcl>_E64yDBxPeJ1EcM@5ysW zO-D~&EGavtAe%9t{pk)RJ=ys*fJbuRIJ5o11CP$G&_;nznFWuyS>f2LhO)HCVf)IW z;W1(0ZAXtKh`jt;OcZ(Y=knxHUxjt#PTt!`R&jJfI-DUBZF&Xb_xMmz=ELp_Jd?%W zq;w=Tb_lccC{MS};LVpr&6GiF$l~%#I-Gvk#`#={(h$QOVX0>?9@b*Kj!K=4UztU2 zbGYGfH}I~Z;D8DGmvsm}{fs2Im!vihar%2dU6Aj0Sv_u1& zJLCsUaKU{^W=c0RzSwtDEBNdC!#SBPj;g}w2Q3di*-oPGyk!tS5v~1E3+)4b@R|Ex zMZ-cjej4vVxU7-da9R$geh{1rKE5?Go)K@~wCVMD{A`O&z)Y{Rb@)Is2o;XDNbX}} zCFk8a%h~ek8bT&3pz9w$Rt$6Uqd?CaKEZwWMnE-j&G}C9o%3IZ%*6)e2-oJ{)i+ zW$+Q`OjlAOsIqC{vNTF@*bO{gMV$6VxAPG2fei{<$T!FynAa$9ox@Ju&*lvAbw0u{ ze%YajoU{kz0+(yQTj?WoegYYB-txA_^ITq-SHntT*T$EA1Agdus$!1B1$!S*rffQN z?~mEacpG@+jjpO=rq5=;+f4N}`+&ej7S(UGfEjw zMa0vtB2aO2Y9^8Y;qboccD@IAz4Q73j{j#UxR9q3Tts}VgTVXVI%48ri`>rNqo91a zcDff~r;jTY5}5(qc*Fot!(|WZDNLYT8w6&#UAw^1Kc`7l{qC8F#DX0MjKYn5?X|?* z*S>w*mSep6;*GDm&2OLCzKscnAS2esp&yHEjZ{yx+oCsY_(Ar$zqOQdd`|DCWD<2H9B)$eWm{3l?jI_C)ucG-ono^VIPh z96Z>tHbnmbJBA_pucG(ts!DJeofLc^IBt#XiU{Twp8_X)L6TD^BC9#_YPT~EDf7G% zcone}-xB>V&WaWVQ`M~1OKg5%Z?QScC3^GT%T?MBMvPS_9X9i*dkvIh@aDxl|1nTd z75)P^p(KlH;uBBRPqI4Mq%Gip=#o*4??o^W-es{qyXCB7JA11Tu5J`rVYyoUK#j7P zkIX>kjlS;6z>Q+Jop$Sq(+@b?riqM+gdI-r=$J&}ki)S<>?VcSk~cZ$)_APKPftP@ zl=HVvSroT@YodL}a@Q8@Z{Sp6`i>E=tk&g;v(0qb2l(07>V@t3Gk9x{CWHq}BTsQM zxOC=Dp!54P-Wfa;@mmyPIED{%5qROYn9&JGKn}J+g6mnTi0`Llrnfldt6NLtJ4z>~*cl8B z-I2LOY9iYtB1;fD=c-UmKp8-%r)s1N!y<2tp`2&V%m%+urD=5RD`C`3fPgWb{2Ez) zO@jV<*AUp=c*f~GsO9zv0mfq5Oj?l=OuDjTRKY!z5PZ#;s+9cfYgpd#x7+m83cmTrP^79JNg{iU+*_g)7IoHG~r`2*5sLgz`yR>TRe_gC*!=bvfh ztup!^4XKeB6jPb7nk0iFxF*ZMd!;7IpqLIP_zhVqI69Q2u73Uu=&x|5$k$|1joiCF zXh>0o0qWN+aCm(s;(j2^Y+Ou(v(sy|$j$n!7dp7P(PY-(K33(hIpd5$Av4wZo1bex zP}9OpgNfMqSxsZ)XWZI_$`n}?Pm(}HC8MvARh%s5opHVZvUo^)$D`%QyK6smEVuy= zivB!;hcWGN8(%K@hqqwR+OxRabIv%QhTPt~X&zbfMW157)KKmo=m_9@3>8c=5I!N+ zy$|X+3g58>X=G=zO>lby$-$fnu_LMQ{<7y?mijO;CE-wFEFARI(<_1n#=zai5Pbl? z&Dd@9w<%?khm9wLNDx<`tOpz{=c}}ocSfh8WOpdtL0*MnB(b8T@($Nv!97y8=MkRt zfl<#CM5M@way_L~QHdduNnq8=%8V-b0cSm&%CQW{`=eF>^Xk|2w7U^Yg-0L)F}pg2 zYvTatQHRHVg6x$;pe4=+Q#$z$^Kv?yhT2JA5I!ywKIXTjz}hN4>8Vw_lxD&1q^V5_ zO0nwLA)9!F?m+K3&!mmL6c|#RZP&wEOjNe#yAA<4kCG|{%Q5iTA#k^Nqzy!GAkn52 z3m|@8p0&#Yh@THmt~xvt8C`W4V%@b(u{QeHA<~K%Jh%bJ4WFHKhww2x!-z-C;fam& z;EA23sBbrl)wIPdil}+gmT*B-7iW%akA@Ft9foBd(IZNCR)Q!hE|F70QI2TuY392v z9uCPV#B1aVo+w{c0tGKi3|2~1ddY~gHR*z|{Uj`F#Kb(oouaxOoOPhwyNx&fZ^|z^ z1u&Wj!E_E?{ocbSX$P3b$y`KgeuAKknnU8{@n%q`1BKK6rz_gVZMCwzNYG z*Za9P5%YF?#EdNRHiFETM8|4kd*{I{O*UZ!+*%VI{iDgEsf#1O$B4xe@&-PWbsC5* zJ2ssZVG!OA#D#dyqr@C;O^S_%lH_A*=}%~c<0ko-SK8x4`c0;DR2|$y_k%o2 zo`xn1kb!5<1}@3WSw#^Q*ZJ^N9hb(PFa((Y<16(l7Pc@uh%7=n^X`PTl!egRD1R;^ ze07X)y?x{=NokKlKV5KHrc}S7WJ8a}b>Q6r?xf0=5f_h|2vKyhNnS0NzwF}rsEu|f zkx-DAB_FP9Y6pL2>zhKb(3;e{IN8BE2Diz`(@340qs){-+&1zQ*24B1}^f%P~{#xju1{}V89&O4%fhWz(5HfiV1E9MVUP5 zA##04zswl4yJ?nUaw~Q-!QNKlk7BqSG_VZ(-6pr2C%2DY)pQMMh~Gq8C_AbmbSvBd zqMlBKj{)=B&4LMF3ga_^GM8!o)s`s0wJaxl^W8QpXc~V{Dt=<%K)a1UgMA65IC>3 zMf^>Af#0~FdhuRC)`PuKWFInhgYN#O4I*EafaW&Qj+tOxDn-6(gQKuwxV#`?4qohJ z6GwzF7O}t`Vo9aA%L_ghd(V?7&bPs!(~H#L+2eh3VMS+~ng&lF+Kne)lo|I7o9)Rv6ZO+Cv^Ji`3V~of<*v9a;(y}s|7%>dnuzV7T zbUpt!B<4@sF7Q{o5@w`z-s zgv|WhKqj=|lynIPvC7@xhHr6_=P(tX+1_Uy_Y{z+_yptdAR8%D%xQ~F69bUi3-l^J z6NE*9u8U|pj){b_;&|YT@fvwsuE2c?-cP#6mZYUCh0zVKi9r8`( zUJWyuP?3Pz>1$Nyl(S&)h6Nw4Q_PdwtiktT%|Z@wJn<+v`F0wofD1?itfO8#C#AUE z>bZ}u9}_?$fR5Y*Mep_S0%ak;#)80l!@&ZdIM%v7X+qeH=D37|Ta_7bN!gea?>;`| zq2Tq!fU7AzA3%b>thm-1bG;R{S6XqU)wKUJG{k~~GHfU$8>I5XpP3@%4F)+AQUw-{ zs?GEL+--z94fhx~=;d&zzA{tM?20+zf^k2O()_D+>AzaD@GwO{`e%4JS2Nt2_t2G< z!Awa%0>>GbDCIsEpHTed(){F#Qb!yXsNaTYLCo10U3k*>DX*#=aUU94)@0AkSba2Y8ni zJz0~C(kl`})?@=ed|SxMsLWM6B`1!;sm&bgeKlX1#i-*VGnD+9m9a__Ke9;4S5}u7< zX^9cOf{J2-15!9LJ~rQjoia*35vQ6=IpC6_D6JA)o&gNuV5K<`#~s7PIIEvG4mJ+q zD<1F>6TkrRCJ$hGe zE1JJ93QXFWvVmXLr4d-Sa8Vt8`;mU=RjHxP>FF0m+9fY%!R2L33LWW9!mR_>;9u}%X3asIRYO>TpBh{I%U|7O_zB&a3?{qE#o}RF`Rb!he zzT?@oDB@{aPjB4f%1TTBe1+!F>5WHEC#S)6K#OE0h-;HcdqgK3*HD{G$s1BM8{%4I zM=4kpa`we|Xork&r!ZaxS3IR%V^<%+1tW;PTw{F}JQqTjZ!f$c27O+0@O0j9Tv-d# zpQFixWLTA!ys!lWR zk3a zG>5$kQ13<5p55uAm=CU>T5xJ*Ft~F$yw}2eBE_dXTdmyH1^{&Zi;3{wI1hviAaE?= zAZpe1Vko3lNSP|+Al$uI$z)Ep>0G;TzIa+>V;P^)M)pOq>oe$xRHK51YY^(`a?My6 zWt~bHd3sG&4IHG;fRk^bP_ZA2(?6j_2iUZ|01j=Hc@?|p80}fxXy67ZzibnF*MU}X z@L^?^-val7OxTeFQC>m>`EsySIANR5;tO|g(d}lULjc&ma)TY} zJ$wh}9ciSwSr|s2F-O{AvYsQ^C_gidYvVDfD~&EgKaJWrSBAGvYt%0r#P-zMau zNM!Zc<%fX%;lsk0S1`qyF>M-15?C)iRIsi_XS5AYN~*qonBi;|jlVC=(wj1*wR;!f?pkk#~!id8yEOJ!KPDksy15hNZ%Ez`Pv2kcmSt-ol<<|a!*l=VlF%^ zM%nmDMtHCFT@=UNAq_aJ_gFIMs_x@pkgrHz@M>X#6@9LpnUvxj#!t+P(4h+|1TgWc zeq!yNF0lRbRXd=^M;L`94P`oNlS5oJ;}NR7OhCSHjl!jj`+&m(yFiO> z^6+sK_?Wo6(0sy0PGFDrj_Kwm7diS^n7djR_$_$k!AlNd;>0`$ZO-o~eKg>xGB#V( zm_IEg+vjM?(d?u7Or@peRdVwrz>)*5NL{%B9_1GDiL1O3|5`lbDcmc*-vv#!pJGn@N?2*S#UY zr6e)r%>PH(+s8F^-v7fVCyyjYO#mYhtT{m-AZ`JyJg6%P$b;y9fCa(Tm0&@zbyMet z?dZ2Tv4wzi1#IP^c1>tepml{vHDb{OZHg8)VmnJaZP68LZQa!RRHyQLUkSE$_xFC? zubV%}IoHGI`drt!9zNISvAat%c&wcJkf1fyU#{X93<)9lz2E;u?{g+n?f!eh``oh+ zzQ@1MZGG_l=kIgBf8ZVCl~__AAW~5JP42jog<0)PU{*<7NkUvnA|yh5s>|QIM7t15 zqJyTo;yV3D_)K=`Hsj5 zAs2yuu!fzP&>@R`_h`-zT|*I!6X%=RK;{=vA2zefxOcwLCCZnV*91tG7cxJq*?}z& z_S>RYe{>{gLa?QO}{H zFm@9{ki+>CG%Q^GdM2QFt+S*A7mDag*S@13ySGR!$H{yph9Nsz%&+EADnphY5f!xh z%DC^e`Z#u$N#l&-dk=1W6Bwn(I8LQfI$d$hm>K5jEeV|~|HutU&c+@)X>Ezm5WGpZFQ*dbe`+4O*K}M5!~1!0;2t)?bEc&! z71sT)@ed?kPKO`##ge$AI(S^jZi+L&G|=gtn`dz~?MUNyN*QsNhdV-cTr)rD>Bg-Q zE&N*7A1h%xSSfEkyS=&VN^3-@rCBT7s&vy7RjCzjwrV$*(OX635w6w8)>m%+;8x2l zi@0fRfO)OIG3A&!EMRk(e{s3ogR81|KxBrP?L)H9m|4ZQ{jL?qJZ^6~_rX-+?hvKR zc+^vTbgvlhCAmS8d@6)a7g1*<*uBNj`6Dp;r;5M#nFw0-r%F;&Ew1I2#=pE@b07r& zk$5Wef%I;q)5h-iTh3M;VG=HXFMm4qdp;vhH&6~&c|g-UUo^ZbFB6HFvWfta2vU*} zY4L~KoW)z}_m><$Sp3#Dcz>vu9t(nca4ZE*bR=L?qnRzkwiI{S!sh5Oj1du2Cs8}DdRwflxU9EnTvhep@P>iLD7E_Qr z&MKqRU!_EiICfo4)>1^EPA{ii*9JY`4Yr5*+rt95<>ccOvc($Mv2Szk6jt^fQ?RjvsxIj`Dln+L^hle=vt5rd}icfo|H-H>NAt7%JN28 z*}BLts&R|hYCAux!j<>{coa(icyg=F(rBtw7t~Oj(a2YH^+%Hrw8Kc6j)s&;S<#8f z5x*ZA!MF0YgU(0Sp>ieaZ|rpLiTbF;hOZJ8xRo#dYDP%?Aq8=`RCwZ<`WR<;wEL7F$D^b7Prv zo%V0ljhI->>=DuVC|X?p$Ek5AV^;Iv03kuNZPLXJdQA7frI-AAuWhVR<(8ch$*D8q z!J|1-^&?RKkCWAZAQZcAI3FB>>W!1CG7%5T=oocNqs&qh@d;eP{Lpq^dO2uKZG0l9 z)2vLF{qHay$9D$|M%;8XxI7;E3+PVd$L=Y=gBAAnW zaq&xoZH-|qoypJJW6DWWGomcM;b>@ni5q}%U2`U zT|g~gk6+O;YIz8{(vD?;>bX=+a`a=%NcE+7lr6tV%Cc1YZz$@qHu4Nch1EzN=20TT zYx~Wfpo*GgWxKVER9c9X3i1#^RU5G~An+z{ad>zd4?xfTE6TyId2*)to##x45)|RB1EUzvvc;IS3=79O?#+@{qklN?M|WyFu3vLGfI()YIonYTkjsg;`%u}q7)Zz zNuNzcM3kn-KxMV;iRx(dE#eQxYAuj#zDT-j-|IuNh;{p8pW)j(sGfc~Hs6~n;Z5lu zmG4TLFG^b2EPX@1vnbYwc$3Z40B^B;xZW0G-7QWRz^f>>J!YYstiwN~<6pHo4IbDm zVKPf?m?f3$t(IAMp0ztjY7ygAjB|##tk*?SGjh4m0^UmN!V(NM*w}Vl?S!RF)=e66$K$ldRj4+m(8; z6KBtjWuKO~?_%7F)12wz|Ce?wij2ew=tPzCYs!ATr)-W$_`l=RqR2>^5dCAaJXQ8Q zT9%bnq?Ww%Me&nzOy!;M0FSMxBNS|Jk zhRQoCqvyh;-lPv(tizKGDydaSm3;<9vdlDN^}tfZXxj>MVB z;~p4dE}#;d-uoysp5Z6F98&E^B_DFg+%%O*I9@N4LIZ*V*<^OSrOA<4_Rn#o{)wa} zHUadLc-v0i9C_Yni}$(7`|PEt9p}8yW^ejc<#q}O5%)jj&90Gqv;OFNSu~Yb>3dD~ z=4~M_aT@>nkL+QZsRF+xX^xZL{HMq>t{mSbwtL-k+BFMFZ#ypg?rUu6QS_DLl^Ex4 zHinM~PrXdVS+^&_cU!tYg@`KVTu~A)NzX`X0(r9M{qwu7kV{YP=1qJtpRFP$S~)75=2j@a3dQ0!LWC@+VEgKNBy` z2=^v}*m*~}MpvAX??XS?bMfpHEV?$gmi+;-ANnzo&WA5U3FMMqz9h%vI2S>U4L)ix zY7AB@sTLIrrqwdm#F;e45RFx0HmWqn&>w(t{~kmyPqHEBSk+ZF6spF&Qav9SO3YJ( zg866PAwDADxO`V5^$hZ85K%Nl1Ij93X1EH%QEfR^HdI_3D+N9aE}UwQbF#^M0nj*oA9`|w~}9lzx_1&E-l&7GeD?`@C!xwC!kOn6QF zu|2>eFrMOr#c-dGPjo9vzoB=%shitjwmymA2D^i1uzw$PT6oc848wgy`aNH|1cuq* zJ#oCKv)~_XVn+uJMzw=3u}i>h$1F9oBxdW@npt#u6m^xI>FOTrJX^#& z=L$XP3bMP@;d0uln+ra1fQZL0TPss(7{4eENTlDT2U)T54rRAK+z!RvyR>6d=h=xW z8jd?xrn9Ys!~iNz%eUfy)?di&a((Tomf@0^m>cC{cMRse84vpdt#LIRym~{zdqe^% z_D_RJ9uZCDUT{|3DDqUe627F<|4Cas?2RLE@e<_`;q0NboGPz~^lzR2cf?@`CbWjJ}tM*ki}^P)UFpGFfhtD z2u0BZ5zEw2r{f@|UKB1CWcXh&4E~L&&e%_j!l_IS01U=}7lj*yn!!<3CNvO1Mz0@Q z)(V1hg^1Z6I;|SY{TcJ7|A;Fve5wZb!8dz{4=kN z6L(qYR$Ei+m1+T+4wbBsuG7lKGZfEkLHTDkuaE*eb1fOB7X^mFQKmHm*O|{JF-7tS z`b>!7oi9=h^5sR%fwX%rWr|Q=)~J<({)t>npDHYh)9`ulmLKymBg<%#lZhoG$AxO1 zH;bNvxO%Ywp9?KDwUU-H{J(2L=j$0k^Wsz#8RD4Ns>%8#_-0*(Y%tAmZ1jiX=LSc= z8u+KP)ycf*@*8ZPPiMT%Tfx+CPe~~T{gK4M^}SMd8Lmr%L?v`Vh~M%rGyJn6=lU&w zIm16NT@APfYXy)rSbvk@uM>q*RPUs#-KFl((aK~I=6mlQ7aRs5C5kKkIX%1#En_j{ zUUL)Y{VH7U zM`+tcSNKEx>L@f1564ZcItd?nW=$|HN~WtH!Ti*)a`jxN#uzv(TqEkd5=wK|$olSb z9rQ3e)Dfxc-dGYhcyn}{B6iGG7eB-w3*e5E0xwGUip|DwvLRd`?`Af^N|tkUu0r4Ka(JTCh6H1Q+!0cb$VyRH4R^Mh^Kes_NU3!TcJ0_?b&X;dNcgdp zm+oU!#fOku*&Y&STM+pM%vv{K9}9@OVmTWV)>!XKg2%czHlWqh<=PWKi$3MK&*HRD z&t*H&FhpmwM4%PLB>|1KE{tQFWk@m>#BC+8Ulgn2)hv5nGhVMHBi`v@;pHe^(XEN{ zu+O@NT*+}59KHkY+(~hElPmTa7b)1Ikw@;M5o;i}(iOQ+akju!b(P_N?TNx^>0hm< zD0Z`pk@N$M8ShIdN_ld+T3t-~xouOKub%`v@ArJ>em8-#GLH%UF7l0OKlITZfteG^ z*Tu;JxjwbYy1vQiPpZbQMhna=af!?eB+b_!^k#c}f%#s2X1kHG8>eYlf2BsS)e~oZ za^u_%b(nLv{{qs08oruci&G=t5I1Jw1gRFo#)bHt3$tz1$fG=1hn=qbDORMoTmy$a z1BXe&oRT!9?7xmml-_YT_rPKDA)45LEG(5INkP)Dt2rJyYWy!;v9kf4XU~YB1{h7Z z8v~RfU&gU=GYdn&lvHOPc#{F9xE<=!l{toe&{-)l1{sXAHqdcK7T`M1I)XbCbk`N- zva|TUA9fF=ezSep1talpK}Efwxz)+&oe3}w$WXil+mAeo@G=M ziS!1ka{ZaD#ymF2z|PwEf^%mAwJhUBVH4}0sBfrrCRZ{KEiRQ+HoZ-sGY0D(b~3`| zJ<%JBoT1;t#qz4C>BKMBuWfn8U`CiOps2jJ&N0Co^PMEQ$kt>GPTrE7i2fueZhSsf zXGz^11g3-26z?>pIiX6tJ2<-Y?0{&*uOp3Ma^m9w=@2>iVrdwzT>OX}f>^|*42|Vm zyXibmS2l2WP;|NwqAGDaI~~`cj%@S?`q%DMEU!T}$j;6{M#m!<&Kb)7zwHi?`%>V! z55Dv;SkL@*ci=Q{tAdFPZ~sSzu8@|(^J%C%*A2HMGt#cO0ph)`$*3&Np--I3sN76y>z6|gGejsw-I2}sULLa#LE*9>h%Vdm^b`8gugo;5nxx$dwL3MgU7~`_$J1g_>0X_N`ox2|1)aKMZDqj^Ti*0tUdV_Y4Q0}71lz6%Ry(3k(mc{E29;tPu zq^h$#BAgTTFI2ujyN^=1iU6PBPS>7VTI7VigmRGeE~{OCDlMHP+h{wBfmLu#PRum2 zq?OGl^ydb0*E!Fg9k{Z>=?13Tfo*X9HK3Id_KeMy8*c;Z05>$(N*eWw8ea&KWhZrHV6#8CXpo8|H?g!e0kG zzwp&hCItNg!UdmQ~QkHh=hBD zyf?DW+<2#V3(b&Y|>koc(F| zeBMJ8YfWhpZFh~77E*|k*Jkstv?46{L@37z5Ep|;D@qBQ^cj8|nIlDswu>kSsI(@|R z#SyNLB<>6mddcngd5$ZcXFJ~Kk=-HO`$KmeHoIK-0ur{)@ z(+1gxPO@{jy#$E&n{}&KwF${?pCs`@bb29{I=v7lj_|zOed!UNZ*!P9%mc+!U!>*Y zSalTNz|O4ii=94D=+U}#59_cRwXQ_Z3VMyt-jF+dWJEBA7>E$G>LB^{UW9OG<1>Na0biGrwbda{d0gbdIWL}-KxQdHk|Bq!vyoOe4X@OBqZPW|x@@Da|l{Z#O~lxl5#%8k6T0@Vl+`wtuMp?8k%tG5cddH+=R4=oEo@}cY&Gr)vW5fO>VI{CHz4}pXVcZ; zX865~!QBLZ10tZKvcPRwnGE`a=(peeX~TUYT(0UvK&S26QZJJwCJEeps^Iz!rlb0^ z$%5bCU|y&m^U99(6#49AqIO)ur1Rd_F&|xoC>fyP)s`Rbv)J2rl z={UGKnhd{}-(ZA3RF(rk-oXhs-9^^%IARE#@BU^=?b&^q!t;R_nFfw|m}k z-kNT5UccOP-DJ9E+U~UW#P(ZEmt&DjSrA4{-8DV?U!U0DwfNO%ibRBI+jRU+bAm8y zDVZAz@X9aX52DE zxjv=CiSSs|Zd*o2ATHbOgZ{)vZK{oe_jPNd6~+OX1e@5$4l_Y3r2Q*p8nZFTWk2L8 zI_#xQQc13B)nU)7!(52>x!|y;;4rs{Jgn_54cB z<#`LeddTzYp)Mn$jHaOJI|C?us*TraW$GNMil679;$L8JWOBW9V93D^|t- zELMDYbg5!l{9qV$G7N{5Kh7)e8!w0xlq{bS6&Xv6vp@;qu5LEYN>t#&Bx_>$t)3)T zLYEYV$B4!#NOEO)3XMC3ymAjCSzT7)!L0+F8@B+`X|0h#gkh&zSKNxLAh!^5lfYf zvf@fael$G5`_*!_n?f}p*1_RQs3EG`Q`@{G!A^sk(&*fd{M*vtsBW-@6=Q5`xs6FiraV}XvD z>+F~Jio=t6UA@D%J^vcO+_!bx&JJ*TvLLk0mfn_4i2U^>-THN^|qOuEpY(PXTBgzX-{a1WWsnlR+>2*C}IQSZ_p%w^)R?TXjV zBrF7cQG8dfk>sf~D-d2q7t3xhtEMPp+d#p#yPbMRE;(Vjy`+RY5c`Lb(I|t2rj+88 zoCTw$irkk-JL~g@gkv+&Qc4=jJ$t{U+}Z&~l#We7{Dgc+cru))8RT()Ai27=>J&Y@ zJ-=YVz54Waqrh$y;_{}f5O^2gWWVRhfxQBPSurVn>LQ)E>Fpim+<7G}dI>1FZuEP0 zqr`wP4z3Z6_uErxGC4BV*mV%=5&N)>lOCO`h47flJbU4Wech z%oV!M^?P1HKLmDG2;Mrl z9QWy$zff}pB%!>w-59t&&2F4&Fa|qvJM|hjkK0IcfCIOIJdlOjsRyE57I_6egKVIA zNOzK*X->!T#^Mej89V!*vhD5f4Ic1*zh96f6htXb=FL9wPzf6xxs!G$Q?57qJ$dMU zpq-t$f##->eAl1*Ju5)32Lc!Gt|B3+Wd6VuAGEW8ycQC4QD9j(!IeuVX&aBuc{>$o|-x+P1ggSo2wRZT`SD|5Zj@45b-uhA5(i3@zN5~n0@7-Gn>eOTL`>F@pe zy~RR~`ANC4_fT%nlZf(@CN~}3fR&gqiDvna`9HbI^Gxh7& z7Uovy)1_46rh;ucSAM@ojA4^F8aXFv!#mSN1i#EpO9ZF7f95_+4RK?QQ>*MWDZ||* z|1n6ny)}@l3gddoGZ`?H#F2v$J4sRusW^-hUVfb9aKrb@dq44C$=msm2m;>wd0r$5 z1#K(D=l$Iac;&qrI~9wCs`$Kgif~a9jf-DN2l04+h(6ClM6mq4G%7s`>%|q;?>YJ2 z5}JF70CCOf_dL{3!Y<(msPuxZ`_4UwXSt#r61AK?AEnZ;LG>k?H{+w@vD&nX#cQ!k z8(6v4<(6S&@>sbnH6vVKVG+=&;Gk zpmG29UU7vnd>pETEmyj1wVUb>!oiR?dE#>r!Dd!mGBjCSu0C~2&~kQnQs(Kg0l^sw z^B7z$p2j9KAnmkGgz?UYs6_Zqj9>`{URiZDN27}}YJ16NPckkMSd8Vpi)TU#6M<=1 zYh;9?YO3YR@YChJYy8q5$2Ps&e;QHy8YCEpldq1OoHCyGng z>5J}xzzP%Ck1~V9G+2@!c5`ccZ8%_nqSn>wKaZZ^*Dn8n*5g}f6pr6YtlU)q`6as~V8a5wVliJACp zvtJ`-F=CW$GKK&n$60LtTCU+OwZny6sOAs1EpBZNTCrQX3c4vf_fz1Zx{BAUd&<<` z-q;;%z_c2)qBnpLF5(RcFuQ;%s-6!Ke48vTXBY2W7c`@Mli3|B5>mT^gYn)Xwdfb` zEXkzOb&wBQTJ+{DsyYFj9ZAXYN$m0Eo@V7HhmCwLjN8Ofs>}O40QW8lulP+2LSl{e zBcMtLiK&Qnwc7V#OI`S|76`>^IYgSL+F2>4MfgH!3(7Dkst7=CC~>xIYToVdu$>W- zDH47dus6`@*Wgc0=<5nvL|;n3hdM!*t%L9DO31et#TRB`Uu@}J*XmzxRFzd27b{D$ zD7PQAxP@#yB3Vh32(Eh0sA|!UNI)(2tEQ;p2zANeq*+8Y2YpAr!i1gLwYL6+gqb4J z8F;wDl~3H!O94WX(YHc7dT`{4$iAV4%wCn4-KE9VJ8m zWP*#cw!tW1_zCmSMN`(c`X`ELM(SP&zD9s(xgbTO2KJ(O3^hhI@`>r00V&Vqd_Wm2I*L%|LKngWiGifHANw+u(qGE`y=^C%euu;f3g4y1rYx*E0IP~Is|Rf=w8 z@^f+mp+6=mPIK10!n3Tb4I={U!Z#e-NcbFdP>6$f#sm0Q-NwbbyUd#AJRkT;^#{Iz z#XK{I35FBlm2fsyzu8hU4Bh!~>0NHJzlO{;!hGiL;u&)d)$wv0FLa!SZ{8tNZoT7E zmhbpA&y1M`YXVFl#qhY3;4G~F2| z#ZPHyXw0@;lH#)OfD%#)b;#E6s=9T0izNGB_j3oPe~@^#b^5O0?8E734_TI0es=r- z|AWM<)2**|duGOa|uVadZE-H#;*Y-c1tEDZud+8!jZBelmdM@T5Mxrpb>Oyz83>sKe zRHK&PrI?ooHIT)AtII2l8-(p53U0%jLoUNP36>adzNDrtb4cNcMSS4jkP%uVjcofp zWVU~37gI1=V1jCS$`hgu;>9#}Bvl#eM~2)CzlID(Xf51U#G5a!HR426RU-dc5o#gm zB!a7ZVT!pT0`v5;)0+XZa=w_rs6-jWq$yZ72`a*0u`$m%p05yLJ}^Oryk|wVJhPa3 z%&$2}+-}`CU%aQ~w`MUf=3sM>Eap>HB*Qef$j}_a02C8CFS4Dcj`xOtGb#IQbaYGT z_Mu+$iOZiHQdCdFHyNY-x8s$>HtmDbJ2Nm>$-$XBQgxS zxYpC^`n30Z8#jXtl*QBH8tc7fE4X+ErEl>*^~-K$rUAzNVjZU^Z`rKY1!KJy4>gBG zR&Q}xE}pOsWDY{>3XcRQ`^?5BP`>lIz8@X587&|Bq#J-c&?PdEpdz5L_79e;yd zf2jBEHrdUN%#oGBo6gLs-gAOto3vZPY(5- z$R`t(GFz#2-9gp}C&mG;efYJW@EQt4>k=u303DgTs>{EVg_FB9Dp3y(0l&%mM*3z7 zUNypLsGsH(IoE|3S{6iTbrFdVmjxxP+PR=iIWse`a8tQHO9=Cu)GRtl)MPCYl~Q*1 zBoM-}ue?nmezPTac&i%+v?aG-><*g8QB(R0h!+H;naBLxg&>>WpDak^DPwp()JvV- zPLuD8@Htc6Zt?q|NWervsR~Cg-)x-Lad;BMH4{|`{K@nRRt70L7eqt{MJ{PhSKS7=IJ2OE~!Qx;jmpYCak`zFF~%gJC))5mJ$=yGsJD|8eXF z2NJ)vgw<$L9RZ!J>QJkzG#V(ixWN55e2`3@=WPQAIo<)xf*(ZCA9j=P&YAWjkql+H z&O1YvNT5&KnQg&_)skjWo!$;DBTK>hdtm(dlkq3^$Q)J3 z-yq0&fkkg~a?oz%ve$l-x8H(M{)X{N@L^*e}H zE$vM}9xMFmJI6bCNo0|n5t_A0BVLIDrqdK(zaW5G0y=3|TGhE-LMW4wu#nK@<}-on z1v}>ZWM-L7-#*%Im2;V78g?}e-yV^A0uI^&4%)3{Ts}$63dxGjk{Z_YGn*_6>MvND z##0rR#ATVCg46v_CW{GWvO$7K$m!IzAhRiRLBX4M8ELhY(n=9jkZdN5iiqa3ZNEB( zgBWGK*Bm$(O#);r>Sa;MKGKc!9r&aXeC9rY&%YhEe>?2fIxhA{e6o`3ztc8l1|aT3 zW?WsGRuJWlj_#!o%2SyTcnmA@2I6Cf&4Y&D?B{*xt{gQ$%o$63c)J;(9 zUrlN~B`3Hk>aF+{q74FO4~YJhYG>WHlR%G@9sz}jE+Gnf#Q7h`xpCnEwOOsP zQq2}2#zAA1H?}$OtQnM;EQ-b!-?PAp=fM5V7QsBtxJ9wE1x!`bpM)`frl@VcxoV;J z(x!&FyS|3s+_A@)sAh?uiPP62f*!0MO=djJ_XD*>QIG-6_Zwb>&k%|VTMCLOZ&P|x z!vgQK!1O$x1HI2QDvB?N07#{&&#aYJqkat8FR&jWSW3sozA<~sVXJW1Z7JMaWXzbL zq}8>{ygdZ1TAo^%wraO%4S$IsXQ_H?YB`J*)~|8|tm@>c4ngsJ)Cb~M4qFjGtl`=S zh^7;PjPek!*6&0*I9K4`FN?9Pd z#T)U%NM4vR#*CY;6T0iXe&-yXbN`k1Xvv|%jGkkpAF8k~hwLx)7td3Ae zP1gkRN*Kl3A=<`>4xFYE(Q7>$HawA-!6p^%Rok^tEoWB z!-`-WwrLozzi_`KsYP&?QY0-(E^jJ~7@n}VgGD_tG1(Qth}K9eq>PA+AqApS{KQP~ zuZZ{6^OMg?y$-+NxO8Iz;hFDR&?zkFzB?ksF-@0#IoTzwkXB!vBuj|M8dLJw5kV%- z)n!XnTgt-#QFZ8YnW8cRYv(u*jzeJ;bs~_F>_teXAzsbSS)Q*B*uFea>{i=tpK{>@ z%Y#ytCA)i-_C`VZ?hM;O#K($k*}K$_LD zdlE$Fy9WrHC=NUb92ConR#(TM4x`-p47EnUh*t2I2pxg=UK4L%B73^Mg;Q+14{#Uy z(B%thL#YtSk|}#nflap}`S!IFBOu)vev6=RT0_sZ9MiSrL#9K{9PEUq>pi+y@E(&b zCS5GVve*ycu_wC;)Bj9%+I+tcmK=wK#UjW~GpVm3!m%zEtJqr@a}$L@FV$j9=KI}T z@M$_`+`m9#Kuo%F@@wC8Bl|iRe?VuE$NuI(vSo?nd{7`La?|s%8f!p}W?JK)`Y1_C zgRU1|WJNgtzYV<@YwrWWQWGs{+~Lh@Xe0y);A}ON43gFO%pdYTxRWW2q4x^H_f1-f z2{6+h>wjR6W*%d=+MSdvB}Lt+Ya(0Rs{KNk(`q6S;CUt?U*5DKSFLUY2Y_K#?HA;I zaBE1|e&V|BW%Y~9d+TFp>t-hjn6ayf2 zo!UJ)IbX7b;7EKRGOE%#+(b`HaoP764%ku-*x!(H9Qib{5&NMIm-A@H@WXDhJh)%< znc~$+y!W2Zwq+?Mx+gOgyV@)~tFD+Fnu)fQcr_&@lvYw+Ef1rcl?MX}Efc8A+>un0 zWmrN~4EFL$_e>`8+E1vH@*p%e?3x+()<|-GcmCp)MI!4P&Mq;=)$rC|mv!UpUS{YL zb*A;iD>`1Ew8lG$=Lg`N-HY4&#mNo)6;PYmD_SFiN&455&(fBR^7O5|VvDmJb3(DP z%(>n|xc9q*#IQO@E==c9_%;2*ryDj#j>#YOZbG+$QQNzBf24LgcX0nG4oGb$?eI?* zP_E=Y&&B;vmgaVoDg`I+P1W+A-?D9{7ue1;6`_HfFonAnb>{9aj8-OQSr+!>JxSLX z0oD+Cu8F%vNF_4Ing#>42Hg2;G+~jQ8eI2x9UaHbG^&%vJ>H71i2;qXG5!f{bE;9} zMH=wyYO8sea(A?n;mtKk*BP4R5RX?FldWMd(v|NLGddV;Xx=nM*3xbbwRL4V-;vrA z;k>*~@l09qbHerORKG7aveA_r%YL_~A_0;!Tywbs(y?cy7T)k`W)SwCU?`=I(A@L; zkPPNW(_7EMUZlxt@>zX|{HVQ>5mIm9e!bHnV4+F4BJytGF@uoFGt|?m6)U4F)n(47 z`4wT$3M=2`JuB?wkBA2Z+#Uj18@3TkAxz7EX7khVBq-uP$d~dumqfo{>p8c+FH@Yw zgYZ_dK_C(mA@8j8WGa(~u)~T>UU}g5v@D+T{5`l}-A|{3=@cL`ylKj)qpQ_a%gRDB z085>hixh47Ij;*>7pY#($z|8KHst?q&-z%hk#kCd_Han`bkc1>7t5s+^Z>^G7O_aQ zTTS3Kx33hnu<4K#ks8mD8m~!DM|(MkD)Po0%c8wQN42IFt%RSId}k}aDC{*+^M2lI zB8LJ!_iJUjass-A%?xWub7qBQ^4ng{jBMo>KkuxKEO1;+ADYzs$eTk)Bco>d+-%}} z;pM?_C_q$VoW0rjP-Q7wn0osCVwx?24TMJ*Q=tz?8nxiP{# zeeh!ZgPvn(2|GK_7?j68RALOyGlnoq?9X0`MU~$q#4WI)ddGmY>G(ey_V4Ji$P2dK zOL@ilb`lgCz0|td2o>5n;h#>LSx7hLz;M{Tl^V-!IAc0#6dHt-^3mChK=t>k>sh?4 z*euqdPc;~oMGF0b{UY45a3>@C&~6(drgZVn2<;H#Kekr@peK!UI2{>7sNc2lRBHgf z;P#!23PFqjFcR?Fhu`*TRLq+hA#g3ULb7HW^D1aIC~t<=W%ofod>~q6V1wP@-DE@y zV&F_E#J~o%vmxEEs<@LW*qKIU#kz4kMW;ZGqf4C?3%xQiHJ+ttOM@Oj_seUT6{2<_ zrFy^p#OR(w=j#Qnu^5n;FEd)#H3@lWw>5z@X32gTvWR*4%~~;&FJjk11FCnMj*m9?pRbo>DfHjGYschX zoB~CUOXQ30O2&{a7mz_qvw;-MPr)oSQYd6Q_b&64YN=fx#GNB0-)qbL{N2;n^VpCo z%OCSi`SR_rgj#@Tb7#^j?ZTKB@TseDeWX06-aY3khR}saPUA2BgT;iz(FYQ_zY%!P zN+YDw!rW)_i*nsC^rqqhL{(SU{gbE7^`2|&4STHnT^~)&)xUd2Xpy8iubH)pUTO*T z31N#p4jk$i`MXw{t&FQ}Y&fFz}mGK>-tj0?#P-|MjaSo?%f=qY3oFO`3Y| zq@8NS2oakaUNMu+$qBkWrQzCv1t8k5wF((YGtoh;OEo~=O8od_NpX99pgk}x`CyrN zVcxfyyN}CbaJ=T*gZ`iR{dd{>b?*QEcfQvtA=>@nR}v%5AgDF*sroKee4V{18yKeF zo_tLzB95R@7QP1Q$RNLLOViMu7Qccd?;te=^V&2hhJ0Pq)rOa1NuOU5>NF>#wWM*< z2Cg3Dm)hvFQEj1_pa?&|mXfC9clSrZQpEJ5Pd+9Dh9lkp53kXX6Wr12>b8A5rr}d| zK5sa$>S|9k{NB!&D7Q~qYPEi*xV80xrnuh`$#D=ubSC0jj&LRL*na~klQ!@7|NgJm zA5PsQ2uwdkJKj$>4{l-nhRt68dQFfcX=<9Txk)%%z_<}7Wh_jQx^^3>#7J(KZ-h#S zcWmT=wUeCoB0r;r^by~)Q=)5ewl%>m5^-DP!@*!3TV}vv;zt$EEf1`QFNv9={n}~f zSHuw#@m}FLpR#JydGD9Y%1$l3mnkUNau=`w8}**0Nlh>Vyj9&I0Q6Rtdn-!^gb=?y zSYJfy&-K>lC>#G>hMy_5yFzg{O4^iUOv+8tmkMvKklOC{*e;&F^OebaJ3ooP!mU#K%Z3aT~Jn9{SQSs+YFc{HV`I5RiSYD%$g zNgxSNq*#kv^bO7}34X$ch9?@F#Rls~%d$0t-;OU%)^FW5(a^y0=flg3&kIjwT*g9RS|*VsUcIQ(*c@HOZ2 zLy7oax*z>gI{e@;ZrtaKj^sQ1Mi0rIKfZTDOZ;-TeEdgObS;w5=N`a>na-?W9wTGC z$UDX>2Kb@RG1Et;k)(wrDfTyg`ri^jj_z>6qTNywA3#kK0Jz6ZLRGT&?EWR`(Il ziKVA*)_>-Usz9QwdW&4;!B&HLmU(J`-)=Q>{$3P+bC-{a@R%=Y8cDJ(?_>CdSU^EQ zBgq(N6n1!SmJ8NM2bI7I!ACnrZz8^HLP!`{Td~W4*#59t+zKC77vQbI713u~)W(Ongd{Wrc^F)u%yO>(B zX!QKP@i!D$ILX~uG|McwALIu1bz7Kgq5MB=lhiycG#ukKSWGr~Uz|0x5FUIYak^gOYpbe!llz zP}T91ruSe0^-y}Q2iISH?Sr7Z_f?(0UsV70K86GfO%xPQ4Jp@4?gEW__UV=0KKXGS z_pvA2K%zu{8X$kbK2s9==Y7zeMpl*=4?q2@_wn+Tf1q%ppZ_UV7#LsI!rPasA3v5)W5pCuFJ$0XLck0GFvX!h}aRo{7^ zKr4iBza|69ts(yrzBxJ~KpJ=S9utxWC$b$o>~J`)??Kjxv^TxS_GAyE%b0yg{w(E7%T4~J6!-5K+3?2`X#%K+Q-Ss8$4@j$S))1<`77t zzucQzGyi%AgoG##M3Mf|JD8VbjJ)4nVrZv+`VN{PUJWxoJxwNn`LQ`=xL5lnG z9sKXTYj@qXdjlOM`-YGE583wb(}cc&0gX59yR|~jMmhx~%u$rGe6sYDYZKpp&;9is zvzFSQ7|4whc*ME=1-tEAJJRvWeM5jv`2p|whTk&)2O~U{sJ>^P{=j11Udd=37(0aF6m?5-A!rCpr|;>n{g3kwDvnDI1|jUrC2wqk1NIFx z`>s6^7j|`?I-zX_yU(tr3(R7+<{d3L!QZZv)jLVSawrG3%CY*i$vAcB?-N)Hq9MvRqP3PX!H$5cRtug zs`v_F?M#q$76LXtNsvx_hf~NYDW%M%SX5NUx0CQRO!(+Uuda2^I`psvoGyg66nyR?#^l~<6R%S}W|r}*Mj&F7 zuGq9qZbHl7nYKB5x)gQY-e%&W{gq(>V*yovyL?xE;1TDA_@OZ6pZ}wL>OWsEKK`@8 z_5P8&qQ}2hTs+5wX8xMsQ*W!fZK~6Oh^zhe@CAa@E?YyluEk*Ol6M)zmuR@#Hh(DJ zezfKY?fw~6^;h$UcTQM(K6l=J?an?2KGjAg)-EwW>F+S$ zqX7Rg8$!WiCplm%b|T5hmD zH{QhFm44MXE9D-LOz|Q)4kU%4ujjPtQYM{+@tI-D@P8|>{mYAF(E=cu72a>po9Dl3 zht2>bU;h7tWH#nN)lnaMuO+wE`XvTc9S5!$u?9Qayf0YyJ-(FA`=y}5)@}{9Th%=W zb-He6Pn)8@m7F9^aZ&!t?wZ#Otf#R<<5Qzy(4*#Tgs?gSxK#Pd;X82j(8+qwsiAc z|8>o=O;7l*YMnR!TgCcP%pL3oFWahaS_&GPb*5H%Yr*jMzPXdR^m3(c;}-emQbG2g zqAgW}wX@Y0dACIyRP}KRmQRp&cGZ`kO334E%WRWVP_Xz4HXw^!^PxP_LAxKNx?epM zb=$K2>&qH>kHs1J5S@;A^ucO%pvkPR4QA{pTN6i%4oqriGjoyLV^<%X-5JaTS>KUg z?7rQtMQAw?4^bhR!BwAG-;`fYlbgEL7w2{b-_|HgE?WG>7wB}%*1oSV-y*a1vY9=@ z+{Cy{{xB|=F)pH$*5G1{%Nb{RT&6~O>b&yJ^F0HKx1dg*xI|vDG`sFL8J1uSOC3h2RiX{9 z8p4al`kbkqt+CHiW2f#`-#-{acg0ApojUcfv!@;^d_)rS0z#212hT)B6(zOCHI@5o zmtr>yO`$Sv=r@FzQA^Gu)aFv*e7@*0%mhLg!FQRzpJwou*5BJIp`X0z zn%zS_UgV&UC&d_izvkUTKj_%BYXoseB^~!B_r!}e8h&*5o_M-LM`#W`47tN^-`6QE zuv4&}A|c^G_#{xsSRpOFJ=y(c`-#9k`-EOLAr*J@TWG97`Lwilvb{v0eC8g6EHs>1 zTOo(@Pm1f(R9~OMxs$F>uKLf!UkJO4^a1Z7;fL@>`V(vhgcZ3wkZ18lcch0 zoNx0d{)v_{HRwv0e+I!GiUj|fbd%T@7>iIu9zb>Ok$+$dP&Nq(z;7`Q9siu{{rohn zpTpNo7N&-uo3!SeGvhkOCtLg*o_Bh|<#aoH-4@7ly?=RmV<0rQ{$z+$mcc_{CnyYR*Mt!z1sq^(xjQ1 zm$8324WV+uW(s6*_&fjU;!m8tqp|WLL;TyrD9pI<)BllmGkj~<4rmZh!JPQwPDIEI z?)B5yRpBt5oWbEQ{m0jb@Xzm*g~&>8k=QVp0r+Ego;E{)d~7O?80@_9wY%uj=kF?` zdEu+?j03Swla_`n?C5U9E}K|&2W)X_;aN)KN@I3;BaM9V8F~PwmNm|9r4V2sPQM~f z|4Z&ulFU7Kdfcio{b{Be((86THm6Vqh_|1(%TonN$^$!HWp-D57kWS9=q!+Dl?8Tuue)Pt`(VoP_t)L|h zByQy-ezBnR6WfNCNkHD+#cZ=90PN4?wH$d*Ao{@!t2n zx9|JjuteDM{sPPC*$@2siiT?9)W5oBT`&E|PJgs4_ zMY<%u8Kr(?JsQiF2_2fkafS08^eFlBT_RPN#vqUM>MuWiGcDdU8VwT$qO$f`WuJyh z&Jr1k{#~Zyh>Os{q4(?vbDl4JV=VkepcS6;x*be-LwEnEV_ix{={-~X)rzxAu)uH3 z$8O9km4xn|g@Io%;f`z3c!B?F3VvWlH6vONTpDf@+UWfV=v$>o94Bpn=u%!zp+-{0 z;t~lA*zq31<~3KcZj4WFS7l4YpMFn=acXM|m;(d@NtuChreWOC+1r7%xyitE9!Tvw zbYxtA{CXCugrM+3vOMrjE~ww_*9D90FYorVUWYcT2J{A+d!8d5O8Lk6_7ePRZ;(mz^pV>&1u{ucan;;;Mh6PizD+*1)1x zF$}l~*6a%dwivL%(i)0m*if@m@68d)wYIJ$D*Z?DRO+}Ei8iAc?hzE(?oWk11@3ny zQO3)aiRnw9ks;I!gLL1=B!>`wP>V?W4#-J1!yg)ssSJ)+=Rbo(ZRmVCHF7o8(Ni$2 z|N9aXj+?G%@e%J`i9_=vhvv@=Fvr`pq4QM;6ZJNG8_H;m>myM;9}rvu z#);=+4G69ef5@XWWvkHfz2uf@8Wf#8Fx&SMlgjufa znBS^>X17k^@|hBx=f6&%Id=K*0>&NFcyn0yn4%n>!=8vExtTxU*98(nts}@`D+Y@u zbht2--Ym3+?+B-&2&2FfA#^OehjcpBq(|j1NaqI8B8vA8=ORxhC~k-utGFlnUTFI9 z(#ZPx#C`Lc*J$nKZk*>k5iqqxvf~M@>)eZuVi#O$qPPaUe~C~&lRunvjUvi)LWkS|kx&tupd>LaHdk>SBVjtL|CVq?kl(Ln@}WnMA~dxwaI@~u zZ))Yym`ys}(|Wwgz=-L>umj*WJ3Qg2sY~ zt5B!`>BGi{9tDvH5w#720zQ(Us6Ngc9<*)bOXF_ot=3Zsa)>MOkCbH;4G0?HYf@n9hxJif1k@PvU zgpbq8>caa8tQbaw`^2IA{AuOTK5mmE5!S#?IV5^4EON)Fhv<-)M;ndt{wGS9QX$ zGf>8EjHi&#SI5#vT-}yi>L%?O#kZT6_+*qNj77gl#uB+RTR1g0i^c<|&4qpY< z6G-abBu+te1`ECRMJSom7QhQ9O%rL=709E%9K5 z#vu9%zJ-SdY}g?6RTLx=tao`}))3~g z)GC0k$@;yP2+ybW~vBs<7SG{{})=W z&8*OJ^2^aew%-@fvPw44vfnO(Ai`g1wL+UsFU48vJx*qj*HM{M-9HOUNL!LxGntv% zRIHM@UqUwdnfC*v$d47+OJYAbH*$2g@(0IkCfe&GhiB~%Lzm(+x;aIyeHHz3NF(;E z>6e!@n6Ic`-e$8lT}Ac};%)KN!Y@U#SvAL;UH~t-aH3-`#u#N_rZYAZ4~!;UZAx!v z#ivA%K7h~?Meu$t+yKNrwM0Qz-~LzRqcYV zC?LdUPzV2M?4EN`wSXBk3mw<+o+(yx4xS|x>V^6OrGnQZnR_TNuJDD5n^YDBx0~{g z9u0T3cHrQaqpt4$i;hh*Zc>v>R*UZV>>_EV6|=F5S!D|mc+WyK?jK}PJRW0-2Y42& z?^RF)1EEw&(n)uuhheV-+4?w*!L5zJ#kmuLw;EcpdngAR2dM)fK$BZUov3;>^Ny0@m7UVD+=J(0u*Yj4%q6lO=WjbVMgOZ6>G7Hpr5p zZ8y}iLDm&mSA@WM6qG|h_9F6tVV&qs2kQEfm+}i0$c)Z(r(8X;O0J4H7? z$oBCWO}0lrV~gu_&4r!&W+G0MM2EQr?}JxQHlFidQk0Ek-bD`zPxL+CG`To3buRJS za~b>Y?Zqmp?3uBrls}%;I1|QHGc3I3nF#~gcgBo;_uaUD-=Q9E^3r6z+SoG=8zE%9 z7%KKPPhQAF>agPPb4VA#elVhxYZL9TKIsXQdH1lX?k{iF{msqom*~7wm}b%ntPM_5 z!Hme^WSBtC7&}(HL1dJFArh3eGms9Ic@IMSZ}U2^acj-?GJN98NKhCjbh1S|MbrA+ z-Xb^jInrKeRkS{Wg&2RJ9HIJH%R0_Ths%oES9fc<&!Aozp)NZY&qkucW-m-2sNO8x zLblCb9ZWDN-v;ukX>Y&JKN;5txk$OW&Zb*Ae>P@%4nq5!Is|0awTpP`MPt34j)(4~ zV@nR%R~UK#L;q`yj`MfW5s9AHsG7}C0>jMr8tE0EPfPh~T7I~S7VIVAnmhVOiX}F= zV>yD{N}hO>ayX-UzRrq-SqQadMT$4W0yx)?iym}UJZMbTk-z~-b`9n;bIXnd4mH>}6 zz8Tzo_=d*wen$CZ28gndT=h!?>25&4JV2}c`5prGXrPGp0Tj&v+^38XWJ^Ux?~`g- z3D=H1v6-v+P_`sdKw3w^LqQIRouG?jwHCA$PyLzXo|J-?0)Y`~S?fS9Qt#Y-v1HxF zEygm&{o93F_A$$M%3kmYA%8*GXS}}To?d?D{>_In>;Clx@&OE%jeCRvzkoJ>SVGG) z(+hcPO72--<=y5^pxK$}0{5@~EsL$~{@zCh8^@np2>XQh{8HHWPZuz7fPo~Y(1-K_ zVhjX=C|y~i+J|GFm#3DIZlu;E~ zZ;MpMdLw8L8hBQ^6ry=96NF1dfyN_vZt$g_ZxjTNB&EMfTjI>F0?_}z{QUH1kM>vg kZFuc&c>;>b^PYuA3e3>jn~<4y>+kHKlii$0UySjZU6uP diff --git a/variants/adafruit_qualia_s3_rgb666/variant.cpp b/variants/adafruit_qualia_s3_rgb666/variant.cpp deleted file mode 100644 index 811a6d508c9..00000000000 --- a/variants/adafruit_qualia_s3_rgb666/variant.cpp +++ /dev/null @@ -1,37 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2021 Ha Thach (tinyusb.org) for Adafruit Industries - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - - -#include "esp32-hal-gpio.h" -#include "pins_arduino.h" - -extern "C" { - -// Initialize variant/board, called before setup() -void initVariant(void) { - // default SD_CS to input pullup - pinMode(SS, INPUT_PULLUP); -} - -} diff --git a/variants/alksesp32/pins_arduino.h b/variants/alksesp32/pins_arduino.h deleted file mode 100644 index 79e4b0791e4..00000000000 --- a/variants/alksesp32/pins_arduino.h +++ /dev/null @@ -1,78 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define ALKSESP32 // tell library to not map pins again - -static const uint8_t LED_BUILTIN = 23; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t D0 = 40; -static const uint8_t D1 = 41; -static const uint8_t D2 = 15; -static const uint8_t D3 = 2; -static const uint8_t D4 = 0; -static const uint8_t D5 = 4; -static const uint8_t D6 = 16; -static const uint8_t D7 = 17; -static const uint8_t D8 = 5; -static const uint8_t D9 = 18; -static const uint8_t D10 = 19; -static const uint8_t D11 = 21; -static const uint8_t D12 = 22; -static const uint8_t D13 = 23; - -static const uint8_t A0 = 32; -static const uint8_t A1 = 33; -static const uint8_t A2 = 25; -static const uint8_t A3 = 26; -static const uint8_t A4 = 27; -static const uint8_t A5 = 14; -static const uint8_t A6 = 12; -static const uint8_t A7 = 15; - -static const uint8_t L_R = 22; -static const uint8_t L_G = 17; -static const uint8_t L_Y = 23; -static const uint8_t L_B = 5; -static const uint8_t L_RGB_R = 4; -static const uint8_t L_RGB_G = 21; -static const uint8_t L_RGB_B = 16; - -static const uint8_t SW1 = 15; -static const uint8_t SW2 = 2; -static const uint8_t SW3 = 0; - -static const uint8_t POT1 = 32; -static const uint8_t POT2 = 33; - -static const uint8_t PIEZO1 = 19; -static const uint8_t PIEZO2 = 18; - -static const uint8_t PHOTO = 25; - -static const uint8_t DHT_PIN = 26; - -static const uint8_t S1 = 4; -static const uint8_t S2 = 16; -static const uint8_t S3 = 18; -static const uint8_t S4 = 19; -static const uint8_t S5 = 21; - -static const uint8_t SDA = 27; -static const uint8_t SCL = 14; - -static const uint8_t SS = 19; -static const uint8_t MOSI = 21; -static const uint8_t MISO = 22; -static const uint8_t SCK = 23; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/arduino_nano_nora/dfu_callbacks.cpp b/variants/arduino_nano_nora/dfu_callbacks.cpp deleted file mode 100644 index 3695db80ba6..00000000000 --- a/variants/arduino_nano_nora/dfu_callbacks.cpp +++ /dev/null @@ -1,116 +0,0 @@ -#include "Arduino.h" - -#include -#include - -// defines an "Update" object accessed only by this translation unit -// (also, the object requires MD5Builder internally) -namespace { -// ignore '{anonymous}::MD5Builder::...() defined but not used' warnings -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wunused-function" -#include "../../libraries/Update/src/Updater.cpp" -#include "../../cores/esp32/MD5Builder.cpp" -#pragma GCC diagnostic pop -} - -#define ALT_COUNT 1 - -//--------------------------------------------------------------------+ -// DFU callbacks -// Note: alt is used as the partition number, in order to support multiple partitions like FLASH, EEPROM, etc. -//--------------------------------------------------------------------+ - -uint16_t load_dfu_ota_descriptor(uint8_t * dst, uint8_t * itf) -{ -#define DFU_ATTRS (DFU_ATTR_CAN_DOWNLOAD | DFU_ATTR_CAN_UPLOAD | DFU_ATTR_MANIFESTATION_TOLERANT) - - uint8_t str_index = tinyusb_add_string_descriptor("Arduino DFU"); - uint8_t descriptor[TUD_DFU_DESC_LEN(ALT_COUNT)] = { - // Interface number, string index, attributes, detach timeout, transfer size */ - TUD_DFU_DESCRIPTOR(*itf, ALT_COUNT, str_index, DFU_ATTRS, 100, CFG_TUD_DFU_XFER_BUFSIZE), - }; - *itf+=1; - memcpy(dst, descriptor, TUD_DFU_DESC_LEN(ALT_COUNT)); - return TUD_DFU_DESC_LEN(ALT_COUNT); -} - -// Invoked right before tud_dfu_download_cb() (state=DFU_DNBUSY) or tud_dfu_manifest_cb() (state=DFU_MANIFEST) -// Application return timeout in milliseconds (bwPollTimeout) for the next download/manifest operation. -// During this period, USB host won't try to communicate with us. -uint32_t tud_dfu_get_timeout_cb(uint8_t alt, uint8_t state) -{ - if ( state == DFU_DNBUSY ) - { - // longest delay for Flash writing - return 10; - } - else if (state == DFU_MANIFEST) - { - // time for esp32_ota_set_boot_partition to check final image - return 100; - } - - return 0; -} - -// Invoked when received DFU_DNLOAD (wLength>0) following by DFU_GETSTATUS (state=DFU_DNBUSY) requests -// This callback could be returned before flashing op is complete (async). -// Once finished flashing, application must call tud_dfu_finish_flashing() -void tud_dfu_download_cb(uint8_t alt, uint16_t block_num, uint8_t const* data, uint16_t length) -{ - if (!Update.isRunning()) - { - // this is the first data block, start update if possible - if (!Update.begin()) - { - tud_dfu_finish_flashing(DFU_STATUS_ERR_TARGET); - return; - } - } - - // write a block of data to Flash - // XXX: Update API is needlessly non-const - size_t written = Update.write(const_cast(data), length); - tud_dfu_finish_flashing((written == length) ? DFU_STATUS_OK : DFU_STATUS_ERR_WRITE); -} - -// Invoked when download process is complete, received DFU_DNLOAD (wLength=0) following by DFU_GETSTATUS (state=Manifest) -// Application can do checksum, or actual flashing if buffered entire image previously. -// Once finished flashing, application must call tud_dfu_finish_flashing() -void tud_dfu_manifest_cb(uint8_t alt) -{ - (void) alt; - bool ok = Update.end(true); - - // flashing op for manifest is complete - tud_dfu_finish_flashing(ok? DFU_STATUS_OK : DFU_STATUS_ERR_VERIFY); -} - -// Invoked when received DFU_UPLOAD request -// Application must populate data with up to length bytes and -// Return the number of written bytes -uint16_t tud_dfu_upload_cb(uint8_t alt, uint16_t block_num, uint8_t* data, uint16_t length) -{ - (void) alt; - (void) block_num; - (void) data; - (void) length; - - // not implemented - return 0; -} - -// Invoked when the Host has terminated a download or upload transfer -void tud_dfu_abort_cb(uint8_t alt) -{ - (void) alt; - // ignore -} - -// Invoked when a DFU_DETACH request is received -void tud_dfu_detach_cb(void) -{ - // done, reboot - esp_restart(); -} diff --git a/variants/arduino_nano_nora/double_tap.c b/variants/arduino_nano_nora/double_tap.c deleted file mode 100644 index b98d5dded64..00000000000 --- a/variants/arduino_nano_nora/double_tap.c +++ /dev/null @@ -1,68 +0,0 @@ -#include - -#include -#include -#include - -#include "double_tap.h" - -#define NUM_TOKENS 3 -static const uint32_t MAGIC_TOKENS[NUM_TOKENS] = { - 0xf01681de, 0xbd729b29, 0xd359be7a, -}; - -static void *magic_area; -static uint32_t backup_area[NUM_TOKENS]; - -#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 0, 0) -// Current IDF does not map external RAM to a fixed address. -// The actual VMA depends on other enabled devices, so the precise -// location must be discovered. -#include -#include -static uintptr_t get_extram_data_high(void) { - // get a pointer into SRAM area (only the address is useful) - void *psram_ptr = heap_caps_malloc(16, MALLOC_CAP_SPIRAM); - heap_caps_free(psram_ptr); - - // keep moving backwards until leaving PSRAM area - uintptr_t psram_base_addr = (uintptr_t) psram_ptr; - psram_base_addr &= ~(CONFIG_MMU_PAGE_SIZE - 1); // align to start of page - while (esp_psram_check_ptr_addr((void *) psram_base_addr)) { - psram_base_addr -= CONFIG_MMU_PAGE_SIZE; - } - - // offset is one page from start of PSRAM - return psram_base_addr + CONFIG_MMU_PAGE_SIZE + esp_psram_get_size(); -} -#else -#include -#define get_extram_data_high() ((uintptr_t) SOC_EXTRAM_DATA_HIGH) -#endif - - -void double_tap_init(void) { - // magic location block ends 0x20 bytes from end of PSRAM - magic_area = (void *) (get_extram_data_high() - 0x20 - sizeof(MAGIC_TOKENS)); -} - -void double_tap_mark() { - memcpy(backup_area, magic_area, sizeof(MAGIC_TOKENS)); - memcpy(magic_area, MAGIC_TOKENS, sizeof(MAGIC_TOKENS)); - Cache_WriteBack_Addr((uintptr_t) magic_area, sizeof(MAGIC_TOKENS)); -} - -void double_tap_invalidate() { - if (memcmp(backup_area, MAGIC_TOKENS, sizeof(MAGIC_TOKENS))) { - // different contents: restore backup - memcpy(magic_area, backup_area, sizeof(MAGIC_TOKENS)); - } else { - // clear memory - memset(magic_area, 0, sizeof(MAGIC_TOKENS)); - } - Cache_WriteBack_Addr((uintptr_t) magic_area, sizeof(MAGIC_TOKENS)); -} - -bool double_tap_check_match() { - return (memcmp(magic_area, MAGIC_TOKENS, sizeof(MAGIC_TOKENS)) == 0); -} diff --git a/variants/arduino_nano_nora/double_tap.h b/variants/arduino_nano_nora/double_tap.h deleted file mode 100644 index e797f4f64fd..00000000000 --- a/variants/arduino_nano_nora/double_tap.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef __DOUBLE_TAP_H__ -#define __DOUBLE_TAP_H__ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -void double_tap_init(void); -void double_tap_mark(void); -void double_tap_invalidate(void); -bool double_tap_check_match(void); - -#ifdef __cplusplus -} -#endif - -#endif /* __DOUBLE_TAP_H__ */ diff --git a/variants/arduino_nano_nora/extra/nora_recovery/README.md b/variants/arduino_nano_nora/extra/nora_recovery/README.md deleted file mode 100644 index 786027dc6e3..00000000000 --- a/variants/arduino_nano_nora/extra/nora_recovery/README.md +++ /dev/null @@ -1,49 +0,0 @@ - -# Arduino Nano Nora Recovery Sketch - -This sketch implements the DFU recovery mode logic, called by all sketches -when a double tap on the RESET button is detected. It should not be uploaded -as any other sketch; instead, this should be compiled and then flashed in -the module's `factory` partition. - -## Compilation - -The binary can be compiled with the Arduino 2.x IDE or CLI using the -`nano_nora` variant. In particular, using the CLI the resulting binary -can be exported to the `build` directory with the `-e` switch to -`arduino-cli compile`. - -## Automatic installation - -By replacing the binary in the current folder, automatic installation -can be performed by running the "Upload with Programmer" action on any -sketch in the Arduino 2.x IDE or CLI. In particular, using the CLI the -binary can be installed via the command: - -``` -arduino-cli compile -u --programmer esptool -``` - -## Manual installation - -Once compiled, the binary can also be installed on a board using `esptool.py` -with the following command: - -``` -esptool.py --chip esp32s3 --port "/dev/ttyACM0" --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 16MB 0xF70000 "nora_recovery.ino.bin" -``` - -where: -- `esptool.py` is located in your core's install path under `tools/esptool_py`; -- `/dev/ttyACM0` is the serial port exposed by the board to be used; -- `0xF70000` is the factory partition address (make sure it matches the - offset in the variant's `{build.partitions}` file); -- `nora_recovery.ino.bin` is the compiled sketch image. - -Due to a BSP issue, the first call to `esptool.py` will enter the hardware -bootloader for programming, but fail with an "Input/output error". This is -a known issue; calling the program again with the same arguments will now -work correctly. - -Once flashing is complete, a power cycle (or RESET button tap) is required -to leave the `esptool.py` flashing mode and load user sketches. diff --git a/variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino b/variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino deleted file mode 100644 index e8ec998d9ab..00000000000 --- a/variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino +++ /dev/null @@ -1,99 +0,0 @@ -#include "USB.h" - -#define USB_TIMEOUT_MS 15000 -#define POLL_DELAY_MS 60 -#define FADESTEP 8 - -void pulse_led() { - static uint32_t pulse_width = 0; - static uint8_t dir = 0; - - if (dir) { - pulse_width -= FADESTEP; - if (pulse_width < FADESTEP) { - dir = 0U; - pulse_width = FADESTEP; - } - } else { - pulse_width += FADESTEP; - if (pulse_width > 255) { - dir = 1U; - pulse_width = 255; - } - } - - analogWrite(LED_GREEN, pulse_width); -} - -#include -#include -#include -#include -const esp_partition_t *find_previous_firmware() { - extern bool _recovery_active; - if (!_recovery_active) { - // user flashed this recovery sketch to an OTA partition - // stay here and wait for a proper firmware - return NULL; - } - - // booting from factory partition, look for a valid OTA image - esp_partition_iterator_t it = esp_partition_find(ESP_PARTITION_TYPE_APP, ESP_PARTITION_SUBTYPE_ANY, NULL); - for (; it != NULL; it = esp_partition_next(it)) { - const esp_partition_t *part = esp_partition_get(it); - if (part->subtype != ESP_PARTITION_SUBTYPE_APP_FACTORY) { - esp_partition_pos_t candidate = { part->address, part->size }; - esp_image_metadata_t meta; - if (esp_image_verify(ESP_IMAGE_VERIFY_SILENT, &candidate, &meta) == ESP_OK) { - // found, use it - return part; - } - } - } - - return NULL; -} - -const esp_partition_t *user_part = NULL; - -void setup() { - user_part = find_previous_firmware(); - if (user_part) - esp_ota_set_boot_partition(user_part); - - extern bool _recovery_marker_found; - if (!_recovery_marker_found && user_part) { - // recovery marker not found, probable cold start - // try starting previous firmware immediately - esp_restart(); - } - - // recovery marker found, or nothing else to load - printf("Recovery firmware started, waiting for USB\r\n"); -} - -void loop() { - static int elapsed_ms = 0; - - pulse_led(); - delay(POLL_DELAY_MS); - if (USB) { - // wait indefinitely for DFU to complete - elapsed_ms = 0; - } else { - // wait for USB connection - elapsed_ms += POLL_DELAY_MS; - } - - if (elapsed_ms > USB_TIMEOUT_MS) { - elapsed_ms = 0; - // timed out, try loading previous firmware - if (user_part) { - // there was a valid FW image, load it - analogWrite(LED_GREEN, 255); - printf("Leaving recovery firmware\r\n"); - delay(200); - esp_restart(); // does not return - } - } -} diff --git a/variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino.bin b/variants/arduino_nano_nora/extra/nora_recovery/nora_recovery.ino.bin deleted file mode 100644 index ee5e7d5452e2dffef3c678b2a6aa91fbfa919da4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 302800 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 z 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 QQ}lHL^PjE-Z= NUM_DIGITAL_PINS)) - return -1; - return TO_GPIO_NUMBER[digitalPin]; -} - -int8_t gpioNumberToDigitalPin(int8_t gpioNumber) -{ - if (gpioNumber < 0) - return -1; - - // slow linear table lookup - for (int8_t digitalPin = 0; digitalPin < NUM_DIGITAL_PINS; ++digitalPin) { - if (TO_GPIO_NUMBER[digitalPin] == gpioNumber) - return digitalPin; - } - - // not found - return -1; -} - -#endif diff --git a/variants/arduino_nano_nora/pins_arduino.h b/variants/arduino_nano_nora/pins_arduino.h deleted file mode 100644 index e1d0f6aa9af..00000000000 --- a/variants/arduino_nano_nora/pins_arduino.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x2341 -#define USB_PID 0x0070 - -#ifndef __cplusplus -#define constexpr const -#endif - -// primary pin names - -#if defined(BOARD_HAS_PIN_REMAP) && !defined(BOARD_USES_HW_GPIO_NUMBERS) - -// Arduino style definitions (API uses Dx) - -static constexpr uint8_t D0 = 0; // also RX -static constexpr uint8_t D1 = 1; // also TX -static constexpr uint8_t D2 = 2; -static constexpr uint8_t D3 = 3; // also CTS -static constexpr uint8_t D4 = 4; // also DSR -static constexpr uint8_t D5 = 5; -static constexpr uint8_t D6 = 6; -static constexpr uint8_t D7 = 7; -static constexpr uint8_t D8 = 8; -static constexpr uint8_t D9 = 9; -static constexpr uint8_t D10 = 10; // also SS -static constexpr uint8_t D11 = 11; // also MOSI -static constexpr uint8_t D12 = 12; // also MISO -static constexpr uint8_t D13 = 13; // also SCK, LED_BUILTIN -static constexpr uint8_t LED_RED = 14; -static constexpr uint8_t LED_GREEN = 15; -static constexpr uint8_t LED_BLUE = 16; // also RTS - -static constexpr uint8_t A0 = 17; // also DTR -static constexpr uint8_t A1 = 18; -static constexpr uint8_t A2 = 19; -static constexpr uint8_t A3 = 20; -static constexpr uint8_t A4 = 21; // also SDA -static constexpr uint8_t A5 = 22; // also SCL -static constexpr uint8_t A6 = 23; -static constexpr uint8_t A7 = 24; - -#else - -// ESP32-style definitions (API uses GPIOx) - -static constexpr uint8_t D0 = 44; // also RX -static constexpr uint8_t D1 = 43; // also TX -static constexpr uint8_t D2 = 5; -static constexpr uint8_t D3 = 6; // also CTS -static constexpr uint8_t D4 = 7; // also DSR -static constexpr uint8_t D5 = 8; -static constexpr uint8_t D6 = 9; -static constexpr uint8_t D7 = 10; -static constexpr uint8_t D8 = 17; -static constexpr uint8_t D9 = 18; -static constexpr uint8_t D10 = 21; // also SS -static constexpr uint8_t D11 = 38; // also MOSI -static constexpr uint8_t D12 = 47; // also MISO -static constexpr uint8_t D13 = 48; // also SCK, LED_BUILTIN -static constexpr uint8_t LED_RED = 46; -static constexpr uint8_t LED_GREEN = 0; -static constexpr uint8_t LED_BLUE = 45; // also RTS - -static constexpr uint8_t A0 = 1; // also DTR -static constexpr uint8_t A1 = 2; -static constexpr uint8_t A2 = 3; -static constexpr uint8_t A3 = 4; -static constexpr uint8_t A4 = 11; // also SDA -static constexpr uint8_t A5 = 12; // also SCL -static constexpr uint8_t A6 = 13; -static constexpr uint8_t A7 = 14; - -#endif - -// Aliases - -static constexpr uint8_t LEDR = LED_RED; -static constexpr uint8_t LEDG = LED_GREEN; -static constexpr uint8_t LEDB = LED_BLUE; - -// alternate pin functions - -static constexpr uint8_t LED_BUILTIN = D13; - -static constexpr uint8_t TX = D1; -static constexpr uint8_t RX = D0; -static constexpr uint8_t RTS = LED_BLUE; -static constexpr uint8_t CTS = D3; -static constexpr uint8_t DTR = A0; -static constexpr uint8_t DSR = D4; - -static constexpr uint8_t SS = D10; -static constexpr uint8_t MOSI = D11; -static constexpr uint8_t MISO = D12; -static constexpr uint8_t SCK = D13; - -static constexpr uint8_t SDA = A4; -static constexpr uint8_t SCL = A5; - -#define PIN_I2S_SCK D7 -#define PIN_I2S_FS D8 -#define PIN_I2S_SD D9 -#define PIN_I2S_SD_OUT D9 // same as bidir -#define PIN_I2S_SD_IN D10 - -#ifndef __cplusplus -#undef constexpr -#endif - -#endif /* Pins_Arduino_h */ diff --git a/variants/arduino_nano_nora/variant.cpp b/variants/arduino_nano_nora/variant.cpp deleted file mode 100644 index cfdd503d949..00000000000 --- a/variants/arduino_nano_nora/variant.cpp +++ /dev/null @@ -1,104 +0,0 @@ -// Enable pin remapping in this file, so pin constants are meaningful -#undef ARDUINO_CORE_BUILD - -#include "Arduino.h" - -#include "double_tap.h" - -#include -#include -#include - -extern "C" { - void initVariant() { - // nothing to do - } -} - -// global, accessible from recovery sketch -bool _recovery_marker_found; // double tap detected -bool _recovery_active; // running from factory partition - -#define DELAY_US 10000 -#define FADESTEP 8 -static void rgb_pulse_delay(void) -{ - // Bv R^ G x - int widths[4] = { 192, 64, 0, 0 }; - int dec_led = 0; - - // initialize RGB signals from weak pinstraps - pinMode(LED_RED, OUTPUT); - pinMode(LED_GREEN, OUTPUT); - pinMode(LED_BLUE, OUTPUT); - while (dec_led < 3) { - widths[dec_led] -= FADESTEP; - widths[dec_led+1] += FADESTEP; - if (widths[dec_led] <= 0) { - widths[dec_led] = 0; - dec_led = dec_led+1; - widths[dec_led] = 255; - } - - analogWrite(LED_RED, 255-widths[1]); - analogWrite(LED_GREEN, 255-widths[2]); - analogWrite(LED_BLUE, 255-widths[0]); - delayMicroseconds(DELAY_US); - } - - // reset pins to digital HIGH before leaving - digitalWrite(LED_RED, HIGH); - digitalWrite(LED_GREEN, HIGH); - digitalWrite(LED_BLUE, HIGH); -} - -static void NANO_ESP32_enter_bootloader(void) -{ - if (!_recovery_active) { - // check for valid partition scheme - const esp_partition_t *ota_part = esp_ota_get_next_update_partition(NULL); - const esp_partition_t *fact_part = esp_partition_find_first(ESP_PARTITION_TYPE_APP, ESP_PARTITION_SUBTYPE_APP_FACTORY, NULL); - if (ota_part && fact_part) { - // set tokens so the recovery FW will find them - double_tap_mark(); - // invalidate other OTA image - esp_partition_erase_range(ota_part, 0, 4096); - // activate factory partition - esp_ota_set_boot_partition(fact_part); - } - } - - esp_restart(); -} - -static void boot_double_tap_logic() -{ - const esp_partition_t *part = esp_ota_get_running_partition(); - _recovery_active = (part->subtype == ESP_PARTITION_SUBTYPE_APP_FACTORY); - - double_tap_init(); - - _recovery_marker_found = double_tap_check_match(); - if (_recovery_marker_found && !_recovery_active) { - // double tap detected in user application, reboot to factory - NANO_ESP32_enter_bootloader(); - } - - // delay with mark set then proceed - // - for normal startup, to detect first double tap - // - in recovery mode, to ignore several short presses - double_tap_mark(); - rgb_pulse_delay(); - double_tap_invalidate(); -} - -namespace { - class DoubleTap { - public: - DoubleTap() { - boot_double_tap_logic(); - } - }; - - DoubleTap dt __attribute__ ((init_priority (101))); -} diff --git a/variants/atd147_s3/pins_arduino.h b/variants/atd147_s3/pins_arduino.h deleted file mode 100644 index 0726a1c4a1c..00000000000 --- a/variants/atd147_s3/pins_arduino.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x1001 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -#define LCD_CS SS -#define LCD_SCK SCK -#define LCD_SDA MOSI -static const uint8_t LCD_DC = 21; -static const uint8_t LCD_RES = 14; - -static const uint8_t BTN_A = 4; -static const uint8_t BTN_B = 5; -static const uint8_t BTN_C = 45; -#define KEY_BUILTIN BTN_A - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/atmegazero_esp32s2/bootloader-tinyuf2.bin b/variants/atmegazero_esp32s2/bootloader-tinyuf2.bin deleted file mode 100644 index d52b958ec96f7caaaa487f580b3708becaf74f1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21808 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 diff --git a/variants/atmegazero_esp32s2/partitions-16MB-tinyuf2.csv b/variants/atmegazero_esp32s2/partitions-16MB-tinyuf2.csv deleted file mode 100644 index 003418ceac2..00000000000 --- a/variants/atmegazero_esp32s2/partitions-16MB-tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 11968K, diff --git a/variants/atmegazero_esp32s2/pins_arduino.h b/variants/atmegazero_esp32s2/pins_arduino.h deleted file mode 100644 index 45fd447331d..00000000000 --- a/variants/atmegazero_esp32s2/pins_arduino.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x239A -#define USB_PID 0x800A -#define USB_MANUFACTURER "ATMegaZero" -#define USB_PRODUCT "ATMZ-ESP32S2" -#define USB_SERIAL "" - -static const uint8_t NEOPIXEL = 40; -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = (NEOPIXEL + SOC_GPIO_PIN_COUNT); -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 - -static const uint8_t PD5 = 0; - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 8; -static const uint8_t SCL = 9; - -static const uint8_t SS = 38; -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; - -static const uint8_t A0 = 17; -static const uint8_t A1 = 18; -static const uint8_t A2 = 13; -static const uint8_t A3 = 12; -static const uint8_t A4 = 6; -static const uint8_t A5 = 3; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -static const uint8_t DAC1 = 17; -static const uint8_t DAC2 = 18; - -#endif /* Pins_Arduino_h */ diff --git a/variants/atmegazero_esp32s2/tinyuf2.bin b/variants/atmegazero_esp32s2/tinyuf2.bin deleted file mode 100644 index 6e78e5431d7d5310d2e078a04ad2ef1709531af2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 139088 zcmeFa3tW@e{Xc&4+@!7>1PGVPtszu&ZY9`i zbo5))ZlY_yOI&HGmEY9ftV#!JEq1tR+pXHQ8|zAEFK)I~R4(TKKF^bofZ)3C_Wk|; zuh)NRKfIrF|D4bHoX@#D=RAHUVKSb+m(l)>5W;}mKLJZfTv;X|QQ2o+^mtO#ELgH2 z#@A!av$ecxeO*b^7+=DB9b2|qQ?Js*<}C&95x3@6RI!%lKe}?Ym;dM}c5TWAHZNP3 z%2v^ORM%A%&tq%Xm0OF-zzQv^yb6`60?$h{T;%H7qVkFgleOByONC4+o-$`*>2cC! z>uMp8qUvI^k0eJ4n+m$bVtyFx7f%#NS5s3_USy);0#_x~mP+n<=|u6-fDf6AtZbF3 z(!7+VKUM8SagjIsh}lw$y!oiNiJMSeS%a2ft>xZ)ZxcN+HHj^u@v~BNQTHuE_Nv+i z3w&F7lq3?fjPnipBsUknTtk=bW~nx(YHd~Zx+>x)zz=?u$Yos|Z;RvOpcvJb^=xrn zWesbxvYL8gC^8js%2-vz)|f012i4D_>Z+3R(mD$-P_xBSZJEa@E%(Tpii@GPwXCVC zn5`|}U}no}X5-~~U$+N~{uBbK@|I69BS+tnB7UManE-I?CSfKIi%Bc8EMMdC; z(@Ipv!yedS)#X)>m@3MP*~-c~7Cp?eK7#1~jdgbC_3x_dYD>A*%odu8*0SSPw3uhz zYAH9@(jK_Z8y~Kc3R7(v8o`&3CX{!k*;GupN)SU;t<_Rj z#C1tnw4yS?R@a!_Dh1{9Z6#`85LQ`kwW3YcL~kyvD`m~~MP|+d!T_3TY40OhXyXcV zmepLtl9YAv@LyX~4KsugD-~LismcTeUuQyjd;mmMT56`Mq9ze6S?vwcu--5dpP8sz z3DW_dS>BQEadFHTpgJr8BcoJsrtA5Kgp8c@Z1~`3@F#JZpznf;L6x9KK#zj#pzWYNpkILYgI)o>0eTB` z7IXphG3X1>70@t9A|r8=L7||;5v`$(Q&&|6D}}Lf0dX5gw=xm8Eu@1qMglr;a0-uT z?i6hCXe}iA>bgQ0n-R72iMkf!pt-^)D4`k|Q=?RE@$rQgp<82EXV(>5xj~}3&dQ?b z1Y?c{J!az2NRq%A>f-WR6PPGw3z3jB1~6^BRj0a%toXiZE+&SG3UjHc!lxgSto5}; zriu#RzL`Y3W+JulBo)>=3xl`W?KD4Pu816Ais&jZhcR(nqC@G+A1N<3$FE;wwp0^i zLawQz&PU9`F#uREaB)J?`V6a8o>Fe*isEWF!WCb-+poH;yb#9Lhf_~RBdmLJD?@H0p5EN37bX&( zd^pkhxD#qL`tn+mP!q{R6c5on#PDz*4~uwMOaZ@VpvNace+2y0 z+~Sj8Y~~G!H>8q_I$;2xM|l;r3vRYRG_(-X>bb;8|ygOjJ2y7ALPe~5mefkKv%gUsv%>LR2iki>};gvg{^RPN6$ ze#rP4#G`@oP(p-2TGr3uC-g~2!=I(`rqCxsBs`E8sb2#jv>e7Kz6jxzM;gx$WU&_I zd;7zv^=NfIT_a-1t0*sYPa;duA9y7)r042V4SK4Y`PmN`6A7)NCO?bTkbgvVlXO|x zoFp{)9+xpO(-28rS*aPT33WwzT=|+Y?nrl9E>rI$p?qY}MyEnYpsQ6?aX2P_nVA`x z1WUI3B%L9Zd&pSH0YdWAGbpnoPEQ4NnaQ{KWo7HKF}p%WG@&PEmSK(8Gd&|aKM7MT z{YW(Gla*sMW@J(W>q(q#NK4Gf$sTcgGDFukW~9?O+?Y}lG81m`%T3J8LeIa&KTYS2 z%Q0j~H)N&wl%AfOl^?J3DTR8_n24BdKm)EB6M39!Aq8#V{4_&Wnl3vbWrPcw7v}K# z{EYO}2S)kQToThWa*|W>vy8d~ZzX9Gj|9?nY2yc^=+gD6qk}SG0AUAdvyNeSW#R+* z*%=x6sTt|scBI7^b;(GOlgjG>rvN^Mk8WXKwlITE&K_M!XiidQVj`Di)~Jf259B0H zRDNbQC+aa;0w&TESLeH%bgT{`G%q^~!b`{;ueLNypEz+?LQ?WX$!O5{t;-cggKpJc zDi}!k_B!L9RnUkKQKnbdY3hWG^z6j+?0mf;DG6FUN_wj^(P&&UU16akSb} z58C}WQO6s+ElmSF3YD4xUF4QSo<2oG^*P2=LjwA9eyT1$(W?zK4Ba;|$&j9?A15q6 zQgZG%>9o#CDAOwl8l07wnwUU4UQ&jK;}K!d zaL$}kHpeJAmo`n8nu;6}sM?H5m6?&68m~)OIbN!fFpq#nD}7=Tw}gcG$yk}sIr0(bCy z^_(s7O>CgvqvgzdC8g@JQn(tA$bt`WS9HX8wIRtcIs?v!>N+)mqvLTsARCS7V_`<3 zXJuy?jbj50NuzT}%g}pugiAVF;+z+h!)wU-{Byms;5>ZII-gCJ!8@XGK1N+u*6NJR zF}`C58!qZ<-AZ1mMl-uQBPUg#&o#y904fK{B(!yOfH4E3xux4zr& zmiBl1`%VQ$qK=w0xP3HMBhhv;KFVZ&WJBHYd)rT#2*UaWAwe= z{9NeP+_{GK=}Ybu?p4m{_-K-xG>jjkeX;MA2!oN9oio~htp0O3L$%!MJhseLIf)p( zN9Kxjj=-gG`}@uvJUqh4)6s17nC=P8#9)E^M$HPjuncZ^%TK>0M|VI@`by}k*DP>} z@-UKM=CRt4uJ`E|To9*HNxl;+&YRX$m#Oy-d84J{4j%29n}Iz5ul?prPV=#ioDVM% zI@ueY+UT`hT)fQ0gk0G1)I{GoCsZ3#o@_(XXifBbdsG*~)unlJ^ofwfOPO?KCX{COc-sn)%QjlvzYJ(P+mA@$Br02Q8En}#`Dop zb(mmG$S`MICk)l6^OG{ZQ^FW{TgF>bTB?50Z3-|h;-*VuWAMZ4D67GH!KjbwEF->S z`yC(Pu_SbzfuVmybNJAl^pWXiev0qNa%*rxiorN0H6|U|7@&M|P07w4Gil^}(sX%H zNWB4?=`|u;$k;KC^IV;2Ko{2QvUMW`a{ft)So!3qKmmOwU|fhtc`;0-V@c;@34KfP z?PHvOqApoy@b>soap@E?HN#hAv`Mp5$E@W%o(Z~iDr&4KGg7fgqQV@twi**J0bKxf z#3;Nn(JK;9B;RJCLe5CYNJXos8GM#_p18bndL|2)n~!ctPc*(HOkXi87`KDcnz>tp zPM^nW(?~wI%#A%E+30h;#PTtnA8EO?_(VOIcOnb}ot~#YfVu9i!P%Ml`po!baEL)= zOpo*Ak(EU!;MpV6yF`F4Ik(!JTr0CNYCa&z&g5Les*R~x_7}b5@gIz!HZLB zLFl~C$2$wJP{;Vw8Ee9*g#aHvTbJcECn>AZJF$_GF{XMW-ukTk6fEtyuHr4gH`r4b zDADaB=nct+NZ&AU8-4B!MmX@q$-+ho)^B*< z>?z}RQO4ak87He8ER77w*n_zxvz&B8T5=i~rrQM*7Kv3b*0B@ujOn^=B+!LlP%yuz z9tIR(LtP1EfRR8UFcByMeitYP)&M2IMxY}X#bASvm0Vo7M02BdhfnwlRpal3F&=2@4pcME4&>wgOC<9KKigJLnfO6n+;3Qxk z@D88_I2rf^PyuWM1_Dn3gMc3cgMl}JQ-IS$NZeH5Vqgd`7dQ>L4j2l23OF5j07!xe zIRg{`{|ID&*MLIc)M=;>FcK&RrUA)RLMnj*;E#X|@EM>G*Z~v)F95~BZ-5fu-+yWE>e+rZUj{*rx$h$xR@KYcIbWwi|_?r%Y;2aWSPTpdBXMS+3RnVM4lD&4fn~rFU^#FD z@FCz%;9B5|zzSd|a2N0$U<>e5;BMeBkiORonF;v-)j$TQ2MU2}fb{K}1xVkLZ3W_O z7ugH+10Ds^le6yt{ec&OG9bAV@&Qf-%7F`klYq&AKnc(c^aK6~C-0S*Z`aYd=WSm_yI5k zNbW&903(2*z!kvhz_q{`z$bxWz?XqDf#-pdK%ydXQ9v~?8n_x518e}^2W$f_0-gab z2L25g3!FR~^=-yEcAx;5Ox+H&8+8NM0U6*<>VJTc=czyN2=xd49w-EU0~7%#&4FBi zYM=xd2lNB321K4tmyQx=@3!dW1k z88%xi>~i|{zn*_vJCbug&6z6#0pE!pb$*&g!n;*VK6k*uofk__GS^4&+1w_Lxr#q0 z!7(r@(cHOnF~iEp1hP67Cy;Syke*T~si+1^5q%RcF^c@e0{9U>v5kU1W*dwUFXjEi z0|i8&R3d;8YKhEG+(b*5z#oI>Y!|7M{zPkI{4s*M9ow1CAY?$$)A!5@XdnUs zBNTkGteMt^63Rv}$|2Y3lK>AW6Hg5!BA&z()MZV4Mn*P#QN>7lcyU>HadnY(eT|td zvsPBzFI&dJvcl@(_4hBUEwYr?Snrq7gK6{#-vW!drUFNf)XFlewWfCI!i6SlB?Pqr zhtw7nRaYt_z9U<<(4A`8LOzp)e8wajmrX{Co#pPQ;5Z9fc|F<+nzSG?YJp~clqPz9 zsVSzYq&Tu@(Gr|_PQ%%RilwYiTlhSBngwT~s!f(+9N}KdH&s^Dd~dY*ndV1ylVmsp zhZE^O7g=yXX4Jg;Xs| zaQLU#_k{bXzUIjW$F-_zaR`^qOv}bSgvy!p{R^&8=PaIN7Ja$sB~X?nCH;NX+e5W9_T?(J!m7S1@tuN zFz6WQJm^EvbQw%*tx?A7gAlEU(6qQ9dYx<-R*&vOm57XD5|G9Xp#hMJ)|e5vPkf4qSN&+_C&sIbgXz; zZUM`t=cIkxM2WfCY<3EYN%^)Z=&NTMH{)B?fzys}6&o$YX(M+4l1huy8P7!H+sG>+ zbtS7epvlg%S6hH zD=9%67eN-dd*eM+h#HNVlls=hr#QYr%H76p;$%MetLPAwU$()kPF{ZL@Pi=@#~r!h zEWe1xrRFG~yX=$CkIS5gmk0jTBp1m?Y+NK>i4cKPBF?M4)`GE*zsbUT(18;d`A{gm z_{I78JW|WZ4JEVy>Oiwt%Pjo-++4*)hZhR4Sm}(8(8+tX)s$adQ#+0krSjsg6S9ay zN6CqFr?S#i(&pHvo~6yLv%yaGHEC9U`jx(ww^+RigLPDVR^n z1#ALmK5%2my*!}o^HcnMTG??bL9cpo7dyv9Wv%PVize(CwKe7W+-)!}TlZv$UPJO- zgOyjBO2?bQB$Szp*4Bb`egQ|ht|+QQ*8(Fn2UH2y`n-AFs_|UT{0&1yr;DkPYj~zo zn5)9|=xJ)`0e6#>V-$Ip;hI+5gp0e;dDfas>75dO(nlMG-paug7xS!oI49C51FbSW z2w#fx=txDUXLPDsf=Mq{f9RoBm~1rjNR)|k@@WoU(40_siMeZzqwo`@_K3q%4R>+3 zlWCT_#^9Q2jL-c!dggxKNL6^1=O&-XZZr?0Zj*Y-RuwNr#c?5LId^#f5$_|t+X>J6 z>dSC1cu_IE`#e#Fe8fQ&nOmpN<8&lq)Knbl#~4+sQ``l(`lyX_=?!-irG>+&X7mdrqW635;Llq)_gcoY9=mi&aDX&6t zcg1)vM`?ip$VRTZy{pNCGe+O)ow&OGQn;fnGq++3$uepSWs=)^t@ zjmj0PSd%-6|Nk(*QMS0QYQ%KIwDA{R`FRIgrx*)nZ$-h8Ew|spP0D33~V5keeM&EcZk0*fhwE-p}K&;$bngz8W{Bxd3i%g7L4m zuBN8iLMuYEs{5@gXv+2F< z$~r8!u|xw$)Dq(&H@%}bahKyu9GjclW_dEJr1$QyV?Z|>A{R|0Gj3*s;h4Kj#g^1n z@mDXoySnJO=v4g90k+<}v*!tI0oO#T+7a95mMS+u(KU8mRXO$+*m8FUwb`auimgL}N6sO`on&ez_4 z`_ghouIh7rW@7H#eZVUNx;>kZyR+j6Bb)Brau>ggt4rBZG}p-W?geZ%YF|=~i+k&+ zTF_jeH25k2ZA)|s^mfYqNNUOv{epv!Bt{tuj1JH`H9n^?QH+U4O6(28c;2q_>Iz{Q z=(WFzGRGBEOnvx_ST*-01a2y1F-LIU4#2v=Gc_bc0d@NAR|Gp&cwbn9J6OO34S$D= zVX+Ggw*Zm&%~;X^C-&6Z?7uPqwCk{pW^W%Xl(>J~t{$tCcQGLsz;hx__&ooa@ zJ?OLNN99j{G|cyzmh1U>;(OwF%J$`xruF3SNz27=*2YOea*zTv1r!RJ31UI_fYhLQ zAPp!66bo7g(t`A$6i_P22+9WKfjqo zM#n@MCh@QGFg0^uct-rX68AfUi4xIm2#77exYERLPPj+7d9eE&d+x0+@6~EPC%m^B z`3VIAKcN^evKU4v6p6$_kx(SYy(xmv43TtQI;k>M-ST?Q$HP=ugp1+Ctg0x+IgSfb z?Pky~L9c}vY0^vHKr3Dx_H)snJ6@9RRo_|mfSht^h9R#n$LY^k-@J+iKT{RVstp@dGc z){}HoI>C*?^lUT?z1xn-X%SsaW3scbu&%tKxOQQAamm6WOLc9nwYs`uetPo41zf2fmq*PU2hy*M|&wqxvwF@7SMjA0Hb=-Tz+?KO0K4q79sBBNcBA z#Cc>u<#0RVt(WI7)k|Ggg26DJ2;6@EC>&>Q{@tpC@2i=MxTfXqkWU9EKXh~R?fOZ# zj5PEvUVlQDFs(}b$}5L=CSAP|_n9ywHZAH-&5e|Gjcb`jGBPok1?tN-TB~aV< zv}P}``L2`4eh-Y9eRZuo!NVtUoPT_E%p(b;JH52B>%|1Je0#wsd4EpOHoa1R=P#$~ zjer06_n*vIso(LtG|6u-H|YCU{P`_r{ww;IpSiF;q5gCItofRISyEP!ino`giAl*Q z7oQ5@e?lVINN`wi3Y?TYKW>h42mAk8JP#jdO;YX1m`cBIz+pod`2sPhXUNo-^Vv1{uh4FGB{&{LR_x6muU91Jo?=du)&wtppCnJ zQL2S`M;!X&<9VA>ZbF1ivDhtxslGN zs6TCIij&-UhZ`rmkyb7@2E$#*LoG811n`jJ6x} z9_S*d=OCj!5a7>|TE}QZDQ%XH_|dTaa2tL6sAxTD^4$K90nf%U+D|~&-K5bnS}n*3 zDgf1h8bDJ{OSKozNx3=K&m(aM0AvLn@*j$`1Dilkfw=FE;H+hKUN-57!r6bq|8ToJ zF%O46Q?l`$D)^VX{S$IB=}mWfhScrD105;P#_(G`?*Y$)J_PlGJ^@_>(U_Od490n6 zMdwo^KP^8;^MsKC%-f3T+|4_m8;R@lFz+{mah>lC#vOiVFi!uw!MK#)55~pdxf{>( z;P0E>leY&CVEswwN=5@@2XeeF)wY2|M?mR}){eZFtzoofpnKp~2EW7bqj^sGEsvi4 zKI-?+{1kbNHU{+GYLo-ggJMA~pqcO=FRyy|=efgDCWxb*1gZKjCypoYC!KTr3G4JD zW#E;467>KzfL;cj2VDe-BvPEB#JukrM%%d?y806M`5E*TqcENXlM~>tAewE|sOXQzwdE zSLO3&(0l64_j}BIQtn+8N;eaKRSkU`K{wR!R-qoRC2AsM#9C2Xl8+aD`8C+F!GU7_ z8=;<;b?z5_c>RZ6LjEP-f{D^_J9VCfg=XtIdM+NR=+~deCgu-OO;{YZ?|f32=z9)z z1oshL`dL!Er!-kveEODtEth^ujr+8tsTLmy$Mz<-0l1VM)mRY4n9~H<*u(prn(C@r zvy2xMK5dBiN9b?O(EX=)T`Pdj6u%6;2T@&n4Ag_?r+rIGT|2pjAtBm&YQAYdVG2{v2Ucg{gXgz{FJK!GkD|-z(f0)rO zqhVP5okbq-Zht3bMLj?jfl5rK59Nu zPr&gBPfOzbWpyR4VmyKqPx#_D)DPeB=3eB{IP`=RP8R3z?|Kb-ce~%J8{A7k?!`F1 za!Ft2-tykqR0j>Mt*fmu({J5#CzHyLGBDFZKGuve<)AO(4PNJo*qPgH6U8XSUqThKjjIZ;N^zvPB#xv{a@mt z4Kg|4=Ap8_yomCs$9PQTaQNTM!|nRyc{dN%GK_2P@ji-U)v5SFrE@jgTcL zF(=2X@1f7Ij$j!r-7`NATZO$}Bc%rs-h=(@--FbjBhGOFv19+*<@%HB2K-8eByOXa z#O1k&c3HbX+j|px?OzdX#k~S8mSV#yA|jVbgXs#0ARQQKP#~X+?sjWN+7?i@4rdBL z4}uCn#h^0KQw8yHDI_&6ndqb+z9!JlYZ7S7Kp1s?<#MeK+n&k?}IphQsHivn#d_=y2M79r58QGeX-MN)C63;7Kp zUwSg+uE`{>0J0#V2$}+daK!M#mkNG$0r`9ZlCug@Gwh1f#!n{2i2L9dgK^oQJWvId zvm!O_9?%e8NesDSk%^x+2JSo%SdAl>J30wVNEzG}oF8roUmpH>ES~FwNZeM?Q=q+| z1E4oRzXAOb^ckrB)L>j0$|?py_Q;=qy-)*pJ!m7y2+wB3YXDJ|X@cK9XruZ!2jliH zW3=ITb}g2Wdhn~bpTYHP`j#P#(n$3cUhwaP-(%ogT!2zRLXZT6?-a)+$D@i?FNTH{7 zA%YL_{Bt~KCE%X;0fF`;@>qxGH$nFEL_2v7A$O}M>+N+)?)o$hILsf=5v);m%)7z z7+Zlg$U|6Dl`z^X@Y7UbEd-r>3c5V+Z-a3TJU8R{u@i^`S+UTayC45zRcD((EB|sZ z?pcJjAxVfz*Uy*X>9-*0k?U90 zH{nNU&w|ZCvyumiCO%G!a$Lg8F8)0w@(bEymh+11P4F zXpQje!Sj7}8*u0mwhwU~pdO5IG~OZ|vBlloAtn0_a)0OYn>$iS7yde$C{L>_iV)*hf*W}YwG zzcf}DQhQTnlrERGGiHi#%P|B-=Dg5@=v z(F}4UW12$V6Z%IAE)0`TgDV9;k&(w^MAC3L@Ij-OgQbz7IxJTZM}ajF+9CWbt*M=n zGjm!d+kQhGEmC=Cvw9QD7Erzr2O>H_SvIc_Za+2bJjJE(ci34(-s&%LxezDv_^{F; zvL`f!B4U6t>cmh9bJ?sCtL`xOJY<%cduEtLL^bH5`L#Y|zVk9r)gkCv0onB(7jW*r zo329+0lSxN-C5L(>Tq#~;YZ+S-r@GMk&Od=-}RSIIy0$b(%vpbYm8s3zfk#$i|moT zUC!ZidxzP5jkf)i;rTLzn=Ad!F!JT{02+5SeNK~y;khr@k3-c)Ke$v4e&J6I|JZ3~ z)InRrBO+A~`Tf|bs=*)gkNm=)9BvnIA%ciNbD3YeptTBr`ZoGOG(V&z$!FMpK+*Q3 z_iuRP@G>bC5fg43-toMPe|&V<`4|--e1GW1jc)t_kG2gI)zW4q6>x-9&TwF>quwp( zxzu|%%{fA^z{_jjWX>-F!gGh&XhnDq{<3>d46FKG^JOg023cex zY$mJKT9r=b)2Ynn+2puGp?QgI7uYgsDNe(1hp6wG>#*SWM@e|XFnd(N{biNE9*znZ zguEwl>W0lHi>SJsDssjRx1K1{{DSR!v#2dl9^CqsYyX}$!S9cd@cW<-itrfxW%s^4 z+;_<(7cSm&hdNRo++%LsxW8=XuZQacL!K2nLx)vI zij1wS`B;%NWZ3+AQM+I3QTo^+QXY5pedfxwT+e;!dS3W^VTkyKGl&*<(UtUP7jepm z&-itSZGWNVo%-5^2;cNe&buHt2nu~d;bd)ppn*T`T6wTtplV{|@(uy4&F7FZ*Pm>H zVfl2}d>a{t7ICU5y{zN)r1Paf?a||`!)hC#dGPVC580(X>iN<;FSpb;ZEcC&r4+TK z>{4E`+c)3f+T28Rmxt!W%=Ie@mY+=Cq?F&Ijb^{2+;~!}RKNgD`^(pIvF_8MUUOi* zsAo%9PRV_jBhK0#m|FI@mD;ZE79jWJwObKD77{gTK`8@9@jrc2oB% zbwO2H|3*DF40pXW1h$2(?-p%_ZAae;u`sq@4sCB8qFqg_JWjJl`+Vl=+3=CleQJC`0 zAvGhPh8#a}Rm#5noVSQ)+ga6Bzjkro$M6i~bqLK@z-`aIrcGUSeEm<1$TOY|e~6c7U|0DN?c5@dMDg*yVk%SorH!DvOl7#{ zX2`6Ys|w(AM%*sy?30k8W8;0Vuso=zMc_n znHpq^9ojNAWP8{U%!~ZaT~md3UY5^SwTb1-sUeqq(ufTUUopfMYTZT&d4wkq*^(jG z24y4PClZDt&>y(^M#c{v`lSmpQwR0^m$=6Qo|?rptTBlAU7TtUYH9&jEz(9Mv&COx zk7|pD(BE4xN>!W0 z(2LD{nw~-kf$~XOZQ{s4HwUeaVtddr^^Q=o@pH#+#g063SlWD4pk@vnj%;Io`d!A+ zmFRGYZ6^m&3)PRngV_f0NiMlCT{tZ5JsOxqE9N)gbT|{u^5Ud^Iu8gb^f&)N9C>Y! zmy~%U3JIwfqZIiJj9gqPcILoAYg;HeI?K}$`cC`VWzBX$gFW)K7IEVY;#c;awl%qX zZvJ$w5ISDb#!yb2loNBEm}+gkSm}V(a&rQfH(zmqk3LcHseTvv{SSsA)V=te(}vH? z7An3vF=QaYA3n&)w+Qp~bejmC8NeQcS0D8mP<8Y&=d`Z$PAZh@=ny0q-r3XVr>h@!{(Sw?E<= zaUCMcnJr7gQkl&-2!Q#bSz8>QF=)%6yeXeQ%p{$|0FAb35kA47mG@te&p=1e?%CAL zT65pI!#H~Ki8EK!uGnIt8donm=DG(qW<+0?Pd)gqYW+Q~$lq}XiLNrsf8G9<*;|HDb9M7;w3g`4e z%#F7SQQ263O@nBwhz^sAC1Ob*`pfpkgU(oQ+(mcQFZciL2gvxBDDW(_8Zh;8=Z?BfCS?>l0faP9lF&*do?Yq^**t4cmO=i-Di&F$~O_) z-~f!lUNt!*=wKoQeKN6KP!cMpJ@`%!?@>-B=V#%M}dIC4wG zeW7IacjT}Agh^g1QH7E;+4lna6lBE)dGPa#1#)2_Gue2wp`bu?BpSW?@2(|5k$)Pn zM`>~tk$)Um&uHulV;*ZzJ`g1jK%p47u^ou+)-{#~+g==KXBySS+y2hy1~BhbX(e6H4V+6E zuw_x*aLi>7e23-g*%u~WN`z?1l$6l(u`SYW_4_g6cowYd}67!vMA>c2e~u zi=3pfOR+Vuu}ia6AWvDc%3yln;d0yh?OVf}GUfKI;U&Rhx+Yga{)E0q5aK<;o4*qf z4ZaDRaFdAXVeyN?5-qb?LuMPln63D7oaOgHA-?_FWjOs67T@B<$O4P+DefisIl9I! zAHcFYHd51Nh}CJZXg?@i6+D2|wUMwy+{|7S;{Qm~fF|CNB2t*xvm)~5cZ8m`_`#92 zxQ2}9$L|Jkg(of)vIm9ViP9Vlesi%f=$s&^t9j#PmfcCt32Bvl_YSy?1CDc!#rOfn zL=*y+oC_9*2nAZoF*syD5o$gb>Xr|{a$t@T@{R~u#cF6xw0uo;f4-qbHAKw;@raOX zafRtqh1$OaCkIcT`Hl99RvX=^TQH!FK9C}uFDVN~-6U9dNOGnNB^O=f&0wLAK#$YS zj6+nK?@+OYdw9YdLb*_I_h_DGdU)C)LUbRV4heO~{xMJfV|hyY42I)P8I}8Sx(9N| zBX>oVuiQ>h9$%t7zDs!=yy2GHyTOm+n~pbbjFMab4Y%CDpFdUuKw$ViL zm@n@$7l=w`NT|VuUSNh#?a`nskLmdd<|kszqs6LdKf34gJ<;qL@6*@WY|OFD5T&|ntkndX`A^*ivX@W6qXr;nB-Fs(|zC@fhw!!PS5+;xL z(>+P$1<9D-6GbV>(>pOyzhC%0S<@bViPS!+Pw59K{vY8343-)1diF)+GwHnA`~}U1 z%3Yqyxj!Fq&y)usoL`-B;hg&-w_1an-@L-k0h)uRKjaY6G3f6e_i@K%n!tAHI_##c z^oCv9qTa1+iM5CBj@lYzE4s0DuN*_CT-sQ;sIhQyV__^`pH<(#ArFR8z3S@AFUDdG zGOrBiyYA{+SG;1y^D(gH55bmqO}}yOFW1{Kb>$1_ntJ2hpRT`v1rc4vrQblAF9dOR zx?R{5+&X}T99K^hQC$-D?g@0f&;Vgx-WT{n@Yd+9v$hJ`1zQD;CIR+f)cpRO++RN9 z34eAQ-5=i7BGzo%v@2A)Te2IgS5(-!_{R1{H`-(^{tm|{WM5!&^Ct%v-N2mR8GYk$ zK%4Bqfls$a4f2-tmKgpL+A|n6cA%-#F`70t@*bRp=aE;O) z+KVZIIzV3{@;4t6wM!6&)q-$kG)B3t%u3~EI;X-rVrbx!z*t6p5B#HMO_e8UGIiP< zg+{L{&?~e!J*gGZzl(J8$1sP}L-%$^E?o$yI!EO@hv-S7=Nk zZ3!z+)Fe_D9yN>I$>BRSchTKQFa-$;XH6|AxG%R~)5gd{T7Oot>dWifzr0>A-gsTU za^tbww`1Fwjn`CrDr|qfUM7}rl~3LHgWL_v)qy2JOy857QW_lv#(fIMfY#wC*!%X~ z*oY#*T4Hq;{?b)bqAAExn9g7CtqrUxX(*gcLS7ZMm8?A2w?t@r=lZ=n>!oLR2ku!1 zK3b;9x4Cx}r*Y1W8?Ye6)9z_G{H7*aqbX5DzI46U8n_`E zd*oSu7NLCquI`sYW=c_(pzTEc&hxVl*RK5LlAza*v>mTeo zAKD8cJ%cDW{5SvIg}i$^ue6Ik)7@C5I`6uuJ1?|7di{exZg{3X^!h3qbys~B7rFPp zAzN@8-22zg&w@|&x(YM}1yG=Gv>Hu8)QP(_S}QHR&MTBEUMOwCkO6sQ`Sp9PcH!Aw zfqUqd!r|!~KkPh8TjcfW_|xKlu;_Zj$-w3o)sbV4-GOrXThs6C{V?$C9~uz)@qE(T z`$^LqcsxHTtmo|6zT8X0G$%Vv8v4#J|8$mb+|agdA#eMwJlES3sCtz7@FCl=Yj$bV z^}dr5yxmB>?o7RIJ9!OOBUX5J9a;;i>x1Pf4eRLk^ZH=Ux$$trI?9&YIZrw&RIc_o zFUJI~NT_GR^t8^2oWx6~om%Fy{TxMxbl+(0pk*$+?$lhDeC#3xj)H>m)H)Mtoue_9 zC{`&swa#g1RFM#=I8%DZ!*^akmeb;QZ`RqIz%>tmrIxAAyRN&ndMf80QF7inqU2NC z%2pn1l?wApn{p1XgKmp4lI}gBATzY&S<35P^R!b_T@Fow!?ywXzLw3r?1?bK&QRQNOpe8fsd%HF3`SyeoE&@R8kkFTz)rj>GBlj-e}r$7Sa5pil?0t zPLO}1Q=9C`KgFAW5|VXKY3`x<)pZ^pMOm7^)6Qc13+- zXBl*Ie(u!jRPZOo#%JV0}aEt8AnQ=P5X3bHpDa|CEXV>DMpS#pRd zprk#UC|f*T9Cg~I z(a_{6ZJBL^+Wi=MOlY%m@wpnh-Sv`g>}8qAI}TdsOcT+3!)kl2XYfu8 zoBHNId*&o^`OGIekFk3lKUWRAY^B%8+`tBSgWE`P%ILO(4kfku)C9C(pE?hx4YToUdt z-m@*GF0Kr@3~OsQkLQ+OYn;@OTQB-BNE0`&*z}AjzWcg%%_ie+wz=7wChjqG?%5e~fow~Q(vvXzwU!fZ*+&H6r2+Ww z`MA;1uvM5UTq258U0Z_XDb|<5C`Ucq%4-rXj`?pc+std2a5N|zP$ag~RNVBG&H=Z7 z(~nuz!70}oi|{g;MP_>)oxLrAM|LA-i~pSI$}s!$Etj0~YmE*m{P*$xyMktf*-I{7 z;^%1L{@3Q(i9K+uP#%OLN#l7feWgL?FBmk%hE)&f)=Sm}PqWqcZ+G=?Yy2Vh)q-u$ z_iwL*W6SGO>OZS8d_oq|&{NlN&+j{X(9cbpdVJ{zdn z-RV$vYECxndY0LI583q;w-5P#|1+Yw_pCUvYbKKvPQpLxuV>cZ*Oa{DP5F*eQDz}g znnmFk`j@C;8N<}D=p~Fge2JLVcdBtLC~&S`=^%X!8V=kM1Sv* zz-?dHI{P8Li+5}r_dx1SkK};%&CvCZpAx` zc9Dd8f#p2Z-}`!?<7mU5pXlE^hxV~|?j^nZ*pC^~^qc4JT<9^0eFc)|?+i!q3juB6 z=LL=zIx(R=_+tMD`*xd7KWy7im9_if7SmpagzXO7w>O@wTo&*+?W?7THUX0@zi`ADeNw^nQy{_-cux@!!f-QHdW9Cz?$jAG! zYZ#KnG|nP(TE5>Bd~jWV*Sh|5>-z1%>REH`TOz{j(M@V~LPUx>VJo9L>B4RR-AB)Z zSn&^ZywE5kJ>4)Sp0{g#MoEAj^ZdpYq{rU7HSldaq;WwSwp;QAj$TD?{)C%uMg7~Njq!@P(b!-xMl0mZ(wN0B%WcAbt>da(oP1bF#ey{> zES~CZmtzgv^g)}TY0p7@|9r76iMGosUH=+AJzc@sG;_7EWUfd)L-i=X7iZJIr zc1`PdPV4`Ov3;L1(7Hg<=oD?)aRKdTo76u?J>4en-?BHX(J9>$^tnyezh%c8N~dr$ z6|PO%&)Ey?b#Hc`zloIemlej(BCCe4M%}}mulVEIkSy`jZ};6JQ3o9yx_X`Ix_R{@ z*`)ya(pGFJ2qpAG3S>!8EM6=@)xi96*_SeVP=~~>M#Iy($!MrNz+JbM`sK2a83S|= zGRi3qS>xJ_jUld`@$TyVwWdE^{hq8|($3WTVWL0uc~fhqQh>LTnX1s-I#SPM&LNp9 zEMD=F1{1Ommp(lOFSq^h*t0D~7%Nyjg>jy{8jE4XT^#q$+eRXE;oVnpp2N=A)!?aT zz^-cvZ804CEF?kHlGpUWZtQD7Vl7NV8{6XF>rZk&xY?%b5ZGtfQ)v7Rc0r47>jSXX zYNkV`4r z^-GH*|NCmJFv=u|4QywY6t;G+4cQ=q-lFbTu|2GN_G-u)k?Ia?rBWe_I;e_@BoYac zzkH~RZX2jtN=&=2I+n7fd!zyS+{bQGL52(rBw<$sZ;JkcOhP^wI0ds7g<}}A?##{d zGy6-rc3yRSz;gM`Rk_3}spM;=sB6d7-nhWa(G6ccdG&I1;8GV~;$DZaZ%AzV;nj8~ zRuU`ZS~PdV4f&PTG1F3l+L`!!LV86c-YHGqUE3Qn#Vu>u+9Dhlp{v84LLO>oym*t8X51t65H3h!|bcJ zW_Tv}!P#n!Th)h}zhOGFa!+-miSIz{e{n1&X z+H{vh9|^fO-F%wboxfh$j8l~yz6peV+kArd9j>4L@d|XHj4`Y#n~m*+G+FLLqB325 zh-Ho<#BWka)};De`>HLkF{h%)nwDKa4cVXAh7qt#R(1*r9`3w?ubY>fat9=K-3x+3 zHB&fSlv@IY70kz8Ph0F^(-{Hc*#(udt)`HNZhG4~P4?wOZMqbbeTKHKs8OxxUIjbz zK3nkWPE;#Rwtucq-;dR)XQ?wo_71c~cSuk*y1iW~!Y)-C(;@1f0sA0FlBVZySVw}v zVb&F7VP92~)49REb=8LG-1i1^6R)4TJY(9+Pj)&sD6u`{5udSH~BSY^L=E^ zQxMMPXcF?10A4yj6qo%JdA)GZu)XYH$a5l-^2!otL1|H&jnn!jyIWIow@D!q8?XMk z+azta?(L0p1&5s&u?l|A7Od+;RaP$!_b5s0Z^c;PmlmC&vk-ypvu_YQ-MJb2>r_w9 zNFAql)<92s*z-0!^WlDbXoq}vSNkNyYU#pAvHhXwhwNLoCw<_O%Q^W*wb?F-KN4~3 zLOa13|0Gy5+nOt<=-d{%LX8_)^k))p3esg=QJNHL(cUgCZ#7K$S1jR*GRb^d=`==? zLcSa*3=ayC1l6xzQ&b9hBoa+Q%+sgBw|s*gV5O63`o{d47;BECE6!C{Z2v`hhdFI^ z8QGYSL(=dceiMsV$D)v(H~U_u(Ux6t8m=T=Mfs$rK>uM0YwnzRz4Y+pd2-ZzA5A?^ zBDo7^gQ@#D>YgcWGzCg#psy?52@l*cS5Wg7yCVXF7RH#S4^%Igd?bP3Bn8j0s-xn1 z5u(*kgF^X{N}2gkNp6X#F+6aaa`mD6=l(yWy$@Vd*ZDtwa}z>!{GbhNA(2e?GB zlcFJ*q79^Nt*8&$qRmh3n$4(MRmRU%`^8*zpe<;6L0B?UIJV1o-#v%>`YLCNS=9dP znK(LVi$Z&V-`D@4bX!IwO;Ud-of(~eP;A|P+ngca(Q}nf9vg;~M{Z|Ign3rT2Z5Gv zsNl4k0sfke!z5*Dj0ik_hflA&eAQg-U%w~DQ-*Gctih@FxPF~R)#z8Bzq-wLfs2FQ z&J9|RX;>T*;9R3<6;q#3j!M-;hxf5@-rarGsuLj}5@`Wz>4KlR=ZAjjUD&`;wtPZ_ z$0ahIU;~rxG-$$QgThr{;vG+!7z+?WLwKnCZTFSm@)mhK8piS(y?CKpY-y#p;e6}J z)4*E(Dm)R52;j-ycXh$Os~jEOXG-Xp6biL?&tsb+@JKIXwDZJM7t&F1+MSdYDBKFI zWhjjET}2F}b6VavjnHn6$Zog_1QOG1akn*Az3pm~q*?!^`|jET0-`i*MuRHAM*`FRP0dga9r&OwHJ> zal~tC9DG7eu@FuYepnXWk$W|9ev=5)@#X+h%oIJzddAbC+*pk^ z^=D}A!pmsN7?bX2$Q|{o%e?B&q#om=cH9~uO_HfsL&x#9D9htl-H%h8paAU7pjSZ$ z*b&_vQV5Q=yUI5!9!trT*Ogv;Wbr8hjpPa z%~h&M=v{S{R%4;}N3KFOg~}CDj4Ht77Ps#;@bnjnNMRSF9L{#bm6i+9xfXcs@|=-UrW@q0wu&&hIwu5jtc`& z-pRf|SW;u~!^h0wuU8J@%^Slgjf}%RcG1|3T701uB`tQ-{;a{R=k?eua=HG4BaxN7 z9J@vY%DX{uX&VQye**0fP@a0%K=x+?^zs?uw-J7WB&7v=x8D}Z>PP0hs_w(P z==mt$`%E)0-?2{!iV~m>>=^*yffoDRzRw zdy1bb*R}dIy0(_CUWkGUQ(& z6q;4{Uorph$mE2F)nx-U4t42(_3#}o%AC3}T<^N21MZ&;=rz>vsG>&hzJ3K<06Vn^ zNR8sAS+sZan7DS1A|^DALgP2^IMf@vEmH?l;#g@a1MoZ<^yxx-)v`|4&v5HutjARz zcz%dmyKDqEQSfP>A37o7W(e=5RYTmvUq8%E;+6^i`ql7bXZ9Dv{^y4}U9}yZD%_zV zOr~EAagTC8Jn_)chxCzMt^}K+5L#h(cME$2%HBJ8O-?xJbM+_d8l)$~a@WLcmH8T@ zi3K~dbP)Q`mK2RYnsg0AmXEGrY$F1dNk16GaKd{74LyfUuiu0*SsOaVpdf>+?ypze zW3JR@$Xy;Q0y1UwH-eU3SL${VZi5UFXVV{2M_*Be6A`_s$6c8%>>=asPNM)P)=!In ze`O6iD!XTSET3Po=zo*_vxT0Jk6j7Ww6Q|(qJ6kln9+P;}p#%=3 z<#AfeU;FKi9|AO8$9P;iWGxh^MN$8G5MbMb!XPXk-{En|v=fHXYOYvnD0dBX9yM~y z^?p#hWt|YRoEktUOMjn%whdlWsj@m*n)M3&X;0!;C4{DJx}yF)rGQH7NumSjVIXVm zg<&~I{Q|}Eta`&0BOj}R@@e&z3B1~NMa6s6?fqu!7b=}KJO(G)QZf@&4Xv&n*<1Fx z_O)`d-FCH2?2Ky|pPIoXNF$hK*k6kyKCT#L2NRcZ6E-U%NbumEB%ZHRp^@H7Ik_`eG_qGMug?LN6G z6f^?ix)J^Dl#4%<%LsMm6`V37;xOAhEw-awt`D8mg>vbbM#=BX!@)x7q}w?>!LVr) zt~5Jh39q<>kL}RNYlo|)ovdZo{RyO}GP8$xJpR9&8}8|rrt_1E%5 z!8Vqux(7She;=&6pR(Xtvv~zdDotiOHj04fz;X)4U9ofhbzg@d+>hSHR(IyIkjS;u z16bGFH26`QP8Vajcp1FW;_Sz-yRg6RSpQ5aj!x_%J!Yx;--HV@R7$pV6vHH^v+F(x zauKt4VlA(2+YwA2$Hj%n#Du>PPz%jJUR3ZvRsd4P-8--grh_KJsBai^XM4 zL1?hxbqVz`o({IQHn4Rx-gK<_)p&07Vn+nTip`22tKaIcdpq1bZ{2O4`#WY!Ka&AT zh5Dw>Ns!_0L4oT2NGZ%A#zw7VU@aeB4*9VtQ`ZWmXCs$im-+-5sntcAZ{XCXV^}lS z9|)>m&F;{MV(j`OR{e1g7nhO=oh8!|@~C3?#)j&u4s|v+cJnk57c+sc-e*}$ z{UfXs!1MQKcVvi;O1Kdn9uWqH<#(aTnK5DB@m#<98KI}6(pL79jQLBU2E-?HLV?jh z7z3}ex*n_(bzZMyoBd&jE~W3TpdQ#MX*s+*{jviF_0Jz}`Pd#vnI<``OZj=c%IU9( z-#mG|Ga|2dkGFP{-`P8^U$sRDe24-YytTRh{9f9O$&V=RH7@ec%~{f$?_KvF;3z+&{k#5fy7I_$2%Yi`4ck79NpXG^p#T*0rjC*f4|If+~jOel&tS4-7 zhMqw?&T4zONtJ&yJi1#f&9n2?^_xhb`f7rlI=ev3N z2EKZ&%|0!2{m!nouZVUW)>?mjP5XT%G1(-8t=BUz@}2AVoI_nRTp4n&Z^LPB>^A2J zhX%4&vrQjb8gp*XrB^xVht?h=&;C=#G#wq18r-XfzF7J}d9B?)bx-@c zZ-V_>{O9%@e02o0xTp;#yt3rbk`I==vt-kfwOmB1#P<1;GfR>dZ+tw>d0C~-&YYa) zxIA5xnVYuxa^^z%Sy6dVuaRq72UFwKn=W%BQUzTL&!HKCEs**lE@dXARbSS$_9N-5 zms8`Bl)tRrK&jUwH9DIc4-lTBCL>5)eHkF@C>}p6+Rle$LytyQsNoh*izw8LSUm0C z_=Ew)rql%c2CIv3qEcb1_u z-#T@Z*wC73&9fSOQ#Z*B8g3R;U@|rNb|OV;iwbLTXUVt5abTrnP3sF&E-v2HhlT&H zS58mgRQd7B7v&o^Z~pV7!jA?wylYb~kv3SBBc(!-Ov6PQOGPSp!Efu~W-U<`w^GTt zi2Ud!V>UEW2^*}IrJ*wBS&5VkoiD9^(Yo?^|2OOZkHzG)>jbS(lr^l<+#Uo6J}R-y zAyoTu$G*N30x077*7Z9dT>nczOgk?cJiI2;mr@Z4A%~Y+%Y-!u;O`^8`cg@#Jsei6 zhFhOW2{Q$~=%Jw3$0clYMqx`*BQb0AvAnv~v= z4lD1&bt?yZHbJz7pCntqM*_87Vf%_;AhY4Kfitj~k zjA;e-Q8^_iX^K$It_m!ZVE^TJ(e0C6v#V+jq1MYJO_8Q$5<=P8I)fHo+z*-3d@qTYBMsh9xy!G(lA9+TnQ1QzJXSa;2U8T0hyPW4HF` z#A7w7;&O#j{VGN1*c#txHg>}$&AW^$$vPo+1V{Uz;j~pk+P_m;hR&nkNAegXzgVXJ zT`2WdHi1>Ip?3qj6CEy_1hpBXnxKs+Qv_-92Qu z+at~tDax2vu*a_swQ=f#%+mblmRO#td(my%;XKgrk3FY)N@E8~6?!qw)#Kh^T1%Ck zrK9Yn35TzAs^yLYngc6l86uD|*UzNOzsV4B86v|aCPRhN;ciao-i#ls5wr2X{u<53 z(50JDS+RNCs#bQYN7>a0BciBVm=g^0cqJ`j#E5itoNj?$9A_xad#>10QMbm;?{FOO z{-foTP?#Qd?0{M!qyf#;PrGdyb*WBq$z1JoZBH}5q6Ycdq6E6q-U;HuKN=5krdxEI zN;ww>Hv&6uhr)7N=ZEex)PF28zC!}Cp@)mFKa5>veNt5jrd3!T7iu2D0594qGO$l_ z?azBP+TVztjLy`ICFRH^J#;48^|@DJxpk2y4@J60K8-hMY>KIdE(4pX5Z2}1bjwwW zwrb>#bhEjn+G${&=~MSaI5gEZTY7m?6epQ8^8J`aZGAybA}DlBDP?jrid0ei{Srlh zlaw8z+Y?gLUuZW=cc%E-V&4h8@n<-8amysU6-s6u6+RR2_ODK!&%8@slq*|#+ zxNSg77^_C2EWQOU9FT}erQwk<{8^HR+U+OUqcBqgUNa~Tb$pXV>lOLX8v|apc7wG+ zQN5*^_g7atH5^I*&K_I3uz_vO$tCPLvo>#3hqBq6zi{@%9q9?y}5fv<6tvh^k|#LS%y%?9k6A6b}QCbzNq z19S!jepi1nm|likEdnjv9V>xNBC7^7%T$NRprPJ+O{5>Mq7DO`g~`wU9s8~No)Wh| zp}{>j`<-&FM0dShaSGH@A0uj?rpqqM8PY{6eY72)^U)o&pfPo$%DB4hm~ETlTGF|= zn0sr7738IwT`CY?o6ZIcv75rGCM z+>S4oEz%?_-nXIyrGe&Pjih}pr&uRq7|?@e1w*C;ekJmXEN_O{j<5kzm>i}2^^m76 zNmZyS1KkvD1pm^0#3;45UCA4vrwzT3u^Qw-SwBw~w(w<~&-&RFBp> zI!SxFE~zN}PRVknP++eSrgEVcXVzTf*cbLJ10Jhn)>tQmIJ`Q~Fl)w_M;5J0QlyNE z17DG7>w`EUNZB$8Wv34%QNBr0%7HszwkuOqIWCbtX(QEnFQfDfx#mVq7VeeIpVKN;7vDo}7l^{aTJ2E>**e&>BmIa6PflYAjtzvlf<-CV8+^FJZKazrn(lgxy+*RzbNW!a)Hq}mNZo5?{Q?GIs*r@ktvJbwcU`)H%gY;e8@c&&De(7nDp^@kYfvlbm^G-#35p-Iu{ zhvv^t#VP?8A*~2%VT#JgB+X#jAIIq54qc7F91$c0gxAkPJK?FFCA5>|fp*Fz z4uC25{&vcpg_$8Y)J*m7Gevu4XpS{O<=n_(NtYJQAvPIB-Xzl*Y*YcSDO&_qa44z% zHS|q=br6Y-UEcd&iol=@3k0SN4wp&GetQJ=DLO?cr-~8Wh>)3BoAx~ zwcs~HDE@ST0fHE*xn7})1g43g!baY;f;Uryj`>wk`Rom4&JYzVFop7I*;KPZcPR07 zoD8Y<`MpUTtG!C?F+~J&q&eok`Ls%$r_nZo&y3*HIjGj#(nAOO;eEWbLFMr~R*je< z+6GB?TfgyJ{N!b#We810Rd-e{XUYVztVs$RMc)(Z+{1|-xWW3^{-`F}kpq?5MB3j3 zc@ai@3{Nf51No+0HWRPKIa6O7mF^M|ubwCZ>#)>afUq)&wmE5TMss4iGHN%PtPG|A z*W(+NS8o@tAT`vx5>QTV+ocC(hWcNN(}hw|3zDWLa?Q2oC$cWQy{dkK)18EBUB1TkXX9E|OOMy!_jlf4(HL;r&@;4qbzfRIum-8l%x2{z0 z7#uNz(FA&h-~R+>_XJIYOkEV^ZB2y{N8(l1XNa%!;t<)1VXF*vS#aw-hA6RcvFN#> z^8iRsVaC#2ml>IMp8R>@qIkNgC72dj6Inhguk_ma-$@hy2m;MHB+{N|R(%}*^rrsj zE}w6TH1#prm(GJ-^fKWE|#j7+Y(Hdj^M2*~`%?0=o_Zj5bwXP&P+nlqkB^HNglc=CG1)?*@jUg5k(QxDU193i~8uH}473&llM_A+CQ zX5NA$ANXxi_NiRl=V_6MN?;yFIbD^-li1pR0E<#|#diMPCbzS|zU%gM|5mZ>dlpifvZ zL$`Y6Zq+JvysuP7(#QbQVrf5e-%zd35aV9e9!vdI#3<+9v8zXNV>nrDb(I+c{wJ1S zpKn!T8PJFG`QUv0s92qO9?AsvJK=bcp0=H-Aybz1)kA81C>xwdx*s`Tc?(hM$0&$r$F9NS zMYd?ML_Ly13`7o~=8f2$i`*ZH_8TouOQe__4beoIK#FB$^qwD%p&cZ6Q^lrtg4q!Q z7Rl7zKj6d*2Kx}67qLKkzT$)K*|E>&cIU<#wPpnB*j*Z|mPGEGeULuYTsQ}ab;j{k z#H6uSQeUCu4uM@owc9F5Z|g+~*7*z03lR~H%!*8}a@+1mL^MdCaIR@1$2<9!$F znYM($cIMROzRu(r01SMO!7Rp%Gcxt={?I+phq{|$_p`?v)hGLCjC)Mm7k+i1{(LaYvkVJ^XckG;aW`4c2VvK{Aq#^|qRP%(}mSYd#-jv;Vh`gi@`S zu~_;9xuQkp`!qrOM^e%KfJTOQnBKFisBK7Qs;AmO=~;O-N|$a(Z{K)A48woWO02)i z79LCh6Mc>GjE}V}?NhJoTR(u$U_>GMEcYWTS2z9WyB#&#*g1Q_0 zHnw|0Y@^2g%f4<+EN$XyH!v+bHREH`OnqF!v~(^)UtCq7U)}zM%21_zTaxw^wY@=X z*g19jw6tILaSC`-$>`!%M#>5j-&Q8HH1Dp4`ZHoNu&mc97Z0dpe}uZIZ(Sg$^ue-U z{dR02%nsWgv@8*NRc2!?LLR)#CTs)HSjTFs-E&trN_&P?ii6qHhudc(Q}?|-^=wLx zuB9BKG??Pq!mZRJI%u}Qo1RmMtCkPJq}U``a#WgSW}kN?Vh_vs2tV)V63r7g*5vpn zs3Yn+*{7sEWvAJ`oMtWTDPyf=`d{=7IH9<0`0T>+y*`e1w*sekOTgFE(omo!h6phn4&h33WLf((^^)EYQ$zY!VYT;c!U*-vULrv&Flltd@PsE? zXd;Y{tukc9r3zU=!cy6)Cdn+AO1wn`u|m{#GE z6zla_`g>s}q*0(_2jcmtu8O*=y_J-tB?@GM2@$8e@Y$kxkFpr@Q$qbOnYzAS;?cIK zsrK3K9>^thOSUeVkzOBvb8a@1KG3 z$%|t`Ml-b^vzDV2Rj6aIKBJckrv9lQHxjGqkUWqEjYiZcS7Am-TrSx3WK03rHU^Y*^ zy0>mEfvlnGR7BzC#B4t`si0O+5mln`Q@A8$m%ykbyEJg?roSeP1cP2}e#<78=Ov*-9I-V(=*IP`SW{q^s?iU_s zrAdr#`5!wOgy^Jee2Mmz8h`5YZf$IV#=M}Q7hGr6_z1kGY+gF=`KHMFJjU`=Z`aZg zvyxTzpg~m{3$%kMcNu;($%MD`*$K`1t|UXLB_1%FplQ917YsF;-1nPFei=(T9rSZ|Ag1Fc79Q zb;{ly<9aXd_4>dS8*z3XTWv!rcv%9s?47FhlK>&>9qXPJ{_T z*lgBTv8B5SgVdDHEO<}AKvcU*^HkTr2wj8~W44nDd(|DHf6lv1O4s;2Y(=kbR7uQXC}mOq8xLM`oW7JfmP(q|RWa(|M*p9R2}oHimN z)CY2BXtrt^VS;oR7fh=?7a}SX=(bbD=?Iy$0KeAR!ms8jY%7H1-m<64NB*Y5Q?%<= zsr{UgLZ~Y@1hxLMjpBJ=eV`cE5CKqv;_m zaASR%81<@i5Z%a5pj2h5Dp9R&Pj_jnwsxvZgqC7;zTLiuYLYmGAaJRK3Mr=r>mLt> zbXj1NfNeb>_Z^7$97sqlOYNQW)W2qN>t-_SQJia#rEGbO z<~YW@oUtr8XBQ4*>=lgV$CRCC_$5_V&oNS*6Kh3G@|e!@=p)0Ty0)A}8`1)S+H!-{ zrl`DOOSk24GAGFsHY@=sUS`V?vcWsAaOiAt&hZXi=IBga>Jxx6u%Wf^-SvV)yun%? zHIC15Bsk+TQ*Glj6TS`jYP2_@C3^RsZ*Yh#^rKhd(C|6V2@RvY2`O7dP8^>&bAVhY zi=mQ)^;bjXR4r$;#yghib0B=gLHqfm)Zz8Sg2&DsNImxkThQ*WWN)>rVA!R>Z{5DK zx*8TzG3m#w-!m&yfg{s&tE)C`?%8UqEhm$$l%+j#&Ri|uACYg*)Zluvg*l5EzHZF9 zSEJpd&;52!Z7qyN`DO{>Img>X!@_X8>rDcG-pZg1dGnsnIOlQjipOta!fzxMqoIdM5b2e2p#Bz_QI#t?H z!Q?T~!$cFvp`NC)pA1+U1Jzd8$!`dx?BUekKfB%s`+2ijv`O6;XF0|C%>KJJ>&fPI z*n&0EmL{LYGPY!wN;~Z)c5e4eJ?}F0nK#?(@5-L08LTooxP)yG7rx8fy~o5s2;VQO z`2x}l_8tmwpw_$^{WW6{2G&NB9hi^YAIC?Ib>edyU!&bxmR{!$r<)o5+$z&@W}I%=M35O(-8$l_LsqyYMrsQTM50h0zZyC zweoCCqY9ebu0yT{A=|u3f)1+%ZRegI;G(uADBUB_d)pEos^iXbkJUQ-l{ahOt9m2) zK=j!X*R_%lBR-Z!l&7-NEexU5RsN>LDeu@98@}X5t?tm3P7aiWl;Xqw^>_VtSFrTW zGx%K1>~aA?1y19`uoavXsh=T&bYzz%B8gm|Nu|uBAVYTP`9MiX2{`1Z7@lI*lm-GZ zn+lwwk_@_cA)v`z^M;g*Gj81YWYmu60H7Qds$3B+W*GAcWqyU7<+39wLRYbLNx_sV zqeiaJ5b4u}45_(vYtpw<5mQCv5ydQmdLd@@fNMXlHX$Z9ZTql4wtND+ZVIz& zg0XxqeV5~#xoleslf0CjJ(Xp)j9x>f3?Ws|7vJxVOtnAQeGJ-qZ@x zRl|z|J#+2Bo=KzNw9-GHxz{rkWJoLBeg;in`X~HSwwa+&>1JW2qE6d#M*3Cwb>DE- zLZ#Fbzg4oiXVx9VWCt9mMe~_9+;!9*7vUB$4zXztw7^U)lc(q{RK6GA+hM~9$zMAi~b00I%KkD zMZvnNx>wGa&63&|t)RHoF{GIDA~njISgT;V494^d78Ar03N5CeC94a? zL0ze?2ng1q(x0$#O3T4xNbA0vsWt`+$2noW4tWd@LEIKxd` z~E!4_k*P>O-)+}qufXKd0&~~hN z!WS1^C{~U-%eFNJdzY`nkvhZW*S@xV|3gQknnYiUY}w8QUq07YYWeIm_%4(l919@- zw}^U68!4AP6KWUvw_F|S-8VhX+slm zQOSoRD{n9|V{L66w3%puv6e1w0@6kcW=DC)ENaxT2Oc?NY^gHt6ZxI;FsCWsapBDR zcuCCK(3XZhIXe5y8N3^DC&xw@tmV=8%}Hh~Q_q+~D|l&MbWW1ITf)@*`lz5jVA?Fy zA9II80bo9=XiZqxYgk?#e(Ds$l!lEUn7LL>7Pe?etRb45zM6|zxhngOh!?at%;RR4 ztXK~95^0mjUdq@@C6;y6X4a45F_(Eo!ah)gt|Zt0Y=$s(K~v=3eE7vtiLbR7v*C-B z=G(I&VW_tLm)Y=_1bzQ(D9Bsj>20S&Jl%07#M3vQd4Q+CcIJMb-o`W3=-}yK=osS< z^7Ic+>zjue03fYA4l1CaH2S4VI4RViUe^?4lIJGvnmeg{X(K{(v1z{v zXBwJas3@sALD4xBJ^l3Xee>9~QDP|Kg^3C zQwY46Ctl1C!lW8@2|9-${MJS- zz>DkxzXgwg;eG@Nol{IvOIEjvMS^MxzoKJnEH`GysMEFeRRxVAjD1(=zSs)ss}YMw zM-+Y%EHD#yDol#9dzsor@(}whToL6PPaD98f`wvYP{6bZ`*^?=ak`+P%6K0x+ltL2 zB{7Q%Y6*`uDVhvP;-0rqsKOP*U<#9PueGO%4YTI&@>p%Fz+?Df9^1>}k`{REPGN5+ z%p>{ob8Bd)0t^zr`AXsR0qpOKSTMh@dOE(%{N9kQ9~WUg8Z?IrmK^Q#(pB>i?+kH1 zYcf;U*%RibQnGUN$MDdNXby4TD84MRHxgRfLLy>xfa4WA zT6zHISOYj*JFh(*9>^sBI4X8L(G&Jp)V7xh&|8>oE42cdOi)j>AE|n)}&GojMmM@{@4@G17^EI{U z|HJa9b^FU$`~XKw1=c<=$z1z7v5)ZbXU9K#Vj8jb0qqVifB3Q{HnL(26gJeiPu2a3 zvgbQNAb8q31^$QwhuMP=XwXmJmJzVtr1h^xM@LUqU8+iz1kT1qskT(n{x9z~r>a6S z0;LsTt*I$tCiP5;Kqm;FK&ihS?%vm9*+a!~MDH;6*f8FNibT7Yo!ar`DIpxyz|%=g z2!;>xPlc%>bRU9e({c$+*Bh4odj-$ARdjBw(NRjnAb#vR`DQ!qwM>cj}G z#D1v`Tn)O``MF0NqQkMr)a#M|L(Pl)-HZHZM`pK2+&)~vB5hf+0+&-Seq*iz_2=lX=$;t8K=o?iVGP+@Q z&p^e=P``Xi73%*C^!vBsVi2d25;+h()MO;bB|J?33JN4eR|TP?;xS~Q(P^_M_S6cph^9gt z3cUW5_ z6bfWyVD)-f2xi1aqp=R5ITgvFcBM46r&bQ9xtk!TBBkvcq6z}AopSvb0G(i;BMf3W z)$w0IQriN-z{udaf^uy48q>ioo;i>jAz}tz~gy(3|yb8-xI@bN~ueyjs z*mV;^{M%kZ^MPHb9rkLmq!cKvf*1uTXE;L97M_==-`s!eZXXyz=tO*lqDtP1FI&^8mxV-mp-AjtC?UMwCoj9-lMj1A>S`Xgl6Dz-jwHhP7 z_vesv@kXZ#;=403$Mv$=uHGN9{)17*L1SWr(dlQRjON<9i4lpf7dZ9Ceg5Vj$8K2! zez3GKN2_??R#*LYCVyh;j87(4{%zm<4PD*2@;PsO)oN1Y<>1(2tdaS`-I1%pcOmn0 z_IgMFd(B6KIR*wakN=nB`n-MXw_JkOq|h!Q0RlHAS{n?$cMtmyn)iM% zDLQbGwpXa#lo^j!9-f|I&X8MP?}nD-YzxDEYIVKbyz}{~Ex$M4GA1^fr}=S80+E7u z$MAc3KiUJI81ZwTO~rQye$DtB{Y*6N@L>~?*UxLfepI8U@~U?XZ6j5=any0UcdV1@ znc;TiU^$``C+KTS^qKULkHi~#r+;21P5bG5Tvu`Dy_+f8*O_Lknu~&pJ7dl>xAyU z*z-MHV%|@wJT>mho91f0k(b+k+TKfr+Ul-t)H`xq4f2MZ$gkP9lR@jJ@(l;qf5^6d zkE#5d_0!u&_~w)Tn{Vtpw!zzdLjEskf_)L3_wOwyu8(79e-=EJ(9scJdqVYP0=I{v zvGww|pd+rfHokd}YEPUa0UJGU${U^Mo!-&5C@c)<)RP-syG7+p0N9)IEnCk!Go!dn zAp{?Nu)AK~mbrq7F}hqkxTxkmv5oscD|>yNk13R2fBmH{)nJ=x{h6XA2c3fQA9Hu? zQ$b~JPtF!iNZWxggo;T+As<)SYSzdnOvINYzl11lV|8(ry$DH-o5_U^fNF0V6W@cu z1tGJ#i80NM`o!03U-!4+yUMU+O(Z1HNZcdVgM*HQT9@SBr=hg?zWC7&r~G)vw9LFX zPFs+x%8$br2*q5SeugSDVR03^P775G<>A}C36a12xZ|We-SsjPVeF{gF%-FEd*^f?UvJ9h_v zw=nqMqQM{Z7iZ*+S86XSuU!%fxnwd8XYF2J;bV%$8}&ITy~fm9~#>8T3k)c_9a z4YrKRL(^wsi)`vRR=P20eMVu(;YJg6kX=2ZE-_0WsjZD1q&G`JfdVcHGk z%A13*FMMdZCGjMLYN%pH;M+m#$QYPXc}scjCi+EXRi}KAU>qn;bX4li3)9fo0i=B^k|0?!b6KDtAV3WJ@ zI$u<~S#NgAoki_8LbQ`NtN#W4%GL5!Cds`2oxoSN+Qwmm#3v*ZDnEx%oSL8;S9#`3 z8NH6<$C>?-q8V4ffOxs)Q+Y}Y+qRHte0^W)O@2dPKP*b|{**`9*?$S@MypiuW~<6J zn)3m6eL5@M9n_8Ek`UbNQ|%e&9nB@Uw#&~q-fYy3aYjQ-OdXRqy7D-_O5Kl5kVe({ zq=wNqHOjK{ydtufKFq58ps#KO;}Cq6-ds?))T3zOER75khyiUz|9hk_{tROjWuiPtRss;Yj^J=bG6E9ikKvp zE(`M`4wl8DU|~e35ONLKIl)|}dH1lemgibQ%D-+(qczds^cI zwxFj>qI~HNC&_2=0XWy&{su*6dV@v~OQ;N9wq{!8Ez?OsaWdo|WBMwjcWHM)mtPN4 z(B{>*@y*Vvi!DuT;C9dp`w*seuv=eqQ+p-ID_mYbuW3-M-z#d+gr@V5CNMZOBv{}C z9-Qm|0T30fVS({t0^Q21?}vtH{dH(>;`%SXKp<}PHYmI~0S|&j#!=UA5PYB!HRg?1vvU+uk<6qQ*fLP2=NHMf&m}+M(uie%4stYLf6K z=+T<6qp%3iMZ9)u%f(D>n_w4Nut0%3AUy}~1bLWI zPdjPFeT!m7dmV(vXj_Jq6GZia+fa9OdCfX92sfb-pQJEQ%*rOD3{wRd_D0^ zYG_V8VP^w8N5@+wu~<&yZQOAGW&IShMApsBf3yDC;{Ai!uZXOM!2nfN$82 z26W?>T11ZXo$CZ)2vKE4Z#!}3tR_h9q_=6q~ga}}^0 zU|<1kh})0bu~_yH_d$6qJG<=ogz?)dRC2wO4ZL|H#FnW2IheMgQszHr87H7J3>VVs zdMlhUjDHI`^Uv*QIKe5JTg=TlRmSGkMe`W*V;i^P<}WN=Xxy@ztM&g3!V0MSgxh_> z5<}>)^w`drYyac&%Cq0-ayhZvh7VX?!$8Cll1+@mE0piPi9bNIH2fmWr40% z*V47?_Ym6)r|P0q`LSG5&VuMXwlG_i7oYe_VYWC^EwpO*oWSus$vl>d6E&mpV||th zyjOB}7@|%(dt_OhQ6-67u8qm4DI1$B6`^9xW4R^cTgPfjG}g=ry~Ym>kKE-(&2kh* znRBNtyf&q@u|_k}jzro#d}&EYIiJOcoRS1sT@c(!pizD8f2^(w4Zd{a9ATN=g>_l_ zXMW5Qx~dR;ayj(G_vz4u^-G!dMp!w>hXNc4_#u1RuvkDQpG!|wZ}sG1k)W{3LwU4VqR+30Q%hxQ42 zbFd51ZN}Zu-+yBmrCcL(>$=JlvMurx+&*5`DU)!ArLjzMUdFDx`EGSrd2zBO>V(gA zf#NXRUDUU1OsttG(;wcL_Va)1FR26*KiKO<0-^yl|LsY5UU`CLL4 z7>a+H{dLfCwQGjp7tc7116NCb7dM@fMkE^OLpGQzLWH!$V#y~`^0LM!vU9RUIR{kv z>bz)>Vjg|HKqBNE>ch`eV5dG8x=4Fl5G-g6i0G?5u(O1DuuK!D(LB-=Synm{B`$N* z*BQ3F7VJIpi%=MpZfI=&>= zKX*}e#*@;boEt@t-@sM1P&t3WLdzmrgF=?Z<2Y7PU?)>1?a}S2)VM;CNT)(+i4Y1U z?NP_;qEQ%~2ihF;or)9D__o5*q~kBG)GRly^1I&gLtjwb=dSubf8$8O0Z!{=WxhQ&*bnYS)@}-O?Su6lR?|B-21#IdhOy`JUd>SET46FSEZhi^6)=ZNuq|@nU>dqXuoIW1vQD>dC zRA%}7I1q8Xz$R6;wD~RIl3sQqrYfZ_dcO!gh8j(Z_F7u%VybZlW55|qv%h5X)=Bp5 zL+kgXs9TO}Ad4$RfvO3)>gZ7@Qxu*zk~X zWp4Y^iG!KFTVkDmo0ZFp*W17}Tv6F8JO>srjZt_!vuoDsZ5K2gng1>0*;JtF? zQ$XW&e)dWn8c}z?lsg-H3+PWEDcY&R0&eR_5%bxTWpWgqk^SpdmIO{EVzQ3?^H$ci z1u|nhTol4O;F6Br$~t!NR#rRSXEce7{|3wjxB|d4H8LaN82($0u=yK+pW^QO^S&oC z4tsULHv^9Rm3Vf23zqu@W0ZXvieL0p&JzqunHToYe>IdJ$1+*BW1@_VIY`5YX?|a1 zG#sKdvJ!Y@B8Dakp?dIhOfdLWaABW-)2N(bRxvSvi-I!)41l+T85iYI!uwiz3_WFV zD*UMO;OO1R$YmwX$ag;Q$jk_$#40=pRPaccbM31nd5FLGKUgF)OjdWP%qTezc(@rT zABX3Mr_M0T@cw5pleGt~`wnB2OVD0sV^*(Nz{TjsGfZ)iF?Q`18Grtm$QXQiIy3l( z-#%ny=4a)?)t2OB^~VKd@An(Cg2A_fc?g>i_xDHxQ-CMa9}F(UGZ+jG0i)<5V=hg^ zM;3eWe6C-{bX;MK9n`0&PdxH|0`6(J&2R_dF2g+%!DKxNS2GmM`uX2(Wt9{%Si3ivDF@aeHEnaEta2u}{rIy?y{@+4JwNg`lW zaPJ~K2~Qo|0N%4B0R#B;c*^lSh$odxBxACqa2(tta8u#(;7Z|s0ry+Dx8OW*d*MEY z`vNX0n#p<|`F7)d6v|#o<;VNOcqYO<1~(0^Vg!@57O;b;{~LJb!LNE&X8g-DGUNO3 z&##af=cA1#qivopFE5`DoD1QMTNx(z=Q86myuS$d3LMqb2Iqk*K$_yQ46_UGN8r%4 zB@AQCdf1PiK+6VSrtuII>CWy4bfy5-TI6>yW~ zOqKy|CC1bq#C;5RP0APxkbWWP5^Y=n@PZQfgTVtpeFyo7Fs{&<%$*N|k47*nP_}}} ztPv#PUj{gpoaj#qKj`;SglED158TVFG1P5FCLS;eaFgK-aJPdGBdh+bg?O)kW8^uY z<^BFU6pU0x3PU;InoIB=4BpHNK8iAB!Tk@$H!_=ua5kIHFmm`$iU{l7dDV zMvt(=2U#P-M8e(pFcE%6&XzF!LvO91chq?e>N6vgH6ET1I*DVlCZ?jTP_IWGIf>B~ zL{`Dz3iz3a7^eOEOjf&9X6yyL4t=^3;n#SX@t+9qfm;KAC7c;fH=Q-INRzBbf580$ zZtbO8S$ep&7;8M-8n~8r@Lhx@q5tII0sU~tE`uk-9fmXJJk0ds*$r2W@-BnRy#hRG z7^gOwu^-_pH-Vl+x3enX&!gvD-jT)4FF=^5GY8DlZR@{ZohiV}$!aXOQA3UO|@l~K2|R>93j+!FW?;k^RyBLQQC zlL3Cw?DXix3x4vZ{#QGqFa7YuhawfjEJqJC1MV>3+u@ADToDXzp3Gz|&S0{B3g^Xp zJ)XPq?8b8}o=@V})I2^ur}?#F)ZU2b*#8 zn^Etzj4^2uW2}6IF|Pch%qUfYiNJLs-9_LXAl#e5yB=q6GXu|2a9xz< zsxX(S;=#8!fxpY~97K3G%EW>HGH^!p-}UKC)~865G!;05mxJB#@5cLQc=q8r%7E}c z0M`eHB!>|;3;qxAv?8tw?>;!DBpYdmf=u)fp25MOXb_LW%kmJmpB=iKh%@i-$|fVU3uovP9FEtnb794DUb1a}(TBydT9g z7f%VCcqFFI8JK_IX2Pj}OVT7Wc8wMpSHWKiw+}7};b}9$%i&&to9xQYVnH{Jc>e(I z8@RbY`2RS28~CP*tbhFGCQaJ(7SgmN1&ZE#OPaKTHYwT{VQC^XfUrW97F^v2s%h1g zT|k}(7x8CP+_pg7;YR-f*LcXpQF#9X&*sr2A2|rC@3;wgUW4ldF1dgk zU4&~DuJyQ%;TnnlHW~TaP}VS9^kL@d)8X(&NSY7giMPU6{{^_KxExMybQ!KEi@1VX zT;g+Ffp9-paQqoas9GYJj;;b~P4x_p+X1@N;VLQQMn60jasrp{I9H%S-86qg`yy^4 zuDvK{*)+c34DJu$eLwC3^?fVHjhxOGB;z>+*VjmM5?4E}hX6Md`96W`Q(Suyb{Ti0 z8+5`o71!bSV9)&pc9RG>UI2MI*#%xq;9f-Beq0KPTd zI9vu?$+!eusklU31-LZRK@VIfkjEKZ=W$)c1y+1+WIW{3gIvK3#Gk=+8R2o0z!#7c zgK(!df3y~IDV{V$^K-F$IDDdnE4USsf#cdnH~bv>7jPmj;Pl*Cq~C()OSq4Sr2l*} z!f>H(KX9CHA&7x%vU&zfGh2;tEyCe`FjOFqzaZb|!r@mJqKi0Ry3_X}?xXJvy>Vwa z{5Rw=Iq%UwsS3ockg-*eGfUv#tw#NTW8G578-(Yg9*?5!pgy1bq?jv6#WicsmC-dQ zZ!@m9ac#r(4lb(yySRUht3P;Q6y9O7;*-P6qi5dpn@84H9~%AU-Wf}6OIk-?{q3uh zlg9jgbO!1SLk#qQd!K7YostWNq1=fm{{xgw@%gwY-&E9_-t&HcEEfa|<2wH|qXlX_ zg&X}Eu8p{oKZ-5*KpThrE#kE;OT6LA@!d-wC;`7E?Ko(t%L&K-mMNLC-6Ri^b z#PlFy587UFqWGxdKxSbXI-AbHYh*sAf*po}B}JmR4!=m_MSdA>o10){p3Bu`rqS@P zJKbOzp^>~JFf8858Rm!qY!h0ksx>_7^o``lr4>M37@=@MmG+=8LpR0IGbDM)tK@^=IQd#bceId_>irnOpcM) zaaEwg+OS-rlFgjMtg^o8M(N2MMJG7SoE+e+NqN}%us;WYiE8Vc!w@g9cuEd5Ch~F# z&ru^4qrxSta<-}aKm|dZS(9zeKX%1bg!$qmO!W(qCI-A*=y>rz0 z?sgfjak!J^5`o$W1S{cN2Lho+x1|fI#jK06na@l^FfurX473Ky>Nw)iAWhblF^F%a zFzn?Cq+D@?lzP9h5Y7W#sN?!PEJu-t!whl=*6g=sU2?nw#TR#6MmA_2#uNW9y!Zc? zx1u~?D@o_ma!ZD*u{lM)+~%MkIdK#(aX*NUREqZpCTS<9JBbJ02+QSMlNFQ+{_eF& zdOFmypl1$6;X?+1v!JKE7WI3~Bwo|ynRl2Qb-~M^MmNuvlSf(*gm{oC_xcPYd|l4T zR!%me%Q%u$<8_YN!+vkPcnKlGP_&VH_v#(E!r}JjHtMeQg6c2>nYR+7KA0>rDmLb{RU< zv#vXfMT&^%ZdYm3)%T3j>sQg?9XihXrdir>6$f$auzey}H(x#|CuR;Ugo8l}L}0|U zW`!TVl?U{Jvo~DLm#ObW<{zF_Np(m=T*UlMcz^L~GuAls=>9-s65kuyZkVM6Bl9Zk z34GJ|MUgz@|B%Om-Y^Xv(*Im_@LVb{rWr_Dbx3pRU8q#v_d|MN_aw+Q%Q-bB=9U2! z@{a-E$FJ^pDIc#R)^jNmtHeFhJI?a2K5-8dt$Jje>^4Z#DX4a?R6=)cCMQj~I_y0* z16OhtgLA3qDm?X{V5(G_d^L}k?z@Twawxm%R*-%Y;zFNM+`SYxf#Qk~mjXnkyRSCz z_`xFMJjw__c>rRP7ETE047iuu!yC*tvyILNM*zgTo0D!QL$^j)U#fR*KP*s@49>U>YT1nW_DFZDxof-g+cfH0uq zLB#ej7pBM}YD!_dh@ADj)F+Q(SB7-)ijDtk4o&o0KIj|SVwH6X!XoRNSSQ0lCP`F^bYi!WS`ILpt1BfCGggT$FfGy+E0h;R%u@}?9HCA50x;n2TqilqhZ}}BFg@2&b`@Gk_Pk?4MWjC+9244j^WVhO(Lx9@3 z_6i+)KLSdqg|Kz;{d*AVAAwnYBTP4f{be10crJ=}=u|FU;e_zXRv(z+mrSSgEp za!3NFqAqVSE;hOPgOyzlo#4``igbyOl^nsDDVXPAe5iGB(lbPosFX1^>80ndn2Pk$ ze_!eD^dwqfqbTYE_4Ph;1zkrga?+E1(z=12pZ<=d!JFGF7UO}I!(vqD~I5RxzymkhDT7Ma)_lN2I zA$ot1-mAzYDI`eh97^ASQgM}&Ed@$AfJc#v9w3ePTG6=FADLd;P5Q-Ao*=ukNPbOL z***gaWZw)Dd|C7G0CNHIEmy_$juGdT9kNQfS4hSb+Ew7%JFmc;nF!{{+WQ%kS$3kw zaD8hAvP2z4aSQ}&nUQbxab+@Jco2IlkGn3*mZ=ob#~_7~1G57u6@{{`30qld2cQ_v zu15#Eo6JxY{1R(-64R{-3JyEW2>u#OSryl(P7v-SuQgO3sE} zvzn|4NE@8k*M2uu3ZU&af}u8wP({H$-H1kMeS?#N-@8a`#eyP`S>1Vg`m0*yf1A$F zNvl}8H@<@y>zxk!^tL8*(lXSS6D>}Vw1N$3DjaFjQWhw)Kv$X|i$e_*nILhAXrWCaYk$qi?qU4&6liJgdcZoR%P)6Ii?HWu1N-?MYL$fYC&6|IPQ^ycYa* zctegYhw<86s^s3!cI2Rg?d_uvOf4~enH%O8-&#g(5AKj#zWr9d3mwifko68#*@_er z8!|&$?q--cRaFcXL2YEY%CRkSs16TM9qzwb9s0@Ueyk3tKk4g`o5|%wrnEg{*^5!u zC2lLFHX})jD5Epy`)+xyNK!1K+ECKB1`PpQ3A1(XWPE~ZmjJ7GkY#HYV`@|^-DppD z++Hk$f?z`f7JUKa3$P(Nk6eO+(I!KqZQ{AgwZe9}Nq;CV(Tf(TNs}x2Ys4bQy~g znzIv&c<#xI1!E0LPf&o;qdYY`)EXH>Y3p^pE7yuaWRBJi1ZB4dmilmo z(J+oP+H^EVhlFA=o=l9>FwnaV0O>BmZ!`yplH44dj!g0rbYa;YQ+ONE5c_L{oZ$`g zZS!q1WSz?_9MFJ-iejMdV>XaAvjBGojr-E(?You!^-x?%hWlT+Q4B4 zRIY>qWP9MUm{uXTz$S=c-CB#aUdY3t)57P8gx=>zW6YTW20sr zGfZ*NFc6k%FGB*59U5azgXRcJH9Y}qsk|84TU)kbAkSC59hP3aY?3+4A#G%Q-i|hP zlqbsW0@<2)9d+fBMA?jEfgwmPqM0+yHv=JJuuc_gGjD6+3x5fvN+#Yjs5mq6Jm^B(2XpOdl}QK|&aJDkuXHe{v* zO*^xsItv#~I$xpZ4x*!{bpTZv4tUJxI$bg8a=)sHT)OMgvLf0_ zr)oSWahD+spqYA1P)@q~T_o)9QQMi5zWt7U+77iSeG`rDwn#bY(s%eSRF@1^b%Ry4 zVeQ?}r6&on+mP%Kq~np4`0B6Qc<+p+Y_ig7)gT|nk>Q;5WuLTjrVa8=8Dv`%cD1r$uwM28p9@u>F`)gG?PTCa> zWA(dyO$%Au+qUfXKRwLnl?>O6igCCx9Dv^HDTECWARt(0fpL+ti=Vw-w1i-(M#fY> zm6n8@3hpyAON`B1+y5WZmLhF#$-P$LdBxY_UG*K9E0R;_Fv|(N;|K4&!oQ#%Up^{k zxOP&U%Waqx>vAVM+^Mo#ys2Y zT6A4F5-AzRuc5uy;I}g-*vt@TwpEa>RXhYUd#lDQ7145=b-|A!BvX7rd1f}8U>JB>fWfv>*hsAcv7_}n1Y^Bx zz^bwYuifDKh36C|yHYhzh(~;cAELSzoRkdDBC7TtGG@j;UOexz7Z~G6u5u=P*KMWH zs8Z(pE93RU7a{;LHv+K!QCkFY3$@2dJeV9Ck@CUa*CJ^ye|xh`d#r{{(ag`?2#Cyk z0Bf=ND~t*Jk*b7-?un8)b)!<0qJTNZqkrVx;FTaH(f!+SjH6-rw4c$Pa;Kp7w zvNS3*lKzU+3$GIIycwl{$r9 z?^~x?{P^)$5VaFqB?auUf{oAZTZBFFg^9|Sx5b> z>gILz{JwWxgG>9=_5Qwj|J%Bb?+XV!@zGpF@7!2X?*rd53k1T%SlC_H+#B+^v95RA z2y^qg-oUG&=enzj{`_p8S`O@+Yj-V~Y=B<^ADiL>6*9$p#KVH#**)DSJME3xNxeI$ z$pxuRZO;Z1ZBXW{9WP(%BLIko-DCP_TYr5cOb?wEw+q=MH^({nn_f6uX7$1Oi@q5X z34k*+dT(4USEINd=nD>97ydnJz(jHV;6|7p-tED)XPnbbT#Kg{qQTNWi2kW>uHA^< zM2<^4FPRR(J&{bZ=)Zbp>3LYmQfUR{iy-foOW?^!Q@qr-kegPo_C}bV>P7NdbR$d; zyY_OGbilnKRa%GoU zB|UH{VkG@sX#kAH2%^>{{rplD)s8DNt0w${zLZ;zD&{FwbeQ|uN?g1a%47tSi9;fVi!lM!*$mO29sC_^;A+2h-0MpR^^ z5867>zEa|))QQYrdF>*ah1qg5X>6gB;xFau@?1)XiOiEpT7*$8BfJ}?G?Geb%J4;{ zDSu>lElbG8DYM{D7+*epzCx>ro#XkOCTlKSgvQ69K%8ey8f}|Ts;qDVcuP8Wv9<%1 zu%Eg}!peJ!71Vjr=4z0o5N>d;IFDUCpb>6kLw0QWKa!Kay4btf&+yWh7i}^dSHWe2 z16=TC|McSC`7FzWEXzX|9Y&pPKA0ynjmZDM7l|A9U(A(l^E0!heHYPy9|1-!?YRiv z!|>iV|Jy_5WTtac3*j?Y+8x2?FNDwFs0#u7rsKeRsKgFbf@HzIKCNMDQL}~wM3ay0 zPgG6Nm~bH2DqgF!BW$(5^+^Xiizhqly7~8?UaLU;8GVU$5v@Qn$NAF5;mR!XK}VvP z-Q1RjY2^H&7%73iG*7PMv>K`hn-9a?RQZGKqi+P6tVd?l4$ohNmck4)rb2t?f;4Qz z6&wMn*WmKpg@xn_r2MSKt>2Vozy_`;#6aZ2ZGOYt-1)azg-1zZf;qh^LKU2WKLkI?2_LDSgw-= zt9pV}4D=EU=6iy92L0bfyt*e0bz-&I6{*c3rLCQ46G0#BHK)beUfS?Yi?5c^dj-*( z$!kAg;a6Ct_#{NRB-yqKi<;6M zeTyxoacf!=(R(z`-+yys2g)DHdiCK$0Jt$$@_vKvrGt|i4o>Olt4kO2$!^%5K<$#qBHUS20pS#MT){N8LHfEY`@YEk; z&T52F=xbIm*X6$Q1SODXh-#}XGlIe59K4QlbgAjrhZB}GERe^lFBcrcvMfI%XJ9IW z9Fn9s_^9hK>mopk)Bxf6hEhU8=TP(GbgmD^O-zU^V@ZRnR;~24c1Hid8 zV`QrlT~V3yW79*0CKbZ2o7{uig8+IBRFK^m0QMvOtQ9cY?{^d0W)f}PEE5V<(T5YXco>Zb9Iq9HRi+a_Uw{>fsj&_m5xX60nt}F;S-Z(@|U)rqpmFL3LI9A zBTaT$HLjtuOT!g>B9h+~Uq=OJv$l$^6EIcgg52$BF(u1PWGVY(>q-gLfP@JCA!b84 z^2>EQlGI1ks)E!IJs9HQ*Q>7B%6~!YS}%+=3Yt;Au79%c?B={L>QAshZ){*m{N){$wQHppnne8 zBx9x5HhBpANsc_7LpOxn`B)Fuf+coX6{aS?J^}Va6y$c1nV%dI4_UD+Q)FVWG=caW zfV3!0jXT*St;!k*M)LP#U1oI;u|w0tg_W#9P;D^n_2|-yJ@oBDFZyW#eCV#0aR4fc z)@iaVqPyb+3Y1TDSBD-5xBiCOcT75Fo@XhnGy0BJ-&Dw2p3QYz9?^~@a6Kq!a=d1{hm*o<`fPS~S zbhi|lwTymzgnpj;60`+`ees3AivMWZKd0`W#OZtKR)U+)&?|t|J zq~-OBUTY_wXRK+#VKO#W2Cqyy{34rXAz56gAY3K0xB!d*@btYsahB0x?GUA@_Fsr* z=E(}vLI_6jGWnq!afa87@YG1T7v5`$;2E{4vk6mLtAlQVO#|*kb~0C6eT*K4-dc z6~82;TH*6ILzWQ8$}~xL!30rDM%B{naq|lb=5^Z%R2MD22>{EfAWRv2As`)AmE-+! z1bgwU=7^e>6hfkBp)>ff!?jreO}%A0K+ux@SUynxLt zWIJ3?`^*Booyrk~BZ^G-w4xklXR$RQWNQI!3~IXJ?-*xJ{V}2d-etDAG zYEB15)FKj99XgxCCD>L0k5v&ovI^#v@;HQUaKwf z0W0U7^)J?wBYqc3f0gujPYykLT*RC^1T{B`uYlzPk%(!|G?I;q-d4)T0@16aff*#T zQ}nPR-2a&>B+WT7t))9JvcWQ{SwCy6_I%4SRN1Qkb1wT^Fzz?45CrOAg;^ZI_a9bi zU3s^ynvtCBrwl8RT)bP=D&GduV5^Js5o=gvep%8<^nC>n=+ z+#N@4*?VpcYr{)m1D91M(p_6t8b>}A-9x-$Yu?JG&P9u3W*_aSDAPf35S*9GVW!2< z961D(YdH8EQ%Uc@Q$d2_j%nti4{v8S=x|{e2uUipN9OzGB*R2gAtA(k44M~HnG8f4Jv?5W#^3pXe zR=`li?Fh22%wRBNYh*HF=pft4%Iz6un;_}sJP>=|6#hvW@Vx=I`bUZ77D{FLNjfC^Q71`W`(h8={9zYi{e<6H5S4CVxK z7&&^Ir8G9Oqi#enhwoaBalFG9&cQ0a%o{0p*hqxyV_34hCHnpW3yi7wa^j0WT`Nol zVmFZfuzW)X%HSc9Eq>8US?6n4c<&&lry&Cj75#p&9E=4#v1K|e(C~T=TR}x-S>C=@ z2wxHSQc;*F_O5pH74pepyi!!2L|!=>vPdcCBSO?niYtc{d{!BFBtg|FYa1NeImo9> z=Bu8d#RjcTRqK;jLkJ+W-Wcjt#;O-F?oCR)U|so>q8uM9T>ILZG>p2L5264HxquWu z(;JrAm@8wicPQ)lesc}@KdZ9kxG?rs!{0wi{m}i;V=%*^E}|jXEJWqv`AEn_n#RDo zKo`c_kyHwdnlz2Z#m7W7jW()j;F=}9IEuIBFdePw(Y>0ej*jUGi;3!JZBLk%>1bV# zj@A+0u?z!vjG&Dpk8#k)kw?7?N}W)2xZ-U&)cFM%Dp*{eMVS64^$bkS5F2I)j}C$* z^^p{(JV6CK-Dvf^Ov;Gq>;@ThMbE+jn#rem;i{LY3-bTD4AWeQL%=ZA1VvOpF8W{< zS6BtUV=tbUIPD^^7WjdgBdyP2Vc1V(%Ij$)0K0-*O&Rk^J&9yJ%;&DRD|(cisY&}& z`Pv`<+WID@{tARtLeo+f);@$f($H1~8^mQ*xrQdd?0i_`obh${s_OJUlEc)24`sCN zY;jvcuJvm6ln1_cKF|$q$>BCYY=2q_+QaNR!&5~V+&J^NPn5jJcSCztXc#mPPgVpe zIP?lv6SZ_d1b(VMn{bwkBm}BfAcIfkl4EnjIHmm%?cZBaytC$zgS;!fvuJ)4CGNGYeX*Nmx38#$3Qv zO(KR>IpluG47{aChLY}>>)m)Rg1ZM{sSMqXS_+19X=Oj2g`g77LSyC+C*qY z=;sV~eYm#t?lo`$y244M#Ey^**4O^RIOl^f-$w}{@ zGw~W$I!2|<=V*My7Lfe;+@?d3V9)<(U`0qf&u!}AEXD7-jo@jiOYe0_z>#&x5q-2; z1KA>3)DYKwv6m$Ld>zXq5r+72hoO{gr=FbRi^y52a-JKa-ME{Yp zZe(uP4fGf1(fFW8&Ic2(6|y-FhJR>iAN*;U*-K|RRkVh2h^zdTqVij1_iX9Oa~W_y z41r-Y?0zhJY(39BM!z{1^%(g$vW0ZB!Be4og}$~&{=y5eyMXn`VpkqugalzCCX)Cd z{3LDAm6-hcn+{{ifLVoWK{vG|0-PTac!qnQC1onpmPDE5sp1s%JA1R zS!3H{A~)Ee!%aQ77~w4M#w7^fh=H^10UBJS==FfVVKgR}n1vPvqoLR@kgcM+#e3o` z;q-qvuJu`;7 z9eXAgy)WX|^}YeWOS7XwBRE_$%%#*~VwA4iSsf;Efkh=-fDQ z9)4ZAkqgOwVZb9PZj|gUr2Efgw>wo<=#n2rYfgli=y>?Risn8;so_?vw>upwMob%5%$YgZTCo0|?q9XeUjr@91*L(x4LB$KSPCde{)FU_(&r zbkqNPj2EKx-*XM?w7FcjZN2r)$u{?EMmXb;&aI@&bxR#*@aP`5UL4ab9X+E+GjHe& z34y4i3iBUDR(-+PW@@*HyKmx;T72T$2M5Y`m14&zUN~rGS;Nytc#8KEZ`Tp zaeYlsT;F{OqHD-FWdaR;178KHLf!>eFy?8|$yl$$PPmbE8N~5@2JGGY7&yU0(x1*i zO@3RHByFOH!43><>>JKt7dDnFIc!)yr1)CnIs3XZAaBdGE%>e(OKoscx#T+|W{b{0 z_Jj{bcpiEnt*^D|UYom5dijieh(4;qey5H7#cYGLA`*bFasNP%_GM=%(OjvP-h`F( zQY0AT!wTtX3bC!A#T!o(n$kQ5 z5|HL1>v)!-^c0KubtE9qCH;!!St|XSMU=A?rHWfpp@mdRh*8e6C^@ms0@bt3F+q9= z;c=8Jzp#a>IW6*zY8H1#Nz;+9L7LJ#ZX(t>X`~0v&|QxyR!*AG4KFwd@xmVPd%B|# zN?DEW9VaZJtej`)uJ7>+VUQ=?2{_gaM(8@^X^*_;8Kv8!QM@phqB5gVykuqMkY%5j zB8D<@$db%L9g>X^=@u61kWyJFmQ>{sUISSuX3D@iuw(55&X5a-F^`y50XjKkPBKsi z&VK)%efCJYGwj=gyi!SXX5lwT2ZZ^^Q;`%tZP&4aO5sC+OcS6Wdi;#N`-^n(bc6sr ze5cKF;v`;Pe;!}QQN_+i;_?v334^i71Pi?NQPCW{OUae>1@bd?M6)tNwj%jg(d0(y zpQnXIgk+KQ`DtQ?QlXL{{y{H!r2%|NI(Dses5||_4x-incBfa`EYkm_y*+S;2=0S_ z1NY}{IHhghy$;SF)fdvP(=cK2W2Sil9t5MW)W9B**Wfnx3WvU7+gwZ}YX6&a>EO_d z9mQiQXl6EB1~goQ-3=zN-3_v(*G@yR<^-&9IAxJ+XlEr5j_U`qNDA;ACoBj%*}x21A48GEJ9hfzO7B$V-*c>dr+ZtTUW6 zU@YK<`iaobM5{ixYAhGr%Bq8rVj}tPtDK}?8B*p5Qa!Ks1*etuqQnE&!6f>C@a*dl zZj)6v*5I*!UjuWm8cgY3gWl-h+l{_7j#vib3v(4MSV$Nro8ugQOf59u?GV$}is*$U zdWSg<-$0>y@bL|;L`#&*W1y#vXGJTQZl zdpg4^4WqK{!x^W}Wmbh2>koAtH6rMxbVJP4an6j>y?3~P!3@b2g~UgBy&!Mt11Yy8 zM?s@ghuh{hNC~Ieb_qT5>gMahgTIe5CtE*D%fPVy$3^R}_7EY$4g(!(e+Y7l`*8#w-Z-a3f#^f7VVe)#A672}guGtGEnI!MQt8S(uechG@- zbozk{!0^t)r${f3kxrhN6_+g?L>g|1#h^DuBNU{%`6MbwX+5;G=@di=ey~`M+QIVQ-K_$fY%Y5tqNN-8!ij__`4(dt z4=HkAmbsTJsn7^t0eOZ)5y7bT~Y6urx?miidCPir)1;D5% zRw5KbrAP@xnbPF$@H9j5g=^XzrM~nzE<;)ooi@IQUQuD%17N?uyBb<6(o6YK9x}=S zW-i?o9g5^jx?1;%JL4YuC}6qrb@V}Sgg(;Xp5hg2&D32yb#S&G zp$|W$5I^B3%1@Jf^V6hmekwCQ{qLJn4OHoa7Lwi9@tP=OrS?47Y09)nx(solPscok zr7z3$;lXcDcJm<3$MjGeWpo3g()JJl`xLAY2#nEFEEZzLr_1nv#Ft?SRqvMVlhqg9 zWimRE&d#XDcbp|g>Bvba>}rRR$Goi(OWN_pvWDK__`&DG{T*f_9xx1pY^uUonV=xi zXt@$eE6hjtA^@ZsmX)(Sw6?#Ex z7p;yf5p$gg8!V4=XAbQS%esWH+xmv({x`zz?iGetEH0&G?GT$8ywtdvKA4hqb=WSf6mB#`KVxkw{ht&JDRcSa$f z%4Ig@jDW*}qfGG;ATx~Fcr>G$)<&{rrMAIx0T!11>Lkjy+E!8JU08ZVdGNps^ujnI zk}abyf}@alNSvGU~Ruo*?RSh1hx&JZ0u`OR($*GY48mVenCam{D%C=9U9f2tdTjEgEFbJ{gF!X1@w#Oh!yn zqFiruuvA347wn zd@S0K%`wVHlb*kYu}%ox#;!R@iZokFLOK-7I*(mVy~g?D35psc2`3}Em)zw2Ptwo~ zkQk@-J4u65OAXbWNXtPrEoGfChLX9`4fbO)O8}FkxOal+hb}%b_NXg zqbGU>#7oJz%H?72rx`ZM_AmNG*}p!4SlF&-P6(-RtzsN7<_G)1J}>})+z_!YHs1bG zpBN#DB_{Wcet#3p7$b}q*~nX04ke$B4@+6~7+rzrn2t$O3%9^Ip)3%0{m_byuIz6k zJB4^3oVeaxfSzhT0S0q!iU5s~cAkik(Z0SH9;|xOn+(?96Ry|_(Gh>=T)uE~^n2nc zZL97B!}q4{Uma2%5CMJv&`n<<*`|xw@gQ!g!Cu447)N-gG2$}nyyvo4_KAoRM~Cjs zypv*t4tx(CJdPji^ZKM>m5C_96vfCoHo|0 z8En$S(Rv)}smH>L;?OJ_w-rYs9i<8O`}>r{&|oan;IdEb6QztJyIm>YqTl>UAuQ{A zShoY`Fei;B#G~|s$(YIH?26mE@&L-dT zx)@y1unfHi?;wW|WIj13XYcIVdc2Evm!LyY4(o+Mo{@fUN7shf{R?n1mPg0QepM9q zNLSMvVZeHt0{C!L`m&3*z{6=`ZwBZ@aCgc#HW`NwvND8y!I&WSgZyyQ#wma6!uQ}Y zmNx?a|Lqb|>h!gFHF1@DRh6Zj>j|#%Q5p}mF5!ouR$17L#7 z;o2{^{<*6zvnGChov}VX$OVB0;-HLCsTbmR*w(MPTyN8|bHjj}kW`kOUuKK}Nj!gg zwJA^_WQKBlQ{L!We`i|!%JifW_RU>_rZSCNmM3nr87wE);q0UhUH%PS-i=*w)E2B0 zLt9uny=R2aq`ztz3@Qk8AP&*c&q@9+L2u)|>j=7RP>g+k7gluu)h3WIxb0Q@>MnuL zTQ1Lx^}PA&D1BhJ=t)^ezv=4&uNC;-4D4Rn_3_Fs-`Yy=iN};b^!X~@4ODEbgj6~tdS_Fd?-Y(Q zR`>-<#`^??RqngAEjK2x@9W|#2Jf%B{J$c8t&7Fa3BCXEu7$J<$mjZHby;mEvJQTp zwY#j#`zV3z5dQUOS4F+(y}RrDPD8~`8kM~x;HOd8I=$=sMmjMOZyP9RZ~Vf`%Nnzq zHtO`PA^<*T9i#c|6=Q#^uxh9Jsfah!Klmwyz6*2VhjDX5<6 zS{Lij>%wtb>^(I_c7J#JxAe{ zGPf=Fj^K`UI2FgAfEWX&g}q(TBm*qlDM@Ts$NQ5Hy*~q~+9)b@@Me`|5^&iz;*QW; z>zr3Q0mO9~KBn&iyq^&W#L_m0(efrGztVZ={n<$SF-3&dalyl?;8j)7#940PrHh?7 zesPKIiTy6`w-j&L7VbH~*0Xb+B{#-@rqeV3kD;+Kq5K%>RHyw^XYsxtajtYuQ@ZqJ zr@gBa53s;g($3D!s*FTW`&uw~7yVpXYdNIXhC!G%4Oev`%#AbZ9@VfnoK0EyFOpe) zZrDUD2UU3=pyHjMcFK=(o{t+$OEeH7!F%-HL!HjQcUEjPco%jq{}>PAgbD6h=PJ(%d+-?>?1`C=`8I`HE;yA~%;s>VB=dpd=2ixbC74yVXY zQET|SWi)4hA4um-$(UoAj>Vhk{3G?wcRJnr^@XRyo_r3cwK2JBf48$q&Dr1SEPkEj zJ&wi1hr@1qgp{|q=&g_~{)C(lJ+3NVz*)*v`v+NOG=z#9pf9#=>TL1F7;utN22~Re zmS0EVbB*3$=fajO*JKw*y6Z8!-m2nT}_jiU0IIw*qA98W_KX#G~9!&uO zSw%qV(9c-33^1lMW^&TYoy?0jj+b8SEcK}XJdNj)3b=It980J8ykUOIV{`88oL|Sc z4&mlx;o*)sOFR9wodB%S%~?$Mr*(@}o;*vH|MYF^yG5bIwha;|E@EX!->B$ zNJ~4db$p?Nt9JZSvUXZi=1G$&q}9p|&Q5=yZ|%Srr5rbBL8t$jNX}0yIai$kUFXd2 z^v|dFxmGUdK;EGd+?;s|Kv#K;e{QG8&iUtbw&K(+X)dyVT)G;v)~%I(+v)!;f!X*% zwhio)o&H%YA52L+K@VX6;BXE*^n~u<{L?x^!=QXEcr5O;4C4wvN7+(or~eUF6fezC z@*)Q1{QuR7!=4cT%TE69dAMXLaImB#q*?Zhg4|AbEMX?9kV=U@YN+BkJY zb?@$_TP+<8IMMWSW^zPKWZHoxxi$Ew^&k zQV9>$r76%Eo(+D_!~Rive}1QD2$;h%g!AWi22(k#Wx<0bm2=}Er!zR1E5XBEotD8U z8E3C;9RVJlK|ER!0+0Ibod&098Aw^&!ujv$EZsfBlfq3&=-eD*NECx+PS7oQu`zCi zo@*E%GI4%ur^m!CSkX8TP<~5iZ~!-VkEU$4Y}IzMi?(An0QxUs%2u0CzKzOz1if37#KbMZZ}P#=lHmQBkPVsQ?4 z%Hkxix>L|EPD2J8vO8-Mm#aG4Y>Aomwz!P6^pw=}r!7Oympv8>NVWDN_@eCT13`1c z1~myU>ATQ|q>Ou7iC;XKD$^-W`X(elqG7+h_FrM?U!jb9v|l5d<{m3$C?-|qOs>YY zOSL$$#u4y6x>(Avd-5BY-tl*ZgxEU0>@)xdOkA0vtEhM>{lqsA>`2(O+Yn4w`nMDA zhWJVxceFo~`WH^ni`swQ&q9r{p&wbdBc2f!xqNYA?VT0AdDSC~fqhx=*`Dvi&2nP# zqHD~~2<$7NV^Im#{!vJL!=B}6%5q4)>}E6!&YbsUSJ0+2j^_PWhUtTs!h!d*e7<>> zOH=}~!*eSg%SiR}z8l)TGgKE_lTt4&wtKgSgampK1~2v3quMIV*tJXjp6AvIqgvJ< z6ylfqgO5`{1%50mp)Nwt($6CNSXQhh5(|6FC?g^X`E|Ad5+2V zEXtFG?D4KVW23|LAV&;&E({1*kT^5fA!|(caE)`@)Ev~n*|6uy2Gc&Be{~3()dys) z=Umud7Yd#Z+g}I;c8?jS&P{U7OmxgN+LwgJsU2x5*GwF|8JY*9ZcJza{aO~2K6{D~ z{4F6^vlb^h>O)Dez#TGgTKS#-xlphZd2^oAVgIusd>|c=c^us9ec`HWD)`{beD~SK*1U4LpBc17wfjXg?4ASn#6` zl~clB zrLSUHO>>3sV!^VD>qqbv%Pu;99;%P=uRQJ^%=;&RZ&&5Qcv^CgOT!JWL8|fk)+=-- z;RT)x_-10Y#c<&vVX$REgFvR-V$w%Am2==S#Rybhm*(3zJjNbV~uLr zGL2Y|1BMMf5gHcZzaxY=L!USnu{<;6&qQV--WID?@O(6%8TG1O`6#geb-V{q!9_}? ze8n1rSg(r4F<7bcIPR6Dd0jHV&=D_}0nQ%!O$n`#5V#g2(sA ztc?a7LoX!x(iX9J8#NAjY)yT_go?0x|*=rmKaMU?#T)4aHrqmSSUQ{=;rWE(manBc?g5L1bG0PC@ z*zaGKy7!}RbnI|>JCFNzHgDg7d2%{qd2@m%b)DzL+6{9fb&!r6$3PQFDrH^q2@=aV zczbT`geDy7tzKuVEWAu|!%ySo&=9V9W1`RBY#78jc4Jp`&n?_6{Ur5pwJ>1emGV1h z2{B8vhsTr;;0qnZ z=HuR>L?9vdKx}#4!`6l;{=)%Y1>^Jbz14LkHS@Kd;g8%nzO`}TF7-#%oGxKfHlBkgF~+-;@^G~NAjGulI4+PD>v~@UvDx%~iluAq;Q`*#hbEuE2DZvDn0IOM8jemdr%9JM_v#r`3`}q24>q}Pux^C4ncx#7B#HrJab^P5^ zm#r~unQEx#i%M0ig7He*9o#H>zFvE%C3erdcXr5p*M_c=KMk|j9&@B|4S)Y)I|eGB zZ{MZQ9kTn5<9Vvf2`7x7^Zwz-z14&YDU@St2X7pnplu89&`%pwllfS_5VyGe@%it# zr1&ftLv(B>f=&lgn{L6-;WP*Kfm>}#s~NI@7i=)7}&KL=b#FvJ&h_s zJEPu!17gp7-?e$fo<{qYUCmqGZmxK;`JF*u=u>0LEqvie;c4ZI`RVes`Hvf?I~Kbi zF9DyLzCRz>XDDn5b9-!tgTHQmA)&5%X?SpbeKnmCiu7j%lCw@uQXPjl3I4gk&XIg_ z!G&af_2X;Dgp|Drbwir>HSft+39$t~R4!Z7T(Cb-QQur}vNEeS@%%R*p1&*>EDmJ- zF|qBQ53_0#SHD{Eyl6jvtoi*9h2-z@c$bempg1B=_a+I+tA2*vFq&&BDxR+h z%z{ifsa~A)&JfGa1{;(pngh7tAa?Ip$ACpfEVH-pQWLx1HXLttvCDihIjduqEgx$g zc(%q?rPvNmj#f~5ehg32zo0LEH)iVx$Ao>MzpZ&eZ#tzB_V3bo4|JeSUeMRYZry(j zn=hOXsJ7G_w(dIye*m@|=GG?S70(~Pf2=-sZ$kSA$6gT*FBWh_Z$V%YY?S@^&4ERm z9;~-5P9QY69dTQHG3&FBG{*W~&+1wdvt{d8>(0MTimS`0f?cqu{zQ|X%a#^9F`o+h|u6;|h{{FblF`*{S zsz+k>KR6tR6r~TkTxsMge464b*JPg{+6-j@z3)rWw@=)q_k6fkSd25Ki}QXI?%lG( z&~RJzBOg^bHCg$Zg6w7?Icxk%?YZ#g7*7i)Bo|D`!jg3Dsqm!ORvJDLe!?Jfxo`A) zK3T_T9eoe6cRx3Nj%zJ9-TT|+8P0L-)rB z#|yH>8fRH7UpR_ecwD&PPBAU~Bo$7{K?^?+=DJgo7QU5w2z#k6yinsT^2NLMY6~oj zwoW`IED3F0Gf8h+o#=n~*utx!NBzQn<_5T*T6(VUTHciTi?l*$^8MoUDRU+r6DHQ_ zitFRjdA_QUtC=!o(y@S_!x8J#X9}wxj@#fz+8E0h;UoIP`ICKP&cCbjI*&D~j;P=` z*s@XFplXt0APyG(@Ws|(NBHxto4%~^n{pEaLpWhv^%B0SfNLBg#24rH-yG94Gu~6D z*|D`|X7%fQp_7}xk#8N%4W3%|;p#GevfptGr-lcA;fLr7zOi;0R&SP8?L}(@26A&V zxIIgX+SVslN*Z6IeSO`pbl*Le&d1E2Gj{%p4}rn54dMa5ek+Wux~-=Ct2J>I(pVtQ zhyE6RRzGF%vEqGk#6?pn^U#L1Z~<$(sG)V=Nr4Pi@oElyL%zh2f9(!^jdR&f)s`Lh z?I~*-A1wazT3v>Adzjl5hau8lWOq1UoIU3JDwRLn@wCb}->_`H_*;Bx0W8E85hG*E zp|DB+O^vSbtMK5RjSm(!hdB_p@WU`L@YHDLXYvp`z6IiBi>O81J2P=4bM-OWWjS?; z=hd~Q371l9g?MjQI|=GJ)4YoZ)hwT$xp=}fbB%NQgB6qKJ)VEwlUOu}dqp4klgc;M zFk`B?uye*#L(z2Xzs3oLc;9-oquyLpg57;Yj458`mLKU529&OX1Ch9Ts(<}4z7QSo zwk>61X$iOR+sVaQ$O!qzy}ScX`CYMa@#PV}6j@bsALXXgdY0h-hPOYWfz{ix#=ob- z;`GZ>vdIxM9xEAJnPpq#i!FMPGi}4E;Bhmyi746gdv4Vu@E%TE#D)on6?dx%a?R)tgrBoU3h{UR8UdlZ6puu;y4;;+~EhEFwml{JQoiJi@l=X99vv> zxiA#Qv;)rubdW9HXF4Fn>tbsILT1$OI^_JqFX5AA$8(eX@jlftd-l8wDpAO^?%-R~ zInkF~JSbu7uRDa4iaOD{llLtVw?5f{hbob)ST@7^s}Ac9)!_OU^g=wQnuZHM-=4v@ z;&AYEuB}EiS-FEXV)3i7gLjtQTfTf|$1c6~otP|G41aOHqOVO_{=4?tG1BsOv0khl zD?Qjj_d;npySpVX3%^gAMR)0ej%90@_0LQ9Q$^~r7wVAnTPJit`C0GgTMvhY3_P}e z8BV{=l79Dap*A&PSih=&hPm1#pi-L*OiWY1YpxMn5hmnUeI1@C9P(9k__@ME;g$e* zXdT!7WP9P?NdJ28{%KlC*#uL=OOB3;=bac^NcIlVCMr7ej-O8Nwf;0rF+5EAvZW!*dHGTo`HEA2{I!LIAen)5*W3;3|7I%i>pm|QH!`_H!v z=2vvp@ABeY(SNSJI^Q#U*^D`7+pD*Op*HgZT1SPCtuFW~=K5myYh z%O>7C=XiTXrL&?YadwU2S-v)D&ck3O`!CwF=7R+GQ*CrFv>&EBe9ZPQ+h;42Bba6I zf6_j?zPb9{l|lyYaB6~4;?svUH0}R!Vn1Qhmai6_)ouBD(XM{lj&N-f$~3)o`QSzo zCYs;?*AU$>yHFKQuN)=RSabWQ%Xg-`2BsTLG97x4vxQrRr60;DYx+91Vd6gvRUDhX zxHsVAyeg8esjEHSFjl`_3?u%p7~bG^x(beIz%kDpyMln?Glb&Sn zun1`3uqM+(oOD;4_!g1np*C?RktL;_?)OP<_C8+9qIYRr`<4iqf^WxGsknL-TtJFa z0g8}Giv8^6u(To1iFFeTzp2&aYJ?KuwNy=!Z^rDW3^N`v6x?GV+b##&&IQ7?cfoJ< zR=9SAp!e(u*Nz37S>DA|#~M?_3*Mq{C zSP~|zSDO%h%R7k_d!*l%zlv-pz+(Lm=10sOK9&D+TiaLSfqp_f=JhS>DA|Ko0>0Sw z>ZA)kxLCQf{g3qDCE!3g#JqdiG(y$k<5-Ga{WkXtZl>S~-<3QvK)6-VZ%_eRf1v-a z{ubKaw)ovk6ZH%MrTDY)N8%5}huY{!u;MG?U^iaNR-_>@ImRZ@<_V?O^ zlq|VfP>Z=MheM7b{uMs;!m1`LD?>|g(%WsTWh@i>)^$$W(spohVrGpk*8iur+C_P> z<5SkJ_!5Jl4YBnpRf_Ci{(74byE(4O_sQNkYXjzZ6PGNpr68lhHB0Na*PWCCZLPEn zf%-?Ok6ZWywoKJpp7PDtR%l84n3_p6KW6le0m*v?D471-5O_{m?-{1Vi zLv3p@Qd*y_nxtK}qxnGpBf5f}&5Kp_(#gaNGu7TTN6A1{)k!B3FWX2TMOI# zg>7G`#0z4F&tz$OHGNQgBY*gbfL{fvi@C0XwvfOT)1Ldp4xB~r!>kA&o%0M{xhCbd zgkWK@vUw4+S`PIpuG^cMQ#o}#`$k=TP8QlkEuLg zlOS)%4DAbS&1~D9*>*(#BY!qt$P6|Is4(CzrMJNjwFLa0&tDlOLc(LgBvdieaH?>@~{(?nLrs&5U2G zX8c0s`_y^M)43cZ67wz*x%fl8dH4cis_vz?<8+s zdvt@Qad1uiryFBd*OmHI)p-QBZ{NPwm)}#tC>~(VRbk0f?DFMbd6#{)F+2ax#hUtL ztT?TY|7dXLZ{YR1i@aX>KRcM-oIgTHw%!Go*W~PGcw{#7yVRZpuJvG;TlQG9Fr++} zKjh<@A8bB2wYhUZO!1}fO|9QQ9zT8X>J>cyy6>p{ zz6h9&2TZOyv_OHeY`=!ZQ(JBmEon?dxQ?#ysiHCh(qThv25AlOCdSKH`QiBvK62bH zhCOdy^GzUD3EsM9xc=ez(B-iBeDlYSqe5!+2$djAUfJAS-@G@$Hl(7qSxBlL3H*`a z#>OmYxuj~iIMrL4Dz>~?VfiME&H`G%7s>DrZn<1|Ez$;-Orpn34zuvyonQUymZOz3 zRbKJv?vIabO+D%#f>$o}{|E`8sjm`U+PPt1bD9<3bOd}pEJZRMt#pdRYBHuQmINbY z@n%)!6s9#0|Cg?BfotN*8lOy_gi#Z~h=6ToFc1*8 z5Nvr=cS&La(e4Vi_-MN&*dW@vtJD^>beoA=2#WhbYzv_Xlh`QGvKq9CwzdRY1Oz33 z0tyysW39Ejpsn?t|G5*i?)UBApFc8l=iYPAeVu#mdEF#RCw0G%nIcJ_ZTv*4 z2jlpPGHn#@u6QB;-c!$i7Cx~b$Is_`rjz2 z4yXTxenGknqD6RZ_M?A92_}4gNpzj0B51h$+Y6(xxtCOmY&Hyr)&!yhG#yHO+Pu1K zH5^fZEJ+#(eIM?gi@PJM*m16~|0)*hf`!QL}@f+1@-S zF4#gb_sy#Ptx|bc3us8>U4}Yt4`@oJxc^5O5cR z?JnbyH$*FL3EBM{eNu{SjE4}RfD(0E?Y|1Gc^A6;tZ!TZ<#aL(J<<(2HeDd9?^tOr zJOA=75O={63qvpTUoYITmgwLIUb@A19F1K1_Aop{hIJ?n39vapC+MG1s?8Zlzv9i> z=>H4n2~u5n^zSjez zfEF8VnDIGp8_1XoY+K0a$=@f?FO7lC`scgDVs!+5ost1rG`WJ2gj0u z7r^cUg!dp{2j@)Kx550Q!!w>JRZB0V`(FUbES&kW87xb_DZlAdDy*IPhY)hZylu2mgn_Ee_#BRMM3S@#<$=$^In;BU#S7ceR6zajj>hQwBSb{Kh`u+% z)TuW#NNu^2*7j6nhu@q!cglX|@67LZ?mwbFYBR48H(1Kbe)g@mt?)Ir2cD<|l_Ah8 z5Q_mV=h8Y<$8fLX>PRE^#SB#+XZ}@s9b2#VKDDob(y}X6W8;O-TkmVsSUJT9`Nn_V zGZ+o(3nPXV(!7As_1xfm+ZoPW*c^h*`Kkp?nb=&PIXM+o<6V`7Mrs+{TjHUXfod&} z@f6;q0(_UNrYxme!sCP>=86n8WK1OLD2Xvv{6w5!_4tvNCM?hwyRBxc9$nZ#A zJpyRAIXvYbj5IagI!Y0|9X=T|#miOvjG4aSpNfMQnmYn>=KZK)@bUMgX_g*~w93>J zDBe%Cgw0m8rvjW4D!j<*X^sbCtFd88U8^HMgO<@eG%m>>!Yok#ZNy-c!bv415f@Z= z(hVcjYJSFQjEosh|Jz7J=t_U`ZzJi2BT1?1Rx6gV`kh6q>tj2#5wABLm)oac$=g^y zm(Ck8hoaFbw#3sL;F(iwd4m2cJiJqE2`m50h$$4L-sK^~6_tVXx{=D)i!G9NZCxw? z0dp?X>aKXo1`}S%3l9{-ftp-BQmjfU;l(c_bt7@Av1oA0h*cATiSv-W-efg%ec%{X zTr!24%`ue7janaw+8q%P9{>Pi58C-y5t!()0cdzY^4hT@#TzItgfTjX+czP~gYu9IMj#GC821Hr z>ve*_Iz!_ zTVtX|)D^?cuwi!d6nY#zjPSYz`j_#->j_X7!EJ*%0QGGoN784H7{jrp84{g*WO?8; z`>!5n$#B*oc_V+NQ2&bue6>(ulgK^vKh8sKlXy1bZk`Qsgs?`9l%P2Fas7nV5imkA z`U&ZX({F^*VIyKVp9R@3St%=I9N#KUj5p#T)uN>1pytXy>>m7$rX z(L9!|fq+BF$Se-=asan3W4v8T%rbNtnp$Tm3OLnQ+*hoQ+rt#|w~5=s&O5^q9B(c9 zQETBfgxlx=Y4pV zZdvDwuZrEHR!8r!irGEUKkPg^JR(lu?Eg`Yggj@htU)LkOTcNN$thW>R=mS`R=hmu zar=nX@ikPlcjCmbv-4q_6n)mY{36hy*hrpt6LTCNrd?=tIa-IAb#nSNdZtgYf4>}d zd^rp!=9k2c0=k_|V*l!n4m*ww*9&wU z1izS1hZ89DM}_`qirUz|vN0GD$W+OrE4L=qZDlO-yEEk_JFm7A+tKv=n-C1j5Q)Bd z4v=wuGVBe5;}&3a!*FpG@a zytHKNa4w}5HFCC-8nsVGIzIwz8(~tSfr0GFu)D+f!KUBSEoTq+(6MN~STU7O0Owj* zH3=O3>%s-%(txDI)#~lT#0=nFQhAHgp9P&AA=)L9S8UDY6wegK?cphT#pX1%aTs!# zcvoBDiI|b}Ov^4jsbXtc(x$GT)dj;z&$m2_FHPB+v~-iqj#Z`?TX5l8oXi_u6N(qb zOrpZtJ9S&LfyMLVn5|f3&Ro%&`XG{jJ{Kp~4wv50e`$sDe(ta}cbMj)2}cMjITkhH zv%^PTytN{5vq>FSx2c(D^yN^&9D|+QM)_W&S|1yK;=sBFxq{qFJ#T1PnANfKC!Z0Y zWFIV8DKA?XK@)gc_*Qw@rr?pTwc}t?SFyEpbMQaDmj(YMBBq$=;(cd{DVKFkzSup^ zC?8ydf^&*4dQ9qb%JALa8~R$n=4!6b;)O*=9`KBH;mriHc7d)%<}NMP9;1}}{jh;D zm?>m&ip=(m>bPdy{=Em7ld4$gIVF+>>fkaSFbf2M9WRMVDlfbi_O+Ps!=@*J3J~r; zkS~-}3dyKp5FSQI;%p*cs?cPh1&aV0XHkI* zJR9oj1t#GtD9yIldhfjB-g(e|)3?xg3a^AItX2{dZ=a`hoQYr0Q_L66o97>pD8&a} zLWp5>?fFq)DU>GM%$|poqB07dhayA}VFl@7beQ$hdB-Id_ShtB{fAZ(62E0(e+RG+ zJ1;(jtuK2B+w>52qX&%*z(y`FkHS8E-f^0ReR2}E{e3G5iCrx0QvmyGXXiuM_H7Sg zcbpHoWfIka^|E)X437u~&?OD@*XOrU&?KW39TQ4mnI&HbBJTL&JiJz(+i#LMK0gl@ zHL#tc@8>|&iQ3qB-qFb7QU9R-c34SBY+&(l03PR^br11S7$4%X_dL}aViG}(CK0hH zQVBp!ev@XEe$a=A#smEK&pX~{;g>&vUu-2I(agfH0{H#TvftnrK7{{2kH9ZH@(@1j zP4o!-x6eDavG6xPfKOXV(|N}h7XIG>ewVZ0H~4QpgrEO^`Y{moOBFGt5zf_3R*Vir z5J5+G-Q#$T?Zi&hiLXA=iJfhzi`jO*aNh9(i^p;=9^v)^D+!4!SUg@iPg(t(nde8u z5gc|yUjG0O%(~>fW7T=!@L&>yQiq2963yda+21+(O;$(hdA1lUXAM%UvnHd{Dv(&= z>JUYbrxCC2xBuHiEKG`pNK4gQ-D4mk0_z0~bN6}Lke>?%1~lmKsQBJ9mkVl6G$zsK z9Sc}oqbB>zz1~Vf;#`C)WqW?&>GRGx5BtoW{Q%cPT8aKuD>?7HgE}7}rEHnNz^GN{ z!MPANA-AHI?mWk?DJ5P$7j>8k&x(}-TNv$?Gyq}ID{2A1tAH1*dEyrRr*jp4WO#y} z{>M;QUf>O5B)xqoOf~I>Mna^59dnfE28Gk6AtWM)pRkNyLPR&R$H8(LPFcheILlS| zjfE%p6Bd~D6@CNs^F!eYF8bA>wrd_@2ySuk`)Y|OJmE{@M;JOBhipbkj_?FkNCKTb zRN=P=%7)COpM%E_>D5s7efsHh;F%J#(zv^$!mpUVdoDbIHts#$cEJ;JWQnrEj3*C! z!V_d67QzHCU}FmKkKlp<50Tn-#uG9GsG;;e&yv)NCS2h1(2Its)-l2dcI%?<$#%1t zJsFdd+v?A-$j84LvcgpPd__U-ResbsX(E(?o0+@Ee6MILzqScU~XjKw3h9P z$>v@UPnb$4LC0O8e+QM^1VP4RpA12R!xQ>wzagLjAqB;LuY||P(7bbDO<#s^Avgu` z?GjO(-vN3YicJW<^Mpjuv!M@cv~;LKRZV|+j%vLEHbf!K#ePqR$4f#i6@F2uBkB36 zgr-P?cB$1Ql)Entaw1Vj_&7VR})yglfC(F*2K$XxeTfI==%C zX)RVw57|sUIaJXMr_7(on4udG4B(@4v&KV)Nb9+Zz+cF@L#)yX@`pgk+J{!V_CHzO z_iEBVJcoQ>-S=zMRp%n-WplC2J-m?P;jt@2@?&NWc=7bV)Xm5_4{_?dt!*%Rb-gzEYF^CvSiKSOabS-rI7BqXsY)10H4}g1HFk zHIxVgQ#9DHz)J~N@jWzNe+4Q*YgK=#hWrD9gX_PqiTV9G4VN5Vs9ta`H2_cn8C@e! z!*JZ+c{Ezm{w=EL5)=el108Tk6Y37PI_90DnA;OE=bWl@a4rF(H$(>&vmVeEOfg!c z4u={5p5kJSRdH@k(}z3Rix<;P*t&Z=8DC?~W z_mK13A?Q9h&Wr$8uki79U;5CH>~$Zb0yDSbAR{O<8K4?48Z#*vlQgAyhI^XT(GLLb zMsOz141xYz?Cc*({=O3l zHD(2N5{W+{HyE+`B^i`-l6OQ{AXJ2`2+s353<5GA(olMy)v;%YviVNb4>>=2q~Z2k z411u(utT9C3f$_bhFk=6%tY-F^bO1|XUz~Y_rgLfKhtR&d4i|p=gmuG^ z<874o+Jm&!!S;KMV>RYV}%?Zu8La0SHXZQ@rDe%xMlA;db*ulO{xU06*040qHuDtt#I3$a4(MPqAM) z=xY(;H^DEe!!xL9r$A8P*W=>BwqEb7?o|BDIP^m*+dn7P4>|ubgwC=o1Mvf+bj})I z;iqEmE-l*>{k%kjPm#H~`U%Fd5}FY|@yd{M#Sr2)pfk{M`4VIQH{-~FZ~G=*7;?S_ zpuD_@%8J{+V-lRm>#=GcQ4|*@ApDb-ZLR)Pf0c10LxBX;Crcmn$sdQnjTXbQaU$~r zj{XYcSO8fPQI-^x1?E=D5HK1U6n_lIGIUe&aAoEnag*z%sfJ}+Wp<7%pX0v7IHIA{ z0+^49-ud|S5bU33opek$)m~eZJ{!#!FwkadoKFrBLD0dfC^^I0&8S|Jn@MTBX3o&% zi^6a5wzsgJ1=7U%kfqMwF=uGMmxB7oR1N~Tj)`8KvZl!)teVT3D$Ikj4qVsn$yxC;|iYR+F(}J zdmD13;3)xWR!CdPgFl)`IfOW8>(H!|uUgczP@0yOjYpy~0rVv(!|Tc67#@}h=;=Yl zRs@W$=eWKZq`w*LIU~s$LGXqG&I7Fy3)@K%41ujyNu)Gyro^X z=)a=Yui#De47Pl&9{)v>cLP+Ubfw`GWxz~a`cn`bMy~A z7=6f+Iz3A8=vV&bi>Tm6^l78vFVc&JgQMR`vi^m@{V^*D3Z%W zxW0yQz_YDuB4W@vXAlVGWM2DDrtmh%%V^#pc-}sKuV}&p@<@%22fU2pL&m`wq;}t* zczn?58Gu5Fj3NqK#u!1qhFnq7e;LT;%fmBCeI?`gWq{i4nFttk1^_Z%l55`qS-Gr` zRVNu7&693P&gDT$=8Ze^7sIyR$kg+8h%>iv^zSha_kdFbC0TZ98mt&I_Ym`s35cMQbVXCODSbpxpKAhnb6xH+fxEd{ePdwDE4hM# zqOKFN-Js6_C4nNT+Lj~IO$;;&!1hP6*`nghKiRF}gZPevSeaNW(o;PnCq!9$sZvIitJe8nPxDZS_`kL%lkR+4A^c3|nJa*#!VS-9-Vorh=QLmE)&M@^-!Q<;`D&?^Z@KClM?JLOyM;F zd)l@s1t7Q7U$4#yk|}XwN?kTY4%M)ZefoxK;MI`vzEH-!Z8tEE4+flHpfQ380M#nq zWWbyko!2wJ<=FqmIQ{`uHBTHKa2^KS5MKl~f3JH{JERHL7c!0_$Z-U1ZvPyZWGsvW z;E;!@Z3BS1VW9yuE15jpy_s>m1zC?yd^F&+KA06Slz#=h+hD(>HxA69Od{YKSW!kD zuH3}bDTc=k4N`Y8Q@?3A&He`CSU2GOU|>?3{wh-hF#;g+&3h3aMI4OyD)}6ueIR26 z-e@HaY@t1mar_zT{BdI2fb*rv&V>f7dC<4%n+Ha-rCHA#G89;*0=NGa_J7EKb>eRW z&H~i8lP!MbVc%ved@_qT?$;PcDrEc#wfpq}mS4;pfWtohhk-ffToF=3<-qF871Zeo zVd0$;tEGH1=nxc&bJdmaH@^WpS2wSbyZDzer({Gh>Vs9PTc_h?3tOsUo8MUUX~Ned zLO4gfW~rQRvQ~VsFiWQfH8C>STk45_V>3VDdBT6KLiG&ThY`W{r#+P*U^PE8CES9y zb$DzF0pcY4s_XP4IJk@8itW{cuRK`1D78E{FfA4l3V%i;ty&nZ;=@KMiIt`$BTB*B zJbm-mdCw4SKcKaINb{Ke&#?LjDEsdw<_|ch{5Jl}yxo_1oTGn{aR?yC6R00z(f9*% zqZ&Y>Es(2BuTkGQ%bxgTHT2YhQ8Vb~%6~mOhpO~Jqm1@(CAbm8PXwZsN;R1BcKK0O zOs;H=;3}kWw$KN_*#c=Y5xdo+T^TJq%z>W&S33nizj~K08Qkoz$nHE8i}}|nfgC54&H#1 z4|&0#1s%VhVdiqts#1|ie-FzF7}j6(LEft8W$_C4qUdp%~1N3S%tSb>ZeAakyEV@1Uo8P=g7c);e zv97!av>Lc_))eo15B>RBu$xTv%ba~bo*Lc_KDJy?oY=rLlP`FMA3Wd>~9bXMdtJF(#h7^s}+Jr)L)a%zPBh zwD9)Nhr~szN5J;SeZ_;g?p2?Ggsxr(^O+}@jN1S)sFv9FdFWkdq5oNZm>OXz*U0tX zfu(PF)ztV+Fn{iWPyno?9{8YxUI(9|!U^z*0GS)X4O50Hq8V?RWBXZevUA&6c2j(U zodF7_@VfpLC^r?Xw2F@gE9No|`YeS{b<&V6f^(0@ZfQAzzw1~hX(Az|%+ zjp*{TG9#$rU{~)*uQ6S z6z1}KEYaZ3YoOI&ZlZs)YSIoL>~TK^Qzf9g#@TU&K6&lnbteH|(fpROoano)clT_e zqi?=p7EOyb{9=H40RQ2N`9DO%={;^H=Wdv+3EOZ&4!TCb!@U%vX2%htEqQsb#35VE zIvz2rp{`p9pCSCl4lzVWV`ZJnvzgC(j5;5)PNWE69ARfGX{Q33ZsB+vZwKqG@*Lg!P!~kZePa1KkF2ng`G6%XOP?= zc89|VAXosLX+d){=()SjDCCE5iw}^Qd+xeLjN{fBO2~KKJ_9FKsdpLyy}4hD=6lFi z)tWeVo8|~E19r%&3fhr@2Uq`+LB%0Uy3th)#H=U+EdT7^dR`J=y#nbOU&}MH{A!9_4u{0I3>Qwdixs1R7Zxb zbS9MFaz!{Y+Ctu*22?}951&mb1>teHARDVJ&s<9=?$tUv&o~EIP|!~IwOY79te4?{ z7dsz(EbZq2%bdTQ=t(O<8_58;&Q6>$MK+nRpr)a%ThEzc4LenL__wt`%@FOj%y4AuG=$ zpZ93K!WHASaQI8gF*x2kb2Hib;e&SR-L+^V+YtS;8Fb4*ri;;4JImr*DxDbIz8kw* zW)U3YLUR>gf&Xo0n!x^Jt>f=!oMos!&SZ-()&frke(V@%$BD9I29vnX7bJ*v&JwZ7 zT79|9@ZNA`+3}V->uA?%z6so zwcYZdF>}d1En7U-a^gUCQt!cxq)%ob7q$M|S}40Q=Zq{A+o(U|c=?Qx6gk(PfvK6N z<3+?ofYPzV+aHOFfm;1xPaY|<>856?CRC)ai4I;^!Y!D-ICe`xf@AyhZGS^+2<%>% ze-omWS8MMh9K-2a*;ce0>W8q*Rrg_`m7vwu59<%%z_I?jU;lBX?qB^Y z1hTJzfwunGum5Kyiy?H@b<`D(lf7fkf?j7K2;unl^{@kE21)bC$76C)*3*6 zfdJp-FKT)g2b;5(aKUMha2>ye-Paha8k9j;>3M5oznPSQ@Y%YdZ?C15m$i%w;vEsAvijCLolEfliBcQ;PXF?jCE^R`64r&g(9=P5J=xD41t zkp)v}gZ-Xo0R%9#H`KCx6ViQ+@E>Wvt+q}>S@F2U;8i;*E3YEazd4=~DUKef6LqzA z`yS&d+E~s6kR$)lZ^FT`w7BZuKph4w$*esrRF>I8~v|7hKUJR%BKeWqoV0Ts<**2o9E9#zeYWgUuVAgo?5e0qF zWmIB^lp%^&YsY4DdPDh;^^-npC6@wm$HYI1Vv^P%)b6OHh?ii&#Svla^?GP7 zewCYULg4xKpk4I4eY-?pZ=X4afhkpVf}xSWmg^4M1*hoa9Ai5#XX{1K1Gs1Iq9AYw z9L}Jg2Qczk7<$<*`py3W!!G+@FznMGfdQ_q3cvegZlCiz7ve4FfIws^(wlCpiFu_D zEKs;8)z`hLhFH+eMZyuqChupM3A>PP75estKE!|A@Pur$@46FG8u9{!&RB;!6cRqX zpH_i6(9O$kaZxu^OQ+eHp6o zgBnuP2XYKpSY61&hf3u^iMxods@3cm=>@yUL_k^b4k~0qe|FZSKiQ|`L!`01MxH_d z9Rcy~LtPXc&-^%wlv*&!b;kBtWBX_lp^I{6whD5&vJbe5XKHm(eUQO5x6k^!zHR{> zh_V!Ls|W1b+P4uwEvU9fRsSTmhWCx&S#9!TLRx~d*zfR^d{KMA0|pL-D2l%N;w91wX*rsdcZ*jC-^wQ~DV;O8Gv7BDDR z%&kcN!b=C#zw{!d77s+1=|A-Xcc078%=8ICeET13>-k*`>?fFKsJookd$ZSJ)H;qT zO?2|gh~StYBuH`iPHB)nu9n!M|JOZoq?efGe9i?%kGMSwdR?)mCYPTp+utV5VjXYR zb%FeBRttFE_`=kR=MxK7_!GhVzm_g#Kdt0o|2<^|h8uWJ!z{vGaMt+YvET$E;1;jM^OV#S5y&1EyuJ_>__Zj<3kcj$k0DrL7K{%2Y zgd?D?7_O$vdx3s+nV^{?UL5u5)e?u?-R;S2Ks)<+Nae$kpRL{q@B$U5!MsX;4#5My z3Ff;SY>rss4X}6MKe{57m9K{%oI<9#)Z2R_m0->H+s!n5pc_* zsM0(xFL$?DhxO_>GzU$pO3t9voHivdZEEwfl|hRlcZi3?YgYw-T>hOa6(2n+ZTKu{ zQE$s<(u_}L!UN&6e9ly>`!w@$)BZ1Gm_6kFs+J^6uQ`=a`l-0HBT_+_1h-SfCgg&z z?8@Hci%|Wg**KgXVWg7TIAoQ6bb2r0S8SO|Ki_MJHNao6Jq4BxoRH8|MSbJl;}jr| zVk13x_ctGG+$fcs3}99OyC$VX6C3i{h5suZ8MH&XLhv8yh#Z>?N+nCj%s58J_gaNL z)g7=Cpcvvv{WBRuoJf1{I&1v@el0u-ye>OWpbk>m%fgEZ?}f>$sOK?;*`<|U;b7ww zyH72IVnQag%6kuZ8KASXdi9qoyf|8edhI{3&pI$~TOu$leJ%|GIWEmBOgua|j=5lw-h^Os!&^WQ17}(=WqMZJ)euE&Zvw;jRD>T2 z%?3D6&cy`}e5)tl6CS*Sk)(|YQB>V4^UmFnPPgrz!W-5a`OhVA7Vy*`xpoPXR@<_) zElFzix`j!L)xirFNjLOtTEaV|5)!-{MqC57eg}iVKFCq!a#p#}aRY~#gtlQ@p-x4#FPG36(J%{Yhu2Og<8R^-=qg8b=^I37n6)iW)qGu;>6-hqfI;8&ngCgTA8?hYp^C*%1vlsnaZ=15X9d zvtSs=U80mdxS-A>sDbP-hv}&<0@=AiJOIK)TwxJ-K;+n$!XU5t7-ZnPtbEko-)>eY z$I*KoGCOCywrr@!l%n#~p5Lt8*|k!Bs|UWAd@>6>?7REEhyJAp^kyJ9PtqEqO)V)q zgVoo1R1635QLkX+cu&`K^53Wwa$*Ai-^5CIuJ>6S>y<|XeZTFYFZYyx$L3-6Up`L1m$xh_U!9Z>|_jG94FsK-|UEZ-5C8@#fuiHKUc%s-2ZST?xUa zw%cC(fMI!!NB8%jAg#LryS+PMQ)%|%a0GC85ZhF72As_&X_)z|`%%DOck||QA*S(X zBH)PUijsv8_xnA`*>hObAS5tM77^TrMhdy!8|>iH!H$Dh-etezrE4JPgOeCVPLH$u z#;iWIbZ2zgO3;?iHIf0u@4?X1NXk_EzKM>PEXghQ7cE&q{H}N>3@`X@La=zFGr$Pu z)jI5+pqn?sx6j6xY~CTR*oh0*tXi^mT|vdpNU#}I9q$?LbH04a_3|ljqTm~KBHDs> zeG^@}j_}V~-IARR;|qngiZ!8S7s+77O%m2q{;-lC6*E`D*Umst(Hu!C6OGrF@WdS6VL znPe<25PGhvVH|=1?{4vJhX~=eC0N|tA!GY}b4N5d-Of?L>DnxUm@#H8c=qn%9*!SR z=3>}K20d8^KUdX8-)0fR9C;&DLs7&L#P}Cwqzy2f<%RJe&GRdJLrF zx|p8Ii-lhjapSino3*#NgfLlyH9K?t&HKKAu(mk@0gsnq3jEQh9XHGHX_Q8zIni6M0dHx)tfO|wMT;m`7mH@_{2rT}XM=1B3TDIkH);6t{ z`1n#NB&YI;a)Q$3TWYBL`3Z5EGPR zSe?_%==Ubz$+?)*((S73wuSmNh5FO|X!2xM@tuRGiCM?c-6G(&AVV9hOG6VA^L z#e_MB1}EBGAX~!OPnCqwcs!_001F-K1|=Z+07DGlV2Hx!+S@HI*Ck<(b7;9#rx@UexD#q#iD4Wr$&OOA#M? zfaoLbK3`PpVe8!1_Gq0|zt#CjW<2>lz?`j9WXNBZTV81`%W2t=)3Qc+x~Lo`6)~$@ za47;8=Ds!A@2Jm;AMGGW09!q0Shq{@U@WuHSbknLSRUNwJ0g%^Bf{3>ODD^RLHV~l zMQR{?t{s>u%{|xS+ehchw(Cu zJHQ}>=HoMSV?pNz%?a-Zj|!G%0k0ogpoPY6<{7!#QYEnYyaMj>HT(kJ9C$Qwi8Vm9 z#*WYYV5 z@Crgr+Wa~mD5SS6B!nuM-dqfZ03w7>mMag=&wuagq?#T0TOhZ2%wNpMwQy5R@(!#x zE-a5(ogbK495+SQ9R6Z4x5{d-mF@J^U zq9{n*fC@Z=wOQf$4R}rthlc``Q;QW-gW_bA`tCa$-BN*Kl~JwfWQz-y#w-YM-$lI#t92(Nz?z6M5ch z)GOAeQ+e8Fn!^gXi?`>m5tM|5lot75=x5EE$BU!*CbkWSqqtG2C2aq&os%8N*8l(g zo+}cr0cR<1Eg_<=q5^KyzHj#DOE$yClc&`-`yUDY;6uQq@bi{@31HF{_O?&;$8Y;2 zW7v9M!=bVLM-AYfns>s}l!6%!wH6<`oMQ^e`HZ*xbr{g1Bay#gWzVy(gzxQo0l3I!O6D1 zIG6AH95HqIA@SHhcVGEVV|_`p8c*eB>@|SRGa*>S)f^95B<+SBeQnH3g0&B6C+z1DVj z{Nt^%hG}h6u$&M?a9~*z;=Lct+WUS`F4w#lD?22q2*%qIFa#_|vX)E81i_fC?Oqde z?=Wn>Pe34%tgKDRv#_u*eR34UYt4D3C=%Kh_NJ~#2}o94LCtMy^dh;EZ1V%U!ELf* z`;SV1G5a-`|Eu^d*{7n4E22trk-F^pmX$GH#LZSi8AK=N!nF*1*q7%g^DrU`<}mRT z%uI}U6V@D2WLyXl+f1RprV^mui0?AZfae)|0>vgFyb6;Mi((ATs^fH|59xl`cuWXW zyghwTcX?x1VqIuv!*J;@Ca&$D9tHwHbK77UgP)jh*NrGD87lQ%NQJ)K!~^|Uw{R54 zlv-aZLaUUfsN96C=r5RW(T#$vq)RP3c%!46ZaftV;wSj$Yibf<*Fs;e+eJ-OWCoImf)d0fE% z@A)dFDG6@Dc~7p^_wP`%Z_Zk6_P%ejUX{R9{($$a2w0Wu(3jz44{Z=&xmwLv_kDAq zQIHKG=}qN^h=AeGOrDy(5QfLN2ZR2weT40;^fi%7+gp}bJ|-YA%uI4+7F)q(>j)PH}Vt;tXT@xwlbhn0CU9xs*d}T@8XIX z>jV}m#8dN9pfv7w6YtKux-}4-EeUhf{D`UIViOrSH=cY5wU3A2)wcS;0^%Y%8hH` z3V_lkQ+8JYu!;2DPRQF#fyr&JGn)9HZlHEQfcO0^k`6*pSh<`POGtlE(mhrM;Tg7> z)^(-QKe1&)C(Hf`9m6Nf`aUeHh814=G>}k_$16~?f3eGZM%G`b+6#`cF_?<-ksaV_ zLb(Jt?!BO7A1v{+X5Tg()68Md`Je4dIw;Td^(>AxQa(*eZqBzC;3#->SG?H^*?weK z6UCRkfHJ$A;n~OgtU%9Gz0dl?yPB`b7Q-3Reh5+}rLQ)!A!wcQ%Dm>_`0p_&CK2%HFgqKD+dKJY0%8%7u%OopytvKmm3H{;pN6u8N@NjIB*^(5q@wVmaf&L(npiPPeGR-8ab9gZ3#EK1r2 zTlrH{DvmxWyAlr;D7xuz2FwqdQXJ$L)=9#3$GYhdWf8Vn-E_o12O4$LgR|Gt6wc|g z2?l`2r6OoB!@wvKM}0ZH-uZ*8$QJ}6@#zsxa_7m6k7DJq5~Xex#5Lu};qG;p zfQQAb>`HJ6a4h}f&cYijU2C0j-{HyMg6A6fLx+Jvd4QH;N;)`WC2HRqzw2Fo$>(w6 zaWGI9nsxr0CteZ~l|(5_d<OQmtbo`aGNnj_VJUN_{)Q`H%Ef};tC%Yqt&ncmYyfljjTyq^K9K(9SjbQpeZgV#m^_IpYTmFOVGsfMdUAd z4*Ln8gt%%x4~7eBGFwnhDSp?@(D+h=a$= zZ2JRl{q&^!Dqa);)x#B9W>OCE33StoL7A9{7ySX|Cq+u+vs)-#Ko|cdLES_MPJe;c zcfIq7i`Xd-)2`XQK-Kzd&sJ&7?vvYM+qr}O^!q5o4soNhWdm>i7n30xJjrZ_xA_dh3l;FiUlcITk0PS7l)-+53% z;D<*oH$2MggR(Xh#13kC zZFijVahSJt&ZI>xJ+r0iH%>OYA{Vyv1_S64R89c)!%$WZpg zor_$8kZ7PHTx9CWc4wjrI)~frPsgL|1JaAs$--*{ z_Xk&m6K*gpQezO5>?9#N3Sf-zz5v5yy;J4#EY!}e8)LlfMA)(8$)bXw0?M)sBIJ7b z?kNx3*cJveCxjcVk^tmVt(jS8*7>2LF$$=Gm?6yeWr0Y%?Sa;8kIgjRFHN=Sh$h_> zii9f;cm*yM^Xi7#c6n&a9>0000`L+man9FazTn#C+nh`Fh`c z^C$S2Zf5k8Ed;+}Z{&uREg`oc-0<>8n zGjS7yXe0d+<2U?W8*S3=34~*Piy^kfu&@P8L-)*#th;zj(Cwp`jxg!$KPGO6jZcr` zJK$ceKC}tKBDRlkVELA8yac-|8L%fXGMNu5D4~s<3T(YQ7}^7Nvu#>fUae$c6FCh& zC?vQ|H%)f*^d5hSHwB{NDQ4o(SzAu+37Epx%2Ncg?eA`%V7FTZxFE^4byX%p%zf1{ z6#2`nlj-I7*-qXVDNA)G{a&7_{X@*lohw{$BUSQkEXL5O-q8u}n{o5-q8nIzM%U|b zt>>jsh*bnOW;}5YW5?viP5{wm_`Fm3efU`q@sN}&KlPnMSjmhp@z8i1r#@beT zz-3q+)meBmEml3Jv&5OCl`nD$V4o;`H~(F{?KlQ(F5ok>&bhY)7qozlyR4ODmsRyY z^m-2>qc##cR!YB!COcZ3MTao^>PNpUM_-&5Pq;<_xg#z*1ifdb%}Gu~+F!&JKZ!es zPPq1+09T!te7)Z<1#MK3veMVpeJ9e*?L`7C-r2P?2Jeh378k)u5X=A=Nm0Uc2VnWvWK@g{V>c})US%Q*(65sQUX*e;aqrjg< zr3=-NR0bK^MqtjvCtTuAHlqM#)Q~cix2r#<=7dcb6#X>h4hE(Ko||;R8Zsz@45m4q zhByiB*I5iCl>)jh0W*H1?lGF%Y1Tcyt+>Qh=`uNw`80~gbYZ{>!8A7OW-F%P>=uMh zLqB#vRj?<))E@Ea7STSa>hh}{>GwNW61qq-Muq|Jl=A5;6)9D_I#PCufH>rEaY4y_ z>#2^y`}M9LoNY@n^_7mJ3t{-!O%&Fe%p}uN{i)bTIDU;-gQA4he1 z!CneVWWUh=LTO##DoS7WV&rZ7E%nRL_>iQ<(Hh;XHpG#^Ta#{>SW?zbmdpG+J8idY$ z9j=`n-W~ri`m!e|02UzpbMEPI)pyVal=wjqpI!eIoaTwTi|!9Nh&t%mAKd*uC;6lM zfTrIk2h_Vd2%w^mXXqXS50NHvN-OzTFZnpV83AF(tUC6et>lMgoS>q13vXC(fz9Ks7J~u#wW`h z!}W96MY|s0(TS)b)kn$EHtU}{!nr>B5RW`EIvHg9_FyP2meo(eeEJa_6Hwwq9G^mOlQ`aLS2MricoS`)|AFJrC)6fNunx zG=t_Ci-6Wf9a>}I!TTKJYuCcxmCwh+XQDGCCBm|qZ?Y)Ki$!bva6vezr8yydV>|9D zXzL1c%{#I5SnJZcV@JSDC4v)DJJ+}H1~H?xqlc(D@kKyu$CoGmz;Es7fKx?lN9~C} zJlWb&zx-}FN`rt`tKL-V>l>fIYlDDQzuX|~a9?fa8#jn|iw2Pp8O9Hd zH*4wr6ATM`W=D4E7MO}KSJ7_l^}1p05)>zXOSfNnB>&ea9WvWX-e*nmz+T*OvOVfW zFcf|$ile?@^{_xBn1=1}o$Hfi9t&=+DmVLJM|b;nnwMZn=GK&^?||n@ z1I^<9>+I_Tn!2)m&&fC8poEVU2(3vF2o&Z8a7se8LjW;AeHU;*aP$qqg27wwRi`ty zUcEPo77s|L5I;!JzDXF-KxIZ~Yf%IfKtu*+zKBgtRn?u3VM0XC=nnlU%xM)kbo=mhoQFnjMW54#* z1Ud#bV{ zUkblr*r0;TrXzPMdMzf?%xG@~YdPYW>0n)RjvTq;aNK$D;K*;?_ve`0Gt)gGl;f;vIt5=TR^o8U+vgPg?W67w*nkGTKtKea)-w;A)A@Oe$yj6qq$7Sa63k6Z zWw5EeQG&{0y8BdE>R=ed*aFXU8y$BhOm{{*OdaltiJ3;z%mnLpG^VrwtLafOth_F; zAg!P`y?gx1d`V)whSRW`l;#t(4m^w}heg5!6qvJ@)C!V#k` zfv3B6dKDL|41h$&!UVTCf*I74Qm98PibM#E^t!SlPsgdr_ETijkYxxdHiVi#JB>cR zG+L}s8RAFabwQDsz_01TneuavB7P)6l>1lYfnC&DMd)o0FZe3)a5>dNw>u&4+J83X z%xP@t4JE^kX~7lCb4M9FUu5NNrNYBTU3n@$qGWN{b=F^Y5o7h5l{QH2Lb`k4*AM z%x8Shypc)Xi1|8sUJ9*r?8ii8gnFovNovIGCgG14_rLgK9r=meO!*?MIW@WFRJ#GN z8JQ^hUGn){3+*zP@A=Y!(VO>^r-po+A<%9&Fkxke=+!vNEKmDE$_J+>7EAKe24bkQ zF<2Nwutu6&d|8ZAfhCNf+)!zFCKo&j(n7;C8VL?*fmViVpVWHN+r=kqPF64fb2nAf0qLk}A6zw^)ihxLa{0iCgZ&&9b>} zL$neH1YD&sAvkQCuSG0mBJF1ThGfVUrGg+>u8?58feES4k?qdI7kR=m9JUdDwe0Ga zJK9@$<~(FlY>?KXeMWQ5hGaomGsDXZXL1lC>pd0@IZx$KSWozx?&(fp8;@@98XKM5 ze;Q-o+2MTqbXCEARWsXV+W>^r&zO+r_i?anS43xcMg}#&8&Thk;Q_BlxDwip;_V6IGI;mq4S$sH7szX-1F>h9G<;c!Ym8mR1hX<~Z_Iy;`2BQ|v4$UGQx~ZmWUUZQ$du zD6Qf7Cf?Z4^9cm{_iOHPxinL6S%OCFUcQ|irx z&fqu({RZ&hLh@xqcfQChB2S*9LzDW`=6Ld~SaSMH@o^>GQkBlyiUhe+*=bMH{s^fxB5an?I43&zb%U5b#NWv8&Y( zwl=5R5T0d->?v~Tl*6>YT-3oFO`?!V>e8X2=6j?#)Mr2uW*JeRRfJn|F|{$V2YvN8 z{;G5HP?z?Uum5h6AVfqgbFc67=yR2d$oRdS;S9>NerS?L^TWCo;p;f&KJwl3&qI?B zhfy2Ug%H}@Lqf^;$-UskUj2RYT1Kji2>G$3uI3pMwoYumO@96L>?x`oR-4EDX)6~~ z$BJYn%dG~BBG6MjG}$)nFEmqSG7mhN$UH>eKw{hl`)lo7GSp=sUdT5ee<~hJ-uC8G zkYOkD0<$W4)N<*J;58aj^qwM5#?a*NhRt;(4yid1+aPWXNmYa<=(I(cwx4KdEXc!p zYA-iLv2%E0fh0p|3t>6-CZ$4(DQ6C>Iaf?oB*^y;0F_IxTf4ffs78nTcFl&;ZEBBl zX!0mpAnIu{uP0^rM%oADNxxwc?_9?ZhWo)<&o|A^vU>8xe3<+Pk=lJJ@KqLLHjrmR zFvP@i1B#hQNLDr$qV(NAC11>&AI0}|@fPxSEh>&=@9UmLB%riqsqk9J@B-S{wPdek zAzzkOoJ$d@jmEHWPcAm9k4W@!F+6aU6z5R6379XQ>A^|!@FI@+M_6U@ZT(ln^Jw;#bVOjgdM!bwR75mXDi5S3reU_JBnwxALuV<1Ri5EMP^MTB9GJZ% zR*<>a4em@;5^qvCSIIt8q!bu_wzwN2J}97^PhLEQrLgrz?!s@exr*U+4>AK|9Ed=F z*I~XlfZ+;jQw|o+3zVv>tjoB8)vYa&DNQC``DB856*P1giEU<=Gtl10v+JsscrByq z_6;s4(Nuo6?FuF$?kX`-+CD{Tt_<5P@YAsleCJGkOnB=%#Jom`xK=|{)h?>%Dww~@ z-1x4%$Ahm>=O1fXXm5^KdQiF?x*dCuQjpnt0Immb;WzIdjLgEY8UW%5$)V~GR38tc z3n&0cdM%1~Gec-pEZn;$Vy5wFe zD$jVq z+S2Z98}m0M>gEmj`vqULb*-_77!9)O8pA?qWgaygKrOTp#v=%b~as)hT zVL&ZKRm90F2fP*m)g18^>4n&>)c(~CZ>EO}NMowD5Ltw9>fb2jpf$|S(9I}PK=_6V z8sjpJHXv1zcsMPAJ1nGhFP$n@B<6J~7M*GcA7;K0a4E%$rz){e?`n_=MBk{oe0Sv| zS->7pzp3aGpLVUpNP@YSTAedGT3Oec4TMGaDP53fM2jIMnpO#3+;M zb;6&weU433@V7@_`{tb1T(!^HA6d|!i_1HFV(r|5v_9@>&27hvZgr|cn{{X(R1CDm zvu9+v={4oZ1i+pcd%RX)8M#945tJjpLde}pydSGYKGunBan;euq8%;z5lK%9ggsY>kbIRmzUAk*5Bo){kZPNOU11$99Tlt- zF64mvvTCG{kGdCo2Ok)|qikC_oh+;~VD`&4;rmtrQdQmdmOl8_m#5G?M)JIre`zDK z+>|UNd2B+Q*lBNRz84%bM6$lveWgS~&WB7y8NF3dM_Yu{%7EqwVXI?(vha}YUoAp9 z=~#0_VA2IyJi|2G0#O{pAS)*N`S?~2b*3x!3vb}XiHX;ucaC&fMyEgOmDC1-uUt7V zsefylm2^N;b6TcE)Vj%I&H+PU>~+NNaUumfInwn}@1Gi?O{R+al3FB67A8Prp<$rR z05=h<3wLc3oI+?tygN|YL+8>|_wQ(ORc5){s^G-t6W}i#QjZUjL+Z!Fzoe9-VefG6 z(@YQqRaD@PR)_TudTj?3}_?^e;K7a9xN zu3_X}Qr+e&MaNwz7iqVX8L1L`(r>vW78}p8Ijh2vs3I%#X+i1g)q7gS5b^w|vu9qzud!4{r zutlZkAEJ1$w<#?|w{Uozz+D+IT!tm$l($qvOOt4S)nkwQ8cq6_iEz(0+ZJ%ToW~?I zvczg1E%UxQuymQMjk3p1DrsHo%Et<-+U1xi6v$ zObD@3F$3V{c91IDG8jg1G2sZsC5jUZWF74yK?F5mqzc#%HD9nXJCs>Hp)Q52*J@y5 z<4`G^2j{#*-|*S)OcHLLz29}zO(L54M;;6fLdv%1eIsO%2)cK!0u~IbJsWPl zquL`-Y;}S{#S2ufvHrLsRzdt3uzC@ks6awe>CCJSuCVUPokQ8On_I&e8R^~MdR6mf zB~0Y<)|lKqUaF!Z2gaJxYI?oOq#StY;v{kGo{CC$Yz9u&YZ6DH&xre1j@&Lc>evlh zLAl6hlMfjh!)EH;Fuh6=XLh*R5F5uolwg)d@iI-OCOfAtq(GUT`spm+V>!|LYOysS zrZ+@%`636ftFp91_BpN4;9yJFev3112%$f*)ieWQejTsyO$Az8SeR44T^dUP-(cg& zLxwpc?BQG%E)p(fzGQ}oYO_O9#hOCBCi65q>+|LcL$ zkKPNq)*y!MIk)PL_c~65Ohfw7%(H_ev!JDO76n1*LnZBAGLL8qJl}hagRLwj8)I16 z-%h&%(~pLyB5L3<=y>*UF%4m^4C}vR+#XuC^L8L@0YK;5_oOfJKYCAmtwGoqMCkmb zH~nbTQb8HFV17BTAZ;lp{X<-lYdJu8`0zfK=l%RbdBv6)ij!Gb*rbAUnc#AvN_Z)C zO|t;v1|bA>(9DA!8IwgwLKY9u+~Sz7SI*K?v1JgiDvmDz-xRMu{jRrO`ack-y}Ym8 zIyO2ko@^R)HVt+=s;hGM<-ra+Pn?&bx3UWwuCvxF*%DThuXph-9fyL=fJ4#k;Nb$V zYU#fA1$wJ~LFs{S7;&wbQi&6Ixr7N|i%jk-3!DQ(d@P}e+m^pi+VYJS8Dlc$CuI0V z!lcew%7D^4G<=W8<~*v(zYIG66;-KkTlBap4PU9O`cUAO>r?AV+q#nz_o2Sw`g8RWsg2yn;9~g<{G>u!qU^NsE2*Tl3<< zoqJ4m-HpFWF_{%GfdHgQWG(i-6!eN@y*m=_!NT{t*H?~q(3y^Men0g;_SLL_Kq;Tu zyX0W}+Mlfx=BF{PvjSN1^oh@oPe2(D#&%P;yeyr*_phl#_cPLmDeB#{rGj-l=1?x5 z%B*$QZ##?1k=WzFAdUSyOh=Z-UHgudeMXq#E%`6`@P&$H}WP^BC4v0*wq$$$> z%yZ-UfV-LHJ+HjNO7_|y>@oe4pA=w9*ybNsED(-Njq~?^4)gl+E1865QGm&;tAjTt zXt$dzcuEey&WNHQmrf2Cdl6j_jRdcimQ%i>bf(4yzGt3kJD$UQ&m1HaUKb!EnX*A& zC$2^MBr>;kWc-jZ^CxfVMI3x5Zw@%W80dCpwngt_BD5>&@_j9Y+}xO5mb3hzU=?=} zuW+$^V+^lyKF<=vS-ZR^bh(R`^`h4%{Zzj+;Jk<|R#ippvyO&c`9N~~SaJX(!j=KX zn+3`bQ|~LmqBlvhhQe?J+iY3;N&=jO)hLEzaYhZJq@}$3^mqU$d42AA=8EYKr0x^z z?_9YuQ}H*;W;T(95d7lDrYkcyE}u!6kQ2E(by;G1OMX73z*`3=j0Iymel)0jl^O`6 zr3_CM0M5KMfC+*r#O-HjceMo=I}fTao}<=Dz7)#i5p?Bq9JkVfoYyLil8ed$ zwqTQdVrGrzOoFf=r@+oCcD&CKoc9vC1(qBP7k2;dp(;?S^p?-kM@MBAhV8F1I|l+w zu$NjTZSDEcTkWJ&qBq64!_s0ihp-&7ts>aGa@OqSJQGyH)HngsU3xu1_a&y!{JY z{L+qZ#`#!Ifz9u2=huj9Z^M5N8CwP_vqUk@)5EAEf3fT}V+?YX^-fnyHpOAioS~~e z@WK*mG>j2-2K0$W=pB1QCu;_rYX-&z-OdYb|7bZTmazpL%T;%elq@5Sw3qo7+Y*WU zNY09~!|wuham>w#&qIQlNnLh2I_2#FF6_c7Cez_)DzGoteA*t+aO3&cz)|%G&%@qo zx#mvbrcTZqxj?`Az)O^rF(%n8TQ+9)O(XV3$^mi{($dnkoQgP3gBsgi%a)z zrdIJ7!BXxbeoq*P)rP@4ne2<3=}a7GyV-I*XCxa}Lu8nKD*PIAEMMQ0%GWqAcT zCi$HVrCgnYnd^&;@rcOS&(wh)$pQBkT*$>J`x~|ZxUN~|{oFsq2>&*p^r+e3ln0&+ zc9G~>L>P9=rtK+8N9Yb^P*c`PN|f2C?g9#n0PFM3=o=|3Phvx{BT>|}#P_YSiEJ2< z&+A#017rqn{zdWWhkAYzffIbs>ma7SOl!(q_aWu;Ot+)kO$BCV%A3?y!q%1_<-=@N z8Bev2hLi2Z0Vlr7(xv4x3JLutsv{7hCq>1VzLX; z7T3|BY+f-GtW`{yTE9zMnU}SQT&s4{7%LjObyTh`#>G|E{_xay$1_SgN)|3F7dU?H zZWn^4S?~TnzXR)Yepb7{m2)Ib(&q3w(%f3VKe>V~47eNKb=;-6-tQEw3hbk+KKE|r zuuF`&uhSK*+lcWXSzqm5%MvN#!3ZI=tuxAUX$rrlKf8Uh!&k^Y^E-Wm=+~WJ^mn~` zGF~;uoa^x+fD;ehxjf1<)jzq(10_-O0+OWk?6wutYz-AC z518WXIJpXh^Nrk|>?3jR={1tg)fNB2U%N*3^9q9^ant(hpB<`M03kk3p;f&tTg5Cr zwt^YJZ8JsnWRG*qEBn!2OQ^v5?tj2RnAKsz;lZ*@fVpLI$t#BCNOsJh>_$&^r)cU! zj0I)@cY+M{Mt04z#7**Q_Z!@rn63OxAJAL*@UaSGF7r=GuBw>zm;x~>?&gg!f8#)C zp$rwg%*#~DmCFP^P&c#*_FD5B-q#EBXj~pi*71h<OMZ4} z?GJps``wnYD4d|tWL~?%Jdacld33)^tctoFCdj*5mkDeNYyk^T5e=`{j+S@CV-L_| zPMfQR8Or0p6c&H>?DA#6izsp1x#cnM2%3-5?+AJ%Xmx;HVOEfAZ3=x%V~#s7M$c{8 zt&g{JE4I7q;!E$}&OPIOqWx%Oe8Mw+XgjPWbTKRrLIstEXEz$2+f=0}j^UMlKzBPb zvHSW}OFOqcd#s)r)N){*y_=$5=9e#H_~k`O{9;|?Li~eXS9GP~*5-T6)vc}q7ePZjGKQ|uTb%YHref`_aJ?_I=C~*079V`Z@49;u2;I$|q zU7bhlqBl|JiyAMR&Kmexd`cSjEW?xiY0FF=otKiQ$kJtJ8KmVB-Ep@7Cm)=X2=6)Q zbhOLc>C60XTp_OPO8% zOBu#;l$ePtma4 zek{pfjPhD?-U7Em0kRLQXC|7DUuzKMNpu_B-5A&laSdV)C)C)V0g}DUBSgz_V!u}c z_fD+_3Xz;fH}k4&aknnQEG98ev=qJKzBE&;h}y#bTZyS8c;}vI78PxF{cyP|HR(-s zHO?;-HM!FLiKl`XsF30N$v;T9P?M#P0x^y>54Vcr#Nx7|%_ZeU!<(RVni`6ExaLz@ zRpeX86bJfJ3J5p^c-JEy_W$}-fhCc6N@bWYt#6(0?f(JBmQ$;$T9lAs^j;=eIQ}T^YO1J zNxX!BUs<_SL%S@kzS~-W^Etq^-VqbI_Z`w=V@Myx# zN*$OjOj-QxuyL4(xPSm#rS;4=M-!moZu$<-i;055yAL4z9S*=-9;(#!+isp$!cK}y zj}>pZeIyasl*uCLPA^-h3NWRvZU{4_{*2r}MZkBVW>+#d_nsH%&_I~>)s0l~N!qDG zh{ItxMV#I9J^HRz(s7~U!`X2$lDM=egfd+9CxvP`MNnFqG<9Vmh3BvF93uc&+gGyz zcL`ls&hxt_AciA&G_FXdU=|#R!05OlxAcPL;;B7ydY2?a3pKL$@OD-uCA-|?&MjXb zIivP_ZX579WE)UPJJJy2@f%q+Gn{I>+U)}YdhE6has1ESKId+!#%CV2#WL_36EJ4+ zVUk%PTUYL|-g)HLkXnykMV;@aiW!zEm)C70gkVH>Eq9|uq^P)!()5B(|rit(4lID1dwjbk>|a`x^?@m9wFN zzECE50xsbE@dC|;lLiCHt4CDy;Dn<$Sp6O9l1rrf$;pYQ0G)b76}`cQ-$m&WrM%pi z`E;s)ijLqyKjxFK8UaPGo`BOi)Ipc$t2GJL@CyCTfOsi6Cv}TSILj@{J&B0ARfsM} zfWLWM-AlgE{f|RaUi3#VWP^)VpD3J-yM*()F8$<|>%PploHEUlRhLF0lj8hj)~Qbx z{nbzW$3aQ{D36mQeD6K(d+#yiJrx#E+en_4SE%OOoZ1bP?zxjie?Q?XO}>-=D0lfn zKAN7Q?GqX~!+Xe>V7a<5(j+|AaZ~=$uL~jh0VHBJ$RFi}$L%#I`syn>y^&K}N9lwo zp>2vdS_0Fg5oL7}J@+TxfBPSJZ}Rp(4hqnH)Mx&pe>Rqn`Xb$5PCS)Lced}z_W<4W zQ}F|~9C#}Eq1zk*8tm=G7GF2|T~WNEuX-8rqo${P+^_qXd}O&>rby3TA}{`K<)Qb; z3$IPG$NW*hZl7=Hi!j0wI*Spg>*#y*ZvI2RuA9)-_Pr^z>_=IHOT4zsdvE_r{+ zs@T=fkS0LIuc?2_SH360yzqc=)!vJ#Bd7tR(YZ+9kk7Njq!sSIo_u$h@Sgi~udayn z{P0^|W_zYxUQ3|QVn5uCo1In%CoU9dP~QR|Pu;q!+wn?U+MaQ7S6i>My^jf*O5cM! z*1#(5o{q)K7tjn`qa06*{oU@WFLpC?znpt{?)Y3^8>-T*%p7Lku`I_QlKL*bMhI<#Cs?F*+8tZ#_{6wLL%)-|=MtnKEiv^{K-&DQ~Ke=j~mK`aLi8`*6@Rs(x>;`UOFb^yOD| zdZya}`~-g0|9;Q_3_*LFXKzD(RmX$UC~w=cd#w(tZH_N8&MHkm=x4r+@5BZIaGEmL z#Bqq?o@Ym76Fqq7k+}zTN8ZzYxRCA?P1NHc=W{-EUvxcU1c%J8IiH7|p^r(k@7 z%G`&Cu9Nkz<0vBgHQ1=ji{Q6eufDP!sAJ97E_CA%VYG)j`K zuHj8&OElqX^?ZyKZ8$DBr-tl=96#yCm8ql;6fdp6r{ur^QJ+mDYi}1tKaiW|V?jR@ z`rO2?B^@P=EN(Yy_;ul0p6<&&{ImD4qnjRsC^ zuYLb!Tp+-`e0;`S^Oe3HniY*m&MP{3D3jCxcO(DlZ_9B`=F7y8SN%sh#t;`59b3F? z$T)3LMKUrZ96OE^X{5;v{2nz_sfmCUWm-al;zs0(l@~2O0CQ;s-S(=Nz#a20IYpPu zl^2n+5hrVrrHBjb?gv!m{R* zvH;uxF{)#`uPhtNYHTqzZr^r7<-#?sUYs?bhbWqjOc)u_8^5ci2GvM)3esD|nvgy? zE$}ttySD%Tm&gCF%TxXLuEN+1j?WuN^ z`KZ76zbnT;Juasw0H&9uBy8~=b^e~}{>_8q9e8Q55#q68_H{%cDOi_p=t4r+VWBCt z28bMdH9@}j^$jBP5ZQ>xega~S$+8)K=CWO~#Z0)1V-#1$&AB3=PDB|oIVl3iR_pHb;bHNF7VSfmNefp;QS z8J%14%4$~Qf<+^WjpN!Ya@?g0zHW620c(%(f;rAaLd}HX;JOEgwJf=coTz;DMczI> zz-F!EK%54B6V(FDBLO-N(EIf)U05bx9-&~RSW9|f%!2|@VF3u6EY?UHS~TxLYmdA> zJI#hFW5T;t#M2sh0mf6ZIK2gq2pE}C8R!puoHO(sjC86~R9NaRjM*iCSFF;}e>}oG zRyWRA9KfFE@304%Kfh>73r_u`n-Qsf=V3Azr!IC)U3?ih;<(EtWC4wRbKf&N_i+XF z@#*n7- z7c6lAD7P5GR&3v)KSiW??umvi+s*AH?yG`u=%w55*wjJxkHM8^+ zLwKgqeIDn|?jyu0(si<_**QI;D_BraqT45xkR$3WH zScCvNqP#xnq(#H+TcwgRe|{cm&G{FKb#zj|5)B<)r&U;W+&oEi4BnU+Fl&vVkJg0x zdfCr!%ED5?Z^-PL9ph&3B(y(kKH!)!a!SPl{ZnkI^ugmY^&ImUDYEGY7c35Wx|U;c zU}@lLB}ozKS~>~qjF{#1(QJfowY#*|#nFo`^ChJbG~riz-@INhTe2S9ab!C(lSX|@ zfK<`er|Xgb{d#1;4Mg-9nx2KGclheTe6JoB$0c8_&d=7wq9R^hP{@B>m-$cDW%mW+q+I(VgyYY%OYIhH1G)yWa(Z(hVaJ3bu{ z6!~mIvUX9b2hq-s2Ls~uQEqkF_GRs>kNs@glqvsIr#58{U%`F`$xtO&&qM7*=|lxl zDTWg?&4dJj%}gsLGNoG2z4wVYFbyyFD(}G_!6($0sFh~iLm`El%T3}uZV{s-38@zp zl%e`U;Wh43sv^||YVq;qJ=l)-B3|u+@ diff --git a/variants/bpi-bit/pins_arduino.h b/variants/bpi-bit/pins_arduino.h deleted file mode 100644 index 80ff9c2746b..00000000000 --- a/variants/bpi-bit/pins_arduino.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -static const uint8_t BUZZER = 25; - -static const uint8_t BUTTON_A = 35; -static const uint8_t BUTTON_B = 27; - -// NeoPixel Matrix 5 x 5 -static const uint8_t RGB_LED = 4; - -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -#define LED_BUILTIN (RGB_LED + SOC_GPIO_PIN_COUNT) // Just a single LED in the Matrix -#define BUILTIN_LED LED_BUILTIN // backward compatibility -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 64 -static const uint8_t LIGHT_SENSOR1 = 36; -static const uint8_t LIGHT_SENSOR2 = 39; - -static const uint8_t TEMPERATURE_SENSOR = 34; - -static const uint8_t MPU9250_INT = 0; - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t P0 = 25; -static const uint8_t P1 = 32; -static const uint8_t P2 = 33; -static const uint8_t P3 = 13; -static const uint8_t P4 = 15; -static const uint8_t P5 = 35; -static const uint8_t P6 = 12; -static const uint8_t P7 = 14; -static const uint8_t P8 = 16; -static const uint8_t P9 = 17; -static const uint8_t P10 = 26; -static const uint8_t P11 = 27; -static const uint8_t P12 = 2; -static const uint8_t P13 = 18; -static const uint8_t P14 = 19; -static const uint8_t P15 = 23; -static const uint8_t P16 = 5; -static const uint8_t P19 = 22; -static const uint8_t P20 = 21; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/bpi_leaf_s3/pins_arduino.h b/variants/bpi_leaf_s3/pins_arduino.h deleted file mode 100644 index 45117347e2d..00000000000 --- a/variants/bpi_leaf_s3/pins_arduino.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303a -#define USB_PID 0x80df -#define USB_MANUFACTURER "Banana Pi" -#define USB_PRODUCT "BPI-Leaf-S3" -#define USB_SERIAL "" - -// Some boards have too low voltage on this pin (board design bug) -// Use different pin with 3V and connect with 48 -// and change this setup for the chosen pin (for example 38) -#define PIN_NEOPIXEL 48 -// BUILTIN_LED can be used in new Arduino API digitalWrite() like in Blink.ino -static const uint8_t LED_BUILTIN = SOC_GPIO_PIN_COUNT+PIN_NEOPIXEL; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -// RGB_BUILTIN and RGB_BRIGHTNESS can be used in new Arduino API neopixelWrite() -#define RGB_BUILTIN LED_BUILTIN -#define RGB_BRIGHTNESS 25 - -static const uint8_t TX = 43; -static const uint8_t RX = 44; - -static const uint8_t SDA = 15; -static const uint8_t SCL = 16; - -static const uint8_t SS = 10; -static const uint8_t MOSI = 11; -static const uint8_t MISO = 13; -static const uint8_t SCK = 12; - -static const uint8_t A0 = 1; -static const uint8_t A1 = 2; -static const uint8_t A2 = 3; -static const uint8_t A3 = 4; -static const uint8_t A4 = 5; -static const uint8_t A5 = 6; -static const uint8_t A6 = 7; -static const uint8_t A7 = 8; -static const uint8_t A8 = 9; -static const uint8_t A9 = 10; -static const uint8_t A10 = 11; -static const uint8_t A11 = 12; -static const uint8_t A12 = 13; -static const uint8_t A13 = 14; -static const uint8_t A14 = 15; -static const uint8_t A15 = 16; -static const uint8_t A16 = 17; -static const uint8_t A17 = 18; -static const uint8_t A18 = 19; -static const uint8_t A19 = 20; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; -static const uint8_t T13 = 13; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/ch_denky/pins_arduino.h b/variants/ch_denky/pins_arduino.h deleted file mode 100644 index ac202d527db..00000000000 --- a/variants/ch_denky/pins_arduino.h +++ /dev/null @@ -1,71 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 21; -static const uint8_t SCL = 22; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 23; -static const uint8_t MISO = 19; -static const uint8_t SCK = 18; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -// Specific CH2i (Charles Hallard) Boards -// 1st Revision Denky with ESP WROOM32 + LoRa RN2483 module -#if defined (ARDUINO_DENKY_WROOM32) -#define PUSH_BUTTON 0 -#define TIC_ENABLE_PIN 4 -#define TIC_RX_PIN 33 -#define LORA_TX_PIN 26 -#define LORA_RX_PIN 27 -#define LORA_RESET 14 -#define RGB_LED_PIN 25 - -// 2nd Utra Small version with ESP Pico-D4-V3-02 -#elif defined (ARDUINO_DENKY_PICOV3) -// RGB Led Pins -#define LED_RED_PIN 27 -#define LED_GRN_PIN 26 -#define LED_BLU_PIN 25 - -// Teleinfo RXD pin is connected to ESP32-PICO-V3-02 GPIO8 -#define TIC_RX_PIN 8 -#endif - - -#endif /* Pins_Arduino_h */ diff --git a/variants/cnrs_aw2eth/pins_arduino.h b/variants/cnrs_aw2eth/pins_arduino.h deleted file mode 100644 index b21c5889a38..00000000000 --- a/variants/cnrs_aw2eth/pins_arduino.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -static const uint8_t SDA = 9; -static const uint8_t SCL = 10; - -static const uint8_t SS = 5; -static const uint8_t MOSI = 14; -static const uint8_t MISO = 13; -static const uint8_t SCK = 4; - -static const uint8_t A0 = 36; -static const uint8_t A3 = 39; -static const uint8_t A4 = 32; -static const uint8_t A5 = 33; -static const uint8_t A6 = 34; -static const uint8_t A7 = 35; -static const uint8_t A10 = 4; -static const uint8_t A11 = 0; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; -static const uint8_t A17 = 27; -static const uint8_t A18 = 25; -static const uint8_t A19 = 26; - -static const uint8_t T0 = 4; -static const uint8_t T1 = 0; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; -static const uint8_t T7 = 27; -static const uint8_t T8 = 33; -static const uint8_t T9 = 32; - -static const uint8_t DAC1 = 25; -static const uint8_t DAC2 = 26; - -#endif /* Pins_Arduino_h */ diff --git a/variants/connaxio_espoir/pins_arduino.h b/variants/connaxio_espoir/pins_arduino.h deleted file mode 100644 index 6e9a4fa3ceb..00000000000 --- a/variants/connaxio_espoir/pins_arduino.h +++ /dev/null @@ -1,77 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -/* variant: Espoir - * vendor: Connaxio - * url: https://www.connaxio.com/electronics/espoir/ - */ - -#include - -/* USB UART */ -static const uint8_t TX = 1; -static const uint8_t RX = 3; - -/* mikroBUS UART */ -static const uint8_t TX1 = 10; -static const uint8_t RX1 = 9; - -/* mikroBUS I2C */ -static const uint8_t SDA = 23; -static const uint8_t SCL = 18; - -/* mikroBUS SPI */ -static const uint8_t SS = 15; -static const uint8_t MOSI = 13; -static const uint8_t MISO = 12; -static const uint8_t SCK = 14; - -/* Default analog pins */ -static const uint8_t A0 = 36; -static const uint8_t A1 = 37; -static const uint8_t A2 = 38; -static const uint8_t A3 = 39; -static const uint8_t A6 = 34; - -/* Alternative analog pins */ -static const uint8_t A10 = 4; -static const uint8_t A12 = 2; -static const uint8_t A13 = 15; -static const uint8_t A14 = 13; -static const uint8_t A15 = 12; -static const uint8_t A16 = 14; - -/* Touch pins */ -static const uint8_t T0 = 4; -static const uint8_t T2 = 2; -static const uint8_t T3 = 15; -static const uint8_t T4 = 13; -static const uint8_t T5 = 12; -static const uint8_t T6 = 14; - -/* Other pin names */ -static const uint8_t AN = 36; -static const uint8_t RST = 5; -static const uint8_t PWM = 2; -static const uint8_t INT = 4; -static const uint8_t CS = 15; -static const uint8_t SDO = 13; -static const uint8_t SDI = 12; - -/* Ethernet interface */ -static const uint8_t ETH_INT = 35; -#define ETH_PHY_ADDR 0 -#define ETH_PHY_POWER -1 -#define ETH_PHY_MDC 32 -#define ETH_PHY_MDIO 33 -#define ETH_PHY_TYPE ETH_PHY_KSZ8081 -#define ETH_CLK_MODE ETH_CLOCK_GPIO0_IN - -/* USB interface */ -#define USB_VID 0x10C4 // Silabs's VID -#define USB_PID 0x8D9A // Espoir's PID, requires Silab USB PHY -#define USB_MANUFACTURER "Connaxio" -#define USB_PRODUCT "Espoir" -#define USB_SERIAL "" - -#endif /* Pins_Arduino_h */ diff --git a/variants/crabik_slot_esp32_s3/pins_arduino.h b/variants/crabik_slot_esp32_s3/pins_arduino.h deleted file mode 100644 index b5021d5cd03..00000000000 --- a/variants/crabik_slot_esp32_s3/pins_arduino.h +++ /dev/null @@ -1,80 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define USB_VID 0x303a -#define USB_PID 0x814D // for user apps (https://github.com/espressif/usb-pids/pull/77) -#define USB_MANUFACTURER "Crabik" -#define USB_PRODUCT "Slot ESP32-S3" -#define USB_SERIAL "" - -static const uint8_t LED_BUILTIN = 21; -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN - -static const uint8_t S1 = 1; -static const uint8_t S2 = 12; -static const uint8_t S3 = 2; -static const uint8_t S4 = 11; -static const uint8_t S5 = 17; -static const uint8_t S6 = 18; -static const uint8_t S7 = 3; -static const uint8_t S8 = 4; -static const uint8_t S9 = 5; -static const uint8_t S10 = 6; -static const uint8_t S11 = 7; -static const uint8_t S12 = 8; -static const uint8_t S13 = 9; -static const uint8_t S14 = 10; -static const uint8_t S15 = 45; -static const uint8_t S16 = 46; -static const uint8_t S17 = 48; -static const uint8_t S18 = 47; -static const uint8_t S19 = 33; -static const uint8_t S20 = 34; - -static const uint8_t TX = S12; -static const uint8_t RX = S11; -#define TX1 TX -#define RX1 RX - -static const uint8_t SDA = 13; -static const uint8_t SCL = 14; -static const uint8_t D = SDA; -static const uint8_t C = SCL; - -static const uint8_t MOSI = 35; -static const uint8_t MISO = 37; -static const uint8_t SCK = 36; -static const uint8_t DO = MOSI; -static const uint8_t DI = MISO; -static const uint8_t CLK = SCK; -static const uint8_t CS1 = S5; -static const uint8_t CS2 = S6; -static const uint8_t SS = CS1; - -static const uint8_t T1 = 1; -static const uint8_t T2 = 2; -static const uint8_t T3 = 3; -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T11 = 11; -static const uint8_t T12 = 12; - -static const uint8_t USB_DN = 19; -static const uint8_t USB_DP = 20; - -static const uint8_t BOOT_BTN = 0; -static const uint8_t USER_LED = LED_BUILTIN; - -static const uint8_t EN_TROYKA = 15; - -static const uint8_t LIPO_ALERT = 16; - -#endif /* Pins_Arduino_h */ diff --git a/variants/cytron_maker_feather_aiot_s3/bootloader-tinyuf2.bin b/variants/cytron_maker_feather_aiot_s3/bootloader-tinyuf2.bin deleted file mode 100644 index 6e7ea8a275e661e99f43fc0587adc9752d2048ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21840 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 diff --git a/variants/cytron_maker_feather_aiot_s3/partitions-8MB-tinyuf2.csv b/variants/cytron_maker_feather_aiot_s3/partitions-8MB-tinyuf2.csv deleted file mode 100644 index 4026378b6fb..00000000000 --- a/variants/cytron_maker_feather_aiot_s3/partitions-8MB-tinyuf2.csv +++ /dev/null @@ -1,10 +0,0 @@ -# ESP-IDF Partition Table -# Name, Type, SubType, Offset, Size, Flags -# bootloader.bin,, 0x1000, 32K -# partition table,, 0x8000, 4K -nvs, data, nvs, 0x9000, 20K, -otadata, data, ota, 0xe000, 8K, -ota_0, 0, ota_0, 0x10000, 2048K, -ota_1, 0, ota_1, 0x210000, 2048K, -uf2, app, factory,0x410000, 256K, -ffat, data, fat, 0x450000, 3776K, diff --git a/variants/cytron_maker_feather_aiot_s3/pins_arduino.h b/variants/cytron_maker_feather_aiot_s3/pins_arduino.h deleted file mode 100644 index cf75fa6b0ac..00000000000 --- a/variants/cytron_maker_feather_aiot_s3/pins_arduino.h +++ /dev/null @@ -1,72 +0,0 @@ -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include -#include "soc/soc_caps.h" - -#define USB_VID 0x303A -#define USB_PID 0x80F8 -#define USB_MANUFACTURER "Cytron" -#define USB_PRODUCT "Maker Feather AIoT S3" -#define USB_SERIAL "" - -static const uint8_t LED_BUILTIN = 2; // Status LED. -#define BUILTIN_LED LED_BUILTIN // backward compatibility -#define LED_BUILTIN LED_BUILTIN // allow testing #ifdef LED_BUILTIN -static const uint8_t RGB_BUILTIN = SOC_GPIO_PIN_COUNT + 46; // RGB LED. -#define RGB_BUILTIN RGB_BUILTIN // necessary to make digitalWrite/digitalMode find it -#define RGB_BRIGHTNESS 64 - -#define LED LED_BUILTIN -#define RGB RGB_BUILTIN -#define NEOPIXEL RGB_BUILTIN -#define RGB_BRIGHTNESS 65 - - - -#define VP_EN 11 // V Peripheral Enable. -#define BUZZER 12 // Piezo Buzzer. -#define BOOT 0 // Boot Button. -#define BUTTON 3 // User Button. - -#define VIN 13 // Vin Sense. -#define VBATT 13 -#define VOLTAGE_MONITOR 13 - - -static const uint8_t TX = 15; -static const uint8_t RX = 16; - -static const uint8_t SDA = 42; -static const uint8_t SCL = 41; - -static const uint8_t SS = 7; -static const uint8_t MOSI = 8; -static const uint8_t SCK = 17; -static const uint8_t MISO = 18; - -static const uint8_t A0 = 10; -static const uint8_t A1 = 9; -static const uint8_t A2 = 6; -static const uint8_t A3 = 5; -static const uint8_t A4 = 4; -static const uint8_t A5 = 7; - -static const uint8_t A6 = 17; -static const uint8_t A7 = 8; -static const uint8_t A8 = 18; -static const uint8_t A9 = 16; -static const uint8_t A10 = 15; -static const uint8_t A11 = 14; -static const uint8_t A12 = 13; - -static const uint8_t T4 = 4; -static const uint8_t T5 = 5; -static const uint8_t T6 = 6; -static const uint8_t T7 = 7; -static const uint8_t T8 = 8; -static const uint8_t T9 = 9; -static const uint8_t T10 = 10; -static const uint8_t T14 = 14; - -#endif /* Pins_Arduino_h */ diff --git a/variants/cytron_maker_feather_aiot_s3/tinyuf2.bin b/variants/cytron_maker_feather_aiot_s3/tinyuf2.bin deleted file mode 100644 index a43bff014da0cee9c537c444d9380977b78ae117..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157008 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