mirror of https://github.com/arendst/Tasmota.git
Release 6.7
This commit is contained in:
parent
6ce5b928a1
commit
a589613831
|
@ -28,7 +28,7 @@
|
|||
* Use online command StateText to translate ON, OFF, HOLD and TOGGLE.
|
||||
* Use online command Prefix to translate cmnd, stat and tele.
|
||||
*
|
||||
* Updated until v6.6.0.14
|
||||
* Updated until v6.6.0.21
|
||||
\*********************************************************************/
|
||||
|
||||
//#define LANGUAGE_MODULE_NAME // Enable to display "Module Generic" (ie Spanish), Disable to display "Generic Module" (ie English)
|
||||
|
@ -157,7 +157,7 @@
|
|||
#define D_TO "zu"
|
||||
#define D_TOGGLE "An/Aus"
|
||||
#define D_TOPIC "topic"
|
||||
#define D_TOTAL_USAGE "Total Usage"
|
||||
#define D_TOTAL_USAGE "Gesamtverbrauch"
|
||||
#define D_TRANSMIT "Übertragen"
|
||||
#define D_TRUE "wahr"
|
||||
#define D_TVOC "TVOC"
|
||||
|
@ -320,11 +320,11 @@
|
|||
#define D_MAC_ADDRESS "MAC-Adresse"
|
||||
#define D_MQTT_HOST "MQTT Host"
|
||||
#define D_MQTT_PORT "MQTT Port"
|
||||
#define D_MQTT_CLIENT "MQTT client"
|
||||
#define D_MQTT_USER "MQTT-Benutzer"
|
||||
#define D_MQTT_TOPIC "MQTT topic"
|
||||
#define D_MQTT_GROUP_TOPIC "MQTT group topic"
|
||||
#define D_MQTT_FULL_TOPIC "MQTT full topic"
|
||||
#define D_MQTT_CLIENT "MQTT Client"
|
||||
#define D_MQTT_USER "MQTT Benutzer"
|
||||
#define D_MQTT_TOPIC "MQTT Topic"
|
||||
#define D_MQTT_GROUP_TOPIC "MQTT Group Topic"
|
||||
#define D_MQTT_FULL_TOPIC "MQTT Full Topic"
|
||||
#define D_MDNS_DISCOVERY "mDNS-Ermittlung"
|
||||
#define D_MDNS_ADVERTISE "mDNS-Bekanntmachung"
|
||||
#define D_ESP_CHIP_ID "ESP Chip ID"
|
||||
|
@ -335,15 +335,15 @@
|
|||
#define D_UPGRADE_BY_WEBSERVER "Update über Web-Server"
|
||||
#define D_OTA_URL "OTA-URL"
|
||||
#define D_START_UPGRADE "Update starten"
|
||||
#define D_UPGRADE_BY_FILE_UPLOAD "Update-Datei hochladen"
|
||||
#define D_UPGRADE_BY_FILE_UPLOAD "Update Datei hochladen"
|
||||
#define D_UPLOAD_STARTED "Upload gestartet"
|
||||
#define D_UPGRADE_STARTED "Update gestartet"
|
||||
#define D_UPLOAD_DONE "Upload abgeschlossen"
|
||||
#define D_UPLOAD_ERR_1 "keine Datei ausgewählt"
|
||||
#define D_UPLOAD_ERR_2 "ungenügend Speicherplatz"
|
||||
#define D_UPLOAD_ERR_3 "magic byte ist nicht 0xE9"
|
||||
#define D_UPLOAD_ERR_4 "Flash-Größe des Programmes ist größer als der reale Flashspeicher"
|
||||
#define D_UPLOAD_ERR_5 "Upload-buffer-Vergleich weicht ab"
|
||||
#define D_UPLOAD_ERR_1 "Keine Datei ausgewählt"
|
||||
#define D_UPLOAD_ERR_2 "Ungenügend Speicherplatz"
|
||||
#define D_UPLOAD_ERR_3 "Magic Byte ist nicht 0xE9"
|
||||
#define D_UPLOAD_ERR_4 "Datei überschreitet vorhdn. Flashspeicher"
|
||||
#define D_UPLOAD_ERR_5 "Upload Buffer Vergleich weicht ab"
|
||||
#define D_UPLOAD_ERR_6 "Upload fehlgeschlagen. Aktiviere logging 3"
|
||||
#define D_UPLOAD_ERR_7 "Upload abgebrochen"
|
||||
#define D_UPLOAD_ERR_8 "Datei ungültig"
|
||||
|
@ -641,7 +641,7 @@
|
|||
#define D_UNIT_INCREMENTS "inc"
|
||||
#define D_UNIT_KILOGRAM "kg"
|
||||
#define D_UNIT_KILOMETER_PER_HOUR "km/h"
|
||||
#define D_UNIT_KILOOHM "kOhm"
|
||||
#define D_UNIT_KILOOHM "kΩ"
|
||||
#define D_UNIT_KILOWATTHOUR "kWh"
|
||||
#define D_UNIT_LUX "lx"
|
||||
#define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m3"
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
* Use online command StateText to translate ON, OFF, HOLD and TOGGLE.
|
||||
* Use online command Prefix to translate cmnd, stat and tele.
|
||||
*
|
||||
* Updated until v6.0.0a
|
||||
* Updated until v6.7.0
|
||||
\*********************************************************************/
|
||||
|
||||
//#define LANGUAGE_MODULE_NAME // Enable to display "Module Generic" (ie Spanish), Disable to display "Generic Module" (ie English)
|
||||
|
@ -93,7 +93,7 @@
|
|||
#define D_FALLBACK_TOPIC "Fallback Topic"
|
||||
#define D_FALSE "Onwaar"
|
||||
#define D_FILE "Bestand"
|
||||
#define D_FLOW_RATE "Flow rate"
|
||||
#define D_FLOW_RATE "Debiet"
|
||||
#define D_FREE_MEMORY "Vrij geheugen"
|
||||
#define D_FREQUENCY "Frequentie"
|
||||
#define D_GAS "Gas"
|
||||
|
@ -149,7 +149,7 @@
|
|||
#define D_STOP "Stop"
|
||||
#define D_SUBNET_MASK "Subnet Masker"
|
||||
#define D_SUBSCRIBE_TO "Abonneer op"
|
||||
#define D_UNSUBSCRIBE_FROM "Unsubscribe from"
|
||||
#define D_UNSUBSCRIBE_FROM "Uitschrijven van"
|
||||
#define D_SUCCESSFUL "Gelukt"
|
||||
#define D_SUNRISE "Zonsopgang"
|
||||
#define D_SUNSET "Zonsondergang"
|
||||
|
@ -157,7 +157,7 @@
|
|||
#define D_TO "naar"
|
||||
#define D_TOGGLE "Toggle" // Wissel, Tuimel
|
||||
#define D_TOPIC "Topic" // Onderwerp
|
||||
#define D_TOTAL_USAGE "Total Usage"
|
||||
#define D_TOTAL_USAGE "Totaal verbruik"
|
||||
#define D_TRANSMIT "Verzend"
|
||||
#define D_TRUE "Waar"
|
||||
#define D_TVOC "TVOC"
|
||||
|
@ -167,15 +167,15 @@
|
|||
#define D_USER "Gebruiker"
|
||||
#define D_UTC_TIME "UTC"
|
||||
#define D_UV_INDEX "UV-index"
|
||||
#define D_UV_INDEX_1 "Low"
|
||||
#define D_UV_INDEX_2 "Mid"
|
||||
#define D_UV_INDEX_3 "High"
|
||||
#define D_UV_INDEX_4 "Danger"
|
||||
#define D_UV_INDEX_5 "BurnL1/2"
|
||||
#define D_UV_INDEX_6 "BurnL3"
|
||||
#define D_UV_INDEX_7 "OoR"
|
||||
#define D_UV_INDEX_1 "Laag"
|
||||
#define D_UV_INDEX_2 "Gemiddeld"
|
||||
#define D_UV_INDEX_3 "Hoog"
|
||||
#define D_UV_INDEX_4 "Intens"
|
||||
#define D_UV_INDEX_5 "Gevaarlijk"
|
||||
#define D_UV_INDEX_6 "Schadelijk"
|
||||
#define D_UV_INDEX_7 "Uitzonderlijk"
|
||||
#define D_UV_LEVEL "UV niveau"
|
||||
#define D_UV_POWER "UV Power"
|
||||
#define D_UV_POWER "UV intensiteit"
|
||||
#define D_VERSION "Versie"
|
||||
#define D_VOLTAGE "Spanning"
|
||||
#define D_WEIGHT "Gewicht"
|
||||
|
@ -227,7 +227,7 @@
|
|||
#define D_WITH_IP_ADDRESS "met IP adres"
|
||||
#define D_WEBSERVER_STOPPED "Webserver gestopt"
|
||||
#define D_FILE_NOT_FOUND "Bestand niet gevonden"
|
||||
#define D_REDIRECTED "Redirected to captive portal"
|
||||
#define D_REDIRECTED "Omleiding naar captive portal"
|
||||
#define D_WIFIMANAGER_SET_ACCESSPOINT_AND_STATION "Wifimanager start AccessPoint en hou Station"
|
||||
#define D_WIFIMANAGER_SET_ACCESSPOINT "Wifimanager start AccessPoint"
|
||||
#define D_TRYING_TO_CONNECT "Apparaat probeert te verbinden met netwerk"
|
||||
|
@ -284,7 +284,7 @@
|
|||
|
||||
#define D_LOGGING_PARAMETERS "Logging parameters"
|
||||
#define D_SERIAL_LOG_LEVEL "Serieel log niveau"
|
||||
#define D_MQTT_LOG_LEVEL "Mqtt log level"
|
||||
#define D_MQTT_LOG_LEVEL "Mqtt log niveau"
|
||||
#define D_WEB_LOG_LEVEL "Web log niveau"
|
||||
#define D_SYS_LOG_LEVEL "Syslog niveau"
|
||||
#define D_MORE_DEBUG "Meer debug"
|
||||
|
@ -444,17 +444,17 @@
|
|||
#define D_ENERGY_TOTAL "Verbruik totaal"
|
||||
|
||||
// xdrv_27_shutter.ino
|
||||
#define D_OPEN "Open"
|
||||
#define D_CLOSE "Close"
|
||||
#define D_DOMOTICZ_SHUTTER "Shutter"
|
||||
#define D_OPEN "Openen"
|
||||
#define D_CLOSE "Sluiten"
|
||||
#define D_DOMOTICZ_SHUTTER "Rolluik"
|
||||
|
||||
// xdrv_28_pcf8574.ino
|
||||
#define D_CONFIGURE_PCF8574 "Configure PCF8574"
|
||||
#define D_PCF8574_PARAMETERS "PCF8574 parameters"
|
||||
#define D_INVERT_PORTS "Invert Ports"
|
||||
#define D_DEVICE "Device"
|
||||
#define D_DEVICE_INPUT "Input"
|
||||
#define D_DEVICE_OUTPUT "Output"
|
||||
#define D_CONFIGURE_PCF8574 "Configureer PCF8574"
|
||||
#define D_PCF8574_PARAMETERS "PCF8574 Parameters"
|
||||
#define D_INVERT_PORTS "Inverteer Poorten"
|
||||
#define D_DEVICE "Apparaat"
|
||||
#define D_DEVICE_INPUT "Ingang"
|
||||
#define D_DEVICE_OUTPUT "Uitgang"
|
||||
|
||||
// xsns_05_ds18b20.ino
|
||||
#define D_SENSOR_BUSY "Sensor bezet"
|
||||
|
@ -641,12 +641,12 @@
|
|||
#define D_UNIT_INCREMENTS "inc"
|
||||
#define D_UNIT_KILOGRAM "kg"
|
||||
#define D_UNIT_KILOMETER_PER_HOUR "km/h" // or "km/h"
|
||||
#define D_UNIT_KILOOHM "kOhm"
|
||||
#define D_UNIT_KILOOHM "kΩ"
|
||||
#define D_UNIT_KILOWATTHOUR "kWh"
|
||||
#define D_UNIT_LUX "lx"
|
||||
#define D_UNIT_MICROGRAM_PER_CUBIC_METER "ug/m3"
|
||||
#define D_UNIT_MICROMETER "um"
|
||||
#define D_UNIT_MICROSECOND "us"
|
||||
#define D_UNIT_MICROGRAM_PER_CUBIC_METER "µg/m3"
|
||||
#define D_UNIT_MICROMETER "µm"
|
||||
#define D_UNIT_MICROSECOND "µs"
|
||||
#define D_UNIT_MILLIAMPERE "mA"
|
||||
#define D_UNIT_MILLIMETER "mm"
|
||||
#define D_UNIT_MILLIMETER_MERCURY "mmHg"
|
||||
|
@ -691,37 +691,37 @@
|
|||
#define D_LOG_WIFI "WIF: " // Wifi
|
||||
|
||||
//SDM220
|
||||
#define D_PHASE_ANGLE "Phase Angle"
|
||||
#define D_IMPORT_ACTIVE "Import Active"
|
||||
#define D_EXPORT_ACTIVE "Export Active"
|
||||
#define D_IMPORT_REACTIVE "Import Reactive"
|
||||
#define D_EXPORT_REACTIVE "Export Reactive"
|
||||
#define D_TOTAL_REACTIVE "Total Reactive"
|
||||
#define D_PHASE_ANGLE "Fase hoek"
|
||||
#define D_IMPORT_ACTIVE "Import werkelijk"
|
||||
#define D_EXPORT_ACTIVE "Export werkelijk"
|
||||
#define D_IMPORT_REACTIVE "Import blind"
|
||||
#define D_EXPORT_REACTIVE "Export blind"
|
||||
#define D_TOTAL_REACTIVE "Totaal blind"
|
||||
#define D_UNIT_KWARH "kVArh"
|
||||
#define D_UNIT_ANGLE "Deg"
|
||||
|
||||
//SOLAXX1
|
||||
#define D_PV1_VOLTAGE "PV1 Voltage"
|
||||
#define D_PV1_CURRENT "PV1 Current"
|
||||
#define D_PV1_POWER "PV1 Power"
|
||||
#define D_PV2_VOLTAGE "PV2 Voltage"
|
||||
#define D_PV2_CURRENT "PV2 Current"
|
||||
#define D_PV2_POWER "PV2 Power"
|
||||
#define D_SOLAR_POWER "Solar Power"
|
||||
#define D_INVERTER_POWER "Inverter Power"
|
||||
#define D_PV1_VOLTAGE "PV1 spanning"
|
||||
#define D_PV1_CURRENT "PV1 stroom"
|
||||
#define D_PV1_POWER "PV1 vermogen"
|
||||
#define D_PV2_VOLTAGE "PV2 spanning"
|
||||
#define D_PV2_CURRENT "PV2 stroom"
|
||||
#define D_PV2_POWER "PV2 vermogen"
|
||||
#define D_SOLAR_POWER "Zon vermogen"
|
||||
#define D_INVERTER_POWER "Omvormer vermogen"
|
||||
#define D_STATUS "Status"
|
||||
#define D_WAITING "Waiting"
|
||||
#define D_CHECKING "Checking"
|
||||
#define D_WORKING "Working"
|
||||
#define D_FAILURE "Failure"
|
||||
#define D_SOLAX_ERROR_0 "No Error Code"
|
||||
#define D_SOLAX_ERROR_1 "Grid Lost Fault"
|
||||
#define D_SOLAX_ERROR_2 "Grid Voltage Fault"
|
||||
#define D_SOLAX_ERROR_3 "Grid Frequency Fault"
|
||||
#define D_SOLAX_ERROR_4 "Pv Voltage Fault"
|
||||
#define D_SOLAX_ERROR_5 "Isolation Fault"
|
||||
#define D_SOLAX_ERROR_6 "Over Temperature Fault"
|
||||
#define D_SOLAX_ERROR_7 "Fan Fault"
|
||||
#define D_SOLAX_ERROR_8 "Other Device Fault"
|
||||
#define D_WAITING "Wacht"
|
||||
#define D_CHECKING "Controle"
|
||||
#define D_WORKING "Actief"
|
||||
#define D_FAILURE "Fout"
|
||||
#define D_SOLAX_ERROR_0 "Geen"
|
||||
#define D_SOLAX_ERROR_1 "Netverbinding"
|
||||
#define D_SOLAX_ERROR_2 "Netspanning"
|
||||
#define D_SOLAX_ERROR_3 "Netfrequentie"
|
||||
#define D_SOLAX_ERROR_4 "Pv spanning"
|
||||
#define D_SOLAX_ERROR_5 "Isolatie"
|
||||
#define D_SOLAX_ERROR_6 "Overtemperatuur"
|
||||
#define D_SOLAX_ERROR_7 "Ventilator"
|
||||
#define D_SOLAX_ERROR_8 "Overige"
|
||||
|
||||
#endif // _LANGUAGE_NL_NL_H_
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
#define D_AS "como"
|
||||
#define D_AUTO "AUTO"
|
||||
#define D_BLINK "Piscar"
|
||||
#define D_BLINKOFF "Piscar desligado"
|
||||
#define D_BLINKOFF "Piscar Desligado"
|
||||
#define D_BOOT_COUNT "Contagem de Inicialização"
|
||||
#define D_BRIGHTLIGHT "Brilho"
|
||||
#define D_BSSID "BSSId"
|
||||
|
@ -65,7 +65,7 @@
|
|||
#define D_BY "por" // Write by me
|
||||
#define D_BYTES "Bytes"
|
||||
#define D_CELSIUS "Celsius"
|
||||
#define D_CHANNEL "Channel"
|
||||
#define D_CHANNEL "Canal"
|
||||
#define D_CO2 "Dioxido de Carbono"
|
||||
#define D_CODE "Código" // Button code
|
||||
#define D_COLDLIGHT "Luz Fria"
|
||||
|
@ -78,7 +78,7 @@
|
|||
#define D_DARKLIGHT "Luz Escura"
|
||||
#define D_DEBUG "Depurar"
|
||||
#define D_DISABLED "Disabilitado"
|
||||
#define D_DISTANCE "Distance"
|
||||
#define D_DISTANCE "Distância"
|
||||
#define D_DNS_SERVER "Servidor DNS"
|
||||
#define D_DONE "Concluído"
|
||||
#define D_DST_TIME "DST"
|
||||
|
@ -93,9 +93,9 @@
|
|||
#define D_FALLBACK_TOPIC "Tópico para retornar"
|
||||
#define D_FALSE "Falso"
|
||||
#define D_FILE "Ficheiro"
|
||||
#define D_FLOW_RATE "Flow rate"
|
||||
#define D_FLOW_RATE "Taxa de Fluxo"
|
||||
#define D_FREE_MEMORY "Memoria Livre"
|
||||
#define D_FREQUENCY "Frequency"
|
||||
#define D_FREQUENCY "Frequência"
|
||||
#define D_GAS "Gás"
|
||||
#define D_GATEWAY "Gateway"
|
||||
#define D_GROUP "Grupo"
|
||||
|
@ -106,7 +106,7 @@
|
|||
#define D_IMMEDIATE "Immediato" // Button immediate
|
||||
#define D_INDEX "Indíce"
|
||||
#define D_INFO "Info"
|
||||
#define D_INFRARED "Infrared"
|
||||
#define D_INFRARED "Infravermelho"
|
||||
#define D_INITIALIZED "Inicializado"
|
||||
#define D_IP_ADDRESS "Endereço IP"
|
||||
#define D_LIGHT "Luz"
|
||||
|
@ -125,39 +125,39 @@
|
|||
#define D_PORT "Porta"
|
||||
#define D_POWER_FACTOR "Factor de Potência"
|
||||
#define D_POWERUSAGE "Potência"
|
||||
#define D_POWERUSAGE_ACTIVE "Active Power"
|
||||
#define D_POWERUSAGE_APPARENT "Apparent Power"
|
||||
#define D_POWERUSAGE_REACTIVE "Reactive Power"
|
||||
#define D_POWERUSAGE_ACTIVE "Potência Ativa"
|
||||
#define D_POWERUSAGE_APPARENT "Potência Aparente"
|
||||
#define D_POWERUSAGE_REACTIVE "Potência Reativa"
|
||||
#define D_PRESSURE "Pressão"
|
||||
#define D_PRESSUREATSEALEVEL "Pressão ao nível do Mar"
|
||||
#define D_PROGRAM_FLASH_SIZE "Tamanho do Programa na Flash"
|
||||
#define D_PROGRAM_SIZE "Tamanho do Programa"
|
||||
#define D_PROJECT "Projeto"
|
||||
#define D_RAIN "Rain"
|
||||
#define D_RAIN "Chuva"
|
||||
#define D_RECEIVED "Recebido"
|
||||
#define D_RESTART "Reiniciar"
|
||||
#define D_RESTARTING "A reiniciar"
|
||||
#define D_RESTART_REASON "Razão do reinicio"
|
||||
#define D_RESTORE "Restauro"
|
||||
#define D_RETAINED "Manter"
|
||||
#define D_RULE "Rule"
|
||||
#define D_SAVE "Salvar"
|
||||
#define D_RULE "Regra"
|
||||
#define D_SAVE "Guardar"
|
||||
#define D_SENSOR "Sensor"
|
||||
#define D_SSID "SSId"
|
||||
#define D_START "Início"
|
||||
#define D_STD_TIME "STD"
|
||||
#define D_STOP "Parar"
|
||||
#define D_SUBNET_MASK "Mascara sub rede"
|
||||
#define D_SUBSCRIBE_TO "Subescrever para"
|
||||
#define D_UNSUBSCRIBE_FROM "Unsubscribe from"
|
||||
#define D_SUBSCRIBE_TO "Subscrever"
|
||||
#define D_UNSUBSCRIBE_FROM "Cancelar subscrição de"
|
||||
#define D_SUCCESSFUL "Successo"
|
||||
#define D_SUNRISE "Sunrise"
|
||||
#define D_SUNSET "Sunset"
|
||||
#define D_SUNRISE "Nascer do Sol"
|
||||
#define D_SUNSET "Pôr do Sol"
|
||||
#define D_TEMPERATURE "Temperatura"
|
||||
#define D_TO "para"
|
||||
#define D_TOGGLE "Pressionar"
|
||||
#define D_TOPIC "Tópico"
|
||||
#define D_TOTAL_USAGE "Total Usage"
|
||||
#define D_TOTAL_USAGE "Uso total"
|
||||
#define D_TRANSMIT "Transmitir"
|
||||
#define D_TRUE "Verdadeiro"
|
||||
#define D_TVOC "TVOC"
|
||||
|
@ -167,38 +167,38 @@
|
|||
#define D_USER "Utilizador"
|
||||
#define D_UTC_TIME "UTC"
|
||||
#define D_UV_INDEX "Indíce UV"
|
||||
#define D_UV_INDEX_1 "Low"
|
||||
#define D_UV_INDEX_2 "Mid"
|
||||
#define D_UV_INDEX_3 "High"
|
||||
#define D_UV_INDEX_4 "Danger"
|
||||
#define D_UV_INDEX_5 "BurnL1/2"
|
||||
#define D_UV_INDEX_6 "BurnL3"
|
||||
#define D_UV_INDEX_1 "Baixo"
|
||||
#define D_UV_INDEX_2 "Médio"
|
||||
#define D_UV_INDEX_3 "Elevado"
|
||||
#define D_UV_INDEX_4 "Perigoso"
|
||||
#define D_UV_INDEX_5 "QueimaduraL1/2"
|
||||
#define D_UV_INDEX_6 "QueimaduraL3"
|
||||
#define D_UV_INDEX_7 "OoR"
|
||||
#define D_UV_LEVEL "Nível UV"
|
||||
#define D_UV_POWER "UV Power"
|
||||
#define D_UV_POWER "Poder UV"
|
||||
#define D_VERSION "Versão"
|
||||
#define D_VOLTAGE "Voltagem"
|
||||
#define D_WEIGHT "Weight"
|
||||
#define D_WEIGHT "Peso"
|
||||
#define D_WARMLIGHT "Luz Quente"
|
||||
#define D_WEB_SERVER "servidor WEB"
|
||||
#define D_WEB_SERVER "Servidor WEB"
|
||||
|
||||
// sonoff.ino
|
||||
#define D_WARNING_MINIMAL_VERSION "AVISO esta versão não supporta configurações persistentes"
|
||||
#define D_LEVEL_10 "nível 1-0"
|
||||
#define D_LEVEL_01 "nível 0-1"
|
||||
#define D_SERIAL_LOGGING_DISABLED "Registro em serie desabilitado"
|
||||
#define D_SERIAL_LOGGING_DISABLED "Registro de porta série desabilitado"
|
||||
#define D_SYSLOG_LOGGING_REENABLED "Registro do Syslog reativado"
|
||||
|
||||
#define D_SET_BAUDRATE_TO "Ajuste da velocidade para"
|
||||
#define D_RECEIVED_TOPIC "Topico Recebido"
|
||||
#define D_DATA_SIZE "Tamanho de dados"
|
||||
#define D_DATA_SIZE "Tamanho de Dados"
|
||||
#define D_ANALOG_INPUT "Entrada Analógica"
|
||||
|
||||
// support.ino
|
||||
#define D_OSWATCH "osWatch"
|
||||
#define D_BLOCKED_LOOP "Loop Bloqueado"
|
||||
#define D_WPS_FAILED_WITH_STATUS "WPSconfig Falha de estado"
|
||||
#define D_ACTIVE_FOR_3_MINUTES "ativo por 3 minutes"
|
||||
#define D_WPS_FAILED_WITH_STATUS "WPSconfig FALHOU com estado"
|
||||
#define D_ACTIVE_FOR_3_MINUTES "ativo por 3 minutos"
|
||||
#define D_FAILED_TO_START "Falha ao iníciar"
|
||||
#define D_PATCH_ISSUE_2186 "Questão 2186"
|
||||
#define D_CONNECTING_TO_AP "Ligando ao AP"
|
||||
|
@ -212,17 +212,17 @@
|
|||
#define D_QUERY_DONE "Consulta finalizada. Serviço MQTT não encontrado"
|
||||
#define D_MQTT_SERVICE_FOUND "Serviço MQTT encontrado em"
|
||||
#define D_FOUND_AT "encontrado em"
|
||||
#define D_SYSLOG_HOST_NOT_FOUND "Syslog anfitrião não encontrado"
|
||||
#define D_SYSLOG_HOST_NOT_FOUND "Anfitrião Syslog não encontrado"
|
||||
|
||||
// settings.ino
|
||||
#define D_SAVED_TO_FLASH_AT "Guardado na flash em"
|
||||
#define D_LOADED_FROM_FLASH_AT "Lido da flash em"
|
||||
#define D_USE_DEFAULTS "Usar predefinições"
|
||||
#define D_ERASED_SECTOR "Apagar setores"
|
||||
#define D_ERASED_SECTOR "Apagado setor"
|
||||
|
||||
// xdrv_02_webserver.ino
|
||||
#define D_NOSCRIPT "To use Tasmota, please enable JavaScript"
|
||||
#define D_MINIMAL_FIRMWARE_PLEASE_UPGRADE "MINIMO firmware<br>Atualizar Por favor"
|
||||
#define D_NOSCRIPT "Para utilizar o Tasmota, por favor ative o JavaScript"
|
||||
#define D_MINIMAL_FIRMWARE_PLEASE_UPGRADE "Firmware MÍNIMO<br>Por favor atualize"
|
||||
#define D_WEBSERVER_ACTIVE_ON "Servidor WEB ativo em"
|
||||
#define D_WITH_IP_ADDRESS "com o endereço IP"
|
||||
#define D_WEBSERVER_STOPPED "Servitor WEB parou"
|
||||
|
@ -235,20 +235,20 @@
|
|||
#define D_RESTART_IN "Reinicia em"
|
||||
#define D_SECONDS "segundos"
|
||||
#define D_DEVICE_WILL_RESTART "O dispositivo irá reiniciar dentro de alguns segundos"
|
||||
#define D_BUTTON_TOGGLE "Pressionar"
|
||||
#define D_BUTTON_TOGGLE "Alternar"
|
||||
#define D_CONFIGURATION "Configuração"
|
||||
#define D_INFORMATION "Informação"
|
||||
#define D_FIRMWARE_UPGRADE "Atualização de Firmware"
|
||||
#define D_CONSOLE "Consola"
|
||||
#define D_CONFIRM_RESTART "Confirmar o reinicio"
|
||||
#define D_CONFIRM_RESTART "Confirmar o reinício"
|
||||
|
||||
#define D_CONFIGURE_MODULE "Configurar Módulo"
|
||||
#define D_CONFIGURE_WIFI "Configurar WiFi"
|
||||
#define D_CONFIGURE_MQTT "Configurar MQTT"
|
||||
#define D_CONFIGURE_DOMOTICZ "Configurar Domoticz"
|
||||
#define D_CONFIGURE_LOGGING "Configurar Logging"
|
||||
#define D_CONFIGURE_LOGGING "Configurar registro"
|
||||
#define D_CONFIGURE_OTHER "Configurar outras opções"
|
||||
#define D_CONFIRM_RESET_CONFIGURATION "Apagar configuração Confirmar"
|
||||
#define D_CONFIRM_RESET_CONFIGURATION "Confirme o reinício da configuração"
|
||||
#define D_RESET_CONFIGURATION "Apagar configuração"
|
||||
#define D_BACKUP_CONFIGURATION "Guardar configuração"
|
||||
#define D_RESTORE_CONFIGURATION "Repor configuração"
|
||||
|
@ -256,102 +256,102 @@
|
|||
|
||||
#define D_MODULE_PARAMETERS "Parametros do Módulo"
|
||||
#define D_MODULE_TYPE "Tipo de Módulo"
|
||||
#define D_PULLUP_ENABLE "No Button/Switch pull-up"
|
||||
#define D_PULLUP_ENABLE "Sem pull-up de Botão/Interruptor"
|
||||
#define D_ADC "ADC"
|
||||
#define D_GPIO "GPIO"
|
||||
#define D_SERIAL_IN "Serial Entrada"
|
||||
#define D_SERIAL_OUT "Serial Saída"
|
||||
#define D_SERIAL_IN "Entrada de porta série"
|
||||
#define D_SERIAL_OUT "Saída de porta série"
|
||||
|
||||
#define D_WIFI_PARAMETERS "Parametros Wifi"
|
||||
#define D_SCAN_FOR_WIFI_NETWORKS "Em busca de redes wifi"
|
||||
#define D_SCAN_DONE "Busca finalizada"
|
||||
#define D_NO_NETWORKS_FOUND "Sem redes"
|
||||
#define D_REFRESH_TO_SCAN_AGAIN "Nova busca"
|
||||
#define D_DUPLICATE_ACCESSPOINT "Ponto de Acesso duplicado"
|
||||
#define D_SCAN_FOR_WIFI_NETWORKS "Procurar redes Wifi"
|
||||
#define D_SCAN_DONE "Pesquisa terminada"
|
||||
#define D_NO_NETWORKS_FOUND "Sem redes encontradas"
|
||||
#define D_REFRESH_TO_SCAN_AGAIN "Atualize para realizar nova pesquisa"
|
||||
#define D_DUPLICATE_ACCESSPOINT "Duplicar ponto de Acesso"
|
||||
#define D_SKIPPING_LOW_QUALITY "Ignorado devido a baixa qualidade do sinal"
|
||||
#define D_RSSI "RSSI"
|
||||
#define D_WEP "WEP"
|
||||
#define D_WPA_PSK "WPA PSK"
|
||||
#define D_WPA2_PSK "WPA2 PSK"
|
||||
#define D_AP1_SSID "AP1 SSId"
|
||||
#define D_AP1_PASSWORD "AP1 Palavra Chave"
|
||||
#define D_AP2_SSID "AP2 SSId"
|
||||
#define D_AP2_PASSWORD "AP2 Palavra Chave"
|
||||
#define D_AP1_SSID "SSId do AP1"
|
||||
#define D_AP1_PASSWORD "Palavra Chave do AP1"
|
||||
#define D_AP2_SSID "SSId do AP2"
|
||||
#define D_AP2_PASSWORD "Palavra Chave do AP2"
|
||||
|
||||
#define D_MQTT_PARAMETERS "Parametros MQTT"
|
||||
#define D_CLIENT "Cliente"
|
||||
#define D_FULL_TOPIC "Tópico completo"
|
||||
|
||||
#define D_LOGGING_PARAMETERS "Parametros Logging"
|
||||
#define D_SERIAL_LOG_LEVEL "Nível de registro serial"
|
||||
#define D_MQTT_LOG_LEVEL "Mqtt log level"
|
||||
#define D_LOGGING_PARAMETERS "Parametros para registro"
|
||||
#define D_SERIAL_LOG_LEVEL "Nível de registro na porta série"
|
||||
#define D_MQTT_LOG_LEVEL "Nível de registro MQTT"
|
||||
#define D_WEB_LOG_LEVEL "Nível de registro WEB"
|
||||
#define D_SYS_LOG_LEVEL "Nível de registro Syslog"
|
||||
#define D_SYS_LOG_LEVEL "Nível de registro do Syslog"
|
||||
#define D_MORE_DEBUG "Depurar mais"
|
||||
#define D_SYSLOG_HOST "Syslog anfitrião"
|
||||
#define D_SYSLOG_HOST "Anfitrião Syslog"
|
||||
#define D_SYSLOG_PORT "Porta Syslog"
|
||||
#define D_TELEMETRY_PERIOD "Periodo de Telemetria"
|
||||
#define D_TELEMETRY_PERIOD "Período de Telemetria"
|
||||
|
||||
#define D_OTHER_PARAMETERS "Outros parametros"
|
||||
#define D_TEMPLATE "Template"
|
||||
#define D_ACTIVATE "Activate"
|
||||
#define D_WEB_ADMIN_PASSWORD "Palavra Chave de WEB Admin"
|
||||
#define D_TEMPLATE "Modelo"
|
||||
#define D_ACTIVATE "Ativar"
|
||||
#define D_WEB_ADMIN_PASSWORD "Palavra Chave do Admin WEB"
|
||||
#define D_MQTT_ENABLE "MQTT habilitado"
|
||||
#define D_FRIENDLY_NAME "Nome amigável"
|
||||
#define D_BELKIN_WEMO "Belkin WeMo"
|
||||
#define D_HUE_BRIDGE "Hue Bridge"
|
||||
#define D_SINGLE_DEVICE "dispositivo único"
|
||||
#define D_MULTI_DEVICE "multiplos dispositivos"
|
||||
#define D_MULTI_DEVICE "dispositivo múltiplo"
|
||||
|
||||
#define D_CONFIGURE_TEMPLATE "Configure Template"
|
||||
#define D_TEMPLATE_PARAMETERS "Template parameters"
|
||||
#define D_TEMPLATE_NAME "Name"
|
||||
#define D_BASE_TYPE "Based on"
|
||||
#define D_TEMPLATE_FLAGS "Options"
|
||||
#define D_CONFIGURE_TEMPLATE "Configurar Modelo"
|
||||
#define D_TEMPLATE_PARAMETERS "Parametros do Modelo"
|
||||
#define D_TEMPLATE_NAME "Nome do Modelo"
|
||||
#define D_BASE_TYPE "Baseado em"
|
||||
#define D_TEMPLATE_FLAGS "Opções"
|
||||
|
||||
#define D_SAVE_CONFIGURATION "Salvar configuração"
|
||||
#define D_SAVE_CONFIGURATION "Guardar configuração"
|
||||
#define D_CONFIGURATION_SAVED "Configuração guardada"
|
||||
#define D_CONFIGURATION_RESET "Reinicialização da configuração"
|
||||
#define D_CONFIGURATION_RESET "Reinicializar a configuração"
|
||||
|
||||
#define D_PROGRAM_VERSION "Versão do Programa"
|
||||
#define D_BUILD_DATE_AND_TIME "Data e Hora da construção"
|
||||
#define D_BUILD_DATE_AND_TIME "Data e Hora de criação"
|
||||
#define D_CORE_AND_SDK_VERSION "Versão Core/SDK"
|
||||
#define D_FLASH_WRITE_COUNT "contagem de gravação flash"
|
||||
#define D_FLASH_WRITE_COUNT "Contagem de gravação da flash"
|
||||
#define D_MAC_ADDRESS "Endereço MAC"
|
||||
#define D_MQTT_HOST "MQTT Servidor"
|
||||
#define D_MQTT_PORT "MQTT Porta"
|
||||
#define D_MQTT_CLIENT "MQTT Cliente"
|
||||
#define D_MQTT_USER "MQTT Utilizador"
|
||||
#define D_MQTT_TOPIC "MQTT Tópico"
|
||||
#define D_MQTT_GROUP_TOPIC "MQTT Tópico Grupo"
|
||||
#define D_MQTT_FULL_TOPIC "MQTT Tópico Completo"
|
||||
#define D_MQTT_HOST "Servidor MQTT"
|
||||
#define D_MQTT_PORT "Porta MQTT"
|
||||
#define D_MQTT_CLIENT "Cliente MQTT"
|
||||
#define D_MQTT_USER "Utilizador MQTT"
|
||||
#define D_MQTT_TOPIC "Tópico MQTT"
|
||||
#define D_MQTT_GROUP_TOPIC "Tópico MQTT de Grupo"
|
||||
#define D_MQTT_FULL_TOPIC "Tópico MQTT Completo"
|
||||
#define D_MDNS_DISCOVERY "Descobrir mDNS"
|
||||
#define D_MDNS_ADVERTISE "Anunciar mDNS"
|
||||
#define D_ESP_CHIP_ID "ESP Chip Id"
|
||||
#define D_FLASH_CHIP_ID "Flash Chip Id"
|
||||
#define D_FLASH_CHIP_SIZE "Flash Size"
|
||||
#define D_FREE_PROGRAM_SPACE "Espaço Livre Programa"
|
||||
#define D_ESP_CHIP_ID "ID do chip ESP"
|
||||
#define D_FLASH_CHIP_ID "ID do chip da Flash"
|
||||
#define D_FLASH_CHIP_SIZE "Tamanho da Flash"
|
||||
#define D_FREE_PROGRAM_SPACE "Espaço de Programa Livre"
|
||||
|
||||
#define D_UPGRADE_BY_WEBSERVER "Atualizar pelo servidor WEB"
|
||||
#define D_OTA_URL "OTA Url"
|
||||
#define D_OTA_URL "Url OTA"
|
||||
#define D_START_UPGRADE "Iniciar atualização"
|
||||
#define D_UPGRADE_BY_FILE_UPLOAD "Atualização por envio de ficheiro"
|
||||
#define D_UPLOAD_STARTED "Início do envio"
|
||||
#define D_UPGRADE_BY_FILE_UPLOAD "Atualizar por envio de ficheiro"
|
||||
#define D_UPLOAD_STARTED "Envio Iniciado"
|
||||
#define D_UPGRADE_STARTED "Atualização Iniciada"
|
||||
#define D_UPLOAD_DONE "Atualização Finalizada"
|
||||
#define D_UPLOAD_ERR_1 "Nenhum ficheiro selecionado"
|
||||
#define D_UPLOAD_ERR_2 "Nao existe espaço disponível"
|
||||
#define D_UPLOAD_ERR_3 "Byte mágico não é 0xE9"
|
||||
#define D_UPLOAD_ERR_2 "Não existe espaço disponível"
|
||||
#define D_UPLOAD_ERR_3 "O Byte mágico não é 0xE9"
|
||||
#define D_UPLOAD_ERR_4 "O tamanho do programa e maior do que o tamanho real da flash"
|
||||
#define D_UPLOAD_ERR_5 "Envio buffer miscompare"
|
||||
#define D_UPLOAD_ERR_6 "Falha no envio. Hablitar logging 3"
|
||||
#define D_UPLOAD_ERR_5 "Comparação incorreta do buffer de upload"
|
||||
#define D_UPLOAD_ERR_6 "Falha no envio. Habilitar registro 3"
|
||||
#define D_UPLOAD_ERR_7 "Envio cancelado"
|
||||
#define D_UPLOAD_ERR_8 "Ficheiro inválido"
|
||||
#define D_UPLOAD_ERR_9 "Ficheiro demasiado grande"
|
||||
#define D_UPLOAD_ERR_10 "Failed to init RF chip"
|
||||
#define D_UPLOAD_ERR_11 "Failed to erase RF chip"
|
||||
#define D_UPLOAD_ERR_12 "Failed to write to RF chip"
|
||||
#define D_UPLOAD_ERR_13 "Failed to decode RF firmware"
|
||||
#define D_UPLOAD_ERR_10 "Falha ao iniciar o chip de RF"
|
||||
#define D_UPLOAD_ERR_11 "Falha ao apagar o chip de RF"
|
||||
#define D_UPLOAD_ERR_12 "Falha ao escrever no chip de RF"
|
||||
#define D_UPLOAD_ERR_13 "Falha ao descodificar o firmware RF"
|
||||
#define D_UPLOAD_ERROR_CODE "Código de erro do envio"
|
||||
|
||||
#define D_ENTER_COMMAND "Inserir comando"
|
||||
|
@ -361,14 +361,14 @@
|
|||
// xdrv_01_mqtt.ino
|
||||
#define D_FINGERPRINT "Verifique a impressão digital TLS..."
|
||||
#define D_TLS_CONNECT_FAILED_TO "TLS não conseguiu ligar"
|
||||
#define D_RETRY_IN "Tentativa em"
|
||||
#define D_VERIFIED "Verificado impressão digital "
|
||||
#define D_RETRY_IN "Nova tentativa em"
|
||||
#define D_VERIFIED "Verificado usando impressão digital"
|
||||
#define D_INSECURE "Ligação insegura devido à impressão digital inválida"
|
||||
#define D_CONNECT_FAILED_TO "A ligação falhou ao"
|
||||
|
||||
// xplg_wemohue.ino
|
||||
#define D_MULTICAST_DISABLED "Multicast desabilitado"
|
||||
#define D_MULTICAST_REJOINED "Multicast (re)ingressou"
|
||||
#define D_MULTICAST_REJOINED "Multicast (re)ingressado"
|
||||
#define D_MULTICAST_JOIN_FAILED "Multicast falha no reingresso"
|
||||
#define D_FAILED_TO_SEND_RESPONSE "Falha no envio de reposta"
|
||||
|
||||
|
@ -377,13 +377,13 @@
|
|||
#define D_WEMO_EVENT_SERVICE "WeMo evento de serviço"
|
||||
#define D_WEMO_META_SERVICE "WeMo serviço meta"
|
||||
#define D_WEMO_SETUP "WeMo configuração"
|
||||
#define D_RESPONSE_SENT "Rsposta enviada"
|
||||
#define D_RESPONSE_SENT "Resposta enviada"
|
||||
|
||||
#define D_HUE "Hue"
|
||||
#define D_HUE_BRIDGE_SETUP "Hue setup"
|
||||
#define D_HUE_API_NOT_IMPLEMENTED "Hue API nao implementada"
|
||||
#define D_HUE_API "Hue API"
|
||||
#define D_HUE_POST_ARGS "Hue POST args"
|
||||
#define D_HUE_BRIDGE_SETUP "Configuração do Hue"
|
||||
#define D_HUE_API_NOT_IMPLEMENTED "API Hue nao implementada"
|
||||
#define D_HUE_API "API Hue"
|
||||
#define D_HUE_POST_ARGS "Argumentos de POST HUE"
|
||||
#define D_3_RESPONSE_PACKETS_SENT "3 pacotes de resposta enviados"
|
||||
|
||||
// xdrv_07_domoticz.ino
|
||||
|
@ -402,71 +402,71 @@
|
|||
#define D_DOMOTICZ_CURRENT "Corrente/PM10"
|
||||
#define D_DOMOTICZ_AIRQUALITY "Qualidade do Ar"
|
||||
#define D_DOMOTICZ_P1_SMART_METER "P1SmartMeter"
|
||||
#define D_DOMOTICZ_UPDATE_TIMER "Tempo de atualização"
|
||||
#define D_DOMOTICZ_UPDATE_TIMER "Temporizador de atualização"
|
||||
|
||||
// xdrv_09_timers.ino
|
||||
#define D_CONFIGURE_TIMER "Configure Timer"
|
||||
#define D_TIMER_PARAMETERS "Timer parameters"
|
||||
#define D_TIMER_ENABLE "Enable Timers"
|
||||
#define D_TIMER_ARM "Arm"
|
||||
#define D_TIMER_TIME "Time"
|
||||
#define D_TIMER_DAYS "Days"
|
||||
#define D_TIMER_REPEAT "Repeat"
|
||||
#define D_TIMER_OUTPUT "Output"
|
||||
#define D_TIMER_ACTION "Action"
|
||||
#define D_CONFIGURE_TIMER "Configurar temporizador"
|
||||
#define D_TIMER_PARAMETERS "Parâmetros do temporizador"
|
||||
#define D_TIMER_ENABLE "Habilitar Temporizadores"
|
||||
#define D_TIMER_ARM "Armar"
|
||||
#define D_TIMER_TIME "Tempo"
|
||||
#define D_TIMER_DAYS "Dias"
|
||||
#define D_TIMER_REPEAT "Repetir"
|
||||
#define D_TIMER_OUTPUT "Aaída"
|
||||
#define D_TIMER_ACTION "Açao"
|
||||
|
||||
// xdrv_10_knx.ino
|
||||
#define D_CONFIGURE_KNX "Configure KNX"
|
||||
#define D_KNX_PARAMETERS "KNX Parameters"
|
||||
#define D_KNX_GENERAL_CONFIG "General"
|
||||
#define D_KNX_PHYSICAL_ADDRESS "Physical Address"
|
||||
#define D_KNX_PHYSICAL_ADDRESS_NOTE "( Must be unique on the KNX network )"
|
||||
#define D_KNX_ENABLE "Enable KNX"
|
||||
#define D_KNX_GROUP_ADDRESS_TO_WRITE "Data to Send to Group Addresses"
|
||||
#define D_ADD "Add"
|
||||
#define D_DELETE "Delete"
|
||||
#define D_REPLY "Reply"
|
||||
#define D_KNX_GROUP_ADDRESS_TO_READ "Group Addresses to Receive Data from"
|
||||
#define D_CONFIGURE_KNX "Configurar KNX"
|
||||
#define D_KNX_PARAMETERS "Parâmetros KNX"
|
||||
#define D_KNX_GENERAL_CONFIG "Geral"
|
||||
#define D_KNX_PHYSICAL_ADDRESS "Endereço físico"
|
||||
#define D_KNX_PHYSICAL_ADDRESS_NOTE "( Deve ser exclusivo na rede KNX )"
|
||||
#define D_KNX_ENABLE "Habilitar KNX"
|
||||
#define D_KNX_GROUP_ADDRESS_TO_WRITE "Dados para enviar para Endereços de Grupo"
|
||||
#define D_ADD "Adicionar"
|
||||
#define D_DELETE "Remover"
|
||||
#define D_REPLY "Responder"
|
||||
#define D_KNX_GROUP_ADDRESS_TO_READ "Endereços de Grupo de onde receber dados"
|
||||
#define D_LOG_KNX "KNX: "
|
||||
#define D_RECEIVED_FROM "Received from"
|
||||
#define D_KNX_COMMAND_WRITE "Write"
|
||||
#define D_KNX_COMMAND_READ "Read"
|
||||
#define D_KNX_COMMAND_OTHER "Other"
|
||||
#define D_SENT_TO "sent to"
|
||||
#define D_KNX_WARNING "The group address ( 0 / 0 / 0 ) is reserved and can not be used."
|
||||
#define D_KNX_ENHANCEMENT "Communication Enhancement"
|
||||
#define D_RECEIVED_FROM "Recebido de"
|
||||
#define D_KNX_COMMAND_WRITE "Escrever"
|
||||
#define D_KNX_COMMAND_READ "Ler"
|
||||
#define D_KNX_COMMAND_OTHER "Outro"
|
||||
#define D_SENT_TO "enviar para"
|
||||
#define D_KNX_WARNING "O Endereço de Grupo ( 0 / 0 / 0 ) está reservado e não pode ser usado."
|
||||
#define D_KNX_ENHANCEMENT "Melhoria de Comunicação"
|
||||
#define D_KNX_TX_SLOT "KNX TX"
|
||||
#define D_KNX_RX_SLOT "KNX RX"
|
||||
|
||||
// xdrv_03_energy.ino
|
||||
#define D_ENERGY_TODAY "Consumo energético de hoje"
|
||||
#define D_ENERGY_YESTERDAY "Consumo energético de ontem"
|
||||
#define D_ENERGY_TOTAL "Consumo total de energial"
|
||||
#define D_ENERGY_TOTAL "Consumo energético total"
|
||||
|
||||
// xdrv_27_shutter.ino
|
||||
#define D_OPEN "Open"
|
||||
#define D_CLOSE "Close"
|
||||
#define D_DOMOTICZ_SHUTTER "Shutter"
|
||||
#define D_OPEN "Abrir"
|
||||
#define D_CLOSE "Fechar"
|
||||
#define D_DOMOTICZ_SHUTTER "Estore"
|
||||
|
||||
// xdrv_28_pcf8574.ino
|
||||
#define D_CONFIGURE_PCF8574 "Configure PCF8574"
|
||||
#define D_PCF8574_PARAMETERS "PCF8574 parameters"
|
||||
#define D_INVERT_PORTS "Invert Ports"
|
||||
#define D_DEVICE "Device"
|
||||
#define D_DEVICE_INPUT "Input"
|
||||
#define D_DEVICE_OUTPUT "Output"
|
||||
#define D_CONFIGURE_PCF8574 "Configurar PCF8574"
|
||||
#define D_PCF8574_PARAMETERS "Parâmetros PCF8574"
|
||||
#define D_INVERT_PORTS "Inverter Portas"
|
||||
#define D_DEVICE "Dispositivo"
|
||||
#define D_DEVICE_INPUT "Entrada"
|
||||
#define D_DEVICE_OUTPUT "Saída"
|
||||
|
||||
// xsns_05_ds18b20.ino
|
||||
#define D_SENSOR_BUSY "Sensor ocupado"
|
||||
#define D_SENSOR_CRC_ERROR "Erro Sensor CRC"
|
||||
#define D_SENSORS_FOUND "Sensors encontrados"
|
||||
#define D_SENSOR_CRC_ERROR "Erro no CRC do sensor"
|
||||
#define D_SENSORS_FOUND "Sensores encontrados"
|
||||
|
||||
// xsns_06_dht.ino
|
||||
#define D_TIMEOUT_WAITING_FOR "Fim do tempo de espera"
|
||||
#define D_START_SIGNAL_LOW "Sinal de início baixo"
|
||||
#define D_START_SIGNAL_HIGH "Sinal de início elevado"
|
||||
#define D_PULSE "pulse"
|
||||
#define D_CHECKSUM_FAILURE "Falha Checksum"
|
||||
#define D_PULSE "pulso"
|
||||
#define D_CHECKSUM_FAILURE "Falha na soma de verificação"
|
||||
|
||||
// xsns_07_sht1x.ino
|
||||
#define D_SENSOR_DID_NOT_ACK_COMMAND "Sensor não aceitou o comando ACK"
|
||||
|
@ -486,27 +486,27 @@
|
|||
#define D_GZ_AXIS "Gyro Z-Axis"
|
||||
|
||||
// xsns_34_hx711.ino
|
||||
#define D_HX_CAL_REMOVE "Remove weigth"
|
||||
#define D_HX_CAL_REFERENCE "Load reference weigth"
|
||||
#define D_HX_CAL_DONE "Calibrated"
|
||||
#define D_HX_CAL_FAIL "Calibration failed"
|
||||
#define D_RESET_HX711 "Reset Scale"
|
||||
#define D_CONFIGURE_HX711 "Configure Scale"
|
||||
#define D_HX711_PARAMETERS "Scale parameters"
|
||||
#define D_ITEM_WEIGHT "Item weight"
|
||||
#define D_REFERENCE_WEIGHT "Reference weigth"
|
||||
#define D_CALIBRATE "Calibrate"
|
||||
#define D_CALIBRATION "Calibration"
|
||||
#define D_HX_CAL_REMOVE "Remover peso"
|
||||
#define D_HX_CAL_REFERENCE "Carregar peso de referência"
|
||||
#define D_HX_CAL_DONE "Calibrado"
|
||||
#define D_HX_CAL_FAIL "Falha na calibração"
|
||||
#define D_RESET_HX711 "Reiniciar balança"
|
||||
#define D_CONFIGURE_HX711 "Configurar balança"
|
||||
#define D_HX711_PARAMETERS "Parâmetros da balança"
|
||||
#define D_ITEM_WEIGHT "Peso do item"
|
||||
#define D_REFERENCE_WEIGHT "Peso de referência"
|
||||
#define D_CALIBRATE "Calibrar"
|
||||
#define D_CALIBRATION "Calibração"
|
||||
|
||||
//xsns_35_tx20.ino
|
||||
#define D_TX20_WIND_DIRECTION "Wind Direction"
|
||||
#define D_TX20_WIND_SPEED "Wind Speed"
|
||||
#define D_TX20_WIND_SPEED_AVG "Wind Speed Avg"
|
||||
#define D_TX20_WIND_SPEED_MAX "Wind Speed Max"
|
||||
#define D_TX20_WIND_DIRECTION "Direção do vento
|
||||
#define D_TX20_WIND_SPEED "Velocidade do vento"
|
||||
#define D_TX20_WIND_SPEED_AVG "Velocidade média do vento"
|
||||
#define D_TX20_WIND_SPEED_MAX "Velocidade máxima do vento"
|
||||
#define D_TX20_NORTH "N"
|
||||
#define D_TX20_EAST "E"
|
||||
#define D_TX20_SOUTH "S"
|
||||
#define D_TX20_WEST "W"
|
||||
#define D_TX20_WEST "O"
|
||||
|
||||
//xsns_43_hre.ino
|
||||
#define D_LOG_HRE "HRE: "
|
||||
|
@ -544,7 +544,7 @@
|
|||
#define D_SENSOR_SPI_MISO "SPI MISO"
|
||||
#define D_SENSOR_SPI_MOSI "SPI MOSI"
|
||||
#define D_SENSOR_SPI_CLK "SPI CLK"
|
||||
#define D_SENSOR_BACKLIGHT "Luz negra"
|
||||
#define D_SENSOR_BACKLIGHT "Luz fundo"
|
||||
#define D_SENSOR_PMS5003 "PMS5003"
|
||||
#define D_SENSOR_SDS0X1_RX "SDS0X1 Rx"
|
||||
#define D_SENSOR_SDS0X1_TX "SDS0X1 Tx"
|
||||
|
@ -573,7 +573,7 @@
|
|||
#define D_SENSOR_SSPI_SCLK "SSPI SCLK"
|
||||
#define D_SENSOR_SSPI_CS "SSPI CS"
|
||||
#define D_SENSOR_SSPI_DC "SSPI DC"
|
||||
#define D_SENSOR_RF_SENSOR "RF Sensor"
|
||||
#define D_SENSOR_RF_SENSOR "Sensor RF"
|
||||
#define D_SENSOR_AZ_RX "AZ Rx"
|
||||
#define D_SENSOR_AZ_TX "AZ Tx"
|
||||
#define D_SENSOR_MAX31855_CS "MX31855 CS"
|
||||
|
@ -599,7 +599,7 @@
|
|||
#define D_SENSOR_ARIRFSEL "ALux IrSel"
|
||||
#define D_SENSOR_TXD "Serial Tx"
|
||||
#define D_SENSOR_RXD "Serial Rx"
|
||||
#define D_SENSOR_ROTARY "Rotary" // Suffix "1A"
|
||||
#define D_SENSOR_ROTARY "Rotativo" // Suffix "1A"
|
||||
#define D_SENSOR_HRE_CLOCK "HRE Clock"
|
||||
#define D_SENSOR_HRE_DATA "HRE Data"
|
||||
#define D_SENSOR_ADE7953_IRQ "ADE7953 IRQ"
|
||||
|
@ -657,7 +657,7 @@
|
|||
#define D_UNIT_PARTS_PER_MILLION "ppm"
|
||||
#define D_UNIT_PRESSURE "hPa"
|
||||
#define D_UNIT_SECOND "sec"
|
||||
#define D_UNIT_SECTORS "sectors"
|
||||
#define D_UNIT_SECTORS "setores"
|
||||
#define D_UNIT_VA "VA"
|
||||
#define D_UNIT_VAR "VAr"
|
||||
#define D_UNIT_VOLT "V"
|
||||
|
@ -691,37 +691,37 @@
|
|||
#define D_LOG_WIFI "WIF: " // Wifi
|
||||
|
||||
//SDM220
|
||||
#define D_PHASE_ANGLE "Phase Angle"
|
||||
#define D_IMPORT_ACTIVE "Import Active"
|
||||
#define D_EXPORT_ACTIVE "Export Active"
|
||||
#define D_IMPORT_REACTIVE "Import Reactive"
|
||||
#define D_EXPORT_REACTIVE "Export Reactive"
|
||||
#define D_TOTAL_REACTIVE "Total Reactive"
|
||||
#define D_PHASE_ANGLE "Ângulo de fase"
|
||||
#define D_IMPORT_ACTIVE "Ativo importado"
|
||||
#define D_EXPORT_ACTIVE "Ativo exportado"
|
||||
#define D_IMPORT_REACTIVE "Reativo importado"
|
||||
#define D_EXPORT_REACTIVE "Reativo exportado"
|
||||
#define D_TOTAL_REACTIVE "Reactivo total"
|
||||
#define D_UNIT_KWARH "kVArh"
|
||||
#define D_UNIT_ANGLE "Deg"
|
||||
|
||||
//SOLAXX1
|
||||
#define D_PV1_VOLTAGE "PV1 Voltage"
|
||||
#define D_PV1_CURRENT "PV1 Current"
|
||||
#define D_PV1_POWER "PV1 Power"
|
||||
#define D_PV2_VOLTAGE "PV2 Voltage"
|
||||
#define D_PV2_CURRENT "PV2 Current"
|
||||
#define D_PV2_POWER "PV2 Power"
|
||||
#define D_SOLAR_POWER "Solar Power"
|
||||
#define D_INVERTER_POWER "Inverter Power"
|
||||
#define D_STATUS "Status"
|
||||
#define D_WAITING "Waiting"
|
||||
#define D_CHECKING "Checking"
|
||||
#define D_WORKING "Working"
|
||||
#define D_FAILURE "Failure"
|
||||
#define D_SOLAX_ERROR_0 "No Error Code"
|
||||
#define D_SOLAX_ERROR_1 "Grid Lost Fault"
|
||||
#define D_SOLAX_ERROR_2 "Grid Voltage Fault"
|
||||
#define D_SOLAX_ERROR_3 "Grid Frequency Fault"
|
||||
#define D_SOLAX_ERROR_4 "Pv Voltage Fault"
|
||||
#define D_SOLAX_ERROR_5 "Isolation Fault"
|
||||
#define D_SOLAX_ERROR_6 "Over Temperature Fault"
|
||||
#define D_SOLAX_ERROR_7 "Fan Fault"
|
||||
#define D_SOLAX_ERROR_8 "Other Device Fault"
|
||||
#define D_PV1_VOLTAGE "Voltagem PV1"
|
||||
#define D_PV1_CURRENT "Corrente PV1"
|
||||
#define D_PV1_POWER "Potência PV1"
|
||||
#define D_PV2_VOLTAGE "Voltagem PV2"
|
||||
#define D_PV2_CURRENT "Corrente PV2"
|
||||
#define D_PV2_POWER "Potência PV2"
|
||||
#define D_SOLAR_POWER "Potência Solar"
|
||||
#define D_INVERTER_POWER "Potência do Inversor"
|
||||
#define D_STATUS "Estado"
|
||||
#define D_WAITING "Esperando"
|
||||
#define D_CHECKING "Verificando"
|
||||
#define D_WORKING "Trabalhando"
|
||||
#define D_FAILURE "Falha"
|
||||
#define D_SOLAX_ERROR_0 "Nenhum código de erro"
|
||||
#define D_SOLAX_ERROR_1 "Falha devido a perda de rede"
|
||||
#define D_SOLAX_ERROR_2 "Falha devido a perda de tensão"
|
||||
#define D_SOLAX_ERROR_3 "Falha devido a perda de frequência"
|
||||
#define D_SOLAX_ERROR_4 "Falha de tensão de Pv"
|
||||
#define D_SOLAX_ERROR_5 "Falha de isolamento"
|
||||
#define D_SOLAX_ERROR_6 "Falha de temperatura excessiva"
|
||||
#define D_SOLAX_ERROR_7 "Falha no ventilador"
|
||||
#define D_SOLAX_ERROR_8 "Outra falha no dispositivo"
|
||||
|
||||
#endif // _LANGUAGE_PT_PT_H_
|
||||
|
|
|
@ -139,7 +139,7 @@
|
|||
#define D_RESTARTING "Перезавантаження"
|
||||
#define D_RESTART_REASON "Причина перезавантаження"
|
||||
#define D_RESTORE "відновлення"
|
||||
#define D_RETAINED "нерозподілений"
|
||||
#define D_RETAINED "зберігати"
|
||||
#define D_RULE "Правило"
|
||||
#define D_SAVE "Зберегти"
|
||||
#define D_SENSOR "Давач"
|
||||
|
|
|
@ -270,7 +270,7 @@ enum XsnsFunctions {FUNC_SETTINGS_OVERRIDE, FUNC_PIN_STATE, FUNC_MODULE_INIT, FU
|
|||
FUNC_SAVE_AT_MIDNIGHT, FUNC_SAVE_BEFORE_RESTART,
|
||||
FUNC_PREP_BEFORE_TELEPERIOD, FUNC_AFTER_TELEPERIOD, FUNC_JSON_APPEND, FUNC_WEB_SENSOR, FUNC_COMMAND, FUNC_COMMAND_SENSOR, FUNC_COMMAND_DRIVER,
|
||||
FUNC_MQTT_SUBSCRIBE, FUNC_MQTT_INIT, FUNC_MQTT_DATA,
|
||||
FUNC_SET_POWER, FUNC_SET_DEVICE_POWER, FUNC_SHOW_SENSOR,
|
||||
FUNC_SET_POWER, FUNC_SET_DEVICE_POWER, FUNC_SHOW_SENSOR, FUNC_ANY_KEY,
|
||||
FUNC_ENERGY_EVERY_SECOND, FUNC_ENERGY_RESET,
|
||||
FUNC_RULES_PROCESS, FUNC_SERIAL, FUNC_FREE_MEM, FUNC_BUTTON_PRESSED,
|
||||
FUNC_WEB_ADD_BUTTON, FUNC_WEB_ADD_MAIN_BUTTON, FUNC_WEB_ADD_HANDLER, FUNC_SET_CHANNELS, FUNC_SET_SCHEME};
|
||||
|
|
|
@ -537,9 +537,10 @@ bool SendKey(uint32_t key, uint32_t device, uint32_t state)
|
|||
Response_P(PSTR("{\"%s%d\":{\"State\":%d}}"), (key) ? "Switch" : "Button", device, state);
|
||||
result = XdrvRulesProcess();
|
||||
}
|
||||
#ifdef USE_KNX
|
||||
KnxSendButtonPower(key, device, state);
|
||||
#endif // USE_KNX
|
||||
int32_t payload_save = XdrvMailbox.payload;
|
||||
XdrvMailbox.payload = key << 16 | state << 8 | device;
|
||||
XdrvCall(FUNC_ANY_KEY);
|
||||
XdrvMailbox.payload = payload_save;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -323,12 +323,22 @@ bool WifiCheckIPv6(void)
|
|||
}
|
||||
return ipv6_global;
|
||||
}
|
||||
|
||||
bool WifiCheckIPAddrStatus(void) // Return false for 169.254.x.x or fe80::/64
|
||||
{
|
||||
bool ip_global=false;
|
||||
|
||||
for (auto a : addrList) {
|
||||
if(!a.isLocal()) ip_global=true;
|
||||
}
|
||||
return ip_global;
|
||||
}
|
||||
#endif // LWIP_IPV6=1
|
||||
|
||||
void WifiCheckIp(void)
|
||||
{
|
||||
#if LWIP_IPV6
|
||||
if(WifiCheckIPv6()) {
|
||||
if(WifiCheckIPAddrStatus()) {
|
||||
Wifi.status = WL_CONNECTED;
|
||||
#else
|
||||
if ((WL_CONNECTED == WiFi.status()) && (static_cast<uint32_t>(WiFi.localIP()) != 0)) {
|
||||
|
@ -456,7 +466,7 @@ void WifiCheck(uint8_t param)
|
|||
WifiCheckIp();
|
||||
}
|
||||
#if LWIP_IPV6
|
||||
if (WifiCheckIPv6()) {
|
||||
if (WifiCheckIPAddrStatus()) {
|
||||
#else
|
||||
if ((WL_CONNECTED == WiFi.status()) && (static_cast<uint32_t>(WiFi.localIP()) != 0) && !Wifi.config_type) {
|
||||
#endif // LWIP_IPV6=1
|
||||
|
|
|
@ -346,7 +346,7 @@ void MqttPublishLogging(const char *mxtime)
|
|||
void MqttPublishDirect(const char* topic, bool retained)
|
||||
{
|
||||
char sretained[CMDSZ];
|
||||
char slog_type[10];
|
||||
char slog_type[20];
|
||||
|
||||
#ifdef USE_DEBUG_DRIVER
|
||||
ShowFreeMem(PSTR("MqttPublishDirect"));
|
||||
|
|
|
@ -672,8 +672,13 @@ void KnxUpdatePowerState(uint8_t device, power_t state)
|
|||
}
|
||||
|
||||
|
||||
void KnxSendButtonPower(uint8_t key, uint8_t device, uint8_t state)
|
||||
void KnxSendButtonPower(void)
|
||||
{
|
||||
if (!(Settings.flag.knx_enabled)) { return; }
|
||||
|
||||
uint32_t key = (XdrvMailbox.payload >> 16) & 0xFF;
|
||||
uint32_t device = XdrvMailbox.payload & 0xFF;
|
||||
uint32_t state = (XdrvMailbox.payload >> 8) & 0xFF;
|
||||
// key 0 = button_topic
|
||||
// key 1 = switch_topic
|
||||
// state 0 = off
|
||||
|
@ -681,9 +686,6 @@ void KnxSendButtonPower(uint8_t key, uint8_t device, uint8_t state)
|
|||
// state 2 = toggle
|
||||
// state 3 = hold
|
||||
// state 9 = clear retain flag
|
||||
if (!(Settings.flag.knx_enabled)) { return; }
|
||||
// if (key)
|
||||
// {
|
||||
|
||||
// Search all the registered GA that has that output (variable: device) as parameter
|
||||
uint8_t i = KNX_GA_Search(device + 8);
|
||||
|
@ -1207,8 +1209,13 @@ bool Xdrv11(uint8_t function)
|
|||
case FUNC_LOOP:
|
||||
if (!global_state.wifi_down) { knx.loop(); } // Process knx events
|
||||
break;
|
||||
case FUNC_PRE_INIT:
|
||||
KNX_INIT();
|
||||
case FUNC_EVERY_50_MSECOND:
|
||||
if (toggle_inhibit) {
|
||||
toggle_inhibit--;
|
||||
}
|
||||
break;
|
||||
case FUNC_ANY_KEY:
|
||||
KnxSendButtonPower();
|
||||
break;
|
||||
#ifdef USE_WEBSERVER
|
||||
#ifdef USE_KNX_WEB_MENU
|
||||
|
@ -1220,14 +1227,12 @@ bool Xdrv11(uint8_t function)
|
|||
break;
|
||||
#endif // USE_KNX_WEB_MENU
|
||||
#endif // USE_WEBSERVER
|
||||
case FUNC_EVERY_50_MSECOND:
|
||||
if (toggle_inhibit) {
|
||||
toggle_inhibit--;
|
||||
}
|
||||
break;
|
||||
case FUNC_COMMAND:
|
||||
result = DecodeCommand(kKnxCommands, KnxCommand);
|
||||
break;
|
||||
case FUNC_PRE_INIT:
|
||||
KNX_INIT();
|
||||
break;
|
||||
// case FUNC_SET_POWER:
|
||||
// break;
|
||||
}
|
||||
|
|
|
@ -28,17 +28,15 @@ const char HASS_DISCOVER_RELAY[] PROGMEM =
|
|||
"\"val_tpl\":\"{{value_json.%s}}\"," // POWER2
|
||||
"\"pl_off\":\"%s\"," // OFF
|
||||
"\"pl_on\":\"%s\"," // ON
|
||||
// "\"optimistic\":\"false\"," // false is Hass default when state_topic is set
|
||||
"\"avty_t\":\"%s\"," // tele/dualr2/LWT
|
||||
"\"pl_avail\":\"" D_ONLINE "\"," // Online
|
||||
"\"pl_not_avail\":\"" D_OFFLINE "\""; // Offline
|
||||
|
||||
const char HASS_DISCOVER_BUTTON_SWITCH[] PROGMEM =
|
||||
"{\"name\":\"%s\"," // dualr2 1 BTN
|
||||
"\"stat_t\":\"%s\"," // cmnd/dualr2/POWER (implies "\"optimistic\":\"false\",")
|
||||
// "\"value_template\":\"{{value_json.%s}}\"," // POWER2
|
||||
"\"pl_on\":\"%s\"," // TOGGLE
|
||||
// "\"optimistic\":\"false\"," // false is Hass default when state_topic is set
|
||||
"\"stat_t\":\"%s\"," // stat/RESULT/ (implies "\"optimistic\":\"false\",")
|
||||
"\"value_template\":\"{{value_json.%s}}\"," // BUTTON1
|
||||
"\"pl_on\":\"%s\"," // ON
|
||||
"\"avty_t\":\"%s\"," // tele/dualr2/LWT
|
||||
"\"pl_avail\":\"" D_ONLINE "\"," // Online
|
||||
"\"pl_not_avail\":\"" D_OFFLINE "\""; // Offline
|
||||
|
@ -91,10 +89,6 @@ const char HASS_DISCOVER_SENSOR_TEMP[] PROGMEM =
|
|||
"\"val_tpl\":\"{{value_json['%s'].Temperature}}\"," // "SI7021-14":{"Temperature":null,"Humidity":null} -> {{ value_json['SI7021-14'].Temperature }}
|
||||
"\"dev_cla\":\"temperature\""; // temperature
|
||||
|
||||
const char HASS_DISCOVER_DS18X20_MULTI[] PROGMEM =
|
||||
",\"json_attributes_topic\":\"%s\","
|
||||
"\"json_attributes_template\":\"{{{'Id':value_json['%s'].Id}|tojson}}\""; // Add DS18X20 Id as information field
|
||||
|
||||
const char HASS_DISCOVER_SENSOR_HUM[] PROGMEM =
|
||||
",\"unit_of_meas\":\"%%\"," // %
|
||||
"\"val_tpl\":\"{{value_json['%s'].Humidity}}\"," // "SI7021-14":{"Temperature":null,"Humidity":null} -> {{ value_json['SI7021-14'].Humidity }}
|
||||
|
@ -115,10 +109,12 @@ const char HASS_DISCOVER_SENSOR_WATT[] PROGMEM =
|
|||
",\"unit_of_meas\":\"W\"," // W
|
||||
"\"val_tpl\":\"{{value_json['%s'].%s}}\"," // "ENERGY":{"TotalStartTime":null,"Total":null,"Yesterday":null,"Today":null,"Power":null,"ApparentPower":null,"ReactivePower":null,"Factor":null,"Voltage":null,"Current":null} -> {{ value_json['ENERGY'].POWER }}
|
||||
"\"dev_cla\":\"power\"";
|
||||
|
||||
const char HASS_DISCOVER_SENSOR_VOLTAGE[] PROGMEM =
|
||||
",\"unit_of_meas\":\"V\"," // V
|
||||
"\"val_tpl\":\"{{value_json['%s'].%s}}\"," // "ENERGY":{"TotalStartTime":null,"Total":null,"Yesterday":null,"Today":null,"Power":null,"ApparentPower":null,"ReactivePower":null,"Factor":null,"Voltage":null,"Current":null} -> {{ value_json['ENERGY'].Voltage }}
|
||||
"\"dev_cla\":\"power\"";
|
||||
|
||||
const char HASS_DISCOVER_SENSOR_AMPERE[] PROGMEM =
|
||||
",\"unit_of_meas\":\"A\"," // A
|
||||
"\"val_tpl\":\"{{value_json['%s'].%s}}\"," // "ENERGY":{"TotalStartTime":null,"Total":null,"Yesterday":null,"Today":null,"Power":null,"ApparentPower":null,"ReactivePower":null,"Factor":null,"Voltage":null,"Current":null} -> {{ value_json['ENERGY'].Current }}
|
||||
|
@ -136,7 +132,8 @@ const char HASS_DISCOVER_SENSOR_ANY[] PROGMEM =
|
|||
const char HASS_DISCOVER_SENSOR_HASS_STATUS[] PROGMEM =
|
||||
",\"json_attributes_topic\":\"%s\","
|
||||
"\"unit_of_meas\":\" \"," // " " As unit of measurement to get a value graph in Hass
|
||||
"\"val_tpl\":\"{{value_json['" D_JSON_RSSI "']}}\""; // "COUNTER":{"C1":0} -> {{ value_json['COUNTER'].C1 }}
|
||||
"\"val_tpl\":\"{{value_json['" D_JSON_RSSI "']}}\"," // "COUNTER":{"C1":0} -> {{ value_json['COUNTER'].C1 }}
|
||||
"\"ic\":\"mdi:information-outline\"";
|
||||
|
||||
const char HASS_DISCOVER_DEVICE_INFO[] PROGMEM =
|
||||
",\"uniq_id\":\"%s\","
|
||||
|
@ -319,20 +316,20 @@ void HAssAnnounceButtonSwitch(uint8_t device, char* topic, uint8_t present, uint
|
|||
char prefix[TOPSZ];
|
||||
char *state_topic = stemp1;
|
||||
char *availability_topic = stemp2;
|
||||
char jsoname[8];
|
||||
|
||||
if (device+1 > MAX_FRIENDLYNAMES) {
|
||||
snprintf_P(name, sizeof(name), PSTR("%s %s %d"), Settings.friendlyname[0], key?"SW":"BTN", device+1);
|
||||
} else {
|
||||
snprintf_P(name, sizeof(name), PSTR("%s %s"), Settings.friendlyname[device], key?"SW":"BTN");
|
||||
}
|
||||
snprintf_P(name, sizeof(name), PSTR("%s %s%d"), Settings.friendlyname[0], key?"Switch":"Button", device+1);
|
||||
GetPowerDevice(value_template, device+1, sizeof(value_template),
|
||||
key + Settings.flag.device_index_enable); // Force index for Switch 1, Index on Button1 is controlled by Settings.flag.device_index_enable
|
||||
GetTopic_P(state_topic, CMND, topic, value_template); // State of button is sent as CMND TOGGLE, state of switch is sent as ON/OFF
|
||||
//GetTopic_P(state_topic, CMND, topic, value_template); // State of button is sent as CMND TOGGLE, state of switch is sent as ON/OFF
|
||||
GetTopic_P(state_topic, STAT, mqtt_topic, PSTR(D_RSLT_RESULT));
|
||||
GetTopic_P(availability_topic, TELE, mqtt_topic, S_LWT);
|
||||
FindPrefix(state_topic, availability_topic, prefix);
|
||||
|
||||
Shorten(&state_topic, prefix);
|
||||
Shorten(&availability_topic, prefix);
|
||||
Response_P(HASS_DISCOVER_BUTTON_SWITCH, name, state_topic, Settings.state_text[toggle?2:1], availability_topic);
|
||||
snprintf_P(jsoname, sizeof(jsoname), PSTR("%s%d"), key?"SWITCH":"BUTTON", device+1);
|
||||
Response_P(HASS_DISCOVER_BUTTON_SWITCH, name, state_topic, jsoname, Settings.state_text[toggle?2:1], availability_topic);
|
||||
TryResponseAppend_P(HASS_DISCOVER_DEVICE_INFO_SHORT, unique_id, ESP.getChipId(), WiFi.macAddress().c_str());
|
||||
if (strlen(prefix) > 0 ) TryResponseAppend_P(HASS_DISCOVER_TOPIC_PREFIX, prefix);
|
||||
if (toggle) TryResponseAppend_P(HASS_DISCOVER_BUTTON_SWITCH_TOGGLE);
|
||||
|
@ -350,7 +347,7 @@ void HAssAnnounceSwitches(void)
|
|||
// Send info about buttons
|
||||
char *tmp = Settings.switch_topic;
|
||||
Format(sw_topic, tmp, sizeof(sw_topic));
|
||||
if ((strlen(sw_topic) != 0) && strcmp(sw_topic, "0")) {
|
||||
if (!strcmp_P(sw_topic, "0") || strlen(sw_topic) == 0 ) {
|
||||
for (uint32_t switch_index = 0; switch_index < MAX_SWITCHES; switch_index++) {
|
||||
uint8_t switch_present = 0;
|
||||
uint8_t toggle = 1;
|
||||
|
@ -379,7 +376,7 @@ void HAssAnnounceButtons(void)
|
|||
// Send info about buttons
|
||||
char *tmp = Settings.button_topic;
|
||||
Format(key_topic, tmp, sizeof(key_topic));
|
||||
if ((strlen(key_topic) != 0) && strcmp(key_topic, "0")) {
|
||||
if (!strcmp_P(key_topic, "0") || strlen(key_topic) == 0 ) {
|
||||
for (uint32_t button_index = 0; button_index < MAX_KEYS; button_index++) {
|
||||
uint8_t button_present = 0;
|
||||
uint8_t toggle = 1;
|
||||
|
@ -611,6 +608,22 @@ void HAssDiscover(void)
|
|||
hass_init_step = 1; // Delayed discovery
|
||||
}
|
||||
|
||||
void HAssAnyKey(void)
|
||||
{
|
||||
if (!Settings.flag.hass_discovery) { return; }
|
||||
|
||||
uint32_t key = (XdrvMailbox.payload >> 16) & 0xFF;
|
||||
uint32_t device = XdrvMailbox.payload & 0xFF;
|
||||
uint32_t state = (XdrvMailbox.payload >> 8) & 0xFF;
|
||||
|
||||
char scommand[CMDSZ];
|
||||
snprintf_P(scommand, sizeof(scommand), PSTR("%s%d"), (key) ? "SWITCH" : "BUTTON", device);
|
||||
char stopic[TOPSZ];
|
||||
GetTopic_P(stopic, STAT, mqtt_topic, (Settings.flag.mqtt_response) ? scommand : S_RSLT_RESULT);
|
||||
Response_P(S_JSON_COMMAND_SVALUE, scommand, GetStateText(state));
|
||||
MqttPublish(stopic);
|
||||
}
|
||||
|
||||
/*********************************************************************************************\
|
||||
* Interface
|
||||
\*********************************************************************************************/
|
||||
|
@ -621,10 +634,6 @@ bool Xdrv12(uint8_t function)
|
|||
|
||||
if (Settings.flag.mqtt_enabled) {
|
||||
switch (function) {
|
||||
case FUNC_MQTT_INIT:
|
||||
hass_mode = 0; // Discovery only if Settings.flag.hass_discovery is set
|
||||
hass_init_step = 2; // Delayed discovery
|
||||
break;
|
||||
case FUNC_EVERY_SECOND:
|
||||
if (hass_init_step) {
|
||||
hass_init_step--;
|
||||
|
@ -641,6 +650,13 @@ bool Xdrv12(uint8_t function)
|
|||
}
|
||||
}
|
||||
break;
|
||||
case FUNC_ANY_KEY:
|
||||
HAssAnyKey();
|
||||
break;
|
||||
case FUNC_MQTT_INIT:
|
||||
hass_mode = 0; // Discovery only if Settings.flag.hass_discovery is set
|
||||
hass_init_step = 2; // Delayed discovery
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
|
|
@ -276,8 +276,11 @@ bool TuyaSetPower(void)
|
|||
uint8_t rpower = XdrvMailbox.index;
|
||||
int16_t source = XdrvMailbox.payload;
|
||||
|
||||
uint8_t dpid = TuyaGetDpId(TUYA_MCU_FUNC_REL1 + active_device - 1);
|
||||
if (dpid == 0) dpid = TuyaGetDpId(TUYA_MCU_FUNC_REL1_INV + active_device - 1);
|
||||
|
||||
if (source != SRC_SWITCH && TuyaSerial) { // ignore to prevent loop from pushing state from faceplate interaction
|
||||
TuyaSendBool(active_device, bitRead(rpower, active_device-1) ^ bitRead(rel_inverted, active_device-1));
|
||||
TuyaSendBool(dpid, bitRead(rpower, active_device-1) ^ bitRead(rel_inverted, active_device-1));
|
||||
status = true;
|
||||
}
|
||||
return status;
|
||||
|
|
Loading…
Reference in New Issue