Example Code for UNIHIKER K10&M10 - Retrieve DS18B20 temperature sensor data
Last revision 2026/02/03
Retrieve temperature data using DS18B20 with 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.
Extra hardware
Gravity DS18B20 Digital Temperature Sensor * 1
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
Hardware Connection

Use UNIHIKER K10 & Mind+

Use UNIHIKER K10 & Arduino IDE
#include "unihiker_k10.h"
#include "DFRobot_UnihikerExpansion.h"
DFRobot_UnihikerExpansion_I2C eunihiker(&Wire);
UNIHIKER_K10 k10;
uint8_t screen_dir=2;
void setup() {
k10.begin();
while(!eunihiker.begin()){
Serial.println("NO Deivces !");
delay(1000);
} Serial.println("Device connected !");
eunihiker.setMode(eC0, eDS18B20);
k10.initScreen(screen_dir);
k10.creatCanvas();
}
void loop() {
k10.canvas->canvasText("18B20 Temp:", 1, 0x0000FF);
k10.canvas->canvasText((eunihiker.get18b20Value(eC0)), 2, 0x0000FF);
k10.canvas->updateCanvas();
}
UNIHIKER K10 Result

Use UNIHIKER M10 & Mind+

Use UNIHIKER M10 & Python
import sys
sys.path.append("/root/mindplus/.lib/thirdExtension/drobot_yeezb-unihikerioexpansion-thirdex")
from unihiker import GUI
from pinpong.board import Board
from dfrobot_unihiker_expansion import UnihikerExpansion, IONum, IOType
u_gui=GUI()
Board("").begin()
eunihiker = UnihikerExpansion()
eunihiker.set_mode(IONum.C0, IOType.DS18B20)
bat=u_gui.draw_text(text=(str(eunihiker.get_18b20_value(IONum.C0)) + str("℃")),x=0,y=0,font_size=20, color="#0000FF")
while True:
bat.config(text=(str(eunihiker.get_18b20_value(IONum.C0)) + str("℃")))
UNIHIKER M10 Result

Was this article helpful?
