From cf0c165361b91f1002900947861518a16f033a99 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Fri, 9 Apr 2021 12:47:05 -0400 Subject: [PATCH] Docs: Split the display section of Config_Reference.md into multiple sections Signed-off-by: Kevin O'Connor --- docs/Config_Reference.md | 254 ++++++++++++++++++++++++++------------- 1 file changed, 173 insertions(+), 81 deletions(-) diff --git a/docs/Config_Reference.md b/docs/Config_Reference.md index 04439569..e1e813fa 100644 --- a/docs/Config_Reference.md +++ b/docs/Config_Reference.md @@ -3085,87 +3085,11 @@ Support for a display attached to the micro-controller. ``` [display] lcd_type: -# The type of LCD chip in use. This may be "hd44780" (which is used -# in "RepRapDiscount 2004 Smart Controller" type displays),"hd44780_spi" -# (which is used in mightyboard based printers), "st7920" -# (which is used in "RepRapDiscount 12864 Full Graphic Smart -# Controller" type displays), "emulated_st7920" (which emulate a ST7920 -# display but won't work properly with the "st7920" display driver), -# "uc1701" (which is used in "MKS Mini 12864" type displays), -# "ssd1306", or "sh1106". This parameter must be provided. -#hd44780_protocol_init: True -# Perform 8-bit/4-bit protocol initialization on an hd44780 display. -# This is necessary on real hd44780 devices. However, one may -# need to disable this on some "clone" devices. The default -# is True. -#rs_pin: -#e_pin: -#d4_pin: -#d5_pin: -#d6_pin: -#d7_pin: -# The pins connected to an hd44780 type lcd. These parameters must -# be provided when using an hd44780 display. -#line_length: -# Set the number of characters per line for an hd44780 type lcd. -# Possible values are 20 (default) and 16. The number of lines is -# fixed to 4. -#cs_pin: -#sclk_pin: -#sid_pin: -# The pins connected to an st7920 type lcd. These parameters must be -# provided when using an st7920 display. -#en_pin: -#spi_speed: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# The pins connected to an emulated_st7920 or hd44780_spi type lcd. -# The en_pin corresponds to the cs_pin of the st7920 type lcd, -# spi_software_sclk_pin corresponds to sclk_pin and spi_software_mosi_pin -# corresponds to sid_pin. The spi_software_miso_pin needs to be set to an -# unused pin of the printer mainboard as the st7920 as no MISO pin -# but the software spi implementation requires this pin to be configured. -# The default spi_speed is 1MHz. -#latch_pin: -# Used with the hd44780_spi type lcd, connected to the latch pin of the -# shift register. -#cs_pin: -#a0_pin: -#rst_pin: -# The pins connected to an uc1701 type lcd. The rst_pin is -# optional. The cs_pin and a0_pin parameters must be provided when -# using an uc1701 display. -#contrast: -# The contrast to set when using a uc1701 or SSD1306/SH1106 type -# display For UC1701 the value may range from 0 to 63. Default is -# 40. For SSD1306/SH1106 the value may range from 0 to 256. Default -# is 239. -#vcomh: 0 -# Set the Vcomh value on SSD1306/SH1106 displays. This value is -# associated with a "smearing" effect on some OLED displays. The -# value may range from 0 to 63. Default is 0. -#x_offset: 0 -# Set the horizontal offset value on SSD1306/SH1106 displays. -# Default is 0. -#invert: False -# TRUE inverts the pixels on certain OLED (SSD1306/SH1106) displays. -# The default is False. -#cs_pin: -#dc_pin: -#spi_speed: -#spi_bus: -#spi_software_sclk_pin: -#spi_software_mosi_pin: -#spi_software_miso_pin: -# The pins connected to an ssd1306 type lcd when in "4-wire" spi -# mode. See the "common SPI settings" section for a description of -# the parameters that start with "spi_". The default is to use i2c -# mode for ssd1306 displays. -#reset_pin: -# A reset pin may be specified on ssd1306 displays. If it is not -# specified then the hardware must have a pull-up on the -# corresponding lcd line. +# The type of LCD chip in use. This may be "hd44780", "hd44780_spi", +# "st7920", "emulated_st7920", "uc1701", "ssd1306", or "sh1106". +# See the display sections below for information on each type and +# additional parameters they provide. This parameter must be +# provided. #display_group: # The name of the display_data group to show on the display. This # controls the content of the screen (see the "display_data" section @@ -3233,6 +3157,174 @@ lcd_type: # button. ``` +### hd44780 display + +Information on configuring hd44780 displays (which is used in +"RepRapDiscount 2004 Smart Controller" type displays). + +``` +[display] +lcd_type: hd44780 +# Set to "hd44780" for hd44780 displays. +rs_pin: +e_pin: +d4_pin: +d5_pin: +d6_pin: +d7_pin: +# The pins connected to an hd44780 type lcd. These parameters must +# be provided. +#hd44780_protocol_init: True +# Perform 8-bit/4-bit protocol initialization on an hd44780 display. +# This is necessary on real hd44780 devices. However, one may need +# to disable this on some "clone" devices. The default is True. +#line_length: +# Set the number of characters per line for an hd44780 type lcd. +# Possible values are 20 (default) and 16. The number of lines is +# fixed to 4. +... +``` + +### hd44780_spi display + +Information on configuring an hd44780_spi display - a 20x04 display +controlled via a hardware "shift register" (which is used in +mightyboard based printers). + +``` +[display] +lcd_type: hd44780_spi +# Set to "hd44780_spi" for hd44780_spi displays. +latch_pin: +spi_speed: +spi_software_sclk_pin: +spi_software_mosi_pin: +spi_software_miso_pin: +# The pins connected to the shift register controlling the display. +# The spi_software_sclk_pin corresponds to sclk_pin and +# spi_software_mosi_pin corresponds to sid_pin. The +# spi_software_miso_pin needs to be set to an unused pin of the +# printer mainboard as the display has no MISO pin but the software +# spi implementation requires this pin to be configured. +#hd44780_protocol_init: True +# Perform 8-bit/4-bit protocol initialization on an hd44780 display. +# This is necessary on real hd44780 devices. However, one may need +# to disable this on some "clone" devices. The default is True. +#line_length: +# Set the number of characters per line for an hd44780 type lcd. +# Possible values are 20 (default) and 16. The number of lines is +# fixed to 4. +... +``` + +### st7920 display + +Information on configuring st7920 displays (which is used in +"RepRapDiscount 12864 Full Graphic Smart Controller" type displays). + +``` +[display] +lcd_type: st7920 +# Set to "st7920" for st7920 displays. +cs_pin: +sclk_pin: +sid_pin: +# The pins connected to an st7920 type lcd. These parameters must be +# provided. +... +``` + +### emulated_st7920 display + +Information on configuring an emulated st7920 displays - found in some +"2.4 inch touchscreen devices" and similar. + +``` +[display] +lcd_type: emulated_st7920 +# Set to "emulated_st7920" for emulated_st7920 displays. +en_pin: +spi_software_sclk_pin: +spi_software_mosi_pin: +spi_software_miso_pin: +# The pins connected to an emulated_st7920 type lcd. The en_pin +# corresponds to the cs_pin of the st7920 type lcd, +# spi_software_sclk_pin corresponds to sclk_pin and +# spi_software_mosi_pin corresponds to sid_pin. The +# spi_software_miso_pin needs to be set to an unused pin of the +# printer mainboard as the st7920 as no MISO pin but the software +# spi implementation requires this pin to be configured. +... +``` + +### uc1701 display + +Information on configuring uc1701 displays (which is used in "MKS Mini +12864" type displays). + +``` +[display] +lcd_type: uc1701 +# Set to "uc1701" for uc1701 displays. +cs_pin: +a0_pin: +# The pins connected to a uc1701 type lcd. These parameters must be +# provided. +#rst_pin: +# The pin connected to the "rst" pin on the lcd. If it is not +# specified then the hardware must have a pull-up on the +# corresponding lcd line. +#contrast: +# The contrast to set. The value may range from 0 to 63 and the +# default is 40. +... +``` + +### ssd1306 and sh1106 displays + +Information on configuring ssd1306 and sh1106 displays. + +``` +[display] +lcd_type: +# Set to either "ssd1306" or "sh1106" for the given display type. +#i2c_mcu: +#i2c_bus: +#i2c_speed: +# Optional parameters available for displays connected via an i2c +# bus. See the "common I2C settings" section for a description of +# the above parameters. +#cs_pin: +#dc_pin: +#spi_speed: +#spi_bus: +#spi_software_sclk_pin: +#spi_software_mosi_pin: +#spi_software_miso_pin: +# The pins connected to the lcd when in "4-wire" spi mode. See the +# "common SPI settings" section for a description of the parameters +# that start with "spi_". The default is to use i2c mode for the +# display. +#reset_pin: +# A reset pin may be specified on the display. If it is not +# specified then the hardware must have a pull-up on the +# corresponding lcd line. +#contrast: +# The contrast to set. The value may range from 0 to 256 and the +# default is 239. +#vcomh: 0 +# Set the Vcomh value on the display. This value is associated with +# a "smearing" effect on some OLED displays. The value may range +# from 0 to 63. Default is 0. +#invert: False +# TRUE inverts the pixels on certain OLED displays. The default is +# False. +#x_offset: 0 +# Set the horizontal offset value on SH1106 displays. The default is +# 0. +... +``` + ## [display_data] Support for displaying custom data on an lcd screen. One may create