You are browsing as a guest. Sign up (or log in) to start making projects!

yep

@yep

Joined June 5th, 2026

  • 12Devlogs
  • 2Projects
  • 1Ships
  • 15Votes
Simple.
Work a lot and likes to use all i got.
I realy want to understand how every single thing works under the hood and how i can create new things that can help other.
And last not good at creating good READMEs 😅
Open comments for this post

5h 11m 35s logged

First Devlog

This is just the start of the main project and the point where the project really begins.

I took my time thinking about a new way of doing location detection using cell towers, and this is the first step toward turning that idea into a real system.

The Idea

After a few weeks of thinking, I started building an approach for implementing pose estimation using cell towers in a much more precise way.I am not sure yet if it will actually work, but I definitely want to try it because it might be one of the best possible approaches for this problem.I call this method Cellflow Location Estimation.

Cellflow Location Estimation

The basic idea is to use past tower data, tower analytics, Timing Advance, and IMU movement together.Instead of relying on a single tower reading, the system can use:

  • past observations of cell towers
  • tower connection behavior over time
  • Timing Advance data
  • IMU movement vectors
  • possible past location points
  • movement correction from the past point to the present
    With this, the system could generate multiple possible paths and location points, then use the IMU movement vector to bring those estimates to the current moment and check them against Timing Advance and tower data.This is still theoretical, but I think it can work and possibly become one of the most precise cell-tower-based location methods yet.

Concerns

I also thought about the possible concerns and abuse risks of this method.If this approach works well, it might be possible to estimate location without GPS being enabled, or without normal location permissions in some cases.
It could potentially be misused for tracking without consent or in war-related situations where GPS is jammed, spoofed, or unavailable.
Still, I am more hopeful than concerned right now, especially now that I have a Google Play developer licence. I plan to work on this a lot more and move it closer to a real release.There is still a long way ahead.I really hope to make this real.

Looks

I suck at it :)

 The idea i have for the looks of the app is to imitate the feeling of looking up at the sky when looking toward a cell tower.I would like to hear ideas on how to improve the UI and create better visual directions for the app.right now i am working on the popup screen with the celltower information . the idea of the colors in the frame is that red are ones are the once that aren’t known yet and aren’t connected orange aren’t connected but are known blue are once who aren’t currently known but are connected and green is connected and known.
as you can see here. i got 3 towers scanned nearby one am connected to one was found and another one which hasn’t been found.
this will also help me debug the current location situation nearby and see which towers still weren’t found

0
0
0
Open comments for this post

3h 43m 13s logged

Update on current status.

  • firstly the project now will start slowly shifting to the second part of the location finding based on the towers found. this will be found in a different project in the name of lopose location estimation
  • secondly updated the readme and some of my older devlogs for better looks and for improving in writing things in the readme format. i’m not very good at it so i hope to improve by doing it and make it looks better.
  • lastly cleaned some of the code and improved other parts for shipment.
0
0
20
Ship

Project Overview

LoPose Tower Mapping is a project focused on mapping cellular tower data collected from phones to real-world tower locations.

The goal is to collect cellular observations from Android devices, upload them to a database, and process those observations to estimate and match real tower positions.

The project is currently experimental and mainly intended for private use.

Project Structure

The project is split into two main parts:

1. Android app
2. Go triangulation and tower-fitting tools

Android App

The Android app is the core data collector.

It runs on a phone and gathers data about the currently connected cellular tower. This data is uploaded to a Supabase database and stored as observations.

The app records data such as:

* connected cell ID
* network / area information
* GPS location
* GPS accuracy
* altitude
* vertical accuracy
* timing advance
* EARFCN
* PCI
* recorder time

Currently, it collects and uploads data approximately every 5 seconds. Because of this, it can consume a significant amount of battery due to frequent GPS usage, cellular observation checks, background processing, and network uploads.

APK Status

The APK is not published.

This is because the project is mainly for private use, and publishing it could introduce privacy risks due to the sensitive location and cellular data involved.

For now, both the app and the database must be built and configured from the source code.

Go Processing Tools

The second part of the project is written in Go.

These tools process the observations collected by the Android app and attempt to estimate real tower locations.

The main approach uses 2D trilateration to approximate tower positions based on collected observations.

There is also experimental 3D plane-intersection code for detecting towers in 3D space. However, it is not part of the main workflow because it generally performs worse than the 2D approach.

Tower Matching

After estimating tower locations, the Go tools attempt to match the calculated positions against a known tower-location database.

This step connects collected observation data to real-world tower locations and computes more complete tower data, including estimated altitude, which is stored in a separate database.

Current Limitations

The project is still experimental and has several limitations:

* the APK is not publicly distributed
* the app can consume a high amount of battery
* the database must be configured manually
* tower matching is not always accurate
* the 3D approach exists but is not used in the main workflow
* the project handles sensitive location and cellular data
* altitude estimation is not always reliable and can sometimes be significantly inaccurate

## Things that were hard

Things that I had hard were first setting up all the database exporting and transferring data, thinking and making all the ideas for how to use the 2D trilateration and 3D plane collision in the Go code. Adding the foreground service process in the Android app and making sure the TA updates on read also took some time, as well as creating the HTML converter for the point map in Go and all the steps to set up for the shipping of the project that require a very strict level of security and can leak personal data if I'm not careful in every move.

Current Goal

The current goal of LoPose mapping is to create a working private pipeline:

phone observations → Supabase database → tower estimation → tower matching → complete tower location data

The project is not intended to be a polished production application yet. It is an experimental system for tower mapping and location processing.

This is also the first step in a two-part project aimed at developing location-finding methods for Android that do not rely on GPS, which is planned for future development.

  • 10 devlogs
  • 37h
  • 15.78x multiplier
  • 588 Stardust
Try project → See source code →
Open comments for this post

3h 41m 1s logged

Devlog — Preparing Stardance for Shipping Before shipping Stardance

firstly I spent some time cleaning up the project and making it easier to understand .
it include a readme and a git repo.
before publishing this i needed to check nothing private is commited.
with that i also added a README to the project so it will be easier how to set up things yourself.
all and all i’m pretty proud of what i made.
still i do have planes for more which i didn’t had time for.

New features

  • adding the 3d estimations in the future. currently most of them are wrong but some times they can actually work better then 2d.
    i did see in my debugger around 10 or more of the 146 which actually worked better then the 2d once and could be logged in the final estimation.
  • for better scalability i want to add observation auto removal if around 7 observation of the same cell can’t find a real tower. this will just mean that if few observations were off you can try again until all of them will fit one.
0
0
2
Open comments for this post

4h 27m 49s logged

Demo website

its not done but here i got a demo website to watch all the observations until now and the estimation.

do note some of them are wrong because of the challenging conditions so i will use a verification method later for the perfect real tower location and data.
https://yakla.gitlab.io/LoPose/

0
0
10
Open comments for this post

1h 52m 48s logged

Solution was found!!!

its a good day today.
aperently ta can also be 150m sometimes :) it work the detection works almost perfectly in 2d. yay ! i found out there was a bug in android that i thought have been fixed but aperently not. so now it works wonderfly.
well we got it :
if you ask its around 30m from the target. and this is while tracking in a moving car.
also sometime the 3d estimation works better but thats in rare cases. most of the time its not the most accurate.

0
0
12
Open comments for this post

6h 41m 4s logged

update on current Go code tower estimation

been a while and a lot got done

got some news good news and bad news

the good news is that i finished with the 3d caculation and improve observation accaurcy.

the bad news is that there is still something lacking making the location positioning almost the same and still not giving the right. at least not based on my knowlage but its has gotten better in some siturations.

i still have hard time figuring things out but combining the 2d and 3d based on the terain does give a pretty good estimated location.

i realy like the 3d aproach i went with. suprisingly its easier to understand how its works then the 2d one and didn’t add much compute (at least not if there are to much points found from plain colition which grows expenetialy seriously some got in the order of bilions. realy creazy stuff)

anyway from now on ill try focusing more on the position estimation rather then the tower estimation, this will be more interesting for me after all the work on one thing and use some of the knowledge i got from estimating the towers.

anyway having hard time finding a good picture for the progress so random go 3d positioning code down below :

0
0
6
Open comments for this post

3h 21m 1s logged

Small update

add height to observaions.
well been a while since the last devlog. i needed a lot of thinking and planning for the 3d estimations so took me long enough. still didn’t get all the answers but i do got some updates. first i got few ideas i want to share. for the height there are few approaches but what i want to use will be based on my already existing 2d system. secondly i might try to find the height approximations of the tower based on flat 2d location estimation and using a location to height api and distance height correction its possible to find it with high accuracy using gradient descent . and thirdly i dont have any pictures to share so ill put a picture of a dog 🐶

0
0
6
Open comments for this post

1h 12m 44s logged

Suspected issues

after lots of observations got to 3 different issues with the current system

  1. first i need to account for ta deadzone which is surprisingly one of the most uncommon things which are near me.
  2. i need to account for the third dimension in the calculation
  3. i need to check for faulty observations of ta jumps
    it will take work but its feasible. looks like i have a very bumpy road ahead wish me luck😵‍💫.
    took me too much time to figure the first one out
0
0
47
Open comments for this post

2h 59m 1s logged

started using observations for the caculation. seems real world had more error then expected so change observation code to recored more and reduce the distance between each one

0
0
18

Followers

Loading…