REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER をつなぐ

REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER をつないで、SDCardから、オフラインでプリントできるようになりました。



使ったLCDは、REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER(安いです)

Ben_Kとの接続のためには、コネクタのアダプターを別途作成する必要があります。

それ用に、ピンを開けておいたので、割と簡単にできると思います。
以下のpins.hを参考に、作ってください。
(ご要望が多ければ、専用のボードを開発しますので、ご連絡ください。)

もちろんファームの変更も必要です。
Marlin Firmware の configuration.h  pins.h の2つのファイルを変更します。

**** configuration.h *****
まず、configuration.h は 500行目付近にある

//#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

この行の頭の"//"を削除して、有効にします。
(もちろん他のLCDをすでに使っていた場合は、その該当行はコメントにしてください。)

***** pins.h *****
こちらは、Ben_K のPin Assignments を以下を参考に、変更します。

/****************************************************************
* BEN_K Pin Assignments
******************************************************************/
#if MB(BEN_K)
#define KNOWN_BOARD
#ifndef __AVR_ATmega2560__
#error Oops!  Make sure you have 'Ben_K2560' selected from the 'Tools -> Boards' menu.
#endif

#define LARGE_FLASH true

#define X_STEP_PIN 37
#define X_DIR_PIN 49
#define X_ENABLE_PIN 29

#define Y_STEP_PIN 36
#define Y_DIR_PIN 48
#define Y_ENABLE_PIN 28

#define Z_STEP_PIN 32
#define Z_DIR_PIN 47
#define Z_ENABLE_PIN 27

// Brn_K pin#
#define X_MIN_PIN 81
#define X_MAX_PIN -1 //82
#define Y_MIN_PIN 80
#define Y_MAX_PIN -1 //83
#define Z_MIN_PIN 79
#define Z_MAX_PIN -1 //38 Use for Servo


#define HEATER_BED_PIN 45
#define TEMP_BED_PIN 13  // Therm1

#define HEATER_0_PIN  44
#define TEMP_0_PIN 12  // Therm0

#define HEATER_1_PIN -1
#define TEMP_1_PIN 14  // Therm3

#ifdef BARICUDA
#define HEATER_2_PIN -1
#else
#define HEATER_2_PIN -1
#endif
#define TEMP_2_PIN 15  // Therm3


#define E0_STEP_PIN         34
#define E0_DIR_PIN          43
#define E0_ENABLE_PIN       26

#define E1_STEP_PIN         33
#define E1_DIR_PIN          42
#define E1_ENABLE_PIN       25

#define SDPOWER            -1
#define SDSS               -1
#define LED_PIN            13
#define FAN_PIN            46
#define PS_ON_PIN          -1
#define KILL_PIN           -1 //80 with Smart Controller LCD
#define SUICIDE_PIN        -1  //PIN that has to be turned on right after start, to keep power flowing.

#ifdef NUM_SERVOS
  #define SERVO0_PIN       38 // Z_MAX_PIN
#endif

#ifdef ULTRA_LCD
  #define KILL_PIN 55
  #ifdef NEWPANEL
   //arduino pin which triggers an piezzo beeper
    #define BEEPER 56      // Beeper on AUX-4
    #define LCD_PINS_RS 60
    #define LCD_PINS_ENABLE 61
    #define LCD_PINS_D4 62
    #define LCD_PINS_D5 63
    #define LCD_PINS_D6 64
    #define LCD_PINS_D7 65

    //buttons are directly attached using AUX-2
    #define BTN_EN1 57
    #define BTN_EN2 58
    #define BTN_ENC 59  //the click

    #define BLEN_C 2
    #define BLEN_B 1
    #define BLEN_A 0

    #define SDCARDDETECT 54
#define SDSS         53

    //encoder rotation values
    #define encrot0 0
    #define encrot1 2
    #define encrot2 3
    #define encrot3 1
  #else //old style panel with shift register
    //arduino pin witch triggers an piezzo beeper
    #define BEEPER 33    No Beeper added
    //buttons are attached to a shift register
    // Not wired this yet
    // #define SHIFT_CLK 38
    // #define SHIFT_LD 42
    // #define SHIFT_OUT 40
    // #define SHIFT_EN 17

    #define LCD_PINS_RS 75
    #define LCD_PINS_ENABLE 17
    #define LCD_PINS_D4 23
    #define LCD_PINS_D5 25
    #define LCD_PINS_D6 27
    #define LCD_PINS_D7 29

    //encoder rotation values
    #define encrot0 0
    #define encrot1 2
    #define encrot2 3
    #define encrot3 1

    //bits in the shift register that carry the buttons for:
    // left up center down right red
    #define BL_LE 7
    #define BL_UP 6
    #define BL_MI 5
    #define BL_DW 4
    #define BL_RI 3
    #define BL_ST 2
    #define BLEN_B 1
    #define BLEN_A 0
  #endif
#endif //ULTRA_LCD

#ifndef SDSUPPORT
// these pins are defined in the SD library if building with SD support
  #define SCK_PIN          52
  #define MISO_PIN         50
  #define MOSI_PIN         51
#endif

#endif // BEN_K
**************************
以上です。

チャレンジしてみたい方、お気軽にご連絡ください。