ChamberConnectLibrary
ChamberConnectLibrary copied to clipboard
Modbus TCP blocking forever
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.
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.