A while ago we bought an HTC Vive for the Bitcraze office. This was partly for having fun with VR, but is was mostly because we had hope to use the vive tracking system with the Crazyflie. We are making progress with the idea and we just received our latest prototype:
The Lighthouse tracking system is the hardware component of steamvr tracking, it is used by the HTC vive to get the full position and orientation of the Vive VR head mounted display and game controllers. It has sub-millimeter precision and low latency, which is key to achieve immersive VR experience. The system works by having base-stations installed in the room. The base station sweeps two rotating infrared laser planes. A receiver is basically a photodiode, by detecting when the photodiode is hit by the sweeping lasers, the receiver can measure at which angle it is seen by the base station. With enough receivers and/or base-stations, it is possible to calculate the receiver position and orientation. If you want to read more about how lighthouse works, there has been awesome work of reverse engineering and documentation made by the open-source community.
As far as Crazyflie is concerned the lighthouse system has one major advantage: the position and orientation can be calculate in the tracked object which means that the Crazyflie can be completely autonomous and there is no limit in the number of Crazyflies that can be tracked at the same time.
Lighthouse has been my fun-Friday project for a couple of month and the early results are very encouraging.This is still very much work in progress, so stay tuned for future blog-posts about the subject :-).
Sounds like a great project. I’ve got the crazyflie and two Vive lighthouse base stations already. I’d love to try this out once you’ve got something to share.
Do you have any thoughts on using Lighthouse 2.0 base stations?
Yes, Lighthouse 2.0 base stations are the future! :-)
We just managed to get our hands on a couple of base station 2.0. The problem though is that while lighthouse 1.0 is really well understood and documented, there is close to no info about how 2.0 works.
The prototype deck has an FPGA (ice40 with open source toolchain :-). The plan is to at least make sure the FPGA can acquire the lighthouse 2.0 signals, the hope it to actually be able to use it when we release the deck but for now I want to at least make sure our hardware will be able to handle it, then it is only software … ;-).