Installation overview

August 14, 2026 · View on GitHub

pydevices-examples supports three install channels. Pick based on whether you need the full repo, source files on device, or precompiled bytecode.

Comparison

ChannelFormatInstall toolIncludes examplesIncludes utils
Full cloneEntire repogit cloneYesYes
GitHub MIPSource .pymip / mpremote mipOptional (examples.json)Yes (utils.json)
PyDevices MIPPrecompiled .mpymip with custom indexNoNo

For recommended board setup flows, see pydevices install workflows.

What gets installed

Product libraries (canonical source in pydevices, published through MIP and TestPyPI):

  • eventsys — optional application event traffic controller
  • audiodev — portable PCM audio interfaces
  • displaydev — display drivers (BusDisplay, SDLDisplay, PGDisplay, etc.) from pydevices
  • multimer — cross-platform timers; see multimer (pydevices)
  • events / keys — event types and key codes (pydevices)

Sister packages (separate repos, installed from the same PyDevices MIP index):

Optional packages:

  • utils — optional extensions (framebuf shim, console, displaybuf, tft_config, …); byteswap / mip / viper_tools / keypins / wifi / frame_recorder come from pydevices utils/
  • examples — demo scripts
  • Bus/touch helpers — see pydevices packages

Board support (pydevices):

  • Optional prebuilt board_config.py packages per hardware — see board configs and install workflows
  • Display and touch drivers under that repo’s drivers/
  • Desktop SDL (usdl2) via the MIP desktop board package or pydevices-desktop on TestPyPI

PyPI / pip (TestPyPI)

Pure-Python CPython wheels are on TestPyPI for maintainer testing (not production PyPI). Install with both indexes so PyDevices packages and PyPI-only dependencies resolve:

pip install \
  -i https://test.pypi.org/simple/ \
  --extra-index-url https://pypi.org/simple/ \
  pydevices-desktop pydevices-eventsys
  • -i TestPyPI — primary index for prefixed PyDevices distributions (pydevices-displaydev, pydevices-eventsys, pydevices-desktop, …).
  • --extra-index-url PyPI — secondary index for dependencies published only on pypi.org (for example pygame-ce when using PGDisplay; still import pygame at runtime).

Omitting either index causes pip to fail: TestPyPI-only packages are not on PyPI, and PyPI-only dependencies are not on TestPyPI. See the product package publishing guide.

For day-to-day desktop work without pip, use a full clone or desktop quick start.

After installing

  1. Provide your own board_config.py for your hardware, or optionally install a prebuilt board package from pydevices.
  2. Follow the quick start for your platform:

Troubleshooting

See Troubleshooting for import errors, MIP failures, and display issues.