Skip to content

SilverGreen93/ancel-tester

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Ancel BA101 Battery Tester serial data parser

The Ancel BA101 lead-acid Battery Tester is an easy to use and versatile lead-acid battery tester for car, UPS or other similar batteries. The tester has a mini-USB serial output port which can be used to log and report the measured test data. Unfortunately the software that it comes with is proprietary, closed source, runs only on Windows and it cannot be downloaded without making an account on the Ancel website.

This repo proposes a platform agnostic python3 script which connects to a serial port, receives the data from the Ancel BA101 Battery Tester and displays it in the terminal so that it can be logged and/or printed as needed.

It can be run directly on both Windows and Linux.

Read the Ancel BA101 manual here: Ancel_BA101_User_manual.pdf

Official Ancel product page: https://www.ancel.com/products/ancel-ba101

Requirements

  • Python 3 installed
  • Python 3 serial library: pip install pyserial

How to use

  1. Connect Ancel BA101 via USB cable to PC.
  2. Open a terminal and run ./ancel_data_print.py with serial port argumnet (e.g. /dev/ttyUSB0 for Linux, COM3 for Windows).
  3. The script will wait for data to be received.
  4. On the Ancel BA101 tester, go to Print Data and press Enter.
  5. The data will be displayed in the Terminal. Press Ctrl+C to close, or send new data agin until manually stopped.

Example:

$ ./ancel_data_print.py COM3
Ancel BA101 Battery Tester serial data parser.
Opening serial port COM3 at 9600 baud...
Listening for data... Press Ctrl+C to stop.

====== Battery Test ======
Status:             GOOD BATTERY
Voltage:            13.19V
Charge:             100%
Health:             100%
Rated:              135A
Measured:           193A
Standard:           CA
Internal Res:       15.82mΩ

====== Cranking Test ======
Cranking Time:      1550ms
Cranking Voltage:   7.45V
Cranking Status:    LOW

====== Charging Test ======
Loaded Voltage:     12.50V
Unloaded Voltage:   14.89V
Ripple:             15mV
Charging Status:    LOW

Serial data format specification

The data format specification was not provided by Ancel, but was manually reverse engineered. Some values might be not right.

Offset Raw data example Decoded data example Meaning
0 E6 7C - Initial marker (?)
2 1A - ??
3 00 GOOD Battery status
00: GOOD
01: GOOD, RECHARGE
02: BAD, REPLACE
03: REPLACE
04: CHARGE & RETEST
4 05 14 1300 Battery voltage x 0.01V
6 00 C3 195 Measured amps
8 06 1D 1565 Internal resistance x 0.01mΩ
10 00 64 100 Health percentage
12 00 64 100 Charge percentage
14 00 87 135 Rated amps (A)
16 0A CA Selected measuring standard
01: CCA
02: DIN
03: JIS
04: EN
05: IEC
06: GB
07: SAE
08: MCA
09: BCI
0A: CA
17 01 2C 300 Cranking time (ms)
19 01 NORMAL Cranking status
01: NORMAL
02: LOW
20 03 E8 1000 Cranking voltage x 0.01V
22 05 AA 1450 Unloaded voltage x 0.01V
24 05 6E 1390 Loaded voltage x 0.01V
26 00 0C 12 Ripple (mV)
28 01 LOW Charging status
00: NO OUTPUT
01: LOW
02: NORMAL
03: HIGH
29 FE 7F - Final marker (?)

About

Ancel BA101 Battery Tester software

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages