diff --git a/packages/esp32s3.yaml b/packages/esp32s3.yaml
index 77e3a75dd5ffa33936848373e1551c88c570f79a..d1a67bea36834ada948d77df4c7ad7e2f7d52395 100644
--- a/packages/esp32s3.yaml
+++ b/packages/esp32s3.yaml
@@ -22,7 +22,7 @@ status_led:
 i2c:
   sda: 5
   scl: 6
-  frequency: 50kHz  # required for MLX90614
+  frequency: 100kHz  # required for MLX90614
 
 wifi:
   power_save_mode: none
diff --git a/packages/light_settings.yaml b/packages/light_settings.yaml
index 439b7dc2af720afb1ac1bf0b68098542eaad8d4c..f788608a47f42e695244f0342583f74e90cecf43 100644
--- a/packages/light_settings.yaml
+++ b/packages/light_settings.yaml
@@ -1,9 +1,9 @@
 substitutions:
   # Schedules
-  schedule_grow_on: "0 0 3 * * *"
-  schedule_grow_off: "0 0 21 * * *"
-  schedule_bloom_on: "0 0 6 * * *"
-  schedule_bloom_off: "0 0 18 * * *"
+  schedule_grow_on: "0 0 23 * * *"
+  schedule_grow_off: "0 0 17 * * *"
+  schedule_bloom_on: "0 0 7 * * *"
+  schedule_bloom_off: "0 0 19 * * *"
 
 sensor:
   - platform: template
diff --git a/packages/water_ec.yaml b/packages/water_ec.yaml
index 8c41b8db5f8a5f75962303c3a77cb51d23465f32..bbbf897b24af5cd447d83575db6df7e6a45c47f1 100644
--- a/packages/water_ec.yaml
+++ b/packages/water_ec.yaml
@@ -1,14 +1,13 @@
 substitutions:
-  ec_k: '0.97090'
   # ec_ref & ec_res2: https://github.com/DFRobot/DFRobot_EC/blob/master/DFRobot_EC.cpp#L28 // https://www.dfrobot.com/forum/topic/28708
   ec_ref: '200.0'
   ec_res2: '820.0'
 
 globals:
-  - id: ec_k  # raw V value from probe using EC 1.1413 calibration solution.
+  - id: ec_k  # raw V value from probe using EC 1.413 or 12.88 calibration solution.
     type: float
     restore_value: yes
-    initial_value: ${ec_k}
+    initial_value: '0.0'
   
 sensor:
   - platform: ads1115
diff --git a/packages/water_level.yaml b/packages/water_level.yaml
index 001f7f43a44511d9d97c30b9825e1e7ace923779..d285733673b86f5033f9ff6727f7c47a1f102bae 100644
--- a/packages/water_level.yaml
+++ b/packages/water_level.yaml
@@ -1,6 +1,6 @@
 substitutions:
-  waterlevel_current_empty_system: '3.75' # mA at 0mm
-  waterlevel_current_empty_tank: '3.11' # mA at 0mm
+  waterlevel_current_empty_system: '3.48' # mA at 0mm
+  waterlevel_current_empty_tank: '3.03' # mA at 0mm
   waterlevel_range: '1000' # mm
   waterlevel_density: '1' # water
 
diff --git a/packages/water_ph.yaml b/packages/water_ph.yaml
index b38ffba8de6935160017a6744dd7f610ed33afb0..587e4f35103f48156e9537e4a0500d793889ab41 100644
--- a/packages/water_ph.yaml
+++ b/packages/water_ph.yaml
@@ -1,22 +1,20 @@
-substitutions:
-  ph400_raw: '2.06785'
-  ph686_raw: '1.57897'
-  ph700_raw: '1.54883'
-  ph918_raw: '1.21447'
-
 globals:
-  - id: ph400_raw  # raw V value from probe using pH 4.0 calibration solution.
+  - id: ph400_voltage  # raw V value from probe using pH 4.0 calibration solution.
+    type: float
+    restore_value: yes
+    initial_value: '0.0'
+  - id: ph700_voltage  # raw V value from probe using pH 7.0 calibration solution.
     type: float
     restore_value: yes
-    initial_value: ${ph400_raw}
-  - id: ph700_raw  # raw V value from probe using pH 7.0 calibration solution.
+    initial_value: '0.0'
+  - id: ph918_voltage # raw V value from probe using pH 9.18 calibration solution.
     type: float
     restore_value: yes
-    initial_value: ${ph700_raw}
-  - id: ph918_raw # raw V value from probe using pH 9.18 calibration solution.
+    initial_value: '0.0'
+  - id: ph1001_voltage # raw V value from probe using pH 9.18 calibration solution.
     type: float
     restore_value: yes
-    initial_value: ${ph918_raw}
+    initial_value: '0.0'
 
 sensor:
   - platform: ads1115
@@ -34,19 +32,25 @@ sensor:
   #   unit_of_measurement: "V"
   #   accuracy_decimals: 5
   #   update_interval: 5s
-  #   lambda: !lambda return id(ph400_raw);
+  #   lambda: !lambda return id(ph400_voltage);
   # - platform: template
   #   name: "pH: 7.00 Calibration Value"
   #   unit_of_measurement: "V"
   #   accuracy_decimals: 5
   #   update_interval: 5s
-  #   lambda: !lambda return id(ph700_raw);
+  #   lambda: !lambda return id(ph700_voltage);
   # - platform: template
   #   name: "pH: 9.18 Calibration Value"
   #   unit_of_measurement: "V"
   #   accuracy_decimals: 5
   #   update_interval: 5s
-  #   lambda: !lambda return id(ph918_raw);
+  #   lambda: !lambda return id(ph918_voltage);
+  # - platform: template
+  #   name: "pH: 10.01 Calibration Value"
+  #   unit_of_measurement: "V"
+  #   accuracy_decimals: 5
+  #   update_interval: 5s
+  #   lambda: !lambda return id(ph1001_voltage);
   - platform: template
     name: "pH"
     id: ph
@@ -56,12 +60,15 @@ sensor:
     lambda: |-
       float slope;
       float intersect;
-      if (id(ph_slope_points).active_index() == 1) {
-        slope = (9.18 - 4.0) / ((id(ph918_raw)-1.5) / 3.0 - (id(ph400_raw)-1.5) / 3.0);
-        intersect =  9.18 - slope * (id(ph918_raw)-1.5) / 3.0;
+      if (id(ph_slope_points).active_index() == 2) {
+        slope = (10.01 - 4.0) / ((id(ph1001_voltage)-1.5) / 3.0 - (id(ph400_voltage)-1.5) / 3.0);
+        intersect =  10.01 - slope * (id(ph1001_voltage)-1.5) / 3.0;
+      } else if (id(ph_slope_points).active_index() == 1) {
+        slope = (9.18 - 4.0) / ((id(ph918_voltage)-1.5) / 3.0 - (id(ph400_voltage)-1.5) / 3.0);
+        intersect =  9.18 - slope * (id(ph918_voltage)-1.5) / 3.0;
       } else {
-        slope = (7.0 - 4.0) / ((id(ph700_raw)-1.5) / 3.0 - (id(ph400_raw)-1.5) / 3.0);
-        intersect =  7.0 - slope * (id(ph700_raw)-1.5) / 3.0;
+        slope = (7.0 - 4.0) / ((id(ph700_voltage)-1.5) / 3.0 - (id(ph400_voltage)-1.5) / 3.0);
+        intersect =  7.0 - slope * (id(ph700_voltage)-1.5) / 3.0;
       }
       return slope * (id(analog_ph).state-1.5) / 3.0 + intersect; 
 
@@ -69,7 +76,7 @@ select:
   - platform: template
     id: ph_slope_points
     name: "pH: Calibration Points"
-    options: ["4.00/7.00", "4.00/9.18"]
+    options: ["4.00/7.00", "4.00/9.18", "4.00/10.01"]
     initial_option: "4.00/9.18"
     optimistic: true
     restore_value: true
@@ -79,17 +86,23 @@ button:
     name: "pH: Calibrate 4.00"
     on_press:
       - globals.set:
-          id: ph400_raw
+          id: ph400_voltage
           value: !lambda return id(analog_ph).state;
   - platform: template
     name: "pH: Calibrate 7.00"
     on_press:
       - globals.set:
-          id: ph700_raw
+          id: ph700_voltage
           value: !lambda return id(analog_ph).state;
   - platform: template
     name: "pH: Calibrate 9.18"
     on_press:
       - globals.set:
-          id: ph918_raw
+          id: ph918_voltage
+          value: !lambda return id(analog_ph).state;
+  - platform: template
+    name: "pH: Calibrate 10.01"
+    on_press:
+      - globals.set:
+          id: ph1001_voltage
           value: !lambda return id(analog_ph).state;