STB RepRap Graphic LCD Controller with Fan Output

From RepRap
Revision as of 13:05, 18 August 2013 by STB (talk | contribs) (Sanguinololu)
Jump to: navigation, search
Crystal Clear action run.png
STB

Release status: working

STB GLCD Overall-1.jpg
Description
Release Version 0.9
License
unknown
Author
Contributors
Based-on
Categories
CAD Models
External Link


Abstract

Indiegogo campaign RepRap Graphic LCD Controller with Fan Output

This is an easy to use expansion board for the popular Sanguinololu, Melzi & RAMPS electronics. It adds the most of the available addons for the Sanguinololu/Melzi/RAMPS in one board.

Details

STB GLCD Overall-1.jpg

The Controller features

  • Automatically controlled stepper driver cooling-fan output
  • Hotend fan control (importatant for PLA printing)
  • Stand alone printing from micro-SD card
  • 128x64 dots graphic LCD display
  • Beeper
  • Plug and Play installation

Simply plug the adapter to the Sanguinololu expansion connector and connect the controller board with the included ribbon cable.

Available LCD Colors

STB Menu color Impressions.jpg

Easy user interface

Status screen with animated icons. These icons give a quick overview of the status of the printer. It shows an animated fan icon, when the hotend fan is operating. Heating of the hotends and the heatbed is indicated with small dots inside the icons. Printing progress and the actual extruder position on the bed is displayed via progress bar / coordinates. Communication with the user via a nice graphical user interface which allows to set most of the relevant parameters by turning and clicking the menu-wheel.

STB GLCD main screen.jpg

Impressions of the User Menu

STB Menu Impressions.jpg

Required firmware

To make use of the graphics LCD, Erik Zalm's Marlin is recommendet. It can be downloaded from GitHub (https://github.com/ErikZalm/Marlin), all other functions are compatible with most of the other firmwares for the Sanguinololu.

Others

All pictures show the prototype design. The final design comes with a totally black PCB and micro SD-connector. On Melzi the fan switch output is disabled because Melzi has an on board fan switch output.

RAMPS Adapter

A RAMPS adapter will also supplied.

STB RAMPS Adapter 3D model-1.png

Source files

File:STB GLCD shield.pdf

Marlin Firmware Adaption

RAMPS

Pins.h

/* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs SDSS as pin 24. But you better upgrade your Sanguino libraries! See #368. */
//#define SDSS               24
#ifdef ULTRA_LCD
  #ifdef NEWPANEL
    //we have a buzzer installed
    #define BEEPER 37
    //LCD Pins
           #ifdef DOGLCD
                 // Pins for DOGM SPI LCD Support
                 #define DOGLCD_A0      23    // RAMPS AUX-4 Pin 16
                 #define DOGLCD_CS      17    // RAMPS AUX-4 Pin 17
                 // GLCD features
                 #define LCD_CONTRAST 1
                 // Uncomment screen orientation
                // #define LCD_SCREEN_ROT_0
                // #define LCD_SCREEN_ROT_90
                 #define LCD_SCREEN_ROT_180
                // #define LCD_SCREEN_ROT_270
                 #else // standard Hitachi LCD controller
                 #define LCD_PINS_RS        4
                 #define LCD_PINS_ENABLE    17
                 #define LCD_PINS_D4        30
                 #define LCD_PINS_D5        29
                 #define LCD_PINS_D6        28
                 #define LCD_PINS_D7        27
        #endif
    //The encoder and click button
    #define BTN_EN1 35  // RAMPS Aux-4 Pin 10 must be a hardware interrupt pin
    #define BTN_EN2 33  // RAMPS Aux-4 Pin 11 must be hardware interrupt pin
    #define BTN_ENC 31  // RAMPS Aux-4 Pin 12 the switch
    //not connected to a pin
    #define SDCARDDETECT 49 // RAMPS Aux-3 Pin 2
    
    //from the same bit in the RAMPS Newpanel define
    //encoder rotation values
    #define encrot0 0
    #define encrot1 2
    #define encrot2 3
    #define encrot3 1
    
    #define BLEN_C 2
    #define BLEN_B 1
    #define BLEN_A 0
  #endif //Newpanel
#endif //Ultipanel
#endif

//RAMPS Aux-3 Pin 18 is the output for a fan switch
#define FAN_PIN   16

Sanguinololu/Melzi

Add the following lines in section Sanguinololu pin assignment. You can omit this with Melzi

#define FAN_PIN            4
/* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs SDSS as pin 24. But you better upgrade your Sanguino libraries! See #368. */
//#define SDSS               24
#ifdef ULTRA_LCD
  #ifdef NEWPANEL
    //we have a buzzer installed
    #define BEEPER 17
    //LCD Pins
    #ifdef DOGLCD
    // Pins for DOGM SPI LCD Support
    #define DOGLCD_A0	30
    #define DOGLCD_CS	29
    // GLCD features
    #define LCD_CONTRAST 1
    // Uncomment screen orientation
    // #define LCD_SCREEN_ROT_0
    // #define LCD_SCREEN_ROT_90
    #define LCD_SCREEN_ROT_180
    // #define LCD_SCREEN_ROT_270
    #else // standard Hitachi LCD controller
    #define LCD_PINS_RS        4
    #define LCD_PINS_ENABLE    17
    #define LCD_PINS_D4        30
    #define LCD_PINS_D5        29
    #define LCD_PINS_D6        28
    #define LCD_PINS_D7        27
    #endif
    //The encoder and click button
    #define BTN_EN1 11  //must be a hardware interrupt pin
    #define BTN_EN2 10 //must be hardware interrupt pin
    #define BTN_ENC 16  //the switch
    //not connected to a pin
    #define SDCARDDETECT 28
    
    //from the same bit in the RAMPS Newpanel define
    //encoder rotation values
    #define encrot0 0
    #define encrot1 2
    #define encrot2 3
    #define encrot3 1
    
    #define BLEN_C 2
    #define BLEN_B 1
    #define BLEN_A 0
    
  #endif //Newpanel
#endif //Ultipanel


Contact

Contact STB