Battery upgrade
| 2x | Stock batter | Upgrade battery |
| Model | EREMIT 606090 | HXJNLDC 7565121 |
| Size | 90mm / 60mm / 6mm | 122mm / 65mm / 7.5 mm |
| Chemistry | Lithium-Polymer | Lithium-Polymer |
| Capacity | 14.8Wh (4Ah) | 30.34Wh (8.2Ah) |
| Nominal voltage | 3.7V | 3.7V |
| Discharge max continuous | 2A | 5A |
| Charging limit voltage | 4.25V | 4.2V |
| Mass | 74g | 136g |
- Connector: JST-PH 2.0mm (not included in upgraded battery) (see this and this)
- Datasheet: ePH.pdf
- Max current: 2 A
- Both batteries have protection ICs
Charging chip - MP2650
- Datasheet: MP2650GV.pdf
- 4V to 21V Operating Input Voltage (VIN) Range
- Up to 5A Configurable Input Current (IIN) Limit (Up to 45W Total Power)
- Up to 5A Configurable Charge Current (ICHARGE)
- Configurable Battery Charge Voltage Regulation (VBATT_REG) Up to 4.5V/Cell
- Up to 5V/3A USB On-The-Go (OTG)
Monitoring chip - MAX17320G20+
- Datasheet: max17320.pdf
- Battery Health + Programmable Safety/Protection
- Overvoltage (Temperature Dependent)
- Overcharge/Overdischarge/Short-Circuit Current
- Over/Undertemperature
- Undervoltage + SmartEmpty
- Battery Internal Self-Discharge Detection
- Ideal Diode Discharge During Charge Fault
- Charging Prescriptions (JEITA)
- Prequal Charge Control with CHG FET
- ModelGauge m5 EZ Algorithm
- Percent, Capacity, Time-to-Empty/Full, Age
- Cycle+™ Age Forecast
- Precision Measurement Without Calibration
- Current, Voltage, Power, Time, Cycles
- Die Temperature, 4 Thermistors ±1˚C
- Cell Balancing with Internal FETs
- SHA-256 Authentication
- Nonvolatile Memory for Stand-Alone Operation
- History Logging, User Data (84 Bytes)
Firmware
pocket-reform-sysctl-fw/src/sysctl.c void charger_init()
// 2A max charge current, assumes 4000mAh cells.
mps_reg_limits.charge_current = 1<<5 | 1<<3;
// set all current limits to 500mA (should always be safe)
int current_limit = 1<<3 | 1<<1;
mps_reg_limits.input_i_limit1 = current_limit;
mps_write_buf(MPS_REGSTART_LIMITS, sizeof(mps_reg_limits.all_regs), mps_reg_limits.all_regs);
mps_read_buf(MPS_REGSTART_LIMITS, sizeof(mps_reg_limits.all_regs), mps_reg_limits.all_regs);
mps_write_byte(0x0F, current_limit); // Input Limit 2
- Charging current limit is 2A by default hard-coded in the firmware.
- Upgraded batter can go up to 5A and charger chip can also go up to 5A but PH connectors only do 2 A max so can't increase charging current.
