Author Archives: hobby16

Charge Doctor V2, auto-shutdown function

For maximum battery life, it is best to avoid overdischarge and overcharge. It is generally admitted that the ideal range should be within 20% to 90% of full charge, to be kept as often as necessary, when possible, especially for happy owners of large capacity batteries like 520Wh of the Firewheel F520, even 680Wh (!) on some Gotway or KingSong wheels.

On electric monocycles or other electric wheelies (bike, hoverboard, bikeboard, gyropods…), overdischarge is avoided by the main controller board by warning and stopping. But all of them are designed to charge to full charge, which is contrary to recommanded practices above. It is nonetheless what happens with all products for obvious marketing reasons since price is in part determined by the nameplate battery capacity, which corresponds to a full charge.

The Charge Doctor V2 auto-shutdown function is precisely intended to address this inconvenience by cutting power when charge current drops under a user adjustable threshold to avoid overcharge. The auto-shutdown can of course be disabled so Charge Doctor V2 would function as any conventionnal (advanced) charge monitor.

Important : a full charge is still required occasionnaly, e.g. 1 every 10 or 20 charging sessions, to ensure the BMS ( (battery management system, the embedded battery controler board) would trigger charge balancing. Balancing, whose importance is most often exagerated, is still necessary on Lithium batteries. So plan some 100% full charges from time to time if you decide to mostly charge to 80% or 90%.

An example of charge session with auto-shutdown is described below to highlight important points of this process. It is the charge of my Firewheel F260 (batteries 16S2P, 260Wh stated capacity), datalogging is by Charge Doctor V2 and graphic display is by KST (see “Graphic Display” post for more details on how to use these tools).

The Firewheel was driven until pedals tilt-up, meaning the battery was empty before charging (voltage starts at 57.7V ie 3.6V, see “How to take care of your unicycle batteries‘). Charger is a 2A version and auto-shutdown threshold has been adjusted to 1.4A. The total datalogging duration is 3h34min30s (bottom-right number on the graph).

Charge graph of Firewheel F260 with auto-shutdown at 1.4A

A : end of the constant current stage, start of constant voltage stage
B : auto-shutdown by Charge Doctor
C : charging restart (by user)
D : charging up to 100% capacity

The charge session begins by the constant-current stage at 2A, lasting about 100 minutes, until A. Then constant voltage stage kicks in : voltage remains at 67.3V and stop increasing since it corresponds to 4.2V, the maximum voltage per cell. Note that, theorically, reaching the constant voltage phase should be sufficient to trigger cell-balancing by the BMS. After point A, current drops rapidly to point B, where Charge Doctor shutdowns current automatically. At C, Charge Doctor is switched on again to resume charging to point D, where the battery is virtually 100% full.

This full charge graph leads to the correspondance table of currrent threshold – % charge below (values are taken directly from the file “log.txt”). For example, a 1.0A threshold will end charging at 90% capacity.

For 4A or 5A fast chargers and/or different batteries, thresholds are naturally different so such graph must be logged initially by the user to determine the characteristics of his personal setup.

threhold (A)
Battery capacity (Wh) % of full charge


1.52 232.3 85%
1.40 235.6 86%
1.20 242.0 89%
1.00 245.7 90%
0.80 250.6 92%
0.60 256.0 94%
0.40 261.5 96%
0.30 264.4 97%
0.20 267.0 98%
0.10 272.7 100%

N.B. with the Firewheel charger, charge current does not drop to zero, even after hours (even after a night according to my tests). This means that the charger does not cut current at end of charge which is really bad for lithium batteries! My other chargers don’t behave like this, fortunately. Anyway, all chargers systematically charge to full capacity, which is always above the 90% recommanded level. So use the Charge Doctor V2 auto-shutdown, when you can.

Charge Doctor V2 – 10A

Charge Doctor V2 is an upgrade of the previous battery charge controller. It retains the original features of the product like a selectable charge display in Wh or Ah, user-recalibration and storage of calibration factors in eeprom, one-button user interface, datalogging by a transmit serial output. Enhancements have been added :

  • maximum current up to 10A
  • wider voltage range
  • bigger display digits
  • end-of-charge auto shutdown with adjustable current threshold

With its wider range of voltages and currents, V2 is suitable for charge monitoring of most light electric vehicules, especially electric monowheels, but also bikes, scooters, hoverboards, gyropods, e-bikeboards…


Charge Doctor V2 features

  • Voltage: 20.0V – 100.0 V
  • Current : 0.00 – 10.00 A
  • Charge : 0.000-1000 Ah with automatic decimation
  • Energy : 0.0-10000 Wh with automatic decimation
  • End-of-charge adjustable current threashold : 0.1-8.0 A
  • Datalogging serial output 9600 bauds TTL
  • In/out with 3-pin GX16 aviation connector (Airwheel & clones, TG, iezWay, Gotway, Firewheel, most e-bikeboard…) or Lemo connector for Ninebot
  • Dimensions : 85x50x20 mm
  • Weight : 65 g


At startup, displays “C-Dr” (top) and firmware version “2.00” (bottom).


Top display shows alternatively voltage (“65.7U”) and current in amps (“1.99A”).

Image Image

Bottom display has 3 display modes :

Short click => mode change
1. Wh
2. Ah : “Ah” alternates with value to differentiate from Wh mode
Auto ; flashing display of auto-shutdown current threshold
( auto-shutdown disabled => current = 0.00A)
Long click
1. & 2. reset Ah and Wh counters
3. Enable/disable auto-shutdown (“0.00A” = disabled).
N.B. auto-shutdown threshold can
only be changed in “adjustment” mode

Important : after auto-shutdown, the internal switch is in OFF state and no current can pass. To enable charging again, switch ON the internal switch using either methods :

  • long click when in auto-shutdown mode (see above)
  • disconnect/reconnect Charge Doctor (internal switch is always ON at startup)


Enter adjustment mode by holding the button when powering on.
Button hold < 5s => mode 1) auto-shutdown current threshold adjustment
Button hold > 5s => mode 2) voltage & current calibration

