Example Code for UNIHIKER K10&M10 - Battery capacity
Last revision 2026/02/03
The article demonstrates battery monitoring code for UNIHIKER.
Hardware Preparation
If Using UNIHIKER K10
- UNIHIKER K10 * 1
- Multi Function Expansion Board for UNIHIKER * 1 (Both “For the UNIHIKER K10-Only” and “For the UNIHIKER K10 & M10” are supported, but “For the UNIHIKER K10 & M10” is recommended, as it allows for easier program uploading and debugging even when using only the K10)
If Using UNIHIKER M10
- UNIHIKER M10 * 1
- Multi Function Expansion Board for UNIHIKER * 1 (Only the “For the UNIHIKER K10 & M10” option is supported)
Note: The multi-functional expansion board requires separate power supply when IN use. It can be powered by installing an 18650 battery or from the USB IN of the expansion board, and the PWR power supply switch needs to be turned on.
Software Preparation
If Using Mind+
- Mind+ Download
- Mind+ User Extension: https://github.com/YeezB/ext-UnihikerExpansion
If Using Arduino IDE
- Arduino IDE Download
- Arduino library: https://github.com/dfrobot/DFRobot_UnihikerExpansion
Use UNIHIKER K10 & Mind+

Use UNIHIKER K10 & Arduino IDE
#include "DFRobot_UnihikerExpansion.h"
#include "unihiker_k10.h"
UNIHIKER_K10 k10;
uint8_t screen_dir = 2;
DFRobot_UnihikerExpansion_I2C eunihiker(&Wire);
void setup()
{
k10.begin();
Serial.begin(115200);
while(!eunihiker.begin()){
Serial.println("NO Deivces !");
delay(1000);
}
eunihiker.setMotorPeriod(eMotor1_2, 255);
eunihiker.setMotorPeriod(eMotor3_4, 255);
k10.initScreen(screen_dir);
k10.creatCanvas();
}
void loop()
{
k10.canvas->canvasText("Battery:", 1, 0x0000FF);
k10.canvas->canvasText((String(eunihiker.getBattery()) + String("%")), 2, 0x0000FF);
k10.canvas->updateCanvas();
Serial.println(eunihiker.getBattery());
delay(1000);
}
UNIHIKER K10 Result

Use UNIHIKER M10 & Mind+

Use UNIHIKER M10 & Python
import sys
sys.path.append("/root/mindplus/.lib/thirdExtension/drobot_yeezb-unihikerioexpansion-thirdex")
import time
from unihiker import GUI
from pinpong.board import Board
from dfrobot_unihiker_expansion import UnihikerExpansion
u_gui=GUI()
Board("").begin()
eunihiker = UnihikerExpansion()
while True:
BAT=u_gui.draw_text(text="Battery:",x=0,y=0,font_size=20, color="#0000FF")
bat=u_gui.draw_text(text=(str(eunihiker.get_battery()) + str("%")),x=0,y=25,font_size=20, color="#0000FF")
time.sleep(1)
bat.remove()
UNIHIKER M10 Result

Was this article helpful?
