Project:Notification Board: Difference between revisions

From London Hackspace Wiki
(Nice Site)
m (This would likely benefit from a rewrite using https://github.com/rm-hull/luma.led_matrix and removing the Arduino using only the Raspberry Pi.)
 
(12 intermediate revisions by 11 users not shown)
Line 1: Line 1:
Just popping in to say nice site.
==Summary==
[[File:102424263.jpg|thumb|Prototyping]]
[[File:Jonty and sign.jpg|thumb|Installed]]
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: <strike>Allow messages to be displayed on the LED board from IRC.</strike>
:*Phase 2: <strike>Add sounds when the message changes.</strike>
:*Phase 3: Add strobe beacons.
:*Phase 4: Daemon the arduino and allow connection via MQTT, add idle messages.
 
 
Moved to separate project/arduino:
:<strike>*Phase 5: Add temperature, light level and PIR sensors.</strike>
:<strike>*Phase 6: Add i-wire, inc i-buttons.</strike>
 
==Code==
:Arduino Code: [http://github.com/solexious/NotifyBoard]
:Arduino Lib: [http://github.com/solexious/MatrixDisplay]
 
:IRC Script: [http://github.com/londonhackspace/irccat-commands/blob/master/setBoard.py]
 
==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:
 
'''STX'''1'''ETB'''0'''ETB'''Temperature: 21.5'''EOT'''
 
 
Or to send, Iron Maiden - Prowler, time sensitive:
 
'''STX'''2'''ETB'''1'''ETB'''Iron Maiden - Prowler'''EOT'''
 
 
====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:
 
'''STX'''A'''ETB'''1'''ETB'''1'''ETB'''5'''ETB'''Ping: Jaunsicle'''EOT'''
 
====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/) --[[User:AndyE|AndyE]] 22:39, 12 November 2010 (UTC)
:: see also [[User:Ms7821]] [http://wiki.opentfl.co.uk/Main_Page opentfl.co.uk]
:: TfL API (beta) docs [http://data.london.gov.uk/apibeta] [http://data.london.gov.uk/documents/apibeta-trackernet-services-guide.pdf] (p13) but seems to be currently offline [http://data.london.gov.uk/blog/update-trackernet-feed].
 
* 4 -
* 5 -
 
====Sounds====
* 0 - None
* 1 - PING.WAV
 
==Feature Requests==
 
* Dynamic font loading
* Individual pixel mapping
* <strike>Scrolling to allow for longer messages</strike>
* 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
 
[[Category:Projects]]
[[Category:Infrastructure]]
[[Category:Space_Infrastructure_Projects]]

Latest revision as of 00:55, 15 January 2019

Summary

Prototyping
Installed

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.


Moved to separate project/arduino:

*Phase 5: Add temperature, light level and PIR sensors.
*Phase 6: Add i-wire, inc i-buttons.

Code

Arduino Code: [1]
Arduino Lib: [2]
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

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