mirror of https://github.com/arendst/Tasmota.git
Adding Analog Temperature support for Shelly 2.5
Adding Analog Temperature support for Shelly 2.5
This commit is contained in:
parent
f1cccc19be
commit
2c6df2b86b
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Базиран на"
|
#define D_BASE_TYPE "Базиран на"
|
||||||
#define D_TEMPLATE_FLAGS "Флагове"
|
#define D_TEMPLATE_FLAGS "Флагове"
|
||||||
#define D_ALLOW_ADC0 "ADC0 вход"
|
#define D_ALLOW_ADC0 "ADC0 вход"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 температура"
|
||||||
#define D_ALLOW_PULLUP "Потребителски избор на pull-up"
|
#define D_ALLOW_PULLUP "Потребителски избор на pull-up"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Запазване на конфигурацията"
|
#define D_SAVE_CONFIGURATION "Запазване на конфигурацията"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Ulož nastavení"
|
#define D_SAVE_CONFIGURATION "Ulož nastavení"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "basiert auf"
|
#define D_BASE_TYPE "basiert auf"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 Temperatur"
|
||||||
#define D_ALLOW_PULLUP "Nutzer pull-up Auswahl"
|
#define D_ALLOW_PULLUP "Nutzer pull-up Auswahl"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Konfiguration speichern"
|
#define D_SAVE_CONFIGURATION "Konfiguration speichern"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Αποθήκευση ρυθμίσεων"
|
#define D_SAVE_CONFIGURATION "Αποθήκευση ρυθμίσεων"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Save configuration"
|
#define D_SAVE_CONFIGURATION "Save configuration"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Grabar configuración"
|
#define D_SAVE_CONFIGURATION "Grabar configuración"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Basé sur"
|
#define D_BASE_TYPE "Basé sur"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "Entrée ADC0"
|
#define D_ALLOW_ADC0 "Entrée ADC0"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "Pull-up utilisateur"
|
#define D_ALLOW_PULLUP "Pull-up utilisateur"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Enregistrer la configuration"
|
#define D_SAVE_CONFIGURATION "Enregistrer la configuration"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "מבוסס על"
|
#define D_BASE_TYPE "מבוסס על"
|
||||||
#define D_TEMPLATE_FLAGS "אפשריות"
|
#define D_TEMPLATE_FLAGS "אפשריות"
|
||||||
#define D_ALLOW_ADC0 "ADC0 כניסת"
|
#define D_ALLOW_ADC0 "ADC0 כניסת"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "pull-up בחירת משתמש עבור"
|
#define D_ALLOW_PULLUP "pull-up בחירת משתמש עבור"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "שמירת הגדרות"
|
#define D_SAVE_CONFIGURATION "שמירת הגדרות"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Beállítások mentése"
|
#define D_SAVE_CONFIGURATION "Beállítások mentése"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Salva configurazione"
|
#define D_SAVE_CONFIGURATION "Salva configurazione"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "옵션"
|
#define D_TEMPLATE_FLAGS "옵션"
|
||||||
#define D_ALLOW_ADC0 "ADC0 입력"
|
#define D_ALLOW_ADC0 "ADC0 입력"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "설정 저장"
|
#define D_SAVE_CONFIGURATION "설정 저장"
|
||||||
|
|
|
@ -291,8 +291,8 @@
|
||||||
#define D_TELEMETRY_PERIOD "Telemetry periode"
|
#define D_TELEMETRY_PERIOD "Telemetry periode"
|
||||||
|
|
||||||
#define D_OTHER_PARAMETERS "Overige parameters"
|
#define D_OTHER_PARAMETERS "Overige parameters"
|
||||||
#define D_TEMPLATE "Template"
|
#define D_TEMPLATE "Sjabloon"
|
||||||
#define D_ACTIVATE "Activate"
|
#define D_ACTIVATE "Activeer"
|
||||||
#define D_WEB_ADMIN_PASSWORD "Web Admin Wachtwoord"
|
#define D_WEB_ADMIN_PASSWORD "Web Admin Wachtwoord"
|
||||||
#define D_MQTT_ENABLE "MQTT ingeschakeld"
|
#define D_MQTT_ENABLE "MQTT ingeschakeld"
|
||||||
#define D_FRIENDLY_NAME "Beschrijvende naam"
|
#define D_FRIENDLY_NAME "Beschrijvende naam"
|
||||||
|
@ -301,12 +301,13 @@
|
||||||
#define D_SINGLE_DEVICE "een apparaat"
|
#define D_SINGLE_DEVICE "een apparaat"
|
||||||
#define D_MULTI_DEVICE "meer apparaten"
|
#define D_MULTI_DEVICE "meer apparaten"
|
||||||
|
|
||||||
#define D_CONFIGURE_TEMPLATE "Configure Template"
|
#define D_CONFIGURE_TEMPLATE "Configureer Sjabloon"
|
||||||
#define D_TEMPLATE_PARAMETERS "Template parameters"
|
#define D_TEMPLATE_PARAMETERS "Sjabloon parameters"
|
||||||
#define D_TEMPLATE_NAME "Name"
|
#define D_TEMPLATE_NAME "Naam"
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Op basis van"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Opties"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 ingang"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperatuur"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Bewaar configuratie"
|
#define D_SAVE_CONFIGURATION "Bewaar configuratie"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Zapisz ustawienia"
|
#define D_SAVE_CONFIGURATION "Zapisz ustawienia"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Gravar configuração"
|
#define D_SAVE_CONFIGURATION "Gravar configuração"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Salvar configuração"
|
#define D_SAVE_CONFIGURATION "Salvar configuração"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Сохранить конфигурацию"
|
#define D_SAVE_CONFIGURATION "Сохранить конфигурацию"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Ulož nastavenia"
|
#define D_SAVE_CONFIGURATION "Ulož nastavenia"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Spara konfiguration"
|
#define D_SAVE_CONFIGURATION "Spara konfiguration"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Ayarları Kaydet"
|
#define D_SAVE_CONFIGURATION "Ayarları Kaydet"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "Зберегти конфігурацію"
|
#define D_SAVE_CONFIGURATION "Зберегти конфігурацію"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "基于"
|
#define D_BASE_TYPE "基于"
|
||||||
#define D_TEMPLATE_FLAGS "选项"
|
#define D_TEMPLATE_FLAGS "选项"
|
||||||
#define D_ALLOW_ADC0 "ADC0 输入"
|
#define D_ALLOW_ADC0 "ADC0 输入"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "用户上拉选择"
|
#define D_ALLOW_PULLUP "用户上拉选择"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "保存设置"
|
#define D_SAVE_CONFIGURATION "保存设置"
|
||||||
|
|
|
@ -307,6 +307,7 @@
|
||||||
#define D_BASE_TYPE "Based on"
|
#define D_BASE_TYPE "Based on"
|
||||||
#define D_TEMPLATE_FLAGS "Options"
|
#define D_TEMPLATE_FLAGS "Options"
|
||||||
#define D_ALLOW_ADC0 "ADC0 input"
|
#define D_ALLOW_ADC0 "ADC0 input"
|
||||||
|
#define D_ALLOW_ADC0_TEMP "ADC0 temperature"
|
||||||
#define D_ALLOW_PULLUP "User pull-up selection"
|
#define D_ALLOW_PULLUP "User pull-up selection"
|
||||||
|
|
||||||
#define D_SAVE_CONFIGURATION "保存設置"
|
#define D_SAVE_CONFIGURATION "保存設置"
|
||||||
|
|
|
@ -338,10 +338,10 @@ typedef struct MYCFGIO {
|
||||||
uint8_t io[MAX_GPIO_PIN - MIN_FLASH_PINS];
|
uint8_t io[MAX_GPIO_PIN - MIN_FLASH_PINS];
|
||||||
} mycfgio;
|
} mycfgio;
|
||||||
|
|
||||||
#define GPIO_FLAG_USED 1 // Currently only one flag used
|
#define GPIO_FLAG_USED 2 // Currently two flags used
|
||||||
|
|
||||||
#define GPIO_FLAG_ADC0 1 // Allow ADC0 when define USE_ADC_VCC is disabled
|
#define GPIO_FLAG_ADC0 1 // Allow ADC0 when define USE_ADC_VCC is disabled
|
||||||
#define GPIO_FLAG_SPARE01 2 // Allow input pull-up control using SetOption62 - Superseded by user template editing
|
#define GPIO_FLAG_ADC0_TEMP 2 // Allow ADC0 as Temperature sensor when define USE_ADC_VCC is disabled
|
||||||
#define GPIO_FLAG_SPARE02 4
|
#define GPIO_FLAG_SPARE02 4
|
||||||
#define GPIO_FLAG_SPARE03 8
|
#define GPIO_FLAG_SPARE03 8
|
||||||
#define GPIO_FLAG_SPARE04 16
|
#define GPIO_FLAG_SPARE04 16
|
||||||
|
@ -353,7 +353,7 @@ typedef union {
|
||||||
uint8_t data;
|
uint8_t data;
|
||||||
struct {
|
struct {
|
||||||
uint8_t adc0 : 1; // Allow ADC0 when define USE_ADC_VCC is disabled
|
uint8_t adc0 : 1; // Allow ADC0 when define USE_ADC_VCC is disabled
|
||||||
uint8_t spare01 : 1;
|
uint8_t adc0_temp : 1; // Allow ADC0 as Temperature sensor when define USE_ADC_VCC is disabled
|
||||||
uint8_t spare02 : 1;
|
uint8_t spare02 : 1;
|
||||||
uint8_t spare03 : 1;
|
uint8_t spare03 : 1;
|
||||||
uint8_t spare04 : 1;
|
uint8_t spare04 : 1;
|
||||||
|
|
|
@ -299,6 +299,7 @@ const char HTTP_FORM_TEMPLATE_FLAG[] PROGMEM =
|
||||||
"<p></p>" // Keep close so do not use <br/>
|
"<p></p>" // Keep close so do not use <br/>
|
||||||
"<fieldset><legend><b> " D_TEMPLATE_FLAGS " </b></legend><p>"
|
"<fieldset><legend><b> " D_TEMPLATE_FLAGS " </b></legend><p>"
|
||||||
"<input id='c0' name='c0' type='checkbox'><b>" D_ALLOW_ADC0 "</b><br/>"
|
"<input id='c0' name='c0' type='checkbox'><b>" D_ALLOW_ADC0 "</b><br/>"
|
||||||
|
"<input id='c1' name='c1' type='checkbox'><b>" D_ALLOW_ADC0_TEMP "</b><br/>"
|
||||||
"</p></fieldset>";
|
"</p></fieldset>";
|
||||||
|
|
||||||
const char HTTP_FORM_MODULE[] PROGMEM =
|
const char HTTP_FORM_MODULE[] PROGMEM =
|
||||||
|
|
|
@ -24,6 +24,15 @@
|
||||||
|
|
||||||
#define XSNS_02 2
|
#define XSNS_02 2
|
||||||
|
|
||||||
|
#define TO_CELSIUS(x) ((x) - 273.15)
|
||||||
|
#define TO_KELVIN(x) ((x) + 273.15)
|
||||||
|
|
||||||
|
#define ANALOG_V33 3.3
|
||||||
|
#define ANALOG_R21 32000.0
|
||||||
|
#define ANALOG_R0 10000.0
|
||||||
|
#define ANALOG_T0 TO_KELVIN(25.0)
|
||||||
|
#define ANALOG_B 3350.0
|
||||||
|
|
||||||
uint16_t adc_last_value = 0;
|
uint16_t adc_last_value = 0;
|
||||||
|
|
||||||
uint16_t AdcRead(void)
|
uint16_t AdcRead(void)
|
||||||
|
@ -40,6 +49,7 @@ uint16_t AdcRead(void)
|
||||||
#ifdef USE_RULES
|
#ifdef USE_RULES
|
||||||
void AdcEvery250ms(void)
|
void AdcEvery250ms(void)
|
||||||
{
|
{
|
||||||
|
if (my_module_flag.adc0) {
|
||||||
uint16_t new_value = AdcRead();
|
uint16_t new_value = AdcRead();
|
||||||
if ((new_value < adc_last_value -10) || (new_value > adc_last_value +10)) {
|
if ((new_value < adc_last_value -10) || (new_value > adc_last_value +10)) {
|
||||||
adc_last_value = new_value;
|
adc_last_value = new_value;
|
||||||
|
@ -47,11 +57,13 @@ void AdcEvery250ms(void)
|
||||||
Response_P(PSTR("{\"ANALOG\":{\"A0div10\":%d}}"), (value > 99) ? 100 : value);
|
Response_P(PSTR("{\"ANALOG\":{\"A0div10\":%d}}"), (value > 99) ? 100 : value);
|
||||||
XdrvRulesProcess();
|
XdrvRulesProcess();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif // USE_RULES
|
#endif // USE_RULES
|
||||||
|
|
||||||
void AdcShow(bool json)
|
void AdcShow(bool json)
|
||||||
{
|
{
|
||||||
|
if (my_module_flag.adc0) {
|
||||||
uint16_t analog = AdcRead();
|
uint16_t analog = AdcRead();
|
||||||
|
|
||||||
if (json) {
|
if (json) {
|
||||||
|
@ -61,6 +73,35 @@ void AdcShow(bool json)
|
||||||
WSContentSend_PD(HTTP_SNS_ANALOG, "", 0, analog);
|
WSContentSend_PD(HTTP_SNS_ANALOG, "", 0, analog);
|
||||||
#endif // USE_WEBSERVER
|
#endif // USE_WEBSERVER
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if (my_module_flag.adc0_temp) {
|
||||||
|
int adc = analogRead(A0);
|
||||||
|
// Formule used by Shelly 2.5 analog temperature sensor
|
||||||
|
double Rt = (adc * ANALOG_R21) / (1024.0 * ANALOG_V33 - (double)adc);
|
||||||
|
double T = ANALOG_B / (ANALOG_B/ANALOG_T0 + log(Rt/ANALOG_R0));
|
||||||
|
double temp = ConvertTemp(TO_CELSIUS(T));
|
||||||
|
|
||||||
|
char temperature[33];
|
||||||
|
dtostrfd(temp, Settings.flag2.temperature_resolution, temperature);
|
||||||
|
|
||||||
|
if (json) {
|
||||||
|
ResponseAppend_P(JSON_SNS_TEMP, "ANALOG", temperature);
|
||||||
|
#ifdef USE_DOMOTICZ
|
||||||
|
if (0 == tele_period) {
|
||||||
|
DomoticzSensor(DZ_TEMP, temperature);
|
||||||
|
}
|
||||||
|
#endif // USE_DOMOTICZ
|
||||||
|
#ifdef USE_KNX
|
||||||
|
if (0 == tele_period) {
|
||||||
|
KnxSensor(KNX_TEMPERATURE, temp);
|
||||||
|
}
|
||||||
|
#endif // USE_KNX
|
||||||
|
#ifdef USE_WEBSERVER
|
||||||
|
} else {
|
||||||
|
WSContentSend_PD(HTTP_SNS_TEMP, "", temperature, TempUnit());
|
||||||
|
#endif // USE_WEBSERVER
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************************************\
|
/*********************************************************************************************\
|
||||||
|
@ -71,7 +112,7 @@ bool Xsns02(uint8_t function)
|
||||||
{
|
{
|
||||||
bool result = false;
|
bool result = false;
|
||||||
|
|
||||||
if (my_module_flag.adc0) {
|
if (my_module_flag.adc0 || my_module_flag.adc0_temp) {
|
||||||
switch (function) {
|
switch (function) {
|
||||||
#ifdef USE_RULES
|
#ifdef USE_RULES
|
||||||
case FUNC_EVERY_250_MSECOND:
|
case FUNC_EVERY_250_MSECOND:
|
||||||
|
|
Loading…
Reference in New Issue