Table of Contents

Knomi - ESP C3 Hack

Knomi ist ein extra Display für den Stealthburner das von BTT entwickelt wurde. Es zeigt während dem Druck diverse Statusinformationen, an die es über WLAN vom Drucker bezieht. Siehe dazu auch die Doku für mehr Informationen: https://bigtreetech.github.io/docs/KNOMI.html .

Der original Knomi basiert auf einem ESP32 Wroom. Nun gibt es aber diverse andere Runddisplays, die ebenfalls einen EPS32 verwenden. Eines dieser Displays ist das folgende Display:
https://de.aliexpress.com/item/1005005453515690.html
Zu haben für ca. 12€ und damit deutlich günstiger als ein original Knomi. Der Nachteil ist, dass dieses Display einen ESP32 C3 verwendet, der leider nur mit 400 anstatt 520kb RAM ausgestattet ist und zudem nur einen CPU Kern hat (und nicht zwei wie der Knomi).

Im Folgenden wird beschrieben, wie die Firmware kompiliert werden kann und was es ggf. noch an nützlichen Infos gibt …

YouTube Video #65


WICHTIG

Diese Firmware funktioniert nur auf einem Display Modul mit einem ESP32 C3!
Die Firmware funktioniert nicht auf einem original Knomi!

Vorbereitungen & Infos

Die Anleitung basiert darauf das die alte Arduino IDE (legacy) genutzt wird. Diese kann in einem portablen Modus genutzt werden - sprich alle nötigen Dateien & Ordner befinden sich in einem Ordner auf der Platte.

Als Vorbereitung muss also auf der Festplatte ein Ordner angelegt werden in dem später die Arduino IDE und der Quellcode abgelet werden. Ich werde im Folgenden beispielhaft den Ordner C:\Build verwenden. Wenn ihr einen anderen Ordner habt muss das ggf. angepasst werden.

Downloads

Arduino IDE portabel

Damit die Arduino IDE portabel wird muss ein extra Ordner angelegt werden. Und zwar in C:\Build\arduino-1.8.19\ der Ordner portable. Der muss auch wirklich genauso heißen!

Die Arduino IDE starten
(über arduino.exe)

Arduino IDE einrichten

Die Arduino IDE schließen

Bibliotheken

Für das korrekte Kompilieren müssen noch 3 Bibliotheken kopiert werden.

extra ESP32 Partition

Es muss eine neues Partition Layout hinzugefügt werden (beschreibt die Einteilung des Flash in bestimmte Bereiche). Sonst passt die compilierte Firmware nicht komplett in den Seicher.

Die Arduino IDE starten
(über arduino.exe)

Controller einstellen

Hinweis:
Der COM Port muss natürlich ermittelt werden! Das geht z.B. über den Geräte Manager von Windows.

Code laden und kompilieren

Test

Wenn der Knomi C3 jetzt bootet sollte er erst einen Startschirm zeigen und dann die rollenden Augen. Das bedeutet er ist verbunden :-)

Klipper Konfig

Stromversorgung

Da das Board keinen direketen nutzbaren Anschluss hat kann man sich so behelfen:

Im Schaltplan ist das an der Schottky Diode:

Probleme

Anpassungen / Script

Flashen

esptool.exe --chip esp32c3 --port COM4 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x0 KnomiC3.ino.bootloader.bin 0x8000 KnomiC3.ino.partitions.bin 0xe000 boot_app0.bin 0x10000 KnomiC3.ino.bin

Hardware DIFF

Funktion Knomi Desc. Knomi Pin Knomi Display Clone Desc. Clone Pin Clone Display
Boot Taster BOOT IO0 BOOT IO9
Backlight Backlight IO2 2 LEDK (vom Mosfet) IO3 LED-
Bildschirm Reset Screen-rst IO4 11 RES REST EN 11 REST
WIFI Reset WIFI RESET EN
WIFI Mosi WIFI MOSI IO23 10 SDIN SDA IO7 10 SPIMOSI
WIFI Miso WIFI MISO IO19 7 RS D/C IO2 7 SPIMISO
WIFI SCK WIFI SCK IO18 9 SCLK SCL IO6 9 SPICLK
WIFI CS WIFI CS IO5 8 CS CS IO10 8 SPICS
Uart TX U0TXD TXD0 USB_DN IO18
Uart RX U0RXD RXD0 USB-DP IO19
LED ?? IO32

Hardware Knomi

ESP
Display
Backlight

Hardware new

ESP
Display
Backlight

Direkt flashen

Firmware compilieren

https://github.com/DrKlipper/KNOMI_C3

Klipper Konfig

Verbindung einrichten

Reset

esptool.exe –port COM4 erase_flash

Zukunft

520kb Display