Datastreamer Module

The datastreamer module embeds with a simple mono-directional data transfer protocol and the data frame that is transmitted to the data visualizer software. The current version of the datastreamer provides support only for UART port communication.
Figure 1. Datastreamer Module Block Diagram

UART Transmission:

The UART transmission function is device-dependent, and the Atmel START automatically picks up the right driver and includes it on the user board/kit example project. Simple Asynchronous mode (non-interrupt driven) of the driver is used in all the devices.

Data frame:

The data frame contains a header, fixed module data, and dynamic module data bytes.

Header details:

The header contains 19 bytes and needs to be transmitted as part of the packet. The header need not be transmitted on every packet, rather transmitted once every 15 packet transmissions. The header packet details are listed below.
// uint8_t data[] =
// {
//     0x5F, 
//     0xB4, 0x00, 0x86, 0x4A, 
//     0x51, 0x54, 0x38, 0x31, 0x37, 0x54, 0x4F, 0x55, 0x43, 0x48, 0x55, 0xAA,    
//     0xF9,
//     0xA0
// }; 
Bytes Description
Byte 0 Start token. Contains fixed value ‘0x5F’
Bytes 1 to 14 Checksum type. Corresponds to LRC8 (XOR sum of packet, excluding start and end token)
Bytes 5 to 16 GUID, an identifier for the target hardware
Byte 17 Checksum of the header packet
Byte 18 End token. Contains fixed value ‘0xA0’

Fixed module data:

  1. 1.Basic button sensor data of all the configured button sensors.
  2. 2.Error status data.

Dynamic module data:

  1. 1.Acquisition auto-tune parameters are included when auto-tune is enabled in the Atmel START QTouch configurator.
  2. 2.Frequency hop auto-tune data is included as per the configurations done on Atmel START.
  3. 3.Scroller module parameters are transmitted when the Slider/Wheel sensors are configured on Atmel START.