18
submitted 1 day ago* (last edited 1 day ago) by the16bitgamer@programming.dev to c/programming@programming.dev

Just wanted to share an idea I had, in order to hope that another developer learns from my lessons, and hopefully either finds a work around or a better solution to this problem.

I wanted to find out if it was possible to locate your iPhone from your watch based on the latency of Bluetooth messages, since RSSI (signal strength) isn't available. I made a simple app, and started sending messages back and forth between my phone and app.

After much testing, the conclusion is no. Mostly because Bluetooth is amazing and the average latency for a message is 58-62ms. And because as Erik pointed out... apple just sucks.

I am hopeful PebbleOS can be updated to see RSSI or the app can expose the notification api to the PebbleKit JS.

If anyone want me to publish my code, let me know.

The raw data is here if you want to see it: https://docs.google.com/spreadsheets/d/1Yr5XX0CXh5TifsnW3yOp10ZoaA_xx0q189f_fG8rMTU/edit?usp=sharing

you are viewing a single comment's thread
view the rest of the comments
[-] FizzyOrange@programming.dev 4 points 14 hours ago

Yeah I could have told you this wasn't going to work. You need latency measurements accurate to the order of a nanosecond. There are way too many things in-between that have variance on the order of microseconds or more, especially thread scheduling.

You need hardware support for something like this to work, as in WiFi RTT.

Isn't PebbleOS open source? I'd probably make a patch to add RSSI support to the OS.

[-] the16bitgamer@programming.dev 2 points 11 hours ago

Yes Pebble OS is now open source, however I think adding RSSI might only work on newer devices, since classic pebbles are just Bluetooth and Bluetooth le. Though they may have Bluetooth le as a part of pairing?

Still a fun experiment and a good way to see why Bluetooth headphones actually are as reliable as they are.

[-] FizzyOrange@programming.dev 2 points 11 hours ago

adding RSSI might only work on newer devices, since classic pebbles are just Bluetooth and Bluetooth le

I don't follow. It's extremely unlikely that the actual hardware doesn't give you RSSI.

[-] the16bitgamer@programming.dev 1 points 2 hours ago

If I am right I don’t think Pebble watches has Bluetooth LE, it has the ability to broadcast itself but once connected uses Bluetooth. The OS doesn’t expose LE so I don’t think getting the signal strength is possible

[-] FizzyOrange@programming.dev 2 points 1 hour ago

RSSI just means Received Signal Strength Indicator. Any radio system can provide it - it's not specific to BLE.

Bluetooth classic can provide RSSI too. Maybe the OS doesn't expose currently it but that's why I was suggesting modifying the OS. The only difficulty might be if the drivers are closed source, but worth a look I reckon!

this post was submitted on 11 Apr 2026
18 points (95.0% liked)

Programming

26482 readers
398 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS