Skip to content

Charging Station support #29

@pratsenka

Description

@pratsenka

Device Infomation JSON File

Below is the information on a device:
  {
    "active_time": 1748030205,
    "biz_type": 18,
    "category": "qccdz",
    "create_time": 1748030205,
    "icon": "smart/icon/ay15452001414318THhs/a37f195ff6e17ce89f9883afc03cb7fe.png",
    "id": "****",
    "ip": "x.x.x.x",
    "lat": "00.00",
    "local_key": "qwerty",
    "lon": "00.00",
    "model": "EV Charging Station2",
    "name": "EV Charging Station",
    "online": true,
    "owner_id": "42755201",
    "product_id": "bktb3jskdic1ar2t",
    "product_name": "EV Charging Station",
    "status": [
      {
        "code": "charge_cur_set",
        "value": 16
      },
      {
        "code": "charge_energy_once",
        "value": 802
      },
      {
        "code": "power_total",
        "value": 0
      },
      {
        "code": "switch",
        "value": true
      },
      {
        "code": "work_mode",
        "value": "charge_now"
      },
      {
        "code": "work_state",
        "value": "charger_free"
      }
    ],
    "sub": false,
    "time_zone": "+03:00",
    "uid": "euxxx",
    "update_time": 1779374237,
    "uuid": "xxx",
    "schema": [
      {
        "code": "charge_cur_set",
        "mode": "rw",
        "type": "Integer",
        "property": {
          "unit": "A",
          "min": 6,
          "max": 48,
          "scale": 0,
          "step": 1
        }
      },
      {
        "code": "charge_energy_once",
        "mode": "ro",
        "type": "Integer",
        "property": {
          "unit": "kW·h",
          "min": 1,
          "max": 999999,
          "scale": 2,
          "step": 1
        }
      },
      {
        "code": "power_total",
        "mode": "ro",
        "type": "Integer",
        "property": {
          "unit": "kW",
          "min": 0,
          "max": 99999999,
          "scale": 3,
          "step": 1
        }
      },
      {
        "code": "switch",
        "mode": "rw",
        "type": "Boolean",
        "property": {}
      },
      {
        "code": "work_mode",
        "mode": "rw",
        "type": "Enum",
        "property": {
          "range": [
            "charge_now",
            "charge_pct",
            "charge_energy",
            "charge_schedule"
          ]
        }
      },
      {
        "code": "work_state",
        "mode": "ro",
        "type": "Enum",
        "property": {
          "range": [
            "charger_free",
            "charger_insert",
            "charger_free_fault",
            "charger_wait",
            "charger_charging",
            "charger_pause",
            "charger_end",
            "charger_fault"
          ]
        }
      }
    ]
  }

homebridge mqtt log:
[5/29/2026, 2:52:10 PM] [Tuya] Child bridge restarting...
[5/29/2026, 2:52:15 PM] [Tuya] Loading accessory from cache: EV Charging Station
[5/29/2026, 2:52:15 PM] [Tuya] Executed didFinishLaunching callback
[5/29/2026, 2:52:15 PM] [Tuya] Log in to Tuya Cloud.
[5/29/2026, 2:52:15 PM] [Tuya] [TuyaOpenAPI] Login to: https://openapi.tuyaeu.com
[5/29/2026, 2:52:15 PM] [Tuya] [TuyaOpenAPI] Request:
[5/29/2026, 2:52:15 PM] [Tuya] Start MQTT connection.
[5/29/2026, 2:52:15 PM] [Tuya] Fetching home list.
[5/29/2026, 2:52:15 PM] [Tuya] [TuyaOpenAPI] Request:
[5/29/2026, 2:52:16 PM] [Tuya] [TuyaOpenAPI] Response:
path = /v1.0/homes/xxx/devices
data = {
  "result": [
    {
      "active_time": 1748030205,
      "biz_type": 18,
      "category": "qccdz",
      "create_time": 1748030205,
      "icon": "smart/icon/ay15452001414318THhs/a37f195ff6e17ce89f9883afc03cb7fe.png",
      "id": "xxx",
      "ip": "x.x.x.x",
      "lat": "00.00",
      "local_key": "xxx",
      "lon": "00.00",
      "model": "EV Charging Station2",
      "name": "EV Charging Station",
      "online": true,
      "owner_id": "xxx",
      "product_id": "xxx",
      "product_name": "EV Charging Station",
      "status": [
        {
          "code": "work_state",
          "value": "charger_charging"
        },
        {
          "code": "charge_cur_set",
          "value": 16
        },
        {
          "code": "power_total",
          "value": 9493
        },
        {
          "code": "work_mode",
          "value": "charge_now"
        },
        {
          "code": "switch",
          "value": true
        },
        {
          "code": "charge_energy_once",
          "value": 906
        }
      ],
      "sub": false,
      "time_zone": "+03:00",
      "uid": "euxxx",
      "update_time": 1780019592,
      "uuid": "xxx"
    }
  ],
  "success": true,
  "t": 1780055536134,
  "tid": "d68e4f6b5b5411f1b383426accb3f9fe"
}
[5/29/2026, 2:52:16 PM] [Tuya] [TuyaOpenAPI] Response:
path = /v1.0/devices/xxx/specifications
data = {
  "result": {
    "category": "qccdz",
    "functions": [
      {
        "code": "charge_cur_set",
        "type": "Integer",
        "values": "{\"unit\":\"A\",\"min\":6,\"max\":48,\"scale\":0,\"step\":1}"
      },
      {
        "code": "work_mode",
        "type": "Enum",
        "values": "{\"range\":[\"charge_now\",\"charge_pct\",\"charge_energy\",\"charge_schedule\"]}"
      },
      {
        "code": "switch",
        "type": "Boolean",
        "values": "{}"
      }
    ],
    "status": [
      {
        "code": "work_state",
        "type": "Enum",
        "values": "{\"range\":[\"charger_free\",\"charger_insert\",\"charger_free_fault\",\"charger_wait\",\"charger_charging\",\"charger_pause\",\"charger_end\",\"charger_fault\"]}"
      },
      {
        "code": "charge_cur_set",
        "type": "Integer",
        "values": "{\"unit\":\"A\",\"min\":6,\"max\":48,\"scale\":0,\"step\":1}"
      },
      {
        "code": "power_total",
        "type": "Integer",
        "values": "{\"unit\":\"kW\",\"min\":0,\"max\":99999999,\"scale\":3,\"step\":1}"
      },
      {
        "code": "work_mode",
        "type": "Enum",
        "values": "{\"range\":[\"charge_now\",\"charge_pct\",\"charge_energy\",\"charge_schedule\"]}"
      },
      {
        "code": "switch",
        "type": "Boolean",
        "values": "{}"
      },
      {
        "code": "charge_energy_once",
        "type": "Integer",
        "values": "{\"unit\":\"kW·h\",\"min\":1,\"max\":999999,\"scale\":2,\"step\":1}"
      }
    ]
  },
  "success": true,
  "t": 1780055536389,
  "tid": "d6c25bf95b5411f182968e7573f25664"
[5/29/2026, 2:52:28 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/xxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "d48aef19-cfce-4e97-a0e0-54320ec07a70",
  "productKey": "xxx",
  "status": [
    {
      "6": "CPwAOdAMlA=="
    }
  ]
}
t = 1780055548
[5/29/2026, 2:52:28 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "571bfd5e-0040-4fba-a9c2-e4f4c51efcf4",
  "productKey": "xxx",
  "status": [
    {
      "7": "CS4AN3gM2g=="
    }
  ]
}
t = 1780055548
[5/29/2026, 2:52:28 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "4f4058af-f7f3-423c-9617-e994b975bcc2",
  "productKey": "xxx",
  "status": [
    {
      "9": 9716,
      "code": "power_total",
      "t": 1780055548,
      "value": 9716
    }
  ]
}
t = 1780055548
[5/29/2026, 2:52:28 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "419a22f8-74c4-4517-826b-037f20a9a238",
  "productKey": "xxx",
  "status": [
    {
      "8": "CPIAOWwMhg=="
    }
  ]
}
t = 1780055548
[5/29/2026, 2:52:39 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "9c4adc99-6881-475e-8386-3b69f95b8515",
  "productKey": "xxx",
  "status": [
    {
      "14": "charge_now",
      "code": "work_mode",
      "t": 1780055559,
      "value": "charge_now"
    }
  ]
}
t = 1780055559
[5/29/2026, 2:52:40 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "46fc49be-9d0b-4de4-bf0d-f731e73af0d6",
  "productKey": "xxx",
  "status": [
    {
      "18": true,
      "code": "switch",
      "t": 1780055559,
      "value": true
    }
  ]
}
t = 1780055559
[5/29/2026, 2:52:40 PM] [Tuya] [TuyaOpenMQ] onMessage:
topic = cloud/token/in/newxxx
protocol = 4
message = {
  "devId": "XXX",
  "dataId": "bed8a725-4b47-474a-a511-59085796aed9",
  "productKey": "xxx",
  "status": [
    {
      "19": "AAA="
    }
  ]
}
t = 1780055560

Detail Informations

Hello!

Is it possible to add a support for a charging station at least as a Electricity Meter?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions