Anycubic i3 Mega – Wifi Mod Update mit Wemos d1 mini / ESP8266 und Projekt ESP3D

Ich habe nach einer Lösung für eine Wifi/Wlan Verbindung zu meinem Anycubic i3 Mega geschaut und wollte dabei nicht auf Octoprint setzen. Dazu hätte ich mir erst ein Raspberry kaufen müssen. Ok es läuft auch unter Windows, dafür muss allerdings immer ein PC eingeschaltet bleiben. Es geht aber auch mit einem ESP8266 oder ESP32 für gerade mal ein paar Euro noch viel kostengünstiger und man muss auf eigentlich keine besonderen Funktionen verzichten.

ESP3D ist ein Github Projekt von luc bietet zahlreiche Einstellmöglichkeiten, wodurch im Prinzip alle Hauptfunktionen (Extruder-Settings, von SD Card Druck starten, vorheizen Bed und/oder Extruder, Makrofunktion für Gcodes, Gcode Kommandozeile) des Druckers gesteuert werden. Darüberhinaus gibt es inzwischen auch die Möglichkeit der Notification/Benachrichtigung per Mail, Pushover oder Line. Außerdem kann eine Webcam/Kamera direkt eingebunden werden. Der Zugriff erfolgt über ein beliebigen Webbrowser und ist somit unabhängig von einem Server oder Gerät. Smartphone, Tablet oder PC können für die Steuerung im Anschluß easy genutzt werden.

Ich bin sehr zufrieden mit dem Programm und kann es in jedem Fall weiterempfehlen. Es wird derzeit noch immer weiterentwickelt, die aktuelle Version ist von Sept/2019 und ver. 3.0 ist in Planung. Die Verkabelung an sich ist nicht schwer, aber man sollte schon etwas geübt im Löten sein, weil an zwei SMD Vorwiderständen auf dem Trigorilla Board die Kabel für RX und TX verlötet werden müssen. Der Rest wird im Prinzip nur gesteckt. Das bespielen des Wemos d1 Mini erfolgt im Anschluss. Im Github Projekt ist auch alles sehr gut beschrieben, aber es fehlen hier und dort ein paar Informationen um die Sache mit dem Anycubic i3 Mega ordentlich ins laufen zu bekommen.

Fangen wir also an, benötigt werden folgende Teile für den Wifi-Mod:

Zuerst muss mal wieder der Drucker auf der Unterseite aufgeschraubt werden, so dass wir freien Zugang zum Trigorilla Mainboard haben. Dort nehmen wir am UART 3 Ausgang 5v und Gnd ab und oben links an den beiden Kondensatoren werden die Kabel für TX und RX direkt an die im Foto gezeigten Vorwiderstände verlötet. Diese Kabel laufen dann entsprechend zum ESP8266 bzw. dem Wemos d1 mini.

Hier ist mein Schaltplan für den Wemos d1 mini mit Logic-Level-Converter. Ich habe das Wiki im Projekt auch dahingehend aktualisiert.



Nachdem die Verkabelung soweit feststeht, können die Kabel vom d1 mini wieder abgezogen und der wemos mit dem Computer per USB verbunden werden. Nun brauchen wir Arduino und ein paar Libaries für Arduino. Bitte ladet euch Arduino 1.88! Ich habe es mit 1.69 und 1.68 versucht, aber keinen Erfolg gehabt. Version 1.89 funktioniert ebenfalls. Diese Libaries in den Libaries Programm Ordner von Arduino kopieren! Ihr findet die Libaries auch in eurem heruntergeladenem Projektordner.

In Arduino selber stellt ihr unter Datei – Voreinstellungen diese URL für zusätzliche Boardverwalter ein. Im Anschluss werden ein paar Pakete installiert.

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Jetzt wechselt ihr in den Reiter Werkzeuge – Board:“xxx“ – Boardverwaltung. Gebt in der Suche ESP8266 ein, ihr findet ESP8266 by ESP8266 Community. Hier installiert ihr die Version 2.5.2!! Das ist sehr wichtig, keine andere Version installieren!

Wenn das erledigt ist, kann das Board in Arduino eingestellt werden. Bei Wemos d1 Mini sind dabei folgende Einstellungen vorzunehmen. Für einen ESP8266 gelten die gleichen Einstellungen, nur die Speicheraufteilung ist etwas anders, weil der Chip meist nur 1MB fassen kann. Dort bitte 1MB und 500kb SPIFFS einstellen. Der Wemos kann 4MB verwalten. Hier können wir daher mit 2M SPIFFS arbeiten, was für die WebUI von Vorteil ist. Die CPU Frequenz unbedingt auf 160MHz setzen und die Einstellungen bitte wie im Foto gezeigt übernehmen.

Im Sketch selber muss nichts angepasst werden! Einfach durch klicken auf das Häkchen links oben den Sketch prüfen lassen, ist alles ok, wird durch Klick auf den Pfeil neben dem Häkchen der Sketch auf den Wemos d1 Mini übertragen. Nach Fertigstellung solltet ihr in den Wlan-Einstellungen ein offenes WLAN mit dem Namen ESP3Dxx erhalten. Damit verbinden (Passwort: 12345678) und ihr werdet automatisch in den Browser weitergeleitet. Dort beginnt jetzt die Setup-Routine. Sollte die nicht erscheinen und folgendes Bild zu sehen sein, müsst ihr die index.html.gz aus eurem heruntergeladenem Projektordner (ESP3D) hochladen. So sollte der Pfad in etwa aussehen:

In der Setup-Routine folgt ihr den Anweisungen, stellt den Wemos/ESP8266 auf Station um, so dass er sich in euer Wlan-Netzwerk einwählt und keinen AccesPoint darstellt. Bei der Baudrate in jedem Fall 25000 auswählen, da sonst die Kommunikation zwischen Trigorilla Board und Wemos d1 Mini nicht klappen wird. Wenn alles eingerichtet ist, könnt ihr den Wemos neustarten und er sollte sich mit eurem Heimnetzwerk verbinden. Klappt das alles, wieder vom USB trennen und die vorbereiteten Kabel entsprechend dem Anschlussplan am Wemos d1 Mini wieder anschließen oder gleich verlöten. Jetzt den Drucker einschalten, kurz abwarten bis der Wemos gestartet ist und sich ins Wlan eingewählt hat, dann sollte die ESP3D WebUI unter der IP Adresse  192.xxx.xxx.xxx erreichbar sein. Wenn ihr nicht wisst welche IP der Wemos erhalten hat, schaut in eurem Router nach dem neuen Gerät und vergebt dort auch gleich eine feste IP!

Die letzten Tage habe ich mich mit der ESP3D WebUI genauer befasst und das Design angepasst. Außerdem habe ich eine Notizfunktion implementiert. So kann man sich schnell ein Beispiel für Gcodes oder andere Dinge notieren und abspeichern. Die Funktion nutzt den Local Storage, daher werden die Notizen nur auf einem Gerät gespeichert. Greift ihr mit einem anderen PC oder Handy auf die WebUI zu, wird ein neuer LocalStorage auf diesem Gerät erstellt. Da ich den Drucker aber immer vom PC aus steuere, stört mich die Einschränkung nicht. Wer möchte kann sich gerne meine index.html.gz herunterladen und in der WebUI hochladen. Anschließend einmal die Browserseite aktualisieren und die neue WebUI steht euch zur Verfügung. Mein aktuelle index.html.gz findet ihr in meinem Github-Klon von Luc oder weiter unten auf der Seite zum direktem Download:

Wenn Ihr wieder die alte Version nutzen möchtet, ladet die aktuelle index.html.gz aus dem Git-Verzeichnis von ESP3D-WebUi oder eurem Projektordner und ladet diese wieder im Tab – ESP3D in der WebUi hoch.

Hier ein paar Fotos zu meinen Design-Änderungen und der implementierten Notizfunktion „SafeMemo“:

Für den Wemos d1 mini  und den Logik Level Converter habe ich eine 3D Druckdatei angepasst, so dass beide Teile im Case platz finden. Das Case kann man zum Schluss auch wunderbar im Gehäuse verstecken. Der Empfang ist dann immer noch ausreichend.

Viel Spaß beim basteln. 🙂

index.html.gz für ESP3D WebUi (BoxUi)
index.html.gz
Version: ver. 1.0
127.3 KiB
39 Downloads
Details

weiterführende Links:

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.