Project:Notification Board
Summary
This is the board that hangs in the space.
It sends visual and audible notifications to the space, and also publishes notifications to the network: temperature, movement etc
Current version 0.2.2
Phases
- Phase 1:
Allow messages to be displayed on the LED board from IRC. - Phase 2:
Add sounds when the message changes. - Phase 3: Add strobe beacons.
- Phase 4: Daemon the arduino and allow connection via MQTT, add idle messages.
- Phase 1:
Moved to separate project/arduino:
*Phase 5: Add temperature, light level and PIR sensors.*Phase 6: Add i-wire, inc i-buttons.
Code
- IRC Script: [3]
Change Log
v0.3
- Allow messages up to 162 chars long
- Scroll for messages longer than the screen
v0.2
- Include full ascii support
- Add initText
- Remove update speed delay
v0.1
- Initial proof of concept
- Limit to a-z A-Z and 0-9
Protocol Specification
Sending a message
Currently, messages are sent directly over serial.
They are up to 160 chars long, and can only be from regular ASCII. The message is terminated with a line return.
This is a test msg\n
Proposed new protocol
There are 2 types of message:
- Idle - for rolling messages, i.e. temperature, currently playing song, number of irc users. Will keep last value till updated.
- Alert - for one time shown messages, allows sounds
Idle
The settings for idle messages are:
- Message slot [0-5] - (see list below for reserving a slot)
- Time sensitive? [0-1] - If you need to bump the idle message to be the next shown, i.e. currently playing song changes
- Message [up to 21 chars]
Examples:
(Substituting STX, ETB and EOT for their respective ascii chars.)
So to send, Temperature: 21.5, you would send:
STX1ETB0ETBTemperature: 21.5EOT
Or to send, Iron Maiden - Prowler, time sensitive:
STX2ETB1ETBIron Maiden - ProwlerEOT
Alert
The settings for alert messages are:
- Message slot [A] - Denotes alerts from idle messages
- Blink [0-1] - Blink the display for more attention
- Sound [0-5] - Set off a sound, see list
- Display timeout - The length of time to display the message for
- Message [up to 21 chars]
Examples:
(Substituting STX, ETB and EOT for their respective ascii chars.)
To send, Ping: Jaunsicle, with sound ping and blinking for 5 seconds:
STXAETB1ETB1ETB5ETBPing: JaunsicleEOT
Message slots
- 0 - Current Number of users in #london-hack-space
- 1 - Temperature/Humidity
- 2 - Now Playing
- 3 - suggestion: info on tube delays, i.e. http://api.tubeupdates.com/?method=get.status where status != 'good service' (docs at http://tubeupdates.com/documentation/) --AndyE 22:39, 12 November 2010 (UTC)
- see also User:Ms7821 opentfl.co.uk
- TfL API (beta) docs [4] [5] (p13) but seems to be currently offline [6].
- 4 -
- 5 -
Sounds
- 0 - None
- 1 - PING.WAV
Feature Requests
- Dynamic font loading
- Individual pixel mapping
Scrolling to allow for longer messages- A fortune/motd feature - when the board has been unchanged for a while, display a random message from a file, e.g. 'clean up your own mess', 'shut the fire door when you leave' or 'do not leave the chuck key in the lathe'.
- Audio notification of new message.... Similar to Glados voice from doorbot