From 591021a5568cf0360c4372f7a9e9a88fa42bc1a8 Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Mon, 12 Apr 2021 14:59:40 +0200 Subject: [PATCH] Add ESP32 Cpu Temperature --- tasmota/support_esp.ino | 15 ++++++++++++++- tasmota/support_tasmota.ino | 5 +++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/tasmota/support_esp.ino b/tasmota/support_esp.ino index 65dd3871c..19024ee1c 100644 --- a/tasmota/support_esp.ino +++ b/tasmota/support_esp.ino @@ -457,7 +457,6 @@ uint8_t* FlashDirectAccess(void) { return data; } - void *special_malloc(uint32_t size) { if (psramFound()) { return heap_caps_malloc(size, MALLOC_CAP_SPIRAM | MALLOC_CAP_8BIT); @@ -473,6 +472,20 @@ void *special_realloc(void *ptr, size_t size) { } } +#ifdef __cplusplus +extern "C" { +#endif +uint8_t temprature_sens_read(); // librtc.a(rtc_analog.o) +#ifdef __cplusplus +} +#endif + +float CpuTemperature(void) { +// return ConvertTemp(temperatureRead()); + uint8_t tf = temprature_sens_read(); // Fahrenheit + return ConvertTemp(((float)(tf -32) / 1.8)); +} + #endif // ESP32 /*********************************************************************************************\ diff --git a/tasmota/support_tasmota.ino b/tasmota/support_tasmota.ino index eb852ca77..17fc84a3f 100644 --- a/tasmota/support_tasmota.ino +++ b/tasmota/support_tasmota.ino @@ -821,6 +821,11 @@ bool MqttShowSensor(void) { ResponseAppendTime(); +#ifdef ESP32 + float t = CpuTemperature(); + ResponseAppend_P(PSTR(",\"Cpu" D_JSON_TEMPERATURE "\":%*_f"), Settings.flag2.temperature_resolution, &t); +#endif + int json_data_start = strlen(TasmotaGlobal.mqtt_data); for (uint32_t i = 0; i < MAX_SWITCHES; i++) { #ifdef USE_TM1638