Table of Contents
BTT SKR MINI E3 V3.0 (USB)
Schrittweise Anleitung, um das Bigtree Tech SKR Mini E3 V3.0 Board über USB in Betrieb zu nehmen.
Hinweise
Diese Anleitung gilt für das Board mit der Version 3.0 (Controller STM32G0B1 / STM32G0B0)!
Es gibt inzwischen auch ein Board mit der Version 3.0.1, welches einen anderen Controller verwendet (Controller STM32F401)!
YouTube Video #82
Hinweise
- SBC bedeutet in der Anleitung Single Board Computer. Also meistens wohl ein Raspberry Pi.
- Es wird davon ausgegangen das auf dem SBC Klipper und MainSail eingerichtet ist.
- Ein Zugang zum SBC über SSH ist notwendig!
Version ermitteln
Wichtig
Die Versionen 3.0 und 3.0.1 haben unterschiedliche µController verbaut und sind von der Konfig teilweise nicht kompatibel!
Die Version kann man relativ einfach auf der Vorderseite nachsehen:
- (1) Der µController muss ein STM32G0B1 sein
- (2) Es gibt nur einen Button (Reset) auf dem Board
- (3) Der Aufdruck zeigt V3.0
Stromversorgung
Auf dem Board gibt es einen Jumper, den man für die 5V USB Versorgung setzen kann:
Jumper (SW_USB) | Stromversorgung Controller | Verwendung |
---|---|---|
gesetzt | 5V Stromversorgung über USB Anschluss | Board liegt “auf dem Tisch” |
NICHT gesetzt | 5V Stromversorgung über 12/24V Stecker | Board ist im Drucker eingebaut |
Faustregel
Im Betrieb den 5V Jumper (SW_USB) immer abziehen!
Verkabelung
- Ganz normale USB Verkabelung
- GND & 12 bzw. 24V extra zum Board führen
- Im Betrieb den SW_USB Jumper ziehen!
Klipper flashen
* cd ~/klipper
make menuconfig
Auf den verbauten Controller auf dem Board achten!
[*] Enable extra low-level configuration options Micro-controller Architecture (STMicroelectronics STM32) ---> Processor model (STM32G0B1) ---> Bootloader offset (8KiB bootloader) ---> Clock Reference (8 MHz crystal) ---> Communication interface (USB (on PA11/PA12)) ---> USB ids ---> () GPIO pins to set at micro-controller startup
- beenden mit
Q
undY
- Klipper kompilieren
make -j4
- Eine SD-Karte mit FAT32 formatieren. Eine 32GB Karte hat bei mir funktioniert. Sollte eure Karte nicht funktionieren, versucht es mit einer Karte ⇐ 4GB.
- Die Datei
~/klipper/out/klipper.bin
vom SBC auf die SD-Karte kopieren.- Am einfachsten geht das mit MobaXTerm.
- Die Datei umbenennen von
klipper.bin
infirmware.bin
- Das Board muss ausgeschaltet sein!
- SD-Karte in das SKR Board stecken und das Board wieder einschalten. Ob über die normale Stromversorgung oder USB spielt keine Rolle.
- Die Status LED blinkt kurz und nach ~10 Sekunden sollte Klipper geflasht sein.
- Das Board wieder stromlos machen
- Ggf. den SW-USB Jumper entfernen
- Die SD-Karte entnehmen und prüfen, ob die Datei umbenannt wurde in
FIRMWARE.CUR
. Wenn dem so ist, sollte der Flashvorgang geklappt haben. - Prüfen kann man das ebenfalls im SSH Terminal mit
dmesg -HW
pi@Pi3Test:~ $ dmesg -HW [Jan12 19:54] usb 1-1.5: new full-speed USB device number 7 using dwc_otg [ +0.134564] usb 1-1.5: New USB device found, idVendor=1d50, idProduct=614e, bcdDevice= 1.00 [ +0.000026] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000008] usb 1-1.5: Product: stm32g0b1xx [ +0.000007] usb 1-1.5: Manufacturer: Klipper [ +0.000006] usb 1-1.5: SerialNumber: 4D0020000450415339373620 [ +0.001254] cdc_acm 1-1.5:1.0: ttyACM0: USB ACM device
Port ermitteln
- Den USB Stecker abziehen
dmesg -HW
starten
pi@Pi3Test:~/klipper $ dmesg -HW [ +0.296899] usb 1-1.5: new full-speed USB device number 33 using dwc_otg [ +0.134540] usb 1-1.5: New USB device found, idVendor=1d50, idProduct=614e, bcdDevice= 1.00 [ +0.000038] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000017] usb 1-1.5: Product: stm32g0b1xx [ +0.000012] usb 1-1.5: Manufacturer: Klipper [ +0.000012] usb 1-1.5: SerialNumber: 4D0020000450415339373620 [ +0.001643] cdc_acm 1-1.5:1.0: ttyACM0: USB ACM device
- Wir brauchen die Information mit tty… also in diesem Fall ttyACM0
STRG+C
drücken, um die Meldungen zu beenden
- Den zugehörigen Link ermitteln
ls -lR /dev/ | grep -v '\->\s../tty' | grep -e 'tty[[:alpha:]]' -e serial
- Wir brauchen die Info unter
/dev/serial/by-id:
:
lrwxrwxrwx 1 root root 13 Nov 11 15:15 usb-Klipper_stm32g0b1xx_4D0020000450415339373620-if00 → ../../ttyACM0
- Achte darauf das am Ende die gleiche tty Bezeichnung steht wie sie im vorherigen Schritt ermittelt wurde (hier also ttyACM0)
- Was für für die Konfig brauchen ist dann am Ende:
/dev/serial/by-id/usb-Klipper_stm32g0b1xx_4D0020000450415339373620-if00
kurzer Test
Ob das Board korrekt mit Klipper läuft, lässt sich mit folgendem Befehl schnell testen:
~/klippy-env/bin/python ~/klipper/klippy/console.py /dev/serial/by-id/usb-Klipper_stm32g0b1xx_4D0020000450415339373620-if00
Wichtig
Der Pfad am Ende muss natürlich mit dem übereinstimmen was ihr im vorherigen Schritt ermittelt habt!
Wenn ihr ein connected
am Anfang des Textes seht, ist das Board richtig geflasht.
Konfig einspielen
cd ~/printer_data/config
nano ~/printer_data/config/printer.cfg
- Die Zeile mit
serial
entsprechend mit dem ermittelten Pfad von oben anpassen
[mcu] serial: /dev/serial/by-id/usb-Klipper_stm32g0b1xx_4D0020000450415339373620-if00
[include mainsail.cfg]
oben einfügen- Speichern mit STRG+X, dann Y und Enter
Klipper Update
Das Update der Klipper Firmware wird normal ja im eingebauten Zustand durchgeführt. Da das Board dann eh mit einer Versorgungsspannung betrieben wird, ist der SW-USB Jumper nicht nötig!
- Klipper Dienst stoppen
sudo systemctl stop klipper.service
cd ~/klipper && make menuconfig
- Die Einstellungen sind genauso wie im Kapitel Klipper flashen
make flash -j4 FLASH_DEVICE=/dev/ttyACM0
- Wie man an den Port (hier ttyACM0) kommt, ist hier beschrieben
- Am Ende kann es zu einem Fehler kommen. Davon nicht irritieren lassen. Wichtig ist diese Zeile:
File downloaded successfully
- Einmal Reset-Taste drücken am Board hilft
- Klipper Dienst starten
sudo systemctl start klipper.service
Sonstiges
Bootloader wiederherstellen
- st-flash –connect-under-reset write SKR-MINI-E3-V3.0-bootloader-and-firmware.bin 0x8000000
ADXL345 (Input Shaper)
Ein ADXL345 Sensor für Input Shaper kann direkt an das Board angeschlossen werden.
- Anschluss am Expansion Port
ADXL345 Pin | SKR E3 v3.0 SPI Port Pin |
---|---|
GND | GND |
VCC | +5V |
CS | NSS |
INT1 | N/A |
INT2 | N/A |
SDO | MISO |
SDA | MOSI |
SCL | CLK |
- Konfig Anpassung
[adxl345] axes_map : x,y,z cs_pin : PD9 spi_bus : spi1 [resonance_tester] accel_chip : adxl345 probe_points : 150, 150, 20 # Center of your bed, raised up a little
- Test in der MainSail Konsole mittels
ACCELEROMETER_QUERY
Als Ergebnis sollte in etwa sowas kommen:
accelerometer values (x, y, z): -1110.308913, 1184.329507, 11414.822920
- Sollte der Test folgenden Fehler bringen ist die Verkabelung falsch!
Invalid adxl345 id (got 0 vs e5)
Verbindungen
Type | Notes |
---|---|
USB | Default PA11/PA12 |
Seriell | UART1 PA10/PA9 UART2 PA2/PA3 |
CAN | PB8/PB9 |
Teaser USB/CAN Bridge
Links
- How to use Klipper on SKR-mini-E3-V3.0
https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/tree/master/firmware/V3.0/Klipper - Schaltplan
https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/blob/master/hardware/BTT%20SKR%20MINI%20E3%20V3.0/Hardware/BTT%20E3%20SKR%20MINI%20V3.0_SCH.pdf
https://raw.githubusercontent.com/bigtreetech/BIGTREETECH-SKR-mini-E3/master/hardware/BTT%20SKR%20MINI%20E3%20V3.0/Hardware/BTT%20E3%20SKR%20MINI%20V3.0_SCH.pdf - Pinout
https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/blob/master/hardware/BTT%20SKR%20MINI%20E3%20V3.0/Hardware/BTT%20E3%20SKR%20MINI%20V3.0_PIN.pdf
https://raw.githubusercontent.com/bigtreetech/BIGTREETECH-SKR-mini-E3/master/hardware/BTT%20SKR%20MINI%20E3%20V3.0/Hardware/BTT%20E3%20SKR%20MINI%20V3.0_PIN.pdf - BTT SKR Mini E3 V3 Einrichtungsanleitung
https://www.makenprint.uk/3d-printing/3d-printing-guides/3d-printer-mainboard-installation-guides/btt-skr-mini-e3-v3-guides/btt-skr-mini-e3-v3-setup-guide/ - ADXL345 Input Shaper Infos
https://www.reddit.com/r/klippers/comments/sazlvv/connecting_adxl345_to_skr_mini_e3_v20/