diff --git a/README.md b/README.md index d6f0a17f..ee9d08c8 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ + + # ESP3D 2.1 [![Code Climate](https://codeclimate.com/github/luc-github/ESP3D/badges/gpa.svg)](https://codeclimate.com/github/luc-github/ESP3D) Firmware for ESP8266/ESP8285 and ESP32 used with 3D printer using [ESP8266 core version](https://github.com/esp8266/Arduino) and [ESP32 core version](https://github.com/espressif/arduino-esp32) @@ -11,13 +13,13 @@ I currently use it with my personnal flavor of [repetier for Due based boards](h The web interface files are present in data directory but UI has it's own repository [ESP3D-WEBUI](https://github.com/luc-github/ESP3D-WEBUI). * be aware ESP3D-WEBUI is for firmware 0.9.99 minimum - previous released version use tpl files which are no more used. -Stable version (ESP8266 only): -Arduino ide 1.6.5 with stable [2.0.0](http://arduino.esp8266.com/versions/2.0.0/package_esp8266com_index.json) from ESP8266, please use https://github.com/luc-github/ESP3D/releases/tag/v0.5.1 -Arduino ide 1.6.8 with stable [2.2.0](http://arduino.esp8266.com/versions/2.2.0/package_esp8266com_index.json) from ESP8266, please use https://github.com/luc-github/ESP3D/releases/tag/v0.6.2 -Arduino ide 1.8.5 with stable [2.4.0](http://arduino.esp8266.com/versions/2.4.0/package_esp8266com_index.json) from ESP8266, please use https://github.com/luc-github/ESP3D/releases/tag/1.0 [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=master)](https://travis-ci.org/luc-github/ESP3D) -Arduino ide 1.8.5 with with 2.5.2 version of ESP8266 and git version of ESP32, please use https://github.com/luc-github/ESP3D/releases/tag/2.0 [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=2.0)](https://travis-ci.org/luc-github/ESP3D) -[Development version for 2.1](https://github.com/luc-github/ESP3D/tree/2.1) & [ESP-WEBUI (2.1 branch)](https://github.com/luc-github/ESP3D-WEBUI/tree/2.1): -Arduino ide 1.8.9 with 2.5.2 version of ESP8266 or git version ESP32 for 100% support of ESP32 : [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=2.1)](https://travis-ci.org/luc-github/ESP3D) +Stable versions: +[V1.0](https://github.com/luc-github/ESP3D/releases/tag/1.0) : please use Arduino ide 1.8.5 with stable [2.4.0](http://arduino.esp8266.com/versions/2.4.0/package_esp8266com_index.json) from ESP8266 +[![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=master)](https://travis-ci.org/luc-github/ESP3D) +[V2.0](https://github.com/luc-github/ESP3D/releases/tag/2.0) : please use Arduino ide 1.8.5 with with 2.5.2 version of ESP8266 and git version ESP32 [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=2.0)](https://travis-ci.org/luc-github/ESP3D) +[V2.1](https://github.com/luc-github/ESP3D/releases/tag/2.1RC1) : please use Arduino ide 1.8.9 with 2.5.2 version of ESP8266 or git version ESP32 : [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=2.1)](https://travis-ci.org/luc-github/ESP3D) +Development version: +[V3.0](https://github.com/luc-github/ESP3D/tree/3.0) : please use Arduino ide 1.8.9 with 2.5.2 version of ESP8266 (to be updated) or git version ESP32 : [![Build Status](https://travis-ci.org/luc-github/ESP3D.svg?branch=3.0)](https://travis-ci.org/luc-github/ESP3D) [All releases](https://github.com/luc-github/ESP3D/wiki) @@ -29,55 +31,37 @@ Arduino ide 1.8.9 with 2.5.2 version of ESP8266 or git version ESP32 for 100% su ## Donate Every support is welcome: [PayPal – The safer, easier way to pay online.](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Y8FFE7NA4LJWQ) -Especially because need to buy new ESP modules and devices for developing and testing. +Especially because need to buy new ESP modules and devices for developing and testing new features. ## Features -* Serial/Wifi bridge using configurable port 8888, here to enable/disable [TCP_IP_DATA_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* Use GPIO2 to ground to reset all settings in hard way - 2-6 sec after boot / not before!! Set GPIO2 to ground before boot change boot mode and go to special boot that do not reach FW. Currently boot take 10 sec - giving 8 seconds to connect GPIO2 to GND and do an hard recovery for settings, here to enable/disable [RECOVERY_FEATURE](https://github.com/luc-github/ESP8266/blob/master/esp8266/config.h) -* Complete configuration by web browser (Station or Access point) or by Serial commands -* Authentication for sensitive pages, here to enable/disable [AUTHENTICATION_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* Update firmware by web browser, here to enable/disable [WEB_UPDATE_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* Control ESP module using commands on serial or data port, here to enable/disable [SERIAL_COMMAND_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* Captive portal in Access point mode which redirect all unknow call to main page, here to enable/disable [CAPTIVE_PORTAL_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* mDNS which allows to key the name defined in web browser and connect only with bonjour installed on computer, here to enable/disable [MDNS_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) -* SSDP, this feature is a discovery protocol, supported on Windows out of the box, here to enable/disable [SSDP_FEATURE](https://github.com/luc-github/ESP3D/blob/master/esp3d/config.h) +* Serial/Wifi bridge using configurable port 8888 +* Use GPIO2 to ground to reset all settings in hard way - 2-6 sec after boot / not before!! Set GPIO2 to ground before boot change boot mode and go to special boot that do not reach FW. Currently boot take 10 sec - giving 8 seconds to connect GPIO2 to GND and do a hard recovery for settings +* Complete configuration by web browser (Station or Access point) or by Serial/telnet commands +* Authentication (optional) for better security +* Update firmware by web browser +* Captive portal in Access point mode which redirect all unknow call to main page +* mDNS which allows to key the name defined in web browser and connect only with bonjour installed on computer +* SSDP, this feature is a discovery protocol, supported on Windows out of the box * Fail safe mode (Access point)is enabled if cannot connect to defined station at boot. -* Choice of web server Async or Sync -* Websocket support -* OLED screen support -* The web ui add even more feature : https://github.com/luc-github/ESP3D-WEBUI/blob/master/README.md#features +* Embedded FS uploader and updater. +* OLED screen support +* Notifications using Line / Pushover / email +* The web ui add even more feature : https://github.com/luc-github/ESP3D-WEBUI/blob/2.1/README.md#features - -## Web configuration -* Wifi Mode : Access point / Client station -* IP Generation: DHCP/Static IP -* IP/MASK/GATEWAY for static data -* Baud Rate for serial (supported : 9600, 19200, 38400, 57600, 115200, 230400, 250000) -* web port and data port - - ## Default Configuration Default Settings: -AP:ESP8266 -PW:12345678 -Authentification: WPA -Mode: g (n is not supported by AP, just by STA) -channel: 11 -AP: visible -Sleep Mode: Modem -IP Mode: Static IP -IP: 192.168.0.1 -Mask: 255.255.255.0 -GW:192.168.0.1 -Baud rate: 115200 -Web port:80 -On async webserver the websocket is web port => 80+1 : 81 -Data port: 8888 -Web Page refresh: 3 secondes -User: admin -Password: admin -User:user -Password: user +* Access Point: ESP3D +* PW:12345678 +* Authentification: WPA +* IP: 192.168.0.1 +* Baud rate: 115200 +* Web port:80 +* Data port: 8888 +if Authentication is enabled : +* User: admin +* Password: admin +* User:user +* Password: user @@ -90,14 +74,7 @@ Feedback on 2.0 was : ESP3D being a library is not really useful and make setup 1. Please follow installation of the ESP core you want to use : [ESP8266 core version](https://github.com/esp8266/Arduino) or [ESP32 core version](https://github.com/espressif/arduino-esp32) 2. Add manually libraries present in libraries directory -these versions are verified to work with ESP3D, any others (newer version) may cause untested behavior. -For async webserver support(currently not recommended as not stable) -* ESPAsyncWebServer from @me-no-dev -if you target ESP8266 -* ESPAsyncTCP from @me-no-dev -if you target ESP32: -* AsyncTCP from @me-no-dev - -If you want sync webserver support (recommended as stable): +Use webserver support (recommended as stable): * arduinoWebSockets from @Links2004 Generic ones: @@ -108,14 +85,14 @@ If you want OLED support: If you want DHT11/22 support: * DHT_sensor_library_for_ESPx from @beegee-tokyo -3. Compile project esp3d.ino according target: ESP8266 board or ESP32 board, please review config.h to enable disable a feature, by default athenticatio is disabled and all others are enabled. +3. Compile project esp3d.ino according target: ESP8266 board or ESP32 board, please review config.h to enable disable a feature, by default athentication is disabled and most others are enabled. * for ESP8266 set CPU freq to 160MHz for better (https://github.com/luc-github/ESP3D/wiki/Install-Instructions) 4. Upload the data content on ESP3D file system * Using SPIFFS uploader, this plugin and install instructions is available on each ESP core - please refere to it or * Using embedded uploader (you may need to format SPIFFS using : [ESP710]FORMAT on ESP8266 first) if embedded uploader does not show up you can force it ti display using : http://your_IP_address?forcefallback=yes -
+
## Update * Generate a binary using the export binary menu from Arduino IDE and upload it using ESP-WEBUI or embedded interface @@ -124,9 +101,9 @@ if embedded uploader does not show up you can force it ti display using : http:/ ## Contribution/customization * To style the code before pushing PR please use [astyle --style=otbs *.h *.cpp *.ino](http://astyle.sourceforge.net/) -* The embedded page is created using nodejs then gulp to generate a compressed html page (tool.html.gz), all necessary modules can be installed using the install.bat file content, then it is included using bin2c (https://sourceforge.net/projects/bin2c/) to generate the h file used to create the file nofile.h, update the array and size according new out.h. -* The current UI is located [here](https://github.com/luc-github/ESP3D-WEBUI) -* An optional UI is under development using old repetier UI - check [UI\repetier\testui.htm] (https://github.com/luc-github/ESP3D/blob/master/UI/repetier/testui.htm) file +* The embedded page is created using nodejs then gulp to generate a compressed html page (tool.html.gz), all necessary modules will be installed using the build.bat, you also need bin2c tool (https://sourceforge.net/projects/bin2c/) to generate the h file from the binary, installation and build is done using the build.bat. +* The corresponding UI is located [here](https://github.com/luc-github/ESP3D-WEBUI/tree/2.1) +* An optional UI was development using old repetier UI - check [UI\repetier\testui.htm] (https://github.com/luc-github/ESP3D/blob/master/UI/repetier/testui.htm) file ## Need more information about supported boards or wiring ? @@ -139,12 +116,14 @@ Check [Wiki](https://github.com/luc-github/ESP3D/wiki/Install-Instructions) or [ Check [Wiki](https://github.com/luc-github/ESP3D/wiki/Install-Instructions) and [FAQ](https://github.com/luc-github/ESP3D/issues?utf8=%E2%9C%93&q=label%3AFAQ+) or [submit ticket](https://github.com/luc-github/ESP3D/issues) ## ESP3D is used by : -* Custom version is used on azteeg mini wifi : http://www.panucatt.com/azteeg_X5_mini_reprap_3d_printer_controller_p/ax5mini.htm -and Wifi boards for 3D printers : https://www.panucatt.com/ProductDetails.asp?ProductCode=WB8266, +* Opensource version is used by various boards like : https://www.aliexpress.com/wholesale?SearchText=esp3d&opensearch=true&switch_new_app=y +and https://youtu.be/XoWW0aU6DGE?t=76 + +* Custom version (not this repository) is used on azteeg mini wifi : http://www.panucatt.com/azteeg_X5_mini_reprap_3d_printer_controller_p/ax5mini.htm +and Wifi boards for 3D printers : https://www.panucatt.com/ProductDetails.asp?ProductCode=WB8266,

:warning: Do not use this repository for these boards, you will lose several features.

- -* Several boards, mostly chinese ones, but without noticed me, so I can't promote them here... + * More to come... If you use ESP3D on your product, drop me a message so I can link your product page here.