The problem with v.3 was that it would register lots of noise as signal, when really it was just noise, i.e. false steps. Since I had some interest in learning the event system in Unity, I started an approach that would detect discrete steps and send it as a step event, which would then move the user forward.
This was a good exercise in programming and a bad exercise in successful execution. The issue was that each step was of fixed length, so it didn't feel natural or really tied to your own movement.
In addition to the fact that it wasn't fluid or natural feeling (which is pretty important), I was also running into another issue that has plagued every approach so far; the DK2 is not meant for this. I don't know if it's an issue of tracking resolution or what, but I would occassionally have problems with it missing an up or down movement. Combine that with the frequent loss of tracking when rotating at all and short length of the cable and you end up with a bad result and an unhappy dev.