For indoor you will prefer UWB[0] where you can set up base stations yourself that offer a service pretty much like GNSS signals (i.e., you can passively receive them from 4+ base stations and turn those pseudoranges into a position, provided you are told where they are and kept updated about their clock drift relative to each other (e.g. by them listening to their neighbors and piggybacking 2-way-ranging sessions on top of the beacons they already broadcast, each offering the clock offset to their neighbors in the data payload of their own beacon)), with the added benefit that by using a shared-key CSPRNG to generate the bitstream of the ranging code instead of a fixed known sequence, you can get authenticated ranging where MITM attacks are limited to artificially inflating the range (i.e., a trigger of "has to be close enough to the door handle that e.g. a pair of cameras looking at the areas right in front of either side of the door have it in view" can't be faked with a wireless MITM).
There are some links/papers in the publications section[2] of [1].
There are some links/papers in the publications section[2] of [1].
[0]: https://www.firaconsortium.org/ [1]: https://developer.android.com/develop/sensors-and-location/s... [2]: https://developer.android.com/develop/sensors-and-location/s...