B2OP
LEGO® Powered Up compatible hub

B2OP Hub

A custom ESP32-S3 hub speaking LEGO Power Functions 2. Program it in MicroPython, drive real LEGO motors, emulate an official hub, or build something entirely new.

B2OP> ready

What it does

4× LPF2 ports

Drive LEGO motors and read sensors on four Powered Up ports.

Hub emulation

Pretends to be an official hub so the LEGO app can connect and control it.

Control other hubs

Talk to other LPF2 hubs as a client — chain devices together.

I²C expansion

Extra I²C port for sensors, displays, and custom peripherals.

160×128 LCD

On-board ST7735 screen driven by LVGL, scriptable from MicroPython.

MicroPython

Write your logic in Python. The lpf2 and lvgl modules are built in.

Open-source pieces

The hub itself is a personal project, but the LPF2 protocol layer and its Python bindings are open-source and reusable.

Get started

Firmware notes, wiring and API reference all live in the docs. Source is browsable in the web IDE.