Skip to content

Add klarstein alinea smart config#4424

Open
13r1ckz wants to merge 4 commits intomake-all:mainfrom
13r1ckz:add_Klarstein_Alinea_Smart
Open

Add klarstein alinea smart config#4424
13r1ckz wants to merge 4 commits intomake-all:mainfrom
13r1ckz:add_Klarstein_Alinea_Smart

Conversation

@13r1ckz
Copy link

@13r1ckz 13r1ckz commented Jan 31, 2026

I based it on the following config items i obtaind via the Tuya dev portal.
I have tried to figure out what the RGB property does (dp_id: 101), but was not able to trigger anything.
It also does not show in the app.
In the app I get:

  • general on/off
  • fan speed
  • countdown
  • light on/off
  • color
  • brightness

These items I have added.

This config might work for more devices, as the device is listed as an alinea, but the unit I have in my kitchen is an Eva.

Here is the info I pulled from the dev system to figure out:
Thought it might help review.
Let me know if anything is still missing or incorrect.

{
"result": [
{
"active_time": 1769885705,
"bind_space_id": "XXXXXXXXXXXXXXXXXXXX",
"category": "yyj",
"create_time": 1761595851,
"custom_name": "",
"icon": "smart/icon/ay1557826918513Qbvsz/f71cab2ccb9da24499679262ac581d2a.png",
"id": "XXXXXXXXXXXXXXXXXXXX",
"ip": "XXXXXXXXXXXXXXXXXXXX",
"is_online": true,
"lat": "0",
"local_key": "XXXXXXXXXXXXXXXXXXXX",
"lon": "0",
"model": "FJ6",
"name": "Alinea Smart",
"product_id": "zggqz0s1atd9qce4",
"product_name": "Klarstein Alinea Smart",
"sub": false,
"time_zone": "+01:00",
"update_time": 1769885707,
"uuid": "9299314c3a86927a"
}
],
"success": true,
"t": XXXXXXXXXXXXXXXXXXXX,
"tid": "XXXXXXXXXXXXXXXXXXXX"
}

{
"result": {
"properties": [
{
"code": "switch",
"custom_name": "",
"dp_id": 1,
"time": 1769885784974,
"type": "bool",
"value": false
},
{
"code": "light",
"custom_name": "",
"dp_id": 4,
"time": 1769885784995,
"type": "bool",
"value": false
},
{
"code": "fan_speed_enum",
"custom_name": "",
"dp_id": 10,
"time": 1769885784978,
"type": "enum",
"value": "off"
},
{
"code": "total_runtime",
"custom_name": "",
"dp_id": 12,
"time": 1769885706552,
"type": "value",
"value": 19
},
{
"code": "countdown",
"custom_name": "",
"dp_id": 13,
"time": 1769885785070,
"type": "value",
"value": 0
},
{
"code": "RGB",
"custom_name": "",
"dp_id": 101,
"time": 1769885708855,
"type": "value",
"value": 0
},
{
"code": "colour",
"custom_name": "",
"dp_id": 102,
"time": 1769885785076,
"type": "value",
"value": 0
},
{
"code": "luminance",
"custom_name": "",
"dp_id": 103,
"time": 1769885706540,
"type": "value",
"value": 3
}
]
},
"success": true,
"t": XXXXXXXXXXXXXXXXXXXX,
"tid": "XXXXXXXXXXXXXXXXXXXX"
}

{
"result": {
"category": "yyj",
"functions": [
{
"code": "switch",
"desc": "{}",
"name": "开关",
"type": "Boolean",
"values": "{}"
},
{
"code": "light",
"desc": "{}",
"name": "灯光",
"type": "Boolean",
"values": "{}"
},
{
"code": "fan_speed_enum",
"desc": "{"range":["off","low","middle","high","strong"]}",
"name": "风速",
"type": "Enum",
"values": "{"range":["off","low","middle","high","strong"]}"
},
{
"code": "countdown",
"desc": "{"unit":"min","min":0,"max":100,"scale":0,"step":1}",
"name": "倒计时",
"type": "Integer",
"values": "{"unit":"min","min":0,"max":100,"scale":0,"step":1}"
}
],
"status": [
{
"code": "switch",
"name": "开关",
"type": "Boolean",
"values": "{}"
},
{
"code": "light",
"name": "灯光",
"type": "Boolean",
"values": "{}"
},
{
"code": "fan_speed_enum",
"name": "风速",
"type": "Enum",
"values": "{"range":["off","low","middle","high","strong"]}"
},
{
"code": "total_runtime",
"name": "累计工作时间",
"type": "Integer",
"values": "{"unit":"hour","min":0,"max":48,"scale":0,"step":1}"
},
{
"code": "countdown",
"name": "倒计时",
"type": "Integer",
"values": "{"unit":"min","min":0,"max":100,"scale":0,"step":1}"
}
]
},
"success": true,
"t": XXXXXXXXXXXXXXXXXXXX,
"tid": "XXXXXXXXXXXXXXXXXXXX"
}

{
"result": {
"category": "yyj",
"functions": [
{
"code": "switch",
"desc": "switch",
"name": "switch",
"type": "Boolean",
"values": "{}"
},
{
"code": "light",
"desc": "light",
"name": "light",
"type": "Boolean",
"values": "{}"
},
{
"code": "fan_speed_enum",
"desc": "fan speed enum",
"name": "fan speed enum",
"type": "Enum",
"values": "{"range":["off","low","middle","high","strong"]}"
},
{
"code": "countdown",
"desc": "countdown",
"name": "countdown",
"type": "Integer",
"values": "{"unit":"min","min":0,"max":100,"scale":0,"step":1}"
}
]
},
"success": true,
"t": XXXXXXXXXXXXXXXXXXXX,
"tid": "XXXXXXXXXXXXXXXXXXXX"
}

@github-project-automation github-project-automation bot moved this to 👀 In review in Tuya Local Jan 31, 2026
@13r1ckz 13r1ckz force-pushed the add_Klarstein_Alinea_Smart branch 2 times, most recently from 95c4a81 to ad7bbed Compare February 1, 2026 17:48
@13r1ckz 13r1ckz force-pushed the add_Klarstein_Alinea_Smart branch from 62217f7 to 92b05e9 Compare February 2, 2026 20:59
@13r1ckz 13r1ckz marked this pull request as draft February 2, 2026 21:05
@13r1ckz 13r1ckz force-pushed the add_Klarstein_Alinea_Smart branch from 58f9de1 to 92b05e9 Compare February 3, 2026 20:28
@13r1ckz
Copy link
Author

13r1ckz commented Feb 3, 2026

Sorry for all the GitHub actions. I'm not familiar with it. I tried to mark it as a draft to avoid it and run it on the fork, but this does not seem to help.
It should be okay now as localy i only have the "The repository does not have issues enabled" issue. But looking at it i dont need to fix this on the fork as i am not planning to get the fork on hacs.

@13r1ckz 13r1ckz marked this pull request as ready for review February 3, 2026 21:41
@make-all make-all added the needs rework Rework required before merge label Feb 5, 2026
Copy link
Owner

@make-all make-all left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this device is a fan, then it should be mentioned in the filename so users can recognise the device when it appears as a possible match.

@@ -0,0 +1,50 @@
name: Klarstein Alinea Smart
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Top level name should be generic in case other products match the same config

products:
- id: zggqz0s1atd9qce4
manufacturer: Klarstein
model: FJ6
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alinea should be included in the model

min: 1
max: 3
- entity: fan
name: fan_speed_enum
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not a suitable name for an entity, but since there is just one fan entity, it does not need a name

dps:
- id: 10
type: string
name: preset_mode
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

preset mode requires a mapping, otherwise there is no way for HA to know which preset modes are supported

type: string
name: preset_mode
- entity: number
name: Countdown
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use translation_key: timer instead of this name.
Usually a timer should also be marked category: config, as they are not particularly interesting, as more advanced automation is available through HA.
Normally a timer should also be marked as class: duration and the unit specified (h, min, s)

manufacturer: Klarstein
model: FJ6
entities:
- entity: switch
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should probably be attached to the fan

- id: 102
type: integer
name: effect
range:
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

effect requires discrete values, and they should probably be named. But if this is selecting a color temperature, or color, then either color_temp or named_color should be used instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs rework Rework required before merge

Projects

Status: 👀 In review

Development

Successfully merging this pull request may close these issues.

2 participants