Dopo il Wemos TTGO ho provato Lolin 32 Lite. Nonostante sia un prodotto non piu' in produzione risulta interessante
I driver per la seriale virtuale sono relativi al CH340
Da misure fatte da altre persone sembra che il consumo sia di circa 800 microA in sleep mode e di circa 50 mA in modalita' normale
Una delle caratteristiche piu' interessanti e' che si puo' alimentare tramite una LiPo tramite JST PH-2 2.0mm e c'e' montato anche un circuito di ricarica che, nel caso di collegamento USB, va a ricaricare la LiPo
Ho provato a montare lo skect ESP32 di Captive Portal (negli esempi sotto DNSServer) ma per rendere la cosa non banale ho provato ad inserire una immagine nella home. Di fatto non esiste un file system e per includere la img ho preso un file (a caso ;>), lo ho convertito in BASE 64 tramite questa pagina e poi ho incollato la conversione nello sketch come segue
------------------------------------------------------------------
#include <WiFi.h>
#include <DNSServer.h>
const byte DNS_PORT = 53;
IPAddress apIP(192, 168, 1, 1);
DNSServer dnsServer;
WiFiServer server(80);
String responseHTML = ""
"<!DOCTYPE html><html><head><title>CaptivePortal</title></head><body>"
"<h1>Hello World!</h1><p>This is a captive portal example. <br>"
"<img src='data:image/jpg;base64,/9j/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKC
gkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wA
ARCABgAGADASIAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABgcFCAMECQEAAv/EADgQA
AEDAgUCAwYEBgIDAAAAAAECAwQFEQAGBxIhMVETQWEIIjJxgbEUFUKhI1KRwdHwJOEWYvH/xAA
bAQACAwEBAQAAAAAAAAAAAAAFBgMEBwEAAv/EADARAAEDAgQFAwMDBQAAAAAAAAECAwQ
AEQUSITETQVFhkRQioXGx0TLh8AZCgcHx/9oADAMBAAIRAxEAPwBZaH5xmZTzA3HjR21qluJSVK4A57
4LPaAqsl+px5MmQlRdTcDdcDC6oGXcxoqMabHpMkhDiVcJtxfBtrLl597LEatSEOtOtpCVb/P6YzCQ2wMRQ9c
XVpTqxxPSkKG1V6zg+w20ZCj4iyCCDwAe+FcKBX69O8Om0yTISDwUoNhfFkfZ20ub1s1Kby7V2lGnwGlSZO39diAlP1v+2LQ6x5dyDpfQIuQMqUWBFq9T3pSUtArbZCSVrJ6i9vvhpcxkYURGQjMrn0F/21oKYYlnMo2HzXNam6TZkqq1lqG4UM3UV/pJv0BHXntg0yn7NNRzAgv1PMENhLZBcjjcHUDdzwpIHwhR92/7HDRahyMi1112Y47IbJac8RCtpZ80rSPh23JuPt1wUVGux5rAqTM5CpTboWhYGwbxzYpv8VjzzYg9sdk45KULNWAOxArjeFsA+4G470n39AMgUR1tFWrdQlLjPqTMQwgJUEWG0nqAk8+8L9R0wbUTRPSh6MZlPoCpjBHC1TVLUPQhJ6fK/wAsZ6hmSjZlniXHR+HkqX4bjSvNRFlNnuDY9fTAip2XlGs1FiLNdZS1/wAiNZZ5QTy2QOoF/tiAuzJIyl1SVb22v4t/ypeBGZNwgEVmzDovpzP3MQWZ1PdsQhSHkuoCvW4B/fCfzNpRW6At5yKn8eyyTcoSUupA8yg8njzFx64dX/lceWj8fIfB3p2OWVaygeD/AL3x+X6/R5DzTs6YhLrACHCeQtHQEjFyJMmxjZd1Dvr+9RSIUV8aaHtS10wS6lsAn3Ael784Z0VxfjbgBwOnpgdhCnw626lgIQJxK2lJICXO4t5K79+uCAIW2lS2ySAL8HEOJuB53Na1xXWEFtvLvauojem+XoqAEw2gB04wh/aayc8aEUQI4U0i5KR5euGedZYLjIIcueh5wtdX9Q/xtBeU0neFINx6YT3XIy1JLQ9wOlMTDEgE8Tagf2FcvuUWo52q7kZSRDjNKccUSAAN6iAfkMeyWpeeNYXMx1loraixHp77QJ91op2JbvbgjxR1/lOBzTzNuYGBVXcsSZMaBKiqElCGFFqQdpukq6A4sDoLkhUvK1SzpWWG/wARXEqDCCm//HSVBA9LqKz8tnbHpLi3JCnLe47+LfYVTbCWmySdNh5qnublzHK8rMkinF6IFKjyWLWStncdpT293kH1GADNVeplObeZp7iVxHUJLSt3vbBbbceRF7jtZWLgVrS+Ozl1unvMgyI6Py+SSnkKQSlCj6EWNx5LB8sU21g0qruVH5b0WM44y2sqcbAuWwebjuPMEDnnpzgtgk2PJe4LvtI2718S2VJbLjetLeo5gkxqkzMi3SnchxZJ6lPn+32xJ5szX+YpafQ9/HbUUkk8lKk2+4vhfVSogI8Ip2EcEX6jGuaiqZdIBHA5PPONAERBUlVtRSuqWRdN96LE1Zx6LKaSraVJQ4kdz5/TrjRVWHQ2l5aSttKdjgJ5I/6xBM1RXhBDibFCdpsLcY1zOeaIS5e3QEAEel8ThpIvpUS5JNtaKomYEeGlhK1qSohUdY4Lah0J7HoPlhyZEqS63TbS0DxAmxUkiyvX0xXFpTpkIA2pBUFEDpfuO2GjpVX5EdcptaiEC67DgAg+XzwLxiKHI5UgairUGSSvKrariyTXaU4qOWXFoBvcDGvUa3U6uluEmnLe8ltkEBQ7emHfAplLrl3PCSbjnjExR8gUtuWl0RUHn+XGVJeCrEJ1prOIOJTlNITTpzN9JW3kCtPSm25IJisrUUtIuom6e/BwS5Q1wh5K1GoenjdHrkVmryPy4tONLDLr6VBJeaSs36qSTtATzizE3J2VGKfHqWakU6M0ynxmXXyN6QObptyP2xjr2U9O6KzA1BepzEuotNqXT3XUhQQpQH8RF72O0Dn09Bi6WULWpcg6W2va3Q+eXOqyHlOJCUp37b/z4qpvtI51rqs0SaOxmCZS0x0rBVGJCV2/msCfh/thGyNTcjtynKTJm5gjVKOQy+9PeWtt2494KbX8PcccYtzIypSc4ZjRPmU9mUtxwhwLSFpcCvI/75YGq57KOQZNemVuotBCJDxkPNWJ8Vw8km/Unv64+cPnQWmsr4V9Rbfv1/zV51C0qSEWH1v/AKrn/qzp+/TX/wA+pB8eC+rcUtJ4ST5gC/B/vhV7vBUd3F1dPTHSDO+RMnx4q6TDpzbcZN0pAN7D/RinGr2mMXLNZW9SfeZkkuBBHQ8k/bDzgGPInAML35HqPzS9jGEFF5DO3MfilcHUOA3WncevHX/BxurpFVVTl1RFPeVFaI3uhPui/S/HF8StPy+mKEOvwgpKjtSvdYhR8vX/ABho0nLSGNMMyVjhtqJBdafC+QskoLZ+e5Qt6jB6VNTHAPUgeTVCFhZlJWpw2sknwKR7DRJCkKB8IFXPW1sTsKqy4SY7sF0pG2wJ/UfO/wBDiFiLDa1pCdoCLfO4/wC8bcdoLgIQBcpJIJNrG/8A9xdUkGwNDG1FIOXeuq+kOZ4dRYS2XQSLJ64elLZaUlKkm+KBaMZqmQ6iP452BfS/ri6eRc1tVBhAU4OAMY4pgxnMp2pukJN70R69aeSs/aXKi0t6M3NQwHGy9cD3UngKBugnvhNT5etUrTPK72QPw0wUensUyqQnVoshxlIbNjySSUg27EYs9T5TdSpCm17HENp8MpIuCm3nhQ1HJicvorUGjV96kxJk8VFaGyN1loKVpb3e7f3QQD2t2xJMSrOkp/Srl3Atr2/FEIEkqaDKv7TcaX33pTZQzJqKmvorddpUaEllxCH2kcX7noBxiX1O1LcYK2kjaVcfTCe1EzLnmDX10LIuZZNXS8rhmoRWkLRcjqpKtw4PUjywZal01+l0WgRq24w7VVU9lyWWiSgOkXUBfm18C3Ia21pKiMquQv8AINFFpyOAqGvLQj70Dy57tWd99d78n5YXOq2WU1SIh6GlJfjEKTc9beWDSVU4sU7U23gHn1wKZizDGWwtNwVEWNsFYRcZeStvlVV+ygUq2peZO0+i5igpbrKw0xAeU2Al1IUbC6QpXZIvb0wNav6k05mgOaVZPc8SGXEu1SUOQ4tFiG0k9QCkEnuBgpzUUUnLj8anS1JnvMl1TSFkKWVfCmw6+Z57YrgXVBTqlpUHVE3J8r8nDzhsczXPUvKukG6U8r9fxS7ic/0jPpWRYqFie3SvmfGccTYqubC1+eMTcYbmw2gkE/Fz54jYJ3kOKAA8jbnj/RiegKjKbIKgSL9B0w0agXpWRarNadpVGcJcUEe8Pvh75Yz0YT7cWO8N3A69cJWqxnKKVKQjaD2GCDTbxJtTQ+6VHkWBxk7w46C9TrIuhzIavFplmKRJbDchVxJRYD/28v74LZtFptRYkRaqluy2wDu6nm4+2FxpMy/UKzAZjtnw41pDp8ghP+TYfXAD7V2fc10KpF3KNYXDdhoAVtspCirmykHgjjFex4YB5mwvtXzGQpbhSk251mzPlrTXT2oyswhqNGWCSlu4upfc3xWvUnVSLWaw7NcnbkJulHPQDCS1I1V1Jr8p6VmKuIdaTe5aSUC3yvgOy/Lk5hcQmbL8LxlFLQB95ZHJH9P34wYh/wBLFCTJkL8a2FWXsTS24GtSo9aZFSz4ZTikxV3J4uFcWxmyzS5lfkiVUHSI7arlN/ixs0fTanoitTkzvxLLnYWIPY4Y9ByXIVBDsKOEM244+LHJUuNHQURt+pqZDbjis7hpR6oVSNRqtDgtxmm2Ki0sy5Sm9xaQ2AUkK/SeB9OPM4Qi4zVRmvvbfCiXPh7uqk+vqcObXuttInJyjFcSqQ2AuWU9ECwIT9r4Tj7im02SslSfK4AthxwBhSYiXFjceeh8fFKONPhUgoBuB8dv5zr5DMVsJbS2kixAPIx6ytphzclotkK4UlX9safiupsnxObXuo34x4h1bgstw2J52nB0WOlqCXIN66CVSNAqEfwnmRe3Bwv8+z1ZKyFXqlAlKjviOltlaFbVJUtaU8H5E4PSxLdSf4Z74R3tOT36XlSJAUopVOlg7b9UoF/6XKcY9gwLsttm9wSLjsNT9q1TGW20xFukagaH67V57Lntmo9nubXEV+hVavfnSmryE1IqUwlAVZKUOAgi6iT7wPTtiX1R9rjJOok2ZVIrVVhSZJ6y2Rwk9QNilDtiorz5Li1XTzza3P8AXGEqIITuKrC4uMaFJwaHJe4ywb/XTxSFFxGRHTlRamdVcyU3Mb6YrDhcjoPivkgp3AdE89ziBzHWvCfa/A2bLW0tqRxs8xbscacJLdNpKXlNAuzgpW8/pseAP6YhZ0h15TRUoABKebdD0/tgm20lpNhVZ+Qt9eZe9WP09z2K3TtyVJTIZ2icyCAN3k4B2P34xZ3KWa6HDyVJmOPNJREZUtxalc2Aucc6soVubRsytTWHVIB3h9IPC27XI/b7Yd2Y83yYOQqi00/ZuewjwlhR2uIWR7w+l+MJmLYJxJCUt6JUR99fFM8HFA5GJc/UkXPelDmvM0vM2YalWHUnxp763lqPkD8KfoLD6YhggNAqWoLPJJHTrj67iUqSVpQk3IG2/wDXGBS9hKCUAc3+WHxKQ2kJTsNKTFKK1FR3NZVqQEhKUBXFgeOBjEHRsI2naT17fXGJDhPAVbaPO3Xy4x+UPkJB8RKb8XItfHiqvBNf/9k='/>"
"</body></html>";
void setup() {
WiFi.mode(WIFI_AP);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
WiFi.softAP("CaptivePortal");
// if DNSServer is started with "*" for domain name, it will reply with
// provided IP to all DNS request
dnsServer.start(DNS_PORT, "*", apIP);
server.begin();
}
void loop() {
dnsServer.processNextRequest();
WiFiClient client = server.available(); // listen for incoming clients
if (client) {
String currentLine = "";
while (client.connected()) {
if (client.available()) {
char c = client.read();
if (c == '\n') {
if (currentLine.length() == 0) {
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");
client.println();
client.print(responseHTML);
break;
} else {
currentLine = "";
}
} else if (c != '\r') {
currentLine += c;
}
}
}
client.stop();
}
}
---------------------------------------------------------
Il risultato e' il seguente
Iscriviti a:
Commenti sul post (Atom)
Update Plotly Dash Csv
from dash import Dash , html , dcc , callback , Output , Input , State import plotly . express as px import pandas as pd import...
-
In questo post viene indicato come creare uno scatterplot dinamico basato da dati ripresi da un file csv (nel dettaglio il file csv e' c...
-
Questo post e' a seguito di quanto gia' visto nella precedente prova Lo scopo e' sempre il solito: creare un sistema che permet...
-
La scheda ESP32-2432S028R monta un Esp Dev Module con uno schermo TFT a driver ILI9341 di 320x240 pixels 16 bit colore.Il sito di riferiment...
Nessun commento:
Posta un commento