Add UltiController v2.1 support

Add compatibility with the original screen bord from Ultimaker 2 printer (UltiController v2.1 with the PG-2864ALBP I2C display)
This commit is contained in:
Scott Lahteine 2018-02-05 22:25:49 -06:00
parent a8c4174a13
commit 16739264d3
4 changed files with 28 additions and 4 deletions

View file

@ -1618,6 +1618,12 @@
#define U8GLIB_SH1106 #define U8GLIB_SH1106
#endif #endif
//
// Original Ulticontroller from Ultimaker 2 printer with SSD1309 I2C display and encoder
// https://github.com/Ultimaker/Ultimaker2/tree/master/1249_Ulticontroller_Board_(x1)
//
//#define ULTI_CONTROLLER
// //
// CONTROLLER TYPE: Shift register panels // CONTROLLER TYPE: Shift register panels
// //

View file

@ -151,10 +151,21 @@
#define DEFAULT_LCD_CONTRAST 17 #define DEFAULT_LCD_CONTRAST 17
#endif #endif
// Generic support for SSD1306 / SH1106 OLED based LCDs. #if ENABLED(ULTI_CONTROLLER)
#if ENABLED(U8GLIB_SSD1306) || ENABLED(U8GLIB_SH1106) #define U8GLIB_SSD1309
#define REVERSE_ENCODER_DIRECTION
#define LCD_RESET_PIN LCD_PINS_D6 // This controller need a reset pin
#define LCD_CONTRAST_MIN 0
#define LCD_CONTRAST_MAX 254
#define DEFAULT_LCD_CONTRAST 127
#define ENCODER_PULSES_PER_STEP 2
#define ENCODER_STEPS_PER_MENU_ITEM 2
#endif
// Generic support for SSD1306 / SSD1309 / SH1106 OLED based LCDs.
#if ENABLED(U8GLIB_SSD1306) || ENABLED(U8GLIB_SSD1309) || ENABLED(U8GLIB_SH1106)
#define ULTRA_LCD //general LCD support, also 16x2 #define ULTRA_LCD //general LCD support, also 16x2
#define DOGLCD // Support for I2C LCD 128x64 (Controller SSD1306 / SH1106 graphic Display Family) #define DOGLCD // Support for I2C LCD 128x64 (Controller SSD1306 / SSD1309 / SH1106 graphic Display Family)
#endif #endif
#if ENABLED(PANEL_ONE) || ENABLED(U8GLIB_SH1106) #if ENABLED(PANEL_ONE) || ENABLED(U8GLIB_SH1106)
@ -178,7 +189,8 @@
#if ENABLED(ULTIMAKERCONTROLLER) \ #if ENABLED(ULTIMAKERCONTROLLER) \
|| ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER) \ || ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER) \
|| ENABLED(G3D_PANEL) \ || ENABLED(G3D_PANEL) \
|| ENABLED(RIGIDBOT_PANEL) || ENABLED(RIGIDBOT_PANEL) \
|| ENABLED(ULTI_CONTROLLER)
#define ULTIPANEL #define ULTIPANEL
#endif #endif

View file

@ -1426,6 +1426,9 @@ static_assert(1 >= 0
#if ENABLED(ZONESTAR_LCD) #if ENABLED(ZONESTAR_LCD)
+ 1 + 1
#endif #endif
#if ENABLED(ULTI_CONTROLLER)
+ 1
#endif
, "Please select no more than one LCD controller option." , "Please select no more than one LCD controller option."
); );

View file

@ -211,6 +211,9 @@
// Generic support for SH1106 OLED I2C LCDs // Generic support for SH1106 OLED I2C LCDs
//U8GLIB_SH1106_128X64_2X_I2C_2_WIRE u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_FAST); // 4 stripes //U8GLIB_SH1106_128X64_2X_I2C_2_WIRE u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_FAST); // 4 stripes
U8GLIB_SH1106_128X64_2X u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_FAST); // 4 stripes U8GLIB_SH1106_128X64_2X u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_FAST); // 4 stripes
#elif ENABLED(U8GLIB_SSD1309)
// Generic support for SSD1309 OLED I2C LCDs
U8GLIB_SSD1309_128X64 u8g(U8G_I2C_OPT_NONE | U8G_I2C_OPT_FAST);
#elif ENABLED(MINIPANEL) #elif ENABLED(MINIPANEL)
// The MINIPanel display // The MINIPanel display
//U8GLIB_MINI12864 u8g(DOGLCD_CS, DOGLCD_A0); // 8 stripes //U8GLIB_MINI12864 u8g(DOGLCD_CS, DOGLCD_A0); // 8 stripes