FSM-9 Data Sheet
Freespace® Sensor Module (FSM) with USB Interface
The FSM-9 is a low cost, battery operable, fully calibrated Inertial Measurement Unit (IMU) / Attitude Heading
Reference System (AHRS). The FSM provides a simple, highly cost effective solution for integrating accurate,
multi-axis inertial sensing into a wide range of consumer and industrial applications, eliminating the complexity
and investment associated with a discrete design. This compact module contains state of the art MEMs
technology including a tri-axial gyroscope, a tri-axial accelerometer and a tri-axial magnetometer. Combining
these sensors with the onboard Freespace MotionEngine™ Processor, the FSM-9 provides precise real-time 3D
orientation, heading, calibrated acceleration and calibrated angular velocity, as well as more advanced outputs
such as cursor.
Complete Inertial Motion Tracking System
Ø
Tri-axial accelerometer, gyroscope and magnetometer
enable complete motion tracking
Ø
Calibrated for misalignment and scale
Ø
Dynamically calibrates sensor data for temperature,
and aging
Patented real time signal processing algorithms
produces 9-axis sensor fusion via on board processor
Ø
Power Management Features
•
Low-power sleep modes optimize power
•
Flexible gyroscope power control
•
Wake-on-Motion feature allows for rapid return to
motion processing when module picked up
• Activity state detection such as ‘OnTable’ or ‘Stable’
enables intelligent use of low power modes
Extensive Data Modes
•
Linear acceleration (mm/s2)
•
Angular velocity (mrad/s)
•
Compass heading
•
Angular position (quaternion)
•
Accurate, low-latency X-Y pointer data for cursor
control applications
•
Data returned at configurable sample rates
October 2013
© 2019 CEVA, Inc. All rights reserved
Compact Design
Ø
Ø
Available for PCB mounting or with enclosure
Small form factor PCA module ideal for embedded
application (19mm x 18mm x 4mm)
Ø
Ø
Enclosure w/micro USB (38mm x 23mm x 9mm)
Communicates with an external system via USB or a
Serial Peripheral Interface (SPI)
Advanced Processing Options
•
Adaptive tremor removal - Ensures smooth, steady
motion when held in a human hand
•
AR/VR Stabilization - Provides visually improved
angular position output
• Orientation compensation – Compensates for tilt by
translating motion from the FSM’s frame of reference to
the user’s
• Button motion suppression – Minimizes inadvertent
cursor movement caused by button and scroll events
Developer Tools
•
Freespace MotionStudio - PC-based evaluation and
configuration tool
•
libfreespace - Open source C I/O library with Java
bindings
FSM-9 Datasheet rev 1.0
1 / 28
www.ceva-dsp.com
Product Models: FSM-9 Reference Kit, FSM-9, FSM-9 OEM (without enclosure)
October 2013
© 2019 CEVA, Inc. All rights reserved
FSM-9 Datasheet rev 1.0
2 / 28
www.ceva-dsp.com
October 2013
FSM-9 Datasheet
1000-3075
Table of Contents
LIST OF FIGURES .......................................................................................................................... 5
1
FUNCTIONAL OVERVIEW ................................................................................................ 6
1.1
Reference Design Configurations ................................................................................... 7
1.1.1 Virtual Reality Head Tracker ........................................................................................ 7
1.1.2 Patient Activity and Orientation Application ................................................................. 7
1.1.3 Industrial Motion Analysis Application .......................................................................... 8
1.1.4 Vehicle Crash Recording Application ........................................................................... 8
1.1.5 3D Pointing Remote Control Application ...................................................................... 9
1.2
Motion Outputs ............................................................................................................... 9
1.3
FSM Calibration ............................................................................................................ 10
1.4
Pinout ........................................................................................................................... 10
1.5
Pin Descriptions ............................................................................................................ 11
2
MOTION FUNCTIONS ..................................................................................................... 12
2.1
Configuration ................................................................................................................ 12
2.1.1 Motion Outputs ........................................................................................................... 12
2.1.2 Sampling Rate ........................................................................................................... 12
2.1.3 Flash Record System ................................................................................................. 13
2.2
Power management ..................................................................................................... 13
2.3
Button Motion Suppression .......................................................................................... 14
2.4
Orientation Reconfiguration .......................................................................................... 14
2.5
AR/VR Stabilization ...................................................................................................... 14
3
HOST INTERFACE .......................................................................................................... 16
3.1
USB 2.0 Interface ......................................................................................................... 16
3.2
HCOMM Serial Peripheral Interface ............................................................................. 16
3.2.1 Host Interface Signals ................................................................................................ 16
3.2.2 HSPI Initialization ....................................................................................................... 17
3.2.3 HSPI Timing Parameters ........................................................................................... 17
3.2.4 Message Protocol ...................................................................................................... 17
3.3
HCOMM Message Support .......................................................................................... 19
4
4.1
4.2
4.3
4.4
4.5
ELECTRICAL CHARACTERISTICS ............................................................................... 20
Absolute Maximum Ratings .......................................................................................... 20
Recommended Operating Conditions .......................................................................... 20
Electrical Characteristics .............................................................................................. 21
Performance Specification ............................................................................................ 22
AC Characteristics ........................................................................................................ 23
5.1
5.2
MISCELLANEOUS .......................................................................................................... 24
Mechanical Information ................................................................................................ 24
Ordering Information ..................................................................................................... 26
5
6
REFERENCES ................................................................................................................. 27
7
NOTICES.......................................................................................................................... 28
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
3 / 28
October 2013
www.ceva-dsp.com
FSM-9 Datasheet
© 2019 CEVA, Inc. All rights reserved
1000-3075
4 / 28
October 2013
FSM-9 Datasheet
1000-3075
List of Figures
Figure 1: FSM-9 Block Diagram ............................................................................................................................... 6
Figure 2: Virtual Reality Head Tracker ..................................................................................................................... 7
Figure 3: Block Diagram of FSM-9 in a Typical Patient Activity and Orientation Application ................................... 7
Figure 4: Block Diagram of FSM-9 in a Typical Motion Analysis Application ............................................................ 8
Figure 5: Block Diagram of FSM-9 in a Typical Crash Recording Application .......................................................... 8
Figure 6: Block Diagram of FSM-9 in a Typical 3D Pointing Remote Control Application........................................ 9
Figure 7: FSM-9 Co-ordinate System ....................................................................................................................... 9
Figure 8: FSM-9 Orientation ................................................................................................................................... 10
Figure 9: FSM-9 Pinout (top view) .......................................................................................................................... 10
Figure 10: FSM-9 Pin Descriptions......................................................................................................................... 11
Figure 11: Supported Sensor Rates ....................................................................................................................... 12
Figure 12: FRS Records ......................................................................................................................................... 13
Figure 13: FSM-9 Operating Mode State Machine ................................................................................................. 13
Figure 14: Typical circuit design for SPI mode ....................................................................................................... 16
Figure 15: Signal Interface ..................................................................................................................................... 16
Figure 16: HSPI Timing Diagram............................................................................................................................ 17
Figure 17: HSPI Timing Parameters....................................................................................................................... 17
Figure 18: Slave to Master Data Transfer .............................................................................................................. 18
Figure 19: Master to Slave Data Transfer .............................................................................................................. 18
Figure 20: Supported HCOMM Messages ............................................................................................................. 19
Figure 21: FSM-9 Maximum Ratings ...................................................................................................................... 20
Figure 22: FSM-9 Operating Conditions ................................................................................................................. 20
Figure 23: FSM-9 Electrical Characteristics ........................................................................................................... 21
Figure 24: FSM-9 Performance Specification......................................................................................................... 22
Figure 25: FSM-9 AC Characteristics ..................................................................................................................... 23
Figure 26: FSM-9 Startup Timing ........................................................................................................................... 23
Figure 27: FSM-9 Enclosure Mechanical Outline ................................................................................................... 24
Figure 28: FSM-9 OEM Mechanical Outline ........................................................................................................... 25
Figure 29: FSM-9 OEM PCB Footprint ................................................................................................................... 25
Figure 30: Ordering Information .............................................................................................................................. 26
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
5 / 28
October 2013
FSM-9 Datasheet
1000-3075
1 Functional Overview
The FSM-9 is a complete motion processing module. MEMS inertial sensors measure motion around three
orthogonal axes. The module includes a 3-axis accelerometer, a 3-axis gyroscope and a 3-axis magnetometer. A
processor evaluates the data retrieved from the sensors and provides the results over USB or a Serial Peripheral
Interface (SPI) to the host. The serial interface is available with FSM-9 OEM only.
Figure 1: FSM-9 Block Diagram
At the center of the FSM-9 is the Freespace® Processor running MotionEngine™ software. This digital signal
processing software takes raw motion data from the MEMS inertial sensors and translates this raw data into
precise motion information. These accurate motion outputs can be used for gesture detection and a variety of
advanced motion-controlled applications. For pointer based applications, MotionEngine™ algorithms interpret
natural motions and translate these motions to on-screen cursor movements. The FSM software also includes
sophisticated power management functionality.
The FSM-9 can communicate with the system host over a USB 2.0 interface. The FSM supports full speed
operation (~ 12Mbps). The FSM can also be attached to a PCB and communicate over an industry standard serial
peripheral interface (SPI).
The FSM supports CEVA's Hillcrest Labs business unit proprietary HCOMM protocol. This protocol allows the
application to configure the FSM and receive processed data. Freespace® motion and data packets sent over this
interface are in a Human Interface Device (HID) format, which allows for maximum compatibility with other
communication links.
More details of the MotionEngine™ features and HCOMM can be found in reference 1 (HCOMM Reference
Manual, Hillcrest Labs).
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
6 / 28
October 2013
1.1
FSM-9 Datasheet
1000-3075
Reference Design Configurations
1.1.1 Virtual Reality Head Tracker
Figure 2: Virtual Reality Head Tracker
The FSM-9 can be integrated into head tracker equipment allowing the user to be immersed in either a virtual
reality or an augmented reality scenario. The FSM provides accurate angular position data allowing navigation of
this virtual world. A USB connection with support for HID allows for easy integration with all modern operating
systems.
1.1.2 Patient Activity and Orientation Application
Emergency
Call Button
FSM
SPI
Microcontroller
WiFi / Cellular
Radio
CFI
USB to PC
Flash Memory
Power Supply
Figure 3: Block Diagram of FSM-9 in a Typical Patient Activity and Orientation Application
The FSM-9 can be integrated into wearable patient monitoring devices as shown in Figure 3. The FSM is treated
as a sensor peripheral and data is retrieved from it as it becomes available. The microcontroller uses the FSM
data to track orientation changes and activity events, and can transmit potentially dangerous patient conditions via
WiFi or a cellular service. Optionally, flash memory can be used to store logs of orientation and activity for future
analysis on a PC.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
7 / 28
October 2013
FSM-9 Datasheet
1000-3075
1.1.3 Industrial Motion Analysis Application
Figure 4: Block Diagram of FSM-9 in a Typical Motion Analysis Application
The FSM-9 can be integrated into industrial equipment as shown in Figure 4. The FSM is treated as a sensor
peripheral and data is retrieved by the microcontroller as it becomes available. The microcontroller can use the
FSM data to determine whether the current motion is consistent with past motion performance and/or whether
one or more motion characteristics represent a potential failure scenario for the industrial facility. The
microcontroller can use WiFi or cellular service to communicate such failure scenarios to a central monitoring
facility. The flash memory in this system is used to store logs of FSM data as well as other processed data from
the microcontroller.
1.1.4 Vehicle Crash Recording Application
Crash Recorder Device
FSM
SPI
Vehicle
Main MCU
Flash Memory Drive
Vehicle Electronics Power Supply
12V from Battery
Figure 5: Block Diagram of FSM-9 in a Typical Crash Recording Application
The FSM-9 can be integrated with vehicle electronics to provide crash recording capabilities as shown in Figure 5.
The FSM is treated as a sensor peripheral and data is retrieved by the vehicle’s main MCU. The MCU maintains a
FIFO store on the flash memory drive sending newly received FSM data to the drive until such time as the MCU
detects a crash scenario, such as by air bag deployment. The Crash Recorder Device can then be removed from
the vehicle for analysis of the car’s motion preceding the crash.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
8 / 28
October 2013
FSM-9 Datasheet
1000-3075
1.1.5 3D Pointing Remote Control Application
Scroll
Wheel
SPI
FSM
Buttons
LEDs
RF Transceiver
Power Supply
Figure 6: Block Diagram of FSM-9 in a Typical 3D Pointing Remote Control Application
The FSM-9 can be integrated into a remote control design as shown in Figure 6. The RF transceiver handles
buttons, scroll wheels, LEDs and other peripherals that the remote control may contain. The FSM-9 is treated as a
sensor peripheral and provides cursor data. The RF transceiver is responsible for configuring the FSM and
informing the FSM of button and scroll events.
1.2
Motion Outputs
The FSM-9 provides 6 degrees of freedom in motion sensing using a right-handed coordinate system. The FSM
can therefore measure pitch, roll and yaw as well as motion along the x, y and z axes as defined in the diagram
below.
y
x
z
Figure 7: FSM-9 Co-ordinate System
The FSM performs constant dynamic calibration of the sensors to ensure a drift free estimation of motion and an
accurate compass heading. Sensor fusion is then employed to provide an estimation of the angular orientation of
the device. The FSM provides the following data to the user:
• Calibrated acceleration data (includes gravity)
• Calibrated linear acceleration data with gravity removed
• Inclination
• Angular velocity of the FSM
• Angular position (orientation) of the FSM as a quaternion
• Orientation compensated cursor data
• Magnetic field strength
• Compass heading
All data is presented in HID format to simplify integration with all operating systems.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
9 / 28
October 2013
1.3
FSM-9 Datasheet
1000-3075
FSM Calibration
Inertial motion tracking systems such as the FSM-9 require calibration for optimal performance. For ease of
integration and manufacturing, the FSM-9 comes pre-calibrated from the factory in the following orientation:
y
x
z
Figure 8: FSM-9 Orientation
Hillcrest’s factory calibration procedure measures various parameters within the MEMS sensors while under
highly accurate Gimbal-controlled motion and creates a record which is used by the MotionEngine software. This
record allows the MotionEngine software to produce more accurate motion data and hence improves the overall
interpretation of that data. The MotionEngine executes further in-use calibration algorithms to adjust the FSM’s
calibration dynamically over time and temperature.
1.4
Pinout
USBDP
USBDM
The FSM provides a micro-B USB connector allowing (with the appropriate cable) direct access to any system
incorporating a USB interface. The FSM-9 can also connect to a PCB via castellation connections on the lower
surface of the PCB. When mounted on a PCB the FSM can communicate over USB or a serial peripheral
interface (SPI).
RSTN
RESV
HI_INTN
HI_CSN
HI_SEL0
1
2
3
4
5
12 11
10
9
8
7
6
VDD
GND
HI_MOSI
HI_SCK
HI_MISO
Figure 9: FSM-9 Pinout (top view)
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
10 / 28
October 2013
1.5
FSM-9 Datasheet
1000-3075
Pin Descriptions
Figure 10 describes the function of each pin.
Pin
Number
Name
Mode
1
RSTN
2
3
4
RESV
HI_INTN
HI_CSN
I
O
I
5
HI_SEL0
I
6
7
8
9
10
11
12
HI_MISO
HI_SCK
HI_MOSI
GND
VDD
USBDM
USBDP
O
I
I
I
I
I/O
I/O
5V tolerant
Description
No
Active-low open-drain reset signal with a 30kΩ to 50kΩ internal
resistor to VDD. The module drives this signal low during reset with 2
mA drive capability. External hardware can drive the signal low to
reset the processor.
This pin should be tied to GND
Host interface interrupt
Host interface chip select
VDD (or floating): USB
GND : SPI mode
Host interface SPI master input, slave output
Host interface SPI clock
Host interface SPI master output, slave input
Ground supply
Positive supply voltage
Negative polarity USB data line
Positive polarity USB data line
O/D
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Figure 10: FSM-9 Pin Descriptions
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
11 / 28
October 2013
FSM-9 Datasheet
2
Motion Functions
2.1
Configuration
1000-3075
The FSM-9 powers up with all sensors disabled and no processing enabled. The application must therefore
configure the FSM before use. The application can configure the type of output, the sensors to use and their
sampling rate, the activity classification thresholds and the style of power management. The Data Mode Control V2
Request and Sensor Period Request referenced below are HCOMM messages which are detailed in reference 1.
2.1.1 Motion Outputs
The motion output is configured via a “Data Mode Control V2 Request” command. Two types of motion packet
can be generated by the FSM-9:
•
A HID mouse packet providing (dx, dy) relative cursor output
•
A MotionEngine Output packet. This packet can be configured to provide various types of motion data.
The types of motion data provided by the FSM are:
•
Linear acceleration (includes gravity)
•
Acceleration (gravity removed)
•
Inclination
•
Angular velocity
•
Magnetometer reading
•
Compass heading
•
Angular position (or orientation)
The Data Mode Control V2 Request command also allows the operating mode of the module to be configured.
For instance the application will want to turn on motion processing (set to Full Motion) to enable the output to be
generated.
**Note that the FSM-9 should be configured for “Format Select = 3” in the Data Mode Control V2 Request
message to ensure the full 8g of acceleration is available when the user requires acceleration measured in m/s2.
2.1.2 Sampling Rate
The sensor sampling defaults to a period of 8ms. The application can modify the sample rate of the sensor
system through the “Sensor Period Request” command. The FSM-9 support sensor rate configurations in 1ms
increments up to 255ms.
The FSM-9 allows configuration of the following sensors:
Sensor
Accelerometer
Gyroscope
Magnetometer
Sensor Fusion
Sample rates
0 or 2ms to 255ms
0 or 2ms to 255ms
0 or 2ms to 255ms
0 or 4ms to 255ms
Figure 11: Supported Sensor Rates
A period of 0ms disables the sensor. If the gyroscope is enabled the accelerometer is also enabled as the
accelerometer is used within the algorithms to calibrate the gyroscope. The magnetometer is always turned on
when any sensor is enabled.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
12 / 28
October 2013
FSM-9 Datasheet
1000-3075
The gyroscope provides the timing for sensor fusion and its setting will override all other sensor rates (i.e. the
accelerometer and magnetometer will be slaved to the gyroscope sample rate). When sensor fusion is enabled
the actual sample rate of the system will be the lowest of the sensor fusion setting or gyroscope setting.
If the FSM is configured for cursor output, the fusion rate will be used to generate the cursor. Hillcrest
recommends that the sample rate for cursor be greater than 80Hz (12.5ms).
2.1.3 Flash Record System
The FSM-9 provides a flash record system that is used to store various records (called FRS records) useful to the
operation of the FSM. The static calibration record is configured at manufacturing and describes the sensor set
and the orientation. The other records default to empty, but are available to the application to modify the behavior
of the FSM. Complete documentation of these records is provided in reference 1 and the use of these records is
referenced within this datasheet.
Description
Static calibration data record
MotionEngine Orientation record
MotionEngine Power Management record
MotionEngine AR/VR Stabilization record
FRS Record ID
0x7979
0x2D3E
0xD3E2
0x3E2D
Figure 12: FRS Records
2.2
Power management
The FSM-9 provides features that enable a system to manage the power of a system more effectively. The FSM-9
can be in one of three operating modes:
•
Full Motion – motion outputs are being provided
•
Wake-on-motion – a sleep mode in which the gyroscope and magnetometer are disabled and the
accelerometer is configured to detect a change in acceleration, such as a user picking up the module.
The event would force the FSM back into Full Motion mode
•
Sleep – the device is asleep and needs to be commanded to transition to Full Motion
The power management state machine is captured in Figure 13.
FM
Still
Motion or
command
WM
Command
Command
Command
SL
Figure 13: FSM-9 Operating Mode State Machine
Note that there is also an operating mode: “Full Motion On” which will force the FSM-9 to stay in the Full Motion
state regardless of the motion data.
The FSM-9 monitors the motion data and generates activity classification messages upon a change in activity.
There are three active states:
•
OnTable – The FSM-9 is very stable, likely on a stationary surface
•
Stable – The FSM-9 is stable, likely held in a fixed orientation (but not as stable as OnTable)
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
13 / 28
October 2013
•
FSM-9 Datasheet
1000-3075
Active – the FSM-9 is in motion
OnTable or Stable are generalized to “Still” in Figure 13.
These activity classification messages can be used by applications to power down elements of a system based
on the stability of the device. The parameters used to create Stable are captured in the Power Management FRS
record.
The Power Management record also enables the use of a feature called “gyro power save”. The gyro is the
sensor that consumes the most power on the FSM and turning it off can be beneficial in battery powered systems.
The configuration of this record allows the FSM to cycle the gyro on and off when the device is in various states of
stability. The penalty is that the start-up time of the gyro is approximately 50ms so data will be missing during the
start of motion.
Note that the “gyro power save” feature conflicts with the wake-on-motion mode described above and should be
used in scenarios where the device may become temporarily stable frequently and transitioning to wake-onmotion mode would be undesirable. It should therefore be used in “Full Motion On” mode to prevent this conflict.
Modifying the FRS record requires a reset of the module for the updated parameters to be used.
2.3
Button Motion Suppression
The FSM-9 can output a cursor, allowing a motion based remote control or air mouse to be designed. One of the
major issues with a motion based remote control is the unintentional movement that a button press can cause on
the cursor displayed on the screen. When the button is pressed it is highly likely that the remote control will dip
causing the cursor to change its position at just the point in time that the user is trying to select an onscreen icon.
To prevent this unintended motion the cursor data can be filtered after the button event. The application issues a
Button Motion Suppression Request to the FSM and data after the button event will be filtered. The request can
be made on both the button press and button release. To be most effective the request to suppress motion must
be as close to the event as possible to ensure the majority of the unintended motion is removed.
The Button Mode Suppression Request is a HCOMM message and is detailed in reference 1.
2.4
Orientation Reconfiguration
The FSM-9 presents angular position data based on the module’s frame of reference (or orientation). The factory
default orientation is displayed in Figure 8. The FSM-9 may be mounted on equipment that does not follow this
default frame of reference. The orientation data from the FSM-9 can be translated by the host application to
represent the frame of reference within which it is mounted.
However if cursor output is required the frame of reference must be corrected on the FSM itself. The orientation of
the FSM and the device to which it is mounted can be aligned by modifying the MotionEngine Orientation FRS
record. For the cursor to be generated correctly the X-axis should point forward, so if the device is mounted on a
head tracker (for instance) the X-axis of the device should be in the direction the user is looking.
The FRS record accepts a quaternion which represents the rotation from the default orientation to the desired
orientation.
Modifying the FRS record requires a reset of the module for the updated parameter to be used.
2.5
AR/VR Stabilization
Over time and especially during large, fast motions the angular position estimate output can become misaligned
with the actual angular position. When the device slows or stops, angular position can be determined accurately
and the angular position output updated accordingly. However a step update to the output can be undesirable in
some applications (for instance virtual reality). AR/VR Stabilization addresses this issue by correcting angular
position errors only when the device is moving.
The FSM-9 provides an FRS record to enable the correction of the angular position output in a more controlled
manner. The FRS record provides parameters that allow the response to be tuned per the application’s need:
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
14 / 28
October 2013
FSM-9 Datasheet
•
Scaling – Fraction of angular velocity to use to correct angular position errors
•
Max rotation – Maximum amount of angular correction that can be applied
•
Max error – Maximum error that is allowed to accumulate before a step update is forced
•
Stability magnitude – Amount of error needed before an update should be applied
1000-3075
Modification of the FRS record requires the FSM to be reset for the changes to take effect.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
15 / 28
October 2013
FSM-9 Datasheet
1000-3075
3 Host Interface
The FSM-9 presents itself to the system as a sensor peripheral. As such a host processor (the controlling
processor in the system) would configure the FSM and receive data from the module. The FSM can operate
directly over USB or can be embedded into a system and operate over a serial peripheral interface (SPI). The
mode is selected by the HI_SEL0 pin:
+3V
10
VDD
HI_INTN
HI_SCK
FSM-9
7
HI_CSN 4
HI_MOSI
5
3
HI_SEL0
HI_MISO
RSTN
GND
Host micro
8
6
1
9
Figure 14: Typical circuit design for SPI mode
For USB mode the HI_SEL0 pin can be left floating or pulled to VDD.
3.1
USB 2.0 Interface
The FSM-9 provides a micro-B USB receptacle. The FSM enumerates as a full speed USB 2.0 device when
connected to a USB port on systems running most operating systems. The FSM supports a number of messages
detailed in reference 1 and summarized in section 3.3 that allow various types of motion data to be produced and
to provide additional configuration information about the FSM. Hillcrest provides a Microsoft Windows application,
MotionStudio, which can provide information about the FSM and enable the user to monitor motion data and other
data from the device.
Hillcrest has also developed an open source project called libfreespace (available at
libfreespace.hillcrestlabs.com) which allows for the development of motion based applications. The FSM-9 in
conjunction with libfreespace is an ideal motion analysis development platform.
3.2
HCOMM Serial Peripheral Interface
The host interface is an augmented SPI interface. The FSM communicates with the host processor via the
HCOMM protocol, which is a message based protocol. In particular the FSM presents itself as the slave side of
the HCOMM SPI (HSPI) protocol. The host microcontroller must implement the master side of the HSPI protocol.
See reference 1 for a detailed description of the commands and formats.
3.2.1 Host Interface Signals
The signals used to connect the FSM-9 to the host microcontroller are shown in Figure 15.
Signal
HI_SCK
HI_MISO
HI_MOSI
HI_CSN
HI_INTN
RSTN
Reference
Manual Name
SPI_SCK
SPI_MISO
SPI_MOSI
SPI_CSN
SPI_INTN
Direction
Type
Description
M→S
S→M
M→S
CMOS
CMOS or Tri-state
CMOS
SPI clock
SPI data from slave to master
SPI data from master to slave
M→S
S→M
Bidirectional
CMOS
CMOS
OD /w Pull-up
Active low chip select to slave
Active low interrupt to master
System wide reset
Figure 15: Signal Interface
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
16 / 28
October 2013
FSM-9 Datasheet
1000-3075
The reset signal may be used to generate a system wide reset. This signal can be driven into the FSM. The
signal is also driven by the FSM after a power-on reset, brown-out reset, or software-generated reset.
3.2.2 HSPI Initialization
The FSM-9 initializes various state machines and configures itself immediately after reset. To ensure reliable
operation the application must wait for the FSM-9 to initiate the first HSPI access before communicating with the
device. See Figure 26.
3.2.3 HSPI Timing Parameters
The FSM-9 HSPI timing parameters are defined in Figure 16 and Figure 17. Pay close attention to the clock
phase and clock polarity, this mode is typically called SPI Mode 3.
TCLK
TRF
TZQ
TCLKH
TCLKL
TRF
TSU
TH
TH
TP
TKQ
TQZ
SPI_SCK
SPI_MOSI
MSB
SPI_MISO
MSB
LSB
LSB
SPI_CSN
Figure 16: HSPI Timing Diagram
Parameter
SPI_SCK period
SPI _SCK high time
SPI _SCK low time
SPI _SCK rise/fall time
Setup before SPI _SCK
Hold after SPI _SCK
SPI _SCK to data valid
SPI _SCK to data invalid
Access time, SPI _CSN
asserted to SPI _SCK fall
SPI _CSN idle between
transactions
SPI _INTN deasserted for
aborted transaction
SPI_INTN deasserted after
length byte sent
SPI_CSN low to MISO out
SPI_CSN high to High Z
Symbol
TCLK
TCLKH
TCLKL
TRF
TSU
TH
TKQ
TP
Inter-byte spacing
TPROCR
Conditions
Min
333
133
133
Typ
Max
15
Unit
ns
ns
ns
ns
ns
ns
ns
ns
TACC
0
ns
TIDLE
50
μs
8
5
4
25
TABORT
TIDLE
μs
TINTD
500
μs
TZQ
TQZ
400
10
ns
ns
0
ns
Figure 17: HSPI Timing Parameters
3.2.4 Message Protocol
If the FSM requires attention (i.e. has data to deliver) it will assert its interrupt pin. The length field is the second
byte of the data delivered by either the master or the slave and dictates how many clocks the SPI master must
provide to ensure all the data is transferred. It is possible for the master and slave to transfer data in the same
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
17 / 28
October 2013
FSM-9 Datasheet
1000-3075
transaction so whichever device has the most data to send governs the number of clock cycles generated. If the
master has no data to deliver it must set its length to zero.
TACC
TPROCR
TINTD
SPI_SCK
SPI_MOSI
0
0
Don’t Care
SPI_MISO
Class
Length
Payload
SPI_CSN
SPI_INTN
Figure 18: Slave to Master Data Transfer
If the host has data to provide to the FSM it asserts the chip select. The FSM will respond by asserting the
interrupt line. Only after the interrupt line has been asserted can the master respond with the data. In a similar
fashion the host and slave must honor the deassertion of the interrupt line after the length field has been clocked
out of the two devices. The interrupt line deassertion ensures that all parties have an understanding of how much
data is to be transferred. If the FSM has no data to deliver on a host initiated transfer it will set the length field to
zero.
TACC
TPROCR
SPI_SCK
SPI_MOSI
Class
Length
Payload
SPI_MISO
0
0
Don’t Care
SPI_CSN
SPI_INTN
Figure 19: Master to Slave Data Transfer
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
18 / 28
October 2013
3.3
FSM-9 Datasheet
1000-3075
HCOMM Message Support
The FSM-9 supports the following messages:
Packet
FRS Write Request
Class
0x7
Sub class
0x6
Source
Host
Target
FSM
Usage
Request for FRS write
FRS Write Response
FRS Write Data
FRS Read Request
FRS Read Response
Product ID Request
Product ID Response
Freespace Data Mode
Control V2 Request
Freespace Data Mode
Control V2 Response
Activity Classification
0x5
0x7
0x7
0x6
0x7
0x6
0x7
0x6
0x7
0x8
0x8
0x9
0x9
0x14
FSM
Host
Host
FSM
Host
FSM
Host
Host
FSM
FSM
Host
FSM
Host
FSM
Response to FRS write
FRS write data
Request for FRS write
FRS record read data
Request Product ID
Product ID data
Requests operation mode of device
0x5
0x14
FSM
Host
Reports operation mode of device
0x7
0x12
FSM
Host
Sensor Period Request
Sensor Period Response
Button Motion Suppression
Notification
0x7
0x5
0x7
0x16
0x16
0x17
Host
FSM
Host
FSM
Host
FSM
Activity classification messages for power
management
Configures sample rate
Reports sensor rate
Indicates a button event which allows
MotionEngine to suppress unintended
cursor motion
Mouse Packet
MotionEngine Output
0x2
0x26
-
FSM
FSM
Host
Host
Provides mouse cursor data
Provides fused sensor data
DFU Status Request
DFU Command
0x7
0x7
0x43
0x47
Host
Host
FSM
FSM
Request for bootloader status
Triggers bootloader operation
DFU Write Data
DFU Status Response
0x7
0x5
0x49
0x43
Host
FSM
FSM
Host
Data to write during upgrade
Status from bootloader
Figure 20: Supported HCOMM Messages
The messages are fully described in reference 1.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
19 / 28
October 2013
4
FSM-9 Datasheet
1000-3075
Electrical Characteristics
This section describes the electrical characteristics of the FSM-9. In SPI mode, all of the FSM I/O pins meet
CMOS and TTL requirements.
4.1
Absolute Maximum Ratings
Exposure to maximum rating conditions for extended periods may affect device reliability.
Parameter
Supply voltage in USB mode
Supply voltage in SPI mode
Input voltage on 5V tolerant pins
Input voltage on non-5V tolerant pins
Storage temperature
Symbol
VUSB
VDD
Rating
6.0
4.0
5.5
VDD + 0.3
-40 to +125
Unit
V
V
V
V
°C
Figure 21: FSM-9 Maximum Ratings
4.2
Recommended Operating Conditions
Parameter
Supply voltage in USB mode
Supply voltage in SPI mode
Operating temperature
Symbol
VUSB
VDD
Conditions
Min
2.9
0
Typ
5.0
3.0
Max
3.3
50
Unit
V
V
°C
Figure 22: FSM-9 Operating Conditions
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
20 / 28
October 2013
4.3
FSM-9 Datasheet
1000-3075
Electrical Characteristics
Parameter
Input high voltage
Input low voltage
Output high voltage
for non-USB I/O
Output low voltage
For non-USB I/O
Input leakage current
I/O source current
I/O sink current
USB mode operating
current
USB mode operating
current
USB mode operating
current
USB mode operating
current
SPI mode operating
current
SPI mode operating
current
SPI mode operating
current
SPI mode operating
current
SPI mode operating
current
Symbol
VIH
VIL
VOH
VOL
Conditions
IOH=8mA
Min
1.82
Typ
2.4
Max
VDD + 0.5
1.0
Unit
V
V
2.8 **
V
0.4
V
1
8
8
μA
mA
mA
IOL=8mA
IIL/IIH
FM mode, 250Hz
24
mA
FM mode, 125Hz
18.3
mA
FM mode, 100Hz
17.5
mA
7.7
mA
Wake-on-motion/
Sleep
Vdd = 3.0V, FM
mode, 250Hz
Vdd = 3.0V, FM
mode, 125Hz
Vdd = 3.0V, FM
mode, 100Hz
Vdd = 3.0V, Wakeon-motion
20
mA
15.25
mA
14.5
mA
0.16
mA
Vdd = 3.0V, Sleep
0.1
mA
Figure 23: FSM-9 Electrical Characteristics
** The FSM-9 contains a 2.8V LDO to condition the power supply for the MEMS sensors.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
21 / 28
October 2013
4.4
FSM-9 Datasheet
1000-3075
Performance Specification
Parameter
Typical
Latency
1.8ms(1)
Sensor Fusion Rate
≤250Hz
Angular Velocity
Range
+/- 1833°/s
Resolution
0.04°/s
Bias (zero rate offset)
0.01 rad/s
Sensitivity accuracy
1%
Non-linearity (% full scale)
0.2%
Linear Acceleration
Range
+/- 8g(2)
Resolution
< 6mg
Bias (zero-g offset)
< 20mg
Sensitivity accuracy
2%
Non-linearity (% full scale)
0.5%
Magnetometer
Range
+/- 600 µT
Resolution
< 1 µT
Bias
< 5 uT
Sensitivity accuracy
5%
Non-linearity (% full scale)
0.5%
Orientation Specification
Static Accuracy
1.5°
Static Heading
1.0°
Static Non-heading
1.0°
Dynamic Accuracy
1.5°
Dynamic Heading
1.0°
Dynamic Non-heading
1.0°
Pointer Performance
Sensor Fusion Rate
> 80Hz
Sensitivity
33 mickeys/°
Angle Error
< 2°
Tremor Cancellation
70%
Figure 24: FSM-9 Performance Specification
Specification derived via simulation and verified with device measurements. Typical specifications are not
guaranteed. Orientation specification applies to sensor fusion at 250Hz. For optimal cursor (pointing) performance
the sensor fusion rate should be set to greater than 80Hz.
1. Latency is measured from the gyroscope making data available until the completion of sensor fusion and
the fused data being made available over the SPI interface or for the USB interface.
2. The FSM-9 should be configured for “Format Select = 3” in the Data Mode Control V2 Request message
to ensure the full 8g of acceleration is available when using units of m/s2 versus g.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
22 / 28
October 2013
4.5
FSM-9 Datasheet
1000-3075
AC Characteristics
Parameter
Symbol
Wake-on-motion wake up
time(2)
Reset pulse width
Reset to init start
Initialization time
Conditions
Min
movement to motion
data available
TRST
TRI
TINIT
Typ
Max
200
ms
1043
900
1520
Unit
5000
μs
μs
ms
Figure 25: FSM-9 AC Characteristics
2. Wake-on-motion
time characterized from device measurements.
TRST
TRI
TINIT
RSTN
HI_INTN
Figure 26: FSM-9 Startup Timing
Note that no HSPI transactions should occur until the FSM first asserts the HI_INTN signal.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
23 / 28
October 2013
FSM-9 Datasheet
1000-3075
5 Miscellaneous
5.1
Mechanical Information
The mechanical dimensions of the FSM-9 are presented below (dimensions in mm[inches]). Mechanical CAD files
are available on www.ceva-dsp.com
Figure 27: FSM-9 Enclosure Mechanical Outline
The FSM-9 is also available without the enclosure as a printed circuit assembly only (FSM-9 OEM). See below
for mechanical dimensions and PCB footprint information.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
24 / 28
October 2013
FSM-9 Datasheet
1000-3075
Figure 28: FSM-9 OEM Mechanical Outline
The recommended PCB footprint for the FSM-9 OEM is presented below. It is recommended that the module be
attached to the mating PCB manually. Contact Hillcrest if reflow is required.
Figure 29: FSM-9 OEM PCB Footprint
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
25 / 28
October 2013
5.2
FSM-9 Datasheet
1000-3075
Ordering Information
The FSM-9 is available in three models.
Model Description
Module Reference Kit with enclosure in blister pack
Module with enclosure in bulk packaging
Module Printed Circuit Assembly (PCA) in bulk packaging
Part Number
FSM-9 Reference Kit
FSM-9
FSM-9 OEM
Figure 30: Ordering Information
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
26 / 28
October 2013
FSM-9 Datasheet
1000-3075
6 References
1. 1000-2984 - HCOMM Reference Manual, Hillcrest Labs.
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
27 / 28
October 2013
FSM-9 Datasheet
1000-3075
7 Notices
© Copyright 09/2019 CEVA, Inc. and/or its subsidiaries (“CEVA”) All rights reserved. All specifications are subject
to change without notice.
Freespace and MotionEngine are registered trademarks of CEVA. Other company and product names mentioned
in this document may be the trademark or registered trademark of their respective owners.
Disclaimer: The information furnished herein is believed to be accurate and reliable. However, the information is
provided “AS IS”, without any express or implied warranty of any kind including warranties of merchantability, noninfringement of intellectual property, or fitness for any particular purpose.
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. CEVA may make changes to these
materials, or to the products described within.
www.ceva-dsp.com
FOR MORE
INFORMATION:
www.ceva-dsp.com
© 2019 CEVA, Inc. All rights reserved
28 / 28