見出し画像

Klipper用にタブレットPCの中古をぽちった その4

今回はプリンタ設定を行います。例によって翠工房さんの動画を参考にします。17:40 付近を参考にしてます。

cd klipper
make manuconfig

どのプリンタにインストールするのか悩ましいところですが、今回はEnder3をターゲットにしてみます。
プリンタのボードにあったものを選ぶんだけど、この時点ではよくわかんない。
MarlinをコンパイルするときにSTM32という文字がよく出てくるからきっとこれであってるはず!

Processor model を選ばないといけないのですが、うちのEnder3はボードをBIGTREETECH SKR Mini E3 v1.2 に交換してるんです。
Marlinのplatform.io ファイルを見ると、default_envs = STM32F103RC_btt  って書いてあるから、STM32F103 を選びます。

Bootloader offset がよくわからなかったんだけど、こちらのサイトを参考にしました。24Kib を選びます。

【3Dプリンタ】Ender-3 ProにKlipperファームウェアを導入した – OctoPi+Klipper編 | あること・ないこと日記 (terutakke.com)

以下の設定にしました。Klipper自体が日々更新されているので、ネット情報にはない項目がありますがとりあえず無視します。

GPIOってなんだろう。わからないことばかりです。
esc で抜けて、設定を保存後、make でコンパイル開始です。
~/klipper/out に klipper.bin ができました。

boyon@klipper-deb11:~/klipper/out$ ls -l
合計 1236
-rw-r--r-- 1 boyon boyon   5970  223 10:01 autoconf.h
lrwxrwxrwx 1 boyon boyon     29  223 10:01 board -> /home/boyon/klipper/src/stm32
drwxr-xr-x 2 boyon boyon   4096  223 10:01 board-generic
-rw-r--r-- 1 boyon boyon     27  223 10:01 board-link
-rw-r--r-- 1 boyon boyon  53210  223 10:02 compile_time_request.c
-rw-r--r-- 1 boyon boyon    353  223 10:02 compile_time_request.d
-rw-r--r-- 1 boyon boyon 197032  223 10:02 compile_time_request.o
-rw-r--r-- 1 boyon boyon  12984  223 10:02 compile_time_request.txt
-rwxr-xr-x 1 boyon boyon  23212  223 10:02 klipper.bin
-rw-r--r-- 1 boyon boyon   6808  223 10:02 klipper.dict
-rwxr-xr-x 1 boyon boyon 970628  223 10:02 klipper.elf
drwxr-xr-x 3 boyon boyon   4096  223 10:01 lib
drwxr-xr-x 5 boyon boyon   4096  223 10:02 src

このファイルをPCに持ってきて、firmware.bin という名前に変更します。
原理を正しく理解しているわけではないが、3Dプリンタってのは、SDカードに特定のファイル名でfirmware を保存して電源を入れると更新版のfarmwareであると認識して自身のfirmwareを更新するという作りになってるみたいです。SKR mini の場合は、firmware.bin です。X5SAの場合は update.cbd です。

SDカードにコピーして、Ender3の電源を入れます。
ぱっと見には何もおきません。液晶パネルは点灯してるけど表示はなし。
USBケーブルを接続したのちに、シリアル接続の情報をKlipper本体側に設定します。

boyon@klipper-deb11:/dev/serial/by-id$ ls
usb-Klipper_stm32f103xe_33FFDB054242363214600157-if00

boyon@klipper-deb11:/dev/serial/by-id$ ls -l
合計 0
lrwxrwxrwx 1 root root 13  223 10:18 usb-Klipper_stm32f103xe_33FFDB054242363214600157-if00 -> ../../ttyACM0

boyon@klipper-deb11:/dev/serial/by-id$ ls -l ../../ttyACM0
crw-rw---- 1 root dialout 166, 0  223 10:18 ../../ttyACM0

sudo gpasswd -a boyon dialout

ここで得た by-id の値をKlipperのprinter.cfg に設定します。
動画ではここで Klipperを再起動すると接続されるらしいのですが、うまくいきません。
printer.cfg は事前にそのプリンタ用のテンプレートをgithubから持ってくる必要があるみたい。

klipper/generic-bigtreetech-skr-mini-e3-v1.2.cfg at master · Klipper3d/klipper · GitHub

この中身をまるごとコピペしてからMCUのby-id だけ書き換えてプリンタとタブレットPCの両方を再起動したところ無事につながりました。
(写真を載せたいところですが、反射するので撮りづらいから割愛)
タブレットPCの画面にはExtruderとBedの温度が表示されています。
PCブラウザでアクセスしている画面にも表示されるようになりました。

まだ、設定は足りていないようですね。

このcfgファイルの上部のコメントを見ると、さっき設定した値が書いてあります。先にここを参照すればよかったみたいですね。

# This file contains common pin mappings for the BIGTREETECH SKR mini
# E3 v1.2. To use this config, the firmware should be compiled for the
# STM32F103 with a "28KiB bootloader" and USB communication. Also,
# select "Enable extra low-level configuration options" and configure
# "GPIO pins to set at micro-controller startup" to "!PC13".

# The "make flash" command does not work on the SKR mini E3. Instead,
# after running "make", copy the generated "out/klipper.bin" file to a
# file named "firmware.bin" on an SD card and then restart the SKR
# mini E3 with that SD card.

# See docs/Config_Reference.md for a description of parameters.

# Note: This board has a design flaw in its thermistor circuits that
# cause inaccurate temperatures (most noticeable at low temperatures).

このファイルを自力で作るのは不可能だなぁ。

Missing Configuration については、以下を参照しながら設定するらしい。

これらを参考にしつつ、printer.cfg ファイルを編集したところ、
警告はなくなり、Ender3側のディスプレイにも表示されるようになりました。(設定が適切であるとは限りませんが)
printer.cfg の中身はまだ修正が必要な箇所が多いはずなので、落ち着いたら別の記事として掲載します

ここまでを振り返ると、まぁまぁすんなりできたほうがじゃないですかねぇ。もう頭痛いよ。

もう印刷できる状態になってるはずですが、
おれのEnder3はボードだけでなく、ダイレクトエクストルーダに交換してるからもっと調整が必要なはずです。
ベッドサイズ・PID・Estep あたりを調整しないといけないはず。
その後、Klipper固有の設定をやることになると思います。

今日はここまで。

この記事が気に入ったらサポートをしてみませんか?