EspecNorthAmerica / ChamberConnectLibrary

Python library for ESPEC North America chambers with P-300, SCP-220, Watlow F4, F4T controllers.
http://www.espec.com/na/support/software/
MIT License
30 stars 24 forks source link

Modbus TCP blocking forever #16

Open Konstantin-B87 opened 3 years ago

Konstantin-B87 commented 3 years ago

In modbus.py file, class ModbusTCP initialized with "self.socket.setblocking(True)". I ran into an issue where the interact function hung inside the interact function and I believe it is because it is waiting for one of the socket.recv() calls to come back. As there is also a lock which prevents from getting into the wrapper upstream, additional calls will not be able to get through causing all communications with the chamber to stop.

PaulNongL commented 3 years ago

This is due to the limitation of the (old) F4Ts/Firmware. On F4Ts with older firmware, locking and blocking should be a normal behavior. Newer F4Ts with new firmware, multiple TCP communications are possible, up to 4 TCP connections at a time.