From bbc3b195da2212c4e73ce9c98e7d02a46c1523dd Mon Sep 17 00:00:00 2001 From: fryakatkop Date: Sat, 21 Oct 2017 20:11:05 +0200 Subject: [PATCH] added primitive read of laser return (poc for future preset feature) --- esp8266-laser.ino | 66 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 45 insertions(+), 21 deletions(-) diff --git a/esp8266-laser.ino b/esp8266-laser.ino index cd37a61..4fcefb6 100644 --- a/esp8266-laser.ino +++ b/esp8266-laser.ino @@ -16,13 +16,13 @@ SoftwareSerial laserSerial(14, 12, false, 256); String ssid = ""; String password = ""; -int apMode = 1; // 0: client, 1: AP (default) // will be overwriten -int apModeRuntime = 0; +int apMode = 1; // 0: client, 1: AP (default) // will be overwriten +int apModeRuntime = 0; int wifiTimeout = 10000; //ms // [0] laser[1] m1 [2] m2 [3] m3 -byte lmValues[4] = {0,0,0,0}; +byte lmValues[4] = {0, 0, 0, 0}; /* Soft AP network parameters */ @@ -119,7 +119,7 @@ void handleFileList() { void handleLaser(String uri) { String laserValue = uri.substring(7); - if(laserValue.toInt() > 128) { + if (laserValue.toInt() > 128) { lmValues[0] = 128; laserValue = "128"; } @@ -127,7 +127,7 @@ void handleLaser(String uri) { lmValues[0] = laserValue.toInt(); } - + String msg = "AT SLV "; msg += laserValue; @@ -145,8 +145,8 @@ void handleLaser(String uri) void handleMotor(String uri) { String motorNr = uri.substring(7, 8); - String motorValue = uri.substring(9); - if(motorValue.toInt() > 128) { + String motorValue = uri.substring(9); + if (motorValue.toInt() > 128) { lmValues[motorNr.toInt()] = 128; motorValue = "128"; } @@ -172,18 +172,18 @@ void handleMotor(String uri) } void handleReadValues() -{ +{ String json = "{ \"handledReadValues\":"; json += "{\"laser\":\"" + (String)lmValues[0] + "\","; json += "\"motors\": {\"1\":\"" + (String)lmValues[1] + "\","; json += "\"2\":\"" + (String)lmValues[2] + "\","; - json += "\"3\":\"" + (String)lmValues[3] + "\"}}}"; + json += "\"3\":\"" + (String)lmValues[3] + "\"}}}"; server.send(200, "text/json", json); json = String(); } void handleReadWifi() -{ +{ String json = "{ \"handledReadWifi\":"; json += "{\"apMode\":\"" + (String)apMode + "\","; json += "\"ssid\":\"" + (String)ssid + "\","; @@ -325,18 +325,19 @@ boolean setupWifi() { void setup(void) { laserSerial.begin(9600); + laserSerial.flush(); Serial.begin(115200); Serial.print("\n"); SPIFFS.begin(); -// { -// Dir dir = SPIFFS.openDir("/"); -// while (dir.next()) { -// String fileName = dir.fileName(); -// size_t fileSize = dir.fileSize(); -// Serial.printf("FS File: %s, size: %s\n", fileName.c_str(), formatBytes(fileSize).c_str()); -// } -// Serial.printf("\n"); -// } + // { + // Dir dir = SPIFFS.openDir("/"); + // while (dir.next()) { + // String fileName = dir.fileName(); + // size_t fileSize = dir.fileSize(); + // Serial.printf("FS File: %s, size: %s\n", fileName.c_str(), formatBytes(fileSize).c_str()); + // } + // Serial.printf("\n"); + // } //WIFI INIT WiFi.disconnect(); @@ -413,8 +414,8 @@ void handleNotFound() { handleApmode(uri); return; } - if (uri.substring(0,12) == "/config.json") - { + if (uri.substring(0, 12) == "/config.json") + { server.send(403, "text/plain", "Forbidden"); return; } @@ -427,6 +428,29 @@ void handleNotFound() { void loop(void) { server.handleClient(); + + + int i = 0; + char commandbuffer[100]; + String sBuffer; + + if (laserSerial.available()) { + delay(100); + + while ( laserSerial.available() && i < 99) { + commandbuffer[i] = laserSerial.read(); + i++; + } + commandbuffer[i++] = '\0'; + } + + if (i > 0) + { + delay(200); + Serial.print("received from laser: "); + Serial.println((char*)commandbuffer); +// Serial.println(()sBuffer); + } }