Marlin 2.0.x 升級 - 首發 (以TinyBoy 為例子)

本帖最後由 fred2088 於 2020-4-6 23:50 編輯

Offer 大神早於 2014-9-6 已經首發 Arduino Mega 2560 + RAMPS1.4 + Marlin Firmware 如設定 Marlin 1.0.0 beta

https://www.hkepc.com/forum/view ... 259&tid=2120148

四年多後 Marlin 停止 1.x 的開發, 將開發已去到 2.x
希望可以在 2019年一月開始 ...
雖然內容只是皮毛步驟, 但為使在 HKEPC 人氣多D及令高手師兄多D發言及分享, 內容會先在這裡首發 !!!

見國內 大部份3D打印機的 Marlin 都只是升級去到 1.1.9, 希望他們會在來多D這裡, 為他們的機子升級 (自大說法... )
http://marlinfw.org/meta/features/ (進階功能等師兄們試了)

Marlin 2.x 好處
- 支援好多 32Bit 板 , ARM, STM32 ...
- 支援多類 LED燈, 機內照明及機箱燈, WS2812 / Neopixel/RGBW 等 (作小改可作進度燈)
- 支援 USB Flash Disk (8 Bit 去到 32 bit 主板)
- 支援用LCD Menu 使用人手換絲步驟
- 支援方便自定UI 介面
- 支援 SD 升級 Firmware - USB and SDCARD Firmware flashing for the ARDUINO ATMEGA 2560 and ADK
- 打印完成, 熱頭歸位
- M425 - Backlash compensation
- 支援 Touch Mon
- 支援開機動畫

https://www.hkepc.com/forum/redi ... 57&pid=37890392

本帖最後由 fred2088 於 2018-12-24 23:15 編輯

首先要知道自己部機的規格 :

找找有沒有舊 Marlin 1.x 的源代碼
或 寫下規格
打印機結構 : Cartesian ( Cartesian / Delta / SCARA / Core XY / Core XZ / Core YZ )
X 最大長度 :  100mm, 定位碰制 : Max
Y 最大長度 :  100mm, 定位碰制 : Min
Z 最大長度 :  105mm, 定位碰制 : Min
X 步進 : 每步 1.8度, 步進帶 : GT2, 牙距 : 2mm
Y 步進 : 每步 1.8度, 步進帶 : GT2, 牙距 : 2mm
Z 步進 : 每步 1.8度, 絲杆 : 3MM, 螺紋距離 : 0.5mm @圈
E 步進 : 每步 1.8度, 輪牙直徑 : 11mm
熱咀 : 1個
發熱管 : 50W 12V
熱感 : 100K NTC
風扇接線位 : 直連電源(不經主板)
顯示屏 : i2c 128x64 OLED ( i2C / SPI / TxRx )
SD 模塊 : SPI SD/MicroSD Shield

TOP

本帖最後由 fred2088 於 2018-12-29 15:44 編輯

升級前預備

因為Marlin 2.0.x 用了樹型存檔,  Arduino IDE 是不支援的 (只會自動開啟同資料夾的文件), 所以要另找 Editor ...
我選了 Notepad++
還有其他的 Editor 可用 :
Sublime Text 3, Notepad++, TextMate, Visual Studio Code, Atom,
https://www.google.com/search?q=free+text+and+project+editors

Recommend by Marlin
https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.0.x
To build Marlin 2.0 you'll need Arduino IDE 1.9 or PlatformIO. We've posted detailed instructions on how to build Marlin 2.0 for ARM.

1. 下載及 安裝 Arduino 1.8.8 (Current release) 1.9 還是 Beta
或 PlatformIO (未用過, 因為我只是初哥, 如果是32Bit板 PlatformIO 會好D ...)
2. 安裝 U8glib, Adafruit_NeoPixel (Sketch>Include Library>Manage Library:search U8glib, neopixel)
3. 使用Notepad+ 開啟 configuration.h 及 configuration_adv.h

