mirror of https://github.com/arendst/Tasmota.git
Merge branch 'development' into teleinfo
This commit is contained in:
commit
fae80fc9dc
|
@ -52,7 +52,7 @@ The following binary downloads have been compiled with ESP8266/Arduino library c
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
### Version 8.3.1.4
|
### Version 8.3.1.5
|
||||||
|
|
||||||
- Change IRremoteESP8266 library updated to v2.7.7
|
- Change IRremoteESP8266 library updated to v2.7.7
|
||||||
- Change Adafruit_SGP30 library from v1.0.3 to v1.2.0 (#8519)
|
- Change Adafruit_SGP30 library from v1.0.3 to v1.2.0 (#8519)
|
||||||
|
@ -63,6 +63,7 @@ The following binary downloads have been compiled with ESP8266/Arduino library c
|
||||||
- Add command ``Time 4`` to display timestamp using milliseconds (#8537)
|
- Add command ``Time 4`` to display timestamp using milliseconds (#8537)
|
||||||
- Add command ``SetOption94 0/1`` to select MAX31855 or MAX6675 thermocouple support (#8616)
|
- Add command ``SetOption94 0/1`` to select MAX31855 or MAX6675 thermocouple support (#8616)
|
||||||
- Add commands ``LedPwmOn 0..255``, ``LedPwmOff 0..255`` and ``LedPwmMode1 0/1`` to control led brightness by George (#8491)
|
- Add commands ``LedPwmOn 0..255``, ``LedPwmOff 0..255`` and ``LedPwmMode1 0/1`` to control led brightness by George (#8491)
|
||||||
|
- Add ESP32 ethernet commands ``EthType 0/1``, ``EthAddress 0..31`` and ``EthClockMode 0..3``
|
||||||
- Add support for unique MQTTClient (and inherited fallback topic) by full Mac address using ``mqttclient DVES_%12X`` (#8300)
|
- Add support for unique MQTTClient (and inherited fallback topic) by full Mac address using ``mqttclient DVES_%12X`` (#8300)
|
||||||
- Add more functionality to ``Switchmode`` 11 and 12 (#8450)
|
- Add more functionality to ``Switchmode`` 11 and 12 (#8450)
|
||||||
- Add wildcard pattern ``?`` for JSON matching in rules
|
- Add wildcard pattern ``?`` for JSON matching in rules
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
## Unreleased (development)
|
## Unreleased (development)
|
||||||
|
|
||||||
|
### 8.3.1.5 20200616
|
||||||
|
|
||||||
|
- Add ESP32 ethernet commands ``EthType 0/1``, ``EthAddress 0..31`` and ``EthClockMode 0..3``
|
||||||
|
|
||||||
### 8.3.1.4 20200615
|
### 8.3.1.4 20200615
|
||||||
|
|
||||||
- Add basic support for ESP32 ethernet adding commands ``Wifi 0/1`` and ``Ethernet 0/1`` both default ON
|
- Add basic support for ESP32 ethernet adding commands ``Wifi 0/1`` and ``Ethernet 0/1`` both default ON
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -672,7 +672,7 @@
|
||||||
#define D_SENSOR_HM10_TX "HM10 - TX"
|
#define D_SENSOR_HM10_TX "HM10 - TX"
|
||||||
#define D_SENSOR_LE01MR_RX "LE-01MR - RX"
|
#define D_SENSOR_LE01MR_RX "LE-01MR - RX"
|
||||||
#define D_SENSOR_LE01MR_TX "LE-01MR - TX"
|
#define D_SENSOR_LE01MR_TX "LE-01MR - TX"
|
||||||
#define D_SENSOR_BL0940_RX "BL0940 - Rx"
|
#define D_SENSOR_BL0940_RX "BL0940 - RX"
|
||||||
#define D_SENSOR_CC1101_GDO0 "CC1101 - GDO0"
|
#define D_SENSOR_CC1101_GDO0 "CC1101 - GDO0"
|
||||||
#define D_SENSOR_CC1101_GDO2 "CC1101 - GDO2"
|
#define D_SENSOR_CC1101_GDO2 "CC1101 - GDO2"
|
||||||
#define D_SENSOR_HRXL_RX "HRXL - RX"
|
#define D_SENSOR_HRXL_RX "HRXL - RX"
|
||||||
|
@ -693,8 +693,11 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
|
#define D_SENSOR_TCP_TXD "TCP - TX"
|
||||||
|
#define D_SENSOR_TCP_RXD "TCP - RX"
|
||||||
|
|
||||||
// Units
|
// Units
|
||||||
#define D_UNIT_AMPERE "A"
|
#define D_UNIT_AMPERE "A"
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -693,6 +693,9 @@
|
||||||
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
#define D_GPIO_WEBCAM_PSCLK "CAM_PSCLK"
|
||||||
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
#define D_GPIO_WEBCAM_HSD "CAM_HSD"
|
||||||
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
#define D_GPIO_WEBCAM_PSRCS "CAM_PSRCS"
|
||||||
|
#define D_SENSOR_ETH_PHY_POWER "ETH POWER"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDC "ETH MDC"
|
||||||
|
#define D_SENSOR_ETH_PHY_MDIO "ETH MDIO"
|
||||||
#define D_SENSOR_TCP_TXD "TCP Tx"
|
#define D_SENSOR_TCP_TXD "TCP Tx"
|
||||||
#define D_SENSOR_TCP_RXD "TCP Rx"
|
#define D_SENSOR_TCP_RXD "TCP Rx"
|
||||||
|
|
||||||
|
|
|
@ -730,10 +730,15 @@
|
||||||
|
|
||||||
#ifdef ESP32
|
#ifdef ESP32
|
||||||
|
|
||||||
//#define USE_ETHERNET // Add support for ethernet (Currently fixed for Olimex ESP32-PoE)
|
//#define USE_ETHERNET // Add support for ethernet (Currently fixed for Olimex ESP32-PoE)
|
||||||
//#define USE_SPI // Add support for hardware SPI
|
// Olimex ESP32-PoE
|
||||||
//#define USE_MI_ESP32 // Add support for ESP32 as a BLE-bridge (+9k2 mem, +292k flash)
|
#define ETH_TYPE 0 // [EthType] 0 = ETH_PHY_LAN8720, 1 = ETH_PHY_TLK110
|
||||||
//#define USE_WEBCAM // Add support for webcam
|
#define ETH_ADDR 0 // [EthAddress] 0 = PHY0 .. 31 = PHY31
|
||||||
|
#define ETH_CLKMODE 3 // [EthClockMode] 0 = ETH_CLOCK_GPIO0_IN, 1 = ETH_CLOCK_GPIO0_OUT, 2 = ETH_CLOCK_GPIO16_OUT, 3 = ETH_CLOCK_GPIO17_OUT
|
||||||
|
|
||||||
|
//#define USE_SPI // Add support for hardware SPI
|
||||||
|
//#define USE_MI_ESP32 // Add support for ESP32 as a BLE-bridge (+9k2 mem, +292k flash)
|
||||||
|
//#define USE_WEBCAM // Add support for webcam
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -392,12 +392,13 @@ struct {
|
||||||
#else // ESP32
|
#else // ESP32
|
||||||
myio my_gp; // 3AC - 2 x 40 bytes (ESP32)
|
myio my_gp; // 3AC - 2 x 40 bytes (ESP32)
|
||||||
mytmplt user_template; // 3FC - 2 x 37 bytes (ESP32)
|
mytmplt user_template; // 3FC - 2 x 37 bytes (ESP32)
|
||||||
|
uint8_t eth_type; // 446
|
||||||
|
uint8_t eth_clk_mode; // 447
|
||||||
|
|
||||||
uint8_t free_esp32_446[6]; // 446
|
uint8_t free_esp32_448[4]; // 448
|
||||||
|
|
||||||
WebCamCfg webcam_config; // 44C
|
WebCamCfg webcam_config; // 44C
|
||||||
|
uint8_t eth_address; // 450
|
||||||
uint8_t free_esp32_450[1]; // 450
|
|
||||||
#endif // ESP8266 - ESP32
|
#endif // ESP8266 - ESP32
|
||||||
|
|
||||||
char serial_delimiter; // 451
|
char serial_delimiter; // 451
|
||||||
|
|
|
@ -800,6 +800,11 @@ void SettingsDefaultSet2(void)
|
||||||
|
|
||||||
// Ethernet
|
// Ethernet
|
||||||
flag4.network_ethernet |= 1;
|
flag4.network_ethernet |= 1;
|
||||||
|
#ifdef ESP32
|
||||||
|
Settings.eth_type = ETH_TYPE;
|
||||||
|
Settings.eth_clk_mode = ETH_CLKMODE;
|
||||||
|
Settings.eth_address = ETH_ADDR;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Wifi
|
// Wifi
|
||||||
flag4.network_wifi |= 1;
|
flag4.network_wifi |= 1;
|
||||||
|
@ -1447,6 +1452,13 @@ void SettingsDelta(void)
|
||||||
Settings.flag4.network_wifi = 1;
|
Settings.flag4.network_wifi = 1;
|
||||||
Settings.flag4.network_ethernet = 1;
|
Settings.flag4.network_ethernet = 1;
|
||||||
}
|
}
|
||||||
|
if (Settings.version < 0x08030105) {
|
||||||
|
#ifdef ESP32
|
||||||
|
Settings.eth_type = ETH_TYPE;
|
||||||
|
Settings.eth_clk_mode = ETH_CLKMODE;
|
||||||
|
Settings.eth_address = ETH_ADDR;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
Settings.version = VERSION;
|
Settings.version = VERSION;
|
||||||
SettingsSave(1);
|
SettingsSave(1);
|
||||||
|
|
|
@ -579,14 +579,15 @@ void GetFeatures(void)
|
||||||
feature6 |= 0x00008000; // xdrv_40_telegram.ino
|
feature6 |= 0x00008000; // xdrv_40_telegram.ino
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_HP303B
|
#ifdef USE_HP303B
|
||||||
feature6 |= 0x00010000; // xsns_73_hp303b.ino
|
feature6 |= 0x00010000; // xsns_73_hp303b.ino
|
||||||
|
#endif
|
||||||
|
#ifdef USE_TCP_BRIDGE
|
||||||
|
feature6 |= 0x00020000; // xdrv_41_tcp_bridge.ino
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_TELEINFO
|
#ifdef USE_TELEINFO
|
||||||
feature6 |= 0x00020000; // xnrg_15_teleinfo.ino
|
feature6 |= 0x00040000; // xnrg_15_teleinfo.ino
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// feature6 |= 0x00020000;
|
|
||||||
// feature6 |= 0x00040000;
|
|
||||||
// feature6 |= 0x00080000;
|
// feature6 |= 0x00080000;
|
||||||
|
|
||||||
// feature6 |= 0x00100000;
|
// feature6 |= 0x00100000;
|
||||||
|
@ -602,9 +603,9 @@ void GetFeatures(void)
|
||||||
// feature6 |= 0x10000000;
|
// feature6 |= 0x10000000;
|
||||||
// feature6 |= 0x20000000;
|
// feature6 |= 0x20000000;
|
||||||
#ifdef USE_ETHERNET
|
#ifdef USE_ETHERNET
|
||||||
feature6 |= 0x40000000;
|
feature6 |= 0x40000000; // xdrv_82_ethernet.ino
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_WEBCAM
|
#ifdef USE_WEBCAM
|
||||||
feature6 |= 0x80000000;
|
feature6 |= 0x80000000; // xdrv_81_webcam.ino
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -922,7 +922,7 @@ void Every250mSeconds(void)
|
||||||
|
|
||||||
global_state.network_down = (global_state.wifi_down && global_state.eth_down);
|
global_state.network_down = (global_state.wifi_down && global_state.eth_down);
|
||||||
|
|
||||||
if (!Settings.flag.global_state) { // Problem blinkyblinky enabled - SetOption31 - Control link led blinking
|
if (!Settings.flag.global_state && !global_state.network_down) { // SetOption31 - Control link led blinking
|
||||||
if (global_state.data &0x03) { // Any problem
|
if (global_state.data &0x03) { // Any problem
|
||||||
if (global_state.mqtt_down) { blinkinterval = 7; } // MQTT problem so blink every 2 seconds (slowest)
|
if (global_state.mqtt_down) { blinkinterval = 7; } // MQTT problem so blink every 2 seconds (slowest)
|
||||||
if (global_state.network_down) { blinkinterval = 3; } // Network problem so blink every second (slow)
|
if (global_state.network_down) { blinkinterval = 3; } // Network problem so blink every second (slow)
|
||||||
|
|
|
@ -322,6 +322,9 @@ void setup(void) {
|
||||||
|
|
||||||
XdrvCall(FUNC_INIT);
|
XdrvCall(FUNC_INIT);
|
||||||
XsnsCall(FUNC_INIT);
|
XsnsCall(FUNC_INIT);
|
||||||
|
#ifdef USE_SCRIPT
|
||||||
|
Run_Scripter(">BS",3,0);
|
||||||
|
#endif
|
||||||
|
|
||||||
rules_flag.system_init = 1;
|
rules_flag.system_init = 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -234,10 +234,10 @@ enum UserSelectablePins {
|
||||||
GPIO_BOILER_OT_TX, // OpenTherm Boiler TX pin
|
GPIO_BOILER_OT_TX, // OpenTherm Boiler TX pin
|
||||||
GPIO_WINDMETER_SPEED, // WindMeter speed counter pin
|
GPIO_WINDMETER_SPEED, // WindMeter speed counter pin
|
||||||
GPIO_BL0940_RX, // BL0940 serial interface
|
GPIO_BL0940_RX, // BL0940 serial interface
|
||||||
GPIO_TELEINFO_RX, // BL0940 serial interface
|
|
||||||
GPIO_TELEINFO_ENABLE, // BL0940 serial interface
|
|
||||||
GPIO_TCP_TX, // TCP Serial bridge
|
GPIO_TCP_TX, // TCP Serial bridge
|
||||||
GPIO_TCP_RX, // TCP Serial bridge
|
GPIO_TCP_RX, // TCP Serial bridge
|
||||||
|
GPIO_TELEINFO_RX, // TELEINFO serial interface
|
||||||
|
GPIO_TELEINFO_ENABLE,// TELEINFO Enable PIN
|
||||||
GPIO_SENSOR_END };
|
GPIO_SENSOR_END };
|
||||||
|
|
||||||
// Programmer selectable GPIO functionality
|
// Programmer selectable GPIO functionality
|
||||||
|
@ -329,8 +329,8 @@ const char kSensorNames[] PROGMEM =
|
||||||
D_SENSOR_BOILER_OT_RX "|" D_SENSOR_BOILER_OT_TX "|"
|
D_SENSOR_BOILER_OT_RX "|" D_SENSOR_BOILER_OT_TX "|"
|
||||||
D_SENSOR_WINDMETER_SPEED "|"
|
D_SENSOR_WINDMETER_SPEED "|"
|
||||||
D_SENSOR_BL0940_RX "|"
|
D_SENSOR_BL0940_RX "|"
|
||||||
D_SENSOR_TELEINFO_RX "|" D_SENSOR_TELEINFO_ENABLE "|"
|
D_SENSOR_TCP_TXD "|" D_SENSOR_TCP_RXD "|"
|
||||||
D_SENSOR_TCP_TXD "|" D_SENSOR_TCP_RXD
|
D_SENSOR_TELEINFO_RX "|" D_SENSOR_TELEINFO_ENABLE
|
||||||
;
|
;
|
||||||
|
|
||||||
const char kSensorNamesFixed[] PROGMEM =
|
const char kSensorNamesFixed[] PROGMEM =
|
||||||
|
@ -580,6 +580,10 @@ const uint8_t kGpioNiceList[] PROGMEM = {
|
||||||
GPIO_SBR_TX, // Serial Bridge Serial interface
|
GPIO_SBR_TX, // Serial Bridge Serial interface
|
||||||
GPIO_SBR_RX, // Serial Bridge Serial interface
|
GPIO_SBR_RX, // Serial Bridge Serial interface
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_TCP_BRIDGE
|
||||||
|
GPIO_TCP_TX, // TCP Serial bridge
|
||||||
|
GPIO_TCP_RX, // TCP Serial bridge
|
||||||
|
#endif
|
||||||
#ifdef USE_ZIGBEE
|
#ifdef USE_ZIGBEE
|
||||||
GPIO_ZIGBEE_TX, // Zigbee Serial interface
|
GPIO_ZIGBEE_TX, // Zigbee Serial interface
|
||||||
GPIO_ZIGBEE_RX, // Zigbee Serial interface
|
GPIO_ZIGBEE_RX, // Zigbee Serial interface
|
||||||
|
@ -688,14 +692,14 @@ const uint8_t kGpioNiceList[] PROGMEM = {
|
||||||
#ifdef USE_AS3935
|
#ifdef USE_AS3935
|
||||||
GPIO_AS3935,
|
GPIO_AS3935,
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_TELEINFO
|
|
||||||
GPIO_TELEINFO_RX,
|
|
||||||
GPIO_TELEINFO_ENABLE,
|
|
||||||
#endif
|
|
||||||
#ifdef USE_TCP_BRIDGE
|
#ifdef USE_TCP_BRIDGE
|
||||||
AGPIO(GPIO_TCP_TX), // TCP Serial bridge
|
AGPIO(GPIO_TCP_TX), // TCP Serial bridge
|
||||||
AGPIO(GPIO_TCP_RX), // TCP Serial bridge
|
AGPIO(GPIO_TCP_RX), // TCP Serial bridge
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_TELEINFO
|
||||||
|
GPIO_TELEINFO_RX,
|
||||||
|
GPIO_TELEINFO_ENABLE,
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
/********************************************************************************************/
|
/********************************************************************************************/
|
||||||
|
|
|
@ -129,9 +129,10 @@ enum UserSelectablePins {
|
||||||
GPIO_WINDMETER_SPEED, // WindMeter speed counter pin
|
GPIO_WINDMETER_SPEED, // WindMeter speed counter pin
|
||||||
GPIO_KEY1_TC, // Touch pin as button
|
GPIO_KEY1_TC, // Touch pin as button
|
||||||
GPIO_BL0940_RX, // BL0940 serial interface
|
GPIO_BL0940_RX, // BL0940 serial interface
|
||||||
|
GPIO_TCP_TX, GPIO_TCP_RX, // TCP to serial bridge
|
||||||
|
GPIO_ETH_PHY_POWER, GPIO_ETH_PHY_MDC, GPIO_ETH_PHY_MDIO, // Ethernet
|
||||||
GPIO_TELEINFO_RX, // Teleinfo telemetry data receive pin
|
GPIO_TELEINFO_RX, // Teleinfo telemetry data receive pin
|
||||||
GPIO_TELEINFO_ENABLE, // Teleinfo Enable Receive Pin
|
GPIO_TELEINFO_ENABLE, // Teleinfo Enable Receive Pin
|
||||||
GPIO_TCP_TX, GPIO_TCP_RX, // TCP to serial bridge
|
|
||||||
GPIO_SENSOR_END };
|
GPIO_SENSOR_END };
|
||||||
|
|
||||||
enum ProgramSelectablePins {
|
enum ProgramSelectablePins {
|
||||||
|
@ -222,8 +223,10 @@ const char kSensorNames[] PROGMEM =
|
||||||
D_SENSOR_BOILER_OT_RX "|" D_SENSOR_BOILER_OT_TX "|"
|
D_SENSOR_BOILER_OT_RX "|" D_SENSOR_BOILER_OT_TX "|"
|
||||||
D_SENSOR_WINDMETER_SPEED "|" D_SENSOR_BUTTON "_tc|"
|
D_SENSOR_WINDMETER_SPEED "|" D_SENSOR_BUTTON "_tc|"
|
||||||
D_SENSOR_BL0940_RX "|"
|
D_SENSOR_BL0940_RX "|"
|
||||||
D_SENSOR_TELEINFO_RX "|" D_SENSOR_TELEINFO_ENABLE "|"
|
D_SENSOR_TCP_TXD "|" D_SENSOR_TCP_RXD "|"
|
||||||
D_SENSOR_TCP_TXD "|" D_SENSOR_TCP_RXD
|
D_SENSOR_ETH_PHY_POWER "|" D_SENSOR_ETH_PHY_MDC "|" D_SENSOR_ETH_PHY_MDIO "|"
|
||||||
|
D_SENSOR_TCP_TXD "|" D_SENSOR_TCP_RXD "|"
|
||||||
|
D_SENSOR_TELEINFO_RX "|" D_SENSOR_TELEINFO_ENABLE
|
||||||
;
|
;
|
||||||
|
|
||||||
const char kSensorNamesFixed[] PROGMEM =
|
const char kSensorNamesFixed[] PROGMEM =
|
||||||
|
@ -238,6 +241,7 @@ const uint16_t kGpioNiceList[] PROGMEM = {
|
||||||
AGPIO(GPIO_KEY1_NP) + MAX_KEYS,
|
AGPIO(GPIO_KEY1_NP) + MAX_KEYS,
|
||||||
AGPIO(GPIO_KEY1_INV) + MAX_KEYS,
|
AGPIO(GPIO_KEY1_INV) + MAX_KEYS,
|
||||||
AGPIO(GPIO_KEY1_INV_NP) + MAX_KEYS,
|
AGPIO(GPIO_KEY1_INV_NP) + MAX_KEYS,
|
||||||
|
AGPIO(GPIO_KEY1_TC) + MAX_KEYS, // Touch button
|
||||||
AGPIO(GPIO_SWT1) + MAX_SWITCHES, // User connected external switches
|
AGPIO(GPIO_SWT1) + MAX_SWITCHES, // User connected external switches
|
||||||
AGPIO(GPIO_SWT1_NP) + MAX_SWITCHES,
|
AGPIO(GPIO_SWT1_NP) + MAX_SWITCHES,
|
||||||
AGPIO(GPIO_REL1) + MAX_RELAYS, // Relays
|
AGPIO(GPIO_REL1) + MAX_RELAYS, // Relays
|
||||||
|
@ -420,6 +424,10 @@ const uint16_t kGpioNiceList[] PROGMEM = {
|
||||||
AGPIO(GPIO_SBR_TX), // Serial Bridge Serial interface
|
AGPIO(GPIO_SBR_TX), // Serial Bridge Serial interface
|
||||||
AGPIO(GPIO_SBR_RX), // Serial Bridge Serial interface
|
AGPIO(GPIO_SBR_RX), // Serial Bridge Serial interface
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_TCP_BRIDGE
|
||||||
|
AGPIO(GPIO_TCP_TX), // TCP Serial bridge
|
||||||
|
AGPIO(GPIO_TCP_RX), // TCP Serial bridge
|
||||||
|
#endif
|
||||||
#ifdef USE_ZIGBEE
|
#ifdef USE_ZIGBEE
|
||||||
AGPIO(GPIO_ZIGBEE_TX), // Zigbee Serial interface
|
AGPIO(GPIO_ZIGBEE_TX), // Zigbee Serial interface
|
||||||
AGPIO(GPIO_ZIGBEE_RX), // Zigbee Serial interface
|
AGPIO(GPIO_ZIGBEE_RX), // Zigbee Serial interface
|
||||||
|
@ -557,11 +565,11 @@ const uint16_t kGpioNiceList[] PROGMEM = {
|
||||||
AGPIO(GPIO_WEBCAM_HSD) + MAX_WEBCAM_HSD,
|
AGPIO(GPIO_WEBCAM_HSD) + MAX_WEBCAM_HSD,
|
||||||
AGPIO(GPIO_WEBCAM_PSRCS),
|
AGPIO(GPIO_WEBCAM_PSRCS),
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_TCP_BRIDGE
|
#ifdef USE_ETHERNET
|
||||||
AGPIO(GPIO_TCP_TX), // TCP Serial bridge
|
AGPIO(GPIO_ETH_PHY_POWER),
|
||||||
AGPIO(GPIO_TCP_RX), // TCP Serial bridge
|
AGPIO(GPIO_ETH_PHY_MDC),
|
||||||
|
AGPIO(GPIO_ETH_PHY_MDIO), // Ethernet
|
||||||
#endif
|
#endif
|
||||||
AGPIO(GPIO_KEY1_TC) + MAX_KEYS
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//********************************************************************************************
|
//********************************************************************************************
|
||||||
|
@ -676,6 +684,15 @@ const mytmplt kModules PROGMEM =
|
||||||
0 // Flag
|
0 // Flag
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*********************************************************************************************\
|
||||||
|
Known templates
|
||||||
|
|
||||||
|
{"NAME":"AITHINKER CAM","GPIO":[4992,65504,65504,65504,65504,5088,65504,65504,65504,65504,65504,65504,65504,65504,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,65504,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}
|
||||||
|
{"NAME":"Olimex ESP32-PoE","GPIO":[65504,65504,65504,65504,65504,65504,0,0,5536,65504,65504,65504,65504,0,5600,0,0,0,0,5568,0,0,0,0,0,0,0,0,65504,65504,65504,65504,65504,0,0,65504],"FLAG":0,"BASE":1}
|
||||||
|
|
||||||
|
\*********************************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
#endif // ESP32
|
#endif // ESP32
|
||||||
|
|
||||||
#endif // _TASMOTA_TEMPLATE_ESP32_H_
|
#endif // _TASMOTA_TEMPLATE_ESP32_H_
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
#ifndef _TASMOTA_VERSION_H_
|
#ifndef _TASMOTA_VERSION_H_
|
||||||
#define _TASMOTA_VERSION_H_
|
#define _TASMOTA_VERSION_H_
|
||||||
|
|
||||||
const uint32_t VERSION = 0x08030104;
|
const uint32_t VERSION = 0x08030105;
|
||||||
|
|
||||||
// Lowest compatible version
|
// Lowest compatible version
|
||||||
const uint32_t VERSION_COMPATIBLE = 0x07010006;
|
const uint32_t VERSION_COMPATIBLE = 0x07010006;
|
||||||
|
|
|
@ -2482,7 +2482,8 @@ void HandleInformation(void)
|
||||||
if (static_cast<uint32_t>(EthernetLocalIP()) != 0) {
|
if (static_cast<uint32_t>(EthernetLocalIP()) != 0) {
|
||||||
WSContentSend_P(PSTR("}1" D_HOSTNAME "}2%s%s"), EthernetHostname(), (Mdns.begun) ? ".local" : "");
|
WSContentSend_P(PSTR("}1" D_HOSTNAME "}2%s%s"), EthernetHostname(), (Mdns.begun) ? ".local" : "");
|
||||||
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), EthernetMacAddress().c_str());
|
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), EthernetMacAddress().c_str());
|
||||||
WSContentSend_P(PSTR("}1" D_IP_ADDRESS "}2%s"), EthernetLocalIP().toString().c_str());
|
WSContentSend_P(PSTR("}1" D_IP_ADDRESS " (eth)}2%s"), EthernetLocalIP().toString().c_str());
|
||||||
|
WSContentSend_P(PSTR("}1<hr/>}2<hr/>"));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -2498,7 +2499,8 @@ void HandleInformation(void)
|
||||||
#endif
|
#endif
|
||||||
if (static_cast<uint32_t>(WiFi.localIP()) != 0) {
|
if (static_cast<uint32_t>(WiFi.localIP()) != 0) {
|
||||||
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), WiFi.macAddress().c_str());
|
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), WiFi.macAddress().c_str());
|
||||||
WSContentSend_P(PSTR("}1" D_IP_ADDRESS "}2%s"), WiFi.localIP().toString().c_str());
|
WSContentSend_P(PSTR("}1" D_IP_ADDRESS " (wifi)}2%s"), WiFi.localIP().toString().c_str());
|
||||||
|
WSContentSend_P(PSTR("}1<hr/>}2<hr/>"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!global_state.network_down) {
|
if (!global_state.network_down) {
|
||||||
|
@ -2507,8 +2509,9 @@ void HandleInformation(void)
|
||||||
WSContentSend_P(PSTR("}1" D_DNS_SERVER "}2%s"), IPAddress(Settings.ip_address[3]).toString().c_str());
|
WSContentSend_P(PSTR("}1" D_DNS_SERVER "}2%s"), IPAddress(Settings.ip_address[3]).toString().c_str());
|
||||||
}
|
}
|
||||||
if (static_cast<uint32_t>(WiFi.softAPIP()) != 0) {
|
if (static_cast<uint32_t>(WiFi.softAPIP()) != 0) {
|
||||||
|
WSContentSend_P(PSTR("}1<hr/>}2<hr/>"));
|
||||||
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), WiFi.softAPmacAddress().c_str());
|
WSContentSend_P(PSTR("}1" D_MAC_ADDRESS "}2%s"), WiFi.softAPmacAddress().c_str());
|
||||||
WSContentSend_P(PSTR("}1" D_IP_ADDRESS "}2%s"), WiFi.softAPIP().toString().c_str());
|
WSContentSend_P(PSTR("}1" D_IP_ADDRESS " (AP)}2%s"), WiFi.softAPIP().toString().c_str());
|
||||||
WSContentSend_P(PSTR("}1" D_GATEWAY "}2%s"), WiFi.softAPIP().toString().c_str());
|
WSContentSend_P(PSTR("}1" D_GATEWAY "}2%s"), WiFi.softAPIP().toString().c_str());
|
||||||
}
|
}
|
||||||
WSContentSend_P(PSTR("}1}2 ")); // Empty line
|
WSContentSend_P(PSTR("}1}2 ")); // Empty line
|
||||||
|
|
|
@ -120,8 +120,6 @@ uint32_t DecodeLightId(uint32_t hue_id);
|
||||||
#endif
|
#endif
|
||||||
#endif // USE_UNISHOX_COMPRESSION
|
#endif // USE_UNISHOX_COMPRESSION
|
||||||
|
|
||||||
#define USE_SCRIPT_TIMER
|
|
||||||
|
|
||||||
#ifdef USE_SCRIPT_TIMER
|
#ifdef USE_SCRIPT_TIMER
|
||||||
#include <Ticker.h>
|
#include <Ticker.h>
|
||||||
Ticker Script_ticker1;
|
Ticker Script_ticker1;
|
||||||
|
|
|
@ -21,13 +21,53 @@
|
||||||
#ifdef USE_ETHERNET
|
#ifdef USE_ETHERNET
|
||||||
/*********************************************************************************************\
|
/*********************************************************************************************\
|
||||||
* Ethernet support for ESP32
|
* Ethernet support for ESP32
|
||||||
|
*
|
||||||
|
* Dedicated fixed Phy pins
|
||||||
|
* GPIO17 - EMAC_CLK_OUT_180
|
||||||
|
* GPIO19 - EMAC_TXD0(RMII)
|
||||||
|
* GPIO21 - EMAC_TX_EN(RMII)
|
||||||
|
* GPIO22 - EMAC_TXD1(RMII)
|
||||||
|
* GPIO25 - EMAC_RXD0(RMII)
|
||||||
|
* GPIO26 - EMAC_RXD1(RMII)
|
||||||
|
* GPIO27 - EMAC_RX_CRS_DV
|
||||||
|
*
|
||||||
|
* {"NAME":"Olimex ESP32-PoE","GPIO":[65504,65504,65504,65504,65504,65504,0,0,5536,65504,65504,65504,65504,0,5600,0,0,0,0,5568,0,0,0,0,0,0,0,0,65504,65504,65504,65504,65504,0,0,65504],"FLAG":0,"BASE":1}
|
||||||
|
*
|
||||||
\*********************************************************************************************/
|
\*********************************************************************************************/
|
||||||
|
|
||||||
#define XDRV_82 82
|
#define XDRV_82 82
|
||||||
|
|
||||||
|
/*
|
||||||
// Olimex ESP32-PoE
|
// Olimex ESP32-PoE
|
||||||
#define ETH_CLK_MODE ETH_CLOCK_GPIO17_OUT
|
#define ETH_CLKMODE ETH_CLOCK_GPIO17_OUT
|
||||||
#define ETH_PHY_POWER 12
|
#define ETH_POWER_PIN 12
|
||||||
|
|
||||||
|
//********************************************************************************************
|
||||||
|
|
||||||
|
#ifndef ETH_ADDR
|
||||||
|
#define ETH_ADDR 0 // esp_eth.h eth_phy_base_t: 0 = PHY0 .. 31 = PHY31
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ETH_TYPE
|
||||||
|
#define ETH_TYPE ETH_PHY_LAN8720 // ETH.h eth_phy_type_t: 0 = ETH_PHY_LAN8720, 1 = ETH_PHY_TLK110
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ETH_CLKMODE
|
||||||
|
#define ETH_CLKMODE ETH_CLOCK_GPIO0_IN // esp_eth.h eth_clock_mode_t: 0 = ETH_CLOCK_GPIO0_IN, 1 = ETH_CLOCK_GPIO0_OUT, 2 = ETH_CLOCK_GPIO16_OUT, 3 = ETH_CLOCK_GPIO17_OUT
|
||||||
|
#endif
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef ETH_POWER_PIN
|
||||||
|
#define ETH_POWER_PIN -1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ETH_MDC_PIN
|
||||||
|
#define ETH_MDC_PIN 23
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ETH_MDIO_PIN
|
||||||
|
#define ETH_MDIO_PIN 18
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <ETH.h>
|
#include <ETH.h>
|
||||||
|
|
||||||
|
@ -75,7 +115,13 @@ void EthernetInit(void) {
|
||||||
|
|
||||||
snprintf_P(Eth.hostname, sizeof(Eth.hostname), PSTR("%s_eth"), my_hostname);
|
snprintf_P(Eth.hostname, sizeof(Eth.hostname), PSTR("%s_eth"), my_hostname);
|
||||||
WiFi.onEvent(EthernetEvent);
|
WiFi.onEvent(EthernetEvent);
|
||||||
ETH.begin();
|
|
||||||
|
int eth_power = (PinUsed(GPIO_ETH_PHY_POWER)) ? Pin(GPIO_ETH_PHY_POWER) : ETH_POWER_PIN;
|
||||||
|
int eth_mdc = (PinUsed(GPIO_ETH_PHY_MDC)) ? Pin(GPIO_ETH_PHY_MDC) : ETH_MDC_PIN;
|
||||||
|
int eth_mdio = (PinUsed(GPIO_ETH_PHY_MDIO)) ? Pin(GPIO_ETH_PHY_MDIO) : ETH_MDIO_PIN;
|
||||||
|
if (!ETH.begin(Settings.eth_address, eth_power, eth_mdc, eth_mdio, (eth_phy_type_t)Settings.eth_type, (eth_clock_mode_t)Settings.eth_clk_mode)) {
|
||||||
|
AddLog_P2(LOG_LEVEL_DEBUG, PSTR("ETH: Bad PHY type or init error"));
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
IPAddress EthernetLocalIP(void) {
|
IPAddress EthernetLocalIP(void) {
|
||||||
|
@ -94,11 +140,15 @@ String EthernetMacAddress(void) {
|
||||||
* Commands
|
* Commands
|
||||||
\*********************************************************************************************/
|
\*********************************************************************************************/
|
||||||
|
|
||||||
|
#define D_CMND_ETHADDRESS "EthAddress"
|
||||||
|
#define D_CMND_ETHTYPE "EthType"
|
||||||
|
#define D_CMND_ETHCLOCKMODE "EthClockMode"
|
||||||
|
|
||||||
const char kEthernetCommands[] PROGMEM = "|" // No prefix
|
const char kEthernetCommands[] PROGMEM = "|" // No prefix
|
||||||
D_CMND_ETHERNET;
|
D_CMND_ETHERNET "|" D_CMND_ETHADDRESS "|" D_CMND_ETHTYPE "|" D_CMND_ETHCLOCKMODE;
|
||||||
|
|
||||||
void (* const EthernetCommand[])(void) PROGMEM = {
|
void (* const EthernetCommand[])(void) PROGMEM = {
|
||||||
&CmndEthernet };
|
&CmndEthernet, &CmndEthAddress, &CmndEthType, &CmndEthClockMode };
|
||||||
|
|
||||||
void CmndEthernet(void)
|
void CmndEthernet(void)
|
||||||
{
|
{
|
||||||
|
@ -109,6 +159,33 @@ void CmndEthernet(void)
|
||||||
ResponseCmndStateText(Settings.flag4.network_ethernet);
|
ResponseCmndStateText(Settings.flag4.network_ethernet);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CmndEthAddress(void)
|
||||||
|
{
|
||||||
|
if ((XdrvMailbox.payload >= 0) && (XdrvMailbox.payload <= 31)) {
|
||||||
|
Settings.eth_address = XdrvMailbox.payload;
|
||||||
|
restart_flag = 2;
|
||||||
|
}
|
||||||
|
ResponseCmndNumber(Settings.eth_address);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CmndEthType(void)
|
||||||
|
{
|
||||||
|
if ((XdrvMailbox.payload >= 0) && (XdrvMailbox.payload <= 1)) {
|
||||||
|
Settings.eth_type = XdrvMailbox.payload;
|
||||||
|
restart_flag = 2;
|
||||||
|
}
|
||||||
|
ResponseCmndNumber(Settings.eth_type);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CmndEthClockMode(void)
|
||||||
|
{
|
||||||
|
if ((XdrvMailbox.payload >= 0) && (XdrvMailbox.payload <= 3)) {
|
||||||
|
Settings.eth_clk_mode = XdrvMailbox.payload;
|
||||||
|
restart_flag = 2;
|
||||||
|
}
|
||||||
|
ResponseCmndNumber(Settings.eth_clk_mode);
|
||||||
|
}
|
||||||
|
|
||||||
/*********************************************************************************************\
|
/*********************************************************************************************\
|
||||||
* Interface
|
* Interface
|
||||||
\*********************************************************************************************/
|
\*********************************************************************************************/
|
||||||
|
|
|
@ -93,7 +93,7 @@ void Ili9341InitDriver(void)
|
||||||
#ifdef ESP8266
|
#ifdef ESP8266
|
||||||
tft = new Adafruit_ILI9341(Pin(GPIO_SPI_CS), Pin(GPIO_SPI_DC));
|
tft = new Adafruit_ILI9341(Pin(GPIO_SPI_CS), Pin(GPIO_SPI_DC));
|
||||||
#else // ESP32
|
#else // ESP32
|
||||||
tft = new Adafruit_ILI9341(Pin (GPIO_TFT_CS), Pin (GPIO_TFT_DC), Pin (GPIO_TFT_MOSI), Pin (GPIO_TFT_CLK), Pin (GPIO_TFT_RST), Pin(GPIO_TFT_MISO));
|
tft = new Adafruit_ILI9341(Pin(GPIO_SPI_CS), Pin(GPIO_SPI_DC), Pin(GPIO_SPI_MOSI), Pin(GPIO_SPI_CLK), -1, Pin(GPIO_SPI_MISO));
|
||||||
#endif
|
#endif
|
||||||
tft->begin();
|
tft->begin();
|
||||||
|
|
||||||
|
|
|
@ -206,7 +206,7 @@ a_features = [[
|
||||||
"USE_IAQ","USE_DISPLAY_SEVENSEG","USE_AS3935","USE_PING",
|
"USE_IAQ","USE_DISPLAY_SEVENSEG","USE_AS3935","USE_PING",
|
||||||
"USE_WINDMETER","USE_OPENTHERM","USE_THERMOSTAT","USE_VEML6075",
|
"USE_WINDMETER","USE_OPENTHERM","USE_THERMOSTAT","USE_VEML6075",
|
||||||
"USE_VEML7700","USE_MCP9808","USE_BL0940","USE_TELEGRAM",
|
"USE_VEML7700","USE_MCP9808","USE_BL0940","USE_TELEGRAM",
|
||||||
"USE_HP303B","","","",
|
"USE_HP303B","USE_TCP_BRIDGE","","",
|
||||||
"","","","",
|
"","","","",
|
||||||
"","","","",
|
"","","","",
|
||||||
"","","USE_ETHERNET","USE_WEBCAM"
|
"","","USE_ETHERNET","USE_WEBCAM"
|
||||||
|
|
Loading…
Reference in New Issue