Node 0 unknown, error decoding message from gateway
-
Looks like presentation function is never called. Try calling it yourself from setup.
-
Put this after the gateway
presentcall in setup:presentation();Also replace all
sleepwithwait. The gateway is not allowed to sleep. -
Put this after the gateway
presentcall in setup:presentation();Also replace all
sleepwithwait. The gateway is not allowed to sleep.@martinhjelmare said:
presentation();
I'll try that. Thanks. :)
Now this error remains:
16-12-17 21:58:00 mysensors.mysensors: Error decoding message from gateway, bad data received: T: 23.90 16-12-17 21:58:00 mysensors.mysensors: Error decoding message from gateway, bad data received: H: 49.30 16-12-17 21:58:02 mysensors.mysensors: Error decoding message from gateway, bad data received: T: 24.00 16-12-17 21:58:14 mysensors.mysensors: Error decoding message from gateway, bad data received: T: 23.90But the sensors are listed in HASS:
sensor.temperatureandhumidity_0_0:
friendly_name: TemperatureAndHumidity 0 0 V_HUM: 49.2 node_id: 0 device: /dev/ttyACM0 battery_level: 0 description: child_id: 0 unit_of_measurement: % -
That's because you are printing debug to serial from the gateway and the controller doesn't expect serial messages from the gateway other than mysensors API messages. Either ignore the errors or remove those debug prints.
-
That's because you are printing debug to serial from the gateway and the controller doesn't expect serial messages from the gateway other than mysensors API messages. Either ignore the errors or remove those debug prints.
@martinhjelmare thank you so much for your help. :)
Is there a way to declare sensor names so that HA receives a presentation with something like
mysensors.livingroom.temp
Instead of a more cryptic name with node_id?
-
The entity_id always has the same structure, sketchname_nodeid_childid. You can customize the friendly_name in the config under customize to change what is shown in the gui as name of the sensor.
-
But my Sketch name is SerialGateWayDHT22 and my sensors are called sensor.temperatureandhumidity_0_0 and sensor.temperatureandhumidity_0_1. If it was the Sketchname, it was much simpler to assign the sensors to the rooms later as I could simply name the switch after the room.
But it's not much of a problem, as like you said friendly names can be used.
-
By sketchname I mean what you send to the controller as sketchname using sendSketchInfo method. This is from your sketch:
// Send the sketch version information to the gateway sendSketchInfo("TemperatureAndHumidity", "1.1"); -
Happy to help and great to hear about user stories and also any feedback, both when things are working and when things are not working or missing features.