Hi,
I am trying to use the CMPS10 with an RF266 by Synapse…their I2C is not “full featured” so I am using the serial mode of the CMPS10.
When I send the serial msg to the CMPS10, the red LED goes on and stays on…I checked all the docs I could find but to no avail.
It goes off when restarted, but as soon as I connect the data to Rx it goes on again.
I am sending 0x11.
Regards
pinsull
Hello Jeffrey, many thanks for your info. I was thinking even before I saw the least significant numbers rolling that with the swaying of the boat on a course of say 260º, the compass ill be going something like 260, 259, 261, 258, 259, 261 etc etc and there would be a need to average over a period of say 5 or 6 seconds, maybe longer. The O/P of the compass is 50Hz and there would be no need to turn the auxiliary rudder that frequently. If after say 5 second, the heading is still off course, then if the arduino responds and turns the rudder until back on course, that will be OK. After a spell of sleep or cooking or whatever and I’ve go a few degrees sideways, then I can always re-plot and save a new heading. I hope to set sail in May next year, so I have a bit of time.
Steve
I’m just setting up of of these CMPS10 modules with an Arduino ATmega168 and an LCD05 display which will become the basis for a small Tiller Pilot for a Tiny Yacht. I’m running the “demo” program and getting the bearing displayed and changes when I rotate the CMPS10. Guess it’s working OK.
Question: Is it normal even when the unit it totally static and flat on the bench for the last digits after the decimal point to continually change and also the last significant digit to change +1 and -1 all the time?
Steve
We are sad to see you are having problems with your product. Please make sure you are using the proper communication configuration and protocol specified here:
robot-electronics.co.uk/htm/cmps10doc.htm
Also, please makes sure you are providing proper and sufficient power and let us know if the problem persists.
Glad we can help. Sounds like an exciting project, good luck!
Hi Steve,
Yes, it is normal to see some varying error like this in sensor readings.
If you want to eliminate some of it, we would recommend you change the code so that instead of displaying the raw bearing values, it stores them in an array (size between 3 and 10) and averages them all and displays the average value on the screen: as new values are added, older values are removed.
This method means there will be less varying error, however it will also mean that the output is a little less responsive to quick changes: the size of the array has to be chosen to properly balance these two characteristics.
We hope this helps,
Problem solved…I was sending additional bytes without realising.
Seems to be ok now.
Regards,
pinsull
Voltage is 3.3V and serial set to 9600, 8 data (not actually specified in doc, but necessary to get 0-255 as a 1 byte result),no parity, 2 stop bits.
Serial is at 3.3V drive level.
Compass seems to work in pwm mode, so its alive.
Maybe need to ask Devantech?
Phil