Trackr intergration

Hey,

Anyone working with this: https://buy.thetrackr.com/ ??

It could be interesting.

Does it have an API or otherwise accessible outside of their proprietary app?

There are lots of these things around, at least 10 different brands and companies over the years that I know of where you can attach little tags to your devices and track them, but most of the ones I have seen do not have an API or allow access in any way outside of their app, but this would be great if one of them allowed it. I would love to be able to use Home Assistant to track my devices without always having to have my phone aroundā€¦ it opens up to be used with the likes of Amazon Echo and more, but alas, I have a feeling this one will also not be open.

I understand ā€¦

So, Iā€™m very interested in this functionality (something to track objects, cars, etc). Are you using anything??

Hey @davedan,

I just submitted an inquiry to their support team asking about it.

Iā€™ll share as soon I get their response.

Not currently, in fact Iā€™ve been on the hunt for a reliable form of tracking things and people for sometime without out much luck.

When I was on SmartThings Hub, I tried the Samsung Arrival Sensor, which uses Zigbee, but that was a bust. It is a device to track people and objects, but it takes forever to update. I would be 3 miles from home before it registered that I was gone, so most of those devices have too much of a delay to be practical for tracking.

As far as car tracking, I have an Automatic OBD hooked up to my car, and with HA 0.28 I am now able to use that to determine when my car comes and goes, but even that has enough of a delay to be nearly unusable.

Currently, with the addition of Bluetooth LE support in Home Assistant, this is probably going to be the best way to start tracking things. Iā€™m going to be trying to purchase some bluetooth ibeacons, both battery powered and some wall plugin ones for things like the garage, and hopefully I can fine tune it enough that my whole house is mapped out, with 1 ibeacon in each room, with each iBeaconā€™s range tailored to the size of the room. I have an out of state friend that has this setup, so I havenā€™t been able to experience it first hand, and he doesnā€™t use Home Assistant, but some other setup he has, but from what he tells me, he is able to tell where his devices are down to the specific room in his house, and for non-bluetooth devices, he has bluetooth tags on them.

He doesnā€™t even have any motion sensors in his home automation setup, because he uses the bluetooth to determine when he enters and leaves certain rooms. Obviously for some this would be impractical, as not everyone walks around 24/7 with their phone in their pocket, but still, very cool concept.

So my goal is to have my house mapped out so I can tell exactly where my stuff is in the house, and use a wall powered, long-range bluetooth beacon in the garage to know when cars arrive, so I can open the garage door, etc.

Anyway, sorry to ramble on, but there are not many other options for good tracking of devices, at least not that I have found so far that will allow 3rd party setups like Home Assistant to tap into them.

Thanks sir. Also that gives me great ideas ā€¦

QQ: automatic: is that available & working in Europe?? In based in Spain and to be honest Iā€™m not sure that would work here.

Hell guys,

I got the response back from Trackr.


Hello,
Thank you for contacting TrackR!
We have no SDK or API options for developers at this time.
Thank you for your interest in TrackR products.
Have a great day!

So no luck for Trackr to make it to HASS for now. Sad to them that are losing some customers.

Cheers,
mmello

1 Like

Reading the specifications tells us, that the TrackR is a Bluetooth LE device. HA already has support for that, although itā€™s somewhat tricky to get it working. But when it does, it should actually be able to detect the TrackR without the need for an API.

Having Bluetooth LE doesnā€™t automatically mean you can track it, otherwise Iā€™d be tracking everybody elseā€™s stuff just by being in proximity. Itā€™s still closed to their app.

so we need a good hacker :stuck_out_tongue:

For what itā€™s worth, it now integrates with Nest. Just the wrong way. You can track your phone, etc from Nest, but it doesnā€™t send tracking information to nest. So I canā€™t use it to help with my home/away issue.

So I just got my Trackr bravo today, and I am in the process of reverse engineering the API. I can get the token and the one device that I have with GPS coordinates using python! So far it is very basic, only about 20 lines of code but its looking promising.

Couple of questions, is anyone here able to help me with some testing and if so do you have more than one device? I am interested in seeing what the API response looks like with more than one device in it.

Also does anyone know of the potential legal issue around reverse engineering APIs lol?

So I have a initial start on a library, I would appreciate it if some of you could test it out. https://github.com/w1ll1am23/pytrackr not setup.py yet, so the easiest thing to do would be download the entire repo, copy the test.py into the src directory and run it. It will prompt for username and password and you should be good to go.

I have one and will have 5 more around the house after Christmas morning.

Let me know what I need to do to test it out and I will be glad to help out.

1 Like

I think I have the library in a usable state, and I have it uploaded to pypi. So the only thing I havenā€™t been able to test is multiple devices and non-Bravo trackrs which I wouldnā€™t expect to be different. I also have the Home-Assistant code usable as well, I have include a screen shot of my Bravo Trackr displayed in HA (Tracking my Dog.)

To test, do a pip install pytrackr and then run the following python script.

from pytrackr.api import trackrApiInterface

def output_device_states():
    for device in devices:
        print("Custom name: " + device.name())
        print("Location: " + str(device.last_known_location()))
        print("Last time seen: " + str(device.last_time_seen()))
        print("Tracker ID: " + str(device.tracker_id()))
        print("Type: " + str(device.type()))
        print("Last upadted: " + str(device.last_updated()))
        print("Battery level: " + str(device.battery_level()))
        print("\n")

email = input("Enter your trackr email: ")
password = input("Enter your trackr password: ")
trackr_api = trackrApiInterface(email, password)
devices = trackr_api.get_trackrs()
output_device_states()

1 Like

I finally got a chance to try this tonight with just my trackr. The python code errors.

devices=[<pytrackr.device.trackrDevice object at 0x769e2f30>]
Traceback (most recent call last):
  File "pytrackrtest.py", line 19, in <module>
    output_device_states()
  File "pytrackrtest.py", line 5, in output_device_states
    print("Custom name: " + device.name())
TypeError: Can't convert 'NoneType' object to str implicitly

Cool, thanks for testing! Looks like you didnā€™t set a name on the trackr that you have, is that correct? I guess if no name is set I can default to the trackr id for the name. How does the trackr appear in their app?

Updated pytrackr to 0.0.3 which updates the test.py to cast the device name to a string if it is None. I also updated my Home-Assistant code to set the device name to the trackr ID if the device name is None.

So, can you test this again?

Looks like itā€™s called Keys

whatā€™s the command to update it?

Depends on how you downloaded it. If you downloaded from git hub, just download the zip again and replace everything. If you downloaded with pip then just do pip install pytrackr --upgrade.

Interesting that its called keys. Not sure why it would have failed then.