HSP

Version 6 (J. Simmons, 10/29/2017 06:13 am) → Version 7/27 (J. Simmons, 10/29/2017 06:18 am)

h1. Holoseat Serial Protocol

{{>toc}}

h2. Introduction

_*Note*: Beginning with version 0.4.0, this document supersedes the material covered in [[Software Source Code|Project Software]].
_
The HoloSeat firmware has a serial protocol, the Holoseat Serial Protocol (HSP), to enable the desktop configuration app to modify all key parameters and to determine the current configuration of the Holoseat at runtime. It is laid out to mirror the REST API presented to Holoseat clients by the desktop application.

h2. Serial Port Configuration

|*Field*|*Value*|
|Baud Rate|115200|
|Data Bits|8|
|Parity|None|
|Stop Bit|1|

h2. Command Structure

Commands are sent as JSON strings with a URI, an HTTP verb, and possibly arguments. TODO (fill this in more)

h2. Low Level Commands

The low level commands are intended to be used to establish a connection between the Holoseat controller and the REST API server. These commands will not be reproduced in the Holoseat REST API.

|*Command Name*|*URI*|*Verb*|*Example Command*|*Example Result*|
|Ready?|/main/ready|GET|@{"uri":"/main/ready","verb":"GET"}@|@{"device":"Holoseat","hwVer":"v0.4","fwVer":"v0.4.0","hspVer":"v0.4.0"}@|
|Set Logging|/main/logging|PUT|@{"uri":"/main/logging","verb":"PUT", "args":{"enabled":1,"interval":1}}@|{"result":"OK"}| "args":{"enabled":1,"interval":1}}@|[none]|