diff --git a/tasmota/i18n.h b/tasmota/i18n.h index f2ca5ac65..a21734ae9 100644 --- a/tasmota/i18n.h +++ b/tasmota/i18n.h @@ -57,6 +57,7 @@ #define D_JSON_DNSSERVER "DNSServer" #define D_JSON_DONE "Done" #define D_JSON_DOWNTIME "Downtime" +#define D_JSON_EC "EC" #define D_JSON_ECO2 "eCO2" #define D_JSON_EMPTY "Empty" #define D_JSON_ENDDST "EndDST" // End Daylight Savings Time @@ -773,6 +774,7 @@ const char HTTP_SNS_POWER[] PROGMEM = "{s}" D_POWERUSAGE "{ const char HTTP_SNS_ENERGY_TOTAL[] PROGMEM = "{s}" D_ENERGY_TOTAL "{m}%s " D_UNIT_KILOWATTHOUR "{e}"; const char HTTP_SNS_PH[] PROGMEM = "{s}%s " D_PH "{m}%s " "{e}"; const char HTTP_SNS_ORP[] PROGMEM = "{s}%s " D_ORP "{m}%s " D_UNIT_MILLIVOLT "{e}"; +const char HTTP_SNS_EC[] PROGMEM = "{s}%s " D_EC "{m}%s " D_UNIT_MICROSIEMENS_PER_CM "{e}"; const char S_MAIN_MENU[] PROGMEM = D_MAIN_MENU; const char S_CONFIGURATION[] PROGMEM = D_CONFIGURATION; diff --git a/tasmota/language/bg_BG.h b/tasmota/language/bg_BG.h index 7e54d9435..59663bfa2 100644 --- a/tasmota/language/bg_BG.h +++ b/tasmota/language/bg_BG.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS Сървър" #define D_DONE "Изпълнено" #define D_DST_TIME "Лятно време" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Емулация" #define D_ENABLED "Разрешен" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/cs_CZ.h b/tasmota/language/cs_CZ.h index 62e3e04dd..ca1efaf6b 100644 --- a/tasmota/language/cs_CZ.h +++ b/tasmota/language/cs_CZ.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Server DNS" #define D_DONE "Provedeno" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulace" #define D_ENABLED "Otevřený" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/de_DE.h b/tasmota/language/de_DE.h index 248e0984b..f7d17cced 100644 --- a/tasmota/language/de_DE.h +++ b/tasmota/language/de_DE.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS-Server" #define D_DONE "erledigt" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulation" #define D_ENABLED "aktiviert" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/el_GR.h b/tasmota/language/el_GR.h index 9e5c3d5e2..e516c5348 100644 --- a/tasmota/language/el_GR.h +++ b/tasmota/language/el_GR.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Διακομιστής DNS" #define D_DONE "Ολοκληρώθηκε" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Εξομoίωση" #define D_ENABLED "Ενεργό" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/en_GB.h b/tasmota/language/en_GB.h index e15b03ba2..bf78441af 100644 --- a/tasmota/language/en_GB.h +++ b/tasmota/language/en_GB.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS Server" #define D_DONE "Done" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulation" #define D_ENABLED "Enabled" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/es_ES.h b/tasmota/language/es_ES.h index 54673f584..3d9fe8472 100644 --- a/tasmota/language/es_ES.h +++ b/tasmota/language/es_ES.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Servidor DNS" #define D_DONE "Listo" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulación" #define D_ENABLED "Habilitado" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/fr_FR.h b/tasmota/language/fr_FR.h index 62caf9a85..0ec56b863 100644 --- a/tasmota/language/fr_FR.h +++ b/tasmota/language/fr_FR.h @@ -82,6 +82,7 @@ #define D_DNS_SERVER "Serveur DNS" #define D_DONE "Terminé" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Émulation" #define D_ENABLED "Activé" @@ -743,6 +744,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/he_HE.h b/tasmota/language/he_HE.h index a7723edcb..d4a4a9f4d 100644 --- a/tasmota/language/he_HE.h +++ b/tasmota/language/he_HE.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS שרת" #define D_DONE "סיים" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "הדמיה" #define D_ENABLED "מאופשר" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/hu_HU.h b/tasmota/language/hu_HU.h index affa62c19..a32f4ea24 100644 --- a/tasmota/language/hu_HU.h +++ b/tasmota/language/hu_HU.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS szerver" #define D_DONE "Kész" #define D_DST_TIME "nyári idő" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emuláció" #define D_ENABLED "Engedélyezve" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/it_IT.h b/tasmota/language/it_IT.h index f074a67e2..d169e7ae0 100644 --- a/tasmota/language/it_IT.h +++ b/tasmota/language/it_IT.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Server DNS" #define D_DONE "Completato" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Tipo emulazione" #define D_ENABLED "Abilitato" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/ko_KO.h b/tasmota/language/ko_KO.h index 61f2caee7..08eddb3fa 100644 --- a/tasmota/language/ko_KO.h +++ b/tasmota/language/ko_KO.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS 서버" #define D_DONE "완료" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "에뮬레이션" #define D_ENABLED "사용" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "마이크로미터" #define D_UNIT_MICROSECOND "마이크로초" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/nl_NL.h b/tasmota/language/nl_NL.h index 19287551b..9ce3012fa 100644 --- a/tasmota/language/nl_NL.h +++ b/tasmota/language/nl_NL.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS Server" #define D_DONE "Klaar" #define D_DST_TIME "ZT" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulatie" #define D_ENABLED "Geactiveerd" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/pl_PL.h b/tasmota/language/pl_PL.h index f785a31ff..2f5e6b72e 100644 --- a/tasmota/language/pl_PL.h +++ b/tasmota/language/pl_PL.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Serwer DNS" #define D_DONE "Wykonane" #define D_DST_TIME "Czas DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulacja" #define D_ENABLED "Załączony" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/pt_BR.h b/tasmota/language/pt_BR.h index 634199ba3..f1f900acf 100644 --- a/tasmota/language/pt_BR.h +++ b/tasmota/language/pt_BR.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Servidor DNS" #define D_DONE "Concluído" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulação" #define D_ENABLED "Habilitado" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/pt_PT.h b/tasmota/language/pt_PT.h index 49835816e..94daa7603 100644 --- a/tasmota/language/pt_PT.h +++ b/tasmota/language/pt_PT.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Servidor DNS" #define D_DONE "Concluído" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulação" #define D_ENABLED "Habilitado" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/ro_RO.h b/tasmota/language/ro_RO.h index b0ace2dbd..432e66877 100644 --- a/tasmota/language/ro_RO.h +++ b/tasmota/language/ro_RO.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Server DNS" #define D_DONE "Terminat" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulație" #define D_ENABLED "Activat" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/ru_RU.h b/tasmota/language/ru_RU.h index 2340710e9..83292385c 100644 --- a/tasmota/language/ru_RU.h +++ b/tasmota/language/ru_RU.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS Сервер" #define D_DONE "Выполнено" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Эмуляция" #define D_ENABLED "Активно" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "мкг/м³" #define D_UNIT_MICROMETER "мкм" #define D_UNIT_MICROSECOND "мкс" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "мА" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "мм рт.ст." diff --git a/tasmota/language/sk_SK.h b/tasmota/language/sk_SK.h index 140214a56..7e8df3c03 100644 --- a/tasmota/language/sk_SK.h +++ b/tasmota/language/sk_SK.h @@ -87,6 +87,7 @@ #define D_DNS_SERVER "Server DNS" #define D_DONE "Hotovo" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulácia" #define D_ENABLED "Otvorený" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/sv_SE.h b/tasmota/language/sv_SE.h index 5edc4cc35..58283b3d5 100644 --- a/tasmota/language/sv_SE.h +++ b/tasmota/language/sv_SE.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS-server" #define D_DONE "Gjort" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emulation" #define D_ENABLED "Aktiverad" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/tr_TR.h b/tasmota/language/tr_TR.h index b6d0917fe..37564aa84 100644 --- a/tasmota/language/tr_TR.h +++ b/tasmota/language/tr_TR.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS Sunucu" #define D_DONE "Tamam" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Emülasyon" #define D_ENABLED "Etkin" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/uk_UA.h b/tasmota/language/uk_UA.h index 7e38ad2ba..b926afada 100644 --- a/tasmota/language/uk_UA.h +++ b/tasmota/language/uk_UA.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Сервер DNS" #define D_DONE "Виконано" #define D_DST_TIME "Літній час" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "Емуляція" #define D_ENABLED "Увімкнено" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µг/м³" #define D_UNIT_MICROMETER "µм" #define D_UNIT_MICROSECOND "µС" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "мА" #define D_UNIT_MILLIMETER "мм" #define D_UNIT_MILLIMETER_MERCURY "ммHg" diff --git a/tasmota/language/vi_VN.h b/tasmota/language/vi_VN.h index cf32f7194..eee00907c 100644 --- a/tasmota/language/vi_VN.h +++ b/tasmota/language/vi_VN.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "Máy chủ DNS" #define D_DONE "Hoàn thành" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO2" #define D_EMULATION "Mô phỏng" #define D_ENABLED "Kích hoạt" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m³" #define D_UNIT_MICROMETER "µm" #define D_UNIT_MICROSECOND "µs" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "mA" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/language/zh_CN.h b/tasmota/language/zh_CN.h index 805422779..9a232796a 100644 --- a/tasmota/language/zh_CN.h +++ b/tasmota/language/zh_CN.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS服务器" #define D_DONE "完成" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "设备模拟" #define D_ENABLED "启用" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "微克/立方米" #define D_UNIT_MICROMETER "微米" #define D_UNIT_MICROSECOND "微秒" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "毫安" #define D_UNIT_MILLIMETER "毫米" #define D_UNIT_MILLIMETER_MERCURY "毫米汞柱" diff --git a/tasmota/language/zh_TW.h b/tasmota/language/zh_TW.h index d3fa4767b..fb93ef634 100644 --- a/tasmota/language/zh_TW.h +++ b/tasmota/language/zh_TW.h @@ -86,6 +86,7 @@ #define D_DNS_SERVER "DNS伺服器" #define D_DONE "完成" #define D_DST_TIME "DST" +#define D_EC "EC" #define D_ECO2 "eCO₂" #define D_EMULATION "模擬" #define D_ENABLED "已啟用" @@ -747,6 +748,7 @@ #define D_UNIT_MICROGRAM_PER_CUBIC_METER "微克/立方公尺" #define D_UNIT_MICROMETER "微米" #define D_UNIT_MICROSECOND "微秒" +#define D_UNIT_MICROSIEMENS_PER_CM "µS/cm" #define D_UNIT_MILLIAMPERE "毫安培" #define D_UNIT_MILLIMETER "mm" #define D_UNIT_MILLIMETER_MERCURY "mmHg" diff --git a/tasmota/my_user_config.h b/tasmota/my_user_config.h index 28c075d9f..50414dba7 100644 --- a/tasmota/my_user_config.h +++ b/tasmota/my_user_config.h @@ -566,6 +566,7 @@ // #define USE_EZOORP // [I2cDriver55] Enable support for EZO's ORP sensor (+0k3 code) - Shared EZO code required for any EZO device (+1k2 code) // #define USE_EZORTD // [I2cDriver55] Enable support for EZO's RTD sensor (+0k2 code) - Shared EZO code required for any EZO device (+1k2 code) // #define USE_EZOHUM // [I2cDriver55] Enable support for EZO's HUM sensor (+0k3 code) - Shared EZO code required for any EZO device (+1k2 code) +// #define USE_EZOEC // [I2cDriver55] Enable support for EZO's EC sensor (+0k3 code) - Shared EZO code required for any EZO device (+1k2 code) // #define USE_DISPLAY // Add I2C Display Support (+2k code) #define USE_DISPLAY_MODES1TO5 // Enable display mode 1 to 5 in addition to mode 0 diff --git a/tasmota/xsns_78_ezo.ino b/tasmota/xsns_78_ezo.ino index 60d13f971..1507a36c4 100644 --- a/tasmota/xsns_78_ezo.ino +++ b/tasmota/xsns_78_ezo.ino @@ -17,7 +17,7 @@ along with this program. If not, see . */ #ifdef USE_I2C -#if defined(USE_EZOPH) || defined(USE_EZOORP) || defined(USE_EZORTD) || defined(USE_EZOHUM) +#if defined(USE_EZOPH) || defined(USE_EZOORP) || defined(USE_EZORTD) || defined(USE_EZOHUM) || defined(USE_EZOEC) #define D_EZO_DELAY 300 // Minimum delay for any instruction #define D_EZO_MAX_BUF 40 // Maximum response diff --git a/tasmota/xsns_78_ezoec.ino b/tasmota/xsns_78_ezoec.ino new file mode 100644 index 000000000..8d5a22912 --- /dev/null +++ b/tasmota/xsns_78_ezoec.ino @@ -0,0 +1,56 @@ +/* + xsns_78_ezoph.ino - EZO EC I2C EC sensor support for Tasmota + + Copyright (C) 2020 Christopher Tremblay + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#ifdef USE_I2C +#ifdef USE_EZOEC + +#define EZO_EC_READ_LATENCY 600 + +struct EZOEC : public EZOStruct { + EZOEC(uint32_t addr) : EZOStruct(addr), EC(NAN) {} + + virtual void ProcessMeasurement(void) + { + char data[D_EZO_MAX_BUF]; + + EZOStruct::ProcessMeasurement(data, sizeof(data), EZO_EC_READ_LATENCY); + EC = CharToFloat(data); + } + + virtual void Show(bool json, const char *name) + { + char str[6]; + dtostrfd(EC, 2, str); + + if (json) { + ResponseAppend_P(PSTR(",\"%s\":{\"" D_JSON_EC "\":%s}" ), name, str); + } +#ifdef USE_WEBSERVER + else { + WSContentSend_PD(HTTP_SNS_EC, name, str); +#endif // USE_WEBSERVER + } + } + +private: + float EC; +}; + +#endif // USE_EZOEC +#endif // USE_I2C diff --git a/tasmota/xsns_78_xezo.ino b/tasmota/xsns_78_xezo.ino index b90fcbe0d..659d3efa3 100644 --- a/tasmota/xsns_78_xezo.ino +++ b/tasmota/xsns_78_xezo.ino @@ -18,10 +18,10 @@ */ #ifdef USE_I2C -#if defined(USE_EZOPH) || defined(USE_EZOORP) || defined(USE_EZORTD) || defined(USE_EZOHUM) +#if defined(USE_EZOPH) || defined(USE_EZOORP) || defined(USE_EZORTD) || defined(USE_EZOHUM) || defined(USE_EZOEC) #define XSNS_78 78 -#define XI2C_55 55 // See I2CDEVICES.md +#define XI2C_55 55 // See I2CDEVICES.md #define EZO_ADDR_0 0x61 // First EZO address #define EZO_ADDR_n 16 // Number of ports for use with EZO devices @@ -57,7 +57,9 @@ const char EZO_ORP_NAME[] PROGMEM = "ORP"; #ifdef USE_EZOPH const char EZO_PH_NAME[] PROGMEM = "pH"; #endif -//const char EZO_EC_NAME[] PROGMEM = "EC"; +#ifdef USE_EZOEC +const char EZO_EC_NAME[] PROGMEM = "EC"; +#endif #ifdef USE_EZORTD const char EZO_RTD_NAME[] PROGMEM = "RTD"; #endif @@ -86,7 +88,12 @@ const char *const EZOSupport[EZO_ADDR_n] PROGMEM = { EZO_EMPTY, #endif +#ifdef USE_EZOEC + EZO_EC_NAME, +#else EZO_EMPTY, +#endif + EZO_EMPTY, #ifdef USE_EZORTD @@ -248,6 +255,11 @@ private: sensor[count] = new EZOpH(addr); break; #endif +#ifdef USE_EZOEC + case EZO_EC: + sensor[count] = new EZOEC(addr); + break; +#endif #ifdef USE_EZORTD case EZO_RTD: sensor[count] = new EZORTD(addr);