*** 在修改時, 在修改了的內容前 加入記號 (我會用 // fred), 可以方便一次過搜尋所有已改動的內容 ...

m1.jpg

m2.jpg (100.84 KB)

上載速度

m2.jpg

m3.jpg (83.1 KB)

主板類別

m3.jpg

m4.jpg (104.21 KB)

自定打印機名稱

m4.jpg

m5.jpg (40.09 KB)

印絲直徑

m5.jpg

m6.jpg (96.57 KB)

印咀及熱床溫感

m6.jpg

m7.jpg (68.01 KB)

遠程送絲長度

m7.jpg

m8.jpg (102.39 KB)

有效定位碰制

m8.jpg

m9.jpg (149.96 KB)

碰制正反設定

m9.jpg

m10.jpg (136.33 KB)

XYZE 每mm 步數

m10.jpg

m11.jpg (48.67 KB)

最快步度

m11.jpg

m12.jpg (75 KB)

最大加速

m12.jpg

m13.jpg (126.34 KB)

預設加速

m13.jpg

m14.jpg (108.61 KB)

加減速緩衝

m14.jpg

m15.jpg (69.94 KB)

停止鎖死步進

m15.jpg

m16.jpg (92.98 KB)

步進轉動方向

m16.jpg

m17.jpg (59.75 KB)

Z軸歸零位置

m17.jpg

m18.jpg (79.22 KB)

XYZ軸歸零方向

m18.jpg

m19.jpg (31.17 KB)

打印時數總計

m19.jpg

m20.jpg (59.63 KB)

在選單設定歸零選項

m20.jpg

m21.jpg (133.12 KB)

OLED設定

m21.jpg

m24.jpg (120.23 KB)

刪除風扇針腳定義

m24.jpg

m22.jpg (126.51 KB)

自動風扇針腳定義

m22.jpg

m23.jpg (83.72 KB)

TinyOLED 針腳定義

m23.jpg

TOP

本帖最後由 fred2088 於 2018-12-31 10:55 編輯

LCD Menu Tree 修改

128x64 的選項修改 ... 在 Marlin-bugfix-2.0.x\Marlin\src\lcd\ultralcd.cpp
menu.png

TOP

本帖最後由 fred2088 於 2019-1-1 14:28 編輯

改 Menu 做大字 原本是5行的, 加大字改為 4 行 ...

U8glib Font List , 大家可從 Font List 選可支援的字型大小 來顯示 ...
https://github.com/olikraus/u8glib/wiki/fontsize

1.1.6以後... 已改用 Hallow highlight 以減低主板的工作, 但 XYZ 機可以用回反白選項, Delta 機會有點吃力 ...
\Marlin-bugfix-2.0.x\Marlin\src\lcd\ultralcd_impl_DOGM.h

m31.jpg

https://www.hkepc.com/forum/redi ... 57&pid=37974684

m32.jpg (89.5 KB)

\Marlin-bugfix-2.0.x\Marlin\src\lcd\ultralcd_impl_DOGM.h

m32.jpg

TOP

本帖最後由 fred2088 於 2019-1-2 11:31 編輯

自定 128x64 UI
也可為Marlin加入未支援的 LCD顯屏 (獨家支援 ... 又自 High ... 最重要是平 )

        u8g.setFont(u8g_font_fur14); 設定不同字體 (U8glib 內支援的字體)

m34.jpg


https://www.hkepc.com/forum/redi ... 57&pid=37974684

TOP

本帖最後由 fred2088 於 2019-1-2 11:39 編輯

支援 WS2812 / Neopixel , 機內燈, 機身燈 (又是獨家 20 x WS2812 自己玩做PCB ... )
m35.jpg



https://www.hkepc.com/forum/redi ... 57&pid=37974125

m36.jpg (141.69 KB)

機箱燈

m36.jpg

TOP

本帖最後由 fred2088 於 2019-1-12 21:16 編輯

USB 手指支援 (不用再找SD卡 ... )
Mini USB Host Sheild / USB Host Sheild for Uno $2x~$3x
支援Mega2560+RAMPS

m55.png


https://www.hkepc.com/forum/redi ... 57&pid=37999075

TOP

本帖最後由 fred2088 於 2019-1-2 11:30 編輯

多頁打印資訊

1. 整體資訊
2. 熱頭資訊
3. XYZ座標資訊
4. SD卡打印進度資訊

在 Marlin-bugfix-2.0.x\Marlin\src\lcd\dogm\status_screen_DOGM.h 改 lcd_impl_status_screen_0()
可自定多少頁 page1 ~ page??

m33.jpg

  實機打印 ...
   

TOP

本帖最後由 fred2088 於 2019-1-4 00:06 編輯

預計打印所需時間
Printing ETA

打印機的打印% 是以已打印的Byte數 除以檔案大小的Byte數,
而預計打印所需時間, 有不同的處理手法,
1. 在切片時計算之後以備註加入GCODE 內, 如切片時沒有加入時間備註,便顯示不倒 ...
2. 以已打印的時間及 % 計算出 預計打印所需時間 ,  初計算出來的打印時間會相差很多 ...
        預計時間 = (已用時間 / 已用%) * 100) - 已用時間;
3. 可能還有其他方法 ...

m37.jpg

TOP