CMPS03 Magnetic Compass. Voltage Р5v only required. Current Р20mA Typ. Resolution РDegree. Accuracy Рdegrees approx. after calibration. Output 1. Library; Reference. The CMPS03 is a digital compass with an I2C interface. Reference¶. CMPS03 Datasheet. CMPS03 Robot Compass Module This compass module has been specifically designed for use in robots as an aid to navigation. The aim was to produce a.

Author: Moogurr Vubar
Country: French Guiana
Language: English (Spanish)
Genre: Art
Published (Last): 16 October 2010
Pages: 138
PDF File Size: 20.2 Mb
ePub File Size: 4.84 Mb
ISBN: 631-5-22495-250-5
Downloads: 18896
Price: Free* [*Free Regsitration Required]
Uploader: Goltigis

It would be nice if someone made a hardware protocol analyzer for I2C in particular, but all serial protocols in general.

I tried initializing only once and sampling many times, but that didn’t work. Follow the Assembler example here: I checked the ASM your code produces and there in nothing wrong with it. As you can see, I’m pretty newbie on I2C Wed Sep 07, I’ve tried reading the compass using the PWM signal that it generates by using timers, but at 4MHz, I cannot get a timing precise enough.

Hey, thanks for checking that.

Devantech CMPS03 Compass

Wed Apr 21, 6: This would be a nontrivial task to create the product, but I’m convinved there’s a definate market, because this ends up being so time-consuming.

For this second test, the manufacturer suggests pulling sda and scl cmp03 using a 1. Thanks for the help! I said what the heck?


We will have to check this. It turns out that it works fine, and there is almost no need to recalibrate the unit.

Sensors – Magneto – SEN – CMPS03 Compass – Iran Module Electronic

I will try I2C again, this time with the right resistor values. You don’t need to match baud rates.

I’ve set the pullups with the suggested resistance values 1. Do you think the problem is the non-matching resistor value?

(PDF) CMPS03 Datasheet download

This board has two outputs: Second test was to write code to interface with the unit via I2C. Clearly I’m loosing something here.

Fri Sep 02, 7: Previous topic Next topic. Then I looked at my code and it was really 50KHz from a test I did the other day.

I2C has been proven to be working in many cases if you doubt the library Also, after reading a couple of other posts involving problems using I2C, I’ve just made a note to cmpz03 to check the following: So here’s what happens: I’ve used the example provided in the help and also searched a couple of topics here. I did it to get experience and understanding of I2C protocol and I will be happy to share this with anyone who is interested.

Fri Sep 09, 8: Thanks for you help! Thu Sep 01, 5: Fri Sep 09, 1: Looking at the scl line with an oscope, there is no activity, it is always high a tad below 3V. I2C can be very frustrating. Perfect for engineers in the field and in the lab.


There is too much material to include it all here, but I can send it as email attachments. Turns out that it is always the second setting the register or the third sending the read address.

Users browsing this forum: I don’t know who is holding the clock line low, the master or the compass. Mon Sep 05, 3: Fri Sep 09, 5: You’ll be notified when we have some answers. Sun Jul 10, 1: Page 1 of 1. I was measuring the signal duration on the oscope and it was giving me a frequency of 50KHz Additionally, the values I read are noisy, meaning that from 10 values I read, 5 or 6 of them have nothing to do with the real compass orientation.

Sun Sep 04, 4: Let’s say the target frequency is kHz 10uS. I thought it would take me one or two days to set up the compass, but it’s taking more than two weeks already Is that the normal thing to do? Now this is what’s happening: Seems like mE have their hands full at the moment so don’t hold your breath.

Posted in Art