Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
{"schema":"libjg2-1", "vpath":"/git/", "avatar":"/git/avatar/", "alang":"", "gen_ut":1746227812, "reponame":"lws-esp32-test-server-demos", "desc":"ESP32 LWS test server demos", "owner": { "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" },"url":"https://libwebsockets.org/repo/lws-esp32-test-server-demos", "f":3, "items": [ { "schema":"libjg2-1", "oid":{ "oid": "d9128c43a61dfda9bbab5087758743de1d3fa137", "alias": [ "refs/heads/master"]},"tree": [ { "name": "components","mode": "16384", "size":0}, { "name": "main","mode": "16384", "size":0}, { "name": "romfs-files","mode": "16384", "size":0}, { "name": ".gitignore","mode": "33188", "size":89}, { "name": ".gitmodules","mode": "33188", "size":259}, { "name": "LICENSE","mode": "33188", "size":28281}, { "name": "Makefile","mode": "33188", "size":1114}, { "name": "README.md","mode": "33188", "size":3062}, { "name": "partitions.csv","mode": "33188", "size":334}, { "name": "sdkconfig","mode": "33188", "size":13773}],"s":{"c":1746227812,"u": 1821}} ,{"schema":"libjg2-1", "cid":"7658f0a45e8a49c401a1afb2a74d721a", "oid":{ "oid": "d9128c43a61dfda9bbab5087758743de1d3fa137", "alias": [ "refs/heads/master"]},"blobname": "README.md", "blob": "lws-esp32-test-server-demos\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n## For use with lws-esp32-factory\n\nThis relies on setup capability provided by\n\nhttps://github.com/warmcat/lws-esp32-factory\n\nwhich runs from the \u0022factory\u0022 partition on ESP32. This app is\ndesigned to run from the 2.9MB OTA partition.\n\n## New!\n\nThis includes the latest lws HTTP/2 support now, improved\nmemory management for headers, and mbedTLS wrapper fixes to\nimprove speed when multiple SSL connections are coming.\n\nIt also now supports ws-over-http2 tunelling, meaning all\nthe ws connections and the http actions share the same tls\ntunnel. This makes a massive improvement in speed and\nreduced memory consumption.\n\nAs of 2018-04-12 only Chrome Canary 67 supports this new\nmode, but support in other browsers is coming. Chrome\nCanary 67 must be started to --enable-websocket-over-http2 to\nallow the new feature to operate.\n\n## About this demo\n\nThis demo is the standard lws test server using the standard lws test\nprotocol plugins.\n\nWhen you open the page the html / png assets are served over http/2\nor http/1 depending on how you connected. Then the browser connects\nback over http/1 and upgrades to ws.\n\nBasic auth is also demoed, see main/main.c for the details of how it\nworks. You can visit the URL /secret, which you cannot see until\nyou log in with \u0022user\u0022 and \u0022password\u0022. These are set in code in\nmain/main.c.\n\nIt opens a lot of simultaneous https connections, one for each ws\nprotocol and one for http/2 to carry the HTML and images, so on ESP32\nit's a bit slow to start up.\n\nThe demo uses my mbedtls patches for dynamic buffer allocation, so\ncompared to the unpatched mbedtls, you can open many tls connections\nwithout killing your RAM. **NOTE** You should set MBEDTLS_SSL_MAX_CONTENT_LEN\nto 16384 in your sdkconfig. The patched mbedtls will adapt the buffer\nsizes according to what is actually sent or received.\n\n## Build\n\nThis was built and tested againt esp-idf 17ac4bad7381e579e5a7775755cc25480da47d97 from 2018-09-11.\n\nClone and bring in the lws submodule (it's unpatched lws master)\n\n```\n $ git clone git@github.com:warmcat/lws-esp32-test-server-demos.git\n $ git submodule update --init --recursive\n```\n\n```\n $ make lws_flash_ota ; make monitor\n```\n\n## Using the lws test apps\n\nSee what IP your ESP32 got from your AP, the visit it in your browser\nusing, eg https://192.168.2.249\n\nIf your dhcp server provides your dns, you can also reach the device\nusing lws-serial, eg, https://lws-1234 or https://lws-1234.local\n\n - dumb increment should be updating at ~20Hz\n\n - mirror should let you draw in the canvas... open a second browser\n instance and they should be able to see each other's drawings\n\n - close testing should work\n\n - server info should reflect browsers open on the site dynamically\n\n - POST tests should pass the string and upload the file if one given\n\n - The button at the bottom should reset you into the setup / factory app\n\n - The \u0022War and Peace\u0022 demo should load the 4MB text from the 1.2MB gzipped zip\n file directly, using gzipped data to the browser.\n","s":{"c":1746227812,"u": 469}} ],"g": 3970,"chitpc": 0,"ehitpc": 0,"indexed":0 , "ab": 1, "si": 0, "db":0, "di":1, "sat":0, "lfc": "0000"}