Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request support for ORNO SIGO doorbell #2901

Open
szupi-ipuzs opened this issue Feb 2, 2025 · 0 comments
Open

Request support for ORNO SIGO doorbell #2901

szupi-ipuzs opened this issue Feb 2, 2025 · 0 comments
Labels
config provided Config included by reporter new device Unsupported device

Comments

@szupi-ipuzs
Copy link
Contributor

szupi-ipuzs commented Feb 2, 2025

Log message

Not really a log, but rather the "diagnostic" json:

{
  "home_assistant": {
    "installation_type": "Home Assistant Container",
    "version": "2025.1.2",
    "dev": false,
    "hassio": false,
    "virtualenv": false,
    "python_version": "3.13.1",
    "docker": true,
    "arch": "x86_64",
    "timezone": "Europe/Warsaw",
    "os_name": "Linux",
    "os_version": "5.15.0-130-generic",
    "run_as_root": true
  },
  "custom_components": {
    "expose_camera_stream_source": {
      "documentation": "https://github.com/felipecrs/hass-expose-camera-stream-source#readme",
      "version": "0.2.1",
      "requirements": []
    },
    "presence_simulation": {
      "documentation": "https://github.com/slashback100/presence_simulation",
      "version": "4.12",
      "requirements": []
    },
    "bluetooth_tracker": {
      "documentation": "https://www.home-assistant.io/integrations/bluetooth_tracker",
      "version": "1.0.0",
      "requirements": [
        "bt-proximity==0.2.1",
        "git+https://github.com/pybluez/pybluez.git#pybluez==0.30"
      ]
    },
    "scheduler": {
      "documentation": "https://github.com/nielsfaber/scheduler-component",
      "version": "v0.0.0",
      "requirements": []
    },
    "pirateweather": {
      "documentation": "https://github.com/alexander0042/pirate-weather-ha",
      "version": "1.7",
      "requirements": []
    },
    "xiaomi_cloud_map_extractor": {
      "documentation": "https://github.com/PiotrMachowski/Home-Assistant-custom-components-Xiaomi-Cloud-Map-Extractor",
      "version": "v2.2.3",
      "requirements": [
        "pillow",
        "pybase64",
        "python-miio",
        "requests",
        "pycryptodome"
      ]
    },
    "ssh": {
      "documentation": "https://github.com/custom-components/sensor.ssh",
      "version": "0.1.5",
      "requirements": [
        "pexpect==4.6.0"
      ]
    },
    "ble_monitor": {
      "documentation": "https://github.com/custom-components/ble_monitor",
      "version": "13.0.0",
      "requirements": [
        "pycryptodomex>=3.21.0",
        "janus>=2.0.0",
        "aioblescan>=0.2.14",
        "btsocket>=0.3.0",
        "pyric>=0.1.6.3"
      ]
    },
    "tuya_ble": {
      "documentation": "https://www.home-assistant.io/integrations/tuya_ble",
      "version": "0.1.8",
      "requirements": [
        "tuya-iot-py-sdk==0.6.6",
        "pycountry>23.0.0"
      ]
    },
    "nodered": {
      "documentation": "https://zachowj.github.io/node-red-contrib-home-assistant-websocket/guide/custom_integration/",
      "version": "4.1.2",
      "requirements": []
    },
    "battery_notes": {
      "documentation": "https://andrew-codechimp.github.io/HA-Battery-Notes/",
      "version": "2.8.3",
      "requirements": []
    },
    "webrtc": {
      "documentation": "https://github.com/AlexxIT/WebRTC",
      "version": "v3.6.0",
      "requirements": []
    },
    "frigate": {
      "documentation": "https://github.com/blakeblackshear/frigate",
      "version": "5.7.0",
      "requirements": [
        "hass-web-proxy-lib==0.0.7"
      ]
    },
    "tuya_local": {
      "documentation": "https://github.com/make-all/tuya-local",
      "version": "2025.1.2",
      "requirements": [
        "tinytuya==1.16.1",
        "tuya-device-sharing-sdk~=0.2.1"
      ]
    },
    "browser_mod": {
      "documentation": "https://github.com/thomasloven/hass-browser_mod/blob/master/README.md",
      "version": "2.3.3",
      "requirements": []
    },
    "eventsensor": {
      "documentation": "https://github.com/azogue/eventsensor",
      "version": "3.3.1",
      "requirements": []
    },
    "hacs": {
      "documentation": "https://hacs.xyz/docs/use/",
      "version": "2.0.5",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    }
  },
  "integration_manifest": {
    "domain": "tuya_local",
    "name": "Tuya Local",
    "codeowners": [
      "make-all"
    ],
    "config_flow": true,
    "dependencies": [],
    "documentation": "https://github.com/make-all/tuya-local",
    "integration_type": "device",
    "iot_class": "local_push",
    "issue_tracker": "https://github.com/make-all/tuya-local/issues",
    "requirements": [
      "tinytuya==1.16.1",
      "tuya-device-sharing-sdk~=0.2.1"
    ],
    "version": "2025.1.2",
    "is_built_in": false,
    "overwrites_built_in": false
  },
  "setup_times": {
    "null": {
      "setup": 5.3625088185071945e-05
    },
    "9463042e8a964e65ff798ca01e1eb40d": {
      "wait_import_platforms": -7.757875847863033,
      "wait_base_component": -0.0031741070561110973,
      "config_entry_setup": 8.631473019020632
    },
    "61710a5cc3a6c41ac5756983a942cd4f": {
      "wait_import_platforms": -7.827880825847387,
      "config_entry_setup": 8.736753582023084
    },
    "01JGYJWY6CY0JWG8Z279RMFV2M": {
      "wait_import_platforms": -7.892916399985552,
      "config_entry_setup": 8.727061100071296
    },
    "45e2486b4a7d98d95018ea5b5af3a043": {
      "wait_import_platforms": -7.894502484006807,
      "wait_base_component": -0.0014627969358116388,
      "config_entry_setup": 8.747865522978827
    },
    "cab96c68a1e8b774a34b51231544cebd": {
      "wait_import_platforms": -7.887656443985179,
      "config_entry_setup": 8.751038517104462
    },
    "01JDF7MABTSQ2AB5NKB3YXRKFB": {
      "wait_import_platforms": -7.895632728934288,
      "config_entry_setup": 8.738854945171624
    },
    "01J4KBM4C3T7D84BW5Y51QNY4S": {
      "wait_import_platforms": -7.891242740908638,
      "config_entry_setup": 8.740191753022373
    },
    "dc3ead2922c82de828db689373ea09f7": {
      "wait_import_platforms": -8.000382689991966,
      "config_entry_setup": 8.75143029494211
    },
    "01JK3441T2E14HH60SJRGAQ1X6": {
      "wait_import_platforms": -8.173248267965391,
      "wait_base_component": -0.020125793991610408,
      "config_entry_setup": 8.740759843029082
    },
    "073bc193971512f90d221d4ceba729ea": {
      "wait_import_platforms": -8.197247772943228,
      "config_entry_setup": 8.74206051393412
    }
  },
  "data": {
    "name": "Orno Doorbell",
    "type": "orno_sigo_doorbell",
    "device_id": "**REDACTED**",
    "device_cid": "",
    "local_key": "**REDACTED**",
    "host": "**REDACTED**",
    "protocol_version": 3.4,
    "tinytuya_version": "1.16.1",
    "api_version_set": 3.4,
    "api_version_used": 3.4,
    "api_working": true,
    "status": {},
    "cached_state": {
      "updated_at": 1738525056.0732121,
      "2": 6,
      "3": 1,
      "6": false,
      "1": "AwQB"
    },
    "pending_state": {},
    "connected": true,
    "force_dps": [],
    "home_assistant": {
      "name": "Orno Doorbell",
      "name_by_user": null,
      "disabled": false,
      "disabled_by": null,
      "entities": [
        {
          "disabled": false,
          "disabled_by": null,
          "entity_category": null,
          "device_class": null,
          "original_device_class": null,
          "icon": null,
          "unit_of_measurement": null,
          "state": {
            "entity_id": "siren.orno_doorbell",
            "state": "on",
            "attributes": {
              "available_tones": [
                "dingdong1",
                "Westminster Chimes",
                "F\u00fcr Elise",
                "The Cockoo Waltze",
                "Turkey March",
                "DO-RE-MI",
                "Waltz Of The Flowers",
                "Canon",
                "Ode To Joe",
                "Radetzky Marsch",
                "Waltz",
                "Nocturne In Eb",
                "Beethoven Symphony",
                "Dream God",
                "Minuet",
                "Bird",
                "Dream Wedding",
                "Chinese Folk Song",
                "Jasmine Flower",
                "Happy Birthday",
                "Peer Gynt, Suite No.1",
                "Hungarian Dance",
                "Mozart Piano Concertos",
                "1812 Overture",
                "Twinkle Twinkle Little Star",
                "Love Story",
                "My Grandfather's Clock",
                "The William Tell Overture",
                "Eva's Polka",
                "Fantaisie Impromptu",
                "Toreador Song",
                "Spanish Bullfighter",
                "Oh Susanna",
                "Clarinet Polka",
                "Russe Dance",
                "Go Home",
                "Habanera",
                "The Harmonious",
                "Symphony No. 40",
                "Ballade Pour Adeline",
                "Butterfly Love",
                "Auld Lang Syne",
                "Chinese Dance",
                "Four Seasons Spring",
                "Dance Of The Little Swans",
                "Jingle Bells",
                "The Swan Lake",
                "Dog Waltz",
                "A Beating Melody",
                "Alarm",
                "Cuckoo"
              ],
              "tone": "Turkey March",
              "volume_level": 0.01,
              "button_config": "AwQB",
              "icon": "mdi:bell",
              "friendly_name": "Orno Doorbell",
              "supported_features": 15
            },
            "last_changed": "2025-02-02T19:34:18.842596+00:00",
            "last_reported": "2025-02-02T19:37:36.075478+00:00",
            "last_updated": "2025-02-02T19:37:04.524778+00:00"
          }
        },
        {
          "disabled": false,
          "disabled_by": null,
          "entity_category": "config",
          "device_class": null,
          "original_device_class": null,
          "icon": null,
          "unit_of_measurement": null,
          "state": {
            "entity_id": "switch.orno_doorbell_mobile_notifications",
            "state": "off",
            "attributes": {
              "icon": "mdi:message-alert",
              "friendly_name": "Orno Doorbell Mobile notifications"
            },
            "last_changed": "2025-02-02T19:34:18.843795+00:00",
            "last_reported": "2025-02-02T19:37:36.075753+00:00",
            "last_updated": "2025-02-02T19:34:18.843795+00:00"
          }
        },
        {
          "disabled": false,
          "disabled_by": null,
          "entity_category": null,
          "device_class": null,
          "original_device_class": "doorbell",
          "icon": null,
          "unit_of_measurement": null,
          "state": {
            "entity_id": "event.orno_doorbell_doorbell",
            "state": "unknown",
            "attributes": {
              "event_types": [
                null,
                "ring"
              ],
              "event_type": null,
              "device_class": "doorbell",
              "friendly_name": "Orno Doorbell Doorbell"
            },
            "last_changed": "2025-02-02T19:34:18.844684+00:00",
            "last_reported": "2025-02-02T19:37:36.075985+00:00",
            "last_updated": "2025-02-02T19:34:18.844684+00:00"
          }
        }
      ]
    }
  }
}

Product ID

anic3m16jmjo80ao

Product Name

ORNO SIGO doorbell

DPS information

{
    "tokenResponse": {
        "expire_time": 300,
        "region": "EU",
        "secret": "4AH7",
        "token": "yEnbiRXp"
    },
    "deviceApi": "http://a.tuyaeu.com/d.json",
    "activeRequest": {
        "token": "yEnbiRXp",
        "productKey": "anic3m16jmjo80ao",
        "softVer": "1.0.0",
        "protocolVer": "2.2",
        "baselineVer": "40.00",
        "cadVer": "1.0.3",
        "cdVer": "1.0.0",
        "options": "{\"isFK\":false}",
        "t": 1737915092
    },
    "activeResponse": {
        "capability": 1025,
        "devId": "bfe6a4fb776b212c2ba1xc",
        "dstIntervals": [
            [
                1743296400,
                1761440400
            ],
            [
                1774746000,
                1792890000
            ],
            [
                1806195600,
                1824944400
            ],
            [
                1837645200,
                1856394000
            ],
            [
                1869094800,
                1887843600
            ]
        ],
        "localKey": "p}2&8@UTaYC.;>K0",
        "resetFactory": false,
        "schema": [
            {
                "mode": "rw",
                "id": 1,
                "type": "raw"
            },
            {
                "mode": "rw",
                "property": {
                    "min": 1,
                    "max": 52,
                    "scale": 0,
                    "step": 1,
                    "type": "value"
                },
                "id": 2,
                "type": "obj"
            },
            {
                "mode": "rw",
                "property": {
                    "min": 0,
                    "max": 4,
                    "scale": 0,
                    "step": 1,
                    "type": "value"
                },
                "id": 3,
                "type": "obj"
            },
            {
                "mode": "rw",
                "id": 5,
                "type": "raw"
            },
            {
                "mode": "rw",
                "property": {
                    "type": "bool"
                },
                "id": 6,
                "type": "obj"
            },
            {
                "mode": "rw",
                "id": 7,
                "type": "raw"
            },
            {
                "mode": "ro",
                "property": {
                    "min": 1,
                    "max": 255,
                    "scale": 0,
                    "step": 1,
                    "type": "value"
                },
                "id": 10,
                "trigger": "direct",
                "type": "obj"
            }
        ],
        "schemaId": "fwmke4",
        "secKey": "|?0D$S>QFwb/)I/M",
        "stdTimeZone": "+01:00",
        "timeZone": "+01:00"
    },
    "checkResponse": {
        "error_devices": [],
        "success_devices": [
            {
                "id": "bfe6a4fb776b212c2ba1xc",
                "ip": "2a06:98c0:3600::103",
                "lat": "",
                "lon": "",
                "name": "ORNO SIGO doorbell",
                "online": false,
                "product_id": "anic3m16jmjo80ao",
                "uuid": "a3a5bb98e8c453db"
            }
        ]
    },
    "modelResponse": {
        "model": {
            "modelId": "fwmke4",
            "services": [
                {
                    "actions": [],
                    "code": "",
                    "description": "",
                    "events": [],
                    "name": "\u9ed8\u8ba4\u670d\u52a1",
                    "properties": [
                        {
                            "abilityId": 1,
                            "accessMode": "rw",
                            "code": "doorbell_list_data",
                            "description": "01\u662f\u67e5\u8be2\u6570\u91cf   02\u662f\u83b7\u53d6\u5217\u8868 03\u662f\u8bfb\u53d6  04\u662f\u4fee\u6539   05\u662f\u5220\u9664  06\u662f\u6dfb\u52a0  07\u662f\u9000\u51fa\u6dfb\u52a0",
                            "extensions": {
                                "attribute": "1760"
                            },
                            "name": "\u95e8\u94c3\u5217\u8868\u6570\u636e",
                            "typeSpec": {
                                "type": "raw",
                                "maxlen": 128
                            }
                        },
                        {
                            "abilityId": 2,
                            "accessMode": "rw",
                            "code": "doorbell_ring_value",
                            "description": "",
                            "extensions": {
                                "attribute": "1696"
                            },
                            "name": "\u95e8\u94c3\u94c3\u58f0",
                            "typeSpec": {
                                "type": "value",
                                "max": 52,
                                "min": 1,
                                "scale": 0,
                                "step": 1,
                                "unit": ""
                            }
                        },
                        {
                            "abilityId": 3,
                            "accessMode": "rw",
                            "code": "doorbell_volume_value",
                            "description": "",
                            "extensions": {
                                "attribute": "1696"
                            },
                            "name": "\u95e8\u94c3\u97f3\u91cf",
                            "typeSpec": {
                                "type": "value",
                                "max": 4,
                                "min": 0,
                                "scale": 0,
                                "step": 1,
                                "unit": ""
                            }
                        },
                        {
                            "abilityId": 5,
                            "accessMode": "rw",
                            "code": "alarm_message",
                            "description": "UTF16 BE\u683c\u5f0f\u4e0a\u62a5\uff0c\u900f\u4f20\u663e\u793a",
                            "extensions": {
                                "attribute": "1760"
                            },
                            "name": "\u544a\u8b66\u6d88\u606f",
                            "typeSpec": {
                                "type": "raw",
                                "maxlen": 128
                            }
                        },
                        {
                            "abilityId": 6,
                            "accessMode": "rw",
                            "code": "alarm_propel_switch",
                            "description": "",
                            "extensions": {
                                "attribute": "1760"
                            },
                            "name": "\u544a\u8b66\u63a8\u9001\u5f00\u5173",
                            "typeSpec": {
                                "type": "bool"
                            }
                        },
                        {
                            "abilityId": 7,
                            "accessMode": "rw",
                            "code": "disturb_time_set",
                            "description": "1byte\uff1abit0-bit6 \u5468\u65e5-\u5468\u4e00\n2-3byte\uff1a\u5f00\u59cb\u65f6\u95f4\n4-5byte\uff1a\u7ed3\u675f\u65f6\u95f4\n\u6700\u5927\u8bbe\u7f6e10\u6761",
                            "extensions": {
                                "attribute": "1760"
                            },
                            "name": "\u52ff\u6270\u65f6\u6bb5",
                            "typeSpec": {
                                "type": "raw",
                                "maxlen": 128
                            }
                        },
                        {
                            "abilityId": 10,
                            "accessMode": "ro",
                            "code": "doorbell_call",
                            "description": "",
                            "extensions": {
                                "attribute": "1856",
                                "trigger": "direct"
                            },
                            "name": "\u95e8\u94c3\u547c\u53eb",
                            "typeSpec": {
                                "type": "value",
                                "max": 255,
                                "min": 1,
                                "scale": 0,
                                "step": 1
                            }
                        }
                    ]
                }
            ]
        }
    },
    "errors": [],
    "detailsResponse": {
        "active_time": 1737915092,
        "category": "wxml",
        "category_name": "Wireless Doorbell",
        "create_time": 1737915092,
        "gateway_id": "",
        "icon": "smart/icon/bay1590561975331JAIw/eff864efabb9840b2775cf6dc835a3b7.jpg",
        "id": "bfe6a4fb776b212c2ba1xc",
        "ip": "2a06:98c0:3600::103",
        "lat": "",
        "local_key": "p}2&8@UTaYC.;>K0",
        "lon": "",
        "model": "OR-DB-MK-174",
        "name": "ORNO SIGO doorbell",
        "online": false,
        "owner_id": "219857651",
        "product_id": "anic3m16jmjo80ao",
        "product_name": "ORNO SIGO doorbell",
        "sub": false,
        "time_zone": "+01:00",
        "update_time": 1737915092,
        "uuid": "a3a5bb98e8c453db"
    },
    "updateResponse": [
        {
            "channel": 0,
            "control_type": 0,
            "current_version": "1.0.0",
            "dev_type": 0,
            "last_upgrade_time": 0,
            "timeout": 0,
            "type": 0,
            "type_desc": "Main Module",
            "upgrade_status": 0
        }
    ],
    "deleteResponse": true,
    "cachedAt": false,
    "cacheKey": "anic3m16jmjo80ao"
}

