Use "device_id" instead of "slave" in modbus integration (#150200)

This commit is contained in:
Alexandre CUER
2025-08-10 09:31:26 +02:00
committed by GitHub
parent 2c36a74da5
commit 5262cca8e6
4 changed files with 11 additions and 8 deletions

View File

@@ -97,6 +97,7 @@ CONF_VIRTUAL_COUNT = "virtual_count"
CONF_WRITE_TYPE = "write_type"
CONF_ZERO_SUPPRESS = "zero_suppress"
DEVICE_ID = "device_id"
RTUOVERTCP = "rtuovertcp"
SERIAL = "serial"
TCP = "tcp"

View File

@@ -57,6 +57,7 @@ from .const import (
CONF_PARITY,
CONF_STOPBITS,
DEFAULT_HUB,
DEVICE_ID,
MODBUS_DOMAIN as DOMAIN,
PLATFORMS,
RTUOVERTCP,
@@ -380,7 +381,7 @@ class ModbusHub:
) -> ModbusPDU | None:
"""Call sync. pymodbus."""
kwargs: dict[str, Any] = (
{ATTR_SLAVE: slave} if slave is not None else {ATTR_SLAVE: 1}
{DEVICE_ID: slave} if slave is not None else {DEVICE_ID: 1}
)
entry = self._pb_request[use_call]

View File

@@ -467,7 +467,7 @@ async def test_hvac_onoff_values(hass: HomeAssistant, mock_modbus) -> None:
)
await hass.async_block_till_done()
mock_modbus.write_register.assert_called_with(11, value=0xAA, slave=10)
mock_modbus.write_register.assert_called_with(11, value=0xAA, device_id=10)
await hass.services.async_call(
CLIMATE_DOMAIN,
@@ -477,7 +477,7 @@ async def test_hvac_onoff_values(hass: HomeAssistant, mock_modbus) -> None:
)
await hass.async_block_till_done()
mock_modbus.write_register.assert_called_with(11, value=0xFF, slave=10)
mock_modbus.write_register.assert_called_with(11, value=0xFF, device_id=10)
@pytest.mark.parametrize(
@@ -506,7 +506,7 @@ async def test_hvac_onoff_coil(hass: HomeAssistant, mock_modbus) -> None:
)
await hass.async_block_till_done()
mock_modbus.write_coil.assert_called_with(11, value=1, slave=10)
mock_modbus.write_coil.assert_called_with(11, value=1, device_id=10)
await hass.services.async_call(
CLIMATE_DOMAIN,
@@ -516,7 +516,7 @@ async def test_hvac_onoff_coil(hass: HomeAssistant, mock_modbus) -> None:
)
await hass.async_block_till_done()
mock_modbus.write_coil.assert_called_with(11, value=0, slave=10)
mock_modbus.write_coil.assert_called_with(11, value=0, device_id=10)
@pytest.mark.parametrize(

View File

@@ -63,6 +63,7 @@ from homeassistant.components.modbus.const import (
CONF_SWING_MODE_VALUES,
CONF_VIRTUAL_COUNT,
DEFAULT_SCAN_INTERVAL,
DEVICE_ID,
MODBUS_DOMAIN as DOMAIN,
RTUOVERTCP,
SERIAL,
@@ -867,7 +868,7 @@ async def test_pb_service_write(
assert func_name[do_write[FUNC]].called
assert func_name[do_write[FUNC]].call_args.args == (data[ATTR_ADDRESS],)
assert func_name[do_write[FUNC]].call_args.kwargs == {
"slave": 17,
DEVICE_ID: 17,
value_arg_name[do_write[FUNC]]: data[do_write[DATA]],
}
@@ -1326,7 +1327,7 @@ async def test_check_default_slave(
"""Test default slave."""
assert mock_modbus.read_holding_registers.mock_calls
first_call = mock_modbus.read_holding_registers.mock_calls[0]
assert first_call.kwargs["slave"] == expected_slave_value
assert first_call.kwargs[DEVICE_ID] == expected_slave_value
@pytest.mark.parametrize(
@@ -1407,7 +1408,7 @@ async def test_pb_service_write_no_slave(
assert func_name[do_write[FUNC]].called
assert func_name[do_write[FUNC]].call_args.args == (data[ATTR_ADDRESS],)
assert func_name[do_write[FUNC]].call_args.kwargs == {
"slave": 1,
DEVICE_ID: 1,
value_arg_name[do_write[FUNC]]: data[do_write[DATA]],
}