@@ -115,6 +115,10 @@ async def _async_init_solaredge(self) -> None:
115115 await self ._hass .async_add_executor_job (new_inverter .init_device )
116116 self .inverters .append (new_inverter )
117117
118+ except ModbusReadError as e :
119+ self .disconnect ()
120+ raise HubInitFailed (f"{ e } " )
121+
118122 except DeviceInvalid as e :
119123 """Inverters are required"""
120124 _LOGGER .error (f"Inverter device ID { inverter_unit_id } : { e } " )
@@ -140,8 +144,9 @@ async def _async_init_solaredge(self) -> None:
140144 self .meters .append (new_meter_1 )
141145 _LOGGER .debug (f"Found meter 1 on inverter ID { inverter_unit_id } " )
142146
143- except ModbusReadError :
144- raise HubInitFailed
147+ except ModbusReadError as e :
148+ self .disconnect ()
149+ raise HubInitFailed (f"{ e } " )
145150
146151 except DeviceInvalid :
147152 pass
@@ -165,8 +170,9 @@ async def _async_init_solaredge(self) -> None:
165170 self .meters .append (new_meter_2 )
166171 _LOGGER .debug (f"Found meter 2 on inverter ID { inverter_unit_id } " )
167172
168- except ModbusReadError :
169- raise HubInitFailed
173+ except ModbusReadError as e :
174+ self .disconnect ()
175+ raise HubInitFailed (f"{ e } " )
170176
171177 except DeviceInvalid :
172178 pass
@@ -190,8 +196,9 @@ async def _async_init_solaredge(self) -> None:
190196 self .meters .append (new_meter_3 )
191197 _LOGGER .debug (f"Found meter 3 on inverter ID { inverter_unit_id } " )
192198
193- except ModbusReadError :
194- raise HubInitFailed
199+ except ModbusReadError as e :
200+ self .disconnect ()
201+ raise HubInitFailed (f"{ e } " )
195202
196203 except DeviceInvalid :
197204 pass
@@ -216,8 +223,9 @@ async def _async_init_solaredge(self) -> None:
216223 self .batteries .append (new_battery_1 )
217224 _LOGGER .debug (f"Found battery 1 inverter { inverter_unit_id } " )
218225
219- except ModbusReadError :
220- raise HubInitFailed
226+ except ModbusReadError as e :
227+ self .disconnect ()
228+ raise HubInitFailed (f"{ e } " )
221229
222230 except DeviceInvalid :
223231 pass
@@ -241,8 +249,9 @@ async def _async_init_solaredge(self) -> None:
241249 self .batteries .append (new_battery_2 )
242250 _LOGGER .debug (f"Found battery 2 inverter { inverter_unit_id } " )
243251
244- except ModbusReadError :
245- raise HubInitFailed
252+ except ModbusReadError as e :
253+ self .disconnect ()
254+ raise HubInitFailed (f"{ e } " )
246255
247256 except DeviceInvalid :
248257 pass
0 commit comments