-
Notifications
You must be signed in to change notification settings - Fork 10
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
Wallbox support (configuration, switches and sensors) #47
Comments
I´m also interested |
@torbennehmer : I just updated to v3.3.3 and I can now download the diagnostic dump. So @bug#46 is now confirmed closed. Are you still interested in the diagnostic dump in order to work on the enhancement feature? |
Please wait for the moment. I'd like to scan the API listing of E3DC, I would suspect that we need some more data provided by the system, that's currently not logged for me to make an implementation plan. |
If you give me some direction on how to do it: Would be more than happy to do that. Do you mean this script: In the meanwhile I installed pip via HomeBrew and the python-e3dc library. I could run the following sample script and get an output:
*** stop *** So please let me know what commands I should run in order to help you with the implementation. |
That is actually not trivial to answer, the E3DC API is not really easy to read, and putting request objects together is possibly non-trivial. Let me ponder this for a week or two. |
If it helps, we can also execute some of the commands in an interactive session. Sometimes trial and error is quickest way to progress. Waiting for your input. |
There is an open but apparently abandoned PR in 'python_e3dc' which implements basic wallbox features. I guess without this PR we won't see WB support in 'hacs-e3dc'. |
@bullitt186 : Any success re. the abandoned PR for the wallbox features? |
Not really; I tested the PR with the most recent version of python_e3dc and it works fine. mstv suggested some improvements but these shouldn't be blocking. I don't find much time these days to include his suggestions as work and private life is busy, but adding these suggestions in a new PR together with the work of mdhom would probably be the way to go in order to move forward. |
@bullitt186 : Thanks for your response. Would love to help, but I am not a SW coder myself. Otherwise, I would gladly contribute. Just let me know if I can support any other way. IT skills are just sufficient to google my way through home assistant configuration issues and yaml configuration ;-). |
Do you see any hope that this might be tackled by you in the coming months? If not I would need to look for alternative solutions. Thanks for letting me know. |
I am also very interested in support for the wallboxes. I have an "E3DC S10 E Pro" with storage and 2 "E3DC Wallboxes Easy Connect". Is there any progress on this? I am also happy to help with development and have sufficient experience in software development. Please let me know if there is anything I can do. |
I got stuck last year, since the underlying python-e3dc hadn't wallbox integration supported yet. The corresponding PR 59 seems to be abandoned. So maybe we will have WB functionality in python-e3dc... |
It has been merged today |
I am happy to contribute to the implementation of the wallbox-features in hacs-e3dc but frankly speaking, i am not a professional programmer, so it would take me a while and probably some re-work by @torbennehmer or other experts. Before digging in, here are my thoughts how the implementation should be handeled.
While for the What are your thoughts: Would you also go that route as I am suggesting? |
Hi bullitt186, I am not able to comment on the programming approach as I lack the experience to do so. So I can only comment on useability - see below.
Your proposal seems logical for me. One additional feature I would add is the "Bis SOC" value that is shown in the screenshots above (dont know the variables for that). I often have my wallbox in the following configuration:
What this configuration does is to use any incoming PV energy and directly put it into my car. It also discharges my battery to help charging the car, until the SOC is emptied until 50%. At that point it only continues using incoming PV energy. If that is not sufficient anymore, the charging will stop. I rarely change the charging phases in the meanwhile, as doing so also necessitates physically changing the charging cable at my car. By simply changing the 4 variables mentioned above I manage to remotely start / stop the loading of my car and manage the content of my battery at home. E.g. I will empty the battery before I leave the house in the morning by lowering the SOC value to 3% so that my battery at home can recharge during the day while I am away. In the evening I will empty some of my battery again into my car. Happy to help with the testing and trouble shooting if needed. |
I implemented WB integration in #153. |
With the wallbox features implemented in the PR, it should be easy to implement this as an automation in home assistant (trigger = SoC; action = turn sun mode on) what i have in mind doing is that per default it only charges in sun mode but when i trigger an automation by "Alexa: Auto jetzt laden an", it charges fully once (or until disconnected) and then falls back to sun charging. |
As discussed in #47, i implemented the Wallbox features of python-e3dc 0.9.2. I could test the features on my S10X compact with a MultiConnect II: - Sensor readings work and are plausible - Sun Charging can be set - Phases can be toggled - Max charging current can be set via service I wasn't able to validate - Schuko (as the Multiconnect II does not have one) - Toggle Charging (as my car was fully charged today) As of now, only 1 Wallbox is supported. As more than one Wallbox requires some entity name juggeling, i skipped this for now. I had to add the button entity to this integration for the toggles. I am happy for testers, suggestions and improvements.
@bullitt186 I've merged the PR so that we can test this. Could you please update the README.md (in another PR), I totally forgot this on the existing one, go over it and update it at your discretion, the minimum would be describing the new service at the bottom of the file. It'd be great if we had this for the stable release. |
For sure! |
Nice :-) |
@bullitt186 What's your impression on the discussion between @Wolfgang-03 and @neuromancer3142 ? |
I am exploring in a local branch two things right now:
While the first one is more straight forward introducing a new class for Numbers and figuring out how to register an input_number which trigger the rscp call "on change" with parameter, As work, family and finally some summer days in germany distract me right now, progress may be slow. I am very curious on feedback regarding the updated beta. So if there are no bugs reported, i'd suggest to aim for a release with the current feature set and safe any additions for future releases. |
Fully agreed. |
@Thomansky As I only have one Wallbox at home, I'd be curious to get your feedback if both wallboxes work as intended with Beta3. |
Since beta3, the “Set Power Limits” and “Clear Power Limits” services complain that the Device is no E3DC. |
Thank you for your feedback. I have a slight idea what may be the cause this but have to investigate. |
I have just completely deleted the indication and then reinstalled it - nothing has worked |
Thank you for the feedback - i will investigate! |
Hi @bullitt186
The service problems are probably related to the mutliple device change. The code verifies, that we're talking to the E3DC, that's coded in _resolve_device_id in services.py. @Thomansky I think this is the reason for #164, which thus is a duplicate of this (my assumption at least) |
19.07.2024: One additional observation - when triggering the charging with the sun mode off, it can happen that additional power is drawn from the grid. And enabling the charging using battery and PV only, while sun mode is on (normal E3DC setting I use) will not do this. I will play around with the next beta once the charge until PV SoC reaches option is implemented. |
@Thomansky @sjongele @torbennehmer I assume you have also the Fritz!Box Integration installed, so your E3DC looks something like this: If this is the case, I am positive that i have solved the issue. |
@bullitt186 That does make sense. I actually had this before, but thought that was fixed originally. Also funny is, that apparently my own installation does not hit this issue. Maybe it depends on the actual IDs HA assigns. |
Based on the discussion in issue #47 and requested by @Wolfgang-03, This PR implements the functionality to set the maximum charging current for a wallbox via a number Entity (Which allows sliders without helpers). Under the hood, this PR brings the following features: - Introduces E3DCNumber which allows to call methods on-change. (Will be handy for setting other E3DC values in the future) - Reads & respects the hard upper and lower current limits as stored in the wallbox. These limits can only be set by the E3DC electrician during installation, so this is now more fail-safe compared to the previously hardcoded limits. For reference, see the two videos: First one shows how by changing the number, the sensor which reads back from the E3DC the set current updates. https://github.com/user-attachments/assets/595fbdda-e6d0-4a9e-b422-128d929c4a8b 2nd one shows how Number as well as Sensor update, when changing the max charging current from somewhere else (In this case i had a 2nd HA instance running on another machine and changed from there max charging current. https://github.com/user-attachments/assets/919f8ad6-c7d0-4afc-b6b9-88569befd37b
Just pushed out Beta 4 with the latest changes. @bullitt186 I'd like to call for a feature freeze now. Lets fix bugs of course, but no new features for 3.8. There are many good things in there and we can improve upon then later. It would be my last call on API stability as well, so if you still have reservations about the current API, please let me know. Also: As far as I understand it, right now we did not change the existing API, correct? I'm just updating my own HA setup to validate this as far as I can, but I'd like to have your input. If we break the API, we've to move to 4.0 instead of 3.8 and collect instructions how to migrate. |
Hey Torben, Thanks for updating the Beta. Regarding API changes: From my point of view the now-found setup with wallboxes as devices can be considered "final" and i don't foresee bigger/breaking changes. Throughout my testing on Dev and Prod i have monitored the logs and also found no issues/warnings caused by e3dc_rscp. |
Hello @bullitt186, I have now installed Beta4 and am testing this version with my 2 wallboxes. In my configuration the entities are now all called "wb_rechts_XXXX", for example "binary_sensor.wb_rechts_charging" and "wb_links_XXXX", where the wallbox on the right is wallbox 1 with E3DC-ID[0] and the wallbox on the left is wallbox 2 with E3DC-ID[1]. On "Wallbox Rechts" = Wallbox 1 = E3DC-ID[0], the controls have no function. As far as I can see, the problem is the call of the lambda-function, for example: button.by, line 58:
replaced by
solves the problem. -> Same for line 66 (toggle-wallbox-charging) -> Same must be changed in switch.py, 2 times (sun-mode & wallbox-schuko). Furthermore there are wrong entries in the log: After pressing the button, I get "changed to DateTime" in the log, which (I assume) should be "changed to 3" or "changed to 1". A few seconds later, the information form the sensor is correct. The same applies to the "Charging" button -> I get "Changed to DateTime". |
@Wolfgang-03, Thank you for your in-depth feedback. Lambda: Logbook: I checked with several other buttons from other integrations & helpers: Reporting the timestamp in the log book on-press is the default behaviour, so there is nothing we can do to improve the logging. |
I have been running beta 4 for a few days. With this beta, setting the charging limit works again for me. I can also use the sensors for the power station and wall box also work and I can switch the wall box between sun and mixed charging mode. Great! Being able to set the charging strategie would be a very nice addition (since the car integration tell some how much solar juice the car would like, but that is of course outside the scope of this version. |
I've been using beta 4 since it came out. I have quite a lot of trouble currently, but it seems there was also an update by e3dc which screwed up the wallbox somehow. It seems like I can only start charging using at least 8 amps (afterwards I can dial back to 6 again without issues). |
Sorry my last post was a bit misleading. I think all issues I have are related to the E3DC-bug since it's been working fine before. Your implementation is working as expected |
I have also noticed that my BMW does not start charging when the charging power is set to 6 A. BMW requires at least 7 A charging power so that I can start the charging process via RSCP. However, this is not a specific problem of HA integration, but rather one of E3DC in cooperation with BMW, I suspect. |
3.8.0 has been released! It includes all changes added via this issue, thus, I'll close it now. Please do not use this issue to report Wallbox problems anymore. Check existing other issues for known bugs or - if none found - create new issues. Thanks again @bullitt186 for your contributions! |
Checklist
Is your feature request related to a problem? Please describe.
I would like to be able to configure my S10E Pro / Wallbox in order to be able to change the charging priorities wrt.:
Describe the solution you'd like
When charging an electric vehicle I would like to be able to remotely change via RSCP the charging behaviour of my E3DC S10E Pro system, i.e. to
Screenshot of E3DC UI with those options is included in the screenshots.
The iOS "AutarkieManager" app (see one screenshot below) offers these 3 options in its RSCP extension pack. So I can remotely switch on/off those charging options. This would enable me to remote start/stop charging my car with PV energy and also enable automations to start/stop the charging based on SOC state and weather forecast.
Describe alternatives you've considered
None
Additional context
No response
Diagnostics dump
The text was updated successfully, but these errors were encountered: