Realtime Community Signage
This code lets set up and run a cheap realtime community sign with a off-the-shelf router and two scrolling LED signs. All the content for the sign is managed by a centralized server, where you can pick transit or calendar information to display on the signs.
This is part of the Lost In Boston Realtime project of the MIT Center for Civic Media. This project is about helping people work together to make their neighborhoods more visitor-friendly. Community groups are partnering with local businesses and institutions to install digital signage that call out useful information in their area.
Read the INSTALL.md for detailed setup instructions.
First make your own config file by copying
config.ini.template to to
Serial Port Configuration
We talk to the LED Signs via USB-Serial adaptors (cheap Prolific brand). Edit your
config.ini file to be something like this:
[Communication] serial_path=/dev/ttyUSB0 serial_path_2=/dev/ttyUSB1 serial_baudrate=9600 write_to_serial=1
If you just download and start the code, the sign will display content from the
content.xml file included. However, it is intended to fetch content from a server, so it can display realtime information. If you want to have the sign realtime content from a server, you'll need to install our Community Sign Server software on a server. Then
Our software is designed to source community transit and calendar information from a central server. However, out of the box we have included a
content.xml file that is used instead of live data from a server. To talk to a server set the variables in the
Server section of
config.ini and delete the
BOM (Bill of Materials)
For our pilot test, here is the set of hardware we used.
Total cost $300
$200 for two one-line LED Signs from SignsDirect
- or $340 for semi-outdoor brightness
$70 Router (Netgear WNR3500L) from [various sources] http://www.google.com/products/catalog?q=netgear+wnr3500l&um=1&ie=UTF-8&tbm=shop&cid=9147418170759086567&sa=X&ei=yewETo6rGcytgQfW8dHbDQ&ved=0CDAQ8wIwAg
$2.70 USB Hub (3 ports) from monoprice
$5 USB Stick (1GB) from anywhere like microcenter
$8 Project Box from Mouser
- made by hammond
$4.51 Dual Power Cord Splitter (15P to dual 15R) from monoprice
$3 Extension Cord:
Stand for sign - we laser cut this, using a total of about $3 worth of acrylic
When the software queries the server it passes along the following arguments on the end of the url:
- serial: the serial number set in your
- secret: the secret key set in your
- codeVersion: the version number of the code
- protocolVersion: the verson number of the xml protocol it expects to receive
- status: the current status of the sign (one of the
The server's resonse is identical in format to what is shown in the
content.xml file. The
<info> tag holds the content for display on the sign. For two-line signs, you should separate each line with a EOL. The only
<command> recognized for now is
restart. This command will restart the client software.