User Tools

Site Tools


klipper_faq:klipper_0_auf_100:btt_cb1_manta_m8p_sb2209

This is an old revision of the document!


BTT CB1, Manta M8P, SB2209

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 #1xx


Equipment

  • BTT CM1 Compute Modul
  • BTT Manta M8P V2.0 im Bridge Modus
    https://bttwiki.com/M8P.html
  • BTT SB2209 CAN V1.0 Toolhead Board
  • BTT HDMI5 V1.2 Display

Image Alternativen

SD-Karte vorbereiten

Hinweis: Wir verwenden hier ein Armbian Image und kein offizielles CB1 Image von BTT. Der Kernel ist deutlich jünger und auch alle zugehörigen Tools im Betriebssystem. So lässt sich auch Katapult sauber kompilieren!

Netzwerk

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

SSH Login

  • User biqu und Passwort biqu

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

Manta M8P V2.0 (Bridge Modus)

DFU Modus

  • Das Board in den DFU Modus bringen
    • Im Terminal auf Meldungen warten
      dmesg -HW
    • Jetzt die Boot0 Taste gedrückt halten, kurz die Reset Taste drücken und dann auch die Boot0 Taste wieder loslassen.
      • Hinweis: Die Tasten befinden sich jeweils direkt in der Nähe des µControllers.
    • Das Board meldet sich mit Product: DFU in FS Mode
      biqu@BTT-CB1:~$ dmesg -HW
      [Dec 7 09:52] usb 2-1.4: USB disconnect, device number 6
      [  +0.344603] usb 2-1.4: new full-speed USB device number 7 using ehci-platform
      [  +0.212514] usb 2-1.4: not running at top speed; connect to a high speed hub
      [  +0.001744] usb 2-1.4: New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00
      [  +0.000027] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
      [  +0.000020] usb 2-1.4: Product: DFU in FS Mode
      [  +0.000015] usb 2-1.4: Manufacturer: STMicroelectronics
      [  +0.000015] usb 2-1.4: SerialNumber: 374937683033
    • Die Meldung mag je nach Manta Board etwas variieren. Allerdings sollte dort immer was mit DFU und oder BOOTLOADER zu lesen sein.
    • STRG+C drücken, um die Meldungen zu beenden

Katapult flashen

Hinweis:
Katapult wird über USB (DFU-Mode) eingerichtet!
  • 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
  • git checkout 3e23332
  • make menuconfig (Manta M8P V2.0)
        Micro-controller Architecture (STMicroelectronics STM32)  --->
        Processor model (STM32H723)  --->
        Build Katapult deployment application (Do not build)  --->
        Clock Reference (25 MHz crystal)  --->
        Communication interface (USB (on PA11/PA12))  --->
        Application start offset (128KiB offset)  --->
        USB ids  --->
    ()  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
    (!PC3)  Status LED GPIO Pin
  • Wichtig: Hier wird als Communication interface USB ausgewählt, nicht CAN!
  • Sonst ist später kein Update möglich!
  • Katapult kompilieren
    make -j4
  • Katapult flashen (das Board muss im DFU Mode sein !)
    dfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/katapult/out/katapult.bin
  • Wichtig ist am Ende File downloaded successfully bei der Ausgabe im Terminal
  • Das Board einmal resetten
  • Reset Taste (Reset) drücken
  • oder das Board einmal stromlos machen
  • Die Status LED sollte jetzt am Manta Board blinken

Port ermitteln

  • Board stromlos machen
  • dmesg -HW starten und wieder Strom auf das Board geben
    biqu@BTT-CB1:~/katapult$ dmesg -HW
    [Feb10 05:38] usb 2-1.4: USB disconnect, device number 5
    [  +0.344916] usb 2-1.4: new full-speed USB device number 6 using ehci-platform
    [  +0.230326] usb 2-1.4: New USB device found, idVendor=1d50, idProduct=6177, bcdDevice= 1.00
    [  +0.000041] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [  +0.000015] usb 2-1.4: Product: stm32h723xx
    [  +0.000013] usb 2-1.4: Manufacturer: katapult
    [  +0.000012] usb 2-1.4: SerialNumber: 1E0043001051313236343430
    [  +0.001680] cdc_acm 2-1.4: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

Klipper flashen

  • cd ~/klipper
  • make menuconfig
    • Manta M8P V2.0
      [*] Enable extra low-level configuration options
          Micro-controller Architecture (STMicroelectronics STM32)  --->
          Processor model (STM32H723)  --->
          Bootloader offset (128KiB bootloader)  --->
          Clock Reference (25 MHz crystal)  --->
          Communication interface (USB to CAN bus bridge (USB on PA11/PA12))  --->
          CAN bus interface (CAN bus (on PD0/PD1))  --->
          USB ids  --->
      (1000000) CAN bus speed
      ()  GPIO pins to set at micro-controller startup
  • Es kann im folgenden Schritt zu einem Fehler kommen (vor allem mit dem CB1 Board):
    Python´s pyserial module is required to update. Install
    with the following command:
       /usr/bin/python3 -m pip install pyserial
     
    make: *** [src/stm32/Makefile:111: flash] Error 255

    In dem Fall einfach folgendes ausführen
    sudo apt install python3-serial

  • Klipper kompilieren und flashen (über USB / seriell!)
    make -j4 flash FLASH_DEVICE=/dev/ttyACM0
    biqu@BTT-CB1:~/klipper $ make -j4 flash FLASH_DEVICE=/dev/ttyACM0
      Creating symbolic link out/board
      Building out/autoconf.h
      Compiling out/src/sched.o
    ...
      Compiling out/src/stm32/hard_pwm.o
      Preprocessing out/src/generic/armcm_link.ld
      Building out/compile_time_request.o
    Version: v0.12.0-102-g9f41f53c
      Linking out/klipper.elf
      Creating hex file out/klipper.bin
      Flashing out/klipper.bin to /dev/ttyACM0
    Entering bootloader on /dev/ttyACM0
    Device reconnect on /sys/devices/platform/soc/5200000.usb/usb2/2-1/2-1.4/2-1.4:1.0
    /usr/bin/python3 lib/canboot/flash_can.py -d /dev/serial/by-path/platform-5200000.usb-usb-0:1.4:1.0 -f out/klipper.bin
     
    Attempting to connect to bootloader
    CanBoot Connected
    Protocol Version: 1.0.0
    Block Size: 64 bytes
    Application Start: 0x8020000
    MCU type: stm32h723xx
    Flashing '/home/biqu/klipper/out/klipper.bin'...
     
    [##################################################]
     
    Write complete: 1 pages
    Verifying (block count = 477)...
     
    [##################################################]
     
    Verification Complete: SHA = 381BC7BAE3D7B8717F7169CEDB8EA08E4D59A4CA
    CAN Flash Success
  • Die LED sollte jetzt nicht mehr blinken!

Can Query

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:

  • 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-CB1:~/klipper$ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
    Found canbus_uuid=fa5ad324b369, Application: Klipper
    Total 1 uuids found
    • Die UUID (canbus_uuid=fa5ad324b369) notieren !
    • Wird bei diesem Schritt kein Board gefunden, hilft oft ein Reset am Board (entweder über den Reset Taster oder 1x Strom weg und wieder dran)

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

Konfiguration Manta

klipper_faq/klipper_0_auf_100/btt_cb1_manta_m8p_sb2209.1733565180.txt.gz · Last modified: 2024/12/07 10:53 by dominik

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki