never settle android app

So I have to come back to work on the robot measuring project…in which I had to switched to the floorplan project last week…

These days, I somehow annoyed about the 5G signal measuring phone…so that I cannot move on the robot part. and the meeting deadline is upcoming….

Now I have 5 version of the apps (powered by Claude).

  • v1: the one that company developed, and I added the cellID
  • v2: the one where I found that the GPS was not accurate in real time, so I fixed it. I also appended more information by mimicking the GNetTrack app (PCI, TAC, eNB, MCC, MNC, EARFCN, band, bandwidth, timing advance, level; GPS altitude/accuracy/speed/bearing). There is also a neighborCells report. I just found out that there are also neighbor cells signal…..
  • v3: somehow change the code/format/layout tried to split 5G NR out from the 4G LTE.
  • I found out how the company gets the signal data, and I don’t really like the approach. They aggregate data from three sources: 1) servingSignal callback, 2) cached TelephonyManager.signalStrength, and 3) CellInfo.cellSignalStrength, and then take whichever one is the most recent. But when I look at each source individually, they don’t show a similar trend at all. They are different metrics! Why don’t they check and understand the data first before merging them into the same group? I’m quite upset after finding this out.
  • But later try to find the best way to get the accurate signal value…I found that there are 5 ways (or more) to get the signal data (push or poll) on different android API version….the name are similar, and it make me hard to make a decision…so I leave it to the Claude…. (this recall me on my past android app dev, just the newer API, the worked calendar function doesn’t work anymore….)
  • v4: still working on how to get the 5G NR data, also add the carrier aggregate info, and base station estimation map so that I would know which direction I should walk to accurately locate the BS position.
  • v5: make the data update 1 Hz as possible. remove the base station map as get more data and calculate offline is better. also the CA never shown (while reported in GNetTrack or NetworkSignalGURU), also add batteryPercent to track in case that I leave the smartphone several days.

So, I gonna conclude that the data from serving? SignalStrenght (the orange) is less update,the one from CellInfo (blue) changes a lot (though flucturate…), and the NR data (red) is rare…just 30%

Then, look in to the Cell info neighbor cells (green) compare to the primary cell (blue), yeeah… the primary cell signal is stronger than the average neighbor cell…

Here is a plot of all neighbor cell, so fluctuate….

workaholic

I can’t remember my WordPress pw, not sure when did I change the pw… btw, I often can’t remember anything recently, maybe due to my brain being overloaded. After I got locked out due to the login timeout, I reset my pw to the usual one… although it’s a weak pw…

Then, many things I wanna say… regarding work…
as I want to settle what I’m thinking, what I’ve done.

Part of my work; the radio signal measurement robot system with digital twin connection (as a database? realtime viz, offline viz, anything…)

With the coming of AI, Claude helps me a lot with programming/data debugging/visualizing. But I also need time to review the results and make decisions, which somehow exhausts me… due to too much information….

1. signal measuring smartphone app:
which was originally developed by a company, but later modified many times. let me complain about them… there is a first month for customer requirement gathering; during that time, I had decided everything in the order document (as my boss told me to do), then I just asked them whether there was anything else I could measure other than RSRP, RSRQ, SNR stuffs (as I just got a comment from the collaborative research company), then the guy just said, “I don’t know, it needs to be researched.” But since I didn’t ask them to find that information, they didn’t do it… yeah, I didn’t ask them to do that. but I paid you the money. well they did not get more salary, btw, they get one more job to do for the foreigner like me.

more things to say…. but I should not write them, better to forget… I don’t know why I’m often unhappy when I order a company to develop a system. maybe because I can do it… cheaper than them… also, I often have ideas to improve the system that come along seeing the progress, after placing the order requirement…

So, for the app, I added the Cell ID later (with AI power),
then I found out that the GPS is not accurate, the position is jumping, and with AI power, I found that there are many ways to get GPS info. The one that the company used updates every 6 seconds… but I required 1 second. Since I didn’t add a requirement to check the accuracy of the GPS, so they didn’t check the value? The reason is there is a battery saver function, so the GPS doesn’t update in realtime. Then I asked AI to fix the GPS to realtime.

Also, I need to get the band number. I later found the G-NetTrack app (which I had touched before, but if I had thought of it before placing the order, I would have let the company dev this part). There are many signal-related metrics which I don’t know much about, as I’m not in the field. I asked Claude to mimic the G-NetTrack app, and got a new version of the measuring app that measure a lot.

Then I want to get both 4G and 5G signals together with the base station and band information… but it seems there are 4 ways to call the Android API, each giving different metrics with different callback timers….. and I have a problem merging the data right now…

2. robot:
the ROS1 version works fine… with some collisions indoors. So I need to set many waypoints rather have a rough number. It is difficult to balance between letting the robot move through a narrow path between tables and not making a collision when rotating… there are 20+ parameters to adjust…

another company I contacted to solve this problem, I saw him adjusting the parameters for hours, but there were still some navigation failures.

I upgraded the robot to ROS2 with the hope that the navigation would be more clever… through the upgrade… with full Claude power… as I have no ROS2 knowledge… a lot of things to make a decision about… so exhausting…. and not done yet…

3. robot path planning:
just making it able to run with the robot in simulation is so difficult. a program that a PhD candidate student developed in Python, with a simple map with obstacle coordinates… I had to turn it into an application in ROS… I regret not asking the company to do this part, as at that time I didn’t know how to ask them to do it. and I knew that the algorithm was not settled yet, so I decided to do it on my own.

Not really, I wrote a requirement in the first draft of the order, but the quoted price was too high, so I cut this part out along with other parts in the second draft of the order, but still got the same price even after cutting out the functionality….

By the way, I made it work in ROS1 simulation, now I need to make it run in realtime in ROS2…. so overwhelmed.

4. the digital twin platform:
something that I have to invent as a novel work… which is just a realtime database with MongoDB… which is not really essential…. but costs 3.5 million yen… and I didn’t want to waste the money…. so I need to somehow make it more usable….