-
-
Notifications
You must be signed in to change notification settings - Fork 99
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
[FR]: Add support for X3 MEGA Inverters #944
Comments
I have added in initial support in 2024.07.0b1 but is your Mega a newer G2 version? As it might use different registers compared to that doc. That doc is quite old. |
You're right, G2 version use different registers. I'm sending new document for Mega and Forth inverters. Please could you add these registers support? Solax Power X3-MEGA G2_FORTH Modbus-RTU comms protocol (2023.5.16)-1.pdf |
Just released 2024.07.0b5 does it return a serial number? If it does then replace homeassistant-solax-modbus/custom_components/solax_modbus/plugin_solax.py Lines 7884 to 7886 in 2666d63
|
No, it doesn't read SN. custom_components/solax_modbus/plugin_solax.py:81 |
It seems that reading stops on address 0x1a10 and return blank value: If I comment the reading from address 0x1a10, then it works and SN was read correctly (X3G040J3842027). But all sensors are shown as unknown. 2024-08-02 17:43:54.099 ERROR (MainThread) [homeassistant.components.sensor] Platform solax_modbus does not generate unique IDs. ID SolaXMax_inverter_voltage_l1 is already used by sensor.solaxmax_inverter_voltage_l1 - ignoring sensor.SolaXMax_inverter_voltage_l1 and so on ... |
I have released 2024.08.1 where the Mega / Forth has it's own plugin. Can you try that and select solx_mega_forth from the dropdown. |
Now it works, but I have problem with register with data type uint32 and int32. The values are too big. I also made same modifications in the plugin. Do you have idea why are values from 2bytes regiters read wrong? |
Looks like I forgot to delete "Measure Power L1" I copied it for the unit_of_measurement and class
If it's a register showing as int16 use REGISTER_S16 Edit: Is it the PV Voltage and Current that's wrong? The docs said to use int16 but I used uint16 as I thought the docs could be wrong. |
I meant the PV ones that are showing as int16 in the docs, but are uint16 in the Integration. I have just pushed out 2024.08.3 with corrections to match the docs. Just so you know I have renamed "Today Energy" to "Today's Energy" to match the other Inverters. |
I don't know what's wrong now, because i see every sencor as Unknown, but it doesn't report any error. Everything seems to be ok in log, values are read. Please correct: |
I take it you meant 0x28F? Just released 2024.08.4 Had to change names on the active / reactive control. |
Yes, thanks. The problem with showing Unknown sencors persists. I see "no local data file found after 5 tries - is this a first time run? or didnt you modify any DATA_LOCAL entity?" in log. And pls add "register_type = REG_INPUT" to Model Type and Software Version. |
That can be ignored. It's only used on the Gen4 & 5 SolaX Hybrids.
Have you corrected that locally? If so what do they return? |
If you go to the detailed error log does it say it's failing on one of the registers? If it doesn't try deleting the whole block for "Model Type", if it still doesn't work try deleting the "Software Version" as well. "Model Type" is Red in the Modbus docs, so might not be there on all versions? |
I found it. Register 0x18F was set as holding. I'm sending corrected plugin. But, back to the start. Values from 2bytes registers are still wrong. Do you have any idea what to do with it. |
Try changing homeassistant-solax-modbus/custom_components/solax_modbus/plugin_solax_mega_forth.py Line 674 in 2389c7c
|
Yes, that's it. Thanks a lot. Now is everything works perfectly. |
Does "Model Type" & "Software Version" return anything useful? If they do then I can add them to the Device Info panel. Is your Inverter a 40kW version with 4 MPPT's or a larger Inverter? |
I'm in the progress of adding in the other MPPT's Just need to find the first 6 or so digits of each power type. So I can show the extra MPPT's only on the larger systems. |
X3G060 - X3-60 - 6 MPPT X3-FORTH-80-110K - 9 MPPT, but now I don't know what SN starts with. |
I thought the 50 & 60 would be like that. 75 onwards could start using X3G075 or X3G75 hard to tell till we get reports of others. Edit: I might disable the MPPT Temps or remove them, if they don't return anything. I'll wait for reports on other Inverters |
I think that Solax have only X3-MGA-(40-60) and X3-FTH-(80-125), none 75kW. |
It's mentioned in the Datasheet. But maybe no one sells them as so close to the 80kw? |
Don't suppose you have access to the Modbus docs for the new X1-SMART-G2? |
I can ask for it, it's not problem. I can send it to you in two days. |
2024.08.5 contains the extra MPPT's. I don't know if input register 0x280 returns a dynamic count, or if that's always fixed as well. |
Just realised there is an error in the setup. On a 60kW it will only display MPPT 1-4 & 6. Same on a 150kW. Will display MPPT 1-4 & 10-12 |
Corrected in 2024.08.6 |
I don't know either. After I will connect next inverters, I'll let you know. After update, it works good. |
How complete do you think the support is for X3 Mega Inverters? Can this be closed down now? |
Yes, it can be closed. |
Description
Max&Mega K-TL Modbus Protocol V4.16.pdf
Suggested Solution
Add new set of modbus register for X3 MEGA inverters.
Alternatives
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered: