|
|
|
|
Discussion
ISTD BattGO BG-Linker
Waiting for the BattGO standard to become more popular got myself one of the BG-Linker devices, that allow to connect your BattGO compatible batteries to PC via USB to read battery parameters and set some user preferences (such as e.g. the self discharge time).
![]() To do so you use a PC app ![]() Of course I had to look inside, and it is based on the GigaDevice GD32f150G8U6 MCU (datasheet HERE) ![]() The chip converts the BattGO proprietary, encrypted communication protocol with the battery into a bunch of serial commands exchanged between the dongle and the PC (at 115200 baud) which have the following format: &<COMMAND> <DATA><LF> (where <LF> is the line feed character - 0x0A) The response format is similar: %<COMMAND> <DATA><LF> The full list of commands can be retrieved after typing &HELP<LF> (I've added comment to some of some commands below) Code:
&TEST<LF> - check if dongle connected &CBL<LF> - check if battery connected &UPD<LF> - probably used to enter firmware update mode &CUH<LF> &CDS<LF> &CSI<LF> - returns battery serial number &UHC<LF> &UPC<LF> - returns user parameters (e.g. auto-discharge time) &UVC<LF> - returns current battery state (e.g. cell voltage, temperature, etc.) &UPW<LF> - sets user parameters &RLI<LF> &RLE<LF> &RMC<LF> &CBR<LF> - returns serial number (divided into 4 groups) and manufacturer name &CPR<LF> - returns battery physical parameters (e.g. type, capacity, number of cells, etc.) &HELP<LF> - returns the list of available commands AA SR TR LN DATA CS where: AA - one byte message header (when not a header but part of the actual data it is duplicated - AA AA) SR - most likely one byte determining the message source (messages from the dongle have 0x01 here, messages from the battery have 0x02 here) TR - most likely one byte determining the message target (messages to the dongle have 0x01 here, messages to the battery have 0x02 here) LN - data length in bytes (note that duplicated AAs are not counted DATA - bytes of encrypted data CS - two bytes of the checksum, which is the sum of all the message bytes (except the AA header and the CS itself of course) written in little endian Here are some example messages exchanged between the dongle and the battery Code:
AA SR:01 TR:02 LN:07 DATA:BE 0A BA C6 3A 46 BA CS:8C 03 AA SR:02 TR:01 LN:03 DATA:25 E0 F6 CS:01 02 AA SR:01 TR:02 LN:02 DATA:E7 E7 CS:D3 01 AA SR:02 TR:01 LN:19 DATA:BF CE B8 79 33 A3 B5 AF 29 9F B7 1B 3C 47 B9 F5 39 67 BA 2B 05 AB 85 C6 3D CS:9C 0C AA SR:01 TR:02 LN:04 DATA:1C E0 DC E7 CS:C6 02 AA SR:02 TR:01 LN:13 DATA:31 FC DB 3E 7E AE C2 2A 47 A6 AE 22 71 91 F3 15 77 99 FB CS:46 0A Here is how the battery looks inside (unfortunately no marking on the microporcessor). The LED that can be seen on the left side of the PCB blinks when the battery is self-discharging (this unfortunately cannot be seen when the battery is not opened). ![]() ![]() ![]() |
|
Last edited by pawelsky; Dec 01, 2017 at 09:51 AM.
|
|
|
|
|
the world does not need a proprietary battery telemetry protocol imo
-=dave |
|
|
Thread Tools | |
Similar Threads | |||||
Category | Thread | Thread Starter | Forum | Replies | Last Post |
Mini-Review | ISDT BG-8S Smart Battery Checker with BattGO Technology | czajunia | Batteries and Chargers | 38 | Feb 23, 2018 07:56 PM |
New Product | ISDT T8 BattGo 1000W 30A Smart Battery Balance Charger For 1-8S Lipo Battery | Livershifter | Banggood.com | 10 | Nov 29, 2017 11:38 AM |
New Product | Battgo&ISDT smart battery checker-BG8S | ISDT | Batteries and Chargers | 28 | Oct 05, 2017 01:55 PM |
Discussion | DYS BL_Heli esc USB linker | propflux01 | Multirotor Drone Electronics | 4 | Mar 05, 2017 09:21 PM |
Help! | Using RacerStar USB Linker for KINGKONG OPTO BL_HELI ESC Programming | srREXed | Power Systems | 0 | Jan 30, 2017 01:00 AM |