Thanks for the full DP Table. Use the Generic Tuya Device driver rather than the Fan driver — I ran your data points through the Fan driver’s auto-detection and it mismaps them.
pair the unit only once. Tuya firmware accepts a single local connection, so adding it twice makes the two entries fight over that one slot.
Add it as Generic Tuya Device, paste this into DP Mapping (JSON) in the advanced settings, then restart the app:
[
{"dp":1,"cap":"onoff","label":"Ventilator","settable":true},
{"dp":2,"cap":"generic_picker_1","label":"Mode","settable":true,"options":"ON,OFF,TIMER,AUTO,ALARM"},
{"dp":8,"cap":"measure_humidity","label":"Humidity","settable":false,"scale":1},
{"dp":9,"cap":"measure_temperature","label":"Temperature","settable":false,"scale":1},
{"dp":102,"cap":"generic_number_1","label":"Fan speed","settable":true,"min":0,"max":10,"step":1},
{"dp":103,"cap":"generic_sensor_1","label":"Fan speed (actual)","settable":false},
{"dp":104,"cap":"generic_number_2","label":"Timer","settable":true,"min":0,"max":36000,"step":60,"unit":"s"},
{"dp":101,"cap":"generic_picker_2","label":"Backlight","settable":true,"options":"0,1,2,3,4"},
{"dp":105,"cap":"generic_picker_3","label":"Alarm code","settable":false,"options":"0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16"},
{"dp":114,"cap":"generic_switch_1","label":"Panel lock","settable":true,"readMap":{"0":false,"1":true},"writeMap":{"false":"0","true":"1"}},
{"dp":116,"cap":"generic_switch_2","label":"High-temp alarm","settable":true,"readMap":{"0":false,"1":true},"writeMap":{"false":"0","true":"1"}},
{"dp":117,"cap":"generic_switch_3","label":"High-humidity alarm","settable":true,"readMap":{"0":false,"1":true},"writeMap":{"false":"0","true":"1"}},
{"dp":115,"cap":"generic_switch_4","label":"Unit is Celsius","settable":true,"readMap":{"0":false,"1":true},"writeMap":{"false":"0","true":"1"}}
]
The eight thresholds (DP 106–113) and the remaining alarm toggles (DP 118–123) don’t fit — the driver has two numeric sliders and four switches and this uses them all. Those are set-once values, so I’d configure them in the Tuya app.
Let me know if it works