Hello,
I have updated my openhab from 2.3 to 2.4 (on Raspberry Pi 3, with raspbarian) and I have noticed an issue with Xiaomi Mi IO Binding regarding Mi Air Monitor v1 (zhimi.airmonitor.v1) device.
Long story short - the Paper UI does show only the following channels:
network#ssid
network#bssid
network#rssi
network#life
actions#commands
while it does not shows any other as mentioned in documentation:
power
aqi
battery
usb_state
time_state
night_state
night_begin
night_end
In Paper UI the device is in active state, there is a correct token provided.
Also in openhab.log I have noticed the following warning:
2018-12-21 12:21:00.442 [WARN ] [inding.miio.handler.MiIoBasicHandler] - Error creating channel structure
java.lang.IllegalArgumentException: ID segment 'system.battery-level' contains invalid characters. Each segment of the ID must match the pattern [A-Za-z0-9_-]*.
at org.eclipse.smarthome.core.common.AbstractUID.validateSegment(AbstractUID.java:97) ~[?:?]
at org.eclipse.smarthome.core.common.AbstractUID.<init>(AbstractUID.java:75) ~[?:?]
at org.eclipse.smarthome.core.common.AbstractUID.<init>(AbstractUID.java:58) ~[?:?]
at org.eclipse.smarthome.core.thing.UID.<init>(UID.java:57) ~[?:?]
at org.eclipse.smarthome.core.thing.type.ChannelTypeUID.<init>(ChannelTypeUID.java:50) ~[?:?]
at org.openhab.binding.miio.handler.MiIoBasicHandler.addChannel(MiIoBasicHandler.java:358) ~[?:?]
at org.openhab.binding.miio.handler.MiIoBasicHandler.buildChannelStructure(MiIoBasicHandler.java:328) ~[?:?]
at org.openhab.binding.miio.handler.MiIoBasicHandler.checkChannelStructure(MiIoBasicHandler.java:255) ~[?:?]
at org.openhab.binding.miio.handler.MiIoBasicHandler.updateData(MiIoBasicHandler.java:200) ~[?:?]
at org.openhab.binding.miio.handler.MiIoAbstractHandler.lambda$1(MiIoAbstractHandler.java:100) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
at java.lang.Thread.run(Thread.java:748) [?:?]
What seems like a problem with channel creation.
All other xiaomi devicess using this bundle ( air purifier, vacuum, wifi repeater and IR remote seems to have all channels working)
What I have already tried:
- reinstalling binding
- clearing OH cache in folders /var/lib/openhab2/tmp/* and /var/lib/openhab2/cache/*
Does anyone has a similar issue ?