Receiving TCP data

Hi,
I’m trying to read data from my Iskrameco MT372 meter via the TCP binding, but the binding is giving me a big headache…
The meter is quite slow in responding, which seems to make the binding end it’s receive buffering so I’m unsure how to solve this. I thought that blocking=true would solve it, but it doesn’t :(. Also no matter what I try, then I cannot get another Item to receive the data, it’s always the sending item which gets the response…

tcp.cfg:

port=25001
postamble=\r\n
blocking=true
timeout=8000
refreshinterval=8000
charset=ASCII

rule:

rule "Ask Iskrameco"
when Item RedButton changed to ON
then
	sendCommand(SmartMeter_send,"/?!")
	try { Thread::sleep(2000) } catch(Exception e) {}
	sendCommand(SmartMeter_send,"000")
end

Item:

String SmartMeter_send "SmartMeter [%s]" (SmartMeter) {tcp=">[192.168.1.20:4002:default]", autoupdate="false" }

I should in the second query receive e.g. (tested with putty):

1.8.0(34581.690kWh)
2.8.0(20074.272
kWh)
21.7.0((ER11))
31.7.0(002.9A)
32.7.0(230
V)
41.7.0((ER11))
51.7.0(003.4A)
52.7.0(229
V)
61.7.0((ER11))
71.7.0(002.2A)
72.7.0(232
V)
!
?

But I only get:
1.8.0(34581.439kWh)
2.8.0(20074.272
kWh)
21.7.0((ER11))

so a lot of data is missing :frowning: