Pet Feeder Entities

I have a pet feeder (this one) which seems to run on Tuya. I use it with the Smart Home app. I’ve added it with localtuya and managed to get a bunch of entities, which I added all as sensors right now. I’m trying to see if I can figure out what the different DPs are, and whether any of them are also switches or something that can receive data not only submit (not sure what I’d call those). This is some history of the entities:

What I think I’ve figured out:
101: Last portion size (though I don’t get a 1 if I press the food button only once)
102: Food low sensor
104: ???
105: Manual feed button quantity
107: ???
108: Last portion size again??
109: Some number that changes every time the machine dispensed food. It seems to be a random number
110: ???

Any ideas how I can narrow it down a bit more? Anyone with experience with this?

1 Like

sorry to have no contribution, but just got a tuya pet feeder. Any progress?

Nope, but haven’t really spent a lot of time on it again. Got new network system, so have to set up everything again on localtuya :slight_smile: Will update if I figure anything more out.

Also wondering whether I can figure out if any of these numbers are inputs, and not only sensors, but no idea how to do that.

I also recently bought a tuya pet feeder (brand is Petalo).
I figured out some of the entities.

3: Feed portion (based on set portion size)
4: Feeding status sensor
15: Feeding report (how many portions were given)
19: Toggle night light
101: ?
102: Kibble level (less or more than sensor level)
103: ?
104: ?
106: Amount of portions to feed when pressing button

A weird behavior I have noticed is that when the feeder temporarily drops off my Wifi, after it returns it will do a feeding … Very annoying. That’s why I disabled my feeding sound and set the amount of portions to 0 most of the time.

So with some fiddling I got it working, if I just set the portion to 2, and hit save, the created scene deploys two, havent had any issues with wifi.

Although, obviously a local-only version would be better.

Were you able to figure out all values?

No I haven’t investigated further. I have not seen any of the sensors that I don’t know the meaning for change their value, so its hard to infer what their meaning is. If anyone finds out, please let us know.

Got this feeder - HoneyGuaridan 6L
It is compatible with Tuya.

Added to HASS via LocalTuya. My findings thus far:
6 - switch - slow feed enable
3 - input number - feed now. number sets the portions size (1…6). executes on change
18 - input number - voice play times. number sets the number of times voice recording is played (0…6). executes on change
101 - numeric sensor - last executed portion size (1…6)
102 - binary sensor? - haven’t figured out yet. all empty feeder - sensor reports “true”
103 - binary sensor? - Currently reports as empty. I think it’s the “empty” on the food container. haven’t added food yet to test.

2 Likes

Ended up creating UI for my dashboard.

  • Empty sign appears if the “empty sensor” is triggered
  • Empty sign turns red, if pressed “feed now” when empty and doesn’t execute feeding
  • Feeding button always runs voice 2x times and feeds per the portion size
  • Voice button runs the voice command once
  • Send notification to phone once the food container becomes empty
  • Using schedule card to feed at specific time if I’m not home (like to interact with the cat for feeding)
type: grid
square: false
title: Automatic Feeder
columns: 2
cards:
  - square: false
    columns: 1
    type: grid
    cards:
      - type: picture-elements
        image: /local/petfeeder_full_bowl_empty.png
        elements:
          - type: conditional
            conditions:
              - entity: binary_sensor.food_container_level
                state: 'on'
              - entity: input_boolean.pet_feeder_feed_now
                state: 'off'
            elements:
              - type: state-label
                entity: sensor.blank_blank
                style:
                  top: 22%
                  left: 42.5%
                  color: white
                  font-weight: bold
                  font-size: 250%
                prefix: Empty
            tap_action: none
            double_tap_action: none
            hold_action: none
          - type: conditional
            conditions:
              - entity: binary_sensor.food_container_level
                state: 'on'
              - entity: input_boolean.pet_feeder_feed_now
                state: 'on'
            elements:
              - type: state-label
                entity: sensor.blank_blank
                style:
                  top: 22%
                  left: 42.5%
                  color: red
                  font-weight: bold
                  font-size: 250%
                prefix: Empty
            tap_action: none
            double_tap_action: none
            hold_action: none
          - type: state-icon
            entity: input_boolean.pet_feeder_call_now
            style:
              top: 15%
              left: 87%
            tap_action:
              action: toggle
            double_tap_action: none
            hold_action: none
          - type: state-icon
            entity: switch.slow_feed_enable
            style:
              top: 38%
              left: 87%
            tap_action:
              action: toggle
            double_tap_action: none
            hold_action: none
          - type: state-icon
            entity: input_boolean.pet_feeder_feed_now
            style:
              top: 60%
              left: 87%
            tap_action:
              confirmation:
                text: Confrim to feed now. :)
              action: toggle
            double_tap_action: none
            hold_action: none
  - type: grid
    square: false
    columns: 1
    cards:
      - type: custom:numberbox-card
        border: true
        entity: input_number.pet_feeder_portion_size
        name: Portion
        min: '1'
        max: '6'
        step: '1'
        tap_action: none
        double_tap_action: none
        hold_action: none
      - hours_to_show: 48
        graph: line
        type: sensor
        entity: sensor.last_portion_size
        detail: 1
        icon: mdi:food
        name: Last Feed
        tap_action: none
        double_tap_action: none
        hold_action: none

image

3 Likes

Looks like the unknown is a sensor (possibly a switch) to show the 12h vs. 24h clock format.
Pretty useless to me. :blush:

Hey @alexbeatle , have you find anything by now? Because you had some unknown sensors? Still using the same Lovelace config? If possible, can you share a screenshot of your localtuya config too?

I have bought the same one, but with camera option…

Thnx

See prev. posts please. :slight_smile:

1 Like

I’ve just received the following pet feeder (https://www.aliexpress.com/item/1005003000438557.html?spm=a2g0o.order_list.order_list_main.63.21ef1802VvFXcP)

I am unable to get it integrated with Home Assistant. In the standard Home Assistant Tuya integration, I get the following :

Within Tuya I see the following following datapoints

{
  "result": [
    {
      "category": "sp",
      "devices": [
        "devicename"
      ],
      "functions": [
        {
          "code": "basic_indicator",
          "desc": "basic indicator",
          "name": "basic indicator",
          "type": "Boolean",
          "values": "{}"
        },
        {
          "code": "basic_osd",
          "desc": "basic osd",
          "name": "basic osd",
          "type": "Boolean",
          "values": "{}"
        },
        {
          "code": "basic_nightvision",
          "desc": "basic nightvision",
          "name": "basic nightvision",
          "type": "Enum",
          "values": "{\"range\":[\"0\",\"1\",\"2\"]}"
        },
        {
          "code": "sd_format",
          "desc": "sd format",
          "name": "sd format",
          "type": "Boolean",
          "values": "{}"
        },
        {
          "code": "motion_record",
          "desc": "motion record",
          "name": "motion record",
          "type": "Boolean",
          "values": "{}"
        },
        {
          "code": "record_switch",
          "desc": "record switch",
          "name": "record switch",
          "type": "Boolean",
          "values": "{}"
        },
        {
          "code": "record_mode",
          "desc": "record mode",
          "name": "record mode",
          "type": "Enum",
          "values": "{\"range\":[\"1\",\"2\"]}"
        },
        {
          "code": "device_restart",
          "desc": "device restart",
          "name": "device restart",
          "type": "Boolean",
          "values": "{}"
        }
      ],
      "product_id": "8zrzjldq07tlxnlv"
    }
  ],
  "success": true,
  "t": number,
  "tid": "tid"
}

when i try to get it into tuyalocal, I get the following error - letting me believe that it won’t work

image

Any ideas ?

I’d open a github ticket for tuyalocal.
Thus far for me everything was plug’n’play.

It looks like my pet feeder just doesn’t give the right information via Tuya IOT. Hence no point to go this way

Hi @Jens_Wymeersch

Do you have an update? i have another model, but exact same error
For now we are stuck on the official Tuya integration? does it work with that?
So no localtuya for now? Did you create an issue on github so i can subscribe?

PS: do you have a model with camera? does it gets exposed to HA?

Also tried this; but only get invalid data:

tried also the local_dp service, when for example manually adding DP 3 , but doesnt work either :frowning:
thnx

ok @Jens_Wymeersch , got some progress

look here:

already got my indicator light wotking as a test, need to find out the DP for the food, seems 245 was not working for me

I just tinkered with this for 1,5h and found out how it works with the help of the linked article of @pergola.fabio https://blog.ov1d1u.net/2022/11/configure-tuya-pet-feeder-with-home.html

  • You just go to the IoT dashboard
  • open on the left side “Cloud” => “API Explorer”
  • open “Smart Home Device System” => “Device Control” => “Get Device Specification Attribute” (First Screenshot)
  • paste your device ID
  • it spits out all the DP IDs for your device
  • with those just follow the linked article
  • for example feed my cats 1 time is in screenshot 2

Hope this helps someone else to setup the integration.

4 Likes

Thnx , but seems not all my DP were listed there … only the values from 100 to 110…

I decoded the android APK files figured them out, in my case the feed DP was 201

Thanks for the link, went there very hopeful, but unfortunately for my pet feeder…

{
  "code": 2009,
  "msg": "not support this device",
  "success": false,
  "t": 16709xxx204,
  "tid": "xxx"
}