RepRapDiscount Full Graphic Smart Controller
English • العربية • български • català • čeština • Deutsch • Ελληνικά • español • فارسی • français • hrvatski • magyar • italiano • română • 日本語 • 한국어 • lietuvių • Nederlands • norsk • polski • português • русский • Türkçe • українська • 中文(中国大陆) • 中文(台灣) • עברית • azərbaycanca • |
Release status: working
Description | Run your RAMPS without a computer just with a SD card!
|
License | GPL
|
Author | |
Contributors | |
Based-on | [[bkubicek idea]]
|
Categories | |
CAD Models | |
External Link |
Contents
Full Graphic Smart Controller
Based on bkubicek idea and STB's DOGM128 implementation, we realized this full graphic smart controller.
Description
This Full Graphic Smart Controller contains a SD-Card reader, an rotary encoder and a 128 x 64 dot matrix LCD display.
This display board is intended to provide an easy and simple solution to interact with a RAMPS based 3D printer. Given that many of the 3D printer's mainboards are based on the RAMPS design this display board is supported by many other mainboards.
When using a RAMPS board the Full Graphic Smart Controller is simple to connect using the "smart adapter" which connects directly to an Arduino Mega 2560. The Full Graphic Smart Controller comes with a 12864 (128x64) LCD.
Depending on the vendor you may find boards using an ST7920 IC Driver or a ST7565 IC Driver. Boards using a DOG-M128 Display use a ST7565 IC Driver. The more common and generic boards use some flavor of a 12864 LCD with the ST7920, this is the case with most board you find in online stores.
The original design supports the 8bit Parallel display interface and a 4bit serial display interface, yet all of the common E3 Printer firmwares only support the 4bit Serial interface which only uses one pin for data, freeing more pins for other uses.
Original Design and Clones
The original design supports the 8bit Parallel display interface and a 4bit serial display interface. Other clones may vary to the original RepRapDiscount design. Some will not have the SD-Card or a reset switch.
Some budget clones may have issues due to timing constraints with the display used.
This display board is supported by the most popular 3D Printer firmwares.
Connection
The board has two 14 pin (2 row 2.54mm) pitch box connectors marked EXP1 and EXP2.
The following figure shows the pinout mapping to an Arduino Mega 2560:
When used with a RAMPS board the "Smart Adapter" provides an easy connection with the RAMPS. The following figure shows the pinout mapping to an Arduino Mega 2560:
Clones and other manufactures may provide different connections, in particular models without SD-Card or models supporting only the SPI/Serial interface (most common)
Schematics
RepRapDiscount Full Graphic Smart Controller Schematics
RepRapDiscount Full Graphic Smart Controller Gerber Files
As firmware we used Marlins' sources, to update the firmware in the future you just need an Arduino board, so you are good to go ;)
Pictures of a Full Graphic Smart Controller made by RepRapDiscount.com
Support in Marlin Firmware V1 (new)
1. In "Configuration.h” find the following line:
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
Remove the comment character "#" to read:
define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: http://code.google.com/p/u8glib/wiki/u8glib
2. Upload the firmware, power off the Arduino, connect the panel, reapply power.
Repetier
...
Open Source Files
You can find the open source files here: http://forum.reprapdiscount.com/forums/oss/
Where to get it?
If you don't have the mood to build it yourself you can just buy from
All parts are licensed under Attribution - ShareAlike.
Issues
- Some versions of this board have the notched connectors the wrong way around. If your controller only flickers and beeps, cut off the notches on the cables and insert them upside down.
- Some clones of this board use really slow LCD displays so their signal timings need adjusted.
- The symptoms are that the display gets slightly corrupted. (which can also be cables to long)
- In current versions of marlin (1.1.9) add the following to configuration.h to override the default settings.
- add "#define ST7920_DELAY_1 DELAY_NS(0)"
- add "#define ST7920_DELAY_2 DELAY_NS(0)"
- add "#define ST7920_DELAY_3 DELAY_NS(63)" // this is the defaults for a 16mhz processor (ie a mega2560)
- This is used as follows.
- For each bit that is sent over SPI
- Set the clock pin low and wait ST7920_DELAY_1
- Set the data pin and wait ST7920_DELAY_2
- Set the clock pin high and wait ST7920_DELAY_3
- Slower LCD's seem to need ST7920_DELAY_3 increased.
Hacks
There are some possible hacks to modify the display.