Schrittweise Anleitung, um die Bigtree Tech EBB36 / EBB42 Kopfboards mit dem BTT Buskoppler U2C über CAN in Betrieb zu nehmen.
Hinweise
1) Diese Anleitung beschreibt beide EBB Boards (36 & 42) und das in allen derzeit verfügbaren Varianten (V1.0, V1.1, V1.2).
2) Variante 1.0 hat einen STM32F072C8T6 Controller. Die nachfolgenden Modelle einen STM32G0B1CBT6.
3) Die Modelle der Versionen (also als Beispiel EBB36 V1.0 & EBB42 V1.0) sind Pinkompatibel. Die verschiedenen Versionen sind nicht pinkompatibel!
Es ist wichtig die Version von dem Board zu ermitteln! Dazu einfach auf der Rückseite nachsehen:
Links ist das EBB42, rechts ist das EBB36.
Die Versionen haben unterschiedliche Controller verbaut und teilweise unterschiedliche Pinbelegungen!
dmesg -HW
pi@Pi3Test:~/printer_data/config $ dmesg -HW [Nov11 14:09] usb 1-1.4: new full-speed USB device number 5 using dwc_otg [ +0.133404] usb 1-1.4: New USB device found, idVendor=1d50, idProduct=606f, bcdDevice= 0.00 [ +0.000037] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000016] usb 1-1.4: Product: candleLight USB to CAN adapter [ +0.000013] usb 1-1.4: Manufacturer: bytewerk [ +0.000011] usb 1-1.4: SerialNumber: 0050004A5542501720393839 [ +0.002168] gs_usb 1-1.4:1.0: Configuring for 1 interfaces
candleLight
gefunden werdenSTRG+C
drücken, um die Meldungen zu beendensudo nano /etc/network/interfaces.d/can0
STRG + x
, dann Y
, dann Enter
beenden auto can0 iface can0 can static bitrate 1000000 up ifconfig $IFACE txqueuelen 1024
ip a
can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP group default qlen 1024
DOWN
stehen hilft meist ein sudo systemctl restart networking.service
Auf dem Board gibt es einen Mikro Jumper, den man setzen kann:
Jumper | 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 Kopf eingebaut |
Als Faustregel im Betrieb den 5V Jumper immer abziehen!
Katapult wird hier benötigt, um über den CAN Bus das Board mit Klipper flashen zu können.
cd ~ && ls
cd katapult
ACHTUNG Auf die Version achten beimake menuconfig
!
make menuconfig
für Version 1.0 Micro-controller Architecture (STMicroelectronics STM32) ---> Processor model (STM32F072) ---> Build Katapult deployment application (Do not build) ---> Clock Reference (8 MHz crystal) ---> Communication interface (CAN bus (on PB8/PB9)) ---> Application start offset (8KiB offset) ---> (1000000) CAN bus speed () GPIO pins to set on bootloader entry [*] Support bootloader entry on rapid double click of reset button [ ] Enable bootloader entry on button (or gpio) state [*] Enable Status LED (PA14) Status LED GPIO Pin
make menuconfig
für Version 1.1 & 1.2 Micro-controller Architecture (STMicroelectronics STM32) ---> Processor model (STM32G0B1) ---> Build Katapult deployment application (Do not build) ---> Clock Reference (8 MHz crystal) ---> Communication interface (CAN bus (on PB0/PB1)) ---> Application start offset (8KiB offset) ---> (1000000) CAN bus speed () GPIO pins to set on bootloader entry [*] Support bootloader entry on rapid double click of reset button [ ] Enable bootloader entry on button (or gpio) state [*] Enable Status LED (PA13) Status LED GPIO Pin
Q
und Y
make -j4
dmesg -HW
Product: DFU in FS Mode
pi@Pi3Test:~/katapult $ dmesg -HW [Nov11 07:34] usb 1-1.4: new full-speed USB device number 17 using dwc_otg [ +0.133427] usb 1-1.4: New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00 [ +0.000037] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000016] usb 1-1.4: Product: DFU in FS Mode [ +0.000013] usb 1-1.4: Manufacturer: STMicroelectronics [ +0.000012] usb 1-1.4: SerialNumber: 206A39785542
STRG+C
drücken, um die Meldungen zu beendendfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/katapult/out/katapult.bin
File downloaded successfully
Hinweis
Die folgenden Schritte setzen natürlich voraus, das der CAN Bus korrekt im Vorfeld eingerichtet wurde!
Wenn das Board über CAN verbunden ist, dann kann man mit den folgenden Schritten prüfen, ob Katapult geflasht wurde:
sudo systemctl stop klipper.service
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
biqu@BTT-PI12:~/katapult$ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0 Found canbus_uuid=539892be834d, Application: CanBoot Total 1 uuids found
ACHTUNG Auf die Version achten beimake menuconfig
!
cd ~/klipper
make menuconfig
für Version 1.0 [*] Enable extra low-level configuration options Micro-controller Architecture (STMicroelectronics STM32) ---> Processor model (STM32F072) ---> Bootloader offset (8KiB bootloader) ---> Clock Reference (8 MHz crystal) ---> Communication interface (CAN bus (on PB8/PB9)) ---> (1000000) CAN bus speed () GPIO pins to set at micro-controller startup
make menuconfig
für Version 1.1 & 1.2 [*] 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 (CAN bus (on PB0/PB1)) ---> (1000000) CAN bus speed () GPIO pins to set at micro-controller startup
Q
und Y
make -j4
~/klippy-env/bin/python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u <uuid>
~/klippy-env/bin/python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u 539892be834d
Flash Success
beendet werden!~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
… Application: Klipper
liefernsudo systemctl start klipper.service
Ob das Board korrekt mit Klipper läuft, lässt sich mit folgendem Befehl schnell testen:
~/klippy-env/bin/python ~/klipper/klippy/console.py -c can0 44d860c9632b
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.
cd ~/printer_data/config
wget 'https://raw.githubusercontent.com/bigtreetech/EBB/master/EBB%20CAN%20V1.0%20(STM32F072)/sample-bigtreetech-ebb-canbus-v1.0.cfg' -O BTT_EBB.cfg
wget 'https://raw.githubusercontent.com/bigtreetech/EBB/master/EBB%20CAN%20V1.1%20(STM32G0B1)/sample-bigtreetech-ebb-canbus-v1.1.cfg' -O BTT_EBB.cfg
wget 'https://github.com/bigtreetech/EBB/raw/master/EBB%20CAN%20V1.1%20and%20V1.2%20(STM32G0B1)/sample-bigtreetech-ebb-canbus-v1.2.cfg' -O BTT_EBB.cfg
nano ~/printer_data/config/BTT_EBB.cfg
[mcu EBBCan] #serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00 canbus_uuid: 539892be834d
serial
auskommentieren oder löschencanbus_uuid
eintragen und ggf. die #
am Anfang der Zeile entfernen (UUID ermitteln siehe CAN Query)!printer.cfg
noch die neue Konfig einbetten [include BTT_EBB.cfg]
Das Update erfolgt genauso wie das erste Bespielen (Klipper per Katapult) mit Klipper.
sudo systemctl stop klipper.service
~/klippy-env/bin/python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u <uuid>
sudo systemctl start klipper.service