User Tools

Site Tools


klipper_faq:klipper_0_auf_100:sovol_sv08_mainstream_klipper

This is an old revision of the document!


Sovol SV08 Mainstream Klipper

YouTube Video #xxx


Vorbereitungen

  • Es wird ein 'Makerbase MKS EMMC-ADAPTER V2 USB 3.0' USB Adapter benötigt um die eMMC zu lesen / schreiben.
  • Es macht durchaus Sinn sich eine neue eMMC zu beschaffen. Die Originale ist erstens recht klein mit 8GB und einen “Rückweg” zu haben zum Urzustand ist nie verkehrt.
  • Ein ST-Link V2 (Mini) wird benötigt, um die beiden Controller auf dem Mainboard im Druckerwith und am Kopf mit einer neuen Firmware zu beschreiben.
    Ich gehe da einen anderen Weg als die Original Anleitung. Man kann unter Linux auch relativ einfach die Firmware flashen und da braucht es nicht extra noch ein Windows Tool wie den STM32CubeProgrammer. Der ist nämlich öfter mal recht zickig in der Anwendung :-)

Sicherung

Es macht durchaus Sinn vorher die Konfig bzw. den ganzen Konfig Ordner vom original Klipper zu sichern. Es gibt zwei Möglichkeiten wie das klappen kann Online und Offline …

Drucker Online

Der Drucker ist noch im Netzwerk zu erreichen. Dann kann man mittels MobaXTerm eine SSH Verbindung aufbauen und die Daten über den MobaXTerm eingebauten SFTP Client abrufen. Einfach in den Ordner printer_data/config gehen und alle Dateien in einen Windows Ordner sichern. Alternativ geht das auch mit WinSCP oder SCP, macht es aber deutlich komplizierter vom Aufruf.

Der SSH Zugang zum Original Sovol Image ist User: sovol und Passwort: sovol

Drucker Offline

Wenn der Drucker Offline ist - also nicht mehr im Netzwerk erreichbar oder wenn er einfach nicht mehr startet - dann braucht ihr den eMMS Adapter. Dort kommt dann die ausgebaute eMMC rein und ihr müsst euch dann eine Linux Maschine suchen. Unter Windows ist nämlich die Partition auf der die wichtigen Daten liegen, nicht sichtbar. In Linux müsst ihr ggf. noch die Partition mounten und könnt dann die Daten kopieren. Das alles setzt natürlich voraus, dass die eMMC auch noch heile ist.

Linux
Hier am Beispiel mit einem Raspberry Pi:

  • eMMC mit Adapter in den Pi stecken
  • in der Konsole mal ein dmesg absetzen. Das sollte am Ende irgendwas mit USB Storage und ggf. scsi bzw. sd liefern. In etwa so
    [4100988.683264] usb 2-1: new SuperSpeed USB device number 2 using xhci_hcd
    [4100988.702054] usb 2-1: New USB device found, idVendor=05e3, idProduct=0747, bcdDevice= 8.19
    [4100988.702090] usb 2-1: New USB device strings: Mfr=3, Product=4, SerialNumber=5
    [4100988.702104] usb 2-1: Product: USB Storage
    [4100988.702116] usb 2-1: Manufacturer: Generic
    [4100988.702126] usb 2-1: SerialNumber: 000000000819
    [4100988.710552] usb-storage 2-1:1.0: USB Mass Storage device detected
    [4100988.711280] scsi host0: usb-storage 2-1:1.0
    [4100989.716940] scsi 0:0:0:0: Direct-Access     Generic  STORAGE DEVICE   0819 PQ: 0 ANSI: 6
    [4100990.033126] sd 0:0:0:0: [sda] 15269888 512-byte logical blocks: (7.82 GB/7.28 GiB)
    [4100990.033883] sd 0:0:0:0: [sda] Write Protect is off
    [4100990.033889] sd 0:0:0:0: [sda] Mode Sense: 87 00 00 00
    [4100990.034602] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
    [4100990.056061]  sda: sda1 sda2
    [4100990.056338] sd 0:0:0:0: [sda] Attached SCSI removable disk
    [4100990.067057] sd 0:0:0:0: Attached scsi generic sg0 type 0
  • Wenn das gefunden wurde ist schon mal gut :-) Mit lsblk dann mal die Massenspeicher listen
    pi@testpi4:~ $ lsblk
    NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    sda           8:0    1  7.3G  0 disk
    ├─sda1        8:1    1  256M  0 part
    └─sda2        8:2    1  6.9G  0 part
    mmcblk0     179:0    0 58.9G  0 disk
    ├─mmcblk0p1 179:1    0  512M  0 part /boot/firmware
    └─mmcblk0p2 179:2    0 58.4G  0 part /
  • Wie man schon beim dmesg gesehen hat suchen wir irgendwas mitr sda … In unserem Fall die größere Partition. Bei mir ist das sda2 - das kann bei euch aber durchaus ander heißen!
  • Jetzt müssen wir das Laufwerk / die Partition noch im Dateisystem einbinden, denn unter MOUNTPOINTS wird nichts gelistet.
    • sudo mkdir /mnt/emmc
    • sudo mount /dev/sda2 /mnt/emmc/
    • cd /mnt/emmc
      Hier könnt ihr nun mit ls den Inhalt listen.
    • cd /mnt/emmc/home/sovol/printer_data/config und hier findet ihr eure alte Konfig.
    • Ich kann nur empfehlen das mit MobaXTerm zu machen. Denn dort hat man für die SSH Verbindung zusätzlich eine SFTP Verbindung (linke Seite vom Fenster).

eMMC ausbauen

  • Den Drucker stromlos machen!
  • Den Drucker auf die Seite legen und auf der Unterseite das Blech lösen (6 Schrauben).
  • Die eMMC ist auch mit 2 Schrauben gesichert - diese müssen raus :-)
  • Danach kann man die eMMC einfach abziehen.

Image auf eMMC schreiben

Version 3.0.0

Es wird davon abgeraten das V3.0.0 Image zu verwenden. Scheinbar gibt es da noch kleinere Probleme. Es sei aber erwähnt, dass es einen Pull Request im Github gibt, mit dem das V3 auch laufen soll:
https://github.com/Rappetor/Sovol-SV08-Mainline/pull/123
Ich lasse das mal so stehen. Wer das V3 Image testen will, kann das mit den Infos ja versuchen. Es ist aber nicht Bestandteil dieser Anleitung.

System Konfig

Damit das System sauber läuft müssen ein paar Dateien kopiert / angepasst werden.
Diese Dateien kann man alle über den Windows Explorer erreichen! Sie liegen in dem Laufwerk was BOOT heißt.

Device Tree

BoardEnv.txt

  • Alles unter dem #------------# lassen wir bestehen - bitte hier nichts ändern !
  • Alles darüber ändern wir:
    bootlogo=false
    overlay_prefix=sun50i-h616
    fdtfile=sun50i-h616-sovol-emmc
    console=display
    overlays=uart3 ws2812 spidev1_1
    • Ich bin übrigens der Meinung das hier die Github Anleitung falsch liegt. Beim CB1 Image müssen Ovberlays in einer Zeile stehen. Sonst greift nur das Letzte!
  • Die fertige Datei sieht dann in etwa so aus:
    bootlogo=false
    overlay_prefix=sun50i-h616
    fdtfile=sun50i-h616-sovol-emmc
    console=display
    overlays=uart3 ws2812 spidev1_1
    #------------------------------------------------#
    rootdev=UUID=795df55f-3e45-4625-a9cb-f6706b356274
    rootfstype=ext4

system.cfg

  • Hier kann man seine WLAN Settings eintragen
    download
    #-----------------------------------------#
    check_interval=5        # Cycle to detect whether wifi is connected, time 5s
    
    eth=eth0        # Ethernet card device number
    wlan=wlan0      # Wireless NIC device number
    
    hostname="SV08"
    
    ###########################################
    # System time zone setting, default Time zone: Etc/UTC (UTC, +0000)
    # More settable time zones can be viewed by running the command: timedatectl list-timezones 
    #TimeZone="Asia/Shanghai"
    
    ###########################################
    # HDMI klipperScreen rotation
    # ks_angle: Rotation angle
    #       normal: 0; inverted: 180;
    #       right: 90; left: 270;
    ks_angle="inverted"
    
    ###########################################
    # wifi name
    WIFI_SSID="XXXXXXX"
    # wifi password
    WIFI_PASSWD="MySecret0815"
    
    ###########################################
    # BTT-PAD7 (ON/OFF)
    BTT_PAD7="OFF"
    # touch vibration effects
    TOUCH_VIBRATION="OFF"
    # touch sound effects
    TOUCH_SOUND="OFF"
    # Automatic brightness adjustment
    AUTO_BRIGHTNESS="OFF"
    ###########################################
    
  • Wenn das WLAN Passwort Sonderzeichen enthält müssen diese ggf. entwertet werden. Aus $ wird dann z.B. \$
  • Für HDMI sollte man die Screen Rotation auf inverted stellen

erstes Booten

  • Der Drucker ist immer noch stromlos!
  • Die neue eMMC wieder in den Drucker / ins Meinboard einsetzen. Auf die Richtung achten!
  • Jetzt erstmal den Drucker auf die Beine stellen und Strom drauf geben.
  • Einschalten …
  • Wenn ihr einen HDMI Bildschirm angeschlossen habt, dann seht ihr jetzt evtl. ein Boot Logo, das sagt aber noch nichts aus. Es ist nur ein Startbild - kein Systemstatus. Wir werden erst später Klipperscreen einrichten und ein Bild sehen!
  • Wenn alles richtig eingetragen wurde sollte sich der Drucker mit eurem WLAN verbinden. Die IP müsst ihr im Router rausfinden oder mit MobaXTerm und den Tools (Network Scanner) suchen.
  • Login mittels SSH sollte jetzt klappen und User / Passwort ist biqu/biqu

