Why am I getting constant ChannelStateTransformation Warnings on a channel that is updated only OnCalll

OH3.1 snapshot #2132 installation

I’m getting the WARN Executing the JSONPATH-transformation failed: Invalid path '$.StatusFWR.Version' in '0.00' constantly.
These warnings relate to Tasmota devices which all have a Version channel with a stateTopic of stat/<sonoff_name>/STATUS2 and the Incoming Value Transformation set to JSONPATH:$.StatusFWR.Version (JSONPATH is installed).
Tasmota does send the subscribed MQTT message only when triggered (done manuallly/ a switch triggers a rule).

I would expect such a WARN message ONLY after the rule triggers the Tasmota devices to send the MQTT message, however I do get those WARN messages constantly.
Do I missunderstand something?

Checking with MQTTfx I do NOT get messages of the subscribed type if the rule is NOT triggered.

The correct version of the devices does show up on the linked items (if the device is powered up).

A MQTT message with the content ‘0.00’ is sent ONLY by a Shelly device (completly different message).

Changing the Incoming Value Transformation to
REGEX:(.*sonoff_TH.*)∩JSONPATH:$.StatusFWR.Version (found in a post from Rich Koshak) didn’t change the behaviour.

Deleting all retained MQTT messages by stopping the broker, deleting the DB-file and restarting didn’t help either.

Disabling the actually not powered ones didn’t change the behaviour.

On the face of it, that says openHAB is receiving messages on some channel that includes a JSONPATH $.StatusFWR.Version - but we don’t know which channel at all, you have to inspect your setup for candidates.

The payload for the unknown topic is just ‘0.00’, maybe you can spot that in your mqtt.fx.

I tried to answer your questions in the OP:

  • the Version channel with a stateTopic of stat/<sonoff_name>/STATUS2 and the Incoming Value Transformation set to JSONPATH:$.StatusFWR.Version (JSONPATH is installed). All Tasmota devices are checked.
  1. A MQTT message with the content ‘0.00’ is sent ONLY by a Shelly device (completly different message). (Checked with MQTTfx).

Okay, is there one or six of that form? One that you’ve overlooked, maybe? Has the JSONPATH been accidentally copy-pasted to some other channel? May we see the one that you suspect?

We are handicapped by not knowing the source of the message at all. I guess you can see the part that says it’s mqtt, but remember we don’t even see that. So we have to work backwards.

Have you restarted the package since the last time you edited these? Has it always done this for you, or is it something new after update, or?

Okay, what is the topic of that message?

Thanks for your inputs!

Following the YAML-code for the Version -channels of all Tasmota devices (all are channelTypeUID: mqtt:string) :

stateTopic: stat/sonoff_1/STATUS2
transformationPattern: REGEX:(.*sonoff_1.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_2/STATUS2
transformationPattern: REGEX:(.*sonoff_2.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_3/STATUS2
transformationPattern: REGEX:(.*sonoff_3.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_5/STATUS2
transformationPattern: REGEX:(.*sonoff_5.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_6/STATUS2
transformationPattern: REGEX:(.*sonoff_6.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_dual/STATUS2
transformationPattern: REGEX:(.*sonoff_dual.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_RF/STATUS2
transformationPattern: REGEX:(.*sonoff_RF.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_TH/STATUS2
transformationPattern: REGEX:(.*sonoff_TH.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/sonoff_TH2/STATUS2
transformationPattern: REGEX:(.*sonoff_TH2.*)∩JSONPATH:$.StatusFWR.Version
stateTopic: stat/woox_Stecker/STATUS2
transformationPattern: REGEX:(.*woox_Stecker.*)∩JSONPATH:$.StatusFWR.Version

I don’t see any differences, hence I don’t suspect any of those. The only differnce is that the sonoff_1
to -6 and the woox-Stecker are not plugged in at the moment.

I checked with MQTTfx for all messages ( using #) and found no message relating to the subscribed topic.

Yes. I restarted openHAB at least once while checking for the behaviour.

The messages containing “0.00” are posted on the topics shellies/shellyswitch25-F3340C/relay/power and shellies/shellyswitch25-F3340C/roller/0/power. Both are coming in every 30 seconds ( as the WARN messages, however 15 seconds offset to them).

Found the source, as always Stupid.Me!
It was one of the Shelly topics which contained the (there not needed) JSONPATH pattern.

Correct assumption!

Thanks for thev help!