到底要裝些什麼套件,看看這個 script 檔可以有些概念,install-ubuntu-18.04.sh。使用 kiauh 安裝,會自動搞定一切。
YouTube 的教學影片,Installing Klipper Firmware On A Laptop Or Desktop (Pi Alternative),沒有安裝 KlipperScreen。
到底要裝些什麼套件,看看這個 script 檔可以有些概念,install-ubuntu-18.04.sh。使用 kiauh 安裝,會自動搞定一切。
YouTube 的教學影片,Installing Klipper Firmware On A Laptop Or Desktop (Pi Alternative),沒有安裝 KlipperScreen。
花了2千元回收一台網友組裝失敗的 3D 印表機套件,目前還不知道要做什麼,先記錄一下套件的摘要,知道有那些東西,可以怎麼用它。
淘寶的連結 成品mb结构3d打印机fdm打印机高精度 diy套件高精度热床300 200,怕產品下架,留一些擷圖備份。安裝說明 0-12864屏幕按照(3d打印机),沒有安裝文件。
300x300 的套件,1780 RMB,約台幣 9千元,不便宜。嗯,我裝的第一台 300x300 corexy 雙Z軸機器,也是這價格。買的人還不少,頁面說明做得好吸引人?
是 XY,不是 corexy,有點怪異,類似 Ender-5 S1 的架構。
打印速度不快,相對 Voron 2.4 而言。
雙 Z軸,XY線軌,近程擠出,是其特色。速度不快,噪音也就不大。但 MKS Gen-L V1.0 是8位元CPU,快不起來,再則使用 A4988,只有 16細分,快起來也無法太安靜。
收到時的概況,沒有使用晶格玻璃,直接在熱床上印,有點怪怪的,我沒這樣做過。線軌生鏽的很嚴重,2月才買的,可能組裝時手碰到,又沒有上油保養。
用不鏽鋼白鐵客製化了很多零件,讓成本增加不少,但收到也不能使用。
考慮改成 VORON Trident,但想改用交流熱床,不用花錢買高功率的電源,很花錢。另外,是否改成 8mm鋁板呢? 再想想吧。
從小孩接收一台華碩手機,ZenFone 3 Deluxe 5.5,想裝 Klipper 來玩看看。
拿到手機後,經歷一番波折才拿到手機的掌控權,然後在 root 這關卡住,大概只能當普通手機看影片了。
現代手機為了怕別人撿到據為己有,有所謂的 FRP (Factory Reset Protection) 鎖,只能用原來登入的帳號重置手機。不想再麻煩小孩幫忙,看看有什麼辦法來解鎖。
找了幾個方法,大概這個比較單純,Asus ZenFone 3 Z017DB Gmail Bypass And Frp Reset Eazy Solution。有些辦法使用到的部分,Google 直接把相關部分改掉,如語音協助的 YouTube 就被拿掉了。可以想像未來會更難繞過這關的,還好這台手機花了幾小時就成功進法了。
重置後,一直進行到連上網路,要輸入帳號為止
回頭到最前面,選語言的步驟,按音量減小+電源,擷圖,分享,長按 Mail 的圖示,顯示 App Info,然後 按 help,想辦法找到有 YouTube 的解說,再從 YouTube 開啟 Chrome,再下載解鎖的 APP,安裝後,把自己的 帳號加進去,然後重開,就 OK 了。
改完後重開,到後面就會出現這個畫面,已經把自己加進去了。
原來官方有提供 unlock 工具,但早就不提供支援了,因為要透過網路上傳資料後才會進入解鎖,所以官方解鎖這條路可以直接放棄,別到處找相關的 APK,除非要參考它自己改。
有一些 platform tool 可以下載來用,提供 adb 和 fastboot 指令,在 Linux 下使用比較方便。
[root]ASUS ZenFone3 Deluxe ZS550KL (Z018) WW_V24.40.140.33(Android N)for WW SKU only*,Prerequisite: Unlocked bootloader -- 這關過不去。
bootloader 官方解鎖程式 -- 不支援了,別費心找了。使用時會出現錯誤訊息,"發生未知的錯誤,可能是網路連線問題" ("An unknown error occurred, which may be a network connection issue please try again later."),無法解鎖。說明中提及會送出 IMEI 號碼回 ASUS,可能是它的伺服器不存在了吧,程式就無法使用了。
給老手的 Zenfone 3 刷機快速上手(Bootloader, Recovery, Root, Rom…),看看吧,提供一些概念。
How to Unlock Bootloader Asus ZenFone 3 Deluxe ZS550KL with Fastboot Method,看看就好,指令不支援,"OEM unlock" 沒有打開是不能執行這指令的。
參考 android 的說明,Locking/Unlocking the Bootloader,"OEM unlocking" 一般放在開發者選項,但很多手機,包括華碩,把它藏起來,無法改。
Devices should deny the fastboot flashing unlock
command unless the get_unlock_ability
is set to 1
. If set to 0
, the user needs to boot to the home screen, open the Settings > System > Developer options menu and enable the OEM unlocking option (which sets the get_unlock_ability
to 1
). After setting, this mode persists across reboots and factory data resets.
【密技】ZenFone 2 Laser (ZE500KL/Z00ED) 非官方解鎖 Unofficial Unlock Bootloader,有一些東西可以參考,但也不能直的使用。
下面是用 fastboot 測試的一些結果。
折騰了好幾天,確定 root 的必要步驟。1. 要用 fastboot 寫入 twrp,必須要 unlock bootloader;2. 要 unlock bootloader,必須要用 twrp 安裝 ZIP 檔來設定 "OEM unlocking"。這是一個 dead lock,無解,再慢慢找解法吧。
猜想原來的 APP 是要把手機資料上傳後,再將 unlock 的 flag 設成 true。這動作在別的手機原來是可以在開發者選項完成,但華碩把這選項藏起來,讓使用者要走這一段冤枉路,另外因為全世界用的人太少,根本就沒人幫忙破解,以後再也不碰華碩的手機了。
看來我需要工具: Android APK反编译就这么简单,Android App 逆向入門之一:拆開與重組 apk,有空再來慢慢練功吧。
UNLOCK/RELOCK BOOTLOADER UNOFFICIALLY for ZenFone 3,只有 ZE520KL/ZE552KL的。
https://addrom.com/stock-raw-rom-for-asus-zenfone-3-deluxe-zs550kl/
想要 unlock bootloader,看到 TSMC 的 raw 檔,以為是 TSMC 的測試機,結果是它的專用機,把很多功能都刪了,要連上伺服器登入後才能使用。更慘的是,不能重刷成一般手機,完全不能清除 userdata 和 aboot,真的變成 TSMC 磚塊了。
https://github.com/Giovix92/EDLUnlock
https://www.cpu-panda.com/zh-tw/cpu-qualcomm_snapdragon_625#google_vignette
https://forum.xda-developers.com/t/fastboot-edl-unbrick-asus-zenfone-max-m1-asus_x00pd-ww_x00pd-zb555kl-zb556kl.3874245/
https://alephsecurity.com/2018/01/22/qualcomm-edl-1/
https://forum.xda-developers.com/t/hard-unbrick-edl-cable-diy-unbricking-a-hard-bricked-zenfone5-live-qualcomm.3915137/
由於這不是 Voron 或 Klipper 的官方作法,因此未包含在官方文件裡,每次都找不到。
說明的網址 Klipper plugin for self-calibrating z-offset,設定和原理解說的章節 How To Configure It
好快就忘了怎麼設
指令 CALIBRATE_Z
下面整段把它抄過來,方便參考
The "z_calibration:switch_offset" is the aforementioned offset from the switch body (which is the probed position) to the actual trigger point above it. A starting point for this value can be taken from the datasheet of the Omron switch (D2F-5: 0.5mm and SSG-5H: 0.7mm). It's safe to start with a little less depending on the squishiness you prefer for the first layer (for me, it's about 0.46 for the D2F-5). So, with a smaller offset value, the nozzle is further away from the bed! This value cannot be negative.
For example, the datasheet of the D2F-5:
And the calculation of the offset base:
offset base = OP (Operation Position) - switch body height
0.5 mm = 5.5 mm - 5 mm
First of all, there cannot be a negative switch_offset! If the switch_offset is already really small after tuning it and the nozzle is still too close to the bed, then something is wrong with the measurement of the probe body. The following picture illustrates this:
Therefore, please check your endstop, the rod of the endstop and the position of the switch body touching the endstop!
Please, do NOT drive the endstop pin on the switch actuator directly! Otherwise, you do it at your own risk and I will reject any request for support!
If you do so, a correct or at least a working measured height at the switch is all due to the various forces in the system. But forces can change for many reasons. The best case is that the actuator is pushed all the way in until the pin touches the body of the switch - before the endstop is triggered! But it could be anything in between... So, there is no reason not to touch the body directly in a safe and robust way
透過 Klippy probe 與噴嘴和 endstop 的相對位置,可以自動算出噴嘴的位置,完全不用手動調平。
再來要使用 TESTZ 指令來校準 switch_offset,參考 Klipper - Bed leveling。依據 Omron D2F-5 的規格計算或測量得到的 switch_offset,並不太準,間隙可能過大或過小。使用 TESTZ 指令調到噴頭和平台的距離約等於一張紙的厚度。
要 root 手機,必須 unlock bootloader,新的手機大都不允許,或是要申請允許才行。全世界比較少人使用的手機,如 Asus,是不太可能 root 的,直接放棄比較快。
舊手機,開啟 developer option 後,直接就可以開啟 oem unlock,這是最好處理的了。所以,儘可以找舊手機來裝。
這次買到的紅米 Note 3,算是運氣好,剛鎖掉,還可以進 EDL 模式,刷可以 oem unlock 的 firmware。
想試試用舊手機安裝 Klipper,應該可以省一點吧,效能可能更好。在蝦皮買的中古機,只說是 "小米3 mi 3w 16G",我也搞不清實際規格。收到時,打開手機電源,相關資訊如圖。
重點摘要: 紅米手機 Redmi Note 3,六核 1.8GHz,RAM 3GB,ROM 32GB。算運氣好,拿到好一點的規格。
红米Note 3双网通版搭载了一枚大家熟悉的联发科Helio X10八核处理器,红米Note 3全网通版是用高通骁龙650六核处理器。所以我拿到的是六核的全网通版。另外比較卡托,双网通版不能放置TF卡,全网通版本的其中一个卡槽可以放置TF卡;我的可以,剛買了一張 64GB 的放進去了,好在啊。所以,可以放心刷開放的 image。
在試了幾支手機後,發現是好運,才能在紅米 note 3 上安裝 klipper,華碩的手機,連 root 都沒辦法成功。只好在網拍上再找找看同一款式的手機來玩,無意中看到的一支鎖定小米帳號的紅米 note3,只要 200 元,就把它標回來試試。
解法,直接使用 Miko-tool。有了人家寫好的工具,很容易就解開了。要先裝 drvier,可以直接安裝 Miphone.exe。重開到 fastboot 模式,然後切換至另一模式,就可以解開了。
參考 https://technext1.wordpress.com/2017/04/09/02/,影片 Redmi Note 3 - How to Root & Install TWRP [Easiest Way],How To Install TWRP Recovery & Root the Redmi Note 3 Pro
刷 Custom ROM,運作不穩定,然後在還原的過程中,把整個系統清除,還原之後,系統資料全都不見了,搞得一團亂,只能慢慢想辦法還原。
下面是 ROOT,裝 TWRP 的步驟。
刷完後的版本。
https://www.getdroidtips.com/android-11-redmi-note-3/
https://www.getdroidtips.com/lineage-os-18-1-on-redmi-note-3/
https://forum.xda-developers.com/t/rom-port-unofficial-kenzo-kate-11-lineageos-18-stable-25-08-2021.4245525/
https://www.youtube.com/watch?v=fGNKBsRufjI
刷 TWRP 的指令
慘,手機的資訊全變成 "不明",看看要如何救。參考連結,
討論: How To Fix Imei, Wifi Mac, Bluetooth Mac, Meid and Othes Redmi Note3 Snapdragon,Changing/Spoofing MAC Address[Solved]
回復 QCN 的步驟: [GUIDE] Backup, edit and restore QCN. Fixing lost IMEI.
參考此說明回復 EFS: RESTORE EFS ON REDMI NOTE 3 (SNAPDRAGON VARIANTS ONLY),重點整理。
需要軟體 EFS Backup[Dump][Kenzo].rar,執行指令
執行後就會自動產生 MAC address 了。
前一段安裝 MiFlash 時,裝的 driver 在這裡會不正常,試了好久,弄一個新的 VM 後,才成功連接。
後來重刷小米的 firmware,又神奇的可以找到網路了。重刷的版本是 MIUI Global 8.1,Android 版本 6.01,MEID: 99000709881187,IMEI (卡槽2): 869271026918158,WiFi MAC: 64:cc:2e:b9:ba:16,序號: 8ae0acf1。重複試了好幾次,發現在刷非官方,假如選錯選項就會洗掉手機的資訊。必須要保留原本的 storage 結構才行,不能把整個儲存空間清掉。唉,再次重開,MAC 還是不見了,無法上網。
刷 RN3ROOT 的 image,Android 版本 5.1.1
"MEID碼是每台CDMA手機或通訊平板唯一的識別碼。用於CDMA(電信)制式的手機。MEID的數字範圍是十六進位的,和IMEI的格式類似14位。也就是說,有MEID碼的手機,都支持電信卡,有的手機沒有MEID,只支持移動聯通。"
MEID 沒辦法改,反正能上網,不用打電話,MEID 和 IMEI 就不管了。
https://lineageosroms.com/kenzo/
https://forum.xda-developers.com/t/rom-9-0-kenzo-lineageos-16-0-unofficial-01-09-2018.3844655/
https://www.getdroidtips.com/lineage-os-18-1-on-redmi-note-3/
要使用用最舊的 twrp-3.0.0 才能成功安裝 lineage-os-18.1,lineage_16.0 則都無法成功開機。假如安裝成功,很快就會進入選單。若轉了十幾分鐘,應該就是失敗了。雖然能成功安裝 lineage-os-18,但安裝 Linux Deploy 時,會出現空間不足,可是我都沒有安裝任何 package。
所以,別再嘗試 lineage-os 了,乖乖刷 RN3ROOT for kenzo 就好了,繼續我的目標 -- 安裝 Klipper -- 才是重要的。
後來再試,使用 twrp-3.3.1-0-kenzo.img 安裝 lineage-os-18.1,只要設定好,重新開機,就能成功安裝 package 了。
Root LineageOS 18.1 using Magisk Manager and TWRP Recovery,使用TWRP 安裝 Magisk,很方便就完成 root,再用 Root Checker 確定已成功 root。下載的 APK,要改名 ZIP,然後用 TWRP 安裝。
參考
Debian 的版本
使用 Linux Deploy 安裝時,要選對版本。
手機和工作的電腦不同網段,發現能用 adb shell 連上去,再用 ssh 進入系統,這樣就方便多了。
安裝 KlipperScreen 時,會出現 CMake 版本太低的問題,要自行下載安裝新版的。
製作一條帶充電功能的 USB OTG 線。
會用 ThinkPad 筆電的人,可能有不少人是衝著那個小紅點 (Trackpoint) 而作的選擇吧。
不但如此,使用桌上型電腦時,還會花高價,新台幣要三千左右,去買個外接的 USB 鍵盤+小紅點來用。本人就是如此,當年IBM還未這產品時,我也是在那抗議的其中之一。買創想 Creality K1 的目的就是想要了解它到底為何能這麼快,在試用之後,就想拆開一探究竟了。還好,有人比我先動手,而且拍成視頻,我看他拆就好,不用動自己的機器。
YouTube 影片連結: Creality K1 Teardown, Inspection, First Print
整理一下看他拆的一些重點。
參考影片 Get FULL KLIPPER Access on your Creality K1,詳細說明在影片下方的文字說明。
需要的檔案在這: https://github.com/giveen/K1_Files/tree/main/exploit
使用 git clone https://github.com/giveen/K1_Files 把整個 repo 下載下來。然後用瀏覽器開啟 'K1_Files/exploit/k3d_k1_exploit .html',會出現下面的畫面。
按 [Method A],它會把 shadow.gcode 上傳到印表機。嗯,不一定會成功,不過主機上多了一個 new_shadow.gcode。我試著去 print 那個 new_shadow.gcode,好像也沒什麼用。後來用手動把那個檔案上傳,再按 print,再按 [Method A],就跳出一個提示,說可以用 root/creality 登入 ...。所以,我是成功了,但不知道怎麼成功的,想玩的人就多試幾次吧。
這是一個密碼檔,使用 klipper 的上傳功能,再將該檔案移到 /etc 目錄下。
補記,稍微看了一下 html 檔。方法一是按 [Methdo A],由程式自己上傳資料,存成 new_shadow.gcode,再把它搬移改名成 /etc/shadow。方法二是要先手動上傳shadow.gcode,再按 [Methdo B] 把它搬移改名成 /etc/shadow。
再來,就用 ssh 進入,照著下面的步驟,啟動 moonraker_service。
使用 port 4408,也真的看到 klipper 的畫面。不過,先警告一下,印表機可能就會出錯,無法正常運作喔。若沒把握,可不要亂玩。
後來發現是上傳的檔案讓系統出錯,刪掉重新啟動就好了。
另外,更新的 Firmware 是 7Z 檔,解壓密碼在 K1_Files 裡的更新程序中可以找到。
因為看到大家都在討論創想 K1,基於好奇,忍不住就買了一台。收到後,發現並不會太大,剛好可以用機車載回家。
關於整個機器,不用自己拆,已有人做了,Creality K1 Teardown, Inspection, First Print。
按照賣家的指示,拆箱後,切換到 110V,拆下固定Z軸的螺絲,開機。一路看它完成測試,完全自動,不用像以前要了解如何調平。不想浪費材料印測試檔,想直接印個檔案試試。發現沒有切片程式可用,官方的 creality_print 只有 windows 和 MAC 的程式,只能選擇裝 Windows 版的啦。裝好後,就卡住了,執行時出現下面的錯誤提示。
我是在 Linux 下使用 Vmware 執行 Windows,找不到解決的方式,就無限卡住,都有了想把它賣掉的念頭了。後來想想,試著用 PrusaSlicer 來切,使用 Voron 的設定,順利的印出第一個成品。細看之下,Z軸有好多震紋,還是第一次碰到。但我目前大都印零件,沒什麼關係,回想剛開始 DIY 3D 印表機時,印出的成品更差,也是將就著用。
曾聽到某位 IBM 的講者提到科技的 Convergence 與 Divergence。在一項技術的發展初期,大家會提出各種不同的作法,然後慢慢的會找到較好或可行的作法,最後就慢慢收斂到剩下一兩種作法。
我是去年 (2022年) 跳進 3D印表機 DIY 的世界,當時有不少廠商的機器可買,但和 DIY 的機器相去不遠,所以 DIY 盛行。尤其,我個人認為,Voron 和 Klipper 更是發展的一個里程碑,Klipper 讓機器的設定和功能多樣化,Voron 的多 (3+) Z 軸則實現了自動調平的功能。只要設定時確定一些參數,往後就完全不用手動調平,儘管換了不同厚度的打印平台,如較薄的 PEI 鋼板或較厚的玻璃,都由機器自動計算噴頭的高度。
K1 的開賣的價格比自己買最便宜的 Voron 散件還要便宜。雖然收到機器後發現使用的材料便宜很多,如全機使用光軸,使用自己設計的機構,不使用鋁擠結構,但廠商設計組裝,開箱即用,又較便宜,幹嘛在乎用料呢。從 DIY 幾台 3D印表機的心得,我個人認為 3D印表機的結構不會差太多,關鍵在於列印頭,而這是 DIY玩家無法參與的。另外,3個或以上的 Z軸是自動調平所必須的。不過,後來仔細看了人家拆機的影片,3軸並非獨立的,而是聯動的,由單一步進馬達帶動,所以是用軟體做調平補償。熱床是 240W,使用直流。嗔頭與熱床接觸偵測使用 HX711 壓力模組。
回想雷射印表機和噴墨印表機發展初期,台灣和國外也有很多廠商在做,但最後幾乎剩一家 HP 獨大。可以想像 3D印表機未來也將如此,DIY 玩家的世界即將過去,變成廠商之間的競爭,使用者只要挑那家出的機器,像 Apple 或 Android 手機。為了高速列印,機械結構則是會用較簡單的 CoreXY,龍門機大都會被淘汰,Delta 我就不清楚了,況且用它的人向來就較少。
在 K1 之前,很多人對 Bambu Lab 的機器非常讚賞,但因為它 Totally not open,所以我一點也不動心。後來看到有人說 K1 使用 Klipper 系統,而且可以打開,才下定決心買它來看看。不過,未來要是 3D列表機完全商品化,誰會在乎它是否 open source 呢,只會管它的效能吧。
對了,我的第一台3D 印表機是 XYZprinting 的產品,但因為它綁耗材,所以在附的一卷耗材才印了幾尺,就被我毅然的半價賣掉了。未來,XYZprinting 若還是固守賣耗材的巿場,大概完全沒有機會吧,現在看到有人討論 XYZprinting 的機器,大家一致的看法就是賣掉它。
以上,是我由 K1 聯想到很多的想法。未來,不要花太多心思在3D印表機身上,而是用它來做想做的東西,如小紅點機械鍵盤的外殼。
測試常用
在 Ubuntu Linux 上安裝 xrdp,但一直無法啟動 xfce4,部分錯誤訊息如下。
............
dbus-update-activation-environment: setting LC_PAPER=lzh_TW
xfce4-session-Message: 13:46:21.699: SSH authentication agent is already running
gpg-agent: a gpg-agent is already running - not starting a new one
(xfwm4:4332): xfwm4-WARNING **: 13:46:21.922: Unsupported GL renderer (SVGA3D; build: RELEASE; LLVM;).
(xfwm4:4332): xfwm4-WARNING **: 13:46:22.834: Failed to connect to session manager: Failed to connect to the session manager: IO error occured opening connection
Segmentation fault (core dumped)
在網路上找不到解決的辦法,就參考 Arch Linux 的作法。修改 /etc/xrdp/startwm.sh,讓使用者可以使用 ~/.xinitrc 來啟動。修改如下。
#!/bin/sh
# xrdp X session start script (c) 2015, 2017, 2021 mirabilos
# published under The MirOS Licence
# Rely on /etc/pam.d/xrdp-sesman using pam_env to load both
# /etc/environment and /etc/default/locale to initialise the
# locale and the user environment properly.
if test -r /etc/profile; then
. /etc/profile
fi
if [ -r ~/.xinitrc ]; then
. ~/.xinitrc
exit 0
fi
test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession
紅色部分是多加上去的,判斷假如 ~/.xinitrc 存在,則執行它。.xinitrc 的內容如下。
#!/bin/sh
exec dbus-launch --sh-syntax startxfce4
可能需要執行 chmod +x .xinitrc,設成可執行。
一直想騎公路車,雖然年紀大了,可能不適合這般拉風的腳踏車,體力也可能不勝負荷。環島回來後,同時也喜歡上騎腳踏車,雖然已經訂了一輛黑狼,心中卻念念不忘要再騎公路車。前幾天,黑狼牽回家後,忍不住還是上網拍找了一輛公路車,昨天對方把車送過來了。這張照片就借用賣方的照片了。
2008-05-19 22:22
南橫之行的最後一天,騎到台東捷安特還車,要離去時,進到店中,匆匆一瞥,見到CRX 1,正是我夢想的車,稍微問了一下價錢,就趕去火車站坐車。