From 2f2a999368f22f2c6b3105ab481987c2025bc50e Mon Sep 17 00:00:00 2001
From: John Robertson <john@cirtech.co.uk>
Date: Thu, 17 Mar 2022 19:35:33 +0000
Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20MKS=20TinyBee=20-=202.5V=20ADC?=
 =?UTF-8?q?=20Vref=20(#23903)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Marlin/src/HAL/ESP32/HAL.cpp             | 6 +++++-
 Marlin/src/pins/esp32/pins_MKS_TINYBEE.h | 5 +++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/Marlin/src/HAL/ESP32/HAL.cpp b/Marlin/src/HAL/ESP32/HAL.cpp
index 4000dcc908..c1a44a3dea 100644
--- a/Marlin/src/HAL/ESP32/HAL.cpp
+++ b/Marlin/src/HAL/ESP32/HAL.cpp
@@ -229,11 +229,15 @@ void MarlinHAL::adc_init() {
   }
 }
 
+#ifndef ADC_REFERENCE_VOLTAGE
+  #define ADC_REFERENCE_VOLTAGE 3.3
+#endif
+
 void MarlinHAL::adc_start(const pin_t pin) {
   const adc1_channel_t chan = get_channel(pin);
   uint32_t mv;
   esp_adc_cal_get_voltage((adc_channel_t)chan, &characteristics[attenuations[chan]], &mv);
-  adc_result = mv * 1023.0 / 3300.0;
+  adc_result = mv * 1023.0f / float(ADC_REFERENCE_VOLTAGE) / 1000.0f;
 
   // Change the attenuation level based on the new reading
   adc_atten_t atten;
diff --git a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h
index 122dad2146..68b8ed4ac8 100644
--- a/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h
+++ b/Marlin/src/pins/esp32/pins_MKS_TINYBEE.h
@@ -113,6 +113,11 @@
 //#define E0_AUTO_FAN_PIN                    148  // need to update Configuration_adv.h @section extruder
 //#define E1_AUTO_FAN_PIN                    149  // need to update Configuration_adv.h @section extruder
 
+//
+// ADC Reference Voltage
+//
+#define ADC_REFERENCE_VOLTAGE                2.5  // 2.5V reference VDDA
+
 //
 // MicroSD card
 //