Table of Contents

Advertisement

Quick Links

HCOMM Reference Manual
Document Number: 1000-2984
Document Revision: 0.3.2
March 5, 2014
© 2019, CEVA, Inc. All rights reserved
Date: March 5, 2014
1000-2984 Revision 0.3.2
1 / 54
www.ceva-dsp.com

Advertisement

Table of Contents
loading

Summary of Contents for CEVA chillcrestlabs HCOMM

  • Page 1 HCOMM Reference Manual Document Number: 1000-2984 Document Revision: 0.3.2 Date: March 5, 2014 March 5, 2014 1000-2984 Revision 0.3.2 1 / 54 © 2019, CEVA, Inc. All rights reserved www.ceva-dsp.com...
  • Page 2: Table Of Contents

    FRS Read Request (Subclass 0x08) .................. 43 5.2.1.4 Product ID Request (Subclass 0x09) ................. 44 5.2.1.5 Activity Classification Notification (Subclass 0x12) ............44 5.2.1.6 Freespace Data Mode Control V2 Request (Subclass 0x14) ..........44 www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 2 / 54...
  • Page 3 Product Records ........................50 6.2.4.1 MotionEngine Orientation ....................50 6.2.4.2 MotionEngine Power Management ................... 50 6.2.4.3 MotionEngine Angular Position Smoothing ..............51 REFERENCES ........................ 53 LEGAL STATEMENTS ....................54 www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 3 / 54...
  • Page 4: List Of Figures

    Figure 36: Tracking Number Record ..................... 49 Figure 37: MotionEngine Orientation Record ................50 Figure 38: MotionEngine Power Management Record ..............50 Figure 39: Angular Position Smoothing Record ................52 www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 4 / 54...
  • Page 5: Introduction

    HCOMM Reference Manual 1 Introduction CEVA’s Hillcrest Labs business unit’s Freespace® MotionEngine™ is a complete solution for the creation of in-air pointing and motion control devices for a broad range of applications including pointing remote controls, body motion trackers, head mounted displays (HMDs), and mobile and tablet sensor fusion products.
  • Page 6: Sensors

    It uses calibration data provided at system design time to obtain the best performance from the actual magnetometer being used. 2.1.4 Ambient Light Sensors Future feature 2.1.5 Pressure Sensors Future feature 2.1.6 Proximity Sensors Future feature www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 6 / 54...
  • Page 7: Hcomm Hub Operation

    FMON. Host Interfaces The host device connects to a hub via a physical interface. Supported interfaces include SPI and USB. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 7 / 54...
  • Page 8: Device Firmware Upgrade

    The hub supports in-field device firmware upgrade (DFU). DFU can be used to add new features and fix bugs. New firmware is provided to the hub in the form of an encrypted binary image. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 8 / 54...
  • Page 9: Hcomm Overview

    The addresses used by HCOMM packets are: • 0 – host. This is typically a PC but could be the control processor connected to the • 1 – dongle. • 4 – hub. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 9 / 54...
  • Page 10: Hcomm Packets

    5.1.2 DataIn Packet (Class 0x05) This packet is used as a container for command, control, status, testing and debugging information. Each packet contains a subclass. The subclass determines the type of www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 10 / 54...
  • Page 11: Frs Write Response (Subclass 0X06)

    9 – record invalid (the complete record failed internal validation checks) 10 – device error (DFU flash memory device unavailable) Word Offset: the number of words offset from the beginning of the record www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 11 / 54...
  • Page 12: Freespace Data Mode Control V2 Response (Subclass 0X14)

    3 – Sleep 4 – Reserved 5 – Notify-on-Motion Packet select Select the output packet sent by the FSP to report motion data. 0 – none 1 – Mouse www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 12 / 54...
  • Page 13: Sensor Period Response (Subclass 0X17)

    3 – ambient light sensor 4 – pressure sensor 5 – proximity sensor 6 – sensor fusion 7 – step detector 8 – tap detector 9 – humidity sensor www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 13 / 54...
  • Page 14: Datainlong Packet (Class 0X06)

    Subclass 5-21 Payload Figure 9: DataInLong Packet Subclass: identifies the specific type of information being carried within the DataInLong packet Payload: the remaining report payload, up to 17 bytes www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 14 / 54...
  • Page 15: Frs Read Response (Subclass 0X08)

    The product ID response carries information that identifies software running on the FSP and FSP unique ID information. This packet is sent automatically when an FSP boots and in response to a product ID request (Section 5.2.1.4). www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 15 / 54...
  • Page 16: Datainble Packet (Class 0X08)

    The subclass determines the type of information carried by the DataInBLE packet. All subclass values are reserved with the exception of those described in this section. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 16 / 54...
  • Page 17: Ble Frs Read Response (Subclass 0X15)

    Data: between 0 and 2 32-bit words of data from and FRS record. FRS Type: indicates to which type of FRS record the data belongs (see Section 6.1) www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 17 / 54...
  • Page 18: Ble Product Id Response (Subclass 0X16)

    Data Mode Control V2 Request. See 5.2.1.6. The format flags bits are used to enable various portions of the packet. If a particular flag is set then that portion of www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 18 / 54...
  • Page 19 Qn where n is the number of fractional bits. Thus, Q10 indicates 1 sign bit, 5 integer bits and 10 fractional bits. The Format 0 packet is shown below. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 19 / 54...
  • Page 20 Angular Velocity Y MSB Angular Velocity Z LSB Angular Velocity Z MSB FF4 Section Magnetometer X LSB Magnetometer X MSB Magnetometer Y LSB Magnetometer Y MSB Magnetometer Z LSB Magnetometer Z MSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 20 / 54...
  • Page 21: Figure 15: Motionengine Output Packet, Format 0

    Q12. Reported in gauss. X positive is forward, Y positive is to the right and Z positive is down with respect to the handheld device frame of reference. Temperature Q7. Reported in degrees Celsius. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 21 / 54...
  • Page 22 A, B, C, and D represent the real, i, j, and k coefficients Reserved Reserved. The Format 1 packet is used to retrieve data in the format used by Windows 8. The Format 1 packet is shown below. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 22 / 54...
  • Page 23 Magnetometer Y MSB Magnetometer Z LSB Magnetometer Z MSB FF4 Section Inclination X LSB Inclination X MSB Inclination Y LSB Inclination Y MSB Inclination Z LSB Inclination Z MSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 23 / 54...
  • Page 24: Figure 16: Motionengine Output Packet, Format 1

    Angular Position: Reported in dimensionless units of 0.0001. The axes are given in quaternion form where w, x, y, and z represent the real, i, j, and k coefficients www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 24 / 54...
  • Page 25 Bit 1 – is stable. The hub’s motion has met the stable threshold and duration requirements. Bit 2 – motion detected by the accelerometer Bit 3 – motion detected by MotionEngine www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 25 / 54...
  • Page 26: Figure 17: Motionengine Output Packet, Format 2

    A channel consists of a channel ID and a channel sequence number followed by either 2 or 6 bytes of sensor data. The data section of a Format 2 packet contains as many channels as will www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 26 / 54...
  • Page 27 The tradeoff in using this output is a loss of some resolution. Format 3 also uses µT rather than gauss for the magnetic field. The Format 3 packet is shown below. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 27 / 54...
  • Page 28 Angular Velocity Y MSB Angular Velocity Z LSB Angular Velocity Z MSB FF4 Section Magnetometer X LSB Magnetometer X MSB Magnetometer Y LSB Magnetometer Y MSB Magnetometer Z LSB Magnetometer Z MSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 28 / 54...
  • Page 29: Figure 18: Motionengine Output Packet, Format 3

    Q5. Reported in microteslas. X positive is forward, Y positive is to the right and Z positive is down with respect to the handheld device frame of reference. Temperature Q7. Reported in degrees Celsius. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 29 / 54...
  • Page 30 The Format 4 packet is used to retrieve a stream of any and all data from the HCOMM Hub. The Format 4 packet is shown below. In addition to the 16-bit number format, the www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 30 / 54...
  • Page 31 4 packet uses a 32-bit, 2’s complement, fixed-point format. This format is used for the 1-axis extended sensor. The Q point still indicates the number of fractional bits. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 31 / 54...
  • Page 32 N + 3 real coefficient MSB N + 4 i coefficient LSB N + 5 i coefficient MSB N + 6 j coefficient LSB N + 7 k coefficient MSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 32 / 54...
  • Page 33 N + 1 Channel sequence number N + 2 X-axis LSB N + 3 X-axis MSB N + 4 Y-axis LSB N + 5 Y-axis MSB N + 6 Z-axis LSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 33 / 54...
  • Page 34: Figure 19: Motionengine Output Packet, Format 4

    FF3 – timestamp data. The timestamp for each reported channel is appended as a 4-byte unsigned integer to the end of the channel. FF4 – reserved FF5 – reserved FF6 – reserved FF7 – reserved www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 34 / 54...
  • Page 35 A monotonically increment sequence number for the given number channel. Each channel has its own independent sequence number. X/Y/Z-axis The raw sample data for each axis of the sensor. LSB/MSB www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 35 / 54...
  • Page 36 Stability classification Stability classifier Continuous PAC confidences Personal activity classifier Event Sleep stage Sleep detector Event Tilt events Tilt detector Event In Pocket Pocket detector Event circle Circle detector www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 36 / 54...
  • Page 37: Dce Out V2 (Class 0X27)

    Reserved Reserved Reserved Flag4 Flag3 Flag2 Flag1 Button8 Button7 Button6 Button5 Button4 Button3 Button2 Button1 Delta Wheel Figure 21: DCE Out V2 Packet Sequence number 32-bit unsigned monotonically increasing number www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 37 / 54...
  • Page 38: Dce Out V3 (Class 0X28)

    Suppression flags indicate that a user interface event occurred that may cause unintended motion by the user. Motion would be suppressed for a predefined duration according to the flag selected. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 38 / 54...
  • Page 39 Flag4 – Set to indicate encoder down motion is detected Button n Bit mapped field for state information for up to 4 buttons. 0 – not pressed. 1 – pressed. Other fields Self-explanatory www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 39 / 54...
  • Page 40: Dce Out V4 (Class 0X29)

    Rotational Sensor Z LSB Rotational Sensor Z MSB Temperature LSB Temperature MSB Figure 24 - DCE Out v4 Class Sequence 8-bit unsigned monotonically increasing number number: Other fields: Self-explanatory www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 40 / 54...
  • Page 41: Dce Out V4 - M (Subclass 0X01)

    Bit mapped field for state information for up to 8 buttons. 0 – not pressed. 1 – pressed. Other fields Self-explanatory Outbound Packets This section covers packets that are sent to a hub from a host. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 41 / 54...
  • Page 42: Dataout Packet (Class 0X07)

    This packet is sent to the device to write data to the record indicated by a previous write request. Only one FRS operation may be in progress at any one time. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 42 / 54...
  • Page 43: Frs Read Request (Subclass 0X08)

    The first word in an FRS record is word 0. FRS Type: FRS record type to read (see Section 6.1) Block Size: number of 32-bit words to read www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 43 / 54...
  • Page 44: Product Id Request (Subclass 0X09)

    3 – watchdog pet. Used by host systems to notify sensor only systems that MotionEngine is still running 5.2.1.6 Freespace Data Mode Control V2 Request (Subclass 0x14) This packet controls generation of Freespace motion packets. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 44 / 54...
  • Page 45: Figure 32: Freespace Data Mode Control V2 Request Packet

    Select the format of the MotionEngine Output packet. See 5.1.5 for details. FF7 – FF0 Format Flags – used to enable various portions of a MotionEngine Output packet. See 5.1.5 for details. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 45 / 54...
  • Page 46: Sensor Period Request (Subclass 0X16)

    5 – proximity sensor 6 – sensor fusion 7 – step detector 8 – tap detector 9 – humidity sensor 10 – ambient temperature sensor 11 – significant motion detector www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 46 / 54...
  • Page 47: Button Motion Suppression Request (Subclass 0X17)

    When park is enabled cursor output is set to 0. Cursor output remains at 0 until park is disabled. Byte Class = 0x07 Length Destination Source Subclass = 0x17 BMS Request 6-11 Reserved Figure 34: Button Motion Suppression Request www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 47 / 54...
  • Page 48 BMS Request 0 – button press 1 – button release 2 – scroll up 3 – scroll down 4 – park enable 5 – park disable 6 – 255 reserved www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 48 / 54...
  • Page 49: Fsp Flash Record System

    The tracking number record stores a 32-bit number used to identify an individual device. The format of a tracking number record is shown in Figure 36. Word Description 32-bit tracking number Figure 36: Tracking Number Record www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 49 / 54...
  • Page 50: Static Calibration Data

    Q point of 29. The default value is 0.09. Stable threshold The gyro output must be below this limit for the stable duration in order for an IS_STABLE notification to be www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 50 / 54...
  • Page 51: Motionengine Angular Position Smoothing

    Figure 39. The angular position smoothing parameters are all unsigned, fixed point numbers. If this record is not configured, the hub uses the default values listed below. Word Description Scaling Max rotation Max error Stability magnitude www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 51 / 54...
  • Page 52: Figure 39: Angular Position Smoothing Record

    The units are radians. The Q point is 29. The default value is 0.1 degrees or 0.00175 radians. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 52 / 54...
  • Page 53: References

    2. USB HID Usage Tables Version 1.12: http://www.usb.org/developers/devclass_docs/Hut1_12.pdf. 3. 1000-1024 - Calibration Test Station Manual, Hillcrest Labs. (under NDA only) 4. http://libfreespace.hillcrestlabs.com. 5. 1000-3041 – Developing a Freespace Remote Control, Hillcrest Labs. www.ceva-dsp.com © 2019 CEVA, Inc. All rights reserved 53 / 54...
  • Page 54: Legal Statements

    In no event shall CEVA or its suppliers be liable for any claims and/or damages whatsoever arising out of the use of or inability to use the materials. CEVA and its suppliers further do not warrant the accuracy or completeness of the information, text, graphics or other items contained within these materials.

Table of Contents