[PIO build] Build issues caused by incorrect precompile processing

It looks like `ESP32` is not defined anymore, which leads to various issues when building.
This commit is contained in:
TD-er
2018-07-08 00:29:11 +02:00
parent 89578058b6
commit e7764ca7e6
13 changed files with 385 additions and 330 deletions
@@ -18,7 +18,7 @@ License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifdef ESP8266 // Needed for precompile issues.
#include <Arduino.h>
// The Arduino standard GPIO routines are not enough,
@@ -239,3 +239,4 @@ void ICACHE_RAM_ATTR ESPeasySoftwareSerial::rxRead() {
// it gets set even when interrupts are disabled
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, 1 << m_rxPin);
}
#endif
@@ -19,7 +19,7 @@ License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifdef ESP8266 // Needed for precompile issues.
#ifndef ESPeasySoftwareSerial_h
#define ESPeasySoftwareSerial_h
@@ -76,3 +76,4 @@ private:
#endif
#endif
+2 -1
View File
@@ -22,7 +22,7 @@
License along with MechInputs. If not, see
<http://www.gnu.org/licenses/>.
-------------------------------------------------------------------------*/
#ifdef ESP8266 // Needed for precompile issues.
#include "jkSDS011.h"
CjkSDS011::CjkSDS011(int16_t pinRX, int16_t pinTX)
@@ -186,3 +186,4 @@ boolean CjkSDS011::ReadAverage(float &pm25, float &pm10)
pm10 = NAN;
return false;
}
#endif
+2 -1
View File
@@ -22,7 +22,7 @@
License along with MechInputs. If not, see
<http://www.gnu.org/licenses/>.
-------------------------------------------------------------------------*/
#ifdef ESP8266 // Needed for precompile issues.
#ifndef _jkSDS011_H_
#define _jkSDS011_H_
@@ -79,3 +79,4 @@ private:
};
#endif
#endif
+315 -279
View File
@@ -1,51 +1,51 @@
#
# PlatformIO Project Configuration File
#
# Please make sure to read documentation with examples first
# http://docs.platformio.org/en/stable/projectconf.html
#
;
; PlatformIO Project Configuration File
;
; Please make sure to read documentation with examples first
; http://docs.platformio.org/en/stable/projectconf.html
;
###########################################################################################
# You can uncomment or add here Your favorite environment you want to work on at the moment
# (uncomment only one !)
###########################################################################################
; *********************************************************************;
; You can uncomment or add here Your favorite environment you want to work on at the moment
; (uncomment only one !)
; *********************************************************************;
[platformio]
#env_default = esp32dev
#env_default = dev_ESP8266_4096
#env_default = normal_ESP8266_1024
#env_default = normal_ESP8266_4096
# ..etc
;env_default = esp32dev
;env_default = dev_ESP8266_4096
;env_default = normal_ESP8266_1024
;env_default = normal_ESP8266_4096
; ..etc
#minimal version for esps with 512K or less flash (only has minimal plugin set)
;minimal version for esps with 512K or less flash (only has minimal plugin set)
; [env:mini_512]
; platform = ${common.platform}
; framework = ${common.framework}
; board = esp01
; upload_speed = ${common.upload_speed}
; build_flags = !echo -Wl,-Tesp8266.flash.512k64.ld -D BUILD_GIT=\'\"$(git describe)\"\'
; # upload_port = /dev/ttyUSB0
; ; upload_port = /dev/ttyUSB0
# add these:
# -Werror -Wall -Wextra -pedantic -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op
# -Wmissing-include-dirs -Wnoexcept -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-sentinel
# -Wstrict-overflow=5 -Wundef -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
# thanks @chouffe103
; add these:
; -Werror -Wall -Wextra -pedantic -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op
; -Wmissing-include-dirs -Wnoexcept -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-sentinel
; -Wstrict-overflow=5 -Wundef -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
; thanks @chouffe103
[compiler_warnings]
build_flags =
-Wall -Wno-parentheses -fdiagnostics-show-option
##########################################################################################
; *********************************************************************
###### Definition cheat sheet:
# board_build.flash_mode in terms of performance: QIO > QOUT > DIO > DOUT
# for lib_ldf_mode, see http://docs.platformio.org/en/latest/librarymanager/ldf.html#ldf
; **** Definition cheat sheet:
; board_build.flash_mode in terms of performance: QIO > QOUT > DIO > DOUT
; for lib_ldf_mode, see http://docs.platformio.org/en/latest/librarymanager/ldf.html;ldf
###### Frequently used build flags:
# Use custom.h file to override default settings for ESPeasy: -D USE_CUSTOM_H
# Set VCC mode to measure Vcc of ESP chip : -D FEATURE_ADC_VCC=true
; **** Frequently used build flags:
; Use custom.h file to override default settings for ESPeasy: -D USE_CUSTOM_H
; Set VCC mode to measure Vcc of ESP chip : -D FEATURE_ADC_VCC=true
[core_2_3_0]
platform = espressif8266@1.5.0
@@ -72,8 +72,8 @@ platform = https://github.com/platformio/platform-espressif32.g
[core_esp32]
platform = ${core_esp32_1_1_1.platform}
build_flags = -D BUILD_GIT='"${sysenv.TRAVIS_TAG}"'
-lstdc++ -lsupc++
lib_ignore = ESPeasySoftwareSerial, EspESPeasySoftwareSerial, AS_BH1750, ESP8266WiFi, ESP8266Ping, ESP8266WebServer, ESP8266HTTPUpdateServer, ESP8266mDNS, IRremoteESP8266, ESPEasy_ESP8266Ping, SerialSensors
-lstdc++ -lsupc++
lib_ignore = AS_BH1750, ESP8266WiFi, ESP8266Ping, ESP8266WebServer, ESP8266HTTPUpdateServer, ESP8266mDNS, IRremoteESP8266, ESPEasy_ESP8266Ping, SerialSensors
lib_deps = ESP32WebServer
monitor_speed = 115200
@@ -87,6 +87,7 @@ build_flags = -D BUILD_GIT='"${sysenv.TRAVIS_TAG}"' ; ${compiler_
lib_deps = ""
lib_ignore = ESP32_ping, ESP32WebServer
lib_ldf_mode = chain
lib_archive = false
upload_speed = 460800
framework = arduino
board = esp12e
@@ -138,11 +139,11 @@ build_flags = ${common.build_flags} -Wl,-Tesp8266.flash.2m.ld
board_build.flash_mode = dio
build_flags = ${common.build_flags} -Wl,-Tesp8266.flash.4m1m.ld
### ESP32 pre-alpha test build ###########################################################
# Very limited build for ESP32, to start testing regular building for ESP32. #
# Will probably not work, not tested and guaranteed to take a few hours time of some #
# still trying to build the version without reading this warning. #
##########################################################################################
;;; ESP32 pre-alpha test build ; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;;;
; Very limited build for ESP32, to start testing regular building for ESP32. ;
; Will probably not work, not tested and guaranteed to take a few hours time of some ;
; still trying to build the version without reading this warning. ;
; *********************************************************************
[env:esp32dev]
platform = ${core_esp32.platform}
board = esp32dev
@@ -150,21 +151,23 @@ build_flags = ${core_esp32.build_flags} -DPLUGIN_SET_GENERIC_ESP3
lib_deps = ${core_esp32.lib_deps}
lib_ignore = ${core_esp32.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
### NORMAL (STABLE) ######################################################################
# normal version with stable plugins #
##########################################################################################
;;; NORMAL (STABLE) ; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;;
; normal version with stable plugins ;
; *********************************************************************
# NORMAL: 1024k version --------------------------
; NORMAL: 1024k version --------------------------
[env:normal_ESP8266_1024]
platform = ${common.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -173,12 +176,14 @@ board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_flags = ${esp8266_1M.build_flags}
# NORMAL: 1024k for esp8285 ----------------------
; NORMAL: 1024k for esp8285 ----------------------
[env:normal_ESP8285_1024]
platform = ${common.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -187,25 +192,27 @@ board_upload.maximum_size = ${esp8285_1M.board_upload.maximum_size}
board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
build_flags = ${esp8285_1M.build_flags}
# NORMAL: 2048k version --------------------------
; NORMAL: 2048k version --------------------------
[env:normal_WROOM02_2048]
platform = ${common.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
board = ${espWroom2M.board}
board_build.flash_mode = ${espWroom2M.board_build.flash_mode}
build_flags = ${espWroom2M.build_flags}
# NORMAL: 4096k version --------------------------
; NORMAL: 4096k version --------------------------
[env:normal_ESP8266_4096]
platform = ${common.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -215,16 +222,17 @@ build_flags = ${esp8266_4M.build_flags}
### TESTING ##############################################################################
# additional plugins (and dependend code) that are in test-stadium #
##########################################################################################
;;; TESTING ; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****
; additional plugins (and dependend code) that are in test-stadium ;
; *********************************************************************
# TEST: 1024k version ----------------------------
; TEST: 1024k version ----------------------------
[env:test_ESP8266_1024]
platform = ${testing.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -233,12 +241,13 @@ board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_flags = ${esp8266_1M.build_flags} -D PLUGIN_BUILD_TESTING
# TEST: 1024k for esp8285 ------------------------
; TEST: 1024k for esp8285 ------------------------
[env:test_ESP8285_1024]
platform = ${testing.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -247,12 +256,13 @@ board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
board = ${esp8285_1M.board}
build_flags = ${esp8285_1M.build_flags} -D PLUGIN_BUILD_TESTING
# TEST: 2048k version ----------------------------
; TEST: 2048k version ----------------------------
[env:test_WROOM02_2048]
platform = ${testing.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -260,12 +270,13 @@ board_build.flash_mode = ${espWroom2M.board_build.flash_mode}
board = ${espWroom2M.board}
build_flags = ${espWroom2M.build_flags} -D PLUGIN_BUILD_TESTING
# TEST: 4096k version ----------------------------
; TEST: 4096k version ----------------------------
[env:test_ESP8266_4096]
platform = ${testing.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
board = ${common.board}
upload_speed = ${common.upload_speed}
@@ -273,12 +284,13 @@ monitor_speed = ${common.monitor_speed}
board_build.flash_mode = ${esp8266_4M.board_build.flash_mode}
build_flags = ${esp8266_4M.build_flags} -D PLUGIN_BUILD_TESTING
# TEST: 4096k version + FEATURE_ADC_VCC ----------
; TEST: 4096k version + FEATURE_ADC_VCC ----------
[env:test_ESP8266_4096_VCC]
platform = ${testing.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
board = ${common.board}
upload_speed = ${common.upload_speed}
@@ -288,16 +300,17 @@ build_flags = ${esp8266_4M.build_flags} -D PLUGIN_BUILD_TESTING -D
### DEV ##################################################################################
# additional plugins (and dependend code) that is in development (probably broken or incomplete)
##########################################################################################
;;; DEV ; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;;
; additional plugins (and dependend code) that is in development (probably broken or incomplete)
; *********************************************************************
# DEV : 1024k version ----------------------------
; DEV : 1024k version ----------------------------
[env:dev_ESP8266_1024]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -306,12 +319,13 @@ board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
board = ${common.board}
build_flags = ${esp8266_1M.build_flags} -D PLUGIN_BUILD_DEV
# DEV: 1024k for esp8285 -------------------------
; DEV: 1024k for esp8285 -------------------------
[env:dev_ESP8285_1024]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -320,12 +334,13 @@ board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
board = ${esp8285_1M.board}
build_flags = ${esp8285_1M.build_flags} -D PLUGIN_BUILD_DEV
# DEV: 2048k version -----------------------------
; DEV: 2048k version -----------------------------
[env:dev_WROOM02_2048]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -333,12 +348,13 @@ board_build.flash_mode = ${espWroom2M.board_build.flash_mode}
board = ${espWroom2M.board}
build_flags = ${espWroom2M.build_flags} -D PLUGIN_BUILD_DEV
# DEV : 4096k version ----------------------------
; DEV : 4096k version ----------------------------
[env:dev_ESP8266_4096]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
board = ${common.board}
upload_speed = ${common.upload_speed}
@@ -348,16 +364,17 @@ build_flags = ${esp8266_4M.build_flags} -D PLUGIN_BUILD_DEV
### DEV + PUYA ###########################################################################
# special patched version for PUYA flash chips, see issue #650 at Github #
##########################################################################################
;;; DEV + PUYA ; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;
; special patched version for PUYA flash chips, see issue ;650 at Github ;
; *********************************************************************
# DEV+PUYA : 1024k version -----------------------
; DEV+PUYA : 1024k version -----------------------
[env:dev_ESP8266PUYA_1024]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
board = ${common.board}
upload_speed = ${common.upload_speed}
@@ -366,12 +383,13 @@ board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_flags = ${esp8266_1M.build_flags} -D PLUGIN_BUILD_DEV -D FLASH_QUIRK_WRITE_0_TO_1
# DEV+PUYA : 1024k version + FEATURE_ADC_VCC -----
; DEV+PUYA : 1024k version + FEATURE_ADC_VCC -----
[env:dev_ESP8266PUYA_1024_VCC]
platform = ${dev.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
board = ${common.board}
upload_speed = ${common.upload_speed}
@@ -383,59 +401,62 @@ build_flags = ${esp8266_1M.build_flags} -D PLUGIN_BUILD_DEV -D FLA
### HARDWARE SPECIFIC VERSIONS ###########################################################
# versions specially designed to fit, and contents only needed plugins for each hardware #
##########################################################################################
;;; HARDWARE SPECIFIC VERSIONS ; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;;;
; versions specially designed to fit, and contents only needed plugins for each hardware ;
; *********************************************************************
# ITEAD Products ################################
; ITEAD Products ; ****; ****; ****; ****; ****;;
# ITEAD / SONOFF BASIC version ------------------
#[env:hard_SONOFF_BASIC]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_BASIC
; ITEAD / SONOFF BASIC version ------------------
;[env:hard_SONOFF_BASIC]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_BASIC
# ITEAD / SONOFF TH10 version -------------------
#[env:hard_SONOFF_TH10]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TH10
; ITEAD / SONOFF TH10 version -------------------
;[env:hard_SONOFF_TH10]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TH10
# ITEAD / SONOFF TH16 version -------------------
#[env:hard_SONOFF_TH16]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TH16
; ITEAD / SONOFF TH16 version -------------------
;[env:hard_SONOFF_TH16]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TH16
# ITEAD / SONOFF POW version --------------------
# Sonoff Pow (ESP8266 - HLW8012)
# GPIO00 Button
# GPIO05 HLW8012 Sel output
# GPIO12 Red Led and Relay (0 = Off, 1 = On)
# GPIO13 HLW8012 CF1 voltage / current
# GPIO14 HLW8012 CF power
# GPIO15 Blue Led (0 = On, 1 = Off)
; ITEAD / SONOFF POW version --------------------
; Sonoff Pow (ESP8266 - HLW8012)
; GPIO00 Button
; GPIO05 HLW8012 Sel output
; GPIO12 Red Led and Relay (0 = Off, 1 = On)
; GPIO13 HLW8012 CF1 voltage / current
; GPIO14 HLW8012 CF power
; GPIO15 Blue Led (0 = On, 1 = Off)
[env:hard_SONOFF_POW]
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -444,16 +465,17 @@ platform = ${Sonoff.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
board_build.flash_mode = ${Sonoff.board_build.flash_mode}
board = ${Sonoff.board}
build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_POW
# Sonoff Pow R2 (ESP8266 - CSE7766)
# GPIO00 Button
# GPIO01 Serial RXD 4800 baud 8E1 CSE7766 energy sensor
# GPIO03 Serial TXD
# GPIO12 Red Led and Relay (0 = Off, 1 = On)
# GPIO13 Blue Led (0 = On, 1 = Off)
; Sonoff Pow R2 (ESP8266 - CSE7766)
; GPIO00 Button
; GPIO01 Serial RXD 4800 baud 8E1 CSE7766 energy sensor
; GPIO03 Serial TXD
; GPIO12 Red Led and Relay (0 = Off, 1 = On)
; GPIO13 Blue Led (0 = On, 1 = Off)
[env:hard_SONOFF_POW_R2]
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
@@ -462,197 +484,211 @@ platform = ${Sonoff.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
board_build.flash_mode = ${Sonoff.board_build.flash_mode}
board = ${Sonoff.board}
build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_POW_R2
# ITEAD / SONOFF S20 version --------------------
#[env:hard_SONOFF_S20]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_S20
; ITEAD / SONOFF S20 version --------------------
;[env:hard_SONOFF_S20]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_S20
# ITEAD / SONOFF 4CH version --------------------
#[env:hard_SONOFF_4CH]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_4CH
; ITEAD / SONOFF 4CH version --------------------
;[env:hard_SONOFF_4CH]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_4CH
# ITEAD / SONOFF TOUCH version ------------------
#[env:hard_SONOFF_TOUCH]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${Sonoff.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_build.flash_mode = ${Sonoff.board_build.flash_mode}
#board = ${Sonoff.board}
#build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TOUCH
; ITEAD / SONOFF TOUCH version ------------------
;[env:hard_SONOFF_TOUCH]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${Sonoff.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_build.flash_mode = ${Sonoff.board_build.flash_mode}
;board = ${Sonoff.board}
;build_flags = ${Sonoff.build_flags} -D PLUGIN_SET_SONOFF_TOUCH
# LED Strips #####################################
; LED Strips ; ****; ****; ****; ****; ****; ****;
# Huacanxing / H801 ------------------------------
#[env:hard_HUACANXING_H801]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_H801
; Huacanxing / H801 ------------------------------
;[env:hard_HUACANXING_H801]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_H801
# MagicHome / Led Controller ---------------------
#[env:hard_MAGICHOME]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_MAGICHOME
; MagicHome / Led Controller ---------------------
;[env:hard_MAGICHOME]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_MAGICHOME
# MagicHome / Led Controller with IR -------------
#[env:hard_MAGICHOME_IR]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_MAGICHOME_IR
; MagicHome / Led Controller with IR -------------
;[env:hard_MAGICHOME_IR]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_MAGICHOME_IR
### EASY VERSIONS ########################################################################
# versions specially designed to be small and cover a specific usage #
##########################################################################################
;;; EASY VERSIONS ; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****; ****
; versions specially designed to be small and cover a specific usage ;
; *********************************************************************
# Easy Temperature Sensor ------------------------
#[env:easy_TEMP]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_TEMP
; Easy Temperature Sensor ------------------------
;[env:easy_TEMP]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_TEMP
# Easy Carbon Sensor -----------------------------
#[env:easy_CARBON]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_CARBON
; Easy Carbon Sensor -----------------------------
;[env:easy_CARBON]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_CARBON
## Easy Nextion ----------------------------------
##PLUGIN_SET_EASY_NEXTION
;; Easy Nextion ----------------------------------
;;PLUGIN_SET_EASY_NEXTION
# Easy OLED Display v1 ---------------------------
#[env:easy_OLED_V1]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_OLED1
; Easy OLED Display v1 ---------------------------
;[env:easy_OLED_V1]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_OLED1
# Easy OLED Display v2 ---------------------------
#[env:easy_OLED_V2]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_OLED2
; Easy OLED Display v2 ---------------------------
;[env:easy_OLED_V2]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_OLED2
# Easy Relay Switch ------------------------------
#[env:easy_OLED_V2]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_RELAY
; Easy Relay Switch ------------------------------
;[env:easy_OLED_V2]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_EASY_RELAY
# Easy Generic (1M) device ----------------------
#[env:easy_GENERIC_1M]
#upload_speed = ${common.upload_speed}
#monitor_speed = ${common.monitor_speed}
#framework = ${common.framework}
#platform = ${common.platform}
#lib_deps = ${common.lib_deps}
#lib_ignore = ${common.lib_ignore}
#lib_ldf_mode = ${common.lib_ldf_mode}
#board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
#board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
#board = esp01_1m
#build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_GENERIC_1M
; Easy Generic (1M) device ----------------------
;[env:easy_GENERIC_1M]
;upload_speed = ${common.upload_speed}
;monitor_speed = ${common.monitor_speed}
;framework = ${common.framework}
;platform = ${common.platform}
;lib_deps = ${common.lib_deps}
;lib_ignore = ${common.lib_ignore}
;lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = esp01_1m
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_GENERIC_1M
# Ventus W266 weather station
# https://www.letscontrolit.com/wiki/index.php/VentusW266
; Ventus W266 weather station
; https://www.letscontrolit.com/wiki/index.php/VentusW266
[env:hard_Ventus_W266]
platform = ${normal.platform}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
framework = ${common.framework}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
+2 -2
View File
@@ -188,7 +188,7 @@
#endif
#define MAX_FLASHWRITES_PER_DAY 100 // per 24 hour window
#define INPUT_COMMAND_SIZE 80
#define INPUT_COMMAND_SIZE 80
#define NODE_TYPE_ID_ESP_EASY_STD 1
#define NODE_TYPE_ID_ESP_EASYM_STD 17
@@ -392,7 +392,7 @@
#include <lwip/tcp_impl.h>
#endif
#include <ESP8266WiFi.h>
#include <ESP8266Ping.h>
//#include <ESP8266Ping.h>
#include <ESP8266WebServer.h>
ESP8266WebServer WebServer(80);
#include <DNSServer.h>
+12 -4
View File
@@ -5,6 +5,14 @@
#pragma GCC diagnostic warning "-Wall"
#endif
// Needed due to preprocessor issues.
#ifdef PLUGIN_SET_GENERIC_ESP32
#ifndef ESP32
#define ESP32
#endif
#endif
/****************************************************************************************************************************\
* Arduino project "ESP Easy" © Copyright www.letscontrolit.com
*
@@ -377,7 +385,7 @@ void updateLoopStats() {
const long usecSince = usecPassedSince(lastLoopStart);
loop_usec_duration_total += usecSince;
lastLoopStart = micros();
if (usecSince <= 0 || usecSince > 10000000)
if (usecSince <= 0 || usecSince > 10000000)
return; // No loop should take > 10 sec.
if (shortestLoop > static_cast<unsigned long>(usecSince)) {
shortestLoop = usecSince;
@@ -918,8 +926,8 @@ void checkSystemTimers()
TempEvent.Par4 = systemTimers[x].Par4;
TempEvent.Par5 = systemTimers[x].Par5;
systemTimers[x].timer = 0;
const int y = getPluginId(systemTimers[x].TaskIndex);
if (y >= 0) {
const int y = getPluginId(systemTimers[x].TaskIndex);
if (y >= 0) {
Plugin_ptr[y](PLUGIN_TIMER_IN, &TempEvent, dummyString);
}
}
@@ -995,4 +1003,4 @@ void backgroundtasks()
statusLED(false);
runningBackgroundTasks=false;
}
}
+7 -6
View File
@@ -1421,13 +1421,14 @@ String getLWIPversion() {
}
#endif
#ifdef ESP32
/********************************************************************************************\
Get partition table information
\*********************************************************************************************/
String getPartitionType(esp_partition_type_t partitionType, esp_partition_subtype_t partitionSubType) {
#ifdef ESP32
String getPartitionType(byte pType, byte pSubType) {
esp_partition_type_t partitionType = static_cast<esp_partition_type_t>(pType);
esp_partition_subtype_t partitionSubType = static_cast<esp_partition_subtype_t>(pSubType);
if (partitionType == ESP_PARTITION_TYPE_APP) {
if (partitionSubType >= ESP_PARTITION_SUBTYPE_APP_OTA_MIN &&
partitionSubType < ESP_PARTITION_SUBTYPE_APP_OTA_MAX) {
@@ -1475,7 +1476,8 @@ String getPartitionTableHeader(const String& itemSep, const String& lineEnd) {
return result;
}
String getPartitionTable(esp_partition_type_t partitionType, const String& itemSep, const String& lineEnd) {
String getPartitionTable(byte pType, const String& itemSep, const String& lineEnd) {
esp_partition_type_t partitionType = static_cast<esp_partition_type_t>(pType);
String result;
const esp_partition_t * _mypart;
esp_partition_iterator_t _mypartiterator = esp_partition_find(partitionType, ESP_PARTITION_SUBTYPE_ANY, NULL);
@@ -1492,12 +1494,11 @@ String getPartitionTable(esp_partition_type_t partitionType, const String& itemS
result += itemSep;
result += (_mypart->encrypted ? F("Yes") : F("-"));
result += lineEnd;
} while (_mypartiterator = esp_partition_next(_mypartiterator));
} while ((_mypartiterator = esp_partition_next(_mypartiterator)) != NULL);
}
esp_partition_iterator_release(_mypartiterator);
return result;
}
#endif
+3 -2
View File
@@ -2,8 +2,9 @@
//#######################################################################################################
//#################################### Plugin-010: LuxRead ############################################
//#######################################################################################################
#include <AS_BH1750.h>
#ifdef ESP8266 // Needed for precompile issues.
#include "AS_BH1750.h"
#endif
#define PLUGIN_010
#define PLUGIN_ID_010 10
+3 -1
View File
@@ -4,8 +4,10 @@
//#######################################################################################################
#ifdef ESP8266 // Needed for precompile issues.
#include <IRremoteESP8266.h>
#endif
IRrecv *irReceiver;
decode_results results;
+2
View File
@@ -3,7 +3,9 @@
//#################################### Plugin 035: Output IR ############################################
//#######################################################################################################
#ifdef ESP8266 // Needed for precompile issues.
#include <IRremoteESP8266.h>
#endif
IRsend *Plugin_035_irSender;
#define PLUGIN_035
+31 -31
View File
@@ -14,14 +14,14 @@
#define PLUGIN_NAME_044 "Communication - P1 Wifi Gateway"
#define PLUGIN_VALUENAME1_044 "P1WifiGateway"
#define STATUS_LED 12
#define P044_STATUS_LED 12
#define P044_BUFFER_SIZE 1024
#define NETBUF_SIZE 600
#define DISABLED 0
#define WAITING 1
#define READING 2
#define CHECKSUM 3
#define DONE 4
#define P044_NETBUF_SIZE 600
#define P044_DISABLED 0
#define P044_WAITING 1
#define P044_READING 2
#define P044_CHECKSUM 3
#define P044_DONE 4
boolean Plugin_044_init = false;
boolean serialdebug = false;
@@ -38,7 +38,7 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
{
boolean success = false;
static byte connectionState = 0;
static int state = DISABLED;
static int state = P044_DISABLED;
switch (function)
{
@@ -103,8 +103,8 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
case PLUGIN_INIT:
{
pinMode(STATUS_LED, OUTPUT);
digitalWrite(STATUS_LED, 0);
pinMode(P044_STATUS_LED, OUTPUT);
digitalWrite(P044_STATUS_LED, 0);
LoadTaskSettings(event->TaskIndex);
if ((ExtraTaskSettings.TaskDevicePluginConfigLong[0] != 0) && (ExtraTaskSettings.TaskDevicePluginConfigLong[1] != 0))
@@ -155,7 +155,7 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
}
state = WAITING;
state = P044_WAITING;
success = true;
break;
}
@@ -237,26 +237,26 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
int timeOut = RXWait;
while (timeOut > 0)
{
while (Serial.available() && state != DONE) {
while (Serial.available() && state != P044_DONE) {
if (bytes_read < P044_BUFFER_SIZE - 5) {
char ch = Serial.read();
digitalWrite(STATUS_LED, 1);
digitalWrite(P044_STATUS_LED, 1);
switch (state) {
case DISABLED: //ignore incoming data
case P044_DISABLED: //ignore incoming data
break;
case WAITING:
case P044_WAITING:
if (ch == '/') {
Plugin_044_serial_buf[0] = ch;
bytes_read=1;
state = READING;
state = P044_READING;
} // else ignore data
break;
case READING:
case P044_READING:
if (ch == '!') {
if (CRCcheck) {
state = CHECKSUM;
state = P044_CHECKSUM;
} else {
state = DONE;
state = P044_DONE;
}
}
if (validP1char(ch)) {
@@ -270,19 +270,19 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
addLog(LOG_LEVEL_DEBUG, F("P1 : Error: DATA corrupt, discarded input."));
Serial.flush();
bytes_read = 0;
state = WAITING;
state = P044_WAITING;
}
break;
case CHECKSUM:
case P044_CHECKSUM:
checkI ++;
if (checkI == 4) {
checkI = 0;
state = DONE;
state = P044_DONE;
}
Plugin_044_serial_buf[bytes_read] = ch;
bytes_read++;
break;
case DONE:
case P044_DONE:
// Plugin_044_serial_buf[bytes_read]= '\n';
// bytes_read++;
// Plugin_044_serial_buf[bytes_read] = 0;
@@ -293,16 +293,16 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
{
Serial.read(); // when the buffer is full, just read remaining input, but do not store...
bytes_read = 0;
state = WAITING; // reset
state = P044_WAITING; // reset
}
digitalWrite(STATUS_LED, 0);
digitalWrite(P044_STATUS_LED, 0);
timeOut = RXWait; // if serial received, reset timeout counter
}
delay(1);
timeOut--;
}
if (state == DONE) {
if (state == P044_DONE) {
if (checkDatagram(bytes_read)) {
Plugin_044_serial_buf[bytes_read] = '\r';
bytes_read++;
@@ -327,8 +327,8 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
}
bytes_read = 0;
state = WAITING;
} // state == DONE
state = P044_WAITING;
} // state == P044_DONE
}
success = true;
}
@@ -339,9 +339,9 @@ boolean Plugin_044(byte function, struct EventStruct *event, String& string)
return success;
}
void blinkLED() {
digitalWrite(STATUS_LED, 1);
digitalWrite(P044_STATUS_LED, 1);
delay(500);
digitalWrite(STATUS_LED, 0);
digitalWrite(P044_STATUS_LED, 0);
}
/*
validP1char
@@ -396,7 +396,7 @@ unsigned int CRC16(unsigned int crc, unsigned char *buf, int len)
}
/* checkDatagram
checks whether the checksum of the data received from P1 matches the checksum attached to the
checks whether the P044_CHECKSUM of the data received from P1 matches the P044_CHECKSUM attached to the
telegram
based on code written by Jan ten Hove
https://github.com/jantenhove/P1-Meter-ESP8266
+2 -1
View File
@@ -9,7 +9,7 @@
This plugin reads the particle concentration from SDS011 Sensor
DevicePin1 - RX on ESP, TX on SDS
*/
#ifdef ESP8266 // Needed for precompile issues.
#define PLUGIN_056
#define PLUGIN_ID_056 56
@@ -204,3 +204,4 @@ void Plugin_056_setWorkingPeriod(int minutes) {
}
#endif // USES_P056
#endif