Data Sheet

UM7 DATASHEET
Rev. 1.6 Released 1/10/2016
40
// If so, do stuff with them.
}
Note that it is not always sufficient to simply check the address of the data register that you
want to read. In almost all cases, data automatically transmitted by the UM7 is sent in batch
operations to improve efficiency. For example, when processed rate gyro is transmitted, it is
sent in one batch packet containing registers 97 (gyro x), 98 (gyro y), 99 (gyro z), and 100 (gyro
time). Thus, the address of the packet is 97, but it is a batch packet with batch length 4.
REGISTER OVERVIEW
There are three types of registers onboard the UM7: configuration registers, data registers, and
command registers.
Configuration registers begin at address 0x00 and are used to configure UM7’s filter settings
and communication behavior. Configuration register contents can be written to onboard flash
to allow settings to be maintained when the device is powered down.
Data registers begin at address 0x55 (85), and store raw and processed data from the sensors
along with estimated states. Unlike configuration registers, data register contents cannot be
written to flash.
Command registers technically aren't registers at all, but they provide a convenient way to send
commands to the UM7 when those commands do not require additional data beyond the
command itself. For example, a command to run an onboard gyro bias calibration routine is
triggered by querying the ZERO_GYROS command register. By using a unique register address
for each command, the same communication architecture used to read from and write to data
and configuration registers can be used to send commands to the autopilot. Command
registers begin at address 0xAA.
Configuration Registers
Address
Register Name
Register Description
0x00 (0)
CREG_COM_SETTINGS
General communication settings
0x01 (1)
CREG_COM_RATES1
Broadcast rate settings
0x02 (2)
CREG_COM_RATES2
Broadcast rate settings
0x03 (3)
CREG_COM_RATES3
Broadcast rate settings
0x04 (4)
CREG_COM_RATES4
Broadcast rate settings