Hi everyone, I’ve been diving into the world of smart devices lately, and I came across an interesting challenge that I wanted to share with you all. I recently acquired a few Samsung SmartTags and registered them using the SmartThings Find app. While the functionality is impressive, I’ve been itching to create a custom Android app that provides a more personalized experience, specifically one that displays a list of all my SmartTags along with their battery levels.
Here’s where things got a bit tricky. From what I understand, SmartTags use BLE (Bluetooth Low Energy) advertising, which allows me to extract battery information. However, the challenge arises because these devices constantly randomize their Bluetooth MAC addresses, making it difficult to associate each BLE signal with a specific SmartTag. This randomization is a privacy feature, but it complicates things for someone trying to build a custom app.
Another hurdle I encountered is the lack of network coverage in the areas where these tags are intended to be used. This means I can’t rely on web APIs to fetch data, which limits my options for remote data processing. My solution has been to work entirely within the confines of the Android app, which still has its own set of challenges.
I’m currently exploring ways to extract the unique identifiers from the BLE advertisements to map them back to specific SmartTags. I’m also looking into how the SmartThings Find app handles this internally, hoping to find some clues or patterns that I can leverage in my own implementation.
If anyone out there has experience with BLE advertising, MAC address randomization, or has tackled a similar problem, I’d love to hear your insights or suggestions. Maybe there’s a workaround or a clever approach that I haven’t considered yet.
On a more positive note, I’m really excited about the potential this project holds. Imagine having a centralized dashboard that not only tracks your SmartTags but also provides actionable insights and integrates seamlessly with other smart devices in your ecosystem. It’s a bit ambitious, but I’m determined to give it a shot.
Let me know if anyone is interested in collaborating or if you have any resources that could help me overcome these hurdles. Happy coding!