Updates & Klipper

  • System Updaten
    sudo apt update && sudo apt upgrade
  • Ein paar sinnvolle Tools nachinstallieren
    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 fio ir-keytable curl inxi && mkdir -p ~/.local/share && tldr -u
  • kiauh besorgen
    cd ~ && git clone https://github.com/dw-0/kiauh.git
  • kiauh starten
    ./kiauh/kiauh.sh
    Wir verwenden die Version 6 und startenb mit Auswahl 3
    • Install Klipper, Moonraker, Mainsail, Crowsnest, KlipperScreen
    • KIAUH main menu → Advanced → Extra Dependencies: → [Input Shaper]
  • Moonraker nachinstallieren
    • cd ~/
    • cd ~/moonraker-timelapse
    • make install
    • nano ~/printer_data/config/moonraker.conf und folgendes einfügen
      [update_manager timelapse]
      type: git_repo
      primary_branch: main
      path: ~/moonraker-timelapse
      origin: https://github.com/mainsail-crew/moonraker-timelapse.git
      managed_services: klipper moonraker
      
      [timelapse]
      ##   Following basic configuration is default to most images and don't need
      ##   to be changed in most scenarios. Only uncomment and change it if your
      ##   Image differ from standart installations. In most common scenarios 
      ##   a User only need [timelapse] in their configuration.
      output_path: ~/timelapse/                ##   Directory where the generated video will be saved
      frame_path: /tmp/timelapse/              ##   Directory where the temporary frames are saved
      ffmpeg_binary_path: /usr/bin/ffmpeg      ##   Directory where ffmpeg is installed
    • im Mainsail Interface Timelapse einrichten
    • im Sliver später TIMELAPSE_TAKE_FRAME einbinden!
  • Ab hier ist ein Standard Klipper System installiert. Ein sudo reboot könnte man ausführen wenn es nach crowsnest noch nicht gemacht wurde.

Klipper Addons (Sovol)

Serielle Ports

Die seriellen Ports kann man aus der alten Konfig raus friemeln, aber es geht auch anders … :-)

  • Am Kopfboard den Stromstecker abziehen
  • Jetzt in der SSH Konsole folgendes eingeben
    ls -lR /dev/ | grep -v '\->\s../tty' | grep -e 'tty[[:alpha:]]' -e serial
    Ihr kriegt dann ne Menge Text, aber wir brauchen nur das hier (/dev/serial/by-id):
    /dev/serial/by-id:
    lrwxrwxrwx 1 root root 13 Jul 18 19:28 usb-Klipper_stm32f103xe_30FFD9053347543017551551-if00 -> ../../ttyACM1
  • Da das Kopfboard keinen Strom mehr hat kann es nur das normale Mainboard sein. Und bei mir ist der benötigte serielle Port dann:
    /dev/serial/by-id/usb-Klipper_stm32f103xe_30FFD9053347543017551551-if00
  • Jetzt den Strom vom Kopfboard wieder dran stecken …
  • In der SHH Konsole das Kommando wiederholen. Und nun bekommen wir 2 Ports bei /dev/serial/by-id :
    /dev/serial/by-id:
    lrwxrwxrwx 1 root root 13 Jul 18 19:28 usb-Klipper_stm32f103xe_30FFD9053347543017551551-if00 -> ../../ttyACM1
    lrwxrwxrwx 1 root root 13 Jul 18 19:43 usb-Klipper_stm32f103xe_51FF6E064849824936080767-if00 -> ../../ttyACM0
  • Nuja, das Kopfboard ist jetzt einfach die ID die wir noch nicht haben :-) Bei mir also
    /dev/serial/by-id/usb-Klipper_stm32f103xe_51FF6E064849824936080767-if00
  • Fertig - ohne großes Rumgesuche 8-)
  • Jetzt müsst ihr das nur noch in der printer.cfg eintragen.
    • Mainsail im Browser öffnen
    • auf Machine → und dort auf printer.cfg klicken
    • dort die Funde eintragen mcu = Mainboard und extra_mcu = Kopfboard
      [mcu]
      serial: /dev/serial/by-id/usb-Klipper_stm32f103xe_30FFD9053347543017551551-if00
      restart_method: command     
      
      [mcu extra_mcu]
      serial: /dev/serial/by-id/usb-Klipper_stm32f103xe_51FF6E064849824936080767-if00
      restart_method: command    
  • oben auf “Save and Restart” und fertig :-)
Anmerkung : Jetzt sind auch endlich diese Krachlüfter mal leise und das Display geht auch wieder =)

stutil compilieren

Backup Firmware

Mainboard flashen

Kopfboard flashen

Tests

klipper_faq/klipper_0_auf_100/sovol_sv08_mainstream_klipper.1752869244.txt.gz · Last modified: by dominik

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki