Skip to content

KoryNunn/uscp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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..

About

ultra-sonic communication protocol

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published