Press enter or click to view image in full size
Item tracking on Android is a bit of a mess. You have three main options: Google’s Find my Device network, which is compatible with all Android devices but has some reliability issues; Samsung’s SmartTags, which only work on Samsung devices; or Tile, which works on Android and iOS but relies on other Tile and Life360 app users for coverage.
Samsung, like Apple, made their tags only compatible with their own devices, their walled garden. Samsung devices run Android, so can they work with other Android devices? That’s what uTag does — it’s a mod and companion app that allows the use of SmartTags on any Android device, so long as it’s running Android 11 or above. No root required, no Shizuku required.
tl;dr you can download uTag from GitHub.
SmartThings
The core of all of Samsung’s “smart” devices is SmartThings, a bit of a behemoth of an app which has plugins for each device type. Most of the functionality of SmartTags — including the Bluetooth, encryption and setup code — is included in the core SmartThings app, and the configuration UI is actually a WebView displaying a local “plugin” page for controlling the tag.
Press enter or click to view image in full size
However, when you try to use a SmartTag on a non-Samsung device, you get presented with this message:
Press enter or click to view image in full size
Luckily, this is just a software check. A quick patch of the SmartThings app, and we can now add SmartTags to SmartThings, update them, connect to and configure them. However, when trying to launch the map, we encounter a new issue: while the UI for map & tracking interface is contained within the plugin, it relies on several OneUI-specific packages and frameworks.
Press enter or click to view image in full size
As a result, uTag replaces the tracking & map with its own companion app.
Introducing uTag
uTag aims to replicate as many of the Samsung-exclusive features that the official SmartThings Find app has as possible. Below is a table of the replicated and unlocked features:
In addition, uTag adds some extra features which are not present in SmartThings:
Press enter or click to view image in full size
How uTag Works
As mentioned above, uTag consists of two parts: a modified version of SmartThings (which alternatively can be applied as an Xposed module on rooted devices), and a companion app. The companion app will detect and install the modded SmartThings during setup, and also requires signing into SmartThings a second time (to communicate with Samsung APIs). The modified SmartThings version disables device checks, and adds communication with the uTag companion app.
Samsung actually includes an external communication method for “partner” SmartTag apps in SmartThings, which is normally unused but is used by uTag to handle all the encryption and Bluetooth communication, removing much of the complication that would otherwise be required.
Ultra Wideband (UWB)
UWB is supported in uTag for precise tag locating, so long as the device has the required hardware. This is achieved through AndroidX Core UWB, so may not be as accurate as the direct access the official Samsung app has, but it should be accurate enough for tag location. Since Google is still yet to add UWB support to their Find my Device app, this actually makes uTag the first tag tracking app on non-Samsung devices to support precise tracking.
Press enter or click to view image in full size
Contributing to the Find my Everything Network
Since uTag is using the network, it should also be kind enough to contribute to it, right? This feature is optional, but if enabled allows your non-Samsung device to send the location of nearby tags which are not owned by you to the network. It also displays the number of locations contributed, for the curious.
Press enter or click to view image in full size
Unknown Tag Scanning
While Samsung does allow scanning for unknown tags in the SmartThings app, it’s not automated and it’s not very well publicised. uTag provides an optional feature which will automatically scan for unknown tags periodically, and if it perceives it to be following you, will display a notification showing the locations where the unknown tag was detected. You can then open SmartThings, and perform a manual unknown tag scan, which will provide the option to locate and ring the tag.
Press enter or click to view image in full size
Widgets
uTag has two widgets; one displays the current location of selected tags and the other displays the location history for the day for one tag. Both of these options are also available as Smartspacer Targets.
Press enter or click to view image in full size
Custom Lost Mode URL
During the setup of a SmartTag, the SmartThings app writes a URL for the “lost mode” website to the tag. The linked page is configurable from SmartThings Find (and uTag) to change information about the tag on the fly, as required. However, because this URL has to be written as part of the setup, it can also be changed. uTag abuses this fact to write any URL to the tag, which will be opened when a device with NFC enabled is tapped against the tag.
Why not AirTags?
Probably the most common question about uTag so far has been “why didn’t you make the app for AirTags instead”. There’s a few reasons for this:
- AirTags have no Android support at all. SmartTags using the regular SmartThings app for setup, encryption and communication removed a lot of the complexity from having to make uTag.
- Communication with AirTags without an Apple device, while possible, currently requires an Anisette server, and setup is relatively complex. It’s probably possible to make an app, but…
- Apple would almost definitely not like it. See the Beeper/iMessage debacle.
Download uTag
You can get uTag from GitHub, as well as check out the source to verify its legitimacy before signing in to your Samsung account.