C# Class flint.PebbleProtocol

Handles the basic protocol structure for Pebble communication. Essentially handles the SerialPort and translates the stream to endpoint,payload pairs and vv. Does and should not handle anything regarding the *meaning* of that data.
Afficher le fichier Open project: barometz/flint Class Usage Examples

Méthodes publiques

Méthode Description
Close ( ) : void
Connect ( ) : void

Connect to the Pebble.

PebbleProtocol ( string port ) : System

Create a new Pebble connection

SendMessage ( ushort endpoint, byte payload ) : void

Send a message to the connected Pebble. The payload should at most be 2048 bytes large.

Private Methods

Méthode Description
readAndProcess ( ) : bool

Read from the serial line if a useful chunk is present.

In this case a "useful chunk" means that either the payload size and endpoint of a new message or the complete payload of a message are present.

serialPortDataReceived ( object sender, System.IO.Ports.SerialDataReceivedEventArgs e ) : void
serialPortErrorReceived ( object sender, System.IO.Ports.SerialErrorReceivedEventArgs e ) : void

Serial error handler. Passes stuff on to the next subscriber.

For the possible errors, System.IO.Ports.SerialError. I figure most if not all will be taken care of by the BT layer.

Method Details

Close() public méthode

public Close ( ) : void
Résultat void

Connect() public méthode

Connect to the Pebble.
Passed on when no connection can be made.
public Connect ( ) : void
Résultat void

PebbleProtocol() public méthode

Create a new Pebble connection
public PebbleProtocol ( string port ) : System
port string
Résultat System

SendMessage() public méthode

Send a message to the connected Pebble. The payload should at most be 2048 bytes large.
Thrown when the payload is too large.
public SendMessage ( ushort endpoint, byte payload ) : void
endpoint ushort
payload byte
Résultat void