Tuya-mqtt not work

Hi everyone, I reopen a discussion of a closed post (I have read various posts but I have not been able to solve the problem). I’m having trouble getting tuya-mqtt to work, if I run “DEBUG = * node tuya-mqtt.js” I get this result:
"tdanyele@ubuntu:~/tuya-mqtt$ DEBUG=* node tuya-mqtt.js
mqttjs connecting to an MQTT broker… +0ms
mqttjs:client MqttClient :: options.protocol mqtt +0ms
mqttjs:client MqttClient :: options.protocolVersion 4 +0ms
mqttjs:client MqttClient :: options.username +0ms
mqttjs:client MqttClient :: options.keepalive 60 +1ms
mqttjs:client MqttClient :: options.reconnectPeriod 1000 +0ms
mqttjs:client MqttClient :: options.rejectUnauthorized undefined +0ms
mqttjs:client MqttClient :: options.topicAliasMaximum undefined +0ms
mqttjs:client MqttClient :: clientId mqttjs_cc918d07 +0ms
mqttjs:client MqttClient :: setting up stream +2ms
mqtt-packet:parser _resetState: resetting packet, error, _list, and _stateCounter +0ms
mqttjs:client _setupStream :: calling method to clear reconnect +4ms
mqttjs:client _clearReconnect : clearing reconnect timer +0ms
mqttjs:client _setupStream :: using streamBuilder provided to client to create stream +0ms
mqttjs calling streambuilder for mqtt +13ms
mqttjs:tcp port 1883 and host localhost +0ms
mqttjs:client _setupStream :: pipe stream to writable stream +10ms
mqttjs:client _setupStream: sending packet connect +1ms
mqttjs:client sendPacket :: packet: { cmd: ‘connect’ } +1ms
mqttjs:client sendPacket :: emitting packetsend +3ms
mqttjs:client sendPacket :: writing to stream +0ms
mqtt-packet:writeToStream generate called +0ms
mqtt-packet:writeToStream generate: packet.cmd: connect +84ms
mqtt-packet:writeToStream writeVarByteInt: writing to stream: <Buffer 1f> +1ms
mqtt-packet:writeToStream writeNumberCached: number: 4 +1ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 04> +1ms
mqtt-packet:writeToStream writeString: MQTT +0ms
mqtt-packet:writeToStream writeNumberCached: number: 60 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 3c> +0ms
mqtt-packet:writeToStream writeNumberCached: number: 15 +1ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 0f> +0ms
mqtt-packet:writeToStream writeString: mqttjs_cc918d07 +0ms
mqtt-packet:writeToStream writeNumberCached: number: 0 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 00> +1ms
mqtt-packet:writeToStream writeString: +0ms
mqtt-packet:writeToStream writeNumberCached: number: 0 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 00> +0ms
mqtt-packet:writeToStream writeString: +0ms
mqttjs:client sendPacket :: writeToStream result true +90ms
mqttjs:client writable stream :: parsing buffer +10ms
mqtt-packet:parser parse: current state: _parseHeader +117ms
mqtt-packet:parser _parseHeader: packet: Packet { cmd: ‘connack’, retain: false, qos: 0, dup: false, length: -1, topic: null, payload: null } +3ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 1 +2ms
mqtt-packet:parser parse: packet.length: -1, buffer list length: 3 +1ms
mqtt-packet:parser _parseVarByteNum +0ms
mqtt-packet:parser _parseVarByteNum: result: { bytes: 1, value: 2 } +1ms
mqtt-packet:parser _parseLength 2 +0ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 2 +0ms
mqtt-packet:parser parse: packet.length: 2, buffer list length: 2 +0ms
mqtt-packet:parser _parsePayload: payload BufferListStream {
mqtt-packet:parser _bufs: [ <Buffer 00 00> ],
mqtt-packet:parser length: 2,
mqtt-packet:parser _readableState:
mqtt-packet:parser ReadableState {
mqtt-packet:parser objectMode: false,
mqtt-packet:parser highWaterMark: 16384,
mqtt-packet:parser buffer: BufferList { head: null, tail: null, length: 0 },
mqtt-packet:parser length: 0,
mqtt-packet:parser pipes: null,
mqtt-packet:parser pipesCount: 0,
mqtt-packet:parser flowing: null,
mqtt-packet:parser ended: false,
mqtt-packet:parser endEmitted: false,
mqtt-packet:parser reading: false,
mqtt-packet:parser sync: true,
mqtt-packet:parser needReadable: false,
mqtt-packet:parser emittedReadable: false,
mqtt-packet:parser readableListening: false,
mqtt-packet:parser resumeScheduled: false,
mqtt-packet:parser paused: true,
mqtt-packet:parser emitClose: true,
mqtt-packet:parser autoDestroy: false,
mqtt-packet:parser destroyed: false,
mqtt-packet:parser defaultEncoding: ‘utf8’,
mqtt-packet:parser awaitDrain: 0,
mqtt-packet:parser readingMore: false,
mqtt-packet:parser decoder: null,
mqtt-packet:parser encoding: null },
mqtt-packet:parser readable: true,
mqtt-packet:parser _events: [Object: null prototype] {},
mqtt-packet:parser _eventsCount: 0,
mqtt-packet:parser _maxListeners: undefined,
mqtt-packet:parser _writableState:
mqtt-packet:parser WritableState {
mqtt-packet:parser objectMode: false,
mqtt-packet:parser highWaterMark: 16384,
mqtt-packet:parser finalCalled: false,
mqtt-packet:parser needDrain: false,
mqtt-packet:parser ending: false,
mqtt-packet:parser ended: false,
mqtt-packet:parser finished: false,
mqtt-packet:parser destroyed: false,
mqtt-packet:parser decodeStrings: true,
mqtt-packet:parser defaultEncoding: ‘utf8’,
mqtt-packet:parser length: 0,
mqtt-packet:parser writing: false,
mqtt-packet:parser corked: 0,
mqtt-packet:parser sync: true,
mqtt-packet:parser bufferProcessing: false,
mqtt-packet:parser onwrite: [Function],
mqtt-packet:parser writecb: null,
mqtt-packet:parser writelen: 0,
mqtt-packet:parser bufferedRequest: null,
mqtt-packet:parser lastBufferedRequest: null,
mqtt-packet:parser pendingcb: 0,
mqtt-packet:parser prefinished: false,
mqtt-packet:parser errorEmitted: false,
mqtt-packet:parser emitClose: true,
mqtt-packet:parser autoDestroy: false,
mqtt-packet:parser bufferedRequestCount: 0,
mqtt-packet:parser corkedRequestsFree:
mqtt-packet:parser CorkedRequest { next: null, entry: null, finish: [Function] } },
mqtt-packet:parser writable: true,
mqtt-packet:parser allowHalfOpen: true } +1ms
mqtt-packet:parser _parseConnack +4ms
mqtt-packet:parser _parseConnack: complete +0ms
mqtt-packet:parser _parsePayload complete result: true +1ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 3 +0ms
mqtt-packet:parser parse: packet.length: 2, buffer list length: 2 +0ms
mqtt-packet:parser _newPacket +0ms
mqtt-packet:parser _newPacket: parser emit packet: packet.cmd: connack, packet.payload: null, packet.length: 2 +0ms
mqttjs:client parser :: on packet push to packets array. +14ms
mqtt-packet:parser _newPacket: new packet +1ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 4 +0ms
mqtt-packet:parser parse: packet.length: -1, buffer list length: 0 +0ms
mqtt-packet:parser parse: exited while loop. packet: -1, buffer list length: 0 +0ms
mqttjs:client work :: getting next packet in queue +1ms
mqttjs:client work :: packet pulled from queue +0ms
mqttjs:client _handlePacket :: emitting packetreceive +0ms
mqttjs:client _handleConnack +1ms
mqttjs:client _setupPingTimer :: keepalive 60 (seconds) +1ms
mqttjs:client connect :: sending queued packets +3ms
mqttjs:client deliver :: entry undefined +1ms
mqttjs:client _resubscribe +0ms
tuya-mqtt:info Connection established to MQTT server +0ms
mqttjs:client subscribe: array topic tuya/# +2ms
mqttjs:client subscribe: pushing topic tuya/# and qos 0 to subs list +0ms
mqttjs:client subscribe :: resubscribe true +0ms
mqttjs:client subscribe :: call _sendPacket +1ms
mqttjs:client _sendPacket :: (mqttjs_cc918d07) :: start +0ms
mqttjs:client sendPacket :: packet: { cmd: ‘subscribe’,
mqttjs:client subscriptions: [ { topic: ‘tuya/#’, qos: 0 } ],
mqttjs:client qos: 1,
mqttjs:client retain: false,
mqttjs:client dup: false,
mqttjs:client messageId: 48017 } +1ms
mqttjs:client sendPacket :: emitting packetsend +1ms
mqttjs:client sendPacket :: writing to stream +0ms
mqtt-packet:writeToStream generate called +36ms
mqtt-packet:writeToStream generate: packet.cmd: subscribe +0ms
mqtt-packet:writeToStream subscribe: packet: +1ms
mqtt-packet:writeToStream subscribe: writing to stream: [ [ [ <Buffer 80>, <Buffer 81> ], [ <Buffer 88>, <Buffer 89> ] ], [ [ <Buffer 82>, <Buffer 83> ], [ <Buffer 8a>, <Buffer 8b> ] ], [ [ <Buffer 84>, <Buffer 85> ], [ <Buffer 8c>, <Buffer 8d> ] ] ] +0ms
mqtt-packet:writeToStream writeVarByteInt: writing to stream: <Buffer 0b> +1ms
mqtt-packet:writeToStream writeNumberCached: number: 48017 +1ms
mqtt-packet:writeToStream writeNumberCached: <Buffer bb 91> +0ms
mqtt-packet:writeToStream writeNumberCached: number: 6 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 06> +0ms
mqtt-packet:writeToStream writeString: tuya/# +0ms
mqttjs:client sendPacket :: writeToStream result true +4ms
mqttjs:client sendPacket :: invoking cb +0ms
mqttjs:client nop :: undefined +0ms
mqttjs:client subscribe: array topic homeassistant/status +0ms
mqttjs:client subscribe: pushing topic homeassistant/status and qos 0 to subs list +0ms
mqttjs:client subscribe :: resubscribe true +1ms
mqttjs:client subscribe :: call _sendPacket +0ms
mqttjs:client _sendPacket :: (mqttjs_cc918d07) :: start +0ms
mqttjs:client sendPacket :: packet: { cmd: ‘subscribe’,
mqttjs:client subscriptions: [ { topic: ‘homeassistant/status’, qos: 0 } ],
mqttjs:client qos: 1,
mqttjs:client retain: false,
mqttjs:client dup: false,
mqttjs:client messageId: 48018 } +0ms
mqttjs:client sendPacket :: emitting packetsend +1ms
mqttjs:client sendPacket :: writing to stream +0ms
mqtt-packet:writeToStream generate called +3ms
mqtt-packet:writeToStream generate: packet.cmd: subscribe +0ms
mqtt-packet:writeToStream subscribe: packet: +0ms
mqtt-packet:writeToStream subscribe: writing to stream: [ [ [ <Buffer 80>, <Buffer 81> ], [ <Buffer 88>, <Buffer 89> ] ], [ [ <Buffer 82>, <Buffer 83> ], [ <Buffer 8a>, <Buffer 8b> ] ], [ [ <Buffer 84>, <Buffer 85> ], [ <Buffer 8c>, <Buffer 8d> ] ] ] +0ms
mqtt-packet:writeToStream writeVarByteInt: writing to stream: <Buffer 19> +1ms
mqtt-packet:writeToStream writeNumberCached: number: 48018 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer bb 92> +0ms
mqtt-packet:writeToStream writeNumberCached: number: 20 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 14> +1ms
mqtt-packet:writeToStream writeString: homeassistant/status +0ms
mqttjs:client sendPacket :: writeToStream result true +2ms
mqttjs:client sendPacket :: invoking cb +1ms
mqttjs:client nop :: undefined +0ms
mqttjs:client subscribe: array topic hass/status +0ms
mqttjs:client subscribe: pushing topic hass/status and qos 0 to subs list +0ms
mqttjs:client subscribe :: resubscribe true +0ms
mqttjs:client subscribe :: call _sendPacket +0ms
mqttjs:client _sendPacket :: (mqttjs_cc918d07) :: start +2ms
mqttjs:client sendPacket :: packet: { cmd: ‘subscribe’,
mqttjs:client subscriptions: [ { topic: ‘hass/status’, qos: 0 } ],
mqttjs:client qos: 1,
mqttjs:client retain: false,
mqttjs:client dup: false,
mqttjs:client messageId: 48019 } +0ms
mqttjs:client sendPacket :: emitting packetsend +1ms
mqttjs:client sendPacket :: writing to stream +0ms
mqtt-packet:writeToStream generate called +4ms
mqtt-packet:writeToStream generate: packet.cmd: subscribe +0ms
mqtt-packet:writeToStream subscribe: packet: +0ms
mqtt-packet:writeToStream subscribe: writing to stream: [ [ [ <Buffer 80>, <Buffer 81> ], [ <Buffer 88>, <Buffer 89> ] ], [ [ <Buffer 82>, <Buffer 83> ], [ <Buffer 8a>, <Buffer 8b> ] ], [ [ <Buffer 84>, <Buffer 85> ], [ <Buffer 8c>, <Buffer 8d> ] ] ] +0ms
mqtt-packet:writeToStream writeVarByteInt: writing to stream: <Buffer 10> +1ms
mqtt-packet:writeToStream writeNumberCached: number: 48019 +0ms
mqtt-packet:writeToStream writeNumberCached: <Buffer bb 93> +0ms
mqtt-packet:writeToStream writeNumberCached: number: 11 +1ms
mqtt-packet:writeToStream writeNumberCached: <Buffer 00 0b> +0ms
mqtt-packet:writeToStream writeString: hass/status +1ms
mqttjs:client sendPacket :: writeToStream result true +3ms
mqttjs:client sendPacket :: invoking cb +1ms
mqttjs:client nop :: undefined +1ms
tuya-mqtt:tuyapi Search for device id 80637808c82b966a1765 +0ms
TuyAPI IP and ID are already both resolved. +0ms
tuya-mqtt:tuyapi Search for device id 0243461450029127e511 +3ms
TuyAPI IP and ID are already both resolved. +2ms
tuya-mqtt:tuyapi Search for device id 46483003bcddc23b6226 +0ms
TuyAPI IP and ID are already both resolved. +0ms
tuya-mqtt:tuyapi Search for device id bf0b8123d92d73cbbawakk +1ms
TuyAPI IP and ID are already both resolved. +2ms
tuya-mqtt:tuyapi Found device id 80637808c82b966a1765 +2ms
TuyAPI Connecting to 192.168.178.31… +2ms
tuya-mqtt:tuyapi Found device id 0243461450029127e511 +3ms
TuyAPI Connecting to 192.168.178.30… +2ms
tuya-mqtt:tuyapi Found device id 46483003bcddc23b6226 +0ms
TuyAPI Connecting to 192.168.178.40… +1ms
tuya-mqtt:tuyapi Found device id bf0b8123d92d73cbbawakk +1ms
TuyAPI Connecting to 192.168.178.41… +0ms
mqttjs:client writable stream :: parsing buffer +16ms
mqtt-packet:parser parse: current state: _parseHeader +46ms
mqtt-packet:parser _parseHeader: packet: Packet { cmd: ‘suback’, retain: false, qos: 0, dup: false, length: -1, topic: null, payload: null } +0ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 1 +6ms
mqtt-packet:parser parse: packet.length: -1, buffer list length: 14 +0ms
mqtt-packet:parser _parseVarByteNum +3ms
mqtt-packet:parser _parseVarByteNum: result: { bytes: 1, value: 3 } +0ms
mqtt-packet:parser _parseLength 3 +0ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 2 +1ms
mqtt-packet:parser parse: packet.length: 3, buffer list length: 13 +0ms
mqtt-packet:parser _parsePayload: payload BufferListStream {
mqtt-packet:parser _bufs: [ <Buffer bb 91 00 90 03 bb 92 00 90 03 bb 93 00> ],
mqtt-packet:parser length: 13,
mqtt-packet:parser _readableState:
mqtt-packet:parser ReadableState {
mqtt-packet:parser objectMode: false,
mqtt-packet:parser highWaterMark: 16384,
mqtt-packet:parser buffer: BufferList { head: null, tail: null, length: 0 },
mqtt-packet:parser length: 0,
mqtt-packet:parser pipes: null,
mqtt-packet:parser pipesCount: 0,
mqtt-packet:parser flowing: null,
mqtt-packet:parser ended: false,
mqtt-packet:parser endEmitted: false,
mqtt-packet:parser reading: false,
mqtt-packet:parser sync: true,
mqtt-packet:parser needReadable: false,
mqtt-packet:parser emittedReadable: false,
mqtt-packet:parser readableListening: false,
mqtt-packet:parser resumeScheduled: false,
mqtt-packet:parser paused: true,
mqtt-packet:parser emitClose: true,
mqtt-packet:parser autoDestroy: false,
mqtt-packet:parser destroyed: false,
mqtt-packet:parser defaultEncoding: ‘utf8’,
mqtt-packet:parser awaitDrain: 0,
mqtt-packet:parser readingMore: false,
mqtt-packet:parser decoder: null,
mqtt-packet:parser encoding: null },
mqtt-packet:parser readable: true,
mqtt-packet:parser _events: [Object: null prototype] {},
mqtt-packet:parser _eventsCount: 0,
mqtt-packet:parser _maxListeners: undefined,
mqtt-packet:parser _writableState:
mqtt-packet:parser WritableState {
mqtt-packet:parser objectMode: false,
mqtt-packet:parser highWaterMark: 16384,
mqtt-packet:parser finalCalled: false,
mqtt-packet:parser needDrain: false,
mqtt-packet:parser ending: false,
mqtt-packet:parser ended: false,
mqtt-packet:parser finished: false,
mqtt-packet:parser destroyed: false,
mqtt-packet:parser decodeStrings: true,
mqtt-packet:parser defaultEncoding: ‘utf8’,
mqtt-packet:parser length: 0,
mqtt-packet:parser writing: false,
mqtt-packet:parser corked: 0,
mqtt-packet:parser sync: true,
mqtt-packet:parser bufferProcessing: false,
mqtt-packet:parser onwrite: [Function],
mqtt-packet:parser writecb: null,
mqtt-packet:parser writelen: 0,
mqtt-packet:parser bufferedRequest: null,
mqtt-packet:parser lastBufferedRequest: null,
mqtt-packet:parser pendingcb: 0,
mqtt-packet:parser prefinished: false,
mqtt-packet:parser errorEmitted: false,
mqtt-packet:parser emitClose: true,
mqtt-packet:parser autoDestroy: false,
mqtt-packet:parser bufferedRequestCount: 0,
mqtt-packet:parser corkedRequestsFree:
mqtt-packet:parser CorkedRequest { next: null, entry: null, finish: [Function] } },
mqtt-packet:parser writable: true,
mqtt-packet:parser allowHalfOpen: true } +0ms
mqtt-packet:parser _parseSuback +2ms
mqtt-packet:parser _parseNum: result: 48017 +2ms
mqtt-packet:parser _parseMessageId: packet.messageId 48017 +2ms
mqtt-packet:parser _parsePayload complete result: true +2ms
mqtt-packet:parser parse: state complete. _stateCounter is now: 3 +0ms
mqtt-packet:parser parse: packet.length: 3, buffer list length: 13 +0ms
mqtt-packet:parser _newPacket +1ms
mqtt-packet:parser _newPacket: parser emit packet: packet.cmd: suback, packet.payload: null, packet.length: 3 +0ms

TuyAPI Connecting to 192.168.178.41… +1ms
TuyAPI Error event from socket. 192.168.178.41 { Error: connect EHOSTUNREACH 192.168.178.41:6668
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
errno: ‘EHOSTUNREACH’,
code: ‘EHOSTUNREACH’,
syscall: ‘connect’,
address: ‘192.168.178.41’,
port: 6668 } +3s
tuya-mqtt:error Error: Error from socket
tuya-mqtt:error at Socket.client.on.err (/home/danyele/tuya-mqtt/node_modules/tuyapi/index.js:399:30)
tuya-mqtt:error at Socket.emit (events.js:198:13)
tuya-mqtt:error at emitErrorNT (internal/streams/destroy.js:91:8)
tuya-mqtt:error at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
tuya-mqtt:error at process._tickCallback (internal/process/next_tick.js:63:19) +13s
tuya-mqtt:error connect EHOSTUNREACH 192.168.178.41:6668 +2ms
tuya-mqtt:error Error connecting to device id bf0b8123d92d73cbbawakk…retry in 10 seconds. +1ms
TuyAPI Socket closed: 192.168.178.41 +4ms
TuyAPI Pinging 192.168.178.40 +4s
TuyAPI Pinging 192.168.178.30 +35ms
TuyAPI Pinging 192.168.178.31 +8ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +26ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +0ms
TuyAPI Pong from 192.168.178.40 +1ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +39ms
TuyAPI Parsed: +0ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +1ms
TuyAPI Pong from 192.168.178.31 +0ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +0ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +0ms
TuyAPI Pong from 192.168.178.30 +1ms
tuya-mqtt:tuyapi Search for device id bf0b8123d92d73cbbawakk +13s
TuyAPI IP and ID are already both resolved. +6s
tuya-mqtt:tuyapi Found device id bf0b8123d92d73cbbawakk +0ms
TuyAPI Connecting to 192.168.178.41… +1ms
TuyAPI Error event from socket. 192.168.178.41 { Error: connect EHOSTUNREACH 192.168.178.41:6668
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
errno: ‘EHOSTUNREACH’,
code: ‘EHOSTUNREACH’,
syscall: ‘connect’,
address: ‘192.168.178.41’,
port: 6668 } +3s
tuya-mqtt:error Error: Error from socket
tuya-mqtt:error at Socket.client.on.err (/home/danyele/tuya-mqtt/node_modules/tuyapi/index.js:399:30)
tuya-mqtt:error at Socket.emit (events.js:198:13)
tuya-mqtt:error at emitErrorNT (internal/streams/destroy.js:91:8)
tuya-mqtt:error at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
tuya-mqtt:error at process._tickCallback (internal/process/next_tick.js:63:19) +13s
tuya-mqtt:error connect EHOSTUNREACH 192.168.178.41:6668 +1ms
tuya-mqtt:error Error connecting to device id bf0b8123d92d73cbbawakk…retry in 10 seconds. +0ms
TuyAPI Socket closed: 192.168.178.41 +1ms
TuyAPI Pinging 192.168.178.40 +807ms
TuyAPI Pinging 192.168.178.30 +36ms
TuyAPI Pinging 192.168.178.31 +7ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +33ms
TuyAPI Parsed: +0ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +0ms
TuyAPI Pong from 192.168.178.40 +0ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +64ms
TuyAPI Parsed: +2ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +0ms
TuyAPI Pong from 192.168.178.30 +7ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +2ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +1ms
TuyAPI Pong from 192.168.178.31 +1ms
tuya-mqtt:tuyapi Search for device id bf0b8123d92d73cbbawakk +13s
TuyAPI IP and ID are already both resolved. +9s
tuya-mqtt:tuyapi Found device id bf0b8123d92d73cbbawakk +1ms
TuyAPI Connecting to 192.168.178.41… +1ms
TuyAPI Pinging 192.168.178.40 +798ms
TuyAPI Pinging 192.168.178.30 +35ms
TuyAPI Pinging 192.168.178.31 +8ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +28ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +1ms
TuyAPI Pong from 192.168.178.30 +2ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +0ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +1ms
TuyAPI Pong from 192.168.178.31 +1ms
TuyAPI Received data: 000055aa00000000000000090000000c00000000b051ab030000aa55 +30ms
TuyAPI Parsed: +1ms
TuyAPI { payload: false, leftover: false, commandByte: 9, sequenceN: 0 } +0ms
TuyAPI Pong from 192.168.178.40 +0ms
TuyAPI Error event from socket. 192.168.178.41 { Error: connect EHOSTUNREACH 192.168.178.41:6668
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
errno: ‘EHOSTUNREACH’,
code: ‘EHOSTUNREACH’,
syscall: ‘connect’,
address: ‘192.168.178.41’,
port: 6668 } +2s
tuya-mqtt:error Error: Error from socket
tuya-mqtt:error at Socket.client.on.err (/home/danyele/tuya-mqtt/node_modules/tuyapi/index.js:399:30)
tuya-mqtt:error at Socket.emit (events.js:198:13)
tuya-mqtt:error at emitErrorNT (internal/streams/destroy.js:91:8)
tuya-mqtt:error at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
tuya-mqtt:error at process._tickCallback (internal/process/next_tick.js:63:19) +13s
tuya-mqtt:error connect EHOSTUNREACH 192.168.178.41:6668 +1ms
tuya-mqtt:error Error connecting to device id bf0b8123d92d73cbbawakk…retry in 10 seconds. +1ms
TuyAPI Socket closed: 192.168.178.41 +5ms
^\Uscita (core dump creato)"
In mqtt explorer veco the lamp and the on - off controls but does not turn on.
I hope for your help thanks

Please mark code, logs and similar stuff as code to make reading easier :wink:

1 Like

Looks like it cannot reach your tuya device… is it online in the tuya app? Can you telnet to it from the server running tuya-mqtt

Just guessing here, since I haven’t read your logs. Tuya local only works with one “controller”. If you have a tuya app open on your phone that would break tuya-mqtt. Quit the app and restart tuya-mqtt.

Yes, the app is online, I’m sorry but I don’t know what telnet is

yes I read this, the tuya app is closed

It is a program that allows you to connect to an IP and Port to check the connection is possible (no firewall,etc) you may need to install it.

Here you can see that I can reach my tuya device

/etc/openhab/scripts/tuya-mqtt$ telnet 192.168.2.14 6668
Trying 192.168.2.14...
Connected to 192.168.2.14.
Escape character is '^]'.

Also maybe show the contents of your devices.conf

Ok, this evening I try

Hello this is the devices.conf

" [
{
name: ‘Entrance 2’,
id: ‘80637808c82b966a1765’,
key: ‘xxxxxxxx’,
type: ‘generic device’,
ip: ‘192.168.178.31’
},
{
name: ‘Entrance 1’,
id: ‘0243461450029127e511’,
key: ‘xxxxxxxx’,
type: ‘generic device’,
ip: ‘192.168.178.30’
},
{
name: ‘Light house light’,
id: ‘xxxxxxxx’,
key: ‘b6a1525859b7ee77’,
type: ‘generic device’,
ip: ‘192.168.178.40’
},
{
name: ‘Vacuum Cleaner’,
id: ‘bf0b8123d92d73cbbawakk’,
key: ‘xxxxxxxx’,
type: ‘generic device’,
ip: ‘192.168.178.41’
}
] "

and this is telnet, i tried it with one device but it works with all

" danyele @ ubuntu: ~ / tuya-mqtt $ telnet 192.168.178.30 6668
Trying 192.168.178.30 …
Connected to 192.168.178.30.
Escape character is ‘^]’. "

sorry but i don’t know how to insert a code

Did you create you device list from the output of “tuya-cli wizard”? And just to confirm, is the issue that the the mqtt topics are not updating (i.e when controlling from the app) or that you cannot control from openhab?

yes I found them through tuya-cli wizard, from the app they work. In mqtt Explorer when I turn on a lamp (via openhab), the status changes from off to on, but the lamp does not turn on

When you turn the lamp on / off from the App does mqtt update?

If so please paste your thing config - do you use flat file or you create in UI?

I also see reference to home assistant in the mqtt topic - is home assistant listening to these topics too? Any tuya integrations there?

Thanks, this evening I try, now I’m working

when i turn on / off the light from the app, nothing happens in mqtt. The thing I created from the ui, in the home assistant I activated the tuya skill and it works.



Is there a chance that HA is connected to the tuya device so that tuya-mqtt can not access? The other thing you can do is that if HA is working, export HA to mqtt then have openhab control it that way? I run HA as well and use it to export sensors to mqtt so that if there is a binding / integration that is available in HA but not in OH then I can still use it.

ok but i don’t use home assistant, i just use openhab. I have read in various forums that tuya-mqtt can be integrated into oh

Ah, I saw reference to “homeassistant/status” but possibly I think this might be part of the tuya-mqtt script (as I think it was developed by hass user). I am not sure why it cannot reach or disconnects from your devices, my setup looks similar to yours. The only difference is that I use a .thing file to create my thing in Openhab.

Thing mqtt:topic:outdoor_left "Outdoor Left GPO" (mqtt:broker:5b21f1715e) {
    Channels:
        Type switch: switch1_power "Power" [ stateTopic="tuya/outdoor_left/dps/1/state", commandTopic="tuya/outdoor_left/dps/1/command", on="true", off="false" ]
        Type switch: switch2_power "Power" [ stateTopic="tuya/outdoor_left/dps/2/state", commandTopic="tuya/outdoor_left/dps/2/command", on="true", off="false" ]
        Type number: wattage "GPO Wattage" [ stateTopic="tuya/outdoor_left/dps/19/state", unit="W" ]
        Type number: voltage "GPO Voltage" [ stateTopic="tuya/outdoor_left/dps/20/state", unit="V" ]
}

tonight i try to create a thing with your code, change the names, and see if it works
Thanks

The only concern is that tuya-mqtt should be populating your mqtt topics as this is all independant of openhab. The thing config is only to do with display and contyrol of tuya in openhab.

Ok thanks