
CodeCell includes a built-in BNO085 motion sensor capable of detecting and counting steps using onboard activity algorithms. In this example, you’ll learn how to use the CodeCell Library to read step counts and display them on an OLED screen, turning your CodeCell into a tiny pedometer or wearable fitness tracker.
The BNO085 fuses data from its accelerometer, gyroscope, and magnetometer to recognize walking or running patterns and generate accurate step counts. You can read the total step count at any time with a single function:
uint16_t steps = myCodeCell.Motion_StepCounterRead();
To enable this mode, initialize motion sensing with:
myCodeCell.Init(MOTION_STEP_COUNTER);
Once initialized, CodeCell continuously tracks steps internally and updates the count whenever you call the function above.
This example reads the live step count and displays it on a small OLED screen (SSD1306). Connect your OLED’s GND, 3V3, SDA, and SCL pins to the lower side of CodeCell.
#include <CodeCell.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
CodeCell myCodeCell;
/* OLED Display Configuration */
#define SCREEN_WIDTH 64
#define SCREEN_HEIGHT 32
#define OLED_RESET -1
#define SCREEN_ADDRESS 0x3C
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
uint16_t step_counter = 0;
void setup() {
  Serial.begin(115200);
  myCodeCell.Init(MOTION_STEP_COUNTER);  // Enable step counter mode
  if (!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
    Serial.println("Display Error");
  }
  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(SSD1306_WHITE);
  display.display();
  delay(2000);
}
void loop() {
  if (myCodeCell.Run(10)) {              // Run loop at 10 Hz
    step_counter = myCodeCell.Motion_StepCounterRead();  // Read step count
    display.clearDisplay();
    display.setCursor(5, 16);
    display.print(F("Steps: "));
    display.print(step_counter);
    display.display();
  }
}
MOTION_ACTIVITY mode for walking or running detection.
Join our Community ~ Be the first to know about new products and get exciting deals!
            © 2025 Microbots.