version: '3' tasks: init: desc: Initialize PlatformIO project for ESP32 WROOM 32 cmds: - pio project init --board {{.BOARD}} status: - test -f platformio.ini build: desc: Compile the project cmds: - pio run upload: desc: Upload program to ESP32 cmds: - pio run --target upload deps: - build monitor: desc: Monitor serial port cmds: - pio device monitor clean: desc: Clean build files cmds: - pio run --target clean flash: desc: Compile and upload program (build + upload) cmds: - task: build - task: upload flash-monitor: desc: Compile, upload and monitor cmds: - task: flash - task: monitor erase: desc: Erase entire ESP32 flash memory cmds: - pio run --target erase erase-flash: desc: Erase flash and upload firmware (fixes LittleFS) cmds: - pio run --target erase - pio run --target upload - pio run --target uploadfs uploadfs: desc: Upload filesystem (data/) to ESP32 cmds: - pio run --target uploadfs format-flash: desc: Format only LittleFS (requires esptool.py) cmds: - esptool.py --port /dev/cu.SLAB_USBtoUART erase_region 0x110000 0x2F0000 deps: desc: Install project dependencies (Docker) cmds: - docker-compose run --rm platformio pio pkg install update: desc: Update platforms and libraries (Docker) cmds: - docker-compose run --rm platformio pio pkg update list-ports: desc: List available serial ports cmds: - pio device list lib-search: desc: Search for a library (Docker) cmds: - docker-compose run --rm platformio pio pkg search "{{.CLI_ARGS}}" lib-install: desc: Install a library (Docker) cmds: - docker-compose run --rm platformio pio pkg install --library "{{.CLI_ARGS}}" lib-list: desc: List installed libraries (Docker) cmds: - docker-compose run --rm platformio pio pkg list