Super eenvoudig dashboarding rechtstreeks op het linkit een (2 / 2 stap)

Stap 2: Tot slot een eenvoudige oplossing


Dit is wat ik kwam met. Iets super eenvoudig. Geen javascript helemaal. Geen afhankelijkheden, geen externe json laden pagina's, gewoon simpel html met een refresh-tag. Het niet het mooiste ding in de wereld, maar het werkt.

Allermeest naar de walkthrough is gelijk aan wat is in dus ik zal niet herhalen dat allemaal hier.

Ik zal echter worden gewezen op enkele dingen die u moet controleren:

 <p><meta http-equiv="refresh" content="30" /></p> 

Dit dwingt de pagina te herladen om de 30 seconden. Het is zo klein dat u niet zult opmerken.

 String batteryLevel = String(LBattery.level());String batteryCharging = String(LBattery.isCharging()); 

Ik Converteer de gehele getallen van de LBattery functies rechtstreeks in Strings voor het gemak van afdrukken.

De tag < meter > weer niet op alle browsers. Bijvoorbeeld, in Safari op iphone van mijn vrouw maakt het zo leeg.

Ook, zoals je zien in de opmerkingen dat dit is gebaseerd op Apache licentie code uit Evothings. Gelieve geen kopie en geplakt van de vakken van de code in dit voorbeeld. Bepaalde escape-tekens werden gebruikt (dit hulpmiddel was vrij nuttig in het maken van dingen correct af te drukken voor dit instructable: http://www.accessify.com/tools-and-wizards/developer-tools/quick-escape/default.php). In plaats daarvan de code van mijn github hier downloaden: https://github.com/stirobot/evothings-examples/blob/master/examples/mediatek-linkit/mediatek_linkit/linkitone_battery_json_with_meters.ino

De aanbieding:

 //// Copyright 2015, Evothings AB // // Licensed under the Apache License, Version 2.0 (the "License") // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // LinkIt One - Position // // Created February, 2015 // // Modified by github user stirobot in November, 2015 to expose battery status instead of GPS (for a simpler example) // This example shows you how to fetch the position and share it using // a simple webserver. //#include <LTask.h> #include <LWifiServer.h> #include <LWifiClient.h> #include <LWifi.h> #include <LBattery.h>// Configuration of the WiFi AP settings. #define WIFI_AP "blah" #define WIFI_PASSWORD "black"// LWIFI_OPEN, LWIFI_WPA, or LWIFI_WEP. #define WIFI_AUTH LWIFI_WPA// Configure the timeout of a http request (ms). const uint32_t requestTimeout = 1000;// Global variables LWiFiServer server(80); char buff[256];void setup() { LTask.begin(); LWiFi.begin(); Serial.begin(115200); //delay(2000); }void loop() { static bool wifiStatusPrinted = false; connectToAccessPoint(); //straightforward if (Serial && wifiStatusPrinted == false) { printWifiStatus(); wifiStatusPrinted = true; } else if(!Serial) { wifiStatusPrinted = false; } LWiFiClient client = server.available(); if (client) { Serial.println("new client"); // an http request ends with a blank line boolean currentLineIsBlank = true; uint32_t lastReceptionTime = millis(); while (client.connected()) { if (client.available()) { // we basically ignores client request, but wait for HTTP request end int c = client.read(); lastReceptionTime = millis(); Serial.print((char)c); String batteryLevel = String(LBattery.level()); String batteryCharging = String(LBattery.isCharging()); if (c == '\n' && currentLineIsBlank) { Serial.println("send response"); // send a standard http response header 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("Access-Control-Allow-Origin: *"); client.println(); client.println("<!DOCTYPE html>"); client.println("<html><body>"); client.println("<h3>Simple Sensor Meters Demo</p>"); client.println("<p>battery(using meter element): " + batteryLevel + "<meter id=\"bat\" min=\"0\" max=\"100\" value=\"" + batteryLevel + "\"></meter></p>"); client.println("<p>battery(using progress element): " + batteryLevel + "<progress id=\"batp\" min=\"0\" max=\"100\" value=\"" + batteryLevel + "\"></meter></p>"); client.println("<p>charging: " + batteryCharging + "</p>"); client.println("<meta http-equiv=\"refresh\" content=\"30\" /></body></html>"); client.println(); break;} if (c == '\n') { // you're starting a new line currentLineIsBlank = true; } else if (c != '\r') { // you've gotten a character on the current line currentLineIsBlank = false; } } else { if (millis() - lastReceptionTime > requestTimeout) { Serial.println("Error - client timeout, dropping connection..."); break; } } } // give the web browser time to receive the data delay(500); // close the connection: Serial.println("close connection"); client.stop(); Serial.println("client disconnected"); } }// Helper functionsvoid connectToAccessPoint() { while (LWiFi.status() != LWIFI_STATUS_CONNECTED) { if (LWiFi.connect(WIFI_AP, LWiFiLoginInfo(WIFI_AUTH, WIFI_PASSWORD))) { server.begin(); printWifiStatus(); } else { Serial.println("Error - failed to connect to WiFi"); } } }// Helper functions from the WifiWebServer.ino example developed by MediaTek void printWifiStatus() { // print the SSID of the network you're attached to: Serial.print("SSID: "); Serial.println(LWiFi.SSID()); // print your WiFi shield's IP address: IPAddress ip = LWiFi.localIP(); Serial.print("IP Address: "); Serial.println(ip); Serial.print("subnet mask: "); Serial.println(LWiFi.subnetMask()); Serial.print("gateway IP: "); Serial.println(LWiFi.gatewayIP()); // print the received signal strength: long rssi = LWiFi.RSSI(); Serial.print("signal strength (RSSI):"); Serial.print(rssi); Serial.println(" dBm\n"); } 

Gerelateerde Artikelen

Een eenvoudige hydrocultuur systeem met MediaTek LinkIt™ een

Een eenvoudige hydrocultuur systeem met MediaTek LinkIt™ een

Vandaag willen we een project op basis van het nieuwe bestuur Mediatek Linkit één beschrijven. Met dit board willen we een eenvoudig hydrocultuur systeem die kan realiseren:1) het maken van hydrocultuur voedingsstof oplossing:Dit zal worden gemaakt m
Super eenvoudige laptop hack voor het maken van uw aandrijving CD/DVD gemakkelijker te openen.

Super eenvoudige laptop hack voor het maken van uw aandrijving CD/DVD gemakkelijker te openen.

OK, dus dit is niet precies een probleem dat pest man sinds de dageraad van tijd heeft, maar het is iets dat stoort me over laptop CD/DVD-stations die is zo eenvoudig op te lossen.Hier is het probleem, te openen van de CD/DVD-station op de meeste lap
Controle LED's op het LinkIt een bord

Controle LED's op het LinkIt een bord

In deze Tutorial zullen we leren hoe LED's bepalen met een LinkIt één bordStap 1: CodeIk maakte een eenvoudige code om controle 3 LED's als weergegeven onder.Weet niet hoe om te uploaden schetsen naar de linkit één bestuur Klik hierHier is de code **
Hoe maak je een super eenvoudige telefoon/tablet staan

Hoe maak je een super eenvoudige telefoon/tablet staan

U ben moe van het kijken van een film, maar hebben te houden met je hand? Uw hand krijgen moe wanneer houdt de telefoon/Tablet PC te spelen spel wanneer u vaststelling? Wilt u zelf een super eenvoudige telefoon/tablet stand? Ik zal u tonen hoe te mak
Super eenvoudige Naan

Super eenvoudige Naan

Curry is heerlijk. Jij rijst is heerlijk met uw hoofdgerecht, maar wat als je moe bent van rijst?Neem een nota uit India en sommige super eenvoudig Naan maken. Naan is een yoghurt brood dat is zacht en licht zoete.Niet alleen is het eenvoudig, maar h
Super eenvoudig Inductor Joule dief!

Super eenvoudig Inductor Joule dief!

Hey iedereen! In dit Instructable zal ik u tonen hoe te maken je eigen eenvoudige spoel joule dief, in amper 10 minuten! Dit circuit is zo eenvoudig, zelfs die niet vertrouwd zijn met elektronica kunt uitproberen als hun eerste project!Wat is een die
LinKit een bewegingssensor

LinKit een bewegingssensor

In dit instructable ga ik u tonen hoe te maken van een motiesensor met behulp van een Linkit één en een bewegingssensor tilt. Dit project kan een deel van een beveiligingssysteem, als u nog niet gezien mijn eerdere instructables gelieve te controlere
Oplossen van problemen met de MediaTek LinkIt een bord

Oplossen van problemen met de MediaTek LinkIt een bord

Ik was super stoked te krijgen van mijn LinkIt een boord in de mail en volgde de verstrekte aanwijzingen om in te stellen. Maar toen ik probeerde om de board firmware-update, ik liep in een muur heeft een beetje van onderzoek langs te komen. Uiteinde
LinKit een BT - Mobile als PC Joystick

LinKit een BT - Mobile als PC Joystick

Spelen in de PC is altijd leuk. Spelen met joystick met uit toetsenbord is wat meer plezier. Geen vreugde houden nog steeds geen probleem u spelen met uw Android smart phone.Eerste denk ik dat het een zeer eenvoudig programma. Maar willen springen ve
Super eenvoudige strandtas

Super eenvoudige strandtas

* sommige naaien ervaring vereist * heb je ooit gevoeld de noodzaak om naar het strand te gaan, maar had geen strandtas je handdoek om in te zetten? Dat nooit meer zal gebeuren dankzij de Super eenvoudige strandtas! Ik heb dit een tijdje geleden, dus
Super makkelijke manier om de schil van een banaan!

Super makkelijke manier om de schil van een banaan!

Hier is een super eenvoudige manier om de schil van een banaanStap 1: Materialen die nodig zijn:U moet:Een banaanEen mesStap 2: Pick up banaan1. Houd de banaan in uw hand met de stengel naar bovenStap 3: Snijd een spleet in de stam van de banana peel
LinKit een kookwekker

LinKit een kookwekker

In dit instructable ik ga u tonen hoe het ontwerpen van een kookwekker met de Linkit One, de timer heeft een maximale duur van 30 minuten. En zodra de timer wordt gedaan het aftellen branden een zoemer om u te informeren. Het tijdsinterval instelbaar
LinKit een temperatuursensor

LinKit een temperatuursensor

In dit instructable I 'm gonna hoe u hoe meet je de temperatuur met behulp van een Linkit één en een Lm35 temperatuursensor. Dit project kan een deel van een monitor draadloos weer, als u nog niet gezien mijn eerdere instructables gelieve te controle
Super eenvoudige truc voor het opslaan van de overgebleven Turkije

Super eenvoudige truc voor het opslaan van de overgebleven Turkije

Oke, dus de vakanties voorbij zijn en je merkt dat je geconfronteerd met de klassiek dilemma van heerlijke vakantie overmaat: teveel Turkije. En misschien is er enige ham, misschien u een paar meer Brussel dan vorig jaar, en misschien grote Tante The