Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Collection of Solarbank 2 system exports #115

Open
thomluther opened this issue Jun 29, 2024 · 22 comments
Open

Collection of Solarbank 2 system exports #115

thomluther opened this issue Jun 29, 2024 · 22 comments
Labels
config_example JSON output files for a configuration help wanted Extra attention is needed

Comments

@thomluther
Copy link
Owner

thomluther commented Jun 29, 2024

Please provide your solarbank 2 system export examples here.
You can extract all data with the system_export tool and zip the output files.
You can add a text file to the zip containing info about some specifics when the export was taken, for example the components of your setup.
Before you provide an export, make sure that the solarbank_info structure in api_sites.json does show:
"is_display_data": true,
and not
"is_display_data": false,

The power values in the site scene_info response are wrong when is_display_data is false. This field seems to be an indicator to the app to skip the display of the response and delay home screen update until next refresh.
The reason and work around for this problem is not understood yet and is to be documented in issue #114

@thomluther thomluther added help wanted Extra attention is needed config_example JSON output files for a configuration labels Jun 29, 2024
@stephan-l
Copy link

I just packaged two exports and a system description
dev2024063019.zip

Something I wonder about. Is it possible that the extension battery is not yet visible? The app shows both but in the api there is only 1600 Wh.

@nicolinuxfr
Copy link

Here's my export, I have the same setup as @stephan-l (meaning, one Solarbank 2 E1600Pro, one battery expansion and one smart meter).

nicolinux.zip

Let me know if you need more.

@stephan-l
Copy link

I made another export especially for reference in the status thread:
dev2024070113.zip

@thomluther
Copy link
Owner Author

Here's my export, I have the same setup as @stephan-l (meaning, one Solarbank 2 E1600Pro, one battery expansion and one smart meter).

nicolinux.zip

Let me know if you need more.

Thanks for the data. The export looks like being done with the shared account, since many responses have no data.

In general, when providing exports to get a full picture of what is possible with the devices, you need to run the export tool with the main account.

@nicolinuxfr
Copy link

Thanks for the data. The export looks like being done with the shared account, since many responses have no data.

Indeed, I thought it was already useful that way, but for science™, I can do another export using my main Anker account.

@thomluther
Copy link
Owner Author

Something I wonder about. Is it possible that the extension battery is not yet visible? The app shows both but in the api there is only 1600 Wh.

It was visible, but not properly considered for the cap and energy calculation of the battery. This is fixed now, also update the solarbank monitor and export tool based on recent data.
Pls use the latest versions before doing another export.

@stephan-l
Copy link

I made a full dump with the owner account.
The system was running at 140W of battery. 0 from grid and solar.
ste20240701222735.zip

@thomluther
Copy link
Owner Author

thomluther commented Jul 2, 2024

@stephan-l thanks for the new dump. That looks much more useful. First observations:

  • OTA update info is not working anymore. It was working for Solarbank 1, not sure what the issue is to query a flag whether a firmware update is available
  • get_upgrade_record for the site is empty. I'm pretty sure everybody does firmware upgrades after setup. But maybe they are not reported by the site report if done prior adding the devices to the site. This is no problem since not used in the Api cache data
  • new Energy statistics: I need to review them and compare to understand which of the values is returned only as total for the queries interval. Those queries have to be repeated to get specific total statistics for previous day. Maybe the mechanism to query daily statistics for today and yesterday must be changed and optimized to reduce the min. required Api requests.
  • Solarbank 2 device load schedule: There is non defined yet. We need exports of various Solarbank 2 schedule definitions. Even if they are not used with AI mode, they can probably be defined and will be included in exports. We need examples of which parameters/fields can be available in the new schedules and how the various weekday configuration structure will be used in the schedule structure. This is most likely pretty much different to Solarbank 1
  • device_attrs does not show any data. More testing and exploration of possible/required json parameters for those endpoints is required. see Explore usage of new device_attrs endpoints #107. We need to understand which devices are supported by this endpoint and what can be changed with the set_device_attrs endpoint (and how)
  • Scene Info is already prepared for a smart_plug device list structure, which is coming probably later this year. So smart plugs may be additional devices to be added to Api caches
  • The Solarbank data time stamp is now always valid even if the data itself seems to be valid. This is strange, since my assumption was that correct cloud update time is presented typically when data is valid. So this timestamp cannot really be used to understand how often data is sent to the cloud by Solarbank 2?
  • In the dumped data there is no indication which mode is used by the Solarbank. Also nothing in regards to the light mode settings or other Solarbank 2 specific settings. Either this is all provided via the new device_attrs endpoints which we don't know yet, or not supported at all via Cloud Api (like Temperature info and Temp Unit Setting is not supported). It would be very helpful if someone can figure out how to make use of this new endpoint with the Solarbank 2 and/or Smartmeter.

@thomluther
Copy link
Owner Author

Here is an actual extract of owner data from export in the monitor after I implemented another workaround for a missing field value in scene_info for the smartmeter wireless_type. I assume now this to be 1 if there is only 1 network in the list for the site and smartmeter reports an online wifi state. In that case it must be using the same network (don't want to make assumptions for anything else, since there could also be smartmeters without solarbank in a site).

Solarbank Monitor (refresh 60 s, details refresh 600 s):
Using input source folder: /workspaces/core/anker-solix-api/exports/SB2onwer_1
Sites: 1,  Devices: 2
--------------------------------------------------------------------------------
Device         : Solarbank 2 E1600 Pro   Alias         : Solarbank 2 E1600 Pro
Serialnumber   : OY7WE1AOZVGS1RLX        Admin         : YES
Site ID        : 38cac050-0128-0eff-c9ba-61dabb1f3df1
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   92 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 1970-01-01 00:00:00     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   44 %                  Min SOC       :   10 %
Battery Energy : 1408 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W
Solar Power    :    0 W                  Output Power  :  140 W
Solar Ch_1     :    0 W                  Solar Ch_2    :    0 W
Solar Ch_3     :    0 W                  Solar Ch_4    :    0 W
Charge Power   : -140 W                  Device Preset :  200 W
Schedule  (Now): 19:28:58 UTC +0200      System Preset :  200 W
ID Start End   Export Output ChargePrio    SB1    SB2  Mode Name
--------------------------------------------------------------------------------
Device         : Smart Meter             Alias         : Smart Meter
Serialnumber   : FYGDVE1ZXEJ6OJAM        Admin         : YES
Site ID        : 38cac050-0128-0eff-c9ba-61dabb1f3df1
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   92 %
SW Version     : v0.0.0.27               Auto-Upgrade  : Unknown
Cloud Status   : online                  Status code   : 1
Grid Status    : ok                      Status code   : 0
Grid Import    :    0 W                  Grid Export   :    0 W
--------------------------------------------------------------------------------

Since both Grid values were 0W, it is difficult to relate them to the new "to_home_load": "140" field which was showing 140 W.
I assume that could actually be the calculated home consumption value, but would need to be proven with other snapshots showing values for more fields. So an export while little Solar power is coming in, there is bypass to the house + discharge from battery + grid is not showing 0 W would be good to correlate all power fields properly.
Please also observe grid_status code, I haven't seen anything else than 0 yet, now describing this as OK state for the grid. I would assume there is another code on power outage, maybe others too ?

@stephan-l
Copy link

Grid status for a power outage will be difficult to obtain. the smart meter is powered by the voltage sensing ports. so it will go offline on power loss. any idea what I shall test next week when I am onsite next time?

I gave it a new try (full dump: ste202407022222303.zip )

Solarbank Monitor (refresh 30 s, details refresh 300 s):
Sites: 1,  Devices: 2
--------------------------------------------------------------------------------
Device         : Solarbank 2 E1600 Pro   Alias         : Solarbank 2 E1600 Pro
Serialnumber   : APCGQ80Exxxx        Admin         : YES
Site ID        : 99e
Wifi SSID      : xxx       
Wifi state     : Online                  Signal        :   90 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 2024-07-02 22:23:03     Valid Data    : YES (Requeries: 3)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   64 %                  Min SOC       :   10 %
Battery Energy : 1024 Wh                 Capacity      : 1600 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W
Solar Power    :    0 W                  Output Power  :    0 W
Solar Ch_1     :    0 W                  Solar Ch_2    :    0 W
Solar Ch_3     :    0 W                  Solar Ch_4    :    0 W
Charge Power   :    0 W                  Device Preset :  200 W
Schedule  (Now): 22:22:50 UTC +0200      System Preset :  200 W
ID Start End   Export Output ChargePrio    SB1    SB2  Mode Name
--------------------------------------------------------------------------------
Device         : Smart Meter             Alias         : Smart Meter
Serialnumber   : AUJS020xxxx        Admin         : YES
Site ID        : 99e3a
Wifi SSID      : xxx       
Wifi state     : Online                  Signal        :   90 %
SW Version     : v0.0.0.27               Auto-Upgrade  : Unknown
Cloud Status   : online                  Status code   : 1
Grid Status    : ok                      Status code   : 0
Grid Import    :  132 W                  Grid Export   :    0 W
--------------------------------------------------------------------------------

My grid meter was at approx 140W. So input is right.

Also the Capacity is broken again. Before todays git pull it was 3200Wh for my setup:

Cloud-Updated  : 2024-07-02 21:57:12     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   65 %                  Min SOC       :   10 %
Battery Energy : 2080 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W

Somehow the battery is charged but now output to the home. I need to understand when it is charged by solar power. Today there wasn't any output only charging.

@stephan-l
Copy link

After another try I got the correct capacity again. Kind of confusing.

Wifi state     : Online                  Signal        :   88 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 2024-07-02 23:04:22     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   64 %                  Min SOC       :   10 %
Battery Energy : 2048 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W

@tagauch1
Copy link

tagauch1 commented Jul 2, 2024

Over the last ~23 hours I have collected some data every 15min via cron, see attachment. Unfortunately most of them are with "is_display_data"="false". I have attached my interpretation of the values in a screenshot of the Anker app.
solix.zip

@thomluther
Copy link
Owner Author

thomluther commented Jul 3, 2024

I made a full dump with the owner account. The system was running at 140W of battery. 0 from grid and solar. ste20240701222735.zip

@stephan-l thanks for the many extracts, they help to get a better picture on various situations after sorting out the invalid data extracts.

One situation puzzles me however to correlate the values properly:

    "solarbank_info": {
      "solarbank_list": [
        {
          "device_pn": "A17C1",
          "device_sn": "VKYPTREWMTYU48Q5",
          "device_name": "Solarbank 2 E1600 Pro",
          "device_img": "https://public-aiot-fra-prod.s3.dualstack.eu-central-1.amazonaws.com/anker-power/public/product/2024/05/24/iot-admin/5iJoq1dk63i47HuR/picl_A17C1_normal%281%29.png",
          "battery_power": "10",
          "bind_site_status": "",
          "charging_power": "0",
          "power_unit": "W",
          "charging_status": "6",
          "status": "1",
          "wireless_type": "1",
          "main_version": "",
          "photovoltaic_power": "0",
          "output_power": "0",
          "create_time": 1718909497,
          "set_load_power": "",
          "sub_package_num": 0,
          "output_cutoff_data": 10,
          "is_display": true
        }
      ],
      "total_charging_power": "0",
      "power_unit": "W",
      "charging_status": "0",
      "total_battery_power": "0.10",
      "updated_time": "2024-07-02 21:14:53",
      "total_photovoltaic_power": "0",
      "total_output_power": "0.00",
      "display_set_power": false,
      "battery_discharge_power": "0",
      "ac_power": "0",
      "to_home_load": "0",
      "is_display_data": true,
      "solar_power_1": "0",
      "solar_power_2": "1",
      "solar_power_3": "1",
      "solar_power_4": "1"
    },
    "retain_load": "200W",
    "scene_mode": 1,
    "home_load_power": "0",
    "updated_time": "01-01-0001 00:00:00",
    "power_site_type": 5,
    "site_id": "5e6f13ae-93f7-83bf-d119-b41c4bdc41ba",
    "powerpanel_list": [],
    "grid_info": {
      "grid_list": [
        {
          "device_pn": "A17X7",
          "device_sn": "HVCNROR98JH6W3SG",
          "device_name": "Smart Meter",
          "device_img": "",
          "create_time": 1719137035,
          "status": "1",
          "bind_site_status": "",
          "wireless_type": ""
        }
      ],
      "photovoltaic_to_grid_power": "0",
      "grid_to_home_power": "423",
      "grid_status": 0,
      "has_history_data": true
    },

Generated Solar power is 3 W from all, but this is not reflected somehow in any of the other fields.
grid_to_home_power is 423 W (ok that is the grid import)
The solarbank charging_status = 6 which probably means full_bypass (as for Solarbank 1)
Soc is 10% in the evening at 21:00. Seems weird, but explains the full bypass with 3 W remaining Solar power.
"charging_power": "0", => Nothing is loaded to empty battery, another indication that it is doing full bypass and BMS is not actively used.
"output_power": "0", => Weird, where are the 3W Solar power gone? Maybe output_power not provided when doing full bypass without active BMS?

How is the display in the App in the morning with little solar power and empty battery when this full bypass mode is used without charge and discharge? Is the solar power reflected somewhere else in the figures going to home?

@thomluther
Copy link
Owner Author

thomluther commented Jul 3, 2024

@stephan-l Following is another weird situation making it difficult to correlate the values accurately. It appears the individual fields are not used consistently (same as with Solarbank 1), which makes it pretty difficult to extract them properly for correct monitoring. I built some work arounds for such fields, where e.g. the SB totals do not match the usage of individual solarbank device fields, or the wrong device charging power field. But I'm reluctant to break anything with those workarounds for anything that does not match with Solarbank 2 reporting.

    "solarbank_info": {
      "solarbank_list": [
        {
          "device_pn": "A17C1",
          "device_sn": "YL5C48EDP7UZ108S",
          "device_name": "Solarbank 2 E1600 Pro",
          "device_img": "https://public-aiot-fra-prod.s3.dualstack.eu-central-1.amazonaws.com/anker-power/public/product/2024/05/24/iot-admin/5iJoq1dk63i47HuR/picl_A17C1_normal%281%29.png",
          "battery_power": "15",
          "bind_site_status": "",
          "charging_power": "800",
          "power_unit": "W",
          "charging_status": "1",
          "status": "1",
          "wireless_type": "1",
          "main_version": "",
          "photovoltaic_power": "597",
          "output_power": "800",
          "create_time": 1718909497,
          "set_load_power": "",
          "sub_package_num": 0,
          "output_cutoff_data": 10,
          "is_display": true
        }
      ],
      "total_charging_power": "0",
      "power_unit": "W",
      "charging_status": "0",
      "total_battery_power": "0.15",
      "updated_time": "2024-07-02 08:30:13",
      "total_photovoltaic_power": "597",
      "total_output_power": "800.00",
      "display_set_power": false,
      "battery_discharge_power": "203",
      "ac_power": "20",
      "to_home_load": "780",
      "is_display_data": true,
      "solar_power_1": "210",
      "solar_power_2": "206",
      "solar_power_3": "87",
      "solar_power_4": "94"
    },
    "retain_load": "200W",
    "scene_mode": 1,
    "home_load_power": "2419",
    "updated_time": "01-01-0001 00:00:00",
    "power_site_type": 5,
    "site_id": "9a7e3ee0-c6d7-67c0-d1bf-3ea08747bcea",
    "powerpanel_list": [],
    "grid_info": {
      "grid_list": [
        {
          "device_pn": "A17X7",
          "device_sn": "PQP04MMR9VCGO3DG",
          "device_name": "Smart Meter",
          "device_img": "",
          "create_time": 1719137035,
          "status": "1",
          "bind_site_status": "",
          "wireless_type": ""
        }
      ],
      "photovoltaic_to_grid_power": "0",
      "grid_to_home_power": "1619",
      "grid_status": 0,
      "has_history_data": true
    },

For example the Api reports for devices in scene_info response:
"battery_power": "15", => SOC
"charging_power": "800", => Api does not provide correct value here, this is typically 0 or output power, therefore I built in a work around for the Api site cache structure. This work around also uses negative values for discharge power, which is taken from the SB total_discharge_power (seems to be the only trustable field, but shows discharge of all solarbanks only). Therefore this vlue must also be adjusted to multiple solarbank setups based on their output_power percentage of the reported total_output_power. Its complicated, but the only way to get reliable charge and discharge values per Solarbank 1 device.
"charging_status": "1", => This is Bypass for Solarbank 1 (neither charge nor discharge), looks to be the similar for SB2, but here bypass can mean also adding discharge power, a mode that is not supported by Solarbank 1. I think that can be distinguished with a pseudo code and dedicated description for bypass_discharge
"output_power": "800", => Valid Max demand as requested from smartmeter upon high house consumption of 2419 W
SB totals:
"total_photovoltaic_power": "597", => OK, sum of all solar channels
"total_output_power": "800.00", => OK, same as device output power
"battery_discharge_power": "203", => Only valid discharge value provided. This will be taken by the library to put -203 W into the invalid 'charging_power' field of a solarbank device.
"ac_power": "20", => Why are there 20 W on the AC socket? Is there anything connected that draws AC socket power?
"to_home_load": "780", => That means from 800 W output, 20 W go to the AC socket (true?) and 780 W into house?
Grid total:
"photovoltaic_to_grid_power": "0", => OK, no grid export at this time
"grid_to_home_power": "1619", => OK, required import for high house consumption. Assuming this is valid as reported from smartmeter, then we have 2419 -1619 = 800 W. And here is the big questionmark: Since we have only 780 W to the house, where are the 20 W? Reported incorrectly to the AC power, which is not used (to be confirmed)? Or if the 20 W AC power correct, then the house consumption value is calculated incorrectly by the appliance and 20 W too high (since it does not consider the AC output in the calculation and using total_output_power instead of to_home_load)?
"grid_status": 0,
Site total:
"home_load_power": "2419", => Questionable value as per previous comments...

@thomluther
Copy link
Owner Author

After another try I got the correct capacity again. Kind of confusing.

Wifi state     : Online                  Signal        :   88 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 2024-07-02 23:04:22     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   64 %                  Min SOC       :   10 %
Battery Energy : 2048 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W

This might be related to the capacity and energy calculation. If the initial response is invalid, the battery packs are 0 too, Maybe the calculations are not refreshed properly afterwards. The code also needs to make sure, that re-calculation is not done when the response contains invalid data, so it must cover both special cases:

  • initially invalid but calculated fields must be generated (potentially with a value), otherwise HA integration would not generate entities.
  • updates must ignore re-calculation with invalid data

@stephan-l
Copy link

I think I will do some measurements onsite next week to verify the theses. I can monitore questionable values and test different scenarios then.

@thomluther
Copy link
Owner Author

Can someone explain this situation?
I don't remember who provided the T2 system export... There is home demand and import from grid, but SB2 is not delivering in the evening even if SOC is 64%
Can home delivery be disabled somehow or why is there no discharge?

--------------------------------------------------------------------------------
Device         : Solarbank 2 E1600 Pro   Alias         : Solarbank 2 E1600 Pro
Serialnumber   : IDT679D215D635EA        Admin         : YES
System         : T2  (Site ID: c316e3a9-befc-47c9-a8bf-c211dd37d31b)
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   90 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 2024-07-02 22:23:03     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   64 %                  Min SOC       :   10 %
Battery Energy : 2048 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W
Solar Power    :    0 W                  Output Power  :    0 W
Solar Ch_1     :    0 W                  Solar Ch_2    :    0 W
Solar Ch_3     :    0 W                  Solar Ch_4    :    0 W
Charge Power   :    0 W                  Device Preset :  200 W
Home Demand    :  132 W                  SB Home Load  :    0 W  (-)
Schedule  (Now): 07:19:51 UTC +0200      System Preset :  200 W
ID Start End   Export Output ChargePrio    SB1    SB2  Mode Name
--------------------------------------------------------------------------------
Device         : Smart Meter             Alias         : Smart Meter
Serialnumber   : 9Q4CSMNJLAPJORP7        Admin         : YES
System         : T2  (Site ID: c316e3a9-befc-47c9-a8bf-c211dd37d31b)
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   90 %
SW Version     : v0.0.0.27               Auto-Upgrade  : Unknown
Cloud Status   : online                  Status code   : 1
Grid Status    : ok                      Status code   : 0
Grid Import    :  132 W                  Grid Export   :    0 W
--------------------------------------------------------------------------------

@thomluther
Copy link
Owner Author

thomluther commented Jul 4, 2024

Here is another interesting example, showing kind of charge_priority in the morning even if in detection mode, since SOC is just at 7%. I don't think this should get a different pseudo state since it is charging code 0, and all kind of charging states typically have 3.
But clearly it shows that demand is higher than solar and even then not all is bypassed to home to 'enforce' charging of low battery.

--------------------------------------------------------------------------------
Device         : NoName                  Alias         : Solarbank 2 E1600 Pro
Serialnumber   : AXKI2U6VS8IQ7NZS        Admin         : NO
System         : Maison  (Site ID: adb7f7c0-c8c0-dcdc-ebc6-6e0a7a7b3ec1)
Wifi SSID      :                        
Wifi state     : Unknown                 Signal        :  --- %
SW Version     : Unknown                 Auto-Upgrade  : Unknown
Cloud-Updated  : 1970-01-01 00:00:00     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:    7 %                  Min SOC       :    5 %
Battery Energy :  224 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W
Solar Power    :  573 W                  Output Power  :  467 W
Solar Ch_1     :  144 W                  Solar Ch_2    :  141 W
Solar Ch_3     :  147 W                  Solar Ch_4    :  141 W
Charge Power   :  106 W                  Device Preset :    0 W
Home Demand    :  624 W                  SB Home Load  :  467 W  (-)
--------------------------------------------------------------------------------
Device         : NoName                  Alias         : Smart Meter
Serialnumber   : 3SJSUU0Z3W0VXQKZ        Admin         : NO
System         : Maison  (Site ID: adb7f7c0-c8c0-dcdc-ebc6-6e0a7a7b3ec1)
Wifi SSID      :                        
Wifi state     : Unknown                 Signal        :  --- %
SW Version     : Unknown                 Auto-Upgrade  : Unknown
Cloud Status   : online                  Status code   : 1
Grid Status    : ok                      Status code   : 0
Grid Import    :  157 W                  Grid Export   :    0 W
--------------------------------------------------------------------------------

Still thinking about it. Maybe it might be useful to have historical visibility when and how long home demand was partially ignored due to enforced charging. But this pseudo state for code 0 (detection_charge ? or enforced_charge ?) will be used only for code 0 under specific conditions: Charge > 0 and output < demand, because typically when output < demand, there should never be charge unless enforced by BMS

@stephan-l
Copy link

Can someone explain this situation? I don't remember who provided the T2 system export... There is home demand and import from grid, but SB2 is not delivering in the evening even if SOC is 64% Can home delivery be disabled somehow or why is there no discharge?

--------------------------------------------------------------------------------
Device         : Solarbank 2 E1600 Pro   Alias         : Solarbank 2 E1600 Pro
Serialnumber   : IDT679D215D635EA        Admin         : YES
System         : T2  (Site ID: c316e3a9-befc-47c9-a8bf-c211dd37d31b)
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   90 %
SW Version     : v1.0.4.4                Auto-Upgrade  : Disabled
Cloud-Updated  : 2024-07-02 22:23:03     Valid Data    : YES (Requeries: 0)
Cloud Status   : online                  Status code   : 1
Charge Status  : detection               Status code   : 0
State Of Charge:   64 %                  Min SOC       :   10 %
Battery Energy : 2048 Wh                 Capacity      : 3200 Wh
Exp. Batteries :    1 Pcs                AC socket     :    0 W
Solar Power    :    0 W                  Output Power  :    0 W
Solar Ch_1     :    0 W                  Solar Ch_2    :    0 W
Solar Ch_3     :    0 W                  Solar Ch_4    :    0 W
Charge Power   :    0 W                  Device Preset :  200 W
Home Demand    :  132 W                  SB Home Load  :    0 W  (-)
Schedule  (Now): 07:19:51 UTC +0200      System Preset :  200 W
ID Start End   Export Output ChargePrio    SB1    SB2  Mode Name
--------------------------------------------------------------------------------
Device         : Smart Meter             Alias         : Smart Meter
Serialnumber   : 9Q4CSMNJLAPJORP7        Admin         : YES
System         : T2  (Site ID: c316e3a9-befc-47c9-a8bf-c211dd37d31b)
Wifi SSID      : wifi-network-1         
Wifi state     : Online                  Signal        :   90 %
SW Version     : v0.0.0.27               Auto-Upgrade  : Unknown
Cloud Status   : online                  Status code   : 1
Grid Status    : ok                      Status code   : 0
Grid Import    :  132 W                  Grid Export   :    0 W
--------------------------------------------------------------------------------

T2 is my system. That was a situation I couldn’t explain either. It got deflated to 10% the night before and there was low solar power during day. So it charged until next day when solar power was bigger than house demand.

@thomluther
Copy link
Owner Author

OK, so just a firmware flaw, nothing to be considered for the field interpretation.

@thomluther
Copy link
Owner Author

thomluther commented Jul 4, 2024

I updated the api with new charging states and the monitor accordingly. #104
I also added the new house demand and SB_home_load fields to the monitor. This is what is new on the SB2 systems in the home screen of the app.
The house demand ("Zuhause") is a new system field (home_load_power) and the SB home load is a solarbank devices total field (to_home_load). The house demand does not reflect the house consumption all the time. When the solarbank is on standby, it is 0. So it must not be confused with a value that can be used for permanent house consumption.
The former SB output total refers to all power that is going out from the solarbanks. The new SB to home load is the same, but subtracted by the AC socket power. So for SB2, only the new field is reflecting what is going into the house.
The smartmeter values seem to provide also data when SB2 is in standby.

However, someone needs to confirm with the monitor whether the smartmeter values are valid when the SB data is invalid. Right now I consider them invalid too, but they are 0W most of the time also with valid SB data, so it is difficult to recognise that in a snapshot.
It must be monitored when the solarbank is empty to ensure the grid should show values. When it does while SB data is flagged invalid, then the invalid data refer only to the Solarbank section in the scene info.

@thomluther
Copy link
Owner Author

thomluther commented Jul 5, 2024

Some notes to make here to the new SB2 related power fields:

  • The new SB to_home_load field is not used by Solarbank 1 (always 0). In fact I think it reflects the AC power from the inverter that goes into the house, so it is SB output power (used by SB1 and SB2) - AC power field which is likely the AC socket.
  • That means without Socket (SB2 Plus and later SB2) should always reflect same values for old SB output power and new to_home_load fields.
  • The system power field home_load_power is the AC power house demand for the solarbank. This is the consumption of the house, while the Solarbank is ON. When OFF the demand seems to reflect 0 W. I assume that is the value used as target for the Solarbank regulation
  • All power values sum up to same totals typically including the solar power channels. That means they cannot be real, since AC and DC power is mixed an no inverter efficiency loss is factored into the values. I assume the DC power values which cannot be really proven (solar, Battery etc) are adoped / decreased? to match the AC power values used for smartmeter/grid and house.
  • The AC power values could be easily compared with other metering tools, but I understood they seem to be pretty accurate. Therefore I believe all DC power values would need to be 5-10% higher in reality to consider inverter loss etc. So tracking the DC values for energy measurements might me too conservative, but therefore providing optimized calculations in terms of efficiency for the solarbank 2 when comparing them with the AC energy output to the house...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
config_example JSON output files for a configuration help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants