mirror of https://github.com/arendst/Tasmota.git
30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
# Original idea by Pascal Gollor at 2022-12-13
|
|
|
|
Import("env")
|
|
|
|
import os
|
|
import tasmotapiolib
|
|
|
|
# You need to specify 'upload_port' in platform_override.ini at '[env]' section
|
|
|
|
# clear upload flags
|
|
env.Replace(UPLOADERFLAGS="")
|
|
|
|
# Use espupload.py which supports both unzipped and zipped binaries
|
|
env.Replace(UPLOADER=os.path.join("pio-tools", "espupload.py"))
|
|
|
|
# unzipped binary location: build_output\firmware\tasmota-theo.bin
|
|
bin_file = tasmotapiolib.get_final_bin_path(env)
|
|
# zipped binary location: build_output\firmware\tasmota-theo.bin.gz
|
|
bin_gz_file = bin_file.with_suffix(".bin.gz")
|
|
|
|
if os.path.exists(bin_gz_file):
|
|
# Zipped binary file - build_output\firmware\tasmota-theo.bin.gz
|
|
env.Replace(UPLOADCMD="$PYTHONEXE $UPLOADER -u $UPLOAD_PORT -f {}".format(bin_gz_file))
|
|
elif os.path.exists(bin_file):
|
|
# Unzipped binary file - build_output\firmware\tasmota-theo.bin
|
|
env.Replace(UPLOADCMD="$PYTHONEXE $UPLOADER -u $UPLOAD_PORT -f {}".format(bin_file))
|
|
else:
|
|
# Unzipped binary file - C:\tmp\.pioenvs\tasmota-theo\firmware.bin
|
|
env.Replace(UPLOADCMD="$PYTHONEXE $UPLOADER -u $UPLOAD_PORT -f $SOURCES")
|