Skip to content

Commit 4189c91

Browse files
committed
ammend
1 parent 27fcf4c commit 4189c91

2 files changed

Lines changed: 7 additions & 1 deletion

File tree

packages/modules/common/modbus.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from pymodbus.client.sync import ModbusTcpClient, ModbusSerialClient
1515
from pymodbus.constants import Endian
1616
from pymodbus.payload import BinaryPayloadDecoder
17+
from pymodbus.transaction import ModbusSocketFramer
1718
from urllib3.util import parse_url
1819

1920
log = logging.getLogger(__name__)
@@ -197,12 +198,13 @@ def __init__(self,
197198
address: str,
198199
port: int = 502,
199200
sleep_after_connect: Optional[int] = 0,
201+
framer: type[ModbusSocketFramer] = ModbusSocketFramer,
200202
**kwargs):
201203
parsed_url = parse_url(address)
202204
host = parsed_url.host
203205
if parsed_url.port is not None:
204206
port = parsed_url.port
205-
super().__init__(ModbusTcpClient(host, port, **kwargs), address, port, sleep_after_connect)
207+
super().__init__(ModbusTcpClient(host, port, framer, **kwargs), address, port, sleep_after_connect)
206208

207209

208210
class ModbusSerialClient_(ModbusClient):

packages/modules/conftest.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@
3535
module.BinaryPayloadDecoder = Mock()
3636
sys.modules['pymodbus.payload'] = module
3737

38+
module = type(sys)('pymodbus.transaction')
39+
module.ModbusSocketFramer = Mock()
40+
sys.modules['pymodbus.transaction'] = module
41+
3842
module = type(sys)('socketserver')
3943
module.TCPServer = Mock()
4044
sys.modules['socketserver'] = module

0 commit comments

Comments
 (0)