Skip to content

ESP3D library for Marlin and ESP32 boards

License

Notifications You must be signed in to change notification settings

gerthalberg/ESP3DLib

 
 

Repository files navigation

ESP3DLib 1.0 Marlin version

Library for ESP32 boards using Marlin 2.x :

MRR_ESPA, MRR_ESPE, ESP32 Controller

The web interface files has it's own repository ESP3D-WEBUI.

Latest development version Development Version GitHub last commit (branch) Travis (.org) branch Release Version Marlin

To use development version just add #devt at the end of ESP3DLib git address in your platformio.ini

ESP3DLib=https://github.com/luc-github/ESP3DLib.git#devt

⚠️ This is not for ESP8266 boards neither standalone ESP3D installation

for them go here

All releases

Donate

Every support is welcome: PayPal – The safer, easier way to pay online.
Especially if need to buy new modules for testing.

Features

  • Complete configuration by web browser (Station or Access point) or by Serial commands
  • Authentication for sensitive pages
  • Update firmware by web browser or OTA
  • 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.
  • The web ui add even more feature : https://github.com/luc-github/ESP3D-WEBUI/blob/master/README.md#features

How to enable ?

In Marlin configuration file : Configuration_adv.h

enable #define ESP3D_WIFISUPPORT // ESP3D Library WiFi management (https://github.com/luc-github/ESP3DLib)

Define to which access point your board need to connect to:

  #define WIFI_SSID "Wifi SSID"
  #define WIFI_PWD  "Wifi Password"

if not defined or you left like this the board will act as an Access Point instead.

and finally

#define WEBSUPPORT          // Start a webserver (which may include auto-discovery)
#define OTASUPPORT          // Support over-the-air firmware updates
#define WIFI_CUSTOM_COMMAND // Accept feature config commands (e.g., WiFi ESP3D) from the host

For advanced configuration add in same section:

to enable this feature which is disabled by default:

//AUTHENTICATION_FEATURE: protect pages by login password.
#define AUTHENTICATION_FEATURE

to disable any of these features which are enabled by default:

//MDNS_FEATURE: this feature allow  type the name defined
//in web browser by default: http:\\marlinesp.local and connect
#define DISABLE_MDNS_FEATURE

//SSDD_FEATURE: this feature is a discovery protocol, supported on Windows out of the box
//Rely on Configuration_adv.h
#define DISABLE_SSDP_FEATURE

//CAPTIVE_PORTAL_FEATURE: In SoftAP redirect all unknow call to main page
#define DISABLE_CAPTIVE_PORTAL_FEATURE

Default Configuration

Default Settings if not modified in Configuration_adv.h:
AP:MARLIN_ESP
PW:12345678
Authentification: WPA
Mode: g (n is not supported by AP, just by STA)
channel: 1
IP: 192.168.0.1
Mask: 255.255.255.0
GW:192.168.0.1
Web port:80 the websocket is web port + 1 => 80+1 : 81
User: admin
Password: admin
User:user
Password: user

Direct commands:

Check wiki

Contribution/customization

  • To style the code before pushing PR please use astyle --style=otbs *.h *.cpp *.ino
  • 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

❓Any question ?

Check Wiki or Join the chat at Discord server

❗Any issue/feedback ?

Check FAQ or submit ticket

TODO/On going :

--Import all ESP3D 2.1/3.0 features

About

ESP3D library for Marlin and ESP32 boards

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 60.4%
  • Objective-C 13.9%
  • C 13.6%
  • JavaScript 6.9%
  • HTML 2.9%
  • CSS 2.1%
  • Batchfile 0.2%