Yost Labs 3-Space Bluetooth User manual

3-Space Sensor
Bluetooth
Miniature Wireless Attitude & Heading
Reference System
User's Manual
Yost Labs
630 Second Street
Portsmouth, Ohio 45662
.YostLabs.com
Patents Pending
©2007-2011 Yost Engineering, Inc.
Printed in USA
3-Space Sensor
3-Space Sensor


3-Space Sensor
Bluetooth
Miniature Wireless Attitude & Heading
Reference System
User's Manual
Yost Labs
630 Second Street
Portsmouth, Ohio 45662
.YostLabs.com
Phone: 740-876-4936
Patents Pending
©2007-2011 Yost Engineering, Inc.
Printed in USA

Table of Contents
1. Usage/Safety Considerations...........................................................................................................................................1
1.1 Usage Conditions.....................................................................................................................................................1
1.2 Technical Support and Repairs................................................................................................................................1
1.3 Regulatory Approval ..............................................................................................................................................1
1.3.1 United States FCC Approval..........................................................................................................................1
1.3.2 Canada IC Approval.......................................................................................................................................2
1.3.3 European Approval.........................................................................................................................................2
1.3.4 Bluetooth Listing............................................................................................................................................2
1.4 Battery Safety Considerations.................................................................................................................................2
2. Overvie of the YEI 3-Space Sensor..............................................................................................................................4
2.1 Introduction.............................................................................................................................................................4
2.2 Applications.............................................................................................................................................................4
2.3 Hard are Overvie .................................................................................................................................................5
2.4 Features....................................................................................................................................................................6
2.5 Block Diagram of Sensor Operation.......................................................................................................................7
2.6 Specifications..........................................................................................................................................................8
2.7 Physical Dimensions................................................................................................................................................9
2.8 Axis Assignment......................................................................................................................................................9
3. Description of the 3-Space Sensor................................................................................................................................10
3.1 Orientation Estimation...........................................................................................................................................10
3.1.1 Component Sensors......................................................................................................................................10
3.1.2 Scale, Bias, and Cross-Axis Effect...............................................................................................................10
3.1.3 Component Sensor Data Types.....................................................................................................................11
3.1.4 Additional Calibration..................................................................................................................................11
3.1.5 Reference Vectors.........................................................................................................................................12
3.1.6 Orientation Filtering ....................................................................................................................................12
3.1.7 Tare Orientation............................................................................................................................................12
3.1.8 Offset Orientation.........................................................................................................................................13
3.1.9 Other Estimation Parameters........................................................................................................................13
3.2 Communication......................................................................................................................................................14
3.2.1 Wired Streaming Mode.................................................................................................................................14
3.3 Input Device Emulation.........................................................................................................................................16
3.3.1 Axes and Buttons..........................................................................................................................................16
3.3.2 Joystick.........................................................................................................................................................16
3.3.3 Mouse...........................................................................................................................................................16
3.4 Sensor Settings......................................................................................................................................................17
3.4.1 Committing Settings.....................................................................................................................................17
3.4.2 Natural Axes.................................................................................................................................................17
3.4.3 Settings and Defaults....................................................................................................................................17
4. 3-Space Sensor Usage/Protocol....................................................................................................................................19
4.1. Usage Overvie ...................................................................................................................................................19
4.1.1 Protocol Overvie ........................................................................................................................................19
4.1.2 Computer Interfacing Overvie ...................................................................................................................19
4.2. Protocol Packet Format........................................................................................................................................20
4.2.1 Binary Packet Format...................................................................................................................................20
4.2.2 ASCII Text Packet Format...........................................................................................................................20
4.3 Response Header Format.......................................................................................................................................22
4.3.1 Wired Response Header...............................................................................................................................22
4.3.2 Wired Streaming ith Response Header......................................................................................................23
4.4 Command Overvie ..............................................................................................................................................24
4.4.1 Orientation Commands.................................................................................................................................24
4.4.2 Normalized Data Commands........................................................................................................................25
4.4.3 Corrected Data Commands...........................................................................................................................25
4.4.4 Other Data Commands..................................................................................................................................25
4.4.5 Ra Data Commands....................................................................................................................................26
4.4.6 Streaming Commands...................................................................................................................................26
4.4.7 Configuration Write Commands...................................................................................................................27
4.4.8 Configuration Read Commands....................................................................................................................31
4.4.9 Calibration Commands.................................................................................................................................33
4.4.10 Battery Commands......................................................................................................................................34
4.4.11 General Commands.....................................................................................................................................35
4.4.12 Wired HID Commands...............................................................................................................................36

User's Manual
4.4.13 General HID Commands.............................................................................................................................37
Appendix...........................................................................................................................................................................38
USB Connector............................................................................................................................................................38
Hex / Decimal Conversion Chart.................................................................................................................................38
5

User's Manual
1. Usage/Safety Considerations
1.1 Usage Conditions
•Do not use the 3-Space Sensor in any system on hich people's lives depend(life support, eapons, etc.)
•Because of its reliance on a compass, the 3-Space Sensor ill not ork properly near the earth's north or south
pole.
•Because of its reliance on a compass and accelerometer, the 3-Space Sensor ill not ork properly in outer
space or on planets ith no magnetic field.
•Care should be taken hen using the 3-Space Sensor in a car or other moving vehicle, as the disturbances
caused by the vehicle's acceleration may cause the sensor to give inaccurate readings.
•Because of its reliance on a compass, care should be taken hen using the 3-Space Sensor near ferrous metal
structures, magnetic fields, current carrying conductors, and should be kept about 6 inches a ay from any
computer screens or to ers.
•Since the Bluetooth 3-Space Sensor uses RF communication technology, communication failure modes should
be carefully considered hen designing a system that uses the Bluetooth 3-Space Sensor.
•The Bluetooth 3-Space Sensor is po ered by a rechargeable lithium-polymer battery. Lithium-polymer
batteries have high energy densities and can be dangerous if not used properly. See section 1.4 Battery
Considerations for further information pertaining to battery safety.
1.2 Technical Support and Repairs
Standard Limited Product Warranty: Yost Labs arrants the media and hard are on hich products are furnished to be
free from defects in materials and orkmanship under normal use for sixty (60) days from the date of delivery except
for OEM arranty items(see belo ). Yost Labs ill repair or replace any defective product hich is returned ithin
this time period. Returned items ill be tested in order to confirm a manufacturing defect is present. No arranties
exist for any misuse.
OEM Limited Product Warranty: The follo ing OEM products are subject to additional return limitations beyond the
Standard Limited Product Warranty: surface-mount modules, integrated circuits, bare PCB modules, and other
electronic components. Because of the risk of damage or malfunction due to user testing and handling problems, returns
ill be granted only upon evidence and/or inspection conclusively demonstrating manufacturing defect. All OEM
products are individually tested prior to shipment for quality control.
Product Support: Yost Labs provides technical and user support via our toll-free number (740-876-4936) and via email
(support@yostlabs.com). Support is provided for the lifetime of the equipment. Requests for repairs should be made
through the Support department. For damage occurring outside of the arranty period or provisions, customers ill be
provided ith cost estimates prior to repairs being performed.
1.3 Regulatory Approval
1.3.1 United States FCC Approval
This device contains FCC ID: T9J-R41-1
This equipment has been tested and found to comply ith the limits for a Class B digital device, pursuant to part 15 of
the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential
installation. This equipment generates, uses and can radiate radio frequency energy, and if not installed and used in
accordance ith the instructions, may cause harmful interference to radio communications. Ho ever, there is no
guarantee that interference ill not occur in a particular installation. If this equipment does cause harmful interference to
radio or television reception, hich can be determined by turning the equipment off and on, the user is encouraged to try
to correct the interference by one or more of the follo ing measures:
•Reorient or relocate the receiving antenna.
•Increase the separation bet een the equipment and receiver.
1

User's Manual
•Connect the equipment into an outlet on a circuit different from that to hich the receiver is connected.
•Consult the dealer or an experienced radio/TV technician for help.
To satisfy FCC RF Exposure requirements for mobile and base station transmission devices, a separation distance of 20
cm or more should be maintained bet een the antenna of this device and persons during operation. To ensure
compliance, operation at closer than this distance is not recommended. The antenna(s) used for this transmitter must not
be co-located or operating in conjunction ith any other antenna or transmitter.
If the Wireless Unit is used in a portable application (antenna is less than 20 cm from persons during operation), the
integrator is responsible for performing Specific Absorption Rate (SAR) testing in accordance ith FCC rules 2.1091
1.3.2 Canada IC Approval
This device contains IC ID: 6514A-RN411
This device has been certified for use in Canada under Industry Canada (IC) Radio Standards Specification (RSS) RSS-
210 and RSS-Gen.
1.3.3 European Approval
The device contains a communication module that has been certified for use in European countries.
The follo ing testing has been completed:
Test standard ETSI EN 300 328-1 and EN 300 328-2 2.4GHz:
•Maximum Transmit Po er, Maximum EIRP Spectral Density
•Frequency Range, Radiated Emissions
Test standards ETSI EN 55022 Class B radiated, EN61000-4-2, EN61000-4-3, EN61000-4-6, EN61000-4-8
•ESD immunity
•Radiated field, Radiated RF immunity
•Po er magnetic immunity
1.3. Bluetooth Listing
The device contains a Bluetooth communications module that is Bluetooth listed as BTID: B013180.
1.4 Battery Safety Considerations
The Wireless 3-Space Sensor contains a rechargeable lithium-polymer battery. Lithium-polymer batteries have high
energy densities and can be dangerous if not used and cared for properly. The Wireless 3-space Sensor has been
designed to include multiple levels of battery safety assurance. The Wireless 3-Space Sensor circuitry includes smart
charging circuitry ith thermal management to prevent over-charging the battery. The battery pack itself also includes
protection circuitry to prevent over-charge, over-voltage, over-current, and over-discharge conditions.
Most battery issues arise from improper handling of batteries, and particularly from the continued use of damaged
batteries.
As ith any lithium-polymer battery-po ered device, the follo ing should be observed:
•Don’t disassemble, crush, puncture, shred, or other ise attempt to change the form of your battery.
•Don't attempt to change of modify the battery yourself. Contact YEI technical support for battery replacement
or battery repair.
•Don’t let the mobile device or battery come in contact ith ater.
•Don’t allo the battery to touch metal objects.
•Don’t place the sensor unit near a heat source. Excessive heat can damage the sensor unit or the battery. High
temperatures can cause the battery to s ell, leak, or malfunction.
2

User's Manual
•Don’t dry a et or damp sensor unit ith an appliance or heat source, such as a hair dryer or micro ave oven.
•Don't drop the sensor unit. Dropping, especially on a hard surface, can potentially cause damage to the sensor
unit or the battery.
•Discontinue use immediately and contact YEI technical support if the battery or sensor unit produce odors,
emit smoke, exhibit s elling, produce excess heat, exhibit leaking.
•Dispose of Lithium-polymer batteries properly in accordance ith local, state , and federal guidelines.
3

User's Manual
2. Overview of the YEI 3-Space Sensor
2.1 ntroduction
The YEI 3-Space SensorTM Bluetooth integrates a miniature, high-precision, high-reliability, Attitude and Heading
Reference System (AHRS) ith a 2.4GHz Bluetooth communication interface and a rechargeable lithium-polymer
battery solution into a single lo -cost end-use-ready unit. The Attitude and Heading Reference System (AHRS) uses
triaxial gyroscope, accelerometer, and compass sensors in conjunction ith advanced on-board filtering and processing
algorithms to determine orientation relative to an absolute reference orientation in real-time.
Orientation can be returned in absolute terms or relative to a designated reference orientation. The proprietary multi-
reference vector mode increases accuracy and greatly reduces and compensates for sensor error. The YEI 3-Space
Sensor Bluetooth system also utilizes a dynamic sensor confidence algorithm that ensures optimal accuracy and
precision across a ide range of operating conditions.
The YEI 3-Space Sensor Bluetooth unit features are accessible via a ell-documented open communication protocol
that allo s access to all available sensor data and configuration parameters using Bluetooth v2.0 EDR SPP ireless or
USB 2.0 interfaces. Versatile commands allo access to ra sensor data, normalized sensor data, and filtered absolute
and relative orientation outputs in multiple formats including: quaternion, Euler angles (pitch/roll/ya ), rotation matrix,
axis angle, t o vector(for ard/up).
The YEI 3-Space SensorTM Bluetooth communicates ith a host PC via any standard internal or external Bluetooth
adapter. Each sensor is assigned a unique Bluetooth MAC Address thus allo ing any number of sensor to be used ith
a single Bluetooth host simultaneously. Additionally, each YEI 3-Space Bluetooth sensor unit can communicate ith
multiple associated hosts.
When used as a USB device, the 3-Space SensorTM provides mouse emulation and joystick emulation modes that ease
integration ith existing applications.
2.2 Applications
•Robotics
•Motion capture
•Positioning and stabilization
•Vibration analysis
•Inertial augmented localization
•Personnel / pedestrian navigation and tracking
•Unmanned air/land/ ater vehicle navigation
•Education and performing arts
•Healthcare monitoring
•Gaming and motion control
•Accessibility interfaces
•Virtual reality and immersive simulation
4

User's Manual
2.3 Hardware Overview
1. USB Connector – The 3-Space Sensor uses a 5-pin mini USB connector to connect to a computer via USB
and to charge the internal battery. The USB connector provides for both po er and communication signals.
2. Recessed Power Switch – The 3-Space Sensor can be s itch on and off hen po ered from the internal
battery by using the recessed po er s itch. When connected via USB, the unit is po ered and the batteries
ill begin recharging regardless of the position of the recessed po er s itch
3. Input Button 1 – The 3-Space Sensor includes t o input buttons that can be used in conjunction ith the
orientation sensing capabilities of the device. The inputs are especially useful hen using the 3-Space Sensor
as an input device such as in joystick emulation mode or mouse emulation mode.
4. Indicator ED – The 3-Space Sensor includes an RGB LED that can be used for visual status feedback.
5. Input Button 2 – The 3-Space Sensor includes t o input buttons that can be used in conjunction ith the
orientation sensing capabilities of the device. The inputs are especially useful hen using the 3-Space Sensor
as an input device such as in joystick emulation mode or mouse emulation mode.
5

User's Manual
2.4 Features
The YEI 3-Space Sensor Bluetooth has many features that allo it to be a flexible all-in-one solution for your
orientation sensing needs. Belo are some of the key features:
•Small self-contained high-performance ireless AHRS at 35mm x 60mm x 15mm and 28 grams
•Integrated 2.4GHz Bluetooth v2.0 EDR Class 1 ireless interface allo s high-performance at ranges up to 300'
•Integrated Lithium-Polymer battery and charge control allo s battery life of 5+ hours at full performance
•Fast sensor update and filter rate allo use in real-time applications, including stabilization, virtual reality, real-
time immersive simulation, and robotics
•Highly customizable orientation sensing ith options such as tunable filtering, oversampling, and orientation
error correction
•Advanced integrated Kalman filtering allo s sensor to automatically reduce the effects of sensor noise and sensor
error
•Robust open protocol allo s commands to be sent in human readable form, or more quickly in machine readable
form
•Orientation output format available in absolute or relative terms in multiple formats ( quaternion, rotation matrix,
axis angle, t o-vector )
•Absolute or custom reference axes
•Access to ra sensor data
•Flexible communication options: USB 2.0 or ireless 2.4GHz Bluetooth SPP (FCC Certified)
•Bluetooth SPP requires no proprietary dongle hard are
•USB 2.0 and Bluetooth SPP communication via virtual COM port
•Unique Bluetooth MAC ID allo s simultaneous access of multiple sensors to be associated ith a single host.
•USB joystick/mouse emulation modes ease integration ith existing applications
•Upgradeable firm are
•RGB status LED, t o programmable input buttons
•Available in either hand-held or scre -do n packaging
•RoHS compliant
6

User's Manual
2.5 Block Diagram of Sensor Operation
7
TSS Bluetooth
Processor
Kalman
Filter
3 Axis
Accelerometer
USB 2.0
Interface
Scale, Bias, Normalization, &
Error Compensation
2.4Ghz Bluetooth
SPP Interface
USB 2.0
Host System
Non volatile
Calibration &
Performance
Settings
Final
Orientation
3 Axis
Rate Gyro
3 Axis
Compass
Temperature
Sensor
USB Mouse &
Joystick
Emulation
Bluetooth Module
& Antenna
LiPo Battery &
Charge Management

User's Manual
2.6 Specifications
General
Part number TSS-BT (Handheld Sensor Unit)
TSS-BT-S (Scre -do n Sensor Unit)
Dimensions 35mm x 60mm x 15mm (1.38 x 2.36 x 0.59 in.)
Weight 28 grams ( 0.98 oz )
Supply voltage +5v USB
Battery technology rechargeable Lithium-Polymer
Battery lifetime 5+ hours continuous use at full performance
Communication interfaces USB 2.0, 2.4GHz Bluetooth SPP (FCC Certified)
Wireless communication range up to 300' (Bluetooth v2.0+EDR, Class 1)
Filter update rate up to 200Hz ith full functionality
Orientation output absolute & relative quaternion, Euler angles, axis angle, rotation matrix, t o vector
Other output ra sensor data, corrected sensor data, normalized sensor data, temperature
Shock survivability 5000g
Temperature range -40C ~ 85C ( -40F ~ 185F )
Processor 32-bit RISC running @ 60MHz
Sensor
Orientation range 360º about all axes
Orientation accuracy ±2º for dynamic conditions & all orientations
Orientation resolution <0.08º
Orientation repeatability 0.085º for all orientations
Accelerometer scale ±2g / ±4g / ±8g selectable
Accelerometer resolution 14 bit
Accelerometer noise density 99µg/√Hz
Accelerometer sensitivity 0.00024g/digit for ±2g range
0.00048g/digit for ±4g range
0.00096g/digit for ±8g range
Accelerometer temperature sensitivity ±0.008%/°C
Gyro scale ±250/±500/±2000 º/sec selectable
Gyro resolution 16 bit
Gyro noise density 0.03º/sec/√Hz
Gyro bias stability @ 25°C 11º/hr average for all axes
Gyro sensitivity 0.00875º/sec/digit for ±250º/sec
0.01750º/sec/digit for ±500º/sec
0.070º/sec/digit for ±2000º/sec
Gyro non-linearity 0.2% full-scale
Gyro temperature sensitivity ±0.016%/°C
Compass scale ±1.3 Ga default. Up to ±8.1 Ga available
Compass resolution 12 bit
Compass sensitivity 5 mGa/digit
Compass non-linearity 0.1% full-scale
*Specifications subject to change
8

User's Manual
2.7 Physical Dimensions
2.8 Axis Assignment
All YEI 3-Space Sensor product family members have re-mappable axis assignments and axis directions. This
flexibility allo s axis assignment and axis direction to match the desired end-use requirements.
The natural axes of the 3-Space Sensor are as follo s:
•The positive X-axis points out of the right hand side of the sensor, hich is the side that is facing right hen
the buttons face up ard and plug faces to ards you.
•The positive Y-axis points out of the top of the sensor, the side ith the buttons.
•The positive Z-axis points out of the front of the sensor, the side opposite the plug.
The natural axes are illustrated in the diagram belo
Bear in mind the difference bet een natural axes and the axes that are used in protocol data. While they are by default
the same, they can be remapped so that, for example, data axis Y could contain data from natural axis X. This allo s
users to ork ith data in a reference frame they are familiar ith.
9

User's Manual
3. Description of the 3-Space Sensor
3.1 Orientation Estimation
The primary purpose of the 3-Space Sensor is to estimate orientation. In order to understand ho to handle this
estimation and use it in a meaningful ay, there are a fe concepts about the sensor that should be understood. The
follo ing sections describe these concepts.
3.1.1 Component Sensors
The 3-Space Sensor estimates orientation by combining the data it gets from three types of sensors: a gyroscope, an
accelerometer, and a compass. A fe things you should kno about each of these sensors:
•Accelerometer: This sensor measures the acceleration due to gravity, as ell as any other accelerations that
occur. Because of this, this sensor is at its best hen the 3-Space Sensor is sitting still. Most jitter seen as the
orientation of the sensor changes is due to shaking causing perturbations in the accelerometer readings. To
account for this, by default, hen the 3-Space Sensor is being moved, the gyroscope becomes more
trusted(becomes a greater part of the orientation estimate), and the accelerometer becomes less trusted.
•Gyroscope: This sensor measures angular motion. It has no ability to give any absolute orientation
information like the accelerometer or compass, and so is most useful for correcting the orientation during
sensor motion. Its role during these times becomes vital, though, as the accelerometer readings can become
unreliable during motion.
•Compass: This sensor measures magnetic direction. The readings from the compass and accelerometer are
used together to form the absolute component of orientation, hich is used to correct any short term changes
the gyroscope makes. Its readings are much more stable than those of the accelerometer, but it can be
adversely affected by any ferrous metal or magnetic objects. When the accelerometer is less trusted, the
compass is treated in the same ay so as to avoid updates to orientation based on partial absolute information.
3.1.2 Scale, Bias, and Cross-Axis Effect
The readings taken from each component sensor are not in a readily usable form. The compass and accelerometer
readings are not unit vectors, and the gyroscope readings aren't yet in radians per second. To convert them to these
forms, scale and bias must be taken into account. Scale is ho much larger the range of data read from the component
sensor is than the range of data should be hen it is converted. For example, if the compass ere to give readings in the
range of -500 to 500 on the x axis, but e ould like it to be in the range of -1 to 1, the scale ould be 500. Bias is ho
far the center of the data readings is from 0. If another compass read from -200 to 900 on the x axis, the bias ould be
350, and the scale ould be 550. The last parameter used in turning this component sensor data into usable data is
cross-axis effect. This is the tendency for a little bit of data on one axis of a sensor to get mixed up ith the other t o.
This is an effect experienced by the accelerometer and compass. There are 6 numbers for each of these, one to indicate
ho much each axis is affected by each other axis. Values for these are generally in the range of 1 to 10%. These
parameters are applied in the follo ing order:
1) Bias is added to each axis
2) The three axes are treated as a vector and multiplied by a matrix representing scale and cross-axis
parameters
Factory calibration provides default values for these parameters for the accelerometer and compass, and users should
probably never need to change these values. To determine these parameters for the gyroscope, you must calibrate it.
Read the Quick Start guide or the 3-Space Suite manual for more information on ho to do this.
10

User's Manual
3.1.3 Component Sensor Data Types
Component sensor data is presented by the 3-Space Sensor in three different stages and is readily accessible via certain
protocol commands.
•Raw Sensor Data: This refers to data that is read directly from each of the component sensors before any
additional processing has occurred. This kind of data is ell-suited for users ho ish to perform their o n
calibration routines as ell as applications here precise analysis of motion is not extremely critical. Ra data
commands are listed in Section 4.4.5, “Ra Data Commands” and span commands 0x40 through 0x43.
Example: In the ±2G range, a ra accelerometer vector might look like (144, -25904, 744). This ould
indicate a force that is mostly in a do n ard direction.
•Corrected Sensor Data: This refers to 'ra ' data that has been biased and scaled to represent real- orld units,
using the steps as described in Section 3.1.2, “Scale, Bias and Cross-Axis Effect”. There is an additional
scaling that occurs, hich further alters the data reading based on each component sensor's device-specific
values. This scaling provides the real- orld equivalents for read data. For the accelerometer, these values are
in units of g-forces, for the magnetometer, these values are in units of gauss, and for the gyroscope, these
values are in units of radians/sec. This kind of data is ell-suited for users ho ish to accurately track the
motion of objects in 3D space or measure the strength and direction of magnetic fields. Corrected data
commands are listed in Section 4.4.3, “Corrected Data Commands” and span commands 0x25 through 0x28.
Example: In the ±2G range, the same ra accelerometer vector from before, hen corrected, might look
like (.004, -.791, .023). Note that these values are in units of g, and ould indicate that at the moment of
the sample, the sensor is accelerating mostly do n ards at a rate of 7.75 meters per second squared.
•Normalized Sensor Data: This refers to 'corrected' data that has been geometrically normalized. For the
accelerometer and magnetometer, all normalized sensor readings are unit-vectors and as such, have lengths of
1. For the gyroscope, these is no difference bet een 'corrected' and 'normalized' data. This kind of data is ell-
suited for users ho are only interested in the direction of acceleration or magnetic fields. Normalized data
commands are listed in Section 4.4.2, “Normalized Data Commands” and span commands 0x20 through 0x23.
Example: The corrected accelerometer vector from before, hen normalized, ould look like (0.05,
-0.998, 0.011). Note that the magnitude information is lost, and only the direction of the acceleration
remains.
3.1. Additional Calibration
The 3-Space Sensor provides multiple calibration modes that can improve performance at the cost of additional setup
and calibration routines. For more information on setting these additional modes, please refer to command 169.
•Bias Mode: Applies default range scaling to ra data readings. Also applies a bias offset to ra data, the
values of hich are taken from the provided calibration parameters command. (See section 4.3.7 for more
information)
•Bias / Scale Mode: The default calibration mode. Applies default range scaling to ra data readings. Also
applies a bias offset to the ra data as ell as an additional scale matrix. Uses the matrix and vector portions
from the provided calibration parameters command.
•Ortho-Calibration Mode: A more advanced calibration mode that requires initial setup steps (Please refer to
the 3-Space Suite Quick Start Guide for information on ho to supply ortho-calibration data) . Uses 24
orthogonal data points to provide accelerometer and compass correction factors for enhanced orientation
accuracy.
11

User's Manual
3.1.5 Reference Vectors
In order to get an absolute estimation of orientation from the accelerometer and compass, the sensor needs a reference
vector for each to compare to the data read from it. The most obvious choice for these are the standard direction of
gravity(do n) and the standard direction of magnetic force(north), respectively. Ho ever, the sensor does provide
several different modes for determining hich reference vector to use:
•Single Manual: Uses 2 reference vectors it is given as the reference vectors for the accelerometer and
compass.
•Single Auto: When the sensor po ers on or is put into this mode, it calculates gravity and north and uses those
calculated vectors as the reference vectors.
•Single Auto Continual: The same as Single Auto, but the calculation happens constantly. This can account
for some shifts in magnetic force due to nearby objects or change of location, and also can help to cope ith
the instability of the accelerometer.
•Multiple: Uses a set of reference vectors from hich the best are picked each cycle to form a single, final
reference vector. This mode has the ability to compensate for certain errors in the orientation. In this mode the
sensor ill have a slightly slo er update rate, but ill provide greater accuracy. For information on ho to set
up this mode, see the Quick Start guide or the 3-Space Suite manual.
3.1.6 Orientation Filtering
The 3-Space Sensor provides several different modes for providing orientation estimation. Note also that IMU data
collection rate is bound to the update rate of the filter. For more information on setting these additional modes, please
refer to command 123.
•Kalman Filter: The default filter mode. Normalized sensor data and reference vectors are fed into the Kalman
filter, hich uses statistical techniques to optimally combine the data into a final orientation reading. Provides
the highest-accuracy orientation at the lo est performance.
•Alternating Kalman Filter: Uses the same Kalman filter as before, but skips every other update step. Slightly
less accurate than the Kalman filter, but faster.
•Complementary Filter: Fuses lo -pass filtered accelerometer/compass data ith high-pass filtered gyroscope
data to provide an orientation estimate. Less accurate than any Kalman filtering techniques, but provides
significantly higher performance.
•Quaternion Gradient Descent Filter: Utilizes gradient descent techniques to avoid the high computational
overhead of Kalman-based filters. Provides high performance and high accuracy.
•IMU Mode: Performs no orientation filtering, but allo s IMU data to be read at the maximum update rate of
800 Hz.
3.1.7 Tare Orientation
Given the results of the Kalman filter, the sensor can make a good estimation of orientation, but it ill likely be offset
from the actual orientation of the device by a constant angle until it has been given a reference orientation. This
reference orientation tells the sensor here you ould like its zero orientation to be. The sensor ill al ays consider
the zero orientation to be the orientation in hich the plug is facing to ards you and top(the side ith buttons on it)
facing up. The sensor must be given a reference orientation that represents the orientation of the sensor hen it is in the
position in hich you consider the plug to be to ards you and the buttons up. The act of giving it this reference
orientation to the sensor is called taring, just as some scales have a tare button hich can be pressed to tell the scale that
nothing is on it and it should read zero. For instructions on doing this, refer to the Quick Start guide or 3-Space Suite
manual.
12

User's Manual
3.1.8 Offset Orientation
There are many applications for hich it ill be necessary or convenient to mount the sensor at odd angles, but it may
also be desired in these situations that orientations can be treated as though the sensor ere mounted normally. For
example, if the sensor ere mounted on a sloped surface of a vehicle like a car hood, it ould be helpful if the
orientations could read as though the sensor as mounted in a ay that more closely matched the overall orientation of
the vehicle, hich does not include that slope.
The feature the sensor has to deal ith mounting differences is the offset quaternion. This offset allo s the sensor to
pretend it is mounted in any given orientation hile being actually mounted in any other actual orientation. To help
understand the relationship bet een filtered orientation, tare orientation, and offset orientation, this is ho the
orientations are used by the sensor:
orientation final=orientationtare∗orientationfiltered ∗orientationoffset
There are several ays to use this feature. The simplest ay is if you happen to kno the quaternion that represents the
offset you ant applied to the orientation, you can send this to the sensor by ay of command 21(0x15). There are also
commands to allo for more automated offset setting. To use these commands, do the follo ing:
1) Place the sensor as close as possible to the mounting point, but in an orientation aligned ith the overall
vehicle or device the sensor is being mounted on, or in the orientation that you ould like the sensor to act like
it is in.
2) Call command 22, hich sets a hidden variable called the “base offset” hich affects the operation of the
“Offset ith current orientation” command. This ill record your desired orientation later. If you ever ant to
reset this base offset, use command 20(0x14).
3) Mount the sensor onto the vehicle or device as you intend to for the end application.
4) Call command 19(0x13), hich ill set the offset based on the difference bet een the current orientation and
the base offset. After this command is called, the sensor should no be acting as though it ere in the desired
orientation.
5) Make sure to commit the sensor settings to keep this change. Note that the base offset is not committable, but
the offset itself is committable.
It should be noted that hile it may seem like the set axis directions command could be used for the same purpose, this
feature is the preferred ay to deal ith alternate mountings, as the axis directions mode has no ay to account for a
mounting that isn't a 90 degree based orientation a ay from the standard orientation. In addition, the axis direction
mode does not handle s itching the Euler angles to account for a different mounting, hile this feature does.
3.1.9 Other Estimation Parameters
The 3-Space Sensor offers a fe other parameters to filter the orientation estimate. Please note that these only affect the
final orientation and not the readings of individual component sensors.
•Oversampling: Oversampling causes the sensor to take extra readings from each of the component sensors and
average them before using them to estimate orientation. This can reduce noise, but also causes each cycle to
take longer proportional to ho many extra samples are being taken.
•Running Average: The final orientation estimate can be put through a running average, hich ill make the
estimate smoother at the cost of introducing a small delay bet een physical motion and the sensor's estimation
of that motion.
•Trust Values: As mentioned earlier, by default the accelerometer and compass are trusted less than the gyros
hen the sensor is in motion. These values involve parameters, one for the accelerometer and one for the
compass, that indicate ho much these component sensors are to be trusted relative to the gyroscope. These
values range from 0 to 1, ith 1 being fully trusted and 0 ill be not trusted at all. There is a minimum and
maximum truth value for each of the accelerometer and compass. The minimum ill be used hile the sensor
is in motion, and the maximum ill be used hile it is still. To disable this sort of behavior, set both truth
values to the same value. Note that the QGrad filter has its o n set of trust values that can only be read or set
hile the sensor is in QGrad filter mode.
13

User's Manual
3.2 Communication
Obtaining data about orientation from the sensor or giving values for any of its settings is done through the sensor's
communication protocol. The protocol can be used through either the USB port or the RS232 port. A complete
description of ho to use this protocol is given in section 4 of this document. Also, you may instead use the 3-Space
Suite, hich provides a graphical method to do the same. To learn ho to use this, read the 3-Space Suite manual.
3.2.1 Wired Streaming Mode
The default mode of communication for the 3-Space Sensor is a call and response paradigm herein you send a
command and then receive a response. The sensor also features a streaming mode here it can be instructed to
periodically send back the response from a command automatically, ithout any further communication from the host.
To activate the streaming mode, use the follo ing steps:
1) Set up the streaming to call the commands you want data from. First, figure out which commands you
want data from. The following commands are valid for streaming:
0(0x00), Read tared orientation as quaternion
1(0x01), Read tared orientation as euler angles
2(0x02), Read tared orientation as rotation matrix
3(0x03), Read tared orientation as axis angle
4(0x04), Read tared orientation as t o vector
5(0x05), Read difference quaternion
6(0x06), Read untared orientation as quaternion
7(0x07), Read untared orientation as euler angles
8(0x08), Read untared orientation as rotation matrix
9(0x09), Read untared orientation as axis angle
10(0x0a), Read untared orientation as t o vector
11(0x0b), Read tared t o vector in sensor frame
12(0x0c), Read untared t o vector in sensor frame
32(0x20), Read all normalized component sensor data
33(0x21), Read normalized gyroscope vector
34(0x22), Read normalized accelerometer vector
35(0x23), Read normalized compass vector
37(0x25), Read all corrected component sensor data
38(0x26), Read corrected gyroscope vector
39(0x27), Read corrected accelerometer vector
40(0x28), Read corrected compass vector
41(0x29), Read corrected linear acceleration
43(0x2B) Read temperature C
44(0x2C), Read temperature F
45(0x2D), Read confidence factor
64(0x40), Read all ra component sensor data
65(0x41), Read ra gyroscope vector
66(0x42), Read ra accelerometer vector
67(0x43), Read ra compass vector
201(0xc9), Read battery voltage
202(0xca), Read battery percentage
203(0xcb), Read battery status
250(0xfa), Read button state
255(0xff), No command
There are 8 streaming slots available for use, and each one can hold one of these commands. These slots can
be set using command 80(0x50), ith the parameters being the 8 command bytes corresponding to each slot.
Unused slots should be filled ith 0xff so that they ill output nothing.
Please note: The total amount of data the 8 slots can return at once is 256 bytes. If the resulting data exceeds
this, the set streaming slots command ill fail.
14

User's Manual
2) Set up the streaming interval, duration, and start delay. These parameters control the timing of the
streaming session. They can be set using command 82(0x52). All times are to be given in microseconds. They
control the streaming as follo s:
Interval determines ho often the streaming session ill output data from the requested commands. For
example, an interval of 1000000 ill output data once a second. An interval of 0 ill output data as quickly as
possible. The interval ill be clamped to 1000 if the user attempts to set it in the range 1 – 1000.
Duration determines ho long the streaming session ill run for. For example, a duration of 5000000
indicates the session should stop after 5 seconds. A duration of 4294967295 (0xFFFFFFFF) means that the
session ill run indefinitely until a stop streaming command is explicitly issued.
Start Delay determines ho long the sensor should ait after a start command is issued to actually begin
streaming. For example, a start delay 200000 means the session ill start after 200 milliseconds.
3) Begin the streaming session. This can be done using command 85(0x55). Once started, the session ill run
until the duration has elapsed, or until the stop command, 86(0x56) has been called. Please note that only
binary data is supported. While streaming sessions can be started ith ascii commands, only binary data ill be
returned. Also note that if the sensor is sending large amounts of data the host doesn't have time to handle, this
can cause buffer overflo s in some communication drivers, leading to slo do ns and loss of data integrity. If
the firm are detects that the buffer has overflo ed, the asynchronous session ill be stopped. If this occurs,
this is a sure sign that either the streaming interval is set too lo , the program is not orking fast enough to
handle the amount of data or both.
Data is output over the same communication interface the streaming session is started ith. For example, if the user
sends the Start Streaming command via the USB interface, data ill be streamed over the same USB connection. If the
user sends the Start Streaming command via the virtual COM port created by the Bluetooth driver, data ill be streamed
irelessly over the Bluetooth connection. For more information on all these commands, see the Streaming Commands
section in the command chart near the end of this document.
15
Other manuals for 3-Space Bluetooth
1
Table of contents
Other Yost Labs Accessories manuals
Popular Accessories manuals by other brands

Fiamma
Fiamma CARAVANSTORE Series Installation and usage instructions

Motorola
Motorola Focus TAG quick start guide

Honeywell Home
Honeywell Home DCP917S Getting started

Steinberg
Steinberg UR28M Getting started

CHIEF
CHIEF NPT Threaded Coupler Accessory CMA-152 installation instructions

ROSE DISPLAYS
ROSE DISPLAYS GOTCHA FOR SLATWALL instruction sheet