Skip to main content

Main menu for pybricks

Project description

pybricks menu

Main menu for pybricks, by Joey Parrish, 2025

The pybricks firmware doesn't come with a menu or support for multiple programs like the default Spike firmware. This is a simple menu system and basic startup checks to make it easier for kids to get started coding missions.

The startup checks ensure they don't start runs while plugged in, and show battery status while charging. If the battery level is too low on startup, a warning animation will be shown. Please charge to avoid inaccuracies caused by low torque.

Sample usage

from pybricks.hubs import PrimeHub
from pybricks.parameters import Direction, Port
from pybricks.pupdevices import Motor
from pybricks.robotics import DriveBase

from pybricksmenu import main_menu, startup_checks


hub = PrimeHub()
left_motor = Motor(Port.A, Direction.COUNTERCLOCKWISE)
right_motor = Motor(Port.B, Direction.CLOCKWISE)
wheel_diameter = 175
wheel_separation = 200
drive = DriveBase(left_motor, right_motor, wheel_diameter, wheel_separation)
run = 1


def run1(drive: DriveBase) -> None:
    drive.straight(1000)


def run2(drive: DriveBase) -> None:
    drive.turn(720)


startup_checks(hub)

while True:
    run = main_menu(hub, num_items=9, item=run)
    if run == 1:
        run1(drive)
    elif run == 2:
        run2(drive)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybricksmenu-0.0.1.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pybricksmenu-0.0.1-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file pybricksmenu-0.0.1.tar.gz.

File metadata

  • Download URL: pybricksmenu-0.0.1.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pybricksmenu-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0d04ff4fa312c361fa4079edbf795807e36193a22c650300ab02ed7e6d97ee95
MD5 1741289ac1baa809ce0aca6df7d59bff
BLAKE2b-256 8b17536307114ae2f3fc4da266f8c0d140175bd730d4eaa58a1761062776db78

See more details on using hashes here.

File details

Details for the file pybricksmenu-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pybricksmenu-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pybricksmenu-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7f01f73c61dbe24fc328d87e6caa00ccc5c217e7939a725f4ba9f4808ffefa99
MD5 505c14a6cda0fa5915c6e283068032d8
BLAKE2b-256 204ee5eec5873cba1d81b2ff380968f2eae4bb0db584bed25494cc4166c7f44d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page