Tomato


The tomato device tracker integration allows one to tracker devices which are connected to a wireless router that is running Tomato as firmware.

Because of a limitation in Tomato’s API, this integration will only track wireless devices.

It could be that the integration is also working with AdvancedTomato but this was never tested.

Setup

The integration requires an extra configuration variable called http_id. The value can be obtained by logging in to the Tomato admin interface and search for http_id in the page’s source code.

Configuration

To use this device tracker in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
device_tracker:
  - platform: tomato
    host: YOUR_ROUTER_IP_ADDRESS
    username: YOUR_ADMIN_USERNAME
    password:  YOUR_ADMIN_PASSWORD
    http_id: YOUR_HTTP_ID

Configuration Variables

host string Required

The IP address or hostname of your router, e.g., 192.168.1.1 or rt-ac68u.

port integer (Optional)

The port number of your router, e.g., 443.

Default:

80/443 (automatically detected)

ssl boolean (Optional, default: false)

Whether to connect via https.

verify_ssl string | boolean (Optional, default: true)

If SSL verification for HTTPS resources needs to be turned off (for self-signed certs, etc.) this can take on boolean values false or true or you can pass a location on the device where a certificate can be used for verification e.g., /mnt/NAS/router_cert.pem.

username string Required

The username of an user with administrative privileges, usually admin.

password string Required

The password for your given admin account.

http_id string Required

The value of http_id.

See the device tracker integration page for instructions how to configure the people to be tracked.

SSL Certificate

Gathering the SSL Certificate of your router can be accomplished with this (or a similar) command:

openssl s_client -showcerts -connect 172.10.10.1:443 </dev/null 2>/dev/null | openssl x509 -outform PEM > router_cert.pem