DIY Head Tracker For A Tenner

This makes a device which appears to Windows as a Three axis joystick that you put on your headset to track head orientation. At present ED only allows access to two axes for headtracking unless you are Oculus Rift or Naturalpoint Inc.


paste: 15/6/ 2014.
Right!

  • Website updated with 2.9 announcements
  • V2.9 instructional video uploading to YouTube
  • PDF guide for EDTracker 2 updated (v1.1)
  • PDF guide moved to edtracker.org.uk website under "downloads"
  • Custom EDTracker2 device uploaded to edtracker.org.uk (for BETA IDE users only)

Fred, can you update post #1 of the main thread please when you get the chance :)

I'll do the EDTracker1 PDF updates tomorrow; less of a rush on that I suspect.

Link from my personal website will redirect to the new website.

End of paste:





My preferred method of attachment is a couple of nine inch nails, acupuncture style....
This does have some interesting psychological side effects, but hey, what are Alpha testers for?
There are some physiological ones aswell but after a few hours you get used to it. Then you start to notice when you can't track a target properly because you can't look around. You feel disadvantaged.
It is very useful for when you are trying to find the station entrance but you are very close to the station, just look up, you don't have to crash into the station to find out where it is.
Also when running noob cannons you can get a gimbal lock when otherwise you would not be firing because you don't know your gimbals have the target.

So we are trying to do it on the cheap such that the rich kids don't win all the time because of better situational awareness.
It is also quite enabling for people who don't have the use of their limbs.
Most of the questions I see below, have been experienced and beaten and won in the Alpha version of this thread.
It's a shame we can't just merge them now.
It's a bit like déjà vu. We see the same thought processes happening again. It's quite lovely.
I have seen your question before......
However, I digress.

After the initial calibration and upload you don't need the Arduino IDE anymore, to windows it's just a new joystick. But its nice to keep the serial monitor open so you can see the numbers changing as you move your head around if you have not commented out the debug line. In fact if you leave the debug line in and don't monitor it, you end up with a fifo overflow and it stops working. But its good to have it all installed so you can upload new software to the ProMicro as it is developed.



%21cid_ii_1453cd90de6924b3.bmp



circuit%20diagram.jpg

IMG_5399.JPG


Pocketmoon wrote :
You will need the latest beta of the Arduino IDE , which at the moment is 1.5.6 r2. You can use the latest stable release but you need to use the right version of USBAPI.h from githib/pocketmoon

https://github.com/pocketmoon/MPU-6050-Arduino-Micro-Head-Tracker/tree/master/Arduino Library

Just rename USBAPI.h..105 to USBAPI.h


It does involve a bit of intelligence and soldering but we want to get it to the stage where it is as easy as possible. If you can't be bothered then when the production boards arrive we can make finished, programmed and calibrated units available.

The next thing to do will be to design a box to put it all in and remove stress from the micro USB port on the ProMicro.

We were thinking of making a Cobra shaped 3D print with light guides so it looks like the engines and weapons are firing. That's version Two or Three.
We are still at sort of nearly V1. Maybe, possibly and perhaps.....

Here is a link to Brumsters Fantastic PDF showing you how to do it.
http://www.brumster.com/downloads.php?cat_id=1&download_id=3

The code.
http://reprapdad.wordpress.com/
and indirectly
https://github.com/pocketmoon

The Latest version 2 code "For The Brave" :) Includes a nice little UI which is unfinished but really helps you see what is going on. Also the code uses different libraries which solve some problems we were having.
http://reprapdad.wordpress.com/2014/05/13/ed-tracker-v2-for-the-brave/


Brumster's Vid part 1.
https://www.youtube.com/watch?v=_oqLwCtMCKc
and part 2
https://www.youtube.com/watch?v=m4hyMbHpl18

This is what we are doing in Alphaland.. Fiddling mostly. The code you can download is ace and is being improved all the time. There is also a nice User Interface being developed (with a big spinny head) reducing the need for setting up the Arduino IDE, it also lets you see what is going on much more easily.

The drift is fixed. We fixed it. Mostly.... And we continue to fix it.
Though there are a number of ways to kill it completely using extra hardware(magnetometer, cameras and lights etc) But I think we can do it without extra hardware. I have been talking to the others about deriving a known good forward position using only the information we have.
If we can crack that properly.........
:)

Its all there too see, you just have to see it.


Sorry for the new thread Blue Peter headset guys, I gave it the same name as the Alpha thread for commonality.

While point based tracking does work. I believe this is a more elegant solution that does not depend on room lighting or mind if there is a heater behind you etc. The processing overhead is removed and its probably more accurate (16 bit precision) and has lower latency. It's so low you can't detect it.
It's cheap and it's open source.

Assembly Video.
https://www.youtube.com/watch?v=-tF0Yrim0mo&list=UUhhdxi3tHTrmpB4y4m3i0GA

Flashing/ programming video
https://www.youtube.com/watch?v=Jn53ZHI7rHw&feature=youtu.be

So we have gone from this.
IMG_20140326_201813.jpg

To this.
IMG_5395.JPG

IMG_5396.JPG

The double sided surface mount version will arrive in time and that will be smaller still. Then we can make a box for it.

I can't mount mine on the top very easily because my headset is hinged there so I just sticky pad mounted the USB cable at the top. When in use it's much flatter and seems to work fine.
:)
45%20degrees.JPG
 
Last edited:
What protocol does this use for head tracking? vJoy? Some other sort of mouse/joystick emulation?

its an arduino board which talks to the arduino software on your computer and then in turn talks to the game. thats pretty much all i know about it. i thought about making one myself :)
 
Very interesting, where is it best to source the components and how good is it.

I would like to read some reviews of this.
 
Very interesting, where is it best to source the components and how good is it.

I would like to read some reviews of this.

I think Pocketmoon and Brumster are probably best placed to answer but you can get the parts from all sorts of electronic outlets. One place has now started selling them as a bundle having noticed a surge in orders. I've built one myself and it works well but I did have a bit of a problem with drift. However, I understand thats been resolved now with the latest code release.. not tested that yet but have no reason to doubt it.

:)
 
Last edited:
I think Pocketmoon and Brumster are probably best placed to answer but you can get the parts from all sorts of electronic outlets. One place has now started selling them as a bundle having noticed a surge in orders. I've built one myself and it works well but I did have a bit of a problem with drift. However, I understand thats been resolved now with the latest code release.. not tested that yet but have no reason to doubt it.

:)

Thanks, I will try to build one...

Does it take power only from the USB so no extra battery needed.

So you just connect up as shown in diagram load the Arduino software you give in the zip on to it and plug it in and ED recognizes it? Or is there something else to do?
 
Last edited by a moderator:
I take back what I said, I will probably try both not too keen on USB power though, I can't seem to find any info on those links to see how it works, what do you do with it stick that board on a clip or can you mount it on a cap etc, also like in the previous posts a list of components woud be good too so people can start making them or at least trying.


brumster video
https://www.youtube.com/watch?v=_oqLwCtMCKc
 
Last edited:
Does it take power only from the USB so no extra battery needed.

So you just connect up as shown in diagram load the Arduino software you give in the zip on to it and plug it in and ED recognizes it? Or is there something else to do?

Yep,USB powered. Once programmed and the device drivers installed it appears to Windows as a 3-axis joystick. You just go to the head move section of the ED controller config and set the look up/down and left/right axis. You have to find a way to mount the device, either on top of your head of vertically at the side. Duck taping to headphones works :)

http://www.brumster.com/downloads/Headtracker-Software_Install_Flashing.pdf


The tracker requires two calibration steps to reduce drift The first step is documented in the pdf above. The fine tuning for yaw drift isn't properly documented yet but will be this week.

Rob
 
Yep,USB powered. Once programmed and the device drivers installed it appears to Windows as a 3-axis joystick. You just go to the head move section of the ED controller config and set the look up/down and left/right axis. You have to find a way to mount the device, either on top of your head of vertically at the side. Duck taping to headphones works :)

http://www.brumster.com/downloads/Headtracker-Software_Install_Flashing.pdf


The tracker requires two calibration steps to reduce drift The first step is documented in the pdf above. The fine tuning for yaw drift isn't properly documented yet but will be this week.

Rob

Thanks that is excellent info. I have ordered the parts as it seems easy enough for me to do :)
 
hmmmm interesting info and works out cheaper than the facetracknoIR setup, I think with facetracknoIR cost about £13 including the camera this works better too, does it come with the daughter board or do we have to do that ourselves?
 
I've used FreeTrack previously, obviously with those point system you can get 6DOF but at the moment this is a good alternative, especially considering the headlook mode doesn't support more than 2 (left/right and up/down) anyway.

Dead Fred is awaiting news on some daughterboards that we have requested that will marry up the 3 key components. I made some prototypes and some of the alpha backers have been trying them out....

DqyMFplVB2G4xxzQxtVMXhwNHLe4P0719WvJDH6iLMY=w800-h450-no


IMG_20140317_153937279+%25281024x575%2529.jpg


IMG_20140317_154150260+%25281024x575%2529.jpg


Alternatively you can make one up in breadboard or prototyping board if you don't mind it being a little bigger....
 
I understand Pocketmoon has just got hold of a wireless device that he wants to make work with this.
That will get rid of the USB wire but will require 5 volts from somewhere.
The USB headset itself will have 5 volts on it. Or a battery with some voltage regulation.
I suppose if you have a wireless headset you could borrow some juice from the existing on board batteries.
That's just a development idea at this stage.

I have updated the first post a bit and taken out the zip with the old code.
The two newest versions (using different libraries) are still being tested.
There are a few more links and it should be a bit more coherent than before, hic. :D

I would watch the videos first as that gives a good overview.

As for sourcing components, we are looking for and have found a cheaper source. It will require buying in volume and for someone to take a few hundred quid of risk.

EDIT:
I just heard that the link boards are due for dispatch tomorrow and everything looks like it is on course.

:):D:)
 
Last edited:
I've used FreeTrack previously, obviously with those point system you can get 6DOF but at the moment this is a good alternative, especially considering the headlook mode doesn't support more than 2 (left/right and up/down) anyway.
Couldn't this theoretically be used get 6DOF?
 
Back
Top Bottom