1) Adjustement of auto-shutdown current threshold

Top led displays actual parameter. With no button click, parameters changes every 2s in a round-robin schedule for all available parameters. Any click hold up the actual parameter 6s before the round-robin cycle restarts.
“Auto” : auto-shutdown mode. Bottom led displays the shutdown threshold ( “1.00A”). When charge current drops below this threshold, charging is stopped by Charge Doctor. Change by 0.1A steps by clicking the button or by holding the button
Important : disabling auto-shutdown (display = “0.00A”) can only be done in normal mode (see above), not in adjustment mode
“Pr1” : parameter 1. Value = 1 => deep standby mode with Led display off at auto-shutdown. To power on, click button or disconnect/reconnect Charge Doctor.
“PR2”, … “PRn” : future extension

If no click for more than 6s, this adjustement mode is terminated and Charge Doctor reverts back to normal mode.

2) Calibration

Voltage and current are calibrated at +-10mV and +-1mA respectively before shipping. Avoid recalibration unless you have accurate instrumentation.

Top led displays actual parameter. With no button click, parameters changes every 2s in a round robin schedule for all available parameters. Any click keeps the actual parameter 6s before the round-robin restarts. To quit this calibration mode and revert back to normal mode, power-off then on Charge Doctor.

“down U” : decrease voltage gain
(about 10mV per click)
“UP U” : increase voltage gain
“down A” : decrease current gain
(about 1mA per click))
“UP A” : increase current gain
“00 A” : change current offset to calibrate 0.00A
ATTENTION : connect no charge (zero current) and hold button 2s to calibrate (short click is ignored to filter out manipulation error)

Data logging

Charge-Doctor transmits data every 10s by serial 9600 bds protocol, TTL level, 8 bit data, 1 bit stop, no parity. Data are in ASCII format with separator = coma. The format is identical to the first version Charge Doctor, see the blog’s article on Graphic Display for steps to download and process data in realtime.
N.B. Charge Doctor does not store data. For data logging, a PC must be connected during all the charge record.

Connection to dongle : the Charge Doctor’s output Tx must be connected to the serial-USB converter dongle’s input Rx :


IMPORTANT : at power-up, Charge Doctor sends a 2 line header containing various information such as the firmware version :

Charge Doctor V2.00-10A by HMC 01/2015
Time(s) Voltage(x0.1V) Current(x10mA) Charge(x0.1Wh)

These two lines will be recorded in file “log.txt” but they are not parsable by the grapher KST so the realtime display will stop : KST is quite pricky as to the data format and any error will stop the graph updates. Data and graph should change in realtime in KST when new data is logged into “log.txt” by datalogger.exe so if KST’s display freezes, then “log.txt” contains errors. To remove errors, quit KST and edit “log.txt” using a text editor.

The ininterpretable header lines can be removed from “log.txt” by two methods :

  • restart datalogger.exe 2 secondes AFTER restarting Charge Doctor so the header gets lost and not logged
  • Click “Stop logging”, UNcheck option “Append to file” then click “Start logging” in datalogger.exe => old file “log.txt” is deleted and replaced by a new blank file for logging, hence, without the uninterpretable header.

Pictures of Charge Doctor V2, versions with GX16 connector (most electric monocyles, bike, hoverboard, bikeboard) and Lemo connector (Ninebot monocycle).
(click picture for high resolution image)



How to take care of your unicycle’s battery

Most unicycles use 16 LiIon battery cell packs. There are a few variants, InMotion battery has 18 cells, Pinwheel uses Lipo batteries, first generation Solowheels have LiFePo batteries, so the thresholds listed below are to be adapted but the operating principle remains unchanged.

All batteries have a BMS board (battery management system) to manage the cells, especially to balance the voltages of 16 cells and to automatically shut off charging current to prevent overcharge. A large majority of BMS also features overdischarge protection by cutting off power (without warning !!!), a horribly faulty design responsible for countless accidents, sometimes serious, see this blog’s BMS many articles.

Note that according to Shane Chen himself, Solowheel’s founder and popularizer of the electric unicycle concept, his BMS never cuts off power during a ride (vital requirement for an unicycle!). If the battery has a problem, the BMS just reports it to the mainboard thanks to a dedicated signal wire, the only reasonnable thing to do.

Battery capacities

To double the capacity of a 16S1P battery pack, an additional cell is welded in parallel to each existing cell to make a 16S2P (16 series or 2 parallel cells). Smallexis made such mod for his Airwheel Q3 battery, find it with the “search” button). To triple the capacity, add two cells (16S3P), to quadruple, add 3 cells (16S4P eg on the Firewheel 680Wh). The most common variant is two parallel packs, each with its own BMS, eg two packs 340Wh in parallel to have a capacity of 680Wh (Gotways).

Important thresholds

Here are some important values for a ??LiIon pack. They are useful to know to charge & discharge properly, to make a quick diagnosis in case of the wheel’s power supply problem and to monitor battery (inevitable) aging.
Values are for cell and pack (1 pack = 16 cells in series, values ??measured by the Charge Doctor )

Note V cell V pack Threshold
1 3.0 48 Quick deterioration
2 3.2 51 Minimum, avoid going below
3 3.45 55 Stop limit on most wheels
4 3.6 58 Storage voltage
5 3.7 60 For calculating the nominal value Wh
6 4.0 64 Open circuit after full load
7 4.1 66 Balance triggering by BMS
8 4.2 67.2 Constant voltage charge threshold

(1) the battery may not be destroyed by such a low voltage, it only “takes a hit”. This is a deep discharge state. Avoid at all costs !
(2) this limit is normally never reached because the wheel’s mainboard emits low voltage warnings (buzzer and/or pedals tilt-up) and forces the rider to descend before. If you have this value or lower, then your package has a problem, usually some defective cells.
(4) indicative value, may vary. Use this value to get 50% charge state for storage (a Charge Doctor counting capacity from voltage and current would be much more accurate). The goal is not to store the battery neither full (high voltages tend to stress the cell’s electrolytes separation membrane), nor empty to avoid self-discharge from deeply discharging the battery (see (1)).
(6) after the load, open circuit (no load) voltage tends to sag, especially if the battery is old.
(8) constant voltage charging zone: the charge current gradually decreases. When it is below a few tens of mA, the load is automatically switched off by the BMS. It can also be manually turned off by the user when the red LED on the charger switches to green, which corresponds to a charging current less than 0.25A. At this point, the battery is almost 100%, keeping on charging is unnecessary because only a few Wh would be added.
(8) The voltage at the charging socket (read by the Doctor load) may be 68V due to the BMS’s voltage drop, especially the reverse voltage protection diode.

Charge profile example (Firewheel 260 Wh)

Preserve the pack

  1. It is preferable to not charge more than 90% (even 80%), nor to discharge to less than 10% of the nominal capacity in order of the reduce stress to the battery. It’s not always possible with low capacity batteries (eg 130Wh) so if you have a beefy battery, just do it.
    A 100% charge or discharge to 0% results in a more stress to the electrolyte separation membrane and the electrodes respectively and reduces the number of usefull charge / discharge cycles. A LiIon battery does NOT like overcharge.
    Most of the times, it’s OK to stop charging when the current drops below 1A on a 2-ampere chargers (see graph). For discharge, the wheels stop early enough by raising the pedals so that we do not have to worry about a deep discharge.
  2. If the wheel is not used for a long time, eg more than a year, the battery should be voltage monitored and if necessary recharged to 50% to compensate for self discharge. However, LiIon battery’s self-discharge is very small (compared to NiCd or NiMh batteries) so checking it every year is enough.
  3. Log at least once the battery charging curve (using the Charge Doctor) and store it for later comparison in case of problems or to find the battery aging conditions after a few months or years of use. The reference curve gives a lot of important information, including how to determine the duration for charging to 90% (read the voltage at the beginning of charge, place the point on the curven use the x-axis to determine the time it takes for current fall below 1A, and use this duration to end the charge).

King-Song / Gotway comparison

King Song is a promising brand that deserves recognition given the incredibly neat finish of its wheels:  coated electronic board (nothing on the Gotway), tightly sealed compartments, mainboard aluminium heat sink thermally facing the wheel to greatly increase heat dissipation,  comfortable foam leg rest. Ergonomically, I appreciate the following points which are desperately needed on the Gotway: not thicker than a Solowheel therefore much more comfortable for the legs, removable battery, fanless and thus totally silent charger, head and rear lights, USB socket 5V / 2A to recharge GPS, smartphone, flashlight, camera …

King Song wheels are copies of Gotways as to the electronics and the motor, so the riding performance is that of Gotways.
Here is a comparison of the mainboards of the two 14 ” wheels, they both share many identical components.

1: STM32 Cortex F103C8T uP (48 pins)
2: step down power converter
3: current sensor
4: gyroscop IC
5: mosfet driver
6: input capacitor
7: additional switching power supply for the USB connector (and lights?)
8: Unknown

Mainboard King Song 14 “ Motherboard King Song 14

Mainboard Gotway 14 “ Motherboard Gotway 14

Other infos:

  1. Images & comments: (useGoogle Translate)
  2. Quick Review:

Airwheel Q3 & clones, how to double battery

Mod by Smallexis from

The Airwheels Q3 and its clones has big housing and a lot of internal space for a big battery pack. To double the capacity of the anemic original pack from 130Wh to 260Wh, Alexis has soldered individual cells recovered from an spare pack in parallel with existing cells, one by one. He has also shunted the BMS, of course.

Continue reading

Airwheel – BMS Shunt

Airwheel Q3

The Airwheel Q3 260wh has two paralleled 130Wh battery packs, each with its own  BMS (battery management system). Even this setup, if not shunted, is still dangerous, tatane33 has had a fractured jaw because of a sudden power cut on his Q3. Peppuzzo has shunted both BMS for added security. He wants a fail safe wheel, which is understandable even if shunting just one BMS is probably enough. Continue reading

BMS, how to make your wheel safer

Most unicycles use bicycles’ BMS (Battery Management System) which has a overdischarge cut-off circuit (T1) to prevent the battery from discharging under the LiIon recommanded voltage. It’s a feature usefull for off-the-shelf bicycles’ batteries but for monocycles, it’s
1) unecessary since the mainboard deals quite well with voltage warning
2) utterly, incredibly stupid since a cutoff by the BMS results in a faceplant for the rider. In other words, the wheel’s designer prefers to protect the battery by hurting the user!!! Many many users have been harmed, especially when the wheel is cold (under 10°C), since the batteries’ internal resistance increases and triggers the cut-off more easily. Continue reading