
CMPS14 - Tilt Compensated Magnetic Compass
Devantech
Overview
Offering equally impressive performance to the CMPS12, but also allowing background calibration to be disabled and operation with a fixed calibration profile.
Powered by the Bosch BNO080.
CMPS14 | |
---|---|
Voltage | 3.3V-5V |
Current | 18mA Typ. |
Resolution | 0.1 Degree |
Accuracy | 5° |
Signal levels | 3.3V, 5V tolerant |
I2C mode | up to 400khz |
Serial mode | 9600, 19200, 38400 baud |
Introduction
The CMPS14 is Devantech's 5th generation tilt compensated compass. Employing a 3-axis magnetometer, a 3-axis gyro and a 3-axis accelerometer.
At the core of the module is the superb BNO080 running algorithms to remove the errors caused by tilting of the PCB.
The module also allows the calibration to be stopped and instead rely on a static calibration profile.
Power supply requirements are flexible, you can feed between 3.3 - 5v and the module draws a nominal 18mA of current. A choice of serial or I2C interfaces can be used for communication.
Mode selection and connections
Serial or I2C mode is easily selected with the state of the mode pin. Note the CMPS14 looks at the
mode selection pin at power-up only.
For I2C the mode pin can be left open or pulled to the supply voltage, for serial mode
the mode pin should be connected to 0v ground.

For details on use of the CMPS12 see the manufacturer's website (link below)
I2C commands in Linux
Install I2C on your computer and enable it. Then use for example the following simple commands:
~# i2cdetect -y 0
This command detects the devices (if you're using multiple devices, mention the number of devices which are connected in place of '0').
~# i2cset -y 0 xxxx 255
This simple command writes the byte value 255 to the I2C device at address xxxx hex on the i2c bus 0 (/dev/i2c-0).
~# i2cget -y 0 xxxx
This command reads a byte from an I2C device at address xxxx hex on the i2c bus 0 (/dev/i2c-0).
Testing CMP14 with Raspberry Pi 4
Raspberry Pi 4 has various pins such as VCC, GND, SDA and SCL .
Connect 5V Pin 2 or 5V Pin 4 at Pi to Vcc at CMP14 (red cable in image)
Connect GPIO 2 SDA (data) at Pi with SDA at CMP14 (green cable in image)
Connect GPIO 3 SCL (clock) with SCL at CMP14 (blue cable in image)
Connect Pin 6 GROUND at Pi with Ground at CMP14. (black cable in image)
Now follow the steps below in the command line of the Raspberry Pi 4:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install i2c-tools
sudo raspi-config
enable I2C in the menu
i2cdetect -l
i2cdetect -y 1
The address of the CMP14 should be shown as HEX value such as 0x60. If it is not shown, then the CMP14 is probably disconnected. If disconnected, check connections and reboot the Pi.
i2cget -y 1 0x60 0x00
to read Software version
result: 0x06, which means 6.
i2cget -y 1 0x60 0x01
to read the Compass Bearing 8 bit, i.e. 0-255 for a full circle
result: 0x1F, which means 31
i2cget -y 1 0x60 0x06
to read the Magnetometer X axis (uTesla), 16 bit signed integer (register 0x06 high byte) Q point 4
result: 0xFE, which means 254
i2cget -y 1 0x60 0x16
to read the Gyroscope raw Z axis output, 16 bit signed integer (register 0x16 high byte)
result: 0x00, which means 0
i2cget -y 1 0x60 0xA1
to read the Baud rate
result: 0x06, which means OK
i2cget -y 1 0x60 0x26
to read the Gyroscope calibrated X axis output, 16 bit signed integer (register 0x25 high byte) Q point 9
result: 0x02, which means 2
PCB Board Dimensions
The following diagram shows the CMPS12 PCB dimensions and mounting hole positions.
Manufacturer's data
Accessories
4-Way split Cable with Molex connector, 30 cm in length
from ROBOT ELECTRONICSNewest specification: 11/2014
plus EUR 5.95 shipping costs
Prices incl. VATEUR 3.34
plus EUR 5.00 shipping costs
Prices excl. VAT
Article no.: DEV-4-SPLIT-MOLEX
More details...
Product information for: CMPS14 - Tilt Compensated Magnetic Compass
Publishing date (date of last technical specification): 2019-02-26
Length: 25 mm
Width: 19 mm
Height: 4 mm
Weight: 3 g
Shipping weight: 100 g
Manufacturer: Devantech
Brand: ROBOT ELECTRONICS
Article number: DEV-CMPS14
Manufacturer's part number: CMPS14
The article CMPS14 - Tilt Compensated Magnetic Compass is listed in the following categories:
Sensors > Compass
plus EUR 5.95 shipping costs
Prices incl. VATEUR 26.03
plus EUR 5.00 shipping costs
Prices excl. VAT
Article no.: DEV-CMPS12
More details...
plus EUR 5.95 shipping costs
Prices incl. VATEUR 38.64
plus EUR 5.00 shipping costs
Prices excl. VAT
Article no.: DEV-CMPS14
More details...
plus EUR 5.95 shipping costs
Prices incl. VATEUR 26.87
plus EUR 5.00 shipping costs
Prices excl. VAT
Article no.: DEV-BNO055
More details...
plus EUR 5.95 shipping costs
Prices incl. VATEUR 28.55
plus EUR 5.00 shipping costs
Prices excl. VAT
Article no.: DEV-CMPS03
More details...
Contact us
Order online now
Immediate delivery
Available for immediate delivery while stock lasts.
12 in stock
updated: 11.05.2023
Information on currency
EUR 45.98 = GBP 39.32
EUR 38.64 = GBP 33.04
(€1=GBP0.85505)
EUR 45.98 = USD 52.64
EUR 38.64 = USD 44.24
(€1=USD1.1448)
EUR 45.98 = CAD 66.28
EUR 38.64 = CAD 55.70
(€1=CAD1.4416)
EUR 45.98 = AUD 72.14
EUR 38.64 = AUD 60.63
(€1=AUD1.5690)
Share
About ROBOT ELECTRONICS
ROBOT ELECTRONICS is a brand by English manufacturer Devantech Ltd., based in Norfolk. Product range comprises sensors, in particular ultrasonic or compass, servocontrollers as well as small robot drive systems or relay modules with various interfaces. Sensors are produced in England and are of consistently high quality.
More from ROBOT ELECTRONICS
