mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-29 23:07:42 +00:00
Lerdge K EEPROM and TFT (#21812)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
This commit is contained in:
parent
e865cc0249
commit
06e965e29c
1
.github/workflows/test-builds.yml
vendored
1
.github/workflows/test-builds.yml
vendored
@ -80,6 +80,7 @@ jobs:
|
||||
- mks_robin_pro
|
||||
- STM32F103RET6_creality
|
||||
- LERDGEX
|
||||
- LERDGEK
|
||||
- mks_robin_nano35
|
||||
|
||||
# Put lengthy tests last
|
||||
|
@ -30,11 +30,17 @@
|
||||
#if ENABLED(I2C_EEPROM)
|
||||
|
||||
#include "eeprom_if.h"
|
||||
|
||||
#if ENABLED(SOFT_I2C_EEPROM)
|
||||
#include <SlowSoftWire.h>
|
||||
SlowSoftWire Wire = SlowSoftWire(I2C_SDA_PIN, I2C_SCL_PIN, true);
|
||||
#else
|
||||
#include <Wire.h>
|
||||
#endif
|
||||
|
||||
void eeprom_init() {
|
||||
Wire.begin(
|
||||
#if PINS_EXIST(I2C_SCL, I2C_SDA)
|
||||
#if PINS_EXIST(I2C_SCL, I2C_SDA) && DISABLED(SOFT_I2C_EEPROM)
|
||||
uint8_t(I2C_SDA_PIN), uint8_t(I2C_SCL_PIN)
|
||||
#endif
|
||||
);
|
||||
|
@ -154,6 +154,9 @@ static const uint16_t st7796s_init[] = {
|
||||
|
||||
static const uint16_t lerdge_st7796s_init[] = {
|
||||
DATASIZE_8BIT,
|
||||
ESC_REG(ST7796S_SWRESET), ESC_DELAY(100),
|
||||
ESC_REG(ST7796S_SLPOUT), ESC_DELAY(20),
|
||||
|
||||
ESC_REG(ST7796S_CSCON), 0x00C3, // enable command 2 part I
|
||||
ESC_REG(ST7796S_CSCON), 0x0096, // enable command 2 part II
|
||||
|
||||
@ -165,7 +168,6 @@ static const uint16_t lerdge_st7796s_init[] = {
|
||||
|
||||
ESC_REG(ST7796S_PWR2), 0x0015,
|
||||
ESC_REG(ST7796S_PWR3), 0x00AF,
|
||||
ESC_REG(0xC3), 0x0009, // Register not documented in datasheet
|
||||
ESC_REG(ST7796S_VCMPCTL), 0x0022,
|
||||
ESC_REG(ST7796S_VCMOST), 0x0000,
|
||||
ESC_REG(ST7796S_DOCA), 0x0040, 0x008A, 0x0000, 0x0000, 0x0029, 0x0019, 0x00A5, 0x0033,
|
||||
|
@ -28,7 +28,14 @@
|
||||
#define BOARD_INFO_NAME "Lerdge K"
|
||||
#define DEFAULT_MACHINE_NAME "LERDGE"
|
||||
|
||||
// EEPROM
|
||||
#if NO_EEPROM_SELECTED
|
||||
#define I2C_EEPROM
|
||||
#define SOFT_I2C_EEPROM // Force the use of Software I2C
|
||||
#define I2C_SCL_PIN PG14
|
||||
#define I2C_SDA_PIN PG13
|
||||
#define MARLIN_EEPROM_SIZE 0x10000
|
||||
#endif
|
||||
|
||||
// USB Flash Drive support
|
||||
#define HAS_OTG_USB_HOST_SUPPORT
|
||||
@ -36,7 +43,7 @@
|
||||
//
|
||||
// Servos
|
||||
//
|
||||
//#define SERVO0_PIN PB11
|
||||
#define SERVO0_PIN PB11
|
||||
|
||||
//
|
||||
// Limit Switches
|
||||
@ -96,6 +103,13 @@
|
||||
// #define E1_CS_PIN PE4
|
||||
//#endif
|
||||
|
||||
//#define E2_STEP_PIN PF4 // best guess
|
||||
//#define E2_DIR_PIN PF3 // best guess
|
||||
//#define E2_ENABLE_PIN PF5 // best guess
|
||||
//#ifndef E2_CS_PIN
|
||||
// #define E2_CS_PIN PB2 // best guess
|
||||
//#endif
|
||||
|
||||
#if HAS_TMC_UART
|
||||
/**
|
||||
* TMC2208/TMC2209 stepper drivers
|
||||
@ -163,13 +177,19 @@
|
||||
#ifndef FAN_PIN
|
||||
#define FAN_PIN PF7
|
||||
#endif
|
||||
|
||||
#define FAN1_PIN PF6
|
||||
#define FAN2_PIN PF8
|
||||
|
||||
#ifndef E0_AUTO_FAN_PIN
|
||||
#define E0_AUTO_FAN_PIN PF6
|
||||
#define E0_AUTO_FAN_PIN PB1
|
||||
#endif
|
||||
|
||||
#ifndef E1_AUTO_FAN_PIN
|
||||
#define E1_AUTO_FAN_PIN PB0
|
||||
#endif
|
||||
|
||||
#define CONTROLLER_FAN_PIN PF8
|
||||
|
||||
//
|
||||
// LED / Lighting
|
||||
//
|
||||
@ -177,10 +197,10 @@
|
||||
//#define CASE_LIGHT_PIN_DO -1
|
||||
//#define NEOPIXEL_PIN -1
|
||||
#ifndef RGB_LED_R_PIN
|
||||
#define RGB_LED_R_PIN PB7
|
||||
#define RGB_LED_R_PIN PB8 // swap R and G pin for compatibility with real wires
|
||||
#endif
|
||||
#ifndef RGB_LED_G_PIN
|
||||
#define RGB_LED_G_PIN PB8
|
||||
#define RGB_LED_G_PIN PB7
|
||||
#endif
|
||||
#ifndef RGB_LED_B_PIN
|
||||
#define RGB_LED_B_PIN PB9
|
||||
@ -197,7 +217,7 @@
|
||||
//
|
||||
#define SDSS PC11
|
||||
#define LED_PIN PA15 // Alive
|
||||
#define PS_ON_PIN -1
|
||||
#define PS_ON_PIN PA4
|
||||
#define KILL_PIN -1
|
||||
#define POWER_LOSS_PIN PA4 // Power-loss / nAC_FAULT
|
||||
|
||||
@ -213,6 +233,9 @@
|
||||
// LCD / Controller
|
||||
//
|
||||
|
||||
#if HAS_FSMC_TFT
|
||||
//#define TFT_DRIVER LERDGE_ST7796
|
||||
|
||||
#define TFT_RESET_PIN PD6
|
||||
#define TFT_BACKLIGHT_PIN PD3
|
||||
|
||||
@ -223,7 +246,10 @@
|
||||
#define TOUCH_SCK_PIN PB3
|
||||
#define TOUCH_MOSI_PIN PB5
|
||||
#define TOUCH_MISO_PIN PB4
|
||||
#endif
|
||||
|
||||
#if IS_NEWPANEL
|
||||
#define BTN_EN1 PG10
|
||||
#define BTN_EN2 PG11
|
||||
#define BTN_ENC PG9
|
||||
#endif
|
||||
|
18
buildroot/tests/LERDGEK
Executable file
18
buildroot/tests/LERDGEK
Executable file
@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Build tests for LERDGEK environment
|
||||
#
|
||||
|
||||
# exit on first failure
|
||||
set -e
|
||||
|
||||
#
|
||||
# Build with the typical configuration
|
||||
#
|
||||
restore_configs
|
||||
opt_set MOTHERBOARD BOARD_LERDGE_K SERIAL_PORT 1
|
||||
opt_enable TFT_GENERIC TFT_INTERFACE_FSMC TFT_COLOR_UI
|
||||
exec_test $1 $2 "LERDGE K with Generic FSMC TFT with ColorUI" "$3"
|
||||
|
||||
# clean up
|
||||
restore_configs
|
@ -41,6 +41,7 @@ HAS_(FSMC|SPI|LTDC)_TFT = src_filter=+<src/HAL/STM32/tft> +<src/H
|
||||
HAS_FSMC_TFT = src_filter=+<src/HAL/STM32/tft/tft_fsmc.cpp> +<src/HAL/STM32F1/tft/tft_fsmc.cpp>
|
||||
HAS_SPI_TFT = src_filter=+<src/HAL/STM32/tft/tft_spi.cpp> +<src/HAL/STM32F1/tft/tft_spi.cpp>
|
||||
I2C_EEPROM = src_filter=+<src/HAL/shared/eeprom_if_i2c.cpp>
|
||||
SOFT_I2C_EEPROM = SlowSoftI2CMaster, SlowSoftWire=https://github.com/felias-fogg/SlowSoftWire/archive/master.zip
|
||||
SPI_EEPROM = src_filter=+<src/HAL/shared/eeprom_if_spi.cpp>
|
||||
HAS_GRAPHICAL_TFT = src_filter=+<src/lcd/tft>
|
||||
DWIN_CREALITY_LCD = src_filter=+<src/lcd/dwin>
|
||||
|
@ -308,8 +308,7 @@ build_flags = ${stm_flash_drive.build_flags}
|
||||
platform = ${lerdge_common.platform}
|
||||
extends = lerdge_common
|
||||
board_build.firmware = Lerdge_K_firmware_force.bin
|
||||
build_flags = ${lerdge_common.build_flags}
|
||||
-DLERDGEK
|
||||
build_flags = ${lerdge_common.build_flags} -DLERDGEK
|
||||
|
||||
#
|
||||
# Lerdge K with USB Flash Drive Support
|
||||
|
Loading…
Reference in New Issue
Block a user