-
-
Notifications
You must be signed in to change notification settings - Fork 43
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
Voltronic 48/3000 not showing any data #165
Comments
Could you enable the debug output of the |
Hi, I made a log using the protocol sniffer you provided, which I should have done before posting this issue. It seems like my inverter is not supported, is it?
If it isn't supported, I'll close this issue. However, I still want to control my inverter. Do you have a suggestion to make this possible? Is it doable to inplement it myself? |
This looks like a valid response:
The protocol is called https://github.com/syssi/esphome-pipsolar/tree/pi18 |
Hi, thanks for the quick reply! I indeed found the branch and already tested it, but got some errors. It seems like the protocol is slightly different:
|
Well it seems like there is sometimes a correct message. Most sensors have been updating overnight at random points in time. |
If a sensor is mentioned at the YAML configuration the dedicated request command gets added to the queue. If you remove all Please provide another log as soon as you have cleaned up your YAML configuration. Are there any "timeout command to poll: ...." lines left? |
I tried to remove message by message, but even if I have only a single sensor assigned which did show up overnight, nothing happens. Still all messages are coming through on the debugging logs. They are messy now because I just added the ANT_BMS. For me it seems like the problem is on my side with too much interference, which is kind of unlikely because logs show normal messages, or a problem on your side with CRC. I guess I can make my own branch with CRC disabled just to rule out the possibility? |
Please share your logs another time. :-) |
Is there a way to suppress the ANT logs? It's all over the place so I need like 4 pages of data for all pipsolar stuff to come through. Or lots of labor filtering them out :) |
|
Can't get it to surpress correctly, but I made a mistake and kept one text sensor in place, that's why it was still polling on multiple messages. Right now it's only the message above, which it doesn't want to read at all. It's right the esp does receive a message, but just not what it is expecting? |
Could you provide a complete plaintext log? The screenshot doesn't provide enough details. |
I'll make the logs if I've time today, or Monday. Can't make them using my phone apparently. The single sensor has been updated to the correct value though. I guess we need the logs to see what's going on. Sorry that I keep doing other things than following your suggestions, but a small question: do you know if there's a way I can force the inverter to start charging from the grid and start discharging to the grid? That's the whole goal for me. There is a time slot for charging, but that's including solar. So outside the time slot it'll just inject into grid instead of using solar to charge my battery. |
I cannot help here. |
No problem, just wondering. I'll implement this myself and if you're interested I can keep you updated. |
This is the important part of your log:
The
This is the expected response of a PI18 compatible device:
This is the response of your inverter:
|
Let's focus on a single command/request (
At the moment your inverter returns just A few days ago I didn't realized you was already on the right track. Let's disable or fix the CRC check for your device. The valid response was rejected because of an invalid checksum. |
If I pass the response into my testbench ESP it can be decoded properly without CRC issues:
|
Hi, I did not change anything. It seems like every now and then the CRC does match, and updates the value. My first guess from my experience as embedded hardware and software engineer is that the initial CRC integer is not reset properly so it revolves around and around until it matches by luck. But I'm a C developer, not C++ lol I think I need to sniff using an uart tool, just to make sure I don't have any hardware issues, as I repurposed a TI max232 chip from a converter I had laying around. |
your test seems to indicate a problem with my inverter. I'll try to get contact with voltronic, as I also want to charge and discharge from and to the grid. It seems like you can update these inverters. |
Please make sure you are using a MAX3232. If you use a MAX232 (5V TTL) it's used out of spec. |
This is my guess: If the request cannot be transmitted properly and gets received with errors from the inverter it gets rejected by the This is the part I don't understand: If you try to decode this response it gets rejected with a CRC error:
If I feed the same response into my ESP (pipsolar@pi18) it gets decoded / there is no CRC issue. May be the CRC check of the pi18 branch is buggy too. |
I checked and it is a MAX3232. I still need to log using the uart converter. I think it's a good reason to purchase a handheld oscilloscope though, to truly check the signal integrity. |
Yeah it seems like we have multiple issues. I'll debug the issue where the inverter isn't responding first. |
Can you check this message on CRC? I get lots of responses with CRC NOK. I looked a bit around and maybe I can use the switches 'solar first' and 'utility first' for my cheap charging. Do they actually send a message to the inverter upon changing the switch, or is it only for showing the current state of the inverter? Edit: Yes this is actually working!! I need to switch multiple times before the inverter listens, but then it starts charging or stop charging. The switch state goes back and only updates once very hour or so, just like other sensors. So yeah I still need to debug. |
Hi, I found this awesome integration, and wanted to use it to buy cheap energy and sell expensive. However, I get responses without any data. It seems like only the switch (binary) sensors are working. I really do get a response, but without data?
The text was updated successfully, but these errors were encountered: