Cat Litter Stats

Cat Litter Stats

Starlark

GIMP

1.1.2026

Mini Dashboard for Tidbyt/Tronbyt showing cat litter box stats from HomeAssistant

Written by: Tobias

Project Cover Image.

🐈 PETKIT Cat Litter Box Stats for Tidbyt / Tronbyt Server

⚠️ Recommended to use the script/automation via HomeAssistant with TidbytAssistant for automations and display notifications.

😺 Needs this Petkit HACS Integration to work: home-assistant-petkit

This Pixlet applet shows recent usage statistics from your automatic litterbox (e.g. PuraMax 1/2):

  • ℹ️ Choose Device Name
  • ⏲️ Choose Informations to Show
  • ⚠️ Alert when Litterbox is full or Litter is empty
  • 🖌️ Choose Cat Pixel Art according to the looks of Your Cats
  • 😺 Setup Profiles for all your Cats by their names (from your Petkit Account)
  • 😺 Setup different pet names for yout Cats to be shown
  • 😺 Upload Custom Pixel Art for Your Cats

Preview

Tidbyt background
preview

preview

Available Cat Pixel Art

01234567891011
01234567891011

Setup


1. Setup home-assistant-petkit from HACS and follow the instructions

Install HACS on your HA Instance. Install Petkit HACS. Follow Setup Instructions there.

Home Assistant as Host

2. Setup TidbytAssistant from HACS

—> Easy way to send custom .star to yout Tidbyt Device locally. Install TidbytAssistan HACS. Follow Setup Instructions there.

3. Setup Script in HA to run cat_litter_stats.star (YAML)

Example Script

sequence:
  - action: tidbytassistant.push
    metadata: {}
    data:
      contenttype: custom
      publishtype: foreground
      devicename:
        - tidbyt
      customcontent: cat_litter_stats/cat_litter_stats.star     <----- /tidbyt/...
      language: de
      arguments: >-
        server_address_input=-->PUT YOUR HA SERVER HERE<--;server_api_key=-->PUT YOUR HA API KEY HERE<--;entity_toilet_name=katzenklo;show_alternate_names=True;cat_0_alternative_names=Tschwibbie,Boffski,Biffler,Niffie,Brizzler;cat_1_alternative_names=Mausi,Biene,Frau Maus,Frausi;show_pixel_art=True;cat_order=Champ,Lucy;cat_0_art=0;cat_1_art=1
    enabled: true
alias: Katzenklo Benachrichtigung Stats
description: ""

Most Important here ist the arguments: field.

⚠️ Important: when using the GUI of Tidbyt Push Script setup, put all key=value; pairs in one line!

arguments: >-
        server_address_input=-->PUT YOUR HA SERVER HERE<--;server_api_key=-->PUT YOUR HA API KEY HERE<--;entity_toilet_name=katzenklo;show_alternate_names=True;cat_0_alternative_names=Tschwibbie, Boffski,Biffler,Niffie,Brizzler;cat_1_alternative_names=Mausi,Biene,Frau Maus,Frausi;show_pixel_art=True;cat_order=Champ,Lucy;cat_0_art=0;cat_1_art=1

⚠️ Important:

  • The Number of cat_ arguments depends on the lenght of cat_order and must match (counting up from 0)
  • Lists Items must be seperated by ”,”
  • Custom pixel art overrides built-in art when selected.

Example for key:cat_0_alternate_names with value:name1,name2from HomeAssistant Helper Entity input for cat pet names (TydbitAssistant argument):

cat_0_alternate_names={{states('input_text.spitznamen_champ') | string}}

4. Setup Automation in HA to trigger Display (YAML)

This exmaple automation triggers, when the number of total uses changes. It wakes up and brightens the Tidbyt device up for 15 seconds, then runs the script and turns auto dim on and brightness down afterwards.

alias: Cat Litterbox Stats
description: "Trigger Cat Litterbox Stats on Tidbyt Screen after usage."
triggers:
  - trigger: state
    entity_id:
      - sensor.xxxxxxx_total_use     <----- Put name of Litterbox Device here (e.g. katzenklo)
    for:
      hours: 0
      minutes: 0
      seconds: 0
    enabled: true
conditions:
  - condition: state
    entity_id: input_boolean.stumm
    state:
      - "off"
actions:
  - action: switch.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: switch.tidbyte_xxxxxxx_autodim     <----- Put name of Tidbyt Device here
    enabled: true
  - action: light.turn_on
    metadata: {}
    data:
      brightness_pct: 100
    target:
      entity_id: light.tidbyte_xxxxxxx_brightness     <----- Put name of Tidbyt Device here
  - action: script.katzenklo_benachrichtigung_tidbyt
    metadata: {}
    data: {}
  - delay:
      hours: 0
      minutes: 0
      seconds: 10
  - action: switch.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: switch.tidbyte_xxxxxxx_autodim     <----- Put name of Tidbyt Device here
    enabled: true
  - action: light.turn_on
    metadata: {}
    data:
      brightness_pct: 55
    target:
      entity_id: light.tidbyte_xxxxxxx_brightness     <----- Put name of Tidbyt Device here
mode: single

Tronbyt as Host

In Tronbyt you should be able to use the Configuration Scheme given in the app to setup of all arguments!