Merge branch 'development' into teleinfo

This commit is contained in:
Charles 2020-06-16 19:04:39 +02:00 committed by GitHub
commit fae80fc9dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
39 changed files with 241 additions and 46 deletions

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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);

View File

@ -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
} }

View File

@ -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)

View File

@ -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;
} }

View File

@ -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
}; };
/********************************************************************************************/ /********************************************************************************************/

View File

@ -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_

View File

@ -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;

View File

@ -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&nbsp;")); // Empty line WSContentSend_P(PSTR("}1}2&nbsp;")); // Empty line

View File

@ -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;

View File

@ -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
\*********************************************************************************************/ \*********************************************************************************************/

View File

@ -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();

View File

@ -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"