User Tools

Site Tools


klipper_faq:klipper_0_auf_100:pi4_octopus_pro_ucan_ebb36

Pi4, Octopus Pro, UCan, EBB36

Hinweis
Diese Anleitung beschreibt das Einrichten der aufgeführten Komponenten (siehe Equipment). Die Anleitung kann nicht 1:1 für andere Hardware Konstellationen verwendet werden!

YouTube Video #115


Equipment

  • Raspberry Pi 4 mit 128GB SD-Karte
  • BTT Pi TFT50 (DSI Anschluss)
  • Octopus Pro V1.1 (STM32 H723)
  • UCAN USB Can Adapter (Buskoppler)
  • EBB36 CAN V1.2 Toolhead Board

SD-Karte vorbereiten

  • MainSail OS über Raspberry PI Imager installieren
    • OS WÄHLEN → Other specific-purpose OS → 3D printing → Mainsail OS → Mainsail OS x.x.x - Raspberry PI (64 Bit)
    • SD-KARTEN WÄHLEN
    • Weiter → Einstellungen bearbeiten
      • Hostname eintragen
      • Benutzer Pi + Passwort
      • ggf. Wifi einrichten
      • Wifi Land einstellen
      • Sprache festlegen
      • Dienste → SSH aktivieren mit Passwort als Authentifizierung
      • Speichern
    • 2 x JA um die Einstellungen zu übernehmen und das Image zu schreiben

Netzwerk

  • IP finden
    • Über Router nachsehen
    • Über MobaXTerm Netzwerkscan durchführen (Tools → Network scanner)
  • Default mit LAN (DHCP)
  • WLAN Konfig
    • nmtui

Updates

  • sudo apt update && sudo apt upgrade -y && sudo apt install -y git git-lfs silversearcher-ag wavemon hexedit sudoku tcpdump iptraf mc htop dcfldd nano usbutils ranger tldr ncdu can-utils multitail fd-find lsof x11vnc terminator minicom cutecom joystick jstest-gtk i2c-tools speedtest-cli iotop && mkdir -p ~/.local/share && tldr -u
  • sudo apt autoremove -y modem* cups* pulse* avahi* triggerhappy*
  • KIAUH
  • Mainsail & Co über die Webseite updaten

Octopus Pro

  • Flashen
    • cd ~/klipper && make menuconfig
    • [*] Enable extra low-level configuration options
          Micro-controller Architecture (STMicroelectronics STM32)  --->
          Processor model (STM32H723)  --->
          Bootloader offset (No bootloader) --->
          Clock Reference (25 MHz crystal)  --->
          Communication interface (USB (on PA11/PA12))  --->
          USB ids  --->
      ()  GPIO pins to set at micro-controller startup
    • Q und Y zum beenden und speichern
    • make -j4 um Klipper zu kompilieren
    • DFU Modus aktivieren am Octopus Board
      • dmesg -Hw im Terminal aufrufen
      • V-BUS Jumper setzen und board per USB an den Pi anschließen

      • Jumper setzen und die Reset Taste ganz rechts drücken
      • Terminal Ausgabe :
              * [Nov 1 13:42] usb 1-1.1: new full-speed USB device number 3 using xhci_hcd
        [  +0.101925] usb 1-1.1: not running at top speed; connect to a high speed hub
        [  +0.006001] usb 1-1.1: New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00
        [  +0.000013] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
        [  +0.000006] usb 1-1.1: Product: DFU in FS Mode
        [  +0.000004] usb 1-1.1: Manufacturer: STMicroelectronics
        [  +0.000005] usb 1-1.1: SerialNumber: 377D37553033
    • dfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/klipper/out/klipper.bin
  • Konfiguration einbinden
    cp ~/klipper/config/generic-bigtreetech-octopus-pro-v1.1.cfg ~/printer_data/config/printer.cfg
  • mainsail.cfg noch inkludieren
  • Port suchen und einbinden
    • dmesg -Hw und danach 1x Reset am Board drücken
    • den tty Port ermitteln
    • ls -lR /dev/ | grep -v '\->\s../tty' | grep -e 'tty[[:alpha:]]' -e serial
    • /dev/serial/by-id… in der Konfig unter MCU eintragen

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_stm32f446xx_390028000950315239323320-if00

Der Pfad am Ende muss natürlich mit dem übereinstimmen was ihr im vorherigen Schritt ermittelt habt!

UCAN

  • Flashen mit Klipper (Oder alternativ mit candleLight)
    • cd ~/klipper && make menuconfig
    • [*] Enable extra low-level configuration options
          Micro-controller Architecture (STMicroelectronics STM32)  --->
          Processor model (STM32F072)  --->
          Bootloader offset (No bootloader)  --->
          Clock Reference (8 MHz crystal)  --->
          Communication interface (USB to CAN bus bridge (USB on PA11/PA12))  --->
          CAN bus interface (CAN bus (on PB8/PB9))  --->
          USB ids  --->
      (1000000) CAN bus speed
      ()  GPIO pins to set at micro-controller startup
    • Q und Y zum beenden und speichern
    • make -j4 um Klipper zu kompilieren
    • DFU Modus aktivieren am UCAN Board
      • dmesg -Hw im Terminal aufrufen
      • Pins kurzschließen … TBD
      • Terminal Ausgabe :
        
        
    • dfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/klipper/out/klipper.bin

SBC

  • Interface einrichten
    Achtung : die Bitrate von 1000000 muss auch in der Board Firmware eingestellt werden!
    sudo nano /etc/network/interfaces.d/can0
    folgendes eintragen, speichern und mit STRG + x, dann Y, dann Enter beenden
    allow-hotplug can0 
    iface can0 can static 
        bitrate 1000000 
        up ifconfig $IFACE txqueuelen 1024

Test

  • Testen mit ip a
    can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP group default qlen 1024
  • Sollte das Interface auf DOWN stehen hilft meist ein
    sudo systemctl restart networking.service
    oder ein
    sudo ip link set can0 up type can bitrate 1000000

EBB36

  • Katapult flashen (über USB !)
    • Katapult laden wenn noch nicht vorhanden, sonst in den Katapult Ordner wechseln
      [ ! -d "$HOME/katapult/" ] && cd ~ && git clone https://github.com/Arksine/katapult && cd katapult || cd ~/katapult
    • make menuconfig für Version 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 zum beenden und speichern
    • make -j4 um Katapult zu kompilieren
    • DFU Modus aktivieren am EBB36 Board
      • dmesg -Hw im Terminal aufrufen
      • Die Boot Taste am Board gedrückt halten und dabei das Board über USB mit dem SBC verbinden
      • [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 beenden
      • dfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/katapult/out/katapult.bin
        Das Ergebnis sollte sein File downloaded successfully
      • ggf. USB Kabel abziehen. Board muss sich danach mit Katapult / Canboot melden bei dmesg -Hw
  • UUID ermitteln
    • Klipper Dienst stoppen
      sudo systemctl stop klipper.service
    • ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
      Wenn ein Board gefunden wird, dann sollte folgende Ausgabe erscheinen:
      biqu@BTT-PI12:~/katapult$ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
      Found canbus_uuid=539892be834d, Application: CanBoot
      Total 1 uuids found
      • Die UUID (canbus_uuid=539892be834d) notieren !
      • Wird bei diesem Schritt kein Board gefunden, hilft oft ein Reset am Board (entweder über Reset Taster oder 1x Strom weg und wieder dran)
  • Klipper flashen
    • cd ~/klipper
    • make menuconfig für Version 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
      • beenden mit Q und Y
    • Klipper kompilieren
      make -j4
    • Klipper flashen
      ~/klippy-env/bin/python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u <uuid>
      In diesem Beispiel wäre das dann
      ~/klippy-env/bin/python3 ~/katapult/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u 539892be834d
      • Das sollte mit einem Flash Success beendet werden!
  • Konfiguration einbinden
    • cd ~/printer_data/config
    • 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
      • Die Zeile mit serial auskommentieren oder löschen
      • Die UUID bei canbus_uuid eintragen und ggf. die # am Anfang der Zeile entfernen (UUID ermitteln siehe CAN Query)!
    • In der printer.cfg noch die neue Konfig einbetten
      [include BTT_EBB.cfg]

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 -c can0 44d860c9632b

Die UUID am Ende muss natürlich mit dem übereinstimmen, was ihr im vorherigen Schritt ermittelt habt!

Klipper Dienst wieder starten
sudo systemctl start klipper.service

Display

klipper_faq/klipper_0_auf_100/pi4_octopus_pro_ucan_ebb36.txt · Last modified: 2024/11/03 07:48 by dominik

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki