1.Solved using dimmer not using number (how use number?)
Troubles to create mqtt Things file. on way with paperUI its work.
wats is my trouble on Code?:
Its xiaomi smoke detector an cc2531 on zigbee2mqtt
mqtt.things
Bridge mqtt:systemBroker:embedded-mqtt-broker
{
// Rauchmelder 1
Thing mqtt:topic:Rauchmelder_1 "Rauchmelder 1" @ "MQTT" {
Channels:
Type contact : Rauchmelder1_Rauch "Rauchmelder1 Rauch" [
stateTopic="zigbee2mqtt/Rauchmelder1",
transformationPattern="JSONPATH:$.smoke",
on="true",
off="false"
]
Type dimmer : Rauchmelder1_battery "Rauchmelder1 battery" [
stateTopic="zigbee2mqtt/Rauchmelder1",
transformationPattern="JSONPATH:$.battery"
]
}
// Rauchmelder 2
Thing mqtt:topic:Rauchmelder_2 "Rauchmelder 2" @ "MQTT" {
Channels:
Type contact : Rauchmelder2_Rauch "Rauchmelder2 Rauch" [
stateTopic="zigbee2mqtt/Rauchmelder2",
transformationPattern="JSONPATH:$.smoke",
on="true",
off="false"
]
Type dimmer : Rauchmelder2_battery "Rauchmelder2 battery" [
stateTopic="zigbee2mqtt/Rauchmelder2",
transformationPattern="JSONPATH:$.battery"
]
}
// Rauchmelder 3
Thing mqtt:topic:Rauchmelder_3 "Rauchmelder 3" @ "MQTT" {
Channels:
Type contact : Rauchmelder3_Rauch "Rauchmelder3 Rauch" [
stateTopic="zigbee2mqtt/Rauchmelder3",
//commandTopic=".....",
//retained=false,
//postCommand="",
transformationPattern="JSONPATH:$.smoke",
//formatBeforePublish="%s",
on="true",
off="false"
]
Type dimmer : Rauchmelder3_battery "Rauchmelder3 Battery" [
stateTopic="zigbee2mqtt/Rauchmelder3",
transformationPattern="JSONPATH:$.battery"
]
}
}
mqtt.items
Contact RAUCHMELDER_1_RAUCH "Rauchmelder Kinderzimmer Rauch" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder1_Rauch" }
Dimmer RAUCHMELDER_1_Battery "Rauchmelder Kinderzimmer Battery" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder1_battery" }
Contact RAUCHMELDER_2_RAUCH "Rauchmelder Schlafzimmer Rauch" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder2_Rauch" }
Dimmer RAUCHMELDER_2_Battery "Rauchmelder Schlafzimmer Battery" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder2_battery" }
Contact RAUCHMELDER_3_RAUCH "Rauchmelder Wohnen Rauch" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder3_Rauch" }
Dimmer RAUCHMELDER_3_Battery "Rauchmelder Wohnen Battery" {channel="mqtt:topic:Rauchmelder_3:Rauchmelder3_battery" }
LOG
018-12-30 20:16:48.219 [ERROR] [ansport.mqtt.internal.ClientCallback] - MQTT message received. MqttMessageSubscriber#processMessage() implementation failure
java.lang.IllegalArgumentException: Value must be between 0 and 100
at org.eclipse.smarthome.core.library.types.PercentType.validateValue(PercentType.java:58) ~[?:?]
at org.eclipse.smarthome.core.library.types.PercentType.<init>(PercentType.java:53) ~[?:?]
at org.eclipse.smarthome.core.library.types.DecimalType.as(DecimalType.java:160) ~[?:?]
at org.eclipse.smarthome.core.internal.items.ItemStateConverterImpl.convertToAcceptedState(ItemStateConverterImpl.java:58) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.profiles.ProfileCallbackImpl.sendUpdate(ProfileCallbackImpl.java:135) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.profiles.SystemDefaultProfile.onStateUpdateFromHandler(SystemDefaultProfile.java:54) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.CommunicationManager.lambda$9(CommunicationManager.java:477) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.CommunicationManager.lambda$11(CommunicationManager.java:497) ~[?:?]
at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.CommunicationManager.handleCallFromHandler(CommunicationManager.java:493) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.CommunicationManager.stateUpdated(CommunicationManager.java:475) ~[?:?]
at org.eclipse.smarthome.core.thing.internal.ThingManagerImpl$1.stateUpdated(ThingManagerImpl.java:167) ~[?:?]
at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateState(BaseThingHandler.java:287) ~[?:?]
at org.eclipse.smarthome.binding.mqtt.generic.internal.handler.AbstractMQTTThingHandler.updateChannelState(AbstractMQTTThingHandler.java:215) ~[?:?]
at org.eclipse.smarthome.binding.mqtt.generic.internal.generic.ChannelState.processMessage(ChannelState.java:177) ~[?:?]
at org.eclipse.smarthome.io.transport.mqtt.internal.ClientCallback.lambda$3(ClientCallback.java:90) ~[259:org.eclipse.smarthome.io.transport.mqtt:0.10.0.oh240]
at java.util.ArrayList.forEach(ArrayList.java:1257) ~[?:?]
at org.eclipse.smarthome.io.transport.mqtt.internal.ClientCallback.messageArrived(ClientCallback.java:90) [259:org.eclipse.smarthome.io.transport.mqtt:0.10.0.oh240]
at org.eclipse.paho.client.mqttv3.internal.CommsCallback.deliverMessage(CommsCallback.java:499) [256:org.eclipse.paho.client.mqttv3:1.2.0]
at org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:402) [256:org.eclipse.paho.client.mqttv3:1.2.0]
at org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:206) [256:org.eclipse.paho.client.mqttv3:1.2.0]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
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) [?:?]
mqtt message
{"battery":100,"voltage":3125,"linkquality":0,"smoke":false}
- ASK its a BUG?
and wats a realy bug. If the thing file include the Bride Line
Bridge mqtt:systemBroker:embedded-mqtt-broker
its disconect the embedet Broker. Or if the line include a IP information, Broker.
its only function given a new Broker Name on every new save version.