←back to thread

509 points nullpxl | 5 comments | | HN request time: 1.05s | source

Hi! Recently smart-glasses with cameras like the Meta Ray-bans seem to be getting more popular. As does some people's desire to remove/cover up the recording indicator LED. I wanted to see if there's a way to detect when people are recording with these types of glasses, so a little bit ago I started working this project. I've hit a little bit of a wall though so I'm very much open to ideas!

I've written a bunch more on the link (+photos are there), but essentially this uses 2 fingerprinting approaches: - retro-reflectivity of the camera sensor by looking at IR reflections. mixed results here. - wireless traffic (primarily BLE, also looking into BTC and wifi)

For the latter, I'm currently just using an ESP32, and I can consistently detect when the Meta Raybans are 1) pairing, 2) first powered on, 3) (less consistently) when they're taken out of the charging case. When they do detect something, it plays a little jingle next to your ear.

Ideally I want to be able to detect them when they're in use, and not just at boot. I've come across the nRF52840, which seems like it can follow directed BLE traffic beyond the initial broadcast, but from my understanding it would still need to catch the first CONNECT_REQ event regardless. On the bluetooth classic side of things, all the hardware looks really expensive! Any ideas are appreciated. Thanks!

1. thrdbndndn ◴[] No.46076747[source]
Sorry I'm still confused. Do you have a reliable way to detect if a smart glass is recording or not? I never used smart-glasses regularly, but wouldn't it be "on" all the time if one is using it, so detecting the power-on and pairing is kinda useless?
replies(1): >>46076795 #
2. aDyslecticCrow ◴[] No.46076795[source]
Regular pairing, advertising and control likley use Bluetooth LE for simplicity and battery life. Streaming or transferring video likley use Bluetooth classic for increased bandwidth.

These are two different protocols with different radio behaviour.

So beyond detecting the glasses themselves, which seem like the focus of the project; detecting recording is feasible at the point of transfer to a phone.

The issue is distinguishing it from any other high bandwidth Bluetooth device nearby, such as headphones.

replies(1): >>46082827 #
3. Anon1096 ◴[] No.46082827[source]
They don't stream to your phone when taking a video or picture. The data is on device and transferred later. It also uses wifi direct not BLE. It seems many many people on HN have absolutely no clue how the meta glasses work lol, there's barely any accurate information in this thread.
replies(1): >>46083042 #
4. nullpxl ◴[] No.46083042{3}[source]
Like I mentioned in the text, I haven't looked into Wi-Fi yet. The picture/video -> transfer through the app is correct, and why an alternative method for detecting actual recording is necessary, but I'd expect to see that most events like battery status updates would be over directed BLE, since the initial boot + battery status is broadcast. And likely BTC for streaming audio. I'm unfamiliar with Wi-Fi Direct specifically, are you familiar with the process of scanning for active Wi-Fi Direct services?
replies(1): >>46083650 #
5. Anon1096 ◴[] No.46083650{4}[source]
Sorry don't mean to demean your effort, I read the GH post and like the hacker spirit :D. It's the rest of the people in the HN comments with 0 clue.

I like my glasses and don't really agree with your goals (nor see the point of letting you know when someone's wearing them; in my city your device would be beeping constantly) so I'm not interested in helping unfortunately. But I do wish you luck, as I said I like the spirit.