#include "Arduino_LED_Matrix.h" #include "WiFiS3.h" #include "arduino_secrets.h" char ssid[] = SECRET_SSID; char pw[] = SECRET_PASS; byte frame_horizontal[8][12] ={ { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 }, }; byte frame_vertical[8][12] ={ { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, }, }; WiFiServer server(80); void debug(char * msg, char *var) { Serial.print(msg); Serial.println(var); } void setup() { Serial.begin(9600); // initialize serial communication // check for the WiFi module: if (WiFi.status() == WL_NO_MODULE) { Serial.println("Communication with WiFi module failed!"); // don't continue while (true); } String fv = WiFi.firmwareVersion(); if (fv < WIFI_FIRMWARE_LATEST_VERSION) { Serial.println("Please upgrade the firmware"); } long count = 0; // attempt to connect to WiFi network: int status = WL_IDLE_STATUS; while (status != WL_CONNECTED) { debug("trying to connect to ",ssid); status = WiFi.begin(ssid, pw); // Serial.print("status ="); // Serial.println(WiFi.status()); char scount[10]; sprintf(scount, "%d", count); debug("Retry count: ", scount); count++; // wait 10 seconds for connection: delay(5000); } Serial.println("erzeuge Server"); server.begin(); // start the web server on port 80 printWifiStatus(); // you're connected now, so print out the status } char fullurl[2048]; int urlcount=0; void loop() { //Serial.println("waiting for connection..."); WiFiClient client = server.available(); // listen for incoming clients // Serial.println(client); if (client) { client.o // if you get a client, Serial.println("new client"); // print a message out the serial port String currentLine = ""; // make a String to hold incoming data from the client boolean currentLineIsBlank = true; boolean firstLine = true; /* only the first line in the array */ while (client.connected()) { // loop while the client's connected if (client.available()) { // if there's bytes to read from the client, String HTTP_header = client.readStringUntil('\n'); // read the header line of HTTP request if(HTTP_header.equals("\r")) { break; } char c = client.read(); // read a byte, then if(firstLine && urlcount < 2048) { fullurl[urlcount] = c; urlcount++; } if (c == '\n') { // you're starting a new line currentLineIsBlank = true; firstLine = false; } else if (c != '\r') { // you've gotten a character on the current line currentLineIsBlank = false; } if (c == '\n' && currentLineIsBlank) { // send a standard http response header client.println("OK"); } } debug("fullurl=",fullurl); // if you've gotten to the end of the line (received a newline // character) and the line is blank, the http request has ended, // so you can send a reply sendResponse(client); } // close the connection: client.stop(); // Serial.println("client disconnected"); } } void sendResponse(WiFiClient client) { // send the HTTP response // send the HTTP response header // Serial.println("sending response"); client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); // the connection will be closed after completion of the response client.println(); // the separator between HTTP header and body // send the HTTP response body client.println(""); client.println(""); client.println(""); client.println(""); client.println(""); client.println("

"); } void printWifiStatus() { //SSID of the network you're attached to: Serial.print("SSID: "); Serial.println(WiFi.SSID()); // print your board's IP address: IPAddress ip = WiFi.localIP(); Serial.print("IP Address: "); Serial.println(ip); // print the received signal strength: long rssi = WiFi.RSSI(); Serial.print("signal strength (RSSI):"); Serial.print(rssi); Serial.println(" dBm"); // print where to go in a browser: Serial.print("To see this page in action, open a browser to http://"); Serial.println(ip); }