Commit graph

67 commits

Author SHA1 Message Date
andig
4f51534bd5 chore: simplify 2024-09-20 18:39:00 +02:00
Andreas Linde
92c1aa36f4
EEBus: fix invalid missing currents errors (#16223)
Fix a scenario were measurements were provided after the last limit change. But if the interval is set >15s and measurements even came in after 15s timeframe, this was considered to be invalid.

To fix this, every time measurements are provided and the limitUpdate timestamp is not zero, meaning a limit was set, consider data to available by setting limitUpdate to zero again.
2024-09-20 03:19:43 +02:00
andig
3fd62b67c8
chore: remove debug logging (#15968) 2024-09-08 17:50:09 +02:00
andig
515d864216 chore: minor
Some checks failed
Release / Hassio Addon (push) Has been cancelled
Release / call-build-workflow (push) Has been cancelled
Release / Publish Docker :release (push) Has been cancelled
Release / Github & APT (push) Has been cancelled
Release / Demo (push) Has been cancelled
2024-09-08 14:42:22 +02:00
Andreas Linde
d3f9ca306a
EEBUS fixes (#15962)
- Update eebus libraries
- Fix measurements reported as not available if the last limitUpdate was >15s ago
2024-09-08 14:35:34 +02:00
Andreas Linde
095fa42be9
EEbus: only disable recommendations if available (#15829)
Some EEBUS wallboxes like the PCMP do report the OSCEV usecase to be available, but it doesn’t provide the necessary recommendation limit data.

This change adds checks for this case.
2024-09-01 20:00:11 +02:00
Andreas Linde
ad0f5477cb
EEbus: Monitor measurements after limit change (#15778)
If a limit has been set, a measurement is expected to provided within 15s. If this is not the case, then show a warning and return an error.

Also add support for the Elli Connect Pro internal meter again.

This should now lead to those EEBUS wallboxes not providing measurements, to fall back to the actual limit being assumed as being the current measurement. And the user is informed about non function metering in the wallbox.
2024-09-01 10:50:41 +02:00
Andreas Linde
2edfb36133
Improve EEBUS support for Elli Gen 1 (part 6) (#15738)
- Update SHIP and EEBUS libraries to latest dev code
- Support IPv6 connections and devices only reporting IPv6 mDNS addresses
- Re-Add support for overwriting the IP address in the charger config, also added to the meter config (just in case)
2024-08-28 08:52:35 +02:00
Andreas Linde
88daef4170
EEbus: improve meter handling (#15624)
- Make sure to use VWVAS feature only if the vehicle reported SoC is 25% or higher, as charging via this feature in a Taycan only works if the vehicle internal MinSoC is reached which can’t be lower than 25%
- For detecting if the EV is charging, use the reported power data first, and only use currents if no power data is available
2024-08-23 14:49:49 +02:00
Andreas Linde
5253d6f9aa
EEbus: fix crash PMCC 1 phase setup charging Taycan (#15603) 2024-08-22 20:20:01 +02:00
andig
de80adbb5b
EEBus: return not available when disconnected (#15580) 2024-08-21 19:21:09 +02:00
andig
aa86f8458e
EEBus: simplify charger logic (#15410) 2024-08-18 12:24:30 +02:00
andig
ee2284a6ae chore: fix race condition 2024-08-09 16:07:00 +02:00
andig
80b2c79e0d chore: fix race condition 2024-08-09 16:04:54 +02:00
andig
d7dec13e07
EEbus: res-set current limit when reconnecting (#15313) 2024-08-08 21:29:13 +02:00
Andreas Linde
4bea3c7fcb
EEBUS: ignore EVSEs not providing current limits (#15299)
Some EVSEs using EEBUS sometimes do not provide any current charging limits and also do not provide valid ranges just ignore these scenarios and hope for the best.
2024-08-08 18:57:55 +02:00
andig
9f0757626c chore: improve logging 2024-08-07 09:58:13 +02:00
andig
9b9d816a85 chore: more logging 2024-08-05 19:56:18 +02:00
andig
919483ce3d
chore: add more EEbus logging (#15260) 2024-08-05 19:44:19 +02:00
andig
3e7c2f47ba
EEBus: simplify charging status detection (#15023) 2024-07-27 10:48:15 +02:00
Andreas Linde
5f61523853
Improve EEBUS support for Elli Gen 1 (part 6) (#15076)
- Check if sending the heartbeat even more often helps
- Use avahi as mDNS provider if available. this might help finding the Elli device after disconnections quicker and maybe even ones own mDNS entry better
- Fix a small bug with resetting recommendation limits to inactive when using VAS EVs
2024-07-26 22:12:44 +02:00
andig
9c4f970035
EEBus: refactor connection handling (#15021) 2024-07-24 10:13:31 +02:00
andig
fbfe63fce5 chore: fix treat device connected vs ev 2024-07-21 12:09:33 +02:00
andig
55ca860343
chore: move EEbus to global config (#14945) 2024-07-21 11:25:33 +02:00
Andreas Linde
d50d8a2c22
Improve EEBUS support for Elli Gen 1 (part 3) (#14773)
- Do not use the connected phases data, as it is missing sometimes
2024-07-09 09:30:32 +02:00
Andreas Linde
eb15f37d66
Improve EEBUS support for Elli Gen 1 (part 2) (#14760)
- Tested with Elli Charger Pro Gen 1
- Handle missing power and use current data in evcc instead of eebus library
- Check for use case scenario availability for power and current data
2024-07-07 21:20:21 +02:00
Andreas Linde
f9213665d7
EEBUS: improve support for Elli Gen 1 (#14709) 2024-07-05 15:38:59 +02:00
Andreas Linde
b2f68162bb
EEbus: upgrade libraries (#13998)
This updates the eebus charger implementation to use the latest version of cemd, eebus, spine and ship.
Only use OSCEV if the a wallbox with ISO15118-2 VW VAS is connected, and the EV is using this. This also enables full charging control and putting the EV to sleep. All other current implementations of the usecase are basically wrong and are no different than using OPEV.
2024-06-30 14:23:40 +02:00
Martin Weinelt
daee304a49
chore: migrate from unmaintained mockgen (#11547)
The golang mock package has been archived and is now maintained by uber.

> Update, June 2023: This repo and tool are no longer maintained. Please
> see go.uber.org/mock for a maintained fork instead.

[1] https://github.com/golang/mock
[2] https://github.com/uber-go/mock
2024-01-08 11:13:27 +01:00
andig
11467a5607 chore: simplify loops 2023-12-09 11:14:53 +01:00
andig
d63dec9511
Refactor session settings and apis (BC) (#10335) 2023-12-02 20:56:30 +05:00
andig
6c0a64e9a3 chore: cleanup logging 2023-11-15 21:32:33 +01:00
andig
2ebd09ed95 chore: simplify filling values
Some checks failed
Release / call-build-workflow (push) Has been cancelled
Release / Publish Docker :release (push) Has been cancelled
Release / Github & APT (push) Has been cancelled
Release / Demo (push) Has been cancelled
Release / Hassio Addon (push) Has been cancelled
2023-10-13 13:35:31 +02:00
andig
cc1e21bea7
EEbus: let loadpoint rewrite currents on connection (#9921) 2023-09-17 13:30:33 +02:00
andig
8e3396d9e9 chore: spelling 2023-09-15 19:50:48 +02:00
Andreas Linde
f1d5fd2ad4
Fix EEBUS enable detection (#9574)
- If the EV is charging, make sure to report as being enabled
- Fixes https://github.com/evcc-io/evcc/issues/9473
2023-08-28 16:58:52 +02:00
Andreas Linde
184e70d3e7
Improve EEBUS isCharging detection (#9354)
- Make sure the check using an external meter is identical to using an internal meter
- Fix check using internal meter to compare sum of all charge currents to idlefactor * min. single phase charge current
2023-08-13 12:33:36 +02:00
Andreas Linde
5eb6e2b0ae
EEBUS: ignore a max number of meter no data errors (#7717)
* Ignore a max number of meter no data errors

When an EV is connected, measurements are not available right away, as the initial communication is not done. And due to bugs in the Elli software, the EEBUS stack can not generally wait for data being available and only then set the EV as being connected.

This change ignores a maximum amount of specific EEBUS `no data available` errors, and only propagates them if the error occured more often.

The error will come anyway, if evcc is startet while an EV is connected to the Elli wallbox!
2023-05-05 20:07:34 +02:00
Andreas Linde
ca3637e062
Improve EEBUS EV connection handling and fix a crash (#7650)
Some checks failed
Release / call-build-workflow (push) Has been cancelled
Release / Publish Docker :release (push) Has been cancelled
Release / Github & APT (push) Has been cancelled
Release / Demo (push) Has been cancelled
Release / Hassio Addon (push) Has been cancelled
* Check for connection before fetching data

* Check if an EV is connected first

This new check does not only check for the EEBUS charge state but also checks if a minimum dataset is available.

This helps in situations where the charge state already provides data, but measurements, loadlimits etc. are not yet available and thus cause evcc to return errors.

* Fix crash when no vehicle is assigned to loadpoint

* Update EEBUS cemd to v0.2.1
2023-04-26 11:15:09 +02:00
Andreas Linde
b4e62a97cd
EEbus: only adjust currents if not overridden by vehicle (#7563) 2023-04-20 18:12:49 +02:00
Andreas Linde
4f4edba5ba
EEBUS updates and fixes (#7173)
* Adopt EEBUS v0.2 dev changes
* Fix filling up currents
* Improve enabled state handling when unplugged
* Use ErrTimeout if disconnected
2023-04-08 21:55:07 +02:00
Andreas Linde
cc5a7fff41
Various EEBUS updates (#6979)
* Update error message

* Increase initial timeout to 90s

This should help Elli wallboxes a bit due to their software often crashing on first connection

* Update eebus libraries

- Update to intertermedia versions pending 0.1.7 release
- Fix crash when removing non existing entities
- Initiate connection via IP addresses before using hostname
- Update randomizer seed usage which fixes linter warning and still providing 1.18 compatibility
- Change log level for ev (dis)connect states

* Update charging limits if they changed

* Update eebus libraries to v0.1.7
2023-03-23 17:32:48 +01:00
andig
7b2ab68add chore: move eebus server to charger package to prevent import cycle 2023-02-05 13:13:47 +01:00
Andreas Linde
edaffce454
EEBUS Update (#5937)
* Increase eebus initial connection timeout
* Update eebus libs to v0.1.6
2023-01-29 17:42:08 +01:00
Andreas Linde
dbf1305210
EEBus: fix charger connection check on init (#5697) 2023-01-06 17:42:14 +01:00
Andreas Linde
2e909588bb
EEBus: improve configure and charger handling (#5670) 2023-01-06 16:37:46 +01:00
andig
89ffe53b1e
Cleanup api naming, rename phase measurement apis (#5611) 2022-12-29 20:12:24 +01:00
andig
03d6d1418a
Rename SoC to Soc and LoadPoint to Loadpoint (#5549) 2022-12-23 10:19:23 +01:00
Andreas Linde
ae393838f4
Migrate EEBUS to enbility/eebus-go (#5391)
* Migrate EEBUS to enbility/eebus-go

- adopt enbility/eebus-go library
- fully compatible with existing EEBUS setup
- centralize EEBUS certificate generation for configure and certificate creation cmds
- automatically utilizes native avahi mDNS setup if installed, which does not have missing IP issues as zeroconf library
- mDNS discovery and announcement is fully handled by the library
- improved double connection and reconnection handling over previous library
- logging now fully supported evcc log levels
- tested with Elli Connect and Porsche Mobile Charger Connect
2022-12-10 21:40:20 +01:00
andig
909f2be52f chore: simplify nested tests 2022-10-05 18:21:01 +02:00