DIY Head Tracker For A Tenner

are you talking about the calibration sketch that rob did for edtracker2? if so what do you mean hit 9? other than to look at the serial monitor there is not alot to do in it
 
are you talking about the calibration sketch that rob did for edtracker2? if so what do you mean hit 9? other than to look at the serial monitor there is not alot to do in it

If you upload the EDTrackerIICalibrate and then run the UI, I found I had to:

1) hit '2', to connect to the device and start pulling back info
2) hit '9', to start recalculating the bias values

When it finishes recalculating, you can close the UI, and upload the EDTrackerII sketch. Re-open the UI, and hit '1' to start monitoring.

You should now find that moving the sensor causes comparable movement in the head animation. If axis are messed up, hit 5 to rotate axis until you see the correct movements.

From there, put the sensor somewhere flat and steady, and let it settle. You can then start your drift calibrations...
 
Cheers Rog :)

Noticed that from the data sheet, the 6050 has a thermometer built in. Might be worth exposing the temp in the debugging output to see if there's some correlation with drift.

On the list :) I should really publish the TODO! The chip handles temp compensation internally but there may be some 'warm-up' time that we can monitor/log.

Not sure about java version. Will try this evening with 6. I think multiple java runtimes can be installed and then you can choose which one is active using the java control panel.

Rob
 
If you upload the EDTrackerIICalibrate and then run the UI, I found I had to:

1) hit '2', to connect to the device and start pulling back info
2) hit '9', to start recalculating the bias values

When it finishes recalculating, you can close the UI, and upload the EDTrackerII sketch. Re-open the UI, and hit '1' to start monitoring.

You should now find that moving the sensor causes comparable movement in the head animation. If axis are messed up, hit 5 to rotate axis until you see the correct movements.

From there, put the sensor somewhere flat and steady, and let it settle. You can then start your drift calibrations...


Thanks alot for that I followed what you said step by step, you know I tried to run that UI when I had the calibration sketch on but nothign happend so I assumed that it would be like the prvious sketch, even went hunting for any documentation to go with it but I could not find anything, so now I followed your instructions the numbers are now

DMP Pitch +0.04
DMP Yaw +1.23 and climbing slowly
DMP Roll -0.39
Raw Z Accel -49151


yaw drift +2.06
Drift comp -1.23

tried all the rotate mounting axis all pretty much the same except the head is not tuning on its own, maybe just the Z axis is screwed up now.

A though maybe its because I mounted the mpu vertically and its at a slight angle maybe that is what is screwing it up I don't know
 
Thanks rob the dot in my spsirit level is at the lower left corner not even in the circle lol I can get it bottom left or top left that is all

Hi Amos - anyway you can post a screenshot of the UI or email me one ? ( I'll pm you my email address)
 
Sounds like a dodgy reset, or corruption somehow that's when weird axis mixing happens. I thought the tracker II calibration sketch used the invensense library.
The way I got it to get sensible again was to run the original mpu reset sketch.
Not sure if that helps or not.
I've never seen continuous uncommanded movement.
I wouldn't bin anything though, there is probably nothing lasting wrong with it.


I can't get the Tracker II calibration sketch to compile and I'm pretty sure I have the libraries in the right place.

C:\Program Files (x86)\Arduino\libraries\InvensenseMotionDriver
Also the other two files, the USBAPI.h & HID.cpp have been overwritten from before.

This is a copy of the error message.
Arduino: 1.5.6-r2 (Windows 7), Board: "Arduino Micro"

C:\Program Files (x86)\Arduino\libraries\InvensenseMotionDriver/inv_mpu.h: In function 'void initialize_mpu()':
C:\Program Files (x86)\Arduino\libraries\InvensenseMotionDriver/inv_mpu.h:63: error: too few arguments to function 'int mpu_init(int_param_s*)'
EDTrackerIICalibrate:247: error: at this point in file
EDTrackerIICalibrate.ino: In function 'void update_bias()':
EDTrackerIICalibrate:297: error: 'mpu_get_biases' was not declared in this scope

It's early days, I'm sure we'll get there.
I'd like to play around with version 2 but I can wait.
:)
 
You've not unpacked Pocketmoon's supplied Invensense libraries - ditch your old ones, if you have some (clearly you do somewhere) and use the ones provided from github. Pocketmoon has trimmed them down in order to get the sketch to fit in the limited space we have.
 
Ahh, brilliant. I just replaced the files in the InvensenseMotionDriver directory with the most recent ones.
It compiles now.

Thanks Brumster.
Easy when you know how!
 
though maybe its because I mounted the mpu vertically and its at a slight angle maybe that is what is screwing it up I don't know

Ah, the Sketches currently support horizontal/flat sensor mounting only. The UI allows you to rotate around 'up' but wont work with a vertical sensor.

Not a big change to the sketches to allow this though so will have a think and update the code this evening.

Amos - you can be the alpha tester :)
 
That works really well Pocketmoon.
Sometimes I have to try a few times to get stuff to upload. Unplugging at various times between procedures.

Quick question though, When you first run the calibration sketch you say to move the red dot into the centre of the spirit level.
I thought you would want to keep the sensor flat and that would become the red dot in the centre of the spirit level.

When I did it I had to hold the board at a funky orientation to get the red dot in the middle, Is this correct? Intentional?


Then when I held it flat to drift compensate the red dot was way off to one (right) side but the head seems to move correctly.

Again as usual, just thinking out loud.
:)
 
Then when I held it flat to drift compensate the red dot was way off to one (right) side but the head seems to move correctly.

Good to think - someone has too! When you held it flat, with the dot off to the side, did the dot recenter after you calibrated the bias values ?
 
Good to think - someone has too! When you held it flat, with the dot off to the side, did the dot recenter after you calibrated the bias values ?

For me, made no change to spirit level. I have the pcb clamped static on my desk, horizontal in x/z planes as best I can tell

Before:
KKDfqIB.png

After:
d9k6mHQ.png
 
I have my board today, I soldered everything and plugged it in (windows 8.1 64bit) I hear the ping soiund and a steady red light turns on micro and a steady light on MPU6050. I cant see the board in Device manager can someone please help!!
 
Back
Top Bottom