; MIT License - Copyright (c) 2020 Francis Van Roie ; For full license information read the LICENSE file in the project folder ; ; PlatformIO Project Configuration File ; ; Please visit documentation for the other options and examples ; http://docs.platformio.org/page/projectconf.html ;************************************************************** ; Common project settings ;************************************************************** [platformio] extra_configs = user_setups/lcd_config.ini ; -- Put active [env] files in this dir to be included in the build menu user_setups/active/*.ini ; -- Add customizations to this file only: platformio_override.ini default_envs = ; Uncomment the needed environments in platformio_override.ini ; You can also create new environments in in platformio_override.ini ${override.extra_default_envs} [override] ; -- By default there are no ${override.build_flags} set ; -- to use it, copy the platformio_override.ini file from the template build_flags = extra_default_envs = ;*************************************************** ; Common environment settings ;*************************************************** [env] upload_speed = 921600 monitor_speed = 115200 build_flags = -D PIOENV=\"${PIOENV}\" -Os ; Code Size Optimization ;-Og ; Code Debug Optimization ;-w ; Suppress warnings -D CORE_DEBUG_LEVEL=0 ; 0=Silent, 1=Errors, 2=Warnings -I include ; include lv_conf.h and hasp_conf.h ; -- littlevgl build options ------------------------------ -D LV_CONF_INCLUDE_SIMPLE ; for lvgl -D LV_LVGL_H_INCLUDE_SIMPLE ; for lv_drivers -D LV_COMP_CONF_INCLUDE_SIMPLE ; for components -D LV_SYMBOL_DEF_H ; don't load default symbol defines -D LV_MEM_FULL_DEFRAG_CNT=4 ; stability: run lv_mem_defrag more frequently ; -- ESP build options ------------------------------------ -D SPIFFS_TEMPORAL_FD_CACHE ; speedup opening recent files ; -- ArduinoJson build options ---------------------------- -D ARDUINOJSON_DECODE_UNICODE=1 ; for utf-8 symbols ; -- StreamUtils build options ---------------------------- -D STREAMUTILS_ENABLE_EEPROM=1 ; for STM32, it also supports EEPROM ; -- Hasp build options ---------------------------- -D HASP_VER_MAJ=0 -D HASP_VER_MIN=5 -D HASP_VER_REV=2 -D HASP_LOG_LEVEL=LOG_LEVEL_TRACE ${override.build_flags} ; -- Shared library dependencies in all environments ; Warning : don't put comments after github links => causes infinite download loop lib_deps = bxparks/AceButton@^1.8.2 ; GPIO button library bblanchon/ArduinoJson@^6.17.3 ; Json(l) parser bblanchon/StreamUtils@1.6.0 ; for EEPromStream knolleary/PubSubClient@^2.8.0 ; MQTT client git+https://github.com/fvanroie/ConsoleInput.git ;git+https://github.com/andrethomas/TasmotaSlave.git ;git+https://github.com/lvgl/lvgl.git lvgl/lvgl@^7.11.0 ; from PIO library bodmer/TFT_eSPI@^2.3.62 ; Tft SPI drivers EXACT version 2.3.5 has compile error ;git+https://github.com/Bodmer/TFT_eSPI.git ; ------ Unused / Test libraries ;https://github.com/netwizeBE/TFT_eSPI.git ;Syslog@^2.0.0 ; Obsoleted ;AsyncTCP ;https://github.com/me-no-dev/ESPAsyncWebServer/archive/master.zip ;https://github.com/me-no-dev/ESPAsyncTCP/archive/master.zip src_filter = +<*> -<.git/> - - - - - ; -- Platform specific build flags [esp32] framework = arduino platform = espressif32 board_upload.flash_size=4MB board_upload.maximum_size = 4194304 board_build.partitions = user_setups/esp32/partition_app1704k_spiffs720k.csv ; ----- crash reporter monitor_filters = esp32_exception_decoder ; ----- debugger check_tool = cppcheck check_flags = --enable=all debug_tool = esp-prog debug_init_break = tbreak setup build_flags = ${env.build_flags} -D HTTP_UPLOAD_BUFLEN=1024 ; lower http upload buffer -D MQTT_MAX_PACKET_SIZE=2048 ; longer PubSubClient messages -D HASP_CONSOLE_BUFFER=256 ; maximum length of a console/telnet command -D NO_GLOBAL_HTTPUPDATE ; dont instantiate httpUpdate ; -- lvgl build options ----------------------------- -D LV_MEM_SIZE=61440U ; 60kB lvgl memory ; -- ArduinoJson build options ---------------------------- -D ARDUINOJSON_ENABLE_PROGMEM=1 ; for PROGMEM arguments ; -- tft_espi build options ------------------------ ;-D USE_DMA_TO_TFT ; -- openHASP build options ------------------------ -D HASP_USE_TELNET=1 ;-D HASP_USE_SPIFFS=1 -D HASP_USE_LITTLEFS=1 ;-D HASP_USE_EEPROM=1 -D HASP_USE_CONFIG=1 ; Native application, not library -D LV_LOG_TRACE_TIMER=1 ; -- LittleFS build options ------------------------ -D CONFIG_LITTLEFS_FOR_IDF_3_2 lib_ignore = GxTFT XPT2046_Touchscreen Adafruit TouchScreen Adafruit BusIO Adafruit GFX Library sstaub/Ticker lv_drv_fsmc_ili9341 lv_drivers AXP192 lib_deps = LittleFS_esp32 ps_ram = -DBOARD_HAS_PSRAM -mfix-esp32-psram-cache-issue extra_scripts = tools/esp_merge_bin.py tools/analyze_elf.py ; ${env.extra_scripts} ; tools/copy_partitions.py ; -- The ESP32 has 2 SPI Hardware Busses available to use: vspi = -D TFT_MISO=19 -D TFT_MOSI=23 -D TFT_SCLK=18 hspi = -D TFT_MISO=12 -D TFT_MOSI=13 -D TFT_SCLK=14 [esp8266] framework = arduino platform = espressif8266 board_build.f_flash = 40000000L board_build.flash_mode = dout board_build.ldscript = eagle.flash.4m2m.ld ; 2Mb Spiffs board_build.f_cpu = 160000000L ; set frequency to 160MHz ; ----- crash reporter monitor_filters = esp8266_exception_decoder build_flags= -D HTTP_UPLOAD_BUFLEN=512 ; lower http upload buffer -D MQTT_MAX_PACKET_SIZE=1024 ; longer PubSubClient messages -D HASP_CONSOLE_BUFFER=160 ; maximum length of a console/telnet command -D ATOMIC_FS_UPDATE ; enabled compressed ota updates -D NO_GLOBAL_HTTPUPDATE ; dont instantiate httpUpdate ; -- lwIP Variant ----------------------------------- ;-D PIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH -D PIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY ; -- lvgl build options ----------------------------- -D LV_MEM_SIZE=12288U ; 12kB lvgl memory ; -- ArduinoJson build options ---------------------------- -D ARDUINOJSON_ENABLE_PROGMEM=1 ; for PROGMEM arguments -D ARDUINOJSON_ENABLE_STD_STRING=1 ; for std::string ; -- openHASP build options ------------------------- -D HASP_USE_TELNET=1 ;-D HASP_USE_SPIFFS=1 -D HASP_USE_LITTLEFS=1 -D HASP_USE_EEPROM=1 -D HASP_USE_ETHERNET=0 -D HASP_USE_CONFIG=1 ; Native application, not library extra_scripts = tools/copy_fw.py ; tools/pre:extra_script.py lib_ignore = ESP32 BLE Arduino GxTFT sstaub/Ticker lv_drv_fsmc_ili9341 AXP192 lib_deps = [stm32f4] framework = arduino platform = ststm32 build_flags= -I include/stm32f4 -D MQTT_MAX_PACKET_SIZE=2048 ; longer PubSubClient messages -D HASP_CONSOLE_BUFFER=220 ; maximum length of a console/telnet command -D IRAM_ATTR= ; No IRAM_ATTR available on STM32 -D ICACHE_RAM_ATTR= -D STM32 -D ARDUINOJSON_DECODE_UNICODE=1 ; for utf-8 symbols -D ARDUINOJSON_ENABLE_PROGMEM=1 ; for PROGMEM arguments -D STREAMUTILS_USE_EEPROM_UPDATE=1 ; update cell only when changed ; -- lvgl build options ----------------------------- -D LV_MEM_SIZE=20480U ; 20kB lvgl memory -D HASP_USE_SYSLOG=0 ; Needs UDP -D HASP_USE_SPIFFS=0 -D HASP_USE_LITTLEFS=0 -D HASP_USE_CONFIG=1 ; Native application, not library lib_deps = ; sstaub/Ticker @ ^3.2.0 stm32duino/STM32duino LwIP @ ^2.1.2 ;https://github.com/stm32duino/LwIP.git