Skip to content

hasscc/catlink

Repository files navigation

CATLINK v2 Integration for Home Assistant

CatLINK Logo + Home Assistant Logo

Made easy, for 😸 lovers.


Spotted the issue? Report a Bug

Table of Contents

The CatLINK custom integration provides seamless support for integrating your CatLINK Scooper and Litterbox devices into Home Assistant. This integration allows you to monitor, control, and automate your CatLINK devices directly from your Home Assistant setup, enhancing the convenience and care of your feline friends.

Features:

  • Scooper/Litterbox Device Integration: Effortlessly connect your CatLINK Scooper and Litterbox devices to Home Assistant, enabling centralized control and monitoring within your smart home environment.

  • Real-Time Status Monitoring: Track essential metrics such as work status, alarm status, weight, litter weight, cleaning times, and more. All relevant data is available in real-time, ensuring you stay informed about your pet's litterbox usage.

  • Mode Selection: Choose between different modes of operation (Auto, Manual, Time) to customize the behavior of your CatLINK devices according to your needs and preferences.

  • Advanced Actions: Perform specific actions such as initiating a clean cycle, pausing the device, or changing the litter bag directly from Home Assistant.

  • Comprehensive Logging: Access detailed event logs for all activities, including manual and auto-clean events, cat visits with associated cat details, and other device operations. This feature helps you keep track of your pets' habits and the device's performance.

  • Customizable Alerts and Automations: Set up notifications and automate tasks based on the state of your CatLINK devices. For example, receive alerts when the litterbox is full or automatically start a cleaning cycle during quiet times.

  • Entity Attributes: The integration exposes various attributes related to your CatLINK devices, such as litter weight, total and manual clean times, alarm status, and more, allowing for detailed customization and automation.


Installation:

Easy way

HACS

Manually

Method 1: Manually installation via Samba / SFTP

Download and copy custom_components/catlink folder to custom_components folder in your HomeAssistant config folder

Method 2: Onkey shell via SSH / Terminal & SSH add-on

wget -O - https://get.hacs.vip | DOMAIN=catlink REPO_PATH=hasscc/catlink ARCHIVE_TAG=main bash -

Method 3: shell_command service

  1. Copy this code to file configuration.yaml
    shell_command:
      update_catlink: |-
        wget -O - https://get.hacs.vip | DOMAIN=catlink REPO_PATH=hasscc/catlink ARCHIVE_TAG=main bash -
  2. Restart HA core
  3. Call this service: shell_command.update_catlink in Developer Tools
  4. Restart HA core again

Configuration Example:

catlink:
  phone: "xxxxxx"
  password: "xxxxxx"
  phone_iac: 86 # Default
  api_base: "https://app-usa.catlinks.cn/api/"
  scan_interval: "00:00:10"
  language: "en_GB"

  # Multiple accounts (Optional)
  accounts:
    - username: 18866660001
      password: password1
    - username: 18866660002
      password: password2

Supported Devices and Operations

Scooper SE

Operations

  • Changing Operation Mode (Auto, Manual, Time)
  • Actions (Cleaning, Pause, Change Garbage Bag)
  • Wastebin Full flag
  • Litter weight measurement
  • Litter days left
  • Deodorant replacement countdown in days
  • Occupacy flag
  • Cleaning count
  • Knob status
  • Garbage Tobe status
  • Online status
  • Logs & Errors
Scooper PRO

Operations

  • Changing Operation Mode (Auto, Manual, Time, Empty)
  • Actions (Start, Pause)
  • Deodorant replacement countdown in days
  • Litter days left
  • Litter weight measurement
  • Occupacy flag
  • Cleaning count
  • Temperature (Celsius)
  • Humidity
  • Online status
  • Logs & Error
Feeder Young

Operations

  • Feed Button
  • Food tray weight
  • Online status
  • Logs & Error

How to Configure?

! Recommend sharing devices to another account, because you can keep only one login session, which means that you'll have to re-login to CATLINK each time your HA instance pulls the data.

# configuration.yaml

catlink:
  # Single account
  phone: xxxxxxxxx # Username of Catlink APP (without country code)
  password: xxxxxxxxxx # Password
  phone_iac: 86 # Optional, International access code, default is 86 (China)
  api_base: # Optional, default is China server: https://app.catlinks.cn/api/ (see API Regions)
  scan_interval: # Optional, default is 00:01:00
  language: "en_GB"

  devices: # Optional
    - name: "Scooper C1" # Optional 
      mac: "AABBCCDDEE" # Optional
      empty_weight: 3.0 # (Optional) Empty litterbox weight defaults to 0.0
      max_samples_litter: 24 # (Optional) Number of samples to determinate whether cat is inside


  # Multiple accounts
  accounts:
    - username: 18866660001
      password: password1
    - username: 18866660002
      password: password2

API Regions

To verify your region, please navigate to Me > Settings > Server Nodes

Please precise your location, as number of features might depend on it.

Region API Base
🌎 Global/Recomended https://app.catlinks.cn/api/
πŸ‡¨πŸ‡³ Mainland China (Sh) https://app-sh.catlinks.cn/api/
πŸ‡ΊπŸ‡Έ Euroamerica https://app-usa.catlinks.cn/api/
πŸ‡ΈπŸ‡¬ Singapore https://app-sgp.catlinks.cn/api/

Services (Optional)

Request API

service: catlink.request_api
target:
  entity_id: sensor.scooper_xxxxxx_state # Any sensor entity in the account
data:
  api: /token/device/union/list/sorted
  params:
    key: val

How to contribute?

Please visit CONTRIBUTE, and be aware of this.


Disclaimer on Using Logos

Disclaimer on Using Logos: Please note that the logos used in this documentation, including the CatLINK and Home Assistant logos, are the property of their respective owners.

Trademark Acknowledgment: The CatLINK and Home Assistant logos are trademarks of their respective companies. This documentation uses these logos solely for informational and illustrative purposes. No endorsement by or affiliation with the trademark holders is implied.

Usage Restrictions: Ensure that you have the appropriate permissions or licenses to use these logos in your own materials. Unauthorized use of logos can result in trademark infringement or other legal issues.

Modifications: If you modify or resize the logos for use in your projects, ensure that the integrity of the logos is maintained and that they are not used in a misleading or inappropriate manner.

By using these logos in your documentation or materials, you acknowledge and agree to comply with all applicable trademark laws and the usage guidelines set by the respective trademark holders.