updated Readme

pull/30/head
Ondřej Hruška 8 years ago
parent 5aaef1a972
commit 46320ef4b9
  1. 50
      README.md

@ -51,28 +51,32 @@ The screen size is adjustable up to 25x80 (via a special control sequence) and u
esphttpd's wifi config page, but re-styled and much improved. You can set AP SSID, channel, see the IP esphttpd's wifi config page, but re-styled and much improved. You can set AP SSID, channel, see the IP
address etc right there. address etc right there.
## Setting it all up ## Development
### Installation for development
- Clone this project with `--recursive`, or afterwards run `git submodule init` and `git submodule update`.
- Install [esp-open-sdk](https://github.com/pfalcon/esp-open-sdk/) and build it with - Install [esp-open-sdk](https://github.com/pfalcon/esp-open-sdk/) and build it with
`make toolchain esptool libhal STANDALONE=n`. Make sure the `xtensa-lx106-elf/bin` folder is on $PATH. `make toolchain esptool libhal STANDALONE=n`.
- Install [esptool](https://github.com/espressif/esptool) (it's in Arch community repo and on AUR, too)
Make sure the `xtensa-lx106-elf/bin` folder is on $PATH.
- Install [esptool](https://github.com/espressif/esptool) (it's in the Arch community repo and on AUR, too)
- Set up udev rules so you have access to ttyUSB0 without root, eg: - Set up udev rules so you have access to ttyUSB0 without root, eg:
``` ```
KERNEL=="tty[A-Z]*[0-9]*", GROUP="uucp", MODE="0666" KERNEL=="tty[A-Z]*[0-9]*", GROUP="uucp", MODE="0666"
``` ```
- Clone this project with `--recursive`, or afterwards run `git submodule init` and `git submodule update`.
## Development
The web resources are in `html_orig`. To prepare for a build, run `compress_html.sh`.
This should pack them and put in `html`.
If you're missing the compression tools, you can simply copy them there manually uncompressed and hope for the best. - Install Ragel if you wish to make modifications to the parser.
If not, comment out it's call in `build_parser.sh`. The `.rl` file is the actual source, the `.c` is generated.
serial comm is handled in `serial.c`, sockets etc in `user_main.c`. - Install Ruby and then the `sass` package with `gem install sass` (or try some other implementation, such as
`sassc`)
Get the IoT SDK from one of: - Get the IoT SDK from one of:
``` ```
ESP8266_NONOS_SDK_V2.0.0_16_08_10.zip: ESP8266_NONOS_SDK_V2.0.0_16_08_10.zip:
@ -89,4 +93,24 @@ ESP8266_NONOS_SDK_V1.5.2_16_01_29.zip:
It's tested with 1.5.2, 2.0.0 won't work without adjusting the build scripts. Any 1.5.x could be fine. It's tested with 1.5.2, 2.0.0 won't work without adjusting the build scripts. Any 1.5.x could be fine.
To flash, just run `make flash`. First make sure your `esphttpdconfig.mk` is set up properly - link to sdk etc. The `esp-open-sdk` Makefile could also download this for you with the right flags.
- Make sure your `esphttpdconfig.mk` is set up properly - link to the SDK etc.
### Web resources
The web resources are in `html_orig`. To prepare for a build, run `build_web.sh`, which packs them and
copies over to `html`. The compression and minification is handled by scripts in libesphttpd, specifically
it runs yuicompressor on js and css and gzip or heatshrink on the other files. The `html` folder is
then embedded in the firmware image.
It's kind of tricky to develop the web resources locally; you might want to try the "split image"
Makefile option, then you can flash just the html portion with `make htmlflash`. I haven't tried this.
### Flashing
The Makefile should automatically build the parser and web resources for you when you run `make`.
Sometimes it does not, particularly with `make -B`. Try just plain `make`. You can always run those
build scripts manually, too.
To flash, just run `make flash`.

Loading…
Cancel
Save