Skip to content
cdevries.dev

Home Assistant and IoT

Philips Pet Series

Home Assistant support for Philips smart pet feeders and cameras, built on an API Philips never documented.

The problem

Philips sells a range of connected pet feeders and cameras that only work through their own mobile app. There is no public API, no local control, and no way to use the devices in a wider home automation setup. If you want to feed a cat based on anything other than a fixed schedule, you are out of luck.

What I built

A Home Assistant integration that exposes the devices as first class entities: feeding controls, meal history, device state and camera access. Underneath it sits petsseries, a standalone async Python client, so the protocol work is reusable by anyone rather than locked inside an integration.

The client was written by working out the app's authentication flow and its request signing, then rebuilding both in Python.

Architecture

  • petsseries handles authentication, token refresh and the device API. It is a plain async library with no Home Assistant dependency.
  • The integration adds a config flow, a data update coordinator and the entity platforms on top of it.
  • Camera streaming goes through a separate path built on the Tuya layer the devices actually use, which is where tuya-mobile came from.

Results

The integration is on HACS and is the most used thing I have published. Real users open real issues, which has driven most of the work since release: connection handling, session lifetime and sensor accuracy.