To use the M5Bala, you need the M5Stack FIRE or M5GO (White).
Blockly
to Python
.from m5stack import *
from m5ui import *
from m5bala import M5Bala
import i2c_bus
clear_bg(0x111111)
m5bala = M5Bala(i2c_bus.get(i2c_bus.M_BUS))
btnA = M5Button(name="ButtonA", text="ButtonA", visibility=False)
btnB = M5Button(name="ButtonB", text="ButtonB", visibility=False)
btnC = M5Button(name="ButtonC", text="ButtonC", visibility=False)
title0 = M5Title(title="Title", fgcolor=0xFFFFFF, bgcolor=0x0000FF)
title0.setTitle('calibrate start')
wait(2)
sampleCount = 2000
gyroXSum = 0
gyroYSum = 0
gyroZSum = 0
for _ in range(sampleCount):
gyroXYZ = m5bala.imu.gyro
gyroXSum += gyroXYZ[0] # X
gyroYSum += gyroXYZ[1] # Y
gyroZSum += gyroXYZ[2] # Z
gyroXMean = gyroXSum / sampleCount
gyroYMean = gyroYSum / sampleCount
gyroZMean = gyroZSum / sampleCount
m5bala.imu.setGyroOffsets(gyroXMean, gyroYMean, gyroZMean)
title0.setTitle('balance start')
while True:
m5bala.balance()
wait(0.001)
m5stack
library in the Arduino IDE's Library Manager.<img src=" https://static
-cdn.m5stack.com/resource/docs/static/assets/img/getting_started_pics/m5bala/bala_quick_start_19.webp" width="100%">
NeoPixelBus
library in the Arduino IDE's Library Manager.MPU6050_tockn
library in the Arduino IDE's Library Manager.Connect the M5Core to the computer. Click Tools
-> Port
and select the serial port used by the device.
For the Board
option, select M5Stack-Core-ESP32
or M5Stack-Fire
.
git clone --recursive https://github.com/m5stack/M5Bala.git
Sketch
-> Include Library
-> Add .ZIP Library...
. Choose the downloaded M5Bala
file.File
-> Examples
-> M5Bala
-> Basic
.