christianrowlands / android-network-survey

Cellular Survey Android App
https://www.networksurvey.app
Apache License 2.0
131 stars 25 forks source link

Gnb ID Display for NR and Gnb ID Calculator #42

Open christianrowlands opened 2 months ago

christianrowlands commented 2 months ago

Originally requested by @high3eam in this comment.

Describe the solution you'd like From @high3eam :

Since there is no gnb id displayed in NR-SA mode and there are different gnb id lengths defined by 3GPP, I was wondering if it would be possible to implement an option in settings to set the gnb id length for a specific operator. Like: The user enters a PLMN and can define the appropriate gnb id length (e.g. 24+12). That way, a correct gnb id and sector id could be displayed on the NR dashboard and even logged to csv/geopackage.

Cellmapper does this, too, but not in an elegant way (reports by users to Cellmapper admins -> hardcoded lengths baked into source code).


From @christianrowlands :

As for the gnb id, I have wanted to get that displayed for NR since I added support for it but that variable length has made it hard. There is an issue open with Google to add support in their API to get the number of bits associated with the gnb id, but I doubt they are going to add that: https://issuetracker.google.com/issues/319966463

Where do you typically look up the provider specified gnb id length?

Yes, I could add a setting that takes in a map of PLMNs and corresponding bit length of the gnb id. Let me think through how I want to accomplish this.

I really wish that NR was the same as LTE and it was a fixed length. I am not sure the added complexity is worth it, but 🤷


Additional context Add any other context or screenshots about the feature request here.

christianrowlands commented 2 months ago

There is more context here

and here

high3eam commented 2 months ago

@christianrowlands Calculator works well, great addition!

Example screenshots from Cellmapper
christianrowlands commented 2 months ago

Thanks for the screenshot. I am also working on a mapping feature, and now that I see that I am curious how I can make two towers show up at the same location like Cell mapper does. I bet I could automatically figure out the bit position if two NCIs show up at the same location.

high3eam commented 2 months ago

@christianrowlands Since Cellmapper Android app and server-side backend and frontend are proprietary and not opensource, this is an extremely interesting feature. It would also be a lot easier to report bugs or fix them directly in open source code. So I think there are a lot of people interested in this as well.

Could you elaborate on the "two towers, that show up at the same location" part?

christianrowlands commented 2 months ago

I am glad to hear that there is interest in the map feature!

What I really mean by "two towers" is two sectors on the same gNodeB. I have exported the database from OpenCelliD and am planning on using that for the tower database. However, I was already worried about how to represent two sectors on the map that show up at exactly the same lat/lon, but I could probably just run through all the different bit combinations on the NCI until I get a gNB ID that matches between the two NCIs, and now I know what mapping the provider uses for the gNB IDs.