I have a problem with cron (P081) in a Collection A build (ESP_Easy_mega_20221105_collection_A_ESP8266_4M1M, but same with ESP_Easy_mega_20220809_collection_A_ESP8266_4M1M).
My hardware is a "Espressif Generic ESP8266 ESPEasy 4M Flash 1M FS" with 4 relays on it (ESP12F_Relay_X4).
I created
- a Generic - MQTT Import device
Code: Select all
Name: MQTT
MQTT Topic <n>: Relay<n>
Value <n>: Value_of_Relay<n>
Code: Select all
0 42 6,10,15,16 * * *
Code: Select all
on MQTT#Relay* do
let,1,15 // Relay 1 is GPIO15
let,2,14 // Relay 2 is GPIO14
let,3,12 // Relay 3 is GPIO12
let,4,13 // Relay 4 is GPIO13
if %eventvalue1%<0
//
// Values below 0 sets timer to %eventvalue1%*-1 seconds
//
let,5,abs(%eventvalue1%)
logentry,"%eventname%: Turn on {substring:5:11:%eventname%} (GPIO%v{substring:10:11:%eventname%}%) for %v5% seconds."
timerSet,{substring:10:11:%eventname%},%v5%
gpio,%v{substring:10:11:%eventname%}%,1
elseif %eventvalue1%=1
//
// Value equal 1 turn on relay
//
logentry,"%eventname%: Turn on {substring:5:11:%eventname%} (GPIO%v{substring:10:11:%eventname%}%)."
gpio,%v{substring:10:11:%eventname%}%,1
elseif %eventvalue1%=0
//
// Value equal 0 turn off relay
//
logentry,"%eventname%: Turn off {substring:5:11:%eventname%} (GPIO%v{substring:10:11:%eventname%}%)."
timerSet,{substring:10:11:%eventname%},0
gpio,%v{substring:10:11:%eventname%}%,0
endif
endon
on Cron#Relay4 do
logentry,"%eventname%: Turn on Relay4."
gpio,%v4%,1
timerSet,4,30
endon
on Rules#Timer do
logentry,"%eventname%: %eventvalue1% GPIO%v%eventvalue1%%"
gpio,%v%eventvalue1%%,0
endon
Code: Select all
$ mosquitto_pub -h 192.168.178.63 -u espeasy -P "pass" -t Relay4 -m "-10"
Fine.
When the cron fires on 6:42.0,10:42.0 or 15:42.0 all works fine. The relay pulls for 30 seconds (timerSet,4,30) and then releases again when the timer expires.
But on 16:42.0 the Rambo mode comes to my ESP8266 and I can see this on my loghost:
Code: Select all
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: EVENT: Clock#Time=Tue,16:42
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: EVENT: Cron#Relay4
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: ACT : logentry,"Cron#Relay4: Turn on Relay4."
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: Cron#Relay4: Turn on Relay4.
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: ACT : gpio,13,1
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: GPIO : port#13: set to 1
Dec 6 16:42:00 ESP12F-Relay-X4 EspEasy: ACT : timerSet,4,30
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: EVENT: Cron#Relay4
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: ACT : logentry,"Cron#Relay4: Turn on Relay4."
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: Cron#Relay4: Turn on Relay4.
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: ACT : gpio,13,1
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: GPIO : port#13: set to 1
Dec 6 16:42:01 ESP12F-Relay-X4 EspEasy: ACT : timerSet,4,30
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: EVENT: Cron#Relay4
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: ACT : logentry,"Cron#Relay4: Turn on Relay4."
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: Cron#Relay4: Turn on Relay4.
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: ACT : gpio,13,1
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: GPIO : port#13: set to 1
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: ACT : timerSet,4,30
Dec 6 16:42:02 ESP12F-Relay-X4 EspEasy: EVENT: Env0#All=22.83,52.70,1015.53
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: EVENT: Cron#Relay4
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: ACT : logentry,"Cron#Relay4: Turn on Relay4."
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: Cron#Relay4: Turn on Relay4.
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: ACT : gpio,13,1
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: GPIO : port#13: set to 1
Dec 6 16:42:03 ESP12F-Relay-X4 EspEasy: ACT : timerSet,4,30
Dec 6 16:42:04 ESP12F-Relay-X4 EspEasy: EVENT: Cron#Relay4
Dec 6 16:42:04 ESP12F-Relay-X4 EspEasy: ACT : logentry,"Cron#Relay4: Turn on Relay4."
Dec 6 16:42:04 ESP12F-Relay-X4 EspEasy: Cron#Relay4: Turn on Relay4.
... and so on...
If you need further information please tell me!
I hope this is the right area for this question.
Greetings,
Lars