jsheedy / biofeedback-cube

DIY dotstar LED panel retro pixel art demoscene fx numpy 3d engine

Home Page:http://josephsheedy.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

biofeedback-cube

This project began as an immersive cube of side 4 feet in which one would sit while hooked up to a heartrate monitor. 5 walls of the cubes were to be LED panels while the base was constructed of wood and contained a 12" JBL subwoofer and fullrange speakers. The heartbeat signal would modulate all light and sound reaching the user providing an immersive biofeedback loop.

cube gif

OSC is used as a communications protocol between subsystems such as the heartrate monitor, TouchOSC, or Ableton Live.

I constructed 3 panels and the initial project has pivoted. Now the main usage is driving one of them which is mounted on a wall in a wood frame, controllable by TouchOSC and Ableton.

development

While the target platform is a Rasbperry Pi to drive the LEDs, a simulator is included to enable developing on a mac.

pip install -e .
cube --simulator

installation

installed on raspbian jesse: https://www.raspberrypi.org/downloads/raspbian/

Dotstar LED interface requires https://github.com/adafruit/Adafruit_DotStar_Pi (now deprecated) It required patching for Python 3 via this thread: adafruit/Adafruit_DotStar_Pi#24 (comment)

Development on Adafruit_DotStar_Pi moved to https://github.com/adafruit/Adafruit_CircuitPython_DotStar Moving to this requires supporting CircuitPython on rpi

Numpy/scikit requirements are supplied by BerryConda 3 Install that, then

conda install conda-build
conda develop .

This should result in a cube command. Install the systemd/cube.service service in /etc/systemd/system, run systemctl enable cube and it should start on boot up.

Set any environment variables in /etc/cube_environment.

Logs at sudo journalctl -u cube

About

DIY dotstar LED panel retro pixel art demoscene fx numpy 3d engine

http://josephsheedy.com

License:The Unlicense


Languages

Language:Python 92.9%Language:C++ 7.1%