Blinkenwall.com: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
Zeile 61: Zeile 61:
[[Benutzer:Georg|Georg]] and [[Benutzer:WSys|WSys]] replaced the Fonera/Arduino with a Raspi. Networking capability was restored later by [[Benutzer:Sqrt2|sqrt2]].
[[Benutzer:Georg|Georg]] and [[Benutzer:WSys|WSys]] replaced the Fonera/Arduino with a Raspi. Networking capability was restored later by [[Benutzer:Sqrt2|sqrt2]].


To stream to the Blinkenwall from your computer, open http://10.20.30.26/togglesocket.cgi and wait for the test frame to appear, then send RGB data for the 45 pixels as before, but without the PPM header (9*5*3 = 135 bytes per frame). Open the URL again to switch back to animations.
To stream to the Blinkenwall from your computer, open http://10.20.30.26/cgi-bin/togglesocket.cgi and wait for the test frame to appear, then send RGB data for the 45 pixels as before, but without the PPM header (9*5*3 = 135 bytes per frame). Open the URL again to switch back to animations.


== Videos ==
== Videos ==

Version vom 2. Februar 2014, 23:14 Uhr

Webinterface Screenshot

Blinkenwall..

  • is the wall between our mainroom and the library
  • in this wall are 9x5=45 glassbricks installed
  • next to every glassbrick there is one RGB-led with a pretty neat chip attached
  • these presoldered boards are called Shiftbrite
  • they are currently controlled from an arduino this may change soon for something with more computational power :)
  • Click here to draw something nice on the wall!!


How

SVN with current software https://whatever.metalab.at/projects/blinkenwall

We just connected the Arduino to a fonera 2202 over serial.

Now its possible to stream data for display to the blinkenwall using your favourite webbrowser.

Lessons learned:

  • one can simply connect RX/TX from fonera to arduino
  • no stty in default openwrt busybox build
  • openwrt building is an fairly easy task
  • replacing the busybox binary on a live system during operation is insane and possible! :)

Reference

Who

  • Overflo - electronics, soldering, webinterface, fonera setup
  • Wizard23 - help with electronics, basic software setup
  • Metaz - arduino library software for shiftbrites
  • Nex arduino software for webinterface streaming
  • Mactux CSS + iphone webinterface
  • Natano .C program to decode webinterface streaming files


Blinkenwall v1.5

Now with ~30 fps and network mode! Go to http://blinkenwall.in.metalab.at/ to activate network mode and send your P6 PPM frames to port 1337/tcp. Make sure that all your frames are exactly 146 bytes in size or you'll risk graphics glitches at higher frame rates.

Who

  • sqrt2 - Making it work
  • Amir - Netpbm library for Arduino

Lessons learned

  • netcat has fixed-length 8K RX/TX buffers.
  • The Arduino Duemilanove resets on DTS low (the IDE uses that to reset before programming).
  • The Arduino Serial class implements an RX ringbuffer of 128 bytes. Patch the Arduino SDK to adjust this to your needs; RX_BUFFER_SIZE in hardware/arduino/cores/arduino/HardwareSerial.cpp.
  • mkfifo(1) is neat when opening ttyUSB* devices leads to an Arduino reset.

Applications

Upgrade to Raspi

Georg and WSys replaced the Fonera/Arduino with a Raspi. Networking capability was restored later by sqrt2.

To stream to the Blinkenwall from your computer, open http://10.20.30.26/cgi-bin/togglesocket.cgi and wait for the test frame to appear, then send RGB data for the 45 pixels as before, but without the PPM header (9*5*3 = 135 bytes per frame). Open the URL again to switch back to animations.

Videos

First Blinkenwall

Blinkenwall after resurrection at Hackathon_8

Photos

Another Backside close-up
Backside close-up
Backside close-up with flashlight


Various Links