Touch Panels: Difference between revisions
No edit summary |
|||
Line 67: | Line 67: | ||
=Build Procedures= | =Build Procedures= | ||
* Log into stallion and make changes to the files in /netboot/config. | The netboot environment is just debian-live. If you don't read [http://live.debian.net/manual/en/html/index.html the manual] you're likely to break something by accident. It's better to do development on your local machine using qemu and a copy of the config tree before executing the procedure below to push it out. | ||
* Log into stallion and make the changes you want to the files in /netboot/config as root. | |||
* cd /netboot/config | |||
* rm -rf binary* cache chroot | * rm -rf binary* cache chroot | ||
* sudo lh_build --force | * sudo lh_build --force | ||
* Back up the contents of /srv/debian-live | * Back up the contents of /srv/debian-live | ||
* '''Test your image''', see the manual for how to set up a test environment. It's simpler than you think. | |||
* If everything worked, move /netboot/binary/* and /netboot/tftpboot to /srv/debian-live | * If everything worked, move /netboot/binary/* and /netboot/tftpboot to /srv/debian-live | ||
* Reboot | * Reboot one of the lesser used netboot machines and do a sanity check, make sure your changes aren't causing the machines to run out of memory and invoke the OOM killer. | ||
* If | * Reboot the rest of the machines if you're happy. | ||
* If nothing breaks after a while, do a hg commit in /netboot/config. |
Revision as of 13:34, 19 January 2011
A bunch of folks worked on getting the touch panels working. Then another bunch of folks wanted to setup some sort of crazy control Noisebridge in case of a fire thing with it, SCADA.
The system that runs the touchpanel laptop (thinkpad) by the door (172.30.0.31) is required for opengate-www and opengate scripts to work. It is connected by parallel port to a relay which is linked into the door buzzer system.
This laptop runs uses PXE boot and an image from a tftp server on Stallion to runTemplate:Verify. It will not boot without network and this server on the remote system.
Currently the boot image for the panel starts up linux, runs Iceweasel full screen and points to a URL on Pony. There's a neat extensible interface that provides information and control regarding things we currently have in the space.
Requirements
Fundamentals
- Setup a system where anyone can create apps and content for this system.
- "Don't suggest it and walk away, implement it instead!"
Back end
- Apache! Web apps!
- Everyone can write web pages!
Functionality
- You touch the touch panel and it clicks
- You drag on the touch panel and it moves the mouse
- When the thing boots it brings up a browser full screen
- After a time out the browser resets to a "main menu" of sorts
- Includes current time
- After a time out the box brings up some sort of interesting screen saver
- The browser is killed and restarted once every 3 hours to help with getting stuck in a weird state
- Possibly displaying the current time
- When navigating away from the main menu, there's a "home bar" at top
- Link to the menu
- Title of the current page
- Current time
Application
- Open the gate
- Control X10 lights
- Simplistic jukebox
- Currently playing on the main menu
- Control the mediacenter
- A "internet browser" interface
Information
- Local restaurants and menus for each
- Bus times
- Bart Times
- Listing of events at Noisebridge, or the new scheduler
- Weather
- With some info on the main menu
- Watch a hacker space, links to web cams for other spaces
Bugs
- Scroll bars are going to be tricky
- Navigating to pages outside of the panel site might lead to the browser getting into a weird state. The dumb fix is to kill and restart the browser session every once in a while (3 hours sounds good).
Installed Plugins
- Refresh2
- autohide
- Grab and Drag
Jukebox interfaces
- http://theory.steelbreeze.org/
- http://www.renedegroot.nl/mpd.xml
- http://manatlan.infogami.com/wymypy
- http://sites.google.com/site/cseickel/mpdwebamp
- http://code.google.com/p/fookebox/
- http://cims.nyu.edu/~stucchio/software/djpirate/index.html
- http://sourceforge.net/projects/mmpd/
Build Procedures
The netboot environment is just debian-live. If you don't read the manual you're likely to break something by accident. It's better to do development on your local machine using qemu and a copy of the config tree before executing the procedure below to push it out.
- Log into stallion and make the changes you want to the files in /netboot/config as root.
- cd /netboot/config
- rm -rf binary* cache chroot
- sudo lh_build --force
- Back up the contents of /srv/debian-live
- Test your image, see the manual for how to set up a test environment. It's simpler than you think.
- If everything worked, move /netboot/binary/* and /netboot/tftpboot to /srv/debian-live
- Reboot one of the lesser used netboot machines and do a sanity check, make sure your changes aren't causing the machines to run out of memory and invoke the OOM killer.
- Reboot the rest of the machines if you're happy.
- If nothing breaks after a while, do a hg commit in /netboot/config.