you already gav the answer yourself🙃 What do you expect from overheated devices and instable wireless connection. You may improve Wifi installing one Shelly outside the cabinet and use it as range extender for those inside the cabinet. I think a BLU Gateway Gen 3 (USB Stick) could do the job or a Plus/Pro 1.
True. This installation is temporary and will not be the final one.
I am still a beginner with OH and Shelly. I will now monitor the triggered alarms (WEAK_SIGNAL, OVERTEMP) of the device#alarm channel and see how far this will take me. I haven’t done this before.
I updated one of my shelly1plus Gen3 from the latest 1.7.0-beta4 to the offical 1.7.0 (1.7.0-/20250730) now. This shelly has an AddOn Module and a temperatur/humity sensor connected.
With the beta4 everything was fine, and the sensor shown ne normal values:
Now after update to the offical 1.7.0, I have some spikes in the graph, where I have no idea were they come from:
@markus7017 : Any good hint here?
I run 15 Shelly devices with OH 5.0.1 and have the following warnings with 3 shellyplusi4. In opposite to the other Shellys these 3 communicate with MQTT.
I use the following MQTT settings on these shellyplusi4:
The following WARN messages of the 3 Shelly devices (firmware 1.7.0) are in the Log and repeat about every 30 minutes:
2025-08-22 10:46:40.136 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-083af2014970”,“dst”:“shellyplusi4-083af2014970/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852400.10,“sys”:{“last_sync_ts”:1755852400}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
2025-08-22 10:46:40.137 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-083af2014970”,“dst”:“shellyplusi4-083af2014970/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852400.10,“sys”:{“last_sync_ts”:1755852400}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 10:46:40.149 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-083af2014970”,“dst”:“shellyplusi4-083af2014970/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852400.10,“sys”:{“time”:“10:46”,“unixtime”:1755852400}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
2025-08-22 10:46:40.150 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-083af2014970”,“dst”:“shellyplusi4-083af2014970/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852400.10,“sys”:{“time”:“10:46”,“unixtime”:1755852400}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 10:49:41.427 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467ba8b30”,“dst”:“shellyplusi4-fcb467ba8b30/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852581.38,“sys”:{“last_sync_ts”:1755852581}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 10:49:41.427 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467ba8b30”,“dst”:“shellyplusi4-fcb467ba8b30/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852581.38,“sys”:{“last_sync_ts”:1755852581}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
2025-08-22 10:49:41.439 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467ba8b30”,“dst”:“shellyplusi4-fcb467ba8b30/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852581.38,“sys”:{“time”:“10:49”,“unixtime”:1755852581}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 10:49:41.443 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467ba8b30”,“dst”:“shellyplusi4-fcb467ba8b30/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755852581.38,“sys”:{“time”:“10:49”,“unixtime”:1755852581}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
2025-08-22 11:12:30.455 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467bb19cc”,“dst”:“shellyplusi4-fcb467bb19cc/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755853950.41,“sys”:{“last_sync_ts”:1755853950}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 11:12:30.456 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467bb19cc”,“dst”:“shellyplusi4-fcb467bb19cc/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755853950.41,“sys”:{“last_sync_ts”:1755853950}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
2025-08-22 11:12:30.465 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467bb19cc”,“dst”:“shellyplusi4-fcb467bb19cc/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755853950.41,“sys”:{“time”:“11:12”,“unixtime”:1755853950}}}’ with function ‘$.params.events[:1].id’ and format ‘%s’
2025-08-22 11:12:30.466 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state ‘{“src”:“shellyplusi4-fcb467bb19cc”,“dst”:“shellyplusi4-fcb467bb19cc/events”,“method”:“NotifyStatus”,“params”:{“ts”:1755853950.41,“sys”:{“time”:“11:12”,“unixtime”:1755853950}}}’ with function ‘$.params.events[:1].event’ and format ‘%s’
I’m not sure, if I need to adjust the settings … or I need to live with the warnings. Your advice would be appreciated!
Hi @markus7017 ,
I upgraded to openHAB 5.0.1 from 4.3.5. There I ran org.binding.shelly-4.3.6-SNAPSHOT-fixminipm.jarwithout any problems.
After upgrading to openHAB 5.0.1 and the bundled Shelly Binding, I saw the following problems:
- all my shelly PM mini devices were flapping with the web socket error. Seems that the fix you did, didn’t got it to the official version of openHAB
- I got this warning again, didn’t see it for a while:
2025-08-22 20:18:34.947 [WARN ] [e.jetty.util.thread.QueuedThreadPool] - Stopped without executing or closing null
- the triphase error on startup, but I know there is already an open GitHub issue
I will now test all my devices with your linked DEV Build and will tell you my results asap. What I can say for the moment: Triphase error isn’t fixed and the good thing is, the pmmini flapping is gone again.
Thanks again for your great work. Will start testing now, and also will try to update some devices to 1.7.x firmware.
obviously the JSON transformation you build does not work anymore, you need to check your transform
please try switching to the DEV build
For me the latest DEV binding fixed my issues with the Mini PM Gen3 websocket errors.
The JSONPath Transform for the commands “single_push” on key “0” work
… but not for other notifications.
How can I eliminate the WARN messages for other notifications from the log?
I tested everything on my side with the DEV Build of the Binding. Everything was working fine with firmware 1.6.3 and also after updating all devices to 1.7.0, all devices are working like they should. I also updated all my BLU Devices (HT, Motion, DW) to 1.0.23 and tested them, too. Works like a charm! Also my first gen4 1PM mini device is working. Here is a complete list of devices I tested (openHAB 5.0.1 with latest DEV Binding)
- Shelly pm mini gen 3
- Shelly 1pm mini gen 4
- Shelly 1pm mini gen3
- Shelly 1 mini gen3
- Shelly H&T gen3
- Shelly Plus H&T
- Shelly Plus 1
- Shelly Plus 1PM Mini
- Shelly Plus 2 PM - Switch Mode
- Shelly Plus 2 PM - Covering Mode
- Shelly Plus Plug S
- Shelly Plus Smoke
- Shelly Flood
- Shelly Pro 3
- Shelly Pro 2
- Shelly Pro 1
- Shelly Pro EM 50
- Shelly Pro 3EM
- Shelly Walldisplay (gen2)
- BLU DW
- BLU Motion
- BLU H&T
On my side I have now only these open issues:
- Thermostat Support of the wall displays, would be super nice to get it, because winter is knocking on the door.
- the “duplicate id warning” @markus7017 you tried to give me a fix earlier, but that didn’t work. I opened a GitHub issue.
- The triphase warning from Pro3EM (there is already a GitHub issue open)
- the “Stopped without executing or closing null” Warning (GitHub issue)
Tell me if you need more testing or more informations. Thanks again for the great work!
What is so special that you need to use mqqt? The binding integrates those events for a long time
I updated the DEV build
- Support for Shelly Plus 1 UL and Plus 1PM UL
- Support for Shelly Plus/Pro 3EM-3CT63 and Pro 3EM-400
- Fix for amazon Shelly Plug-S
- Refactoring of BLU support
- Support for BLU Tough ZB and BLU H&T ZB (Zigbee)
- Support for BLU Wallswitch4 and RC Button 4
- Support for BLU Remote
- Support for BLU Distance is WIP
- Pending PR: FIx for script upload deleting Non-OH scrips (not yet merged)
- Please use the updated build, I just fixed this morning inconsistencies on naming the input channels for BLU multi button devices (you need to delete and re-discovery BLU multi button things)
- try this special build to see if the warnings go away when using 3EM in profile triphase/monophase - this does not include the new devices, just to confirm the change works
https://github.com/markus7017/myfiles/blob/master/shelly/org.openhab.binding.shelly-5.1.0-SNAPSHOT-3emprofiles.jar?raw=true - I already had the WD thermostat support, but somehow it got lost, it’s on the list, as well as support for WD Thermostat x2
I’m also working on integrating all current Plus/Pro dimmer models - looking for testers
@markus7017 : sorry I got puzzeled:
Which version should we try as latest dev:
SNAPSHOT-3emprofiles or SNAPSHOT-newblu or SNAPSHOT-fixes3 or just SNAPSHOT?
Hi @markus7017
triphase warning is gone. But there are new warnings now:
2025-08-24 13:48:20.690 [WARN ] [org.eclipse.jetty.io.ManagedSelector] - java.nio.channels.ClosedSelectorException
2025-08-24 13:49:25.929 [WARN ] [e.jetty.util.thread.QueuedThreadPool] - Stopped without executing or closing null
2025-08-24 13:49:36.108 [WARN ] [.core.thing.binding.BaseThingHandler] - Handler ShellyRelayHandler tried updating the thing status although the handler was already disposed.
2025-08-24 13:49:36.138 [WARN ] [.core.thing.binding.BaseThingHandler] - Handler ShellyRelayHandler tried updating the thing status although the handler was already disposed.
2025-08-24 13:49:36.459 [WARN ] [.core.thing.binding.BaseThingHandler] - Handler ShellyRelayHandler tried updating the thing status although the handler was already disposed.
2025-08-24 13:49:40.474 [WARN ] [network.InMemoryMessageExchangeStore] - coap Exchange[L2, 192.168.60.89:5683] with manual token overrides existing Exchange[L1, 192.168.60.89:5683] with open request: KeyToken[192.168.60.89:5683-]
2025-08-24 13:50:47.682 [WARN ] [org.eclipse.jetty.io.ManagedSelector] - java.nio.channels.ClosedSelectorException
the 192.168.60.89 device is a shelly flood sensor.
and all my Shelly BLU Door Window sensors aren’t working with this build. will revert back.
as said, this is a special build, only for that purpose
is the warning above reproducable?
never saw “java.nio.channels.ClosedSelectorException”
“ Stopped without executing or closing null” could relate to an exception
If reproducable, please create a TRACE log
I only changed the older dev Build jar to the 3em one. Ignoring the warnings, Could it be that you changed something on the door window Sensors in that jar? After going back to the older dev Build eveything is fine again.
my Pro 3EM is working without the triphase info.
But on start up I get the following wrning
2025-08-24 17:06:18.838 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception:
java.lang.NullPointerException: Cannot invoke "java.util.ArrayList.get(int)" because "status.emeters" is null
at org.openhab.binding.shelly.internal.api2.Shelly2ApiClient.updateEmStatus(Shelly2ApiClient.java:505) ~[?:?]
at org.openhab.binding.shelly.internal.api2.Shelly2ApiClient.fillDeviceStatus(Shelly2ApiClient.java:247) ~[?:?]
at org.openhab.binding.shelly.internal.api2.Shelly2ApiRpc.getStatus(Shelly2ApiRpc.java:842) ~[?:?]
at org.openhab.binding.shelly.internal.api2.Shelly2ApiRpc.getDeviceProfile(Shelly2ApiRpc.java:340) ~[?:?]
at org.openhab.binding.shelly.internal.handler.ShellyBaseHandler.initializeThing(ShellyBaseHandler.java:334) ~[?:?]
at org.openhab.binding.shelly.internal.handler.ShellyBaseHandler.lambda$0(ShellyBaseHandler.java:192) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[?:?]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[?:?]
at java.lang.Thread.run(Unknown Source) [?:?]
Take this one: org.openhab.binding.shelly-5.1.0-SNAPSHOT.jar, just updated
which jar did you used?
this one




