That would be an entirely new design with multiple phases. Not so easy do change existing design for those specs.
Ok so after half a year I was finally able to return to this project. Last commit to to the fork of firmware (reworked battery detection & firmaware limits to handle 48v systems · codin2odin/charge-controller-firmware@563a358 · GitHub)
should make it finally compatible with the mppt-4820-hc hardware fork.
The two main changes that had to be addressed in firmware: replacement of current ic amp & adding support for 48v battery systems.
-
New current ic has no offset voltage at 0A and higher gain.
Firmware automatically calibrates current measurment at startup at 0A so the offset is non-issue.
Amp gain value is changed in hw .dts file (i-dcdc). -
Adding support for 48v battery systems was more challenging.
Firmware automatically detects battery voltage based on 12/24v charged-discharged voltage ranges.The first problem is that 36/48v charged-discharged ranges overlap so I simply dropped support for 36v systems.
The second problem is that the algorithm expects fixed number of cells per 12v battery (6 for lead-acid, 4 for LFP, 3 for NMC),
which is then simply multiplied by 1 or 2 (or 4).This is applicable for lead-acid batteries but is absolutely NOT the case for NMC/LFP (3.6/3.2v cells.)
48v NMC battery has 13 cells (a prime :D) and LFP has 15.
The solution is to set min. cell counts for LFP & NMC batteries to 1 (in Kconfig), and reworked detect_num_batteries function to set series_multipler variable based on what chemistry we are using.
I already have custom pcbs and working on first prototype, I’ll post an update with first tests.