We would like to use Android UWB-enabled mobile devices with Decawave DWM1001C anchors to know the 3D position of several hundred visitors in a controlled space (each visitor will receive a UWB-enabled mobile device for their visit). Are Android UWB-enabled devices compatible with Decawave DWM1001C anchors? What are your suggestions to start developing a solution like this? Do you have any Android UMB code available? We own currently a MDEK1001 kit and are open to any suggestion. Thanks in advance for your help.
I received an answer from Qorvo through another chanel. Thanks to David Olivier for his help!
Below are the answers:
Are Android UWB-enabled devices compatible with Decawave DWM1001C anchors?
No, the DW3xxx family is designed to work with newer phone with UWB chip; the Android 12 (or higher) UWB API need accessory device to be FiRa MAC 1.3 compliant. Furthermore, most of newer protocols designated to ch9, which is not supported in DW1000 family.
What are your suggestions to start developing a solution like this?
Depending on your application requirements, updating rate, expected battery life, accuracy requirement…etc.
Do you have any Android UMB code available that may help us to start quickly?
We provide driver library for development, which is not OS dependent.
Apart from the fact that no Qorvo devices currently work with Android… Still waiting for Qorvo to release anything that works with Android.
Do you mean that no Qorvo Anchors are compatible with UWB Android device or there is no Android demo code that show of to calculate its position from Qorvo Anchors?
If it is no demo code available, did you try connectivity-samples/UwbRanging at main · android/connectivity-samples · GitHub with DWM3000EVB or - DWM3001CDK?
The Android Connectivity samples only work to other Android phones, so I can range from a Pixel 7 Pro to a Pixel 6 Pro, but no Qorvo device (I have both the DWM3000EVB and a DWM3001CDK,
We need example code like the Apple U1 NearBy from Qorvo, but I am on the Google Insider preview for UWB and they have confirmed that Qorvo are “working on a solution for Android”.
Currently only NXP have a solution that works for Android.
Thanks @meavydev for your help and information.
Do you know if it is possible to use a DWM3000 chip as a listener (like we can do with DWM1001C) and get the position of all UWB phones in a space directly from the listener (DWM3000) ? If yes, the Android UWM phone as to be registered as a tag and can recover its position from a gateway connected with a DWM3000 listener (and yes we need DWM3000 anchors). This use case can work for me but I don’t know if it is easy/feasible to register an Android UWB phone as a tag on a specific UWB network. This scenario can help us to work around the fact that we don’t have the source code (on Android) to get the position of the phone itself.
I found this link (Qorvo® to Demonstrate Smart and Secure UWB-based Indoor Navigation via Smartphones at CES2023). I don’t know if there is a Qorvo partner that has an Android solution…
The Google connectivity sample relies on Nearby discovery of the other phones, as FiRA don’t specify a way of discovering UWB devices, so it only works phone to phone.
At the moment it’s up to each UWB manufacturer to supply a discovery library, which isn’t great if you want a generic way of discovery.
We were specifically interested in UWB ranging, but never got any TWR with Estimote beacons, as they currently only work with Apple. Estimote said they were working on an Android solution but went quiet on the subject at the end of last year.
I’ve tried with Qorvo support, but the UWB team just said Android not supported…
At least it sounds like they might be doing something, if the article from CES is to be believed, although working with a startup, not Google, isn’t exactly encouraging.
Hopefully something will be announced for UWB at Google I/O in May.
I’ve seen someone saying they managed to get some kind of Android ranging with Qorvo dev kit, but they never published the code, so I don’t know what exactly they were doing.
At the moment, I think you are in for a lot of grief trying to get anything to work and you will have to do most of the code yourself…