ESPrint is an ESP8266-based embedded web server that can be used to control any serially-controlled 3D printer or router. While any web-browser can be used to access the server it is specifically designed for mobile phones and/or tablets, thus allowing the user to initiate the print whilst standing next to the printer and then monitor ongoing progress elsewhere.
The main controller is a Pro Mini running a version of the Teacup firmware. An SD breakout board provides storage for gcode files.
An ESP8266 provides the WiFi link and contains an embedded web server. The server code is based on JQueryUI mobile and uses AJAX to send standard SD-related g-codes/m-codes to the controller via the serial connection.
Four stepper controllers are provided on the example board for control of the printer's axis and extruder motors. The final board layout is expected to also support the extruder heater drive transistor and thermistor circuitry.
While this project is specifically designed to support the ESP8266 web server it should be noted that the WiFi chip can in fact be replaced with a regular USB-Serial link. The Teacup firmware in this project has also been modified to work in standalone mode: a single press of the Pro Mini reset button resets the board while two presses in quick succession cause it to start printing a default file off the SD card.
The perfboard used in this project is Perf+, and while relatively expensive (almost half the cost of the entire board) it allows for quick and easy construction with nothing more than a soldering iron. The layout editor, Perfy, was designed specifically for this project and is currently available for download on GitHub.