Meerstetter raises BrokenPipeError
Multiple communications are attempted by different acq obj for input, output and working_setpoint:
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_ DEBUG : Controller:read_input: <bliss.common.regulation.Input object at 0x7f3eb10558d0>:input_type None
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200 DEBUG : get_object_temperature(): channel = 1
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : connect to 172.29.12.140:50000
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : timeout=5.0 ; eol=10
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_ DEBUG : Controller:read_output: <bliss.common.regulation.Output object at 0x7f3eb1055750>
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200 DEBUG : get_output_current(): channel = 1
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : connect to 172.29.12.140:50000
2024-10-03 12:12:14,812 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : timeout=5.0 ; eol=10
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_ DEBUG : Controller:get_working_setpoint: <bliss.common.regulation.Loop object at 0x7f3eb1055660>
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200 DEBUG : get_object_temperature(): channel = 1
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : connect to 172.29.12.140:50000
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : timeout=5.0 ; eol=10
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : received bytes=120 b'Welcome to the LTR-1200\r\nFor more information please consult the User Manual\r\nor the Website served by the LTR-1200.\r\n\r\n'
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : readline bytes=116 b'Welcome to the LTR-1200\r\nFor more information please consult the User Manual\r\nor the Website served by the LTR-1200.'
2024-10-03 12:12:14,813 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : write bytes=21 b'#010017?VR03E80154DA\r'
2024-10-03 12:12:14,814 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : received bytes=20 b'!010017409FFE40DC4A\r'
2024-10-03 12:12:14,814 eh2_exp global.controllers.Ltr1200_.ltr1200.Socket[172_29_12_140:50000] DEBUG : readline bytes=19 b'!010017409FFE40DC4A'
2024-10-03 12:12:14,814 eh2_exp global.controllers.Ltr1200_.ltr1200 DEBUG : get_object_temperature: temp = 4.999786376953125
...
File "/home/blissadm/local/bliss_2_1.git/bliss/controllers/regulation/temperature/meerstetter/mecom.py", line 63, in _putget
self._sock.readline(eol=b"\r\n\r\n")
File "/home/blissadm/local/bliss_2_1.git/bliss/comm/tcp.py", line 63, in rfunc
return fu(self, *args, **kwarg)
File "/home/blissadm/local/bliss_2_1.git/bliss/comm/tcp.py", line 227, in readline
return self._readline(eol, timeout)
File "/home/blissadm/local/bliss_2_1.git/bliss/comm/tcp.py", line 258, in _readline
raise socket.error(errno.EPIPE, "Broken pipe")
BrokenPipeError: [Errno 32] Broken pipe
-
The Socket
functionreadline
is not taking the lock -
A callback on connect could be used to drop the welcome message on every connection.