1.0.0 • Published 9 years ago

uscp v1.0.0

Weekly downloads
4
License
ISC
Repository
github
Last release
9 years ago

USCP

Ultra Sonic Communication Protocol

Stability

Lol..

What

Uses ultrasonic frequencies to send 8 bit data to devices pretty close to you.

How

USCP encodes each Byte of data into each tone. A tone is transmitted for a short period of time before moving on to the next byte.

Each bit column data in a byte has it's own frequency, for example

(not the actual freqs used)

abcdefgh
10100101

a -> 19000 b -> 19000 + 100hz c -> 19000 + 200hz d -> 19000 + 300hz etc..

This makes pretty things on a spectrogram.

The decoder watches the input as fast as possible, listening to all frequency bins that register above a threshold.

It makes bytes from the tone, and then calls back with a message.

Usage

The example is a great place to start

example

var modem = require('../modem');

// Start listening
modem.demodulate(function(error, message){
    // We got a message! :D

    // Currently it  can't error..
});

modem.modulate('Hello world!');

You can encode all characters in the range from 1 to 255, which is probably enough.

I may eventually supporting packet sizes up to 64bit, if it works..

1.0.0

9 years ago