pico-conway

Cellular automata on a pico…

./pico-conway.png

Cells are colour-coded according to their age. Button A resets, B clears the screen, X adds a randomly-placed glider (this happens randomly without pressing anything). Y toggles screen brightness.

build

hardware

Uses the Rasbperry Pi pico with the Pimoroni pico-display-2

software

Requires the pico C/C++ SDK and the pimoroni-pico libraries.

  1. ensure PICO_SDK_PATH is set correctly (relative to the build dir) in your environment, e.g. export PICO_SDK_PATH=../../pico-sdk-1.3.0

  2. (fork,) clone and build pimoroni-pico

  3. symlink pimoroni-pico in the root of this project.

  4. build the image with mkdir build && cd build && cmake .. && make -j

  5. copy image to device

  6. back of the net!

test

The algorithm itself can be tested/debugged on the host machine using the test harness, e.g.:

 g++ -g -O0 --std=c++17 src/test_conway.cpp src/conway.cpp -o test

GitHub

View Github