Skip to content

Add support for Aqara Cube T1 Pro (lumi.remote.cagl02)#4825

Open
kapniksuper wants to merge 8 commits intozigpy:devfrom
kapniksuper:dev
Open

Add support for Aqara Cube T1 Pro (lumi.remote.cagl02)#4825
kapniksuper wants to merge 8 commits intozigpy:devfrom
kapniksuper:dev

Conversation

@kapniksuper
Copy link
Copy Markdown

What does this PR do?

Adds support for the Aqara Cube T1 Pro (lumi.remote.cagl02). This quirk correctly parses the OppleCluster (0xFCC0) attributes to emit zha_send_event for flip events and active face status, utilizing the existing CubeAQGL01 automation triggers and MultistateInputCluster. This allows the cube to function properly in its default "Scene Mode".

Device signature

{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4151, maximum_buffer_size=127, maximum_incoming_transfer_size=100, server_mask=11264, maximum_outgoing_transfer_size=100, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x0103",
      "in_clusters": [
        "0x0000",
        "0x0001",
        "0x0003",
        "0x0006",
        "0x0012"
      ],
      "out_clusters": [
        "0x0000",
        "0x0003",
        "0x0019"
      ]
    },
    "2": {
      "profile_id": 260,
      "device_type": "0x0103",
      "in_clusters": [
        "0x0012"
      ],
      "out_clusters": [
        "0x0012"
      ]
    },
    "3": {
      "profile_id": 260,
      "device_type": "0x0103",
      "in_clusters": [
        "0x000c"
      ],
      "out_clusters": [
        "0x000c"
      ]
    }
  },
  "manufacturer": "LUMI",
  "model": "lumi.remote.cagl02",
  "class": "zigpy.device.Device"
}

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 12, 2026

Codecov Report

❌ Patch coverage is 82.60870% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 92.64%. Comparing base (20a0777) to head (6c9db31).
⚠️ Report is 38 commits behind head on dev.

Files with missing lines Patch % Lines
zhaquirks/xiaomi/aqara/cube_t1_pro.py 82.60% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #4825      +/-   ##
==========================================
- Coverage   92.66%   92.64%   -0.02%     
==========================================
  Files         380      381       +1     
  Lines       12766    12789      +23     
==========================================
+ Hits        11829    11848      +19     
- Misses        937      941       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@TheJulianJES TheJulianJES added the Xiaomi Request/PR regarding a Xiaomi or Aqara device label Mar 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Xiaomi Request/PR regarding a Xiaomi or Aqara device

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants