Maybe some additional insights - as I don’t have HS300 device myself, I’m using tplink-smarthome-simulator (but this behavior is also confirmed by users having HS300) but the advantage is, that I see the logs - while first time it’s clearly visible discovery process, 2nd time it is not reaching the device at all.
Eg. during first discovery I see :
tplink-simulator:device:tcp [hs300] TCP DATA 10.0.0.7 51104 +0ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{}},"context":{"child_ids":["0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700"]}} +1ms
tplink-simulator:DEBUG set currentContext null +116ms
tplink-simulator:DEBUG context.child_ids [ '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700' ] +3ms
tplink-simulator:DEBUG set currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [
{
sysinfo: {
id: '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700',
state: 0,
alias: 'Mock One',
on_time: 0,
next_action: [Object]
},
emeter: {
realtime: [Object],
daystat: [Object],
get_vgain_igain: [Object]
},
schedule: { next_action: [Object], rules: [Object], daystat: [Object] },
anti_theft: { rules: [Object] },
count_down: { rules: [Object] }
}
] +1ms
tplink-simulator:device:tcp [hs300] TCP DATA 10.0.0.7 51114 +5ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{}},"context":{"child_ids":["0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701"]}} +0ms
tplink-simulator:DEBUG set currentContext null +1ms
tplink-simulator:DEBUG context.child_ids [ '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701' ] +1ms
tplink-simulator:DEBUG set currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [
{
sysinfo: {
id: '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701',
state: 0,
alias: 'Mock Two',
on_time: 0,
next_action: [Object]
},
emeter: {
realtime: [Object],
daystat: [Object],
get_vgain_igain: [Object]
},
schedule: { next_action: [Object], rules: [Object], daystat: [Object] },
anti_theft: { rules: [Object] },
count_down: { rules: [Object] }
}
] +0ms
tplink-simulator:device:tcp [hs300] TCP DATA 10.0.0.7 51122 +3ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{}},"context":{"child_ids":["0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702"]}} +0ms
tplink-simulator:DEBUG set currentContext null +2ms
tplink-simulator:DEBUG context.child_ids [ '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702' ] +0ms
tplink-simulator:DEBUG set currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [] +1ms
tplink-simulator:DEBUG get currentContext [
{
sysinfo: {
id: '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702',
state: 0,
alias: 'Mock Three',
on_time: 0,
next_action: [Object]
},
emeter: {
realtime: [Object],
daystat: [Object],
get_vgain_igain: [Object]
},
schedule: { next_action: [Object], rules: [Object], daystat: [Object] },
anti_theft: { rules: [Object] },
count_down: { rules: [Object] }
}
] +0ms
tplink-simulator:device:tcp [hs300] TCP DATA 10.0.0.7 51138 +2ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{}},"context":{"child_ids":["0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703"]}} +0ms
tplink-simulator:DEBUG set currentContext null +1ms
tplink-simulator:DEBUG context.child_ids [ '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703' ] +0ms
tplink-simulator:DEBUG set currentContext [] +1ms
tplink-simulator:DEBUG get currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [
{
sysinfo: {
id: '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703',
state: 0,
alias: 'Mock Four',
on_time: 0,
next_action: [Object]
},
emeter: {
realtime: [Object],
daystat: [Object],
get_vgain_igain: [Object]
},
schedule: { next_action: [Object], rules: [Object], daystat: [Object] },
anti_theft: { rules: [Object] },
count_down: { rules: [Object] }
}
] +0ms
tplink-simulator:device:tcp [hs300] TCP DATA 10.0.0.7 51154 +2ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{}},"context":{"child_ids":["0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704"]}} +0ms
tplink-simulator:DEBUG set currentContext null +2ms
tplink-simulator:DEBUG context.child_ids [ '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704' ] +0ms
tplink-simulator:DEBUG set currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [] +0ms
tplink-simulator:DEBUG get currentContext [
{
sysinfo: {
id: '0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704',
state: 0,
alias: 'Mock Five',
on_time: 0,
next_action: [Object]
},
emeter: {
realtime: [Object],
daystat: [Object],
get_vgain_igain: [Object]
},
schedule: { next_action: [Object], rules: [Object], daystat: [Object] },
anti_theft: { rules: [Object] },
count_down: { rules: [Object] }
}
When running it 2nd time :
tplink-simulator:device:udp [hs300] UDP responding, delay:100, 59770 10.0.0.7 +102ms
tplink-simulator:device:udp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"00","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"01","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"02","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"03","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"04","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"05","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +1ms
tplink-simulator:device:udp [hs300] UDP responding, delay:100, 59770 10.0.0.7 +2ms
tplink-simulator:device:udp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"00","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"01","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"02","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"03","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"04","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"05","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +0ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +94ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +1ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +3ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +2ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +2ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +0ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +1ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +1ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +1ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +0ms
tplink-simulator:device:tcp [hs300] TCP responding, delay:100, { address: '10.0.0.6', family: 'IPv4', port: 9999 } +2ms
tplink-simulator:device:tcp {"system":{"get_sysinfo":{"sw_ver":"1.0.6 Build 180627 Rel.081000","hw_ver":"1.0","model":"HS300(US)","rssi":-68,"mic_type":"IOT.SMARTPLUGSWITCH","feature":"TIM:ENE","updating":0,"led_off":0,"child_num":6,"children":[{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F700","state":0,"alias":"Mock One","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F701","state":0,"alias":"Mock Two","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F702","state":0,"alias":"Mock Three","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F703","state":0,"alias":"Mock Four","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F704","state":0,"alias":"Mock Five","on_time":0,"next_action":{"type":-1}},{"id":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F705","state":0,"alias":"Mock Six","on_time":0,"next_action":{"type":-1}}],"alias":"Mock hs300","deviceId":"0FC3850FBB8E766D7DEC9E1DCF70A0236C8C75F7","hwId":"E547FC15A580503DA5EC64C15B8EB7BE","oemId":"A2B2C91E91D73DFB70DD87C4BE706103","latitude":"48.3286","latitude_i":483286,"longitude":"36.3433","longitude_i":363433,"mac":"50:c7:bf:fb:db:b4","err_code":0}}} +0ms
Note the difference of TCP 1st and UDP only 2nd, for me it seems to be problem with API tplink-smarthome-api, what do you think ?
Interesting also the 2nd attempt returns “Mock Three” only on repeating attempts … ?