Releases: Coernel82/smartCharge4evcc
Episode 4: The Last Alpha
After many bugfixes I have the impression the program now does not crash any more, so this will be the last alpha-Version.
The remaining bugs more or less focus on the WebUi which does not entierely work yet.
Before opening an issue check if there already is a FIXIT: TODO: or even BUG: documented in the code.
Current known bugs and todos:
Some of the big bugs might not be bugs any more - I left them open to recheck! So the state of the code likely is better than documented here!
Bugs and Fixmes have a dot before the line!
└─ SmartCharge mehrere Loadpoints und Batterie
├─ home.py
│ ├─ line 34: TODO : delete if not needed
│ ├─ line 259: TODO :[low prio ] currently just one heatpump supported so not iterating through keys
│ ├─ line 483: TODO : [low prio]: If you have more than one battery, you need to calculate the weighted average efficiency yourself or
│ └─ line 629: TODO : [low prio] If you live outside of Germany there is a first draft about curtailment.
├─ smartCharge.py
│ ├─ line 13: TODO : unify cache folder to /backend cache and not /cache
│ ├─ line 14: TODO : Unimportant / Nice to have
- │ ├─ line 291: BUG : [high prio] block price is higher than boost price. calculation boost is wrong*
- │ ├─ line 300: FIXME : [medium prio] off and price limit can be set in the same round*
│ ├─ line 328: TODO :[medium prio] Think about logic. Is made sure that blocking is only for x hours in y hours?
│ ├─ line 337: TODO [low prio]: global variable counting the blocked hours and then manual override
│ ├─ line 395: TODO : check if there is a future_grid_feedin or just grid_feedin - │ └─ line 396: FIXME : got outdated values from 3 weeks ago in the web UI, check if that still is the case*
├─ socGuard.py - │ ├─ line 29: BUG : [from 2025-01-10 high prio] home_battery_energy_forecast has always the same value*
│ └─ line 62: TODO : negative value. also -40.058.... results in -4.005.8 cents
├─ solarweather.py
│ └─ line 342: TODO : delete if not needed
├─ utils.py
│ ├─ line 193: TODO : [low prio] check if we need the season, if yes we need it for the real readings as well
│ └─ line 319: TODO : monitor the 0.001 value if it is too low or too high
├─ script.js
│ ├─ line 1: TODO : refresh page after deleting or editing a trip
│ ├─ line 2: TODO : close modal after adding non recurring trip - │ ├─ line 3: BUG : add recurring trip button not working*
- │ ├─ line 220: BUG : jQuery: n is not a function*
- │ ├─ line 456: FIXME : delete if code is working*
- │ ├─ line 585: BUG : For both recurring and non recurring trips the distance must be a number not a string*
│ ├─ line 621: TODO : make an edit trip modal - │ ├─ line 806: TODO : BUG*
│ ├─ line 855: TODO : does not work like this or getting it from the browser maybe at wrong position? locale: 'de-DE', // Automatically set locale based on user's browser settings - │ └─ line 964: FIXME : seems to be redundant*
├─ styles.css - │ └─ line 69: FIXME : trip-actions hover must probably be other class*
├─ index.html
│ ├─ line 41: TODO : integrate external sources (java css etc.) (use latest version!)
│ ├─ line 42: TODO : style the document afterwards
│ └─ line 56: TODO : make bootstrap modal
└─ settings.html
├─ line 36: TODO : proper cs formatting per level
└─ line 129: TODO : following thee lines are AI - so check if working
Episode 3: The bugs strike bag
I have corrected many bugs and for me personally I will put the program now into regular test mode.
The home battery optimization is not tested yet as my home battery has been disconnected by the electiricians as I get more PV on my rooftop installed. From next week I will be able to test.
Current bugs / fixmes and todos:
├─ SmartCharge mehrere Loadpoints und Batterie
│ ├─ home.py
│ │ ├─ line 306: TODO : holdpoint here, check if there is a temp difference etc.
│ │ ├─ line 331: TODO : check if this fixed grid feedin when there is no sun
│ │ └─ line 556: BUG : [low prio] it is not as simple as this as curtailment danger is when input is higher than x and also battery will be full
│ ├─ initialize_smartcharge.py
│ │ ├─ line 75: TODO : delete if program working - redundant
│ │ └─ line 295: FIXME : does this need to be changed to departure_date? ---> changed already, so check
│ ├─ smartCharge.py
│ │ ├─ line 14: FIXME : settings.json has Home and House
│ │ ├─ line 15: TODO : for days without (<=2% of maximum possible yield) sunshine is it possible to compare calculated and real heating energy and apply another correction factor
│ │ ├─ line 17: TODO : add pre-heating and pre-cooling
│ │ ├─ line 18: TODO : add additional (electric) heating (by timetable)
│ │ ├─ line 21: TODO : optional: add MQTT temperature source (via external script and cache)
│ │ ├─ line 22: TODO . add multiple sources for energy prices (Awattar, Fraunhofer)
│ │ ├─ line 23: TODO : implement finer resolutions for the api data - finest resolution determined by the worst resolution of all data sources. solcast hobbyist minimum and maximum is 30 minutes
│ │ ├─ line 24: TODO : add barchart into each trip with the energy compsotion (solar, grid)
│ │ ├─ line 25: TODO : add savings information for each trip (in the index.html) compared to average price
│ │ ├─ line 90: FIXME : change to True when testing is finished
│ │ ├─ line 187: TODO : delete line if program running, should be redundant assignments = initialize_smartcharge.load_assignments()
│ │ ├─ line 209: TODO : delete. redundant?
│ │ └─ line 315: TODO : make this a function in home
│ ├─ socGuard.py
│ │ ├─ line 29: BUG : home_battery_energy_forecast has always the same value
│ │ └─ line 62: TODO : negative value. also -40.058.... results in -4.005.8 cents
│ ├─ solarweather.py
│ │ └─ line 78: TODO : [low prio] if the whole program is set to 30 minutes increments go back to 30 minutes increments
│ ├─ utils.py
│ │ ├─ line 194: TODO : [low prio] check if we need the season, if yes we need it for the real readings as well
│ │ ├─ line 785: TODO : implement TIMESPAN_WEEKS_BASELOAD here in code or delete from settings
│ │ ├─ line 795: TODO : query fixed, check if working!
│ │ └─ line 812: TODO : check if fixed
│ ├─ vehicle.py
│ │ └─ line 102: TODO thoroughly go through function
│ ├─ script.js
│ │ ├─ line 1: TODO : refresh page after deleting or editing a trip
│ │ ├─ line 2: TODO : close modal after adding non recurring trip
│ │ ├─ line 3: BUG : add recurring trip button not working
│ │ ├─ line 220: BUG : jQuery: n is not a function
│ │ ├─ line 456: FIXME : delete if code is working
│ │ ├─ line 585: BUG : For both recurring and non recurring trips the distance must be a number not a string
│ │ ├─ line 621: TODO : make an edit trip modal
│ │ ├─ line 851: TODO : does not work like this or getting it from the browser maybe at wrong position? locale: 'de-DE', // Automatically set locale based on user's browser settings
│ │ └─ line 904: FIXME : seems to be redundant
│ ├─ styles.css
│ │ └─ line 68: FIXME : trip-actions hover must probably be other class
│ ├─ index.html
│ │ ├─ line 41: TODO : integrate external sources (java css etc.) (use latest version!)
│ │ ├─ line 42: TODO : style the document afterwards
│ │ └─ line 52: TODO : make bootstrap modal
│ └─ settings.html
│ ├─ line 36: TODO : proper cs formatting per level
│ └─ line 129: TODO : following thee lines are AI - so check if working
Episode 2: The Alpha Menace
SmartCharge v0.0.2-alpha Release
❗ A warning
I had my pv system extended. As there were parts missing the electricians could not finish their work with the result that my power inverters for pv and battery do not work any more. So my battery charging logic has not been tested thoroughly.
Things added
- I added a webserver to safely edit the settings and the trips
- updated the readme with better installation instructions
- refined the logic that it includes a "battery guard" which requests the home battery soc in shorter intervals to stop charging the home battery as this function is not implemented in evcc
- bugfixes
Limitations
clockpicker / datepicker are buggy - you can enter times manually. You are welcome to fix and open a pull request.
And of course this is alpha stage - there are more unwanted christmas presents in the software for sure!
SmartCharge4evcc Episode I: A New Hope for EV Charging"
Full Changelog: https://github.com/Coernel82/smartCharge4evcc/commits/v0.0.1-alpha
SmartCharge v0.0.1-alpha Release
Welcome to the first alpha release of SmartCharge! This release includes the initial implementation of our smart EV charging solution, which optimizes your EV charging schedule based on various factors such as solar production forecasts, weather conditions, electricity prices, and home energy consumption. See readme for details!