; example custom platformio ini file for EMS-ESP

[common]
; custom build flags to use in my_build_flags
;  -DEMSESP_UART_DEBUG ; debugging UART
;  -DEMSESP_DEBUG ; enables DEBUG to the log. Will generate a lot of extra traffic on Console and Syslog
;  -DEMSESP_DEFAULT_BOARD_PROFILE=\"NODEMCU\" ; hard code the default board name
;  -DEMSESP_DEBUG_SENSOR ; additional debug for the sensors
;  -DCORE_DEBUG_LEVEL=5 ; verbose core level debugging 5=verbose, 4=debug, 3=info
;  -DEMSESP_TEST ; enable the tests. EN language only
;  -DEMSESP_DE_ONLY ; only DE translated entity names
;  -DEMSESP_EN_ONLY ; only EN translated entity names
;  -DEMSESP_PINGTEST ; send log message every 1/2 second
; my_build_flags = -DEMSESP_TEST -DEMSESP_DEBUG
; my_build_flags = -DEMSESP_DEBUG
; my_build_flags = -DEMSESP_DEBUG -DEMSESP_TEST -DEMSESP_PINGTEST

[platformio]
default_envs = s_16M_P ; BBQKees E32V2
; default_envs = s3_16M_P ; BBQKees S3
; default_envs = s_4M ; BBQKees S32
; default_envs = native
; default_envs = debug
; default_envs = s2_4M

[env]
; set the username and password for the admin account (default both admin)
custom_username = admin
custom_password = admin

; ** upload settings **
; for direct USB set:
;  upload_protocol = esptool
;  upload_port = /dev/ttyUSB*
;
; for direct via URL (OTA) set:
;  upload_protocol = custom
;  custom_emsesp_ip = <ip address> or ems-esp.local
;  custom_password = admin

; upload_protocol = esptool
; upload_port = /dev/ttyUSB*

upload_protocol = custom
; custom_emsesp_ip = 10.10.10.175 ; S3
custom_emsesp_ip = 192.168.1.225 ; E32V2

; build_type = debug
; monitor_filters = esp32_exception_decoder

; ** modules **
; example below is using a locally built version of EMS-ESP-Modules. You can also test with:
;    rm -rf .pio/libdeps/native/EMS-ESP-Modules; pio run -e native -t clean; pio run -e native -t exec
; lib_deps =
;   file://../modules/EMS-ESP-Modules

[env:native]
extra_scripts = 
;   pre:scripts/refresh_module_library_native.py
  ; post:scripts/run_native.py

[env:s_16M_P]
extra_scripts =
  pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time
  scripts/rename_fw.py
  scripts/upload.py
; platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc2/platform-espressif32.zip

[env:s3_16M_P]
extra_scripts =
  ; pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time
  scripts/rename_fw.py
  scripts/upload.py

[env:s_4M]
extra_scripts =
  ; pre:scripts/build_interface.py ; comment out if you don't want to re-build the WebUI each time
  scripts/rename_fw.py
  ; scripts/upload.py
  
; pio run -e debug
; or from Visual Studio Code do PIO -> Project Tasks -> debug -> General -> Upload and Monitor
; options for debugging are: EMSESP_DEBUG EMSESP_UART_DEBUG EMSESP_DEBUG_SENSOR
[env:debug]
board = esp32dev
framework = arduino
platform = espressif32
board_build.partitions = esp32_partition_debug.csv
board_upload.flash_size = 4MB
board_build.filesystem = littlefs
upload_protocol = esptool
build_type = debug
monitor_raw = no
monitor_filters = esp32_exception_decoder
debug_tool = esp-prog
debug_init_break = tbreak setup
build_flags = ${factory_settings.build_flags} -DEMSESP_EN_ONLY -DCORE_DEBUG_LEVEL=5 -DONEWIRE_CRC16=0 -DNO_GLOBAL_ARDUINOOTA -DARDUINOJSON_ENABLE_STD_STRING=1 -DESP32=1 -DARDUINO_ARCH_ESP32=1
upload_port = /dev/ttyUSB0
extra_scripts =
  scripts/rename_fw.py
  post:scripts/app-tls-size.py
