Releases: dalathegreat/Battery-Emulator
v6.4.0
What's Changed
- The Mitsubishi/Citroen/Peugeot triplet batteries are now marked stable! 🥳
- Added support for FerroAmp EnergyHub inverters! 🥳
Batteries 🔋
- Tesla S/3/X/Y :
- Revert broken SOH% calculation by @dalathegreat in #375
- Remove misleading info messages by @dalathegreat in #382
- BYD Atto 3: Add contactor closing allowed signal by @dalathegreat in #378
- Mitsubishi/Citroen/Peugeot Triplets: Add cellvoltage safeties and improved SOC handling. by @dalathegreat in #384
Inverters ⚡
- Pylon CAN has new configurable options in
PYLON-CAN.cpp
- Add function to byte-swap all 16bit values
- Add function to enable 30k offset for currents
- Add function to limit charge/discharge currents from User settings
- Add status bits
by @willyfromtheblock in #359
by @LevinSwe in #287
Housekeeping 🧹
- Feature: Add SSID/Password writing from webserver! by @dalathegreat in #376
- Bugfix: Webserver settings page now handles decimals by @GubbJVL in #386
New Contributors
- @willyfromtheblock made their first contribution in #359
- @GubbJVL made their first contribution in #386
Full Changelog: v6.3.0...v6.4.0
v6.3.0
What's Changed
Batteries 🔋
- Feature: New battery, Kia Niro Hybrid HEV (Not stable yet!) by @dalathegreat in #365
- Feature: New battery, Jaguar I-PACE (Not stable yet!) by @obbardc in #368
- Tesla S/3/X/Y: Improve error message on why HVIL blocks contactors by @dalathegreat in #367
- BYD Atto 3: Improved value mappings by @dalathegreat in #352
- CHAdeMO: Shunt support refactor by @smaresca in #357
- PYLON battery parameters scaled wrong by @dalathegreat in #362
Housekeeping 🧹
- CPU load improvement: Apply less filtering on CAN signals by @dalathegreat in #345
- CPU load improvement: Removed unused MQTT subscription functionality by @fspijkerman in #358
- CPU load improvement: Improve performance on LED driver by @dalathegreat in #364
- Use unsupported but working ESP32 version in PlatformIO to enable using this IDE by @puffnfresh in #361
- Create CONTRIBUTING.md file to instr by @dalathegreat in #363
- Bump arduino/setup-arduino-cli from 1 to 2 by @dependabot in #371
New Contributors
- @fspijkerman made their first contribution in #358
- @puffnfresh made their first contribution in #361
- @obbardc made their first contribution in #368
Full Changelog: v6.2.1...v6.3.0
v6.2.1
What's Changed ❔
This version focuses on improving CPU load, along with some battery fixes. Flaky Wifi connections could result in contactors opening, so the Wifi task is now moved out of the core task to keep batteries satisfied without any CAN interrupts. Who knew embedded real-time was so hard 😅
Taking 6.X.X into use ℹ️
When compiling this latest version, you need to update the ESP32 package by Espressif System, in the Arduino IDE, to at least v3.0.0 , failure to do this will result in compilation errors. This is the spot in Arduino IDE to do it:
Housekeeping 🧹
- Bugfix: CAN overrun events are now cleared to help spot CPU load issues, by @dalathegreat in #344
- Bugifx: Move WIFI out from the core task by @Cabooman in #346
Batteries 🔋
- BYD Atto 3: Rescale voltage, by @dalathegreat in #347
- Renault Zoe: Split Zoe handling with OVMS info by @dalathegreat in #343
- 800V E-GMP: Fixed sign on current value by @dalathegreat in #349
Full Changelog: v6.2.0...v6.2.1
v6.2.0
What's Changed ❔
This version focuses on improving CPU load, along with some battery fixes. Flaky Wifi connections could result in contactors opening, so the Wifi task is now moved out of the core task to keep batteries satisfied without any CAN interrupts. Who knew embedded real-time was so hard 😅
Taking 6.X.X into use ℹ️
When compiling this latest version, you need to update the ESP32 package by Espressif System, in the Arduino IDE, to at least v3.0.0 , failure to do this will result in compilation errors. This is the spot in Arduino IDE to do it:
Housekeeping 🧹
- Bugfix: CAN overrun events are now cleared to help spot CPU load issues, by @dalathegreat in #344
- Bugifx: Move WIFI out from the core task by @Cabooman in #346
Batteries 🔋
- BYD Atto 3: Rescale voltage, by @dalathegreat in #347
- Renault Zoe: Split Zoe handling with OVMS info by @dalathegreat in #343
Full Changelog: v6.1.0...v6.2.0
v6.1.0
What's Changed ❔
This version fixes a rare reset issue, adds reset reason to Events view, and adds initial support for BYD Atto 3 batteries! It is a highly recommended update.
Taking 6.X.X into use ℹ️
When compiling this latest version, you need to update the ESP32 package by Espressif System, in the Arduino IDE, to at least v3.0.0 , failure to do this will result in compilation errors. This is the spot in Arduino IDE to do it:
Batteries 🔋
- Feature: Add initial support for BYD Atto 3 batteries 🔋 by @dalathegreat in #325
- Improved code performance on LEAF and Kia batteries, by copying the cellvoltages in a smarter way, by @amarofarinha in #332
Inverters ⚡
- Bugfix: Division by 0 could crash the emulator. Affected protocols Solax, SMA and BYD. Fixed by @dalathegreat in #340
Housekeeping 🧹
- Feature: The reason a reset happened is now posted in Event view, by @dalathegreat in #335
- Microfeature: Show which hardware is used in WebUI, by @dalathegreat in #339
- MQTT Bugfix, calculate number of cell in KIA pack by @amarofarinha in #341
Full Changelog: v6.0.0...v6.1.0
v6.0.0
What's Changed ❔
This is a Major release, which requires user action to take into use. The main driver for this release is to get ESP32 v3.0.0 support. Safety has also been increased significantly, with the inclusion of a dedicated Safety code section (Safety.cpp), which performs safety checks every 5 seconds. A significant amount of new safeties and info events have been added to the emulator! 🥳
Taking 6.X.X into use ℹ️
When compiling this latest version, you need to update the ESP32 package by Espressif System, in the Arduino IDE, to the latest v3.0.0 , failure to do this will result in compilation errors. This is the spot:
Batteries 🔋
- Nissan LEAF: Fixed an issue causing automatic contactor closing to not always work, by @dalathegreat in #328
- CHAdeMO support is staging towards stable and ready for testing. Excellent progress made by @smaresca :
- Added skeleton for MG5 battery integration by @dalathegreat in #319
- BMW i3: Remove obsolete codeblocks, by @smaresca in #294
- Kia/Hundai, Make 12V default value reasonable by @dalathegreat in #331
Inverters ⚡
- BYD Modbus: Added info event incase we don't see any Modbus activity. This helps new users troubleshoot wiring, by @dalathegreat in #305
- All inverters: Added info event for when inverter exceeds battert limits, by @dalathegreat in #313
- Tweaked by @amarofarinha in #327
- Tweaked fully charged event, so it does not continously trigger when battery is full, by @amarofarinha in #329
Connectivity 🛜
- Wifi stability improved, by @dalathegreat in #314
- Fixed an issue with CAN-FD getting stuck on startup , by @kukumagi in #317
- MQTT:
- Prevent MQTT to publish cell voltage values before they are populated by @amarofarinha in #321
- Nissan LEAF : Only update cellvoltages after all cells have been sampled, by @amarofarinha in #324
Housekeeping 🧹
- Feature: ESP32 Arduino Core v3.0.0 compatibility by @dalathegreat in #326
- New feature: Safety.cpp handler by @dalathegreat in #301
- Improvement: Move charge/discharge limiting to Safety file by @dalathegreat in #310
- Microfeature: Customizable name on webserver by @dalathegreat in #312
Hardware 💻
- Added initial support for Stark hardware by @dalathegreat in #309
New Contributors
- @amarofarinha made their first contribution in #321
Full Changelog: v5.10.0...v6.0.RC
v6.0.RC
What's Changed ❔
This is a Major release, which requires user action to take into use. The main driver for this release is to get ESP32 v3.0.0 support. Safety has also been increased significantly, with the inclusion of a dedicated Safety code section (Safety.cpp), which performs safety checks every 5 seconds. A significant amount of new safeties and info events have been added to the emulator! 🥳
Taking 6.X.X into use ℹ️
When compiling this latest version, you need to update the ESP32 package by Espressif System, in the Arduino IDE, to the latest v3.0.0 , failure to do this will result in compilation errors. This is the spot:
Batteries 🔋
- Nissan LEAF: Fixed an issue causing automatic contactor closing to not always work, by @dalathegreat in #328
- CHAdeMO support is getting improved. Not marked as stable yet, but excellent progress made:
- Added skeleton for MG5 battery integration by @dalathegreat in #319
- BMW i3: Remove obsolete codeblocks, by @smaresca in #294
Inverters ⚡
- BYD Modbus: Added info event incase we don't see any Modbus activity. This helps new users troubleshoot wiring, by @dalathegreat in #305
- All inverters: Added info event for when inverter exceeds battert limits, by @dalathegreat in #313
- Tweaked by @amarofarinha in #327
Connectivity 🛜
- Wifi stability improved, by @dalathegreat in #314
- Fixed an issue with CAN-FD getting stuck on startup , by @kukumagi in #317
- MQTT:
- Prevent MQTT to publish cell voltage values before they are populated by @amarofarinha in #321
- Nissan LEAF : Only update cellvoltages after all cells have been sampled, by @amarofarinha in #324
Housekeeping 🧹
- Feature: ESP32 Arduino Core v3.0.0 compatibility by @dalathegreat in #326
- New feature: Safety.cpp handler by @dalathegreat in #301
- Improvement: Move charge/discharge limiting to Safety file by @dalathegreat in #310
- Microfeature: Customizable name on webserver by @dalathegreat in #312
Hardware 💻
- Added initial support for Stark hardware by @dalathegreat in #309
New Contributors
- @amarofarinha made their first contribution in #321
Full Changelog: v5.10.0...v6.0.RC
v5.10.0
What's Changed
Batteries
- Renault Kangoo: Rescale SOC, Current and Power values by @dalathegreat in #218
- Kia/Hyundai E-GMP: Better cellvoltage handling by @JorgenSeemann in #282
- BMW i3: Less likely to go into FAULT incase it hasn't had time to read cellvoltages by @odlg in #299
- All batteries: Added CAN-FD USB printout for easier debugging by @kukumagi in #289
Inverters
- Pylon CAN: Add more battery mappings by @dalathegreat in #284
- BYD CAN: Make amp value based on actual voltage by @dalathegreat in #281
- BYD Modbus: Values set in webserver for max charge/discharge in amps is now used by @dalathegreat in #290
- BYD Modbus: Significant performance improvements by @dalathegreat in #290
- Solax: Correct scaling on kWh by @dalathegreat in #297
New Contributors
- @JorgenSeemann made their first contribution in #282
Full Changelog: v5.9.0...v5.10.0
v5.9.0
What's Changed
This release focuses on getting Double LilyGo setups working again. The last version that this feature worked in was 5.5.0. This release also fixes some small bugs and adds minor features.
Batteries
- BMW i3: Added cellvoltage safeties and pack size autodetect by @dalathegreat in #279
Inverters
- Feature: Add Event when automatic contactor opening happens by @dalathegreat in #271
- Bugfix: Serial-link (Double LilyGo) now works again by @Cabooman in #283
Housekeeping
- Microfeature: Add uptime tracking and display by @smaresca in #268
- Improvement: Rename BMS to System in webserver by @dalathegreat in #273
- Improvement/event uptimestamp by @Cabooman in #272
- Bugfix: Make chargers compile and add to workflow 🤖 by @dalathegreat in #274
- Update README.md by @Cabooman in #275
- Consistent library naming by @Cabooman in #278
- Refactor: Inverter handling by @dalathegreat in #276
Full Changelog: v5.8.0...v5.9.0
v5.8.0
What's Changed
This version adds initial support for Pylon 🔋 batteries. It also contains many bugfixes and improvements for different battery types. This version also introduces a datalayer, to make future development easier! ⚡
Batteries
- Support for new battery! Pylon 🔋 #265
- Kia/Hyundai64: Battery max charge/discharge values are now read from CAN instead of estimated. This increases safety significantly when using these batteries, #259
- Kia/Hyundai64: Improved startup reliability. We wait until battery is turned ON before starting to send CAN messages towards it, #264
- Nissan LEAF: Three new events added (EVENT_BATTERY_CAUTION, EVENT_BATTERY_REQUESTS_HEAT and EVENT_BATTERY_WARMED_UP). This alerts users incase the battery does something out of the ordinary #257
- BMW i3: Two new events added, we now alert the user incase high voltage interlock not seated / Capacitor missing on HV side. This simplifies troubleshooting #267
- Fixed an issue causing E-GMP batteries not to compile #258
Inverters
- Fixed an issue where if an inverter would switch to 250kbps instead of 500kbps, it would halt the emulator for 2seconds. The board now recovers in 20ms incase it encounters a baud rate switch #260
Housekeeping
- Refactoring: Introduced datalayer and move events to background task by @Cabooman #254
- Bugfix: Make faulted LED solid red again 🔴 #263
- Cleanup: Removed unnecessary USB debug messages #255
- Cleanup: Removed images from the code repository. All images are now hosted on Github Wiki to save space, makes the .zip file 14 MB smaller #256
- Regression in SERIAL-LINK-RECEIVER #269
- Improvement: SERIAL-LINK-RECEIVER added to workflow #270
Contributors
@Cabooman @smaresca @kukumagi @dalathegreat
Full Changelog: v5.7.1...v5.8.0