Information about how the device functions

This device seems to be a variant of WHM04, so I started with the yaml from this devices. The list of tones does not match though, so I created a separate yaml. Also the volume is only 5 levels. Here's the yaml:

name: Orno Doorbell
products:
  - id: anic3m16jmjo80ao
    model: OR-DB-MK-174
entities:
  - entity: siren
    icon: "mdi:bell"
    dps:
      - id: 2
        type: integer
        name: tone
        mapping:
          - dps_val: 1
            value: dingdong1
          - dps_val: 2
            value: dingdong1
          - dps_val: 3
            value: Westminster Chimes
          - dps_val: 4
            value: Für Elise
          - dps_val: 5
            value: The Cockoo Waltze
          - dps_val: 6
            value: Turkey March
          - dps_val: 7
            value: DO-RE-MI
          - dps_val: 8
            value: Waltz Of The Flowers
          - dps_val: 9
            value: Canon
          - dps_val: 10
            value: Ode To Joe
          - dps_val: 11
            value: Radetzky Marsch
          - dps_val: 12
            value: Waltz
          - dps_val: 13
            value: Nocturne In Eb
          - dps_val: 14
            value: Beethoven Symphony
          - dps_val: 15
            value: Dream God
          - dps_val: 16
            value: Minuet
          - dps_val: 17
            value: Bird
          - dps_val: 18
            value: Dream Wedding
          - dps_val: 19
            value: Chinese Folk Song
          - dps_val: 20
            value: Jasmine Flower
          - dps_val: 21
            value: Happy Birthday
          - dps_val: 22
            value: Peer Gynt, Suite No.1
          - dps_val: 23
            value: Hungarian Dance
          - dps_val: 24
            value: Mozart Piano Concertos
          - dps_val: 25
            value: 1812 Overture
          - dps_val: 26
            value: Twinkle Twinkle Little Star
          - dps_val: 27
            value: Love Story
          - dps_val: 28
            value: My Grandfather's Clock
          - dps_val: 29
            value: The William Tell Overture
          - dps_val: 30
            value: Eva's Polka
          - dps_val: 31
            value: Fantaisie Impromptu
          - dps_val: 32
            value: Toreador Song
          - dps_val: 33
            value: Spanish Bullfighter
          - dps_val: 34
            value: Oh Susanna
          - dps_val: 35
            value: Clarinet Polka
          - dps_val: 36
            value: Russe Dance
          - dps_val: 37
            value: Go Home
          - dps_val: 38
            value: Habanera
          - dps_val: 39
            value: The Harmonious
          - dps_val: 40
            value: Symphony No. 40
          - dps_val: 41
            value: Ballade Pour Adeline
          - dps_val: 42
            value: Butterfly Love
          - dps_val: 43
            value: Auld Lang Syne
          - dps_val: 44
            value: Chinese Dance
          - dps_val: 45
            value: Four Seasons Spring
          - dps_val: 46
            value: Dance Of The Little Swans
          - dps_val: 47
            value: Jingle Bells
          - dps_val: 48
            value: The Swan Lake
          - dps_val: 49
            value: Dog Waltz
          - dps_val: 50
            value: A Beating Melody
          - dps_val: 51
            value: Alarm
          - dps_val: 52
            value: Cuckoo
      - id: 3
        type: integer
        name: volume_level
        mapping:
          - dps_val: 0
            value: 0.20
          - dps_val: 1
            value: 0.40
          - dps_val: 2
            value: 0.60
          - dps_val: 3
            value: 0.80
          - dps_val: 4
            value: 1.0
      - id: 1
        type: string
        name: button_config
        optional: true
      - id: 7
        type: string
        name: undisturb_schedule
        optional: true
      - id: 10
        type: integer
        name: doorbell_call
        optional: true
  - entity: switch
    name: Mobile notifications
    category: config
    icon: "mdi:message-alert"
    dps:
      - id: 6
        type: boolean
        name: switch
  - entity: event
    class: doorbell
    dps:
      - id: 5
        type: string
        name: event
        optional: true
        mapping:
          - dps_val: null
            value: null
          - value: ring
      - id: 5
        type: utf16b64
        optional: true
        name: message

When I load this yaml and add the device to HA, I can't seem to be able to change the tone, here's the screenshot with error:

Image

Any idea what's wrong with the yaml?

Btw. I think my doorbell is very similar to the one from #2504 (category is the same)

@szupi-ipuzs szupi-ipuzs added the new device Unsupported device label Feb 2, 2025
@make-all make-all moved this to 📋 Backlog in Tuya Local Feb 2, 2025
@make-all make-all added the config provided Config included by reporter label Feb 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
config provided Config included by reporter new device Unsupported device
Projects
Status: 📋 Backlog
Development

No branches or pull requests

2 participants