diff --git a/extra_scripts.py b/extra_scripts.py new file mode 100644 index 0000000..c981db8 --- /dev/null +++ b/extra_scripts.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python +import time +Import("env") + +# ------------------------------------------------------------------------------ +# Utils +# ------------------------------------------------------------------------------ + +class Color: + BLACK = '\x1b[1;30m' + RED = '\x1b[1;31m' + GREEN = '\x1b[1;32m' + YELLOW = '\x1b[1;33m' + BLUE = '\x1b[1;34m' + MAGENTA = '\x1b[1;35m' + CYAN = '\x1b[1;36m' + WHITE = '\x1b[1;37m' + LIGHT_GREY = '\x1b[0;30m' + LIGHT_RED = '\x1b[0;31m' + LIGHT_GREEN = '\x1b[0;32m' + LIGHT_YELLOW = '\x1b[0;33m' + LIGHT_BLUE = '\x1b[0;34m' + LIGHT_MAGENTA = '\x1b[0;35m' + LIGHT_CYAN = '\x1b[0;36m' + LIGHT_WHITE = '\x1b[0;37m' + +def clr(color, text): + return color + str(text) + '\x1b[0m' + +# ------------------------------------------------------------------------------ +# Callbacks +# ------------------------------------------------------------------------------ + +def check_size(source, target, env): + time.sleep(1) + size = target[0].get_size() + print clr(Color.LIGHT_BLUE, "Binary size: %s bytes" % size) + #if size > 512000: + # print clr(Color.LIGHT_RED, "File too large for OTA!") + # Exit(1) + +# ------------------------------------------------------------------------------ +# Hooks +# ------------------------------------------------------------------------------ + +env.AddPostAction("$BUILD_DIR/${PROGNAME}.bin", check_size) diff --git a/platformio.ini b/platformio.ini index b9c5c9a..4a61d44 100644 --- a/platformio.ini +++ b/platformio.ini @@ -8,27 +8,36 @@ ; http://docs.platformio.org/en/stable/projectconf.html [platformio] -env_default = sonoffsc +env_default = sonoff-sc src_dir = sonoffsc -[env:sonoff-sc] +[common] platform = atmelavr board = uno framework = arduino -build_flags = -DDHT_TYPE=DHT11 +build_flags = -Llibs -DDEBUG -Wl,-u,vfprintf -lprintf_flt lib_deps = Adafruit Unified Sensor DHT sensor library MsTimer2 TimerOne +lib_ignore = +extra_scripts = extra_scripts.py + +[env:sonoff-sc] +platform = ${common.platform} +board = ${common.board} +framework = ${common.framework} +lib_deps = ${common.lib_deps} +lib_ignore = ${common.lib_ignore} +build_flags = ${common.build_flags} -DDHT_TYPE=DHT11 +extra_scripts = ${common.extra_scripts} [env:sonoff-sc-pro] -platform = atmelavr -board = uno -framework = arduino -build_flags = -DDHT_TYPE=DHT22 -lib_deps = - Adafruit Unified Sensor - DHT sensor library - MsTimer2 - TimerOne +platform = ${common.platform} +board = ${common.board} +framework = ${common.framework} +lib_deps = ${common.lib_deps} +lib_ignore = ${common.lib_ignore} +build_flags = ${common.build_flags} -DDHT_TYPE=DHT22 +extra_scripts = ${common.extra_scripts}