Skip to content

feat(devices): Add ETA Noble Smart humidifier#4656

Open
jiriks74 wants to merge 5 commits intomake-all:mainfrom
jiriks74:eta-smart-noble
Open

feat(devices): Add ETA Noble Smart humidifier#4656
jiriks74 wants to merge 5 commits intomake-all:mainfrom
jiriks74:eta-smart-noble

Conversation

@jiriks74
Copy link
Copy Markdown

@jiriks74 jiriks74 commented Mar 8, 2026

Adds a configuration, translations and icons for the ETA Noble Smart humidifier.

Translations were generated by LLM with the device manual as a reference.

The base configuration was generated from API explore output but heavily modified to use better names (eg. the manual mode from device manual was renamed to continuous and auto-humidity renamed to manual), reporting fault codes properly and correcting entity categories.

@jiriks74
Copy link
Copy Markdown
Author

jiriks74 commented Mar 8, 2026

I see that this needs cleaning up however I am not familiar enough with the project to do so.

I can't spend much more time on this right now so it will take time to figure out how to clean this up.

If you'd be willing to look into the translation/icon issues it would be very appreciated.

@make-all make-all moved this from 👀 In review to 🏗 Stalled in Tuya Local Mar 8, 2026
@jiriks74
Copy link
Copy Markdown
Author

jiriks74 commented Mar 8, 2026

So far everything seems to be working. I've tested the device the whole afternoon and all the functionality is there (only the overflow error state hasn't been tested).

I'll continue monitoring/testing the condfig further but everything (apart from the translation/icon CI issues) works fine.

@jiriks74 jiriks74 force-pushed the eta-smart-noble branch 3 times, most recently from 87ee6e5 to 58f797f Compare March 9, 2026 08:50
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This file was full of special characters at EOL that were removed (^M in NeoVim).

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Most likely there was one extra ^M in there that causes git to treat the file as binary instead of text, I suspect one of my linting tools has a bug that is adding these because they pop up from time to time. I will fix the issue separately, so you can rebase your branch and the merge conflict should go away.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

There don't seem to be any issues like that currently in that file, but it seems to be treated as binary by git, as my Linux VM has it checked out with CRLF line ends while the other translation files have LF line ends. This will cause merge conflicts, as merging of binary files is much more complex than text files.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

I agree, that the character should be caused by CRLF instead of LF.

For editors the fix is to use editorconfig.

It has other benefits like allowing you to select tabs/spaces/number of spaces for each file/filetype specifically, etc.

I'm not sure whether cli tooling will repect this bu it would most likely help other contributors since I many changes will be done in an editor.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

The issue is not editors. Git by default normalizes line ends in text files, forcing LF line ends on a platform that does not use them will result in more files being accidentally marked as binary.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Ok, so do you want me to drop the .editorconfig or is it something you'd like to keep?

@make-all make-all moved this from 🏗 Stalled to 👀 In review in Tuya Local Mar 9, 2026
"plasma": {
"name": "Плазма"
},
"night_mode": {
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

You can use sleep instead to avoid introducing a new translation that is the same meaning

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This was used in an attempt to be close to what the manual states while being well descriptive.

The manual reports it as Night mode or Noční režim in Czech which I'd consider quite a stretch from (the) Sleep or Spánek in Czech.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Maybe the Czech translation could use some work if the current "Sleep" does not mean the same as night mode, as that is the meaning that many other devices give it (reducing lighting brightness and noise to minimum)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

If that was the goal of the translation than something like Režím Spánku (Sleep Mode) would be more appropriate since Spánek is literally the noun Sleep.

Režim Spánku => the device is in a sleep mode - while this still is a bit confusing as sleep mode might indicate that the device is partially off which allows to start up quicker (like a laptop) it is much metter than just (the) sleep

Spánek => the device is, most likely, sleeping

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Do you want to have the Sleep translation changed to Sleep mode for all languages so that it's consistent? Or should I change only the Czech one?

@make-all make-all moved this from 👀 In review to 🏗 Stalled in Tuya Local Mar 9, 2026
@make-all make-all added needs rework Rework required before merge labels Mar 11, 2026
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: 🏗 Stalled

Development

Successfully merging this pull request may close these issues.

2 participants