From 98fdc67f1d011dbc31981542a7461ffc60abbc40 Mon Sep 17 00:00:00 2001 From: RudolphRiedel <31180093+RudolphRiedel@users.noreply.github.com> Date: Tue, 12 May 2020 06:51:07 +0200 Subject: [PATCH] Fixes for FYSETC Cheetah (#17935) --- Marlin/Configuration_adv.h | 1 - .../lib/ftdi_eve_touch_ui/pin_mappings.h | 15 --- Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h | 101 ++++++++---------- 3 files changed, 45 insertions(+), 72 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 0d36f56ca..245b2a022 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1381,7 +1381,6 @@ //#define AO_EXP2_PINMAP // AlephObjects CLCD UI EXP2 mapping //#define CR10_TFT_PINMAP // Rudolph Riedel's CR10 pin mapping //#define S6_TFT_PINMAP // FYSETC S6 pin mapping - //#define CHEETAH_TFT_PINMAP // FYSETC Cheetah pin mapping //#define E3_EXP1_PINMAP // E3 type boards (SKR E3/DIP, and Stock boards) EXP1 pin mapping //#define GENERIC_EXP2_PINMAP // GENERIC EXP2 pin mapping diff --git a/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/pin_mappings.h b/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/pin_mappings.h index 7476a1108..236ecf49c 100644 --- a/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/pin_mappings.h +++ b/Marlin/src/lcd/extui/lib/ftdi_eve_touch_ui/pin_mappings.h @@ -163,18 +163,3 @@ #define CLCD_MOD_RESET BTN_EN1 #define CLCD_SPI_CS LCD_PINS_RS #endif - -#ifdef CHEETAH_TFT_PINMAP - #ifndef __MARLIN_FIRMWARE__ - #error "This pin mapping requires Marlin." - #endif - - #define CLCD_MOD_RESET BTN_EN1 - #define CLCD_SPI_CS LCD_PINS_RS - - #if ENABLED(CLCD_USE_SOFT_SPI) - #define CLCD_SOFT_SPI_MOSI LCD_PINS_ENABLE - #define CLCD_SOFT_SPI_MISO LCD_PINS_SCK - #define CLCD_SOFT_SPI_SCLK LCD_PINS_D4 - #endif -#endif diff --git a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h index a663061f6..52444008b 100644 --- a/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h +++ b/Marlin/src/pins/stm32f1/pins_FYSETC_CHEETAH.h @@ -29,6 +29,7 @@ #define BOARD_INFO_NAME "FYSETC Cheetah" #define BOARD_WEBSITE_URL "fysetc.com" +// https://github.com/FYSETC/Cheetah // Ignore temp readings during development. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 @@ -103,39 +104,41 @@ // Misc. Functions // #define SDSS PA4 +#define SD_DETECT_PIN PC3 -// -// LCD Pins -// -/** - * _____ - * 5V | 1 2 | GND - * (MOSI) PB15 | 3 4 | PB12 (LCD_EN) - * (SCK) PB13 | 5 6 PC11 (BTN_EN1) - * (LCD_RS) PB14 | 7 8 | PC10 (BTN_EN2) - * (BTN_ENC) PC12 | 9 10| PC9 (BEEPER) - * ----- - * EXP1 - */ +#ifndef RGB_LED_R_PIN + #define RGB_LED_R_PIN PB0 +#endif +#ifndef RGB_LED_G_PIN + #define RGB_LED_G_PIN PB7 +#endif +#ifndef RGB_LED_B_PIN + #define RGB_LED_B_PIN PB6 +#endif -#define EXPA1_03_PIN PB15 -#define EXPA1_04_PIN PB12 -#define EXPA1_05_PIN PB13 -#define EXPA1_06_PIN PC11 -#define EXPA1_07_PIN PB14 -#define EXPA1_08_PIN PC10 -#define EXPA1_09_PIN PC12 -#define EXPA1_10_PIN PC9 +/* +* EXP1 pinout for the LCD according to Fysetcs schematic for the Cheetah board +* _____ +* (Beeper) PC9 | 1 2 | PC12 (BTN_ENC) +* (BTN_EN2) PC11 | 3 4 | PB14 (LCD_RS / MISO) +* (BTN_EN1) PC10 5 6 | PB13 (SCK) +* (LCD_EN) PB12 | 7 8 | PB15 (MOSI) +* GND | 9 10| 5V +* ----- +* EXP1 +* Note: The pin-numbers match the connector correctly and are not in reverse order like on the Ender-3 board. +* Note: Functionally the pins are assigned in the same order as on the Ender-3 board. +* Note: Pin 4 on the Cheetah board is assigned to an I/O, it is assigned to RESET on the Ender-3 board. +*/ #if HAS_SPI_LCD - - #define BEEPER_PIN EXPA1_10_PIN + #define BEEPER_PIN PC9 #if HAS_GRAPHICAL_LCD - #define DOGLCD_A0 EXPA1_07_PIN - #define DOGLCD_CS EXPA1_04_PIN - #define DOGLCD_SCK EXPA1_05_PIN - #define DOGLCD_MOSI EXPA1_03_PIN + #define DOGLCD_A0 PB14 + #define DOGLCD_CS PB12 + #define DOGLCD_SCK PB13 + #define DOGLCD_MOSI PB15 //#define LCD_SCREEN_ROT_90 //#define LCD_SCREEN_ROT_180 //#define LCD_SCREEN_ROT_270 @@ -145,45 +148,31 @@ #endif #endif - #define LCD_PINS_RS EXPA1_04_PIN // CS -- SOFT SPI for ENDER3 LCD - #define LCD_PINS_D4 EXPA1_05_PIN // SCLK - #define LCD_PINS_ENABLE EXPA1_03_PIN // DATA MOSI - - // not connected to a pin - #define SD_DETECT_PIN PC3 - - #ifndef RGB_LED_R_PIN - #define RGB_LED_R_PIN PB0 - #endif - #ifndef RGB_LED_G_PIN - #define RGB_LED_G_PIN PB7 - #endif - #ifndef RGB_LED_B_PIN - #define RGB_LED_B_PIN PB6 - #endif + #define LCD_PINS_RS PB12 // CS -- SOFT SPI for ENDER3 LCD + #define LCD_PINS_D4 PB13 // SCLK + #define LCD_PINS_ENABLE PB15 // DATA MOSI //#define LCD_CONTRAST_INIT 190 #if ENABLED(NEWPANEL) - #define BTN_EN1 EXPA1_06_PIN - #define BTN_EN2 EXPA1_08_PIN - #define BTN_ENC EXPA1_09_PIN + #define BTN_EN1 PC10 + #define BTN_EN2 PC11 + #define BTN_ENC PC12 #endif - #endif #if ENABLED(TOUCH_UI_FTDI_EVE) - #define BEEPER_PIN EXPA1_10_PIN + #define BEEPER_PIN PC9 + #define CLCD_MOD_RESET PC11 + #define CLCD_SPI_CS PB12 - #define BTN_EN1 EXPA1_06_PIN + //#define CLCD_USE_SOFT_SPI // the Cheetah can use hardware-SPI so we do not really need this - #define LCD_PINS_RS EXPA1_04_PIN - - #define CLCD_SPI_BUS 2 - //#define CLCD_USE_SOFT_SPI #if ENABLED(CLCD_USE_SOFT_SPI) - #define LCD_PINS_ENABLE EXPA1_03_PIN - #define LCD_PINS_SCK EXPA1_07_PIN - #define LCD_PINS_D4 EXPA1_05_PIN + #define CLCD_SOFT_SPI_MOSI PB15 + #define CLCD_SOFT_SPI_MISO PB14 + #define CLCD_SOFT_SPI_SCLK PB13 + #else + #define CLCD_SPI_BUS 2 #endif #endif