Skip to content

bguest/house-of-enlightenment

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

House of Enlightenment

https://douglasruuska.com/tower-of-light/

http://mikelambert.me/house-of-enlightenment

Quick Start

If you are not interested in the nitty gritty and just want to run the server and simulator with pretty lights, then do the following. Otherwise, read more below.

Window 1 - Javscript Simulator

Make sure you have the latest LTS of node from https://nodejs.org/en/ (currently v6.11.0) First time setup:

npm install -g gulp-cli // installs gulp cli globally (only needed once per computer)
npm install             // installs projects dependancies
gulp build-all          // compile the simulator, contorls, and hoe client files

Actually run the simulator and controls:

# Run with default layout file (`layout/hoeLayout.json`)
gulp hoe

Window 2 - Python

We have tested on python 2.7.x. First time setup:

cd python
pip install -r requirements.txt
pip install -e .

Then run the server script:

python ./python/hoe/houseOfEnlightenment.py

Javascript Simulator and OSC Controls

The repo contains a javascript simulator that listens for OPC information and renders the pixels in the browser.

Below is the most common command for starting the simulator. If you are not developing on the simulator, this is likely all you need. Upon launching, the server will be running on http://localhost:3034. For more information, read here

# Run with default layout file (`layout/hoeLayout.json`)
gulp hoe

Run Python OPC light server

A python middlelayer is responsible for receiving input data via OSC, selecting which animations should be displayed, and pushing the current frames to the pixel controllers (beagle boards or the javascript simulator) via OPC. For more information, including controlling and contributing animations and interacting with the server while it's running, read here

To run the python server with default settings, use:

python ./python/hoe/houseOfEnlightenment.py

To navigate between animations, you can type "next" or "scene " into the console. You can also replicate button input with /input/button . For example "/input/button 1 4". To exit, "quit" in prefered over an interrupt such as ctrl+c

The defaults uses the house of enlightenment layout file and the local servers file. This sends OPC socket messages with the pixel data to http://localhost:7890 (the javascript simulator server is listening for OPC messages on port 7890) and OSC button control messages to http://localhost:57121.

Known Issues

  • Currently if the python server crashes or exits via ctrl-C (instead of "quit"), it can cause trouble reconnecting to the javascript simulator on the next run. You'll need to restart the simulator to handle this.
  • The simulator stores button state at the client side. For animations that light up buttons, you may need to refresh the client and then reinitialize the scene.

BeagleBone LEDScape controller info

https://github.com/house-of-enlightenment/LEDscape

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 40.5%
  • C++ 22.3%
  • JavaScript 17.4%
  • Other 16.0%
  • CSS 1.0%
  • C 0.9%
  • Other 1.9%