[env:tasmota32_base]
framework               = ${common.framework}
platform                = ${core32.platform}
platform_packages       = ${core32.platform_packages}
board_build.filesystem  = ${common.board_build.filesystem}
custom_unpack_dir       = ${common.custom_unpack_dir}
board_build.variants_dir = ${common.board_build.variants_dir}
board                   = esp32
monitor_speed           = ${common.monitor_speed}
monitor_echo            = ${common.monitor_echo}
upload_resetmethod      = ${common.upload_resetmethod}
check_skip_packages     = ${common.check_skip_packages}
extra_scripts           = ${esp32_defaults.extra_scripts}
monitor_filters         = ${esp32_defaults.monitor_filters}
build_unflags           = ${core32.build_unflags}
build_flags             = ${core32.build_flags}
lib_ldf_mode            = ${common.lib_ldf_mode}
lib_compat_mode         = ${common.lib_compat_mode}
lib_extra_dirs          = ${common.lib_extra_dirs}
                          lib/libesp32
                          lib/libesp32_lvgl
lib_ignore              = ${esp32_defaults.lib_ignore}
; Add files to Filesystem for all env (global). Remove no files entry and add add a line with the file to include
; Example for adding the Partition Manager
; custom_files_upload =
; tasmota/berry/modules/Partition_Manager.tapp
custom_files_upload     = no_files

[env:tasmota32-safeboot]
extends                 = env:tasmota32_base
board                   = esp32-solo1
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFRAMEWORK_ARDUINO_SOLO1
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32solo1-safeboot]
extends                 = env:tasmota32_base
board                   = esp32-solo1
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32solo1-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32s2-safeboot]
extends                 = env:tasmota32_base
board                   = esp32s2
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s2-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32s2cdc-safeboot]
extends                 = env:tasmota32_base
board                   = esp32s2cdc
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s2cdc-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32c2-safeboot]
extends                 = env:tasmota32_base
board                   = esp32c2
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c2-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32c3-safeboot]
extends                 = env:tasmota32_base
board                   = esp32c3
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c3-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32c3ser-safeboot]
extends                 = env:tasmota32_base
board                   = esp32c3ser
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c3ser-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32s3-safeboot]
extends                 = env:tasmota32_base
board                   = esp32s3-qio_qspi
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                         -DFIRMWARE_SAFEBOOT
                         -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s3-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32c6-safeboot]
extends                 = env:tasmota32_base
board                   = esp32c6
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c6-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32c6ser-safeboot]
extends                 = env:tasmota32_base
board                   = esp32c6ser
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_SAFEBOOT
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c6ser-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32s3ser-safeboot]
extends                 = env:tasmota32_base
board                   = esp32s3ser-qio_qspi
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                         -DFIRMWARE_SAFEBOOT
                         -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s3ser-safeboot.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

[env:tasmota32]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32.bin"'

[env:tasmota32solo1]
extends                 = env:tasmota32_base
board                   = esp32-solo1
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DCODE_IMAGE_STR='"solo1"'
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32solo1.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          epdiy

[env:tasmota32s2]
extends                 = env:tasmota32_base
board                   = esp32s2
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s2.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          epdiy

[env:tasmota32s2cdc]
extends                 = env:tasmota32_base
board                   = esp32s2cdc
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s2cdc.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          epdiy

[env:tasmota32c2]
extends                 = env:tasmota32_base
board                   = esp32c2
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c2.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32c3]
extends                 = env:tasmota32_base
board                   = esp32c3
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c3.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32c6]
extends                 = env:tasmota32_base
board                   = esp32c6
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_TASMOTA32
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32c6.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32s3]
extends                 = env:tasmota32_base
board                   = esp32s3-qio_qspi
build_flags             = ${env:tasmota32_base.build_flags}
                         -DFIRMWARE_TASMOTA32
                         -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32s3.bin"'
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          epdiy

[env:tasmota32-webcam]
extends                 = env:tasmota32_base
board                   = esp32-fix
board_build.f_cpu       = 240000000L
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_WEBCAM
                          -DCAMERA_MODEL_AI_THINKER
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-webcam.bin"'
lib_extra_dirs          = lib/lib_ssl, lib/libesp32

[env:tasmota32-bluetooth]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_BLUETOOTH
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-bluetooth.bin"'
lib_extra_dirs          = lib/libesp32, lib/libesp32_div, lib/lib_basic, lib/lib_i2c, lib/lib_ssl
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32-display]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_DISPLAYS
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-display.bin"'
lib_extra_dirs          = lib/libesp32, lib/lib_basic, lib/lib_display, lib/lib_ssl
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32-lvgl]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_LVGL
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-lvgl.bin"'
board_build.f_cpu       = 240000000L
lib_extra_dirs          = lib/libesp32, lib/libesp32_lvgl, lib/lib_basic, lib/lib_i2c, lib/lib_rf, lib/lib_div, lib/lib_ssl, lib/lib_display
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32-ir]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_IR
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-ir.bin"'
lib_extra_dirs          = lib/libesp32, lib/lib_basic, lib/lib_ssl
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP

[env:tasmota32-zbbrdgpro]
extends                 = env:tasmota32_base
board_build.partitions  = partitions/esp32_partition_app1856k_fs1344k.csv
build_flags             = ${env:tasmota32_base.build_flags}
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-zbbrdgpro.bin"'
                          -DFIRMWARE_ZBBRDGPRO
                          -DFRAMEWORK_ARDUINO_ITEAD
custom_files_upload     = ${env:tasmota32_base.custom_files_upload}
                          tools/fw_SonoffZigbeeBridgePro_cc2652/Sonoff_ZBPro.autoconf
                          tasmota/berry/zigbee/cc2652_flasher.be
                          tasmota/berry/zigbee/intelhex.be
                          tasmota/berry/zigbee/sonoff_zb_pro_flasher.be
                          tools/fw_SonoffZigbeeBridgePro_cc2652/SonoffZBPro_coord_20220219.hex
lib_extra_dirs          = lib/lib_basic, lib/lib_ssl, lib/libesp32
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          IRremoteESP8266
                          TasmotaModbus
                          ESP Mail Client

[env:tasmota32-nspanel]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags}
                          -DFIRMWARE_NSPANEL
                          -DFRAMEWORK_ARDUINO_ITEAD
                          -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-nspanel.bin"'

[env:tasmota32-AD]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=ca_AD -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-AD.bin"'

[env:tasmota32-AF]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=af_AF -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-AF.bin"'

[env:tasmota32-BG]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=bg_BG -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-BG.bin"'

[env:tasmota32-BR]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=pt_BR -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-BR.bin"'

[env:tasmota32-CN]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=zh_CN -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-CN.bin"'

[env:tasmota32-CZ]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=cs_CZ -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-CZ.bin"'

[env:tasmota32-DE]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=de_DE -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-DE.bin"'

[env:tasmota32-ES]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=es_ES -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-ES.bin"'

[env:tasmota32-FR]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=fr_FR -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-FR.bin"'

[env:tasmota32-FY]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=fy_NL -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-FY.bin"'

[env:tasmota32-GR]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=el_GR -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-GR.bin"'

[env:tasmota32-HE]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=he_HE -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-HE.bin"'

[env:tasmota32-HU]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=hu_HU -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-HU.bin"'

[env:tasmota32-IT]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=it_IT -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-IT.bin"'

[env:tasmota32-KO]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=ko_KO -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-KO.bin"'

[env:tasmota32-NL]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=nl_NL -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-NL.bin"'

[env:tasmota32-PL]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=pl_PL -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-PL.bin"'

[env:tasmota32-PT]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=pt_PT -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-PT.bin"'

[env:tasmota32-RO]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=ro_RO -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-RO.bin"'

[env:tasmota32-RU]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=ru_RU -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-RU.bin"'

[env:tasmota32-SE]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=sv_SE -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-SE.bin"'

[env:tasmota32-SK]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=sk_SK -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-SK.bin"'

[env:tasmota32-TR]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=tr_TR -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-TR.bin"'

[env:tasmota32-TW]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=zh_TW -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-TW.bin"'

[env:tasmota32-UK]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=uk_UA -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-UK.bin"'

[env:tasmota32-VN]
extends                 = env:tasmota32_base
build_flags             = ${env:tasmota32_base.build_flags} -DMY_LANGUAGE=vi_VN -DFIRMWARE_TASMOTA32 -DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-VN.bin"'