Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/matigumma/esp8266
https://github.com/matigumma/esp8266
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/matigumma/esp8266
- Owner: matigumma
- Created: 2015-07-07T18:29:07.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-05-04T19:42:10.000Z (over 9 years ago)
- Last Synced: 2024-04-16T06:39:17.402Z (9 months ago)
- Language: C
- Size: 828 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
It's a fork from http://git.spritesserver.nl/esphttpd.git
esp-httpd README
This is a small but powerful webserver for ESP8266(EX) chips. Included is an example of how
to make a module that can have the AP it connects to configured over a webbrowser.ABOUT THE WEBSERVER
The Good (aka: what's awesome)
- Supports multiple connections, for eg simultaneous html/css/js/images downloading
- Static files stored in flash, in an (optionally compressed) RO filesystem
- Pluggable using external cgi routines
- Simple template engine for mixed c and html thingsThe Bad (aka: what can be improved)
- Not built for speediness, although it's reasonable fast.
- Built according to what I remember of the HTTP protocol, not according to the
RFCs. Should work with most modern browsers, though.
- No support for https.The Ugly (aka: bugs, misbehaviour)
- Possible buffer overflows (usually not remotely exploitable) due to no os_snprintf
This can be theoretically remedied by either Espressif including an os_snprintf in
their libs or by using some alternate printf lib, like elm-chans xprintfABOUT THE EXAMPLE
When you flash the example into an ESP8266(EX) module, you get a small webserver with a few example
pages. If you've already connected your module to your WLAN before, it'll keep those settings. The
module will reboot into its STA+AP mode. Connect a computer to the newly formed access point and
browse to http://192.168.4.1/wifi in order to connect the module to your WiFi network. The example
also allows you to control 2 module relay using GPIO0 & GPIO2.BUILDING EVERYTHING
For Linux: https://github.com/esp8266/esp8266-wiki/wiki
For mac (tested with Yosemite): http://tuanpm.net/post/109019196894/esp8266-development-kit-on-mac-os-yosemite-andThis project makes use of heatshrink, which is a git submodule. To fetch the code:
cd esphttpd
git submodule init
git submodule updateNow, build the code:
makeFlashing:
- make flash
- make htmlflashChanges according to original source code:
1. use esptool.py instead of esptool for image building
2. disable reset on GPIO0 (GPIO is used for second relay)
3. new html layout supporting smartphone resolution (tested with iphone5)
4. addition Makefile.mac to build app directly on mac os x
5. project configuration for eclipse cdt