Skip to content

Commit

Permalink
data sent over wifi #27
Browse files Browse the repository at this point in the history
  • Loading branch information
ibrahimmansur4 committed Sep 1, 2023
1 parent 5ceebec commit ff3e6cd
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 17 deletions.
8 changes: 6 additions & 2 deletions .vscode/c_cpp_properties.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,10 @@
"/home/ibrahim/mobile_robotics_basics/lib/Encoder Control",
"/home/ibrahim/mobile_robotics_basics/lib/Motor Control",
"/home/ibrahim/mobile_robotics_basics/lib/Wifi_data_processing",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/ESPAsyncWebServer-esphome/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FS/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AsyncTCP-esphome/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AS5600",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/SoftWire/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AsyncDelay/src",
Expand Down Expand Up @@ -223,7 +226,6 @@
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/ESPmDNS/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/Ethernet/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FFat/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FS/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPClient/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPUpdate/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPUpdateServer/src",
Expand Down Expand Up @@ -254,7 +256,10 @@
"/home/ibrahim/mobile_robotics_basics/lib/Encoder Control",
"/home/ibrahim/mobile_robotics_basics/lib/Motor Control",
"/home/ibrahim/mobile_robotics_basics/lib/Wifi_data_processing",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/ESPAsyncWebServer-esphome/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FS/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AsyncTCP-esphome/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AS5600",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/SoftWire/src",
"/home/ibrahim/mobile_robotics_basics/.pio/libdeps/esp32doit-devkit-v1/AsyncDelay/src",
Expand Down Expand Up @@ -463,7 +468,6 @@
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/ESPmDNS/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/Ethernet/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FFat/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/FS/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPClient/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPUpdate/src",
"/home/ibrahim/.platformio/packages/framework-arduinoespressif32/libraries/HTTPUpdateServer/src",
Expand Down
44 changes: 35 additions & 9 deletions lib/Wifi_data_processing/wifi_data_processing.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#include "wifi_data_processing.h"
#include <ESPAsyncWebServer.h>
WiFiClient client;
WiFiServer server(80);
const char *ssid = "Jhelum.net [Luqman House]";
Expand Down Expand Up @@ -34,15 +35,40 @@ String processClientRequest(void)

void processCoordinates(float x, float y)
{
// Process the received x and y coordinates
// Replace this with the actual code to handle the coordinates
// Process the received x and y coordinates
// Replace this with the actual code to handle the coordinates

// For example, you can print the coordinates to the Serial Monitor
Serial.print("Received Coordinates - X: ");
Serial.print(x);
Serial.print(" | Y: ");
Serial.println(y);
// For example, you can print the coordinates to the Serial Monitor
Serial.print("Received Coordinates - X: ");
Serial.print(x);
Serial.print(" | Y: ");
Serial.println(y);

// You can also perform any other actions or calculations based on the coordinates
// For instance, controlling motors, performing calculations, etc.
// You can also perform any other actions or calculations based on the coordinates
// For instance, controlling motors, performing calculations, etc.
}

void sendPositionOverWiFi(float x, float y)
{
if (client.connect(WiFi.localIP(), 80))
{
Serial.println("Connected to server");

// Create a JSON string to send
String dataToSend = String(x) + ","+ String(y);

// Send a POST request to the server
client.println("POST /data HTTP/1.1");
client.println("Host: " + String(WiFi.localIP()));
client.println("Content-Type: application/json");
client.print("Content-Length: ");
client.println(dataToSend.length());
client.println();
client.println(dataToSend);

Serial.println("Data sent to server" + dataToSend);
client.stop();
} else {
Serial.println("Connection to server failed");
}
}
2 changes: 2 additions & 0 deletions lib/Wifi_data_processing/wifi_data_processing.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#define WIFI_DATA_H

#include <WiFi.h>
#include <ESPAsyncWebServer.h>

// Global Variables
extern WiFiClient client;
Expand All @@ -13,5 +14,6 @@ extern String data;
void setupWiFi();
String processClientRequest();
void processCoordinates(float x, float y);
void sendPositionOverWiFi(float x, float y);

#endif
1 change: 1 addition & 0 deletions platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,4 @@ lib_deps =
stevemarple/SoftWire@^2.0.9
stevemarple/AsyncDelay@^1.1.2
robtillaart/AS5600@^0.4.0
ottowinter/ESPAsyncWebServer-esphome@^3.0.0
14 changes: 8 additions & 6 deletions src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,17 @@ void setup()

void loop()
{
// calculate_traveling();
// Serial.print("X: " );
// Serial.print(x);
// Serial.print(" | Y: ");
// Serial.print (y);
calculate_traveling();
Serial.print("X: " );
Serial.print(x);
Serial.print(" | Y: ");
Serial.print (y);
client = server.available();
if (!client)
return;


// Send the current x and y positions over WiFi
sendPositionOverWiFi(x, y);
data = processClientRequest();
Serial.println(data);
processData(data);
Expand Down

0 comments on commit ff3e6cd

Please sign in to comment.