-
Notifications
You must be signed in to change notification settings - Fork 970
Battery
Most of the Hoverboard mainboards use a 10S2P LIPO Battery (36v Nominal - 42v Charged ).
If you want to use a battery with less or more cells in series, change BAT_CELLS parameter in config.h (10 by default).
The Maximum voltage that can safely be used is 50.4V (12S battery), but do it at your own risk.
For higher voltage, you need to replace the 63v capacitors highlighted in red in the following picture and the mosfets by ones rated for 80v/100v depending on your needs.
Below 30v, it could be that the power ON button doesn't work anymore, but the threshold can differ depending on how your board is built.
Below 18v the mosfets might not get the needed 15v for driving the motors.
You can charge the battery through the mainboard pcb or connect the battery directly to the charger through a custom xt60 adapter. If the led on the charger stays green when plugging it in, the battery is probably defective.
Default battery level are for safe use of LIPO batteries.
You can adjust the battery levels to your needs in config.h if you want to use a battery with a different chemistry.
Level | Single Cell Voltage | Sideboard Led | Alert | Enable Parameter |
Ajust Parameter |
---|---|---|---|---|---|
LVL5 | 3.9v | Green blink | BAT_LVL5 | ||
LVL4 | 3.8v | Yellow | BAT_LVL4 | ||
LVL3 | 3.7v | Yellow blink | BAT_LVL3 | ||
LVL2 | 3.6v | Red | Slow beeps | BAT_LVL2_ENABLE | BAT_LVL2 |
LVL1 | 3.5v | Red Blink | Fast beeps | BAT_LVL1_ENABLE | BAT_LVL1 |
DEAD | 3.37v | Power Off | BAT_DEAD_ENABLE |
BAT_LVL1_ENABLE and BAT_DEAD_ENABLE are enabled by default, you can disable it by making it 0 in the config.h file.
You can connect a voltmeter between the middle pin of the TIP127 and ground, it will display battery level when the board is ON.
On some of the boards the wires for the bluetooth/speaker board can be used. (see discussion)
The mainboard consumes 80-90mA with motors disabled, and 160-170mA with motors enabled.
The board will automatically power off after approximately 8 minutes of inactivity by default.
The counter is reset if commands or cruise target are below -30 or above 30.
Parameter INACTIVITY_TIMEOUT can be used to set up the number of minutes of inactivity before power off. It is not very precise.
Battery voltage has to be calibrated to have a more accurate reading, for this you need Debug Serial to be active
- Measure battery voltage with a multimeter and write the value * 100 to parameter BAT_CALIB_REAL_VOLTAGE in config.h
- Turn the board on and wait a minute for the Battery ADC to stabilize
- Read value BatAdc(5) from Debug Serial Output and write it to parameter BAT_CALIB_ADC in config.h
- Save, compile and flash the board
- Value BatV(6) in Debug Serial should match with the measured battery voltage now
If the board is beeping because of low battery level or turning off with the melody
- Make sure you have updated the number of cells in config.h if you use a battery with less cells in series
- Calibrate the battery voltage
- With a battery of low quality/bad health, pulling a lot of current will result in a big battery voltage drop and trigger battery low alerts. You can use a better battery or several similar batteries in parallel
- Check the voltage of your battery when fully charged, if much lower than 42V it could mean some cells are defective (0V)
- Reducing the battery low levels can help but going too low can be risky for your battery
- You can limit the current being drawn to reduce the voltage drop but you will also reduce the power
- Debug Serial can be used to monitor battery voltage
You can turn off the battery dead power off with BAT_DEAD_ENABLE parameter for debugging.
- You are drawing too much current which triggers the over-discharge protection of your BMS. You can limit the current but you will reduce the power
- It can happen if your battery is fully charged and too much current is flowing back (regenerative braking), it can trigger overcharge protection of your BMS
- When using phase advance/field weakening and braking, a voltage higher than the battery voltage can flow back to the battery and trigger the over-voltage protection of your BMS You will have to unplug the battery and plug it again
- This might happen is you are using a battery that has too low voltage