Commit Graph

244 Commits

Author SHA1 Message Date
sususweet
39932a2d2d feat: update device mapping for T0xE7. Fix #89 2026-01-07 21:04:24 +08:00
sususweet
77b3af3168 feat: update device mapping for T0x24. Fix #82 2026-01-07 20:53:05 +08:00
Yingqi Tang
06ee534873 Merge pull request #88 from Cyborg2017/master
Fix functionality gaps for several specific devices; add support for two new device models T0xB6 and T0xB8Master
2026-01-07 11:52:50 +08:00
Cyborg2017
38c42318cc feat: add device mapping for T0xB8(750004AT)
* Device type: T0xB8, Sn8: 750004AT, model: V12.
2026-01-07 11:23:58 +08:00
Cyborg2017
27b9522851 feat: add device mapping for T0xB6(730007H8)
* Device type: T0xB6, Sn8: 730007H8, model: CXW-140-AK7 PRO.
2026-01-07 11:23:51 +08:00
Cyborg2017
2ac5880eb6 feat: add command template support for device control
- Add command field support to MideaNumberEntity and MideaSelectEntity
- Command templates allow defining fixed parameters in configuration
- Options/values are merged with command template before sending to device
- Backward compatible - existing configurations continue to work

Examples in device_mapping:

1. For NUMBER platform - brightness control with protocol template:
```yaml
Platform.NUMBER: {
    "lightness": {
        "min": 10,
        "max": 100,
        "step": 5,
        "command": {
            "electronic_control_version": 2,
            "type": "b6",
            "b6_action": "setting",
            "setting": "light",
            "lightness": "{value}"  # {value} placeholder for actual number value
        }
    }
}

2.For SELECT platform - gesture selection with protocol template:
```yaml
Platform.SELECT: {
    "gesture": {
        "options": {
            "off": {"gesture": "off"},
            "on": {"gesture": "on"}
        },
        "command": {  # Protocol template for gesture control
            "electronic_control_version": 2,
            "type": "b6",
            "b6_action": "setting",
            "setting": "gesture"
            # {gesture} value from options will be merged automatically
        }
    }
}
2026-01-07 11:22:04 +08:00
Cyborg2017
dded4485d6 fix: support of cur_humidity for T0xFD(202Z310H) 2026-01-07 00:19:34 +08:00
Cyborg2017
696b2b17e7 fix: support of deep_filter_percent for T0xFC(571Z3081) 2026-01-07 00:19:34 +08:00
Cyborg2017
8820dbe8b1 fix: move gear setting to preset_mode for T0xFB(570667EC)
* also add support for cur_temperature sensor
2026-01-07 00:19:33 +08:00
Cyborg2017
a68ceb3104 fix: support of radar_induction_closing_time for T0x26(M0100040) 2026-01-07 00:19:30 +08:00
Cyborg2017
c91898621f fix: support of custom_timing for T0x17 2026-01-07 00:18:06 +08:00
sususweet
c55fc36119 feat: update device mapping for T0xED. Fix #85 2026-01-07 00:04:30 +08:00
Yingqi Tang
4a9183f486 Update FUNDING.yml 2026-01-06 15:29:10 +08:00
Yingqi Tang
f83056fd82 Create FUNDING.yml 2026-01-06 15:28:02 +08:00
sususweet
d94bbc06ac Merge remote-tracking branch 'origin/master' 2026-01-06 12:04:22 +08:00
sususweet
0a5dd1afde feat: update device mapping for T0xC2. Fix #80 2026-01-06 12:04:06 +08:00
sususweet
0341b9d105 feat: update device mapping for T0xC2. Fix
#80
2026-01-06 12:01:40 +08:00
sususweet
9a594777a6 feat: update device mapping for MHSR180N8-Z1 真暖热泵主机. v0.2.2 2026-01-05 21:13:43 +08:00
sususweet
2c0322d2a9 feat: version 0.2.2 2026-01-05 20:27:12 +08:00
sususweet
008d6a69bb feat: update device mapping for T0xBC. 2026-01-05 20:25:31 +08:00
Yingqi Tang
59cc5d506f Merge pull request #84 from Cyborg2017/staging
Perform updates for multiple devices.
2026-01-05 20:04:05 +08:00
Cyborg2017
e3a6ad1681 feat: add device mapping for T0xAC(23096633)
* Device type: T0xAC, Sn8: 23096633, model: KFR-75T2/B3N8-XF(1)Ⅲ.

- Remove non-existent swing function
- Add standalone power switch
- Correct aux heat key (ptc)
- Add energy sensor with kWh conversion
- Add support for intake_wind / exhaust_wind

Co-authored-by: Dali Yang <cnyangdali@outlook.com>
2026-01-05 19:55:51 +08:00
Cyborg2017
a738b2e4a0 feat: add device mapping for T0xAC(23096653)
* Device type: T0xAC, Sn8: 23096653, model: KFR-72T2/B3N8-XGQ(1)Ⅲ.

- Remove non-existent swing function and humidity sensor
- Fix disinfection key (fengguan_remove_odor)
- Add standalone power switch
- Correct aux heat key (ptc)
- Add energy sensor with kWh conversion
2026-01-02 22:45:56 +08:00
Cyborg2017
2e389c50cc feat: add device mapping for T0x26(M0100040)
* Device type: T0x26, Sn8: M0100040, model: MY-S6X28-Y9W/Y9AW.
- Optimize wind direction selector with unified angle control (60°-120°)
- Add automatic swing mode for dynamic air distribution
- Implement human-sensing night light switch with occupancy detection
- Introduce dedicated temperature selectors for heating and bath modes (30-42°C)
- Add lighting brightness controller with percentage-based adjustment (10-100%)
- Update and improve Chinese translation strings for better localization
2025-12-31 00:19:19 +08:00
Cyborg2017
e3b785c070 fix: Complete fan control with proper "off" state
Changes:
1. Fix speed selector "off" state:
   - `percentage` property returns 0 when fan is off
   - `async_set_percentage()` calls `async_turn_off()` for 0%
   - `async_turn_on()` handles percentage=0 as turn off

2. Add auto-power on:
   - `async_set_percentage()` powers on fan if off when selecting speed
   - `async_set_preset_mode()` powers on fan if off when switching modes

3. Enhance user experience:
   - 0% in speed slider → Turns fan off
   - Any speed selection when off → Auto powers on + sets speed
   - Mode switch when off → Auto powers on + sets mode
   - Works with range-based speed configs
2025-12-29 23:41:35 +08:00
Cyborg2017
75c4d6c80d feat: update translations for fan preset modes 2025-12-29 22:39:12 +08:00
Cyborg2017
085f7b3cde feat: Add preset mode specific speed configurations
- Each preset mode (e.g normal/sleep/baby) now supports independent speed settings
- Automatically sets fixed speed when switching to single-speed modes
- Maintains backward compatibility with existing configuration format
- Dynamic switching of speed configuration based on selected preset mode

The implementation allows for more intuitive control where different
operating modes can have different speed adjustment capabilities.
2025-12-29 22:38:57 +08:00
Cyborg2017
97724a8dba feat: Allow both drums to share the db_control_status switch
* Note:  Ensures the shared control status (`db_control_status`) reflects the operational state of the currently active silo.
            - If the selected silo is not running (`db_running_status`), the control status is set to 'pause'.
            - This synchronization allows multiple silos to safely share a single control switch during switching operations.
2025-12-28 12:00:42 +08:00
Cyborg2017
92fb232a0c feat: Sync the attribute status of the selected drum with M-Smart app 2025-12-28 12:00:42 +08:00
Cyborg2017
ca1953ba46 fix: Add correct power switch and control status entities for T0xD9
* Note: `power` is the washing machine's power switch,
        `db_running_status` only displays the running status of the current drum,
        `db_control_status` is the switch to start or pause the current drum.
2025-12-28 12:00:42 +08:00
Cyborg2017
e532f9deab fix: Remove non-existent entities for T0xD9 2025-12-28 12:00:42 +08:00
Cyborg2017
c86152226c fix: Remove non-existent running programs for T0xD9 2025-12-28 12:00:42 +08:00
Cyborg2017
7426455d75 feat: update translations for T0xD9 2025-12-28 12:00:42 +08:00
Cyborg2017
0c4b6b5e0d feat: add device mapping for T0xFA(5600119Z)
* Device type: T0xFA, Sn8: 5600119Z, model: AAF10MR.
2025-12-28 12:00:42 +08:00
Cyborg2017
40df4d1a83 feat: add device mapping for T0xFD(202Z310H)
* Device type: T0xFD, Sn8: 202Z310H, model: SZK-1Y80.
2025-12-28 12:00:31 +08:00
Cyborg2017
729389c9f1 feat: add device mapping for T0xFC(571Z3081)
* Device type: T0xFC, Sn8: 571Z3081, model: KJ1000G-T1000 Lite.
2025-12-26 21:16:08 +08:00
Cyborg2017
ed4e3d34fe feat: add device mapping for T0xFB(570667EC)
* Device type: T0xFB, Sn8: 570667EC, model: HDU20WS.
2025-12-26 20:58:41 +08:00
Cyborg2017
9fdf12cbd4 fix: align translations with M-Smart app 2025-12-24 15:14:32 +08:00
Yingqi Tang
3db5543a9e Merge pull request #73 from Cyborg2017/master
Make some adjustments to T0x17
2025-12-22 11:40:57 +08:00
Cyborg2017
9be4c28bdd feat: add offline voice function support for T0x17
Change-Id: Ia599072e4b9a77c360e11b5b1174bdd71d9a9c0c
2025-12-21 15:51:57 +08:00
Cyborg2017
38a686144b feat: update translations for T0x17
Change-Id: I8ed4bf64ba03b343fe5da60e99d7d067ee4ec26f
2025-12-21 15:44:34 +08:00
sususweet
92c656803a doc: update readme. v0.2.1 2025-12-20 16:31:07 +08:00
sususweet
5a3941fd19 feat: add support for T0xC1. Fix #67. 2025-12-20 16:29:54 +08:00
sususweet
61a8115244 feat: add multi-tub support for T0xD9. 2025-12-20 16:09:16 +08:00
sususweet
8417fb380a fix: remove redundant imports. 2025-12-20 12:47:21 +08:00
sususweet
8aa0fc93fc feat: add control protocol v2 for T0xB6. 2025-12-20 12:44:16 +08:00
sususweet
96a9d49fcf feat: add translate logic for 0/1 and off/on status. 2025-12-20 01:05:40 +08:00
sususweet
270bfa3df8 feat: version 0.2.1 2025-12-20 00:51:55 +08:00
sususweet
f1513b8f0e feat: add device mapping for T0x17 and T0xBC. 2025-12-20 00:51:37 +08:00
sususweet
3619b06af1 feat: add device mapping for 000K86JB. Fix #72. 2025-12-20 00:15:18 +08:00