#3dp #c1 micromake c1 marlin

順手快速記錄

http://www.thingiverse.com/thing:2228647

 

廣告

[3dp] Ramps板換創客基地的OLED 1.3″ LCD

去年在新北maker faire,看到香港的tinyboy2,使用這麼小的12864 LCD,有一種反差萌。

事實上12864的OLED有兩款:0.96吋/1.3吋

但因為要和ramps列印版整合,所以要走EXP1/2通道

目前最便宜的方案應該是創客基地的PCB板

https://world.taobao.com/item/520794036483.htm?spm=a312a.7700714.0.0.uaGePr

但是,他還要改一點marlin的設定

如果用U8GLIB_SH1106或U8GLIB_SSD1306或tinyboy,會發生speaker狂叫的情形,所以還是手動修吧。

雖然taobao頁已經有改法,但還要搭配QQ群的文件比對位置。還好香港這位網友也有整理加patch的地方。

 

環境:最新的marlin 1.10 + Arduino 1.8.1 + u8glib 1,19,1

http://www.hkepc.com/forum/viewthread.php?tid=2359306

首先 Libraries 入面要有 U8glib
====================
修改Configuration.h
//
// This option reverses the encoder direction everywhere
//
// Set this option if CLOCKWISE causes values to DECREASE
//
//#define REVERSE_ENCODER_DIRECTION

在上段 code 下面增加以下部分
/*—————MKS OLED patch_1———————–*/
// MKS OLED 1.3″ 128×64 FULL GRAPHICS CONTROLLER
#define MKS_OLED13_128x64_FULL_GRAPHICS_CONTROLLER

#if defined (MKS_OLED13_128x64_FULL_GRAPHICS_CONTROLLER)
#define DOGLCD
#define U8GLIB_SH1106
#define REPRAP_DISCOUNT_SMART_CONTROLLER
#define NEWPANEL
#endif
/*—————MKS OLED patch_1———————–*/

====================
修改ultralcd_impl_DOGM.h
// LCD selection
#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
U8GLIB_ST7920_128X64_4X u8g(LCD_PINS_RS); // 2 stripes
// U8GLIB_ST7920_128X64 u8g(LCD_PINS_RS); // 8 stripes
#elif ENABLED(U8GLIB_ST7920)
//U8GLIB_ST7920_128X64_4X u8g(LCD_PINS_D4, LCD_PINS_ENABLE, LCD_PINS_RS); // Original u8glib device. 2 stripes
// No 4 stripe device available from u8glib.
//U8GLIB_ST7920_128X64_1X u8g(LCD_PINS_D4, LCD_PINS_ENABLE, LCD_PINS_RS); // Original u8glib device. 8 stripes
U8GLIB_ST7920_128X64_RRD u8g(0); // Number of stripes can be adjusted in ultralcd_st7920_u8glib_rrd.h with PAGE_HEIGHT

在上段 code 下面增加以下部分
/*—————MKS OLED patch_2———————–*/
#elif defined(U8GLIB_SH1106)
U8GLIB_SH1106_128X64 u8g(23, 17, 16, 25); // SW SPI Com: SCK = 23, MOSI = 17, CS = 16, A0 = 25
/*—————MKS OLED patch_2———————–*/

====================
修改Marlin_main.cpp
void setup() {

#ifdef DISABLE_JTAG
// Disable JTAG on AT90USB chips to free up pins for IO
MCUCR = 0x80;
MCUCR = 0x80;
#endif

#if ENABLED(FILAMENT_RUNOUT_SENSOR)
setup_filrunoutpin();
#endif

setup_killpin();

setup_powerhold();

#if HAS_STEPPER_RESET
disableStepperDrivers();
#endif

MYSERIAL.begin(BAUDRATE);
SERIAL_PROTOCOLLNPGM(“start");
SERIAL_ECHO_START;

在上段 code 下面增加以下部分
/*—————MKS OLED patch_3———————–*/
#if defined (MKS_OLED13_128x64_FULL_GRAPHICS_CONTROLLER)
pinMode(LCD_PINS_DC, OUTPUT);
pinMode(LCD_PINS_RST, OUTPUT);
digitalWrite(LCD_PINS_RST , LOW);
delay(1000);
digitalWrite(LCD_PINS_RST , HIGH);
#endif
/*—————MKS OLED patch_3———————–*/

====================
修改pins.h
#define SENSITIVE_PINS { 0, 1, \
X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, \
Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, \
Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, Z_MIN_PROBE_PIN, \
PS_ON_PIN, HEATER_BED_PIN, FAN_PIN, FAN1_PIN, FAN2_PIN, CONTROLLERFAN_PIN, \
_E0_PINS _E1_PINS _E2_PINS _E3_PINS _E4_PINS BED_PINS \
_H0_PINS _H1_PINS _H2_PINS _H3_PINS _H4_PINS \
_X2_PINS _Y2_PINS _Z2_PINS \
X_MS1_PIN, X_MS2_PIN, Y_MS1_PIN, Y_MS2_PIN, Z_MS1_PIN, Z_MS2_PIN \
}

#define HAS_DIGIPOTSS (PIN_EXISTS(DIGIPOTSS))

在上段 code 下面增加以下部分
/*—————MKS OLED patch_4———————–*/
#if defined (MKS_OLED13_128x64_FULL_GRAPHICS_CONTROLLER)

#ifdef LCD_PINS_D5
#undef LCD_PINS_D5
#define LCD_PINS_D5 -1
#endif
#ifdef LCD_PINS_D6
#undef LCD_PINS_D6
#define LCD_PINS_D6 -1
#endif
#define LCD_PINS_RST 27
#define LCD_PINS_DC 25
#endif
/*—————MKS OLED patch_4———————–*/

 

但我編譯會跳一個錯誤

 #error "Please select no more than one LCD controller option."

我認為這是因為新版的marlin檢察比較多所致

還好這篇有人問了 https://github.com/MarlinFirmware/Marlin/issues/5545

sanitycheck.h 中把他拿掉error就好

#if COUNT_LCD_24 > 1
    #error "Please select no more than one LCD controller option."
#endif

目前看起來,我可以編過了,耶

改天再換上去吧

 

 

[3DP] 3D列印的材料,與他能做什麼

Maker有三寶:CNC(電腦控制車床)、雷射切割機、3D印表機

CNC最吵,雷切最危險,3DP最慢 XD

雷切是2D,CNC是3D減法,3dp是3d加法。

現在主流的3dp是FDM(熱堆疊)技術,說穿了就是機械手臂+熱熔膠塗上去。古時後人用陶土創作也差不多(笑)。理論上疊的越精細就看不到層聞(等高線),但就要更多時間,而且也有極限。

更精細的技術還有光固化(和牙醫用紫外線照射樹脂是同樣技術)還有粉末(常用於金屬)。不過比較貴就沒去玩了。

FDM主要的材質就是塑膠,而且是ABS、PLA塑膠。當然這半年來我已經從PETG寶特瓶、TPU軟料TPE軟料都亂玩一通。最主要的還是PLA啦,便宜,500元/kg,貴的永遠是時間。

Continue reading “[3DP] 3D列印的材料,與他能做什麼"