Squid Bay Flash Semaphore
This is the design doc for my simple and quick semaphore system for communicating small info using a flashlight. Presently its sole goal is scheduling visits with a friend, but I am leaving the system modular to be able to add different meaning later.
BASIC COMM
- ... (Start Req)
- ..- (Accept)
- -.. (Decline)
- .-- (Acknowledge)
- -.-.- (Error/Not Understood)
- .-. (Busy)
- .... (Standby)
- .--.. (Visibility Issue)
- ...---... (Urgent)
- ..--. (Abort Previous Req)
MODE SWITCH
- ..-. (Morse)
- -..- (Schedule)
- -.-- (Location)
- .-..- (Relay)
- -- (End Mode)
VISIT/INTENT
- --- (Visit Req)
- -.- (Invite Req)
- -.-. (Coming Now)
- .--. (Meet Outside)
- .-.. (Come to window) [Inadvisable; doorbell cameras]
SCHEDULE
- .... (Today)
- --.. (Tomorrow)
- --.- (Overmorrow)
- .-.-. (Weekend)
- ---- (Flexible)
- .--- (Morning)
- ..-- (Afternoon)
- ---. (Evening)
- --.-- (Night)
- .-.- (Exact Hour follows this, sent in 24 hour time, as a short flash per hour. For instance, 13 short flashes to signify 1 PM)
- -... (Suggest New Time)
RELAY
- -.-.-. (RELAY START)
- .-.-.- (RELAY END)
- ..--.. (FROM) [Followed by Sender Number]
- .--.-- (FOR) [Followed by Recipient Number]
- ----. (Broadcast) [Use to have someone signal to every node]
- .-..-. (List Cast)[Use to tell a specific list of nodes]
- ---.- (SEND) [Framing complete, transmit payload]
- [Nothing inside START-END may be interpreted unless FOR matches your node ID]