You are on page 1of 15

Cheali Charger V0.

User Guide (under development)
1 Introduction / copyright`
2 Upgrade
3 Calibration
4 Operation (menus)
5 logview support
6 EEPROM editor(later)

1,1 Introduction
Thanks PaweStawicki the software author. The program has helped a lot of small change, solved all user
Thanks Stephen Magi (alias HC) has helped in the documentation and the website has seen us with lots of useful
Thanks Gtz Gyrgy (alias Gyuri) for heuristic-find hardvare bugs.,150875.0.html
Thanks to
Dave Johnson (alias tungsten2k) for English translation.

This software is written for the popular Bantam clone chargers and was created because many of these poor clones
would not balance correctly, or could possibly overcharge batteries. This is primarily due to poor manufacturing
tolerances or no calibration performed during manufacture (ImaxB6). Some manufacturer's clone products are fairly
accurate to the original (for example, the Turnigy Acucell6) and do not usually suffer from poor calibration or over-charge
If your charger is well calibrated and charges to the correct voltages and / or you are not skilled in
electronics then please do not convert your charger to use this software.
The software works exclusively on 6 or 8 cell
Bantam clone chargers only and will not work on other charger designs.

CHEAL-charger - open source firmware for a variety of LiPo chargers
Copyright (C) 2013 PaweAll right reserved software.
This program is free You can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either has version 3 of the License, or
(at your option) any . later version
This program is distributed in the hope it will hurt you useful,
but WITHOUT ANY WARRANTY; without to even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see

Li-ion, LiPo and LiFe:
fast charging
charging and Balancing at the same time
storage and balancing
life formatting (D/C format) (experiment. Info from Raytronic), (only modded fw)
NiCd and NiMH:
charging method: -dV/dT
cycle charge (discharge-charge only)
NiZn (not fully tested):
fast charging
charging and balance at the same time
Pb (not fully tested):
Li-Ion 4.30V and 4.35V are supported
Unknown Type any voltage adjustable up to 26.1V
cell internal resistance measuring
total pack resistance measurement
battery wire resistance measurement
internal and external temperature monitoring if available
overcharge, discharge monitoring
Watt and Watt-hour display
in real-percent display
charge time remaining (experimental)
mains voltage monitoring
32-battery memory
LogView support


The keys numbered from left to right, have the following overall functions:

Stop / Escape - stop operation or exit to the menu one level above
Back / Minus (-) - navigate menu up or reduce value
Select / Plus (+) - navigate menu lower or increase value
Enter / Start - this starts a flashing menu alert operation or program start (long-press)

2.1 Upgrade / Calibration

Required Tools:

ISP Programmer Adapter (example: USBASP, AVRISP MKII)

accurate voltage meter
precise current meter
0.1 inch pin headers (6-12pcs)
soldering equipment (iron, solder, flux, wicking)
Burn-O-Mat, avrdude, or another hex-compatible ISP programming software

2.2 build ISP interface

Different vendors may use different pin order for the ISP header interface to the ATMEL ATMEGA32 MCU ISP pins.
Some manufacturers will have the standard 10-pin design:

Older accucell6 (5A)

Others may use a single line of 6-pin terminals:

??? Imax?

New Accucell6 (6A) and Mega400x2

3.2 Steps:
Connect your ISP programmer to the correct points on your board. If your board is not one of the common types above,
you may need to use a multimeter to trace back to the pins on the Atmel chip:

Atmega32 TQFP Package Pinout Assignments

Do not connect "VCC" from the USB AVR Hasp programmer. You must power the charger from its own supply because
there is not enough power available from the USB AVR to power the circuit in the charger during reprogramming.
Connect power supply on the charger.
Note: you may need to install a driver for your USB AVR programmer.
install the avrdude / avrstudio / burn-o-mat software.
USBASP with burn-o-mat setup:

GUI other detailed installation

avrdude-gui settings example:

it is better to use as a burn-o-mat.

Try to backup original software and EEPROM content. Most EEPROMs are protected by the MCU lock bits, but if
you're lucky it may work.
WARNING! Even if the protection bit is set, Atmel chips will read out the EEPROM contents successfully, but it will be
false information. You must open the resulting HEX file with a Text Editor (for example, Notepad++) to verify it is not all
00 or FF.
this clearing+flashing releasing the protect bit (unlock the mcu).The burn-o.mat is not able to do it erasing
separately. Or run from the command line or in the 6 points used (it will cancelling the protect bits)
Enter FUSE bits lfuse: 1F Hfuse: C7.
avrdude.exe -C avrdude.conf -p m32 -P usb -c usbasp -u -U hfuse:w:0xC7:m -U lfuse:w:0x1F:m
FUSES button and then the burn-O-Mat for the following options:

Apply button and then WRITE FUSES. If all goes well you can now burn Cheali software.
FlashROMwriting. please check the tested compatible chargers:

PaweOriginal version:


1.3 Calibration

Note that the charge current and discharge current calibration to take place during the setting of the battery.
Required equipment:
6-cell balanced LiPo
battery that is slightly less than fully charged
4- digit Voltmeter (capable of measuring to at least 4.200V accuracy)
Note: if you have only a 3- digit meter,
there is a non-ideal workaround detailed below, but a 4- digit meter is best
3- digit Amp meter (capable of measuring at least 100mA and 1.000A accuracy)

go to Options / Calibrate menu

voltages calibration
Connect the battery to both the main connector leads and the balance connector.
Vin: power supply voltage
VB1 to VB6: cell voltages (VB1 is the cell closest to the negative wire of the pack)
Set the the correct voltages on each cell as measured with your accurate 4- digit or higher voltmeter. Note that most
3- digit multimeters will not be able to measure to thousandths-of-a-Volt for any voltage above 4.090 volts. Using a
partially discharged pack so that each cell is below, but as close to 4.090V as possible may be a sufficient work-around,
but you must test the calibration afterward carefully by monitoring that the resulting charge does not exceed 4.20V
during normal charge cycle (stop the charge immediately otherwise).
Press Enter button to finish.
If you can not access the Calibration menu,
bat disc.

Use the RESET DEFAULT menu to reset the calibration.

Attention! This will reset of all charger parameters to default, including all 32 battery memory slots.
currents calibration
Four measurements are needed. Connect the current meter in series with the the main charge leads. Make sure the
meter can handle sufficient current for the calibration (at least 1A).
Ensure the wiring has a good stable electrical connection with minimal series resistance. Connecting the meter in series
with weak alligator clips or long wires will give incorrect calibration settings and could result in overcharging of your
batteries. Solder a short, high-gauge wire setup for calibration if necessary.
Go to "Options / Calibrate / I charge" menu,
connect the battery. 50mA menu item's value will be increased by the value of 50mA until the ampermeter shows. Then
1A-1A and calibration should be performed at the same. (These settings are different for different power chargers)
Then go through the discharge (options / calibrate / I discharge) menu and perform the same operation.
is only reserved for debug information.
During the current calibration there is no circuit protection. If the values
are larger than the charging is capable of, or
otherwise set incorrectly, it can lead to irreparable damage to the charger.

after ready, press exit button.

Now the software checks the calibration limits (modded version only). If this is not correct, it shows an error message.

Calibration errors (now implemented):

: switching power supply control error
internal switching
power supply current measurement error

discharger control error
discharge current measurement error
causes and fix:
When these errors are correct calibration usually hardware indicate failure:
This failure can usually use the charger, but you can spend less current. If you do that you're probably experiencing the
factory software was not able to work at full power, but the display as it showed :-)
F1, F3: control fault. Rare failure. Generally power-FET or control failure, or failure buffer capacity.
F2, F4: current measurement error. This common error is usually resolved by replacing one or more of these resistors:
1. 0.05-Ohm (or 2x 0.1-Ohm SMD parallel depending on manufacturer)
2. 0.5-Ohm

Thermometer calibration:
Temperature should be calibrated at ambient room temperature of 20C and at elevated temperature of 60C. A hair
dryer and thermocouple can be used for this.
Note: The default values
for temperature calibration usually provide
adequate precision so calibration is not usually critical.
calib-> UART
Debugging purposes, send a text data packet to the current calibration data. By default 9600 baud 8 bits no parity 1 stop
DANGER Expert menu (only 50-80W chargers)
(Suitable for charging without this),
reset the default
delete all calibration/setting/battery data. (It is useful for clean recalibration)

The charger can not be used until it is calibrated. Until calibration is completed successfully, incorrect values will be
reported and can result in severe damage to the charger and potentially cause fire due to overcharging of batteries.

4 Operation

4.1 settings Menu

settings (50W chargers is reduced menu structure)


backlight intensity

fan on:

cooler start 50C. hysteresis 5C.

disch off:

max. internal temerature for discharge. (temporary down disch.current)

Extrn T: yes /

external thermometer Yes / No

Extrn TCO:
outside temperature cut-off level is switched off when the outside thermometer reaches
this level.Usually Nixx battery Use

maximum battery temperature rising rate (trend)

enab -dV:

enable -dV charge method on Nixx.

NiMH -dv
NiCd -dv

charge termination voltage drop setting for NiMH battery packs

This value can be different for different battery manufacturers.
charge termination delta voltage drop setting for NiCd battery packs

D / C cycles

number cyclic charging and Lixx format, (only modded fw)

waste T:

downtime from the discharge-charge-discharge:, (only modded fw)


audio, (only modded fw)


setting the end charge current. default setting: starting-current/10. Adj:. 5-40.
Higher number is longer charging time but fullfilled battery. Lixx NiZn Un. and Pb.

cap Coff:

safety shutdown of the capacity xx% of the

input low:

safety switch to set voltage is reached

is recommended(in about charging to use car battery) value higher 11V

disch +:

shifted the value of the discharge voltage

dis agres

no reduce current for discharging program (agres= agressive)

force bal:

charging without balancer (set always YES for Lipo Charge.)

bal err:

if the set value are within the maximum difference between the cells will stop
balancing. Smaller values
may have a longer balance time.


Enable serial data. Use NORMAL mode.


9600 Serial port speed in baud


Momentary is not implemented

unique battery menu

create name
edit name

battery type setting

voltage / cell number
Battery capacity mAh or Ah
charging current
maximum charging time limit. (Safety feature only modded versions)
automatically name creation
edit name

screen shots
START button is pressed, we get a picture of the actual battery status information.
The charger not fully automatically recognize the battery type in each case,so always be attentive (Pawel please help
google is bad)

Program type
set voltage and cell count
program type
current battery percentage
the current voltage
.the setting capacity
the case of Lixx last value shown and connected balancer cell count the balancer port
to charging START : press the START button and hold 2 secs (RIGHT BUTTON)
Screenshot (press plus or minus button for change screen).

basic display of realtime charge data

combined with screenshot Watt Watt-hours per cent ETA

display (modded version)

individual cell voltages

individual cells internal resistance

battery internal resistance and total resistance (including

charge leads)

main output charge port voltage and measured balance

port balance

supply voltage and supply lower voltage cutoff threshold

balancer status icons. Will flash to indicate the current

working cell (common display version)

graphical display (modded version)

time display, total time, balance time, charging time

current charge profile settings (not adjustable while


temperatures (on 50W chargers without external

thermometer connected, nothing will be displayed)

error messages
T intern
internal temperature is too high. Unfortunately, the 50W charger does not have an internal thermometer, so this
message should never appear.
Bat disc
Main battery charge leads were disconnected or removed during charge, or poor battery charge calibration.
bal disc
Balancer cable connection break or balance cable removed during charge
Input V
Input voltage too low
cap COFF
Charge capacity limit reached while charging (the default is set to 120%, adjustable in charger settings)
T. Limit
Charge time limit exceeded while charging (modded version only)
ext TCOF
external temperature reading exceeded the set value
reverse polarity
please cal.
Uncalibrated charger (minimum voltages and currents to be calibrated)
(modded version)

A hardware design fault on 50W chargers, makes it unable to accurately measure the first cell voltage during discharge.
For these chargers, a
will be shown instead.

continue ...... (I hope)