ken2011's blog View Details
Posted by ken2011 | Jan 16, 2020 @ 06:15 PM | 6,741 Views

About 10 years ago, I started my own project - "LiPo Professor" measures internal resistance of LiPo cell(s) accurately in micro-ohm resolution.

This idea is based on a expensive/industrial measurement method using AC current.
Appling weak (~mA) 1kHz (in my memory) AC current through a capasitor to LiPo cell(s), and measure AC voltage simultaneously. Then we can get the internal resistance of cell(s) easily to calculate R=Voltage.AC/Current.AC. Then display it on a LCD.
Cells have some static capacitance, so phase detection/correction is required.

This circuit generates sin wave instead of dirty square wave using internal DAC of MCU for accracy. And caliculation method is "coherent detection" whitch have high sensitivity and acclacy. It need computation power slightly, so I used DSPIC MCU. (It's outdated IMO, I'll choose STM32F3 if it is now on).

Eventually I planned this product to commercial. But terrible earthquake in 2011/03/11 was changed everything. I eleminated this project and went into mourning.

Now I open all of this project.

Download Link
UnZip Password : LipoProfessor2011

CAUTION : About ALL of this data/project, I do not have any responsibility including support/update it.

Includes PCB,Schematic design (CAD is Designspark : free), Spice Simulation, Firmware, and BOM.
Posted by ken2011 | Nov 27, 2019 @ 08:11 PM | 3,546 Views
This is my personal memo, but will work fair.

iA6B V1.6 firmware is here.

1. Get a Nucleo MCU board like as this. Cheap $15 and not only for upgrade, but also you can evaluate/develop a STM32 MPU.

And remove 3 jumper chips, at CN2 (2) , and JP5 (1). Then your Nucleo changed into ST-LINK/V2.

Install software/driver.
Driver here.
ST-LINK Utility here.

2. You need a external 5V/BEC power. Prepare this, but do not connect to iA6B at this time.

3. Wiring/Connection. You shuld connect 3 wires between SWD/CN4 connector on Nucleo with iA6B.
a) Nucleo Pin#2 -- iA6B CLK (SWCLK) pad.
b) Nucleo Pin#3 -- iA6B GND pad.
c) Nucleo Pin#4 -- iA6B DAT (SWDIO) pad.
Do not connect RST pad.

4. Connect Nucleo to USB connector.

5. Connect 5V/BEC power to iA6B while pushing a SMD Switch on iA6B S1. LED flashes FFF __ FFF __ FFF __......

6. Run ST-LINK Utility and set Address 0x08000000 and Size 0x8000, then click connect button. Ignore some warning , Open file - V1.6 firmware and load, then press Ctrl-P (program and verify).

7. That's all.