Skip to content

A Web UI for ESP8266 or ESP32 based boards connected to 3D printers / CNC

License

Notifications You must be signed in to change notification settings

kleffa/ESP3D-WEBUI

 
 

Repository files navigation

ESP3D-WEBUI

All Contributors

Latest stable release Release Version Release Date Travis (.org) branch

Latest development version Development Version GitHub last commit (branch) github-ci Project Page ESP3D 3.0

Project board

Warning

Disclaimer

The software is provided 'as is,' without any warranty of any kind, expressed or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and non-infringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software. It is essential that you carefully read and understand this disclaimer before using this software and its components. If you do not agree with any part of this disclaimer, please refrain from using the software.

What is that ?

A web configuration tool for ESP3D 2.1 Originaly based on great UI from Jarek Szczepanski (imrahil): smoothieware-webui to get a multi firmware support for Repetier, Repetier for Davinci printer, (Marlin)[https://github.com/MarlinFirmware], Marlin Kimbra and of course Smoothieware

Why doing it ?

Original I ported smoothieware-webui to support ESP3D firmware and it was working pretty well and gave :smoothieware-webui-for-ESP3D But this UI has a 2 big limitations:
1 - you need internet access to get all libraries available to download, which may not happen when ESP is in AP mode for configuration if you do not have all js/css in your browser cache, or if you want to use in local environement, in that case not only ESP AP mode is not displaying UI properly but also STA mode - so it make the ESP useless

2 - it rely on server availability and certificat check, I got several certificat failure for unknown reason that made the UI not working

So the solution was to make all resources available - easy no ?

Yes but! ESP webserver is a convenient but it is also a very light webserver, allowing no more than 5 active connections at once and with a pretty limited filesystem space, so even concatenated all resources like bootstrap icon, angular and others libraries do not work as expected and do not fit the available space.

So I came with a full rewrite using pure javascript and resized resources:
1 - a compressed css based on bootstrap
2 - a local limited version of svg based of Glyphicons Halflings to get a small footprint.
3 - a customized version of smoothiecharts is used to display temperatures charts, it is simple and perfectly sized for the current purpose

The result is a monolitic file with a minimal size allowing almost full control of ESP3D board and your 3D printer

Sponsors

  

Supporters

Become a sponsor or a supporter

  • A sponsor is a recurent donator
    If your tier is 10 US$/month or more, to thank you for your support, your logo / avatar will be added to the readme page with eventually with a link to your site.
  • A supporter is per time donator If your donation is over 120 US$ per year, to thank you for your support, your logo / avatar will be added to the readme page with eventually with a link to your site.

Every support is welcome, indeed helping users / developing new features need time and devices, donations contribute a lot to make things happen, thank you.

  • liberapay Donate using Liberapay
  • Paypal PayPal – The safer, easier way to pay online.
  • ko-fi ko-fi

Features

  • It supports several firmwares based on Repetier, Marlin, Smoothieware and GRBL.
  • It allows to fully configure ESP wifi
  • It has a macro support to add custom commands in UI by adding buttons launching some GCODE files from SD or ESP
  • It supports several languages, check list here
  • It allows to display a web camera in UI or detached
  • It allows to edit the Repetier EEPROM, Smoothieware config file, Marlin and GRBL settings
  • It allows to update the ESP3D by uploading the FW
  • it allows to control and monitor your 3D printer in every aspect (position, temperature, print, SD card content, custom command

Please look at screenshots: Main tab and menu:

Control panel:

Macro dialog:

Temperatures panel:

Extruder panel:

SD card panel:




Camera Tab:

Repetier EEPROM Editor tab:

Smoothieware config Editor tab:

Marlin config Editor tab:

GRBL config Editor tab: ESP3D settings Editor:

ESP3D Status:

ESP3D SPIFFS:

Installation

Please use the latest ESP3D firmware and copy the index.html.gz file on root of SPIFFS, in theory ESP3D have a version of web-ui but it may not be the latest one

Contribution / development

Check wiki section Contribution/Development

Issues / Questions

You can submit ticket here or open discussion if it is not an issue here or Join the chat at Discord server

Contributors ✨

Thanks goes to these wonderful people (emoji key):

 Alexandre
Alexandre

💻
René Pasold
René Pasold

💻
aaron GitHub
aaron GitHub

💻
Pavulon87
Pavulon87

🐛 💻
Mitch Bradley
Mitch Bradley

🤔 💻
Patrice Côté
Patrice Côté

💻
E2D
E2D

🌍
Cedrik Theesen
Cedrik Theesen

🌍
royfocker19
royfocker19

📖
Bart Toersche
Bart Toersche

💻
vivian-ng
vivian-ng

💻
drzejkopf
drzejkopf

🌍
Luciano Charles Moda
Luciano Charles Moda

🌍
AxelB
AxelB

🌍
Zefram88
Zefram88

🌍
3d-gussner
3d-gussner

🌍
Alex Ganov
Alex Ganov

🤔 💻 🧑‍🏫
bdring
bdring

💵 🐛 📦
n4d01
n4d01

🌍
Jean-Philippe CIVADE
Jean-Philippe CIVADE

🌍
kondorzs
kondorzs

🌍
Carlo
Carlo

🌍
zrwd01
zrwd01

🌍
Wesie
Wesie

🌍
DusDus
DusDus

🌍
nyarurato
nyarurato

🌍
Terje Io
Terje Io

🤔 💻 🌍
Ryan V1
Ryan V1

💵
James Pearson
James Pearson

💻 🤔
David Buezas
David Buezas

💻 🐛
rondlh
rondlh

💻 👀

This project follows the all-contributors specification. Contributions of any kind welcome!

About

A Web UI for ESP8266 or ESP32 based boards connected to 3D printers / CNC

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 63.4%
  • HTML 33.8%
  • Smarty 1.5%
  • CSS 1.1%
  • Other 0.2%