Ich habe, einfach mal um es zu probieren, den Pocket WiFi Stick von Solax eingerichtet und über die App werden alle Daten übertragen, Hausverbrauch, Einspeisung, Ertrag usw....
Lege ich in der openWB Solax Zähler und WR an, bekomme ich folgende Fehlermeldung:
Code: Alles auswählen
2023-08-30 12:43:20,012 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=handler10Sec, args=(), kwargs={})
2023-08-30 12:43:20,013 - {root:66} - {INFO:MainThread} - # ***Start***
2023-08-30 12:43:20,038 - {modules.devices.solax.device:55} - {DEBUG:device46} - Start device reading {'component47': <modules.devices.solax.counter.SolaxCounter object at 0x71a92898>, 'component48': <modules.devices.solax.inverter.SolaxInverter object at 0x71088310>}
2023-08-30 12:43:20,039 - {modules.common.component_context:24} - {DEBUG:set values cp37} - Update Komponente ['Ladepunkt']
2023-08-30 12:43:20,039 - {modules.common.component_context:24} - {DEBUG:device46} - Update Komponente ['Solax Zähler']
2023-08-30 12:43:23,128 - {modules.common.fault_state:52} - {ERROR:device46} - Solax Zähler: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>), Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 85, in __read_registers
raise FaultState.error(__name__+" "+str(response))
modules.common.fault_state.FaultState: ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/devices/solax/device.py", line 60, in update
self.components[component].update()
File "/var/www/html/openWB/packages/modules/devices/solax/counter.py", line 30, in update
power = self.__tcp_client.read_input_registers(70, ModbusDataType.INT_32, wordorder=Endian.Little,
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 138, in read_input_registers
return self.__read_registers(self.delegate.read_input_registers, address, types, byteorder, wordorder, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 100, in __read_registers
raise FaultState.error(__name__+" "+str(type(e))+" " +
modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)
2023-08-30 12:43:23,129 - {modules.common.component_context:24} - {DEBUG:device46} - Update Komponente ['Solax Wechselrichter']
2023-08-30 12:43:23,372 - {helpermodules.utils._thread_handler:26} - {ERROR:MainThread} - device46 konnte nicht innerhalb des Timeouts die Werte abfragen, die abgefragten Werte werden nicht in der Regelung verwendet.
2023-08-30 12:43:23,373 - {modules.common.utils.component_parser:24} - {ERROR:MainThread} - Keine aktuellen Werte für Gerät Solax
2023-08-30 12:43:23,374 - {modules.common.component_context:24} - {DEBUG:update values cp37} - Update Komponente ['Ladepunkt']
2023-08-30 12:43:23,381 - {modules.common.utils.component_parser:24} - {ERROR:MainThread} - Keine aktuellen Werte für Gerät Solax
2023-08-30 12:43:23,456 - {modules.ripple_control_receiver:30} - {DEBUG:MainThread} - RSE1-Status: False, RSE2-Status: False
2023-08-30 12:43:23,467 - {control.counter:138} - {INFO:MainThread} - Verbleibende Ströme an Zähler 47: [16.0, 16.0, 16.0]A
2023-08-30 12:43:23,468 - {control.counter:161} - {INFO:MainThread} - Verbleibende Leistung an Zähler 47: 11000W
2023-08-30 12:43:23,482 - {control.chargepoint.chargepoint:271} - {INFO:MainThread} - LP 37: Ladepunkt gesperrt, da keine Werte vom EVU- oder Zwischenzähler-Zähler empfangen wurden und deshalb kein Lastmanagement durchgeführt werden kann. Bitte schaue auf der Status-Seite nach Fehlermeldungen bei den Zählern. Falls Du dennoch laden möchtest, kannst Du als Gerät 'Virtuelles Gerät' mit einer Komponente 'Virtueller Zähler' verwenden.
2023-08-30 12:43:23,490 - {control.data:307} - {INFO:MainThread} - bat_all_data
BatAllData(config=Config(configured=False), get=Get(soc=0, daily_exported=0, daily_imported=0, imported=0, exported=0, power=0), set=Set(charging_power_left=0, switch_on_soc_reached=False))
2023-08-30 12:43:23,496 - {control.data:308} - {INFO:MainThread} - cp_all_data
AllChargepointData(get=AllGet(daily_imported=0.0, daily_exported=0, power=0, imported=277371.0, exported=0))
2023-08-30 12:43:23,501 - {control.data:337} - {INFO:MainThread} - cp37
ChargepointData(get=Get(charge_state=False, connected_vehicle=ConnectedVehicle(config=ConnectedConfig(average_consumption=17, charge_template=0, chargemode='stop', current_plan=0, ev_template=0, priority=False, time_charging_in_use=False), info=ConnectedInfo(id=0, name='Ladepunkt'), soc=69), currents=[0.0, 0.0, 0.0], daily_imported=0.0, daily_exported=0, exported=0, fault_str='Kein Fehler.', fault_state=0, imported=277371.0, phases_in_use=0, plug_state=False, power=0, rfid_timestamp=None, rfid=None, state_str="Ladepunkt gesperrt, da keine Werte vom EVU- oder Zwischenzähler-Zähler empfangen wurden und deshalb kein Lastmanagement durchgeführt werden kann. Bitte schaue auf der Status-Seite nach Fehlermeldungen bei den Zählern. Falls Du dennoch laden möchtest, kannst Du als Gerät 'Virtuelles Gerät' mit einer Komponente 'Virtueller Zähler' verwenden.", voltages=[235.19, 239.1, 239.71]), set=Set(change_ev_permitted=False, charging_ev=-1, charging_ev_prev=-1, current=0, energy_to_charge=0, loadmanagement_available=False, log=Log(chargemode_log_entry='_', imported_at_mode_switch=0, imported_at_plugtime=0, imported_since_mode_switch=0, imported_since_plugged=0, range_charged=0, time_charged='00:00', timestamp_start_charging=None), manual_lock=False, phases_to_use=0, plug_state_prev=False, plug_time='08/30/2023, 09:03:50', required_power=0, rfid=None, target_current=0, charging_ev_data=<control.ev.Ev object at 0x71062fa0>), config=Config(configuration={'mode': 'series', 'ip_address': 'localhost', 'duo_num': 0}, ev=0, name='Interne openWB', type='internal_openwb', template=0, connected_phases=3, phase_1=0, auto_phase_switch_hw=True, control_pilot_interruption_hw=False, id=37))
2023-08-30 12:43:23,503 - {control.data:337} - {INFO:MainThread} - cpt0
CpTemplateData(autolock=Autolock(active=False, plans={}, wait_for_charging_end=False), id=0, max_current_multi_phases=16, max_current_single_phase=16, name='Standard Ladepunkt-Profil', rfid_enabling=False, valid_tags=[])
2023-08-30 12:43:23,505 - {control.data:337} - {INFO:MainThread} - counter47
CounterData(config=Config(max_currents=[16, 16, 16], max_total_power=11000), get=Get(powers=[0.0, 0.0, 0.0], currents=[0.0, 0.0, 0.0], voltages=[230.0, 230.0, 230.0], power_factors=[0.0, 0.0, 0.0], unbalanced_load=0, frequency=0, daily_exported=0, daily_imported=0, imported=0, exported=0, fault_state=2, fault_str="modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)", power=0), set=Set(error_counter=179, reserved_surplus=0, released_surplus=0, raw_power_left=11000, raw_currents_left=[16.0, 16.0, 16.0], surplus_power_left=0, state_str=''))
2023-08-30 12:43:23,508 - {control.data:312} - {INFO:MainThread} - counter_all_data
CounterAllData(config=Config(reserve_for_not_charging=False), get=Get(hierarchy=[{'id': 47, 'type': 'counter', 'children': [{'id': 37, 'type': 'cp', 'children': []}, {'id': 48, 'type': 'inverter', 'children': []}]}]), set=Set(loadmanagement_active=False, home_consumption=0, invalid_home_consumption=0, daily_yield_home_consumption=0.0, disengageable_smarthome_power=0))
2023-08-30 12:43:23,511 - {control.data:337} - {INFO:MainThread} - ct0
ChargeTemplateData(name='Standard-Lade-Profil', disable_after_unplug=False, prio=False, load_default=False, time_charging=TimeCharging(active=False, plans={}), chargemode=Chargemode(selected='stop', pv_charging=PvCharging(min_soc_current=10, min_current=6, feed_in_limit=False, min_soc=80, max_soc=100), scheduled_charging=ScheduledCharging(plans={}), instant_charging=InstantCharging(current=8, limit=Limit(selected='none', amount=1000, soc=100))))
2023-08-30 12:43:23,513 - {control.data:337} - {INFO:MainThread} - ev0
EvData(set=Set(ev_template=EvTemplate(data=EvTemplateData(name='Standard-Fahrzeug-Profil', max_current_multi_phases=16, max_phases=3, phase_switch_pause=2, prevent_phase_switch=False, prevent_charge_stop=False, control_pilot_interruption=False, control_pilot_interruption_duration=4, average_consump=17000, min_current=6, max_current_single_phase=32, battery_capacity=82000, nominal_difference=1, keep_charge_active_duration=40), et_num=0), soc_error_counter=0), control_parameter=ControlParameter(required_current=0, required_currents=[0.0, 0.0, 0.0], phases=0, prio=False, timestamp_switch_on_off=None, timestamp_auto_phase_switch=None, timestamp_perform_phase_switch=None, submode=<Chargemode.STOP: 'stop'>, chargemode=<Chargemode.STOP: 'stop'>, imported_instant_charging=None, imported_at_plan_start=None, current_plan=None, state=0), charge_template=0, ev_template=0, name='Standard-Fahrzeug', tag_id=[], get=Get(soc=69, soc_timestamp='08/30/2023, 12:41:34', force_soc_update=False, range=104.0, fault_state=0, fault_str='Kein Fehler.'))
2023-08-30 12:43:23,514 - {control.data:337} - {INFO:MainThread} - ev37
EvData(set=Set(ev_template=EvTemplate(data=EvTemplateData(name='Standard-Fahrzeug-Profil', max_current_multi_phases=16, max_phases=3, phase_switch_pause=2, prevent_phase_switch=False, prevent_charge_stop=False, control_pilot_interruption=False, control_pilot_interruption_duration=4, average_consump=17000, min_current=6, max_current_single_phase=32, battery_capacity=82000, nominal_difference=1, keep_charge_active_duration=40), et_num=0), soc_error_counter=0), control_parameter=ControlParameter(required_current=0, required_currents=[0.0, 0.0, 0.0], phases=0, prio=False, timestamp_switch_on_off=None, timestamp_auto_phase_switch=None, timestamp_perform_phase_switch=None, submode=<Chargemode.STOP: 'stop'>, chargemode=<Chargemode.STOP: 'stop'>, imported_instant_charging=None, imported_at_plan_start=None, current_plan=None, state=0), charge_template=0, ev_template=0, name='Standard-Fahrzeug', tag_id=[], get=Get(soc=0, soc_timestamp='', force_soc_update=False, range=0, fault_state=0, fault_str='Kein Fehler.'))
2023-08-30 12:43:23,516 - {control.data:337} - {INFO:MainThread} - et0
EvTemplateData(name='Standard-Fahrzeug-Profil', max_current_multi_phases=16, max_phases=3, phase_switch_pause=2, prevent_phase_switch=False, prevent_charge_stop=False, control_pilot_interruption=False, control_pilot_interruption_duration=4, average_consump=14800, min_current=6, max_current_single_phase=16, battery_capacity=17000, nominal_difference=1, keep_charge_active_duration=40)
2023-08-30 12:43:23,519 - {control.data:316} - {INFO:MainThread} - general_data
GeneralData(chargemode_config=ChargemodeConfig(instant_charging=InstantCharging(phases_to_use=1), pv_charging=PvCharging(bat_prio=False, charging_power_reserve=200, control_range=[-230, 0], feed_in_yield=15000, phase_switch_delay=7, phases_to_use=0, rundown_power=1000, rundown_soc=50, switch_off_delay=60, switch_off_soc=40, switch_off_threshold=50, switch_on_delay=30, switch_on_soc=60, switch_on_threshold=850), scheduled_charging=ScheduledCharging(phases_to_use=0), time_charging=TimeCharging(phases_to_use=1), unbalanced_load_limit=18, unbalanced_load=False), control_interval=10, extern_display_mode='local', extern=False, external_buttons_hw=False, grid_protection_active=False, grid_protection_configured=True, grid_protection_random_stop=0, grid_protection_timestamp='', mqtt_bridge=False, price_kwh=0.38, range_unit='km', ripple_control_receiver=RippleControlReceiver(configured=True, r1_active=False, r2_active=False))
2023-08-30 12:43:23,520 - {control.data:317} - {INFO:MainThread} - general_data-display
local
2023-08-30 12:43:23,522 - {control.data:318} - {INFO:MainThread} - graph_data
GraphData(config=Config(duration=120))
2023-08-30 12:43:23,524 - {control.data:319} - {INFO:MainThread} - optional_data
OptionalData(et=Et(active=False, config=EtConfig(max_price=0, provider={}), get=EtGet(price=0, price_list=[])), int_display=InternalDisplay(active=False, on_if_plugged_in=True, pin_active=False, pin_code='0000', standby=60, theme=<modules.display_themes.cards.config.CardsDisplayTheme object at 0x71062718>), led=Led(active=False), rfid=Rfid(active=False))
2023-08-30 12:43:23,525 - {control.data:337} - {INFO:MainThread} - pv48
PvData(config=Config(max_ac_out=0), get=Get(currents=[0.0, 0.0, 0.0], daily_exported=0, monthly_exported=0, yearly_exported=0, exported=0, fault_state=2, fault_str="modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)", power=0))
2023-08-30 12:43:23,528 - {control.data:321} - {INFO:MainThread} - pv_all_data
PvAllData(config=Config(configured=True), get=Get(daily_exported=0, monthly_exported=0, yearly_exported=0, exported=0, power=0))
2023-08-30 12:43:23,529 - {control.data:337} - {INFO:MainThread} - system
{'update_in_progress': False, 'perform_update': False, 'ip_address': '192.168.178.59', 'current_commit': '2023-08-22 15:46:37 +0200 [75ea94b4e]', 'current_branch': 'Beta', 'current_branch_commit': '2023-08-22 15:46:37 +0200 [75ea94b4e]', 'current_missing_commits': [], 'datastore_version': 18, 'dataprotection_acknowledged': True, 'usage_terms_acknowledged': True, 'debug_level': 10, 'release_train': 'master', 'version': '2.1.1-Beta.1', 'boot_done': True, 'lastlivevaluesJson': {'timestamp': 1693392193, 'time': '12:43:13', 'house-power': 0.0, 'charging-all': 0.0, 'pv-all': -0.0, 'cp37-power': 0.0, 'ev0-soc': 69}, 'module_update_completed': True}
2023-08-30 12:43:23,530 - {control.data:350} - {INFO:MainThread} - device46
{'name': 'Solax', 'type': 'solax', 'id': 46, 'configuration': {'modbus_id': 2, 'ip_address': '192.168.178.125'}}
2023-08-30 12:43:23,533 - {control.data:352} - {INFO:MainThread} - component47
{'name': 'Solax Zähler', 'type': 'counter', 'id': 47, 'configuration': {}}
2023-08-30 12:43:23,534 - {control.data:352} - {INFO:MainThread} - component48
{'name': 'Solax Wechselrichter', 'type': 'inverter', 'id': 48, 'configuration': {}}
2023-08-30 12:43:23,537 - {control.data:324} - {INFO:MainThread} -
2023-08-30 12:43:23,538 - {control.algorithm.algorithm:25} - {INFO:MainThread} - # Algorithmus
2023-08-30 12:43:23,540 - {control.algorithm.algorithm:31} - {INFO:MainThread} - **Mindestrom setzen**
2023-08-30 12:43:23,545 - {control.algorithm.algorithm:33} - {INFO:MainThread} - **Sollstrom setzen**
2023-08-30 12:43:23,549 - {control.counter:211} - {INFO:MainThread} - Überschuss zur PV-geführten Ladung: 0W
2023-08-30 12:43:23,552 - {control.counter:470} - {DEBUG:MainThread} - Zähler 47: Begrenzung der verbleibenden Leistung auf 0W
2023-08-30 12:43:23,555 - {control.algorithm.algorithm:44} - {INFO:MainThread} - **Keine Leistung für PV-geführtes Laden übrig.**
2023-08-30 12:43:23,557 - {control.process:23} - {INFO:MainThread} - # Ladung starten.
2023-08-30 12:43:23,567 - {modules.common.component_context:24} - {DEBUG:set current cp37} - Update Komponente ['Ladepunkt']
2023-08-30 12:43:23,591 - {control.counter:186} - {INFO:MainThread} - 0W reservierte EVU-Leistung, 0W freigegebene EVU-Leistung
2023-08-30 12:43:23,823 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=update, args=(), kwargs={})
2023-08-30 12:43:23,958 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=smarthome_handler, args=(), kwargs={})
2023-08-30 12:43:25,965 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=smarthome_handler, args=(), kwargs={})
2023-08-30 12:43:26,199 - {modules.common.fault_state:52} - {ERROR:device46} - Solax Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>), Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 85, in __read_registers
raise FaultState.error(__name__+" "+str(response))
modules.common.fault_state.FaultState: ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/devices/solax/device.py", line 60, in update
self.components[component].update()
File "/var/www/html/openWB/packages/modules/devices/solax/inverter.py", line 29, in update
power_temp = self.__tcp_client.read_input_registers(10, [ModbusDataType.UINT_16] * 2, unit=self.__modbus_id)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 138, in read_input_registers
return self.__read_registers(self.delegate.read_input_registers, address, types, byteorder, wordorder, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 100, in __read_registers
raise FaultState.error(__name__+" "+str(type(e))+" " +
modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] No Response received from the remote unit/Unable to decode response', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)
Und natürlich keine Daten. Angeblich soll mit dem WiFi Stick eine übertragung in OpenWB möglich sein, mit dem LAN Dongle nicht. A+B bei RS485 sind auch nicht vertauscht, es kommt direkt am WR die Meldung "Meter Error" und die Daten sind in der Solax App verschwunden. Also zusammenfassend kann man sagen, das ich über Solax Hardware, die Solax Software füttern kann, aber die OpenWB nicht...habe schon überlegt, die SD Karte neu aufzusetzen? Auch weil sich eine Komponente nicht mehr löschen lässt (Wird im Status angezeigt, aber in den Geräten/Komponenten nicht mehr)...