Skip to content
Andrey Voroshkov edited this page Mar 3, 2017 · 39 revisions

Welcome to the Chorus-RF-Laptimer wiki!

Device communication protocol

Each Solo device Receives and Transmits data. Here's how the communication flow is organized from a Solo device standpoint.

Basic concepts:

  1. Each Solo device connected into a Chorus has its ID (order number), which is assigned dynamically upon initialization of the Chorus device from a communicating application. Normally enumeration starts with 0.
  2. Each data chunk is a plain string terminated with "\n" character (ASCII=10) and having a predefined structure.

There are 3 types of data chunks:

  • Requests
  • Responses
  • Pass-through data

Requests

There are 3 types of requests:

  1. Device enumeration: (3 characters) "N" + <first_ID> + "\n". Example: "N0\n"
  2. Request: (4 characters) "R" + <device_ID> + <command> + "\n". Example: "R1T\n"
  3. Calibration: (11 characters) "C" + <device_ID> + <time_long_HEX_value> + "\n". Example: "C00000010A\n"

Responses

Response structure: "S" + <device_ID> + <response_type> + <data> + "\n" Each response type has its own predefined length.

Clone this wiki locally