Package Exports
- node-tile
Readme
node-tile
Package to ring & talk to your Tile Tracker
This project is the result of countless hours of reverse engineering the Tile bluetooth protocol.
If you like my work, give this repository a ⭐ or consider Buying Me A Coffee ☕
Installation
npm install node-tileThis package uses noble to connect to bluetooth. This means you require a bluetooth adapter.
Running without root/sudo (Linux-specific)
To use this package on linux, you will have to run the script as root to get access to your bluetooth adapter, or run the following command:
sudo setcap cap_net_raw+eip $(eval readlink -f `which node`)This grants the node binary cap_net_raw privileges, so it can start/stop BLE advertising.
Note: The above command requires setcap to be installed.
It can be installed the following way:
- apt:
sudo apt-get install libcap2-bin - yum:
su -c \'yum install libcap2-bin\'You will have to checkout the noble documentation on how to configure NodeJS to use a Bluetooth Adapter.
Usage
See example.ts. Once you have a connected service, you can do the following:
Make your tile ring:
await service.sendRinger(TileVolume.MED)Program :
await service.sendRinger(TileVolume.MED)Run some code on a single tab on your tile's button:
service.on("singleTab", _ => console.log("Got single tab!"))Double tab:
service.on("doubleTab", _ => console.log("Got double tab!"))On signal strength/RSSI update:
service.on("rssi", rssi => console.log("rssi", rssi))Get debug output:
service.on("debug", msg => console.log("debug", msg))Features
- Make your Tile ring
- Get the signal strenght to your Tile
- Act on the event you single click your Tile button
- Act on the event you double click your Tile button
- Program the "Bionic Birdie" song
Tested & working with
- Tile Slim 2022
- Tile Pro 2022
- Tile Mate 2022