jacauc / SunsynkEsphome

Sunsynk Modbus ESPHome code
https://powerforum.co.za/topic/8646-my-sunsynk-8kw-data-collection-setup/
20 stars 2 forks source link

Poor modbus update performance #5

Closed manalishi70 closed 1 year ago

manalishi70 commented 1 year ago

I'm facing a poor performance getting data from the registers. Can you please explain the settings below and how they influence the behavior of the modbus connection? I have continously "CRC Check failed" and "Duplicate modbus command" messages

modbus_update_interval: "5s" settings_skipped_updates: "10" query_throttle: "50ms"

Sc00bs110 commented 1 year ago

Where do you have the ESP32 located? I was having similar issues when I had my ESp32 located in the Inverter housing, when I moved it out of the housing the issues stopped.

jacauc commented 1 year ago

modbus_update_interval: "5s" - run through the entire set of registers every 5 seconds settings_skipped_updates: "10" - some values like inverter settings don't need to be polled this often, so they are only polled once in 50 seconds. anything with "skip_updates: ${settings_skipped_updates}" query_throttle: "50ms" - while running through, wait 50 milliseconds between each register

I have played with much lower settings (more frequent) than this and never had a problem with modbus performance. My ESP32 is sitting outside of my inverter chassis.

manalishi70 commented 1 year ago

it's located in the open housing left from the DC PCB. I will give it a try

manalishi70 commented 1 year ago

It's been a HW issue. I switched RS485 Adapters from https://www.amazon.de/-/en/DollaTek-MAX485-Module-RS-485-Development/dp/B07DK4QG6H/ref=pd_bxgy_img_sccl_2/261-1531827-5478614?pd_rd_w=xM2UP&content-id=amzn1.sym.1fd66f59-86e9-493d-ae93-3b66d16d3ee0&pf_rd_p=1fd66f59-86e9-493d-ae93-3b66d16d3ee0&pf_rd_r=55RE4DJDEPXP1NY7QFVE&pd_rd_wg=kzFXG&pd_rd_r=9dee2802-eb23-416c-a04f-4d146e343b61&pd_rd_i=B07DK4QG6H&psc=1

to (https://www.amazon.de/-/en/dp/B09VGJCJKQ?psc=1&ref=ppx_yo2ov_dt_b_product_details )

I have to use 5V. 3.3V didn't give any sensor results