diff --git a/arduino_code/test_webpage_sensors.ino b/arduino_code/test_webpage_sensors.ino
new file mode 100644
index 0000000000000000000000000000000000000000..eb54e3146643ed54c9b66cb694b855694aad5697
--- /dev/null
+++ b/arduino_code/test_webpage_sensors.ino
@@ -0,0 +1,262 @@
+/*********
+  Rui Santos
+  Complete project details at https://randomnerdtutorials.com/esp8266-dht11dht22-temperature-and-humidity-web-server-with-arduino-ide/
+*********/
+
+// Import required libraries
+#include <Arduino.h>
+#include <WiFi.h>
+#include <ESPAsyncWebServer.h>
+#include <AsyncTCP.h>
+
+// Replace with your network credentials
+const char* ssid = "Connectify-ESP32 Boot";
+const char* password = "temp_pass1234";
+
+#define PRESSUREPIN1 34
+#define PRESSUREPIN2 35
+#define motorIN1
+#define motorIN2
+#define motorIN3
+#define motorIN4
+
+#define PRESSUREGOAL1 357
+#define PRESSUREGOAL2 2034
+
+// current temperature & humidity, updated in loop()
+int pressure1 = 0.0;
+int pressure2 = 0.0;
+float motorSpeed = 0.0;
+
+// Create AsyncWebServer object on port 80
+AsyncWebServer server(80);
+
+// Generally, you should use "unsigned long" for variables that hold time
+// The value will quickly become too large for an int to store
+unsigned long previousMillis = 0;    // will store last time DHT was updated
+
+// Updates DHT readings every 10 seconds
+const long interval = 1;  
+
+const char index_html[] PROGMEM = R"rawliteral(
+<!DOCTYPE HTML><html>
+<head>
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">
+  <style>
+    html {
+     font-family: Arial;
+     display: inline-block;
+     margin: 0px auto;
+     text-align: center;
+    }
+    h2 { font-size: 3.0rem; }
+    p { font-size: 3.0rem; }
+    .units { font-size: 1.2rem; }
+    .dht-labels{
+      font-size: 1.5rem;
+      vertical-align:middle;
+      padding-bottom: 15px;
+    }
+  </style>
+</head>
+<body>
+  <h2>Remotely Adjustable Boot</h2>
+  <p>
+    <i class="fas fa-thermometer-half" style="color:#059e8a;"></i> 
+    <span class="dht-labels">Pressure LEFT</span> 
+    <span id="pressure1">%PRESSURE1%</span>
+    <sup class="units">mmHg</sup>
+  </p>
+  <p>
+    <i class="fas fa-thermometer-half" style="color:#059e8a;"></i> 
+    <span class="dht-labels">Pressure RIGHT</span> 
+    <span id="pressure2">%PRESSURE2%</span>
+    <sup class="units">mmHg</sup>
+  </p>
+  <p>
+    <i class="fas fa-tint" style="color:#00add6;"></i> 
+    <span class="dht-labels">Motor Speed</span>
+    <span id="motorspeed">%MOTORSPEED%</span>
+    <sup class="units">%</sup>
+  </p>
+</body>
+<script>
+setInterval(function ( ) {
+  var xhttp = new XMLHttpRequest();
+  xhttp.onreadystatechange = function() {
+    if (this.readyState == 4 && this.status == 200) {
+      document.getElementById("pressure1").innerHTML = this.responseText;
+    }
+  };
+  xhttp.open("GET", "/pressure1", true);
+  xhttp.send();
+}, 0.1 ) ;
+
+setInterval(function ( ) {
+  var xhttp = new XMLHttpRequest();
+  xhttp.onreadystatechange = function() {
+    if (this.readyState == 4 && this.status == 200) {
+      document.getElementById("pressure2").innerHTML = this.responseText;
+    }
+  };
+  xhttp.open("GET", "/pressure2", true);
+  xhttp.send();
+}, 0.1 ) ;
+
+
+setInterval(function ( ) {
+  var xhttp = new XMLHttpRequest();
+  xhttp.onreadystatechange = function() {
+    if (this.readyState == 4 && this.status == 200) {
+      document.getElementById("motorspeed").innerHTML = this.responseText;
+    }
+  };
+  xhttp.open("GET", "/motorspeed", true);
+  xhttp.send();
+}, 0.1 ) ;
+</script>
+</html>)rawliteral";
+
+// Replaces placeholder with DHT values
+String processor(const String& var){
+  //Serial.println(var);
+  if(var == "PRESSURE1"){
+    return String(pressure1);
+  }
+  else if(var == "PRESSURE2"){
+    return String(pressure2);
+  }
+  else if(var == "MOTORSPEED"){
+    return String(motorSpeed);
+  }
+  return String();
+}
+
+void setup(){
+  // Serial port for debugging purposes
+  Serial.begin(115200);
+  
+  // Connect to Wi-Fi
+  WiFi.begin(ssid, password);
+  Serial.println("Connecting to WiFi");
+  while (WiFi.status() != WL_CONNECTED) {
+    delay(1000);
+    Serial.println(".");
+  }
+
+  // Print ESP8266 Local IP Address
+  Serial.println(WiFi.localIP());
+
+  // Route for root / web page
+  server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){
+    request->send_P(200, "text/html", index_html, processor);
+  });
+  server.on("/pressure1", HTTP_GET, [](AsyncWebServerRequest *request){
+    request->send_P(200, "text/plain", String(pressure1).c_str());
+  });
+  server.on("/pressure2", HTTP_GET, [](AsyncWebServerRequest *request){
+    request->send_P(200, "text/plain", String(pressure2).c_str());
+  });
+  server.on("/motorspeed", HTTP_GET, [](AsyncWebServerRequest *request){
+    request->send_P(200, "text/plain", String(motorSpeed).c_str());
+  });
+
+  // Start server
+  server.begin();
+}
+ 
+void loop(){  
+  unsigned long currentMillis = millis();
+  if (currentMillis - previousMillis >= interval) {
+    
+    previousMillis = currentMillis;
+    
+    int intervals1[7] = {0,0,0,0,0,0,0};
+    int intervalValues1[7] = {0,0,0,0,0,0,0};
+    int intervals2[7] = {0,0,0,0,0,0,0};
+    int intervalValues2[7] = {0,0,0,0,0,0,0};
+    
+     for(int counter = 0; counter < 10; counter ++) {
+      int a1 = analogRead(PRESSUREPIN1);
+      int a2 = analogRead(PRESSUREPIN2);
+      int aModulus1 = int (a1 / (600));
+      int aModulus2 = int (a2 / (600));
+      intervals1[aModulus1] += 1;
+      intervalValues1[aModulus1] += int(a1 % 600);
+
+      intervals2[aModulus2] += 1;
+      intervalValues2[aModulus2] += int(a2 % 600);
+    
+      Serial.println("Reading #" + String(counter) + ": " + String(a1) + ", " + String(aModulus1));
+      Serial.println("Reading #" + String(counter) + ": " + String(a2) + ", " + String(aModulus2));
+    
+      delay(10);
+     }
+    
+     Serial.println("Intervals array #1: [");
+     for (int counter = 0; counter < 7; counter++) {
+      Serial.print(intervals1[counter]);
+      Serial.print(",");
+     }
+     Serial.print("]");
+    
+     Serial.println("Interval Values array #1: ");
+     for (int counter = 0; counter < 7; counter++) {
+      Serial.print(intervalValues1[counter]);
+      Serial.print(",");
+     }
+     Serial.print("]");
+    
+     Serial.println("**********");
+     
+     Serial.println("Intervals array #2: [");
+     for (int counter = 0; counter < 7; counter++) {
+      Serial.print(intervals2[counter]);
+      Serial.print(",");
+     }
+     Serial.print("]");
+    
+     Serial.println("Interval Values array #2: ");
+     for (int counter = 0; counter < 7; counter++) {
+      Serial.print(intervalValues2[counter]);
+      Serial.print(",");
+     }
+     Serial.print("]");
+    
+     Serial.println("**********");
+     
+     int maxIntervalSize1 = intervals1[0];
+     int maxIntervalIndex1 = 0;
+     for (int index = 1; index < 7; index ++) {
+      if (intervals1[index] > maxIntervalSize1) {
+        maxIntervalIndex1 =  index;
+        maxIntervalSize1 = intervals1[index];
+      }
+     }
+     Serial.println("maxIntervalIndex #1: " + maxIntervalIndex1);
+     int maxIntervalSize2 = intervals2[0];
+     int maxIntervalIndex2 = 0;
+     for (int index = 1; index < 7; index ++) {
+      if (intervals2[index] > maxIntervalSize2) {
+        maxIntervalIndex2 =  index;
+        maxIntervalSize2 = intervals2[index];
+      }
+     }
+     Serial.println("maxIntervalIndex #2: " + maxIntervalIndex2);
+     pressure1 = (intervalValues1[maxIntervalIndex1]/maxIntervalSize1)+ maxIntervalIndex1*600;
+     pressure2 = (intervalValues2[maxIntervalIndex2]/maxIntervalSize2)+ maxIntervalIndex2*600;
+     Serial.println("adcValue #1: " + pressure1);
+     Serial.println("adcValue #2: " + pressure2);
+     Serial.println("******************************");
+    
+    float newMotorSpeed = 0;
+    if (isnan(newMotorSpeed)) {
+      Serial.println("Failed to read from DHT sensor!");
+    }
+    else {
+      motorSpeed = newMotorSpeed;
+      Serial.println(motorSpeed);
+    }
+  }
+}
\ No newline at end of file