-
Notifications
You must be signed in to change notification settings - Fork 23
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 interaction #116
Wallbox interaction #116
Conversation
@mstv I think I need a bit help here to do some testing. As I'm not a developer it's quite complicated to start here. Could you provide an example script to test all (?) the new implemented functions? BTW: I also have a S10E with an Easy Connect Wallbox installed in 2021, so my setup is quite the same. |
Thank you for your new attempt to get Wallbox Support integrated! I tested your PR 116 with by changing the values of these methods below, checking the WB behaviour and reading back the data. I think everything works as intended. Is there anything particular you would like me to check? e3dc.set_wallbox_sunmode() |
Thank you! I think this will suffice, @bullitt186.
Yes, that's how it works for me, too.
Like described in https://github.com/fsantini/python-e3dc/blob/master/README.md, I have created a
|
Hi @mstv , until now I could only verify your little test.py, this works with my E3DC setup. In the next days I will try to verify this with the other getters and setters, but I will need to get more familiar with Python before. Great work so far!! |
You could replace
|
@vchrisb, do I need to do anything about the validation scripts? |
yes you need to adhere to the code styling: https://github.com/fsantini/python-e3dc?tab=readme-ov-file#contribution |
Hi @mstv I just tested all methods mentioned by you above and they work like a charme! Great work! |
I had already run it. flake8 complains about line lengths in the entire file. 🤔 This PR just adds lines 985-1185.
.\e3dc\_e3dc.py:75:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:76:80: E501 line too long (94 > 79 characters)
.\e3dc\_e3dc.py:77:80: E501 line too long (101 > 79 characters)
.\e3dc\_e3dc.py:78:80: E501 line too long (143 > 79 characters)
.\e3dc\_e3dc.py:79:80: E501 line too long (217 > 79 characters)
.\e3dc\_e3dc.py:111:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:126:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:153:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:246:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:248:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:265:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:279:80: E501 line too long (96 > 79 characters)
.\e3dc\_e3dc.py:284:80: E501 line too long (104 > 79 characters)
.\e3dc\_e3dc.py:300:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:312:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:314:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:322:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:351:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:364:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:365:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:366:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:382:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:419:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:472:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:476:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:477:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:496:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:501:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:547:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:548:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:554:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:558:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:582:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:583:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:585:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:593:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:595:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:623:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:628:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:639:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:644:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:655:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:663:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:678:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:680:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:683:80: E501 line too long (92 > 79 characters)
.\e3dc\_e3dc.py:684:80: E501 line too long (91 > 79 characters)
.\e3dc\_e3dc.py:688:80: E501 line too long (89 > 79 characters)
.\e3dc\_e3dc.py:697:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:698:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:701:80: E501 line too long (90 > 79 characters)
.\e3dc\_e3dc.py:734:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:735:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:739:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:740:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:748:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:760:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:763:80: E501 line too long (107 > 79 characters)
.\e3dc\_e3dc.py:764:80: E501 line too long (93 > 79 characters)
.\e3dc\_e3dc.py:765:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:769:80: E501 line too long (89 > 79 characters)
.\e3dc\_e3dc.py:778:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:783:80: E501 line too long (90 > 79 characters)
.\e3dc\_e3dc.py:800:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:817:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:835:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:837:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:851:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:852:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:854:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:888:80: E501 line too long (93 > 79 characters)
.\e3dc\_e3dc.py:890:80: E501 line too long (95 > 79 characters)
.\e3dc\_e3dc.py:891:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:903:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:930:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:948:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:949:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:956:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:957:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:977:80: E501 line too long (194 > 79 characters)
.\e3dc\_e3dc.py:993:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:997:80: E501 line too long (95 > 79 characters)
.\e3dc\_e3dc.py:998:80: E501 line too long (94 > 79 characters)
.\e3dc\_e3dc.py:999:80: E501 line too long (98 > 79 characters)
.\e3dc\_e3dc.py:1000:80: E501 line too long (111 > 79 characters)
.\e3dc\_e3dc.py:1001:80: E501 line too long (119 > 79 characters)
.\e3dc\_e3dc.py:1002:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1004:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1007:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1009:80: E501 line too long (101 > 79 characters)
.\e3dc\_e3dc.py:1011:80: E501 line too long (97 > 79 characters)
.\e3dc\_e3dc.py:1074:80: E501 line too long (96 > 79 characters)
.\e3dc\_e3dc.py:1087:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1102:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1130:80: E501 line too long (96 > 79 characters)
.\e3dc\_e3dc.py:1150:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:1208:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1211:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1242:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1334:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1353:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1357:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1359:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1381:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1396:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1397:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:1409:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:1413:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1419:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1465:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:1471:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:1483:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1484:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:1493:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1497:80: E501 line too long (88 > 79 characters)
.\e3dc\_e3dc.py:1498:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1506:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1533:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1540:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1557:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1601:80: E501 line too long (101 > 79 characters)
.\e3dc\_e3dc.py:1614:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:1615:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:1730:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1731:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1732:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1733:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1741:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1744:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1747:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1754:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1755:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1756:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1765:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:1768:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1770:80: E501 line too long (81 > 79 characters)
.\e3dc\_e3dc.py:1776:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:1782:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1783:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1798:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1801:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1811:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1814:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:1820:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1835:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:1842:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1859:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1860:80: E501 line too long (83 > 79 characters)
.\e3dc\_e3dc.py:1861:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1890:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:1975:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:1993:80: E501 line too long (89 > 79 characters)
.\e3dc\_e3dc.py:2010:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:2026:80: E501 line too long (87 > 79 characters)
.\e3dc\_e3dc.py:2114:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:2151:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:2154:80: E501 line too long (91 > 79 characters)
.\e3dc\_e3dc.py:2155:80: E501 line too long (85 > 79 characters)
.\e3dc\_e3dc.py:2156:80: E501 line too long (91 > 79 characters)
.\e3dc\_e3dc.py:2160:80: E501 line too long (100 > 79 characters)
.\e3dc\_e3dc.py:2168:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:2170:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:2173:80: E501 line too long (86 > 79 characters)
.\e3dc\_e3dc.py:2232:80: E501 line too long (84 > 79 characters)
.\e3dc\_e3dc.py:2252:80: E501 line too long (113 > 79 characters)
.\e3dc\_e3dc.py:2277:80: E501 line too long (80 > 79 characters)
.\e3dc\_e3dc.py:2282:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:2296:80: E501 line too long (82 > 79 characters)
.\e3dc\_e3dc.py:2338:80: E501 line too long (80 > 79 characters)
|
@mstv I don't know why it is reporting this to you. Please make sure that flake8 is picking up the |
Thank you for the hints, @vchrisb. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please see my comments
- Make sendWallboxRequest public - Add sendWallboxSetRequest - Turn set_wallbox_phases into toggle_wallbox_phases - Specify return values - Use RscpTag & RscpType
updated test calls:
|
I would love to give additional feedback, but I can't get the package to install/run.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.` It did also not work with Update: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once one or two could verify the latest changes, we should be good to go.
@T1ppes, I took a look into the
|
I tested the PR again with the most recent changes on my S10X Compact with a MultiConnect II (the one without a Schuko but with an RFID reader). For completeness, find below the full output of the test cases posted by @mstv.
|
I just also tested again with my S10E and Easy Connect, works liked expected. 👍 Test output:
|
Based on this functionality, i opened a PR for the Home Assistant integration hacs-e3dc here: torbennehmer/hacs-e3dc#153 |
Hint: Most likely since the E3DC update to S10_2024_024, |
Continue the abandoned #59
Kudos to @mdhom for the initial PR!
Tested with my E3DC S10 and E3DC Wallbox Easy Connect (installed in 2021)
All added functions work except
set_wallbox_schuko()
, which does not apply to this wallbox.