Project:Notification Board: Difference between revisions

From London Hackspace Wiki
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.)
 
(6 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Project maintained by [[User:Solexious|Solexious]], contact via IRC or charlesyarnold@gmail.com
==Summary==
==Summary==
[[File:102424263.jpg|thumb|Prototyping]]
[[File:102424263.jpg|thumb|Prototyping]]
Line 8: Line 6:
It sends visual and audible notifications to the space, and also publishes notifications to the network: temperature, movement etc
It sends visual and audible notifications to the space, and also publishes notifications to the network: temperature, movement etc


Current version 0.2
Current version 0.2.2


==Phases==
==Phases==
Line 29: Line 27:
==Change Log==
==Change Log==
===v0.3===
===v0.3===
* Allow messages upto 162 chars long
* Allow messages up to 162 chars long
* Scroll for messages longer than the screen
* Scroll for messages longer than the screen


Line 46: Line 44:
Currently, messages are sent directly over serial.
Currently, messages are sent directly over serial.


They are upto 160 char's long, and can only be from regular ascii. The message is terminated with a line return.
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'''
'''This is a test msg\n'''
Line 52: Line 50:
===Proposed new protocol===
===Proposed new protocol===
There are 2 types of message:
There are 2 types of message:
:* Idle - for rolling messages, i.e. temprature, currently playing song, number of irc users. Will keep last value till updated.
:* 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
:* Alert - for one time shown messages, allows sounds


Line 65: Line 63:
(Substituting STX, ETB and EOT for their respective ascii chars.)
(Substituting STX, ETB and EOT for their respective ascii chars.)


So to send, Temprature: 21.5, you would send:
So to send, Temperature: 21.5, you would send:


'''STX'''1'''ETB'''0'''ETB'''Temprature: 21.5'''EOT'''
'''STX'''1'''ETB'''0'''ETB'''Temperature: 21.5'''EOT'''




Line 87: Line 85:
(Substituting STX, ETB and EOT for their respective ascii chars.)
(Substituting STX, ETB and EOT for their respective ascii chars.)


To send, Ping: Solexious, with sound ping and blinking for 5 seconds:
To send, Ping: Jaunsicle, with sound ping and blinking for 5 seconds:


'''STX'''A'''ETB'''1'''ETB'''1'''ETB'''5'''ETB'''Ping: Solexious'''EOT'''
'''STX'''A'''ETB'''1'''ETB'''1'''ETB'''5'''ETB'''Ping: Jaunsicle'''EOT'''


====Message slots====
====Message slots====
Line 112: Line 110:
* <strike>Scrolling to allow for longer messages</strike>
* <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'.
* 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