I need a system of two discrete elements where one of the elements can continually track the distance and direction to the other, and their respective orientations. The specific requirements are to be able to track distance to within 1mm (preferably closer), and within 1 degree orientation in each degree of freedom. Ideally, one of the two components would be passive (requiring no battery), and both have to be no bigger than an inch cube. The separation of the two parts would typically be a few centimeters at most, and orientation is more important that distance. The data needs to be sampled several hundred times per second, and will be transmitted elsewhere (phone).
What sensing approach can I use here? My initial thought was to use a permanent magnet in the passive element, and 3 linear hall effect sensors. The problem there is that it'll give me a vector giving the distance and direction to the magnet, it won't give me a relative orientation.
I don't think ultrasonic will work here, and I can't think of another approach.