Skip to content
forked from andrewjw/i75

Wrapper around Pimoroni's Interstate75 library to allow for local testing

License

Notifications You must be signed in to change notification settings

everycastlabs/i75

 
 

Repository files navigation

i75

Pipeline PyPI version PyPI - Downloads Coverage Status Documentation Status

A wrapper around Pimoroni's interstate75 library which allows for running locally and easier testing.

This library provides a module, i75, which contains additional useful functionality over what is provided by MicroPython and the Pimoroni libraries. For full details, please read the documentation.

This library also provides a script, i75, which is used when running programs on a normal PC for testing purposes. This is done by a set of modules which replicate the functionality of the native Interstate75(W) hardware, in particular using PyGame to represent a Hub75 LED matrix.

This emulation is far from perfect but hopefully allows a quicker development cycle than deploying to the physical hardware. In particular, problems may include:

  • Full Python3.x is used, so syntactic and semantic differences with MicroPython won't be picked up.
  • Your PC is many times more powerful than the RP2040 chip, so CPU limits won't be picked up.
  • Our emulation of built-in functionality may be incomplete or incorrect.
  • Sensors or additional hardware are not emulated.

Any help improving these limitations is most welcome. Please see CONTRIBUTING.md for more details.

Installation

To install this library either check it out from GitHub or install it from PyPI.

git checkout https://github.com/andrewjw/i75.git
cd i75
sudo python3 setup.py install

or

pip3 install i75

Running On A PC

To run your script simply follow i75 with the path to your script. There are examples provided in the examples directory, which can be run as follows.

i75 examples/clock/clock.py

Running On Interstate75

To install the library on your Interstate75 run install.sh. This will create an i75 directory on the Raspberry Pi Zero, and copy across the required files.

Install your script in the normal way, e.g.

ampy examples/clock/clock.py main.py

For ampy to work you need to tell it the correct device to use to communicate with Raspberry Pi Pico. To do that either run install.sh -p /dev/tty.usbmodemN or set the AMPY_PORT environment details. For more details about ampy, check out their documentation.

About

Wrapper around Pimoroni's Interstate75 library to allow for local testing

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.4%
  • Shell 1.6%