when i invoke function sendCommand() the esp crashes and reboots. I think it has something to do with (char*) "NODECM", (char*)"NODECM" im trying to send those chars but why is it causing it to crash?
#include <SPI.h>
#include <Wire.h>
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
IPAddress local_IP(192, 168, 4, 1);
IPAddress gateway(192, 168, 4, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress Client1(192, 168, 4, 100);
const char* ssid = "LCS";
const char* password = "a1b2c3d4";
WiFiUDP Udp;
unsigned int localUdpPort = 4210; // local port to listen on
unsigned int clientPort = 4220;
char incomingPacket[800]; // buffer for incoming packets
int _pwmVal = 600;
#define OLED_RESET LED_BUILTIN //4
Adafruit_SSD1306 display(OLED_RESET);
void sendCommand(IPAddress to, char* data, char* delimiter, char* delimiter2 ) {
char* packetData = data;
Udp.beginPacket(to, clientPort);
Udp.write((const uint8_t*)delimiter, sizeof(delimiter) - 1);
Udp.write((const char*)packetData, sizeof(packetData));
Udp.write((const uint8_t*)delimiter2, sizeof(delimiter2) - 1);
Udp.endPacket();
}
void setup() {
Serial.begin(115200);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.display();
WiFi.setOutputPower(20.5);
WiFi.persistent(0);
Serial.begin(115200);
Serial.println();
WiFi.mode(WIFI_AP);
while (!WiFi.softAP(ssid, password, 9, false, 15)) {
delay(500);
Serial.print(".");
}
Serial.println(WiFi.softAPConfig(local_IP, gateway, subnet) ? "Ready" : "Failed!");
Serial.printf("Now listening at IP %s, UDP port %d\n", WiFi.softAPIP().toString().c_str(), localUdpPort);
}
void loop() {
_pwmVal = 600;
sendCommand(Client1, (char*)_pwmVal, (char*) "NODECM", (char*)"NODECM");
// display.clearDisplay();
// display.setCursor(0, 0);
// display.println("Sent1");
// display.setCursor(1, 1);
// display.display();
delay(2000);
}