Releases: microfarad-de/li-charger
Releases · microfarad-de/li-charger
Undervoltage Detection Bugfix
Fixed potential bug that could prevent sudden undervoltage detection due to a short circuit and removed makeshift NiCd battery support.
Command Line Build
Support command line build via Makefile. Among others, the following make targets are supported:
make all
: Build the Arduino firmwaremake upload
: Upload to the Arduino boardmake clean
: Remove all build artifactsmake release
: Create a .zip file with the firmware source code
The following environment variables need to be defined on your
host system (the actual values depend on your system configuration):
export ARDUINO_DIR=/opt/arduino
export ARDMK_DIR=/opt/arduino-mk
export MONITOR_PORT=/dev/ttyUSB0
Refactoring
Moved parts of the source code to separate Git submodules.
Further Compile Error Fix
Fixed a further capitalization error that prevented the code from compiling on a case-sensitive file system.
Compile Error Fix
Fixed a compile-error on case-sensitive file systems, caused by wrong file name capitalization within include statements.
Improved Validation and PWM Update
- If parameter validation fails, the parameter is not written to EEPROM and an error message is displayed
- Synchronize PWM updating with ADC read cycles, this ensures that a fresh ADC reading is available prior to updating the PWM frequency
- The system state is now printed within the output of the
.
(dot) command
Increased PWM Frequency and Easier Calibration
- Increased PWM frequency to 31.250KHz
- Improved calibration procedure: the exact reference voltage value is now passed as an argument, so there is no more need to use a precision power supply
- Harmonized CLI command names to match the ones of pi-ups
- Check the number of arguments passed to the CLI commands that require numerical input
- Set the failsafe value of R_shunt to 100mΩ
Fixed a Minor Bug and Improved Code Comments
- Removed duplicate initialization of tickTs = ts
- Updated inconsistent parameter and function descriptions
Increased Test Coverage
Test Coverage
- Depleted Li-Ion battery with BMS cutooff
- Almost full Li-Ion battery
- Full charge cycle
- Trickle charge cycle
- End-of-charge detection
- Sanity-check charge time and remaining capacity estimation
- Makeshift NiCd charging support
New features
- System trace: trace real-time charging parameters to EEPROM
Enhancements
- Fine-tune charge time and remaining capacity estimation
- Increase the speed of reaction to sudden current or voltage increase
- Remove end-of-charge detection based on current increase
- Improve voltage-based end-of-charge detection
Optimization and Test Coverage
- Reuse strings in different places to save memory
- I_safe is now a factor of I_chrg
- Test very low voltage use cases
- Test I_safe
- Test Trickle Charging