neophob / StripInvaders

A LightStrip system controlled by your Smartphone or Tablet. Connect StripInvaders to your LAN and enjoy your own Lightshow! Features: 9 different Light Modes (more will follow), stepless adjust the RGB values,​​ stepless adjust the animation speed, control StripInvaders wireless with your iPhone/iPad/Android Phone/Android Tablet (OSC), Bonjour and mDNS support
http://pixelinvaders.ch/?page_id=396
63 stars 14 forks source link

StripInvaders

A led strip system controlled by your Smartphone or Tablet. Connect StripInvaders to your LAN and enjoy your own Lightshow!

Features:

Website: http://pixelinvaders.ch/?page_id=396

(c) 2011 by Michael Vogt michu@neophob.com

Required Hardware:

OSC Messages:

Name:   Type:   Range:   Descr:
/knbr   float   0..1     R Color Vale
/knbg   float   0..1     G Color Vale
/knbb   float   0..1     B Color Vale
/delay  float   0..1     Delay Value
/audio  float   0..1     Enable audio sync (toggle button)
/mode   float   0..1     if mode = 1, switch to next effect
/modd   float   0..n     direct change to effect x
/cfg    4x int           first byte must be 66 (magic byte), then DATAPIN, CLKPIN and then LEDCOUNT. this change is 
                         stored in the eeprom. The Arduino will reboot after the update

Effects:

00: color lines
01: solid color (white)
02: solid color wheel fader
03: solid color random fader
04: color wheel aka rainbow
05: knight rider 1 mover
06: knight rider 4 movers
07: knight rider 8 movers
08: knight rider block
09: xor 1
10: xor 2
11: xor 3
12: xor 4
13: xor 5
14: xor 6

Network:

DHCP Enabled (and needed!)
MAC: 00:00:AF:FE:BE:01
mDNS: invader.local (ping invader.local)

TODO:

Misc:

OSC GUI

StripInvaders provide some ready to use OSC GUI's for different OS:

TouchOSC

Get TouchOSC from the Apple App Store. You can use TouchOSC Editor or iTunes to copy the iPad or iPhone interface from the OSCGUI subdirectory. See http://hexler.net/docs/touchosc-editor for more information.

Control

Get it from the Google Play Store. After starting the application press on the + button on top to add the StripInvaders interface. Enter the URL https://raw.github.com/neophob/StripInvaders/master/OSCGUI/Android-Control-Phone.js for a Phone or https://raw.github.com/neophob/StripInvaders/master/OSCGUI/Android-Control-Tablet.js for a Tablet, select the StripInvaders from the Destination tab and you're ready to go.

Development Hints

The main issue is the small ROM on arduino (<32kb) when using all libraries. Tested with Arduino v1.0.1. Do not use Arduino v1.0 as there are some nasty UDP errors (duplicate packages).

EthernetBonjour

-> I use only one service: #define NumMDNSServiceRecords (1)