SKR Pro 1.1 WiFi and LCD SD card support (#17531)

This commit is contained in:
Bob Kuhn 2020-04-16 03:55:33 -05:00 committed by GitHub
parent d194688020
commit f5d809f366
Signed by: GitHub
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 111 additions and 8 deletions

View file

@ -0,0 +1,35 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#include "../../inc/MarlinConfig.h"
#include "Delay.h"
void esp_wifi_init(void) {
#if PIN_EXISTS(ESP_WIFI_MODULE_RESET)
OUT_WRITE(ESP_WIFI_MODULE_RESET_PIN, LOW);
delay(1);
OUT_WRITE(ESP_WIFI_MODULE_RESET_PIN, HIGH);
#endif
#if PIN_EXISTS(ESP_WIFI_MODULE_ENABLE)
OUT_WRITE(ESP_WIFI_MODULE_ENABLE_PIN, HIGH);
#endif
}

View file

@ -0,0 +1,24 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#pragma once
void esp_wifi_init();

View file

@ -44,6 +44,7 @@
#include "feature/closedloop.h" #include "feature/closedloop.h"
#include "HAL/shared/Delay.h" #include "HAL/shared/Delay.h"
#include "HAL/shared/esp_wifi.h"
#include "module/stepper/indirection.h" #include "module/stepper/indirection.h"
@ -962,6 +963,8 @@ void setup() {
BOARD_INIT(); BOARD_INIT();
#endif #endif
SETUP_RUN(esp_wifi_init());
// Check startup - does nothing if bootloader sets MCUSR to 0 // Check startup - does nothing if bootloader sets MCUSR to 0
byte mcu = HAL_get_reset_source(); byte mcu = HAL_get_reset_source();
if (mcu & 1) SERIAL_ECHOLNPGM(STR_POWERUP); if (mcu & 1) SERIAL_ECHOLNPGM(STR_POWERUP);

View file

@ -1409,3 +1409,9 @@
#if PIN_EXISTS(CLOSED_LOOP_MOVE_COMPLETE) #if PIN_EXISTS(CLOSED_LOOP_MOVE_COMPLETE)
REPORT_NAME_DIGITAL(__LINE__, CLOSED_LOOP_MOVE_COMPLETE_PIN) REPORT_NAME_DIGITAL(__LINE__, CLOSED_LOOP_MOVE_COMPLETE_PIN)
#endif #endif
#if PIN_EXISTS(ESP_WIFI_MODULE_RESET)
REPORT_NAME_DIGITAL(__LINE__, ESP_WIFI_MODULE_RESET_PIN)
#endif
#if PIN_EXISTS(ESP_WIFI_MODULE_ENABLE)
REPORT_NAME_DIGITAL(__LINE__, ESP_WIFI_MODULE_ENABLE_PIN)
#endif

View file

@ -142,7 +142,11 @@
#define SDIO_CK_PIN PC12 #define SDIO_CK_PIN PC12
#define SDIO_CMD_PIN PD2 #define SDIO_CMD_PIN PD2
#if !defined(SDCARD_CONNECTION) || SD_CONNECTION_IS(ONBOARD) #ifndef SDCARD_CONNECTION
#define SDCARD_CONNECTION ONBOARD
#endif
#if SD_CONNECTION_IS(ONBOARD)
#define SDIO_SUPPORT // Use SDIO for onboard SD #define SDIO_SUPPORT // Use SDIO for onboard SD
#ifndef SDIO_SUPPORT #ifndef SDIO_SUPPORT

View file

@ -31,7 +31,7 @@
// Use one of these or SDCard-based Emulation will be used // Use one of these or SDCard-based Emulation will be used
//#define SRAM_EEPROM_EMULATION // Use BackSRAM-based EEPROM emulation //#define SRAM_EEPROM_EMULATION // Use BackSRAM-based EEPROM emulation
//#define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation #define FLASH_EEPROM_EMULATION // Use Flash-based EEPROM emulation
// //
// Servos // Servos
@ -215,7 +215,11 @@
#define HEATER_BED_PIN PD12 // Hotbed #define HEATER_BED_PIN PD12 // Hotbed
#define FAN_PIN PC8 // Fan0 #define FAN_PIN PC8 // Fan0
#define FAN1_PIN PE5 // Fan1 #define FAN1_PIN PE5 // Fan1
#define FAN2_PIN PE6 // Fan2 #define FAN2_PIN PE6
#ifndef E0_AUTO_FAN_PIN
#define E0_AUTO_FAN_PIN PC9
#endif
// //
// Misc. Functions // Misc. Functions
@ -227,16 +231,14 @@
// //
// Onboard SD card // Onboard SD card
// NOT compatible with LCD // Must use soft SPI because Marlin's default hardware SPI is tied to LCD's EXP2
// //
#if SDCARD_CONNECTION == ONBOARD && !HAS_SPI_LCD #if SD_CONNECTION_IS(ONBOARD)
#define SOFTWARE_SPI // Use soft SPI for onboard SD #define SOFTWARE_SPI // Use soft SPI for onboard SD
#define SDSS PA4 #define SDSS PA4
#define SCK_PIN PA5 #define SCK_PIN PA5
#define MISO_PIN PA6 #define MISO_PIN PA6
#define MOSI_PIN PB5 #define MOSI_PIN PB5
#else
#define SDSS PB12
#endif #endif
/** /**
@ -256,6 +258,9 @@
#if HAS_SPI_LCD #if HAS_SPI_LCD
#define BEEPER_PIN PG4 #define BEEPER_PIN PG4
#define BTN_ENC PA8 #define BTN_ENC PA8
#if SD_CONNECTION_IS(LCD)
#define SDSS PB12 // Uses default hardware SPI for LCD's SD
#endif
#if ENABLED(CR10_STOCKDISPLAY) #if ENABLED(CR10_STOCKDISPLAY)
#define LCD_PINS_RS PG6 #define LCD_PINS_RS PG6
@ -272,6 +277,10 @@
#undef ST7920_DELAY_2 #undef ST7920_DELAY_2
#undef ST7920_DELAY_3 #undef ST7920_DELAY_3
#elif ENABLED(MKS_MINI_12864)
#define DOGLCD_A0 PG6
#define DOGLCD_CS PG3
#else #else
#define LCD_PINS_RS PD10 #define LCD_PINS_RS PD10
@ -321,3 +330,21 @@
#endif #endif
#endif // HAS_SPI_LCD #endif // HAS_SPI_LCD
//
// WIFI
//
/**
* _____
* TX | 1 2 | GND Enable PG1 // Must be high for module to run
* Enable | 3 4 | GPIO2 Reset PG0 // Leave as unused (OK to leave floating)
* Reset | 5 6 | GPIO0 GPIO2 PF15 // Leave as unused (best to leave floating)
* 3.3V| 7 8 | RX GPIO0 PF14 // Leave as unused (best to leave floating)
*
* W1
*/
#define ESP_WIFI_MODULE_COM 6 // must also set SERIAL_PORT or SERIAL_PORT_2 to this
#define ESP_WIFI_MODULE_BAUDRATE BAUDRATE //115200 // use BAUDRATE ? would guarantee same baud rate as SERIAL_PORT & SERIAL_PORT_2
#define ESP_WIFI_MODULE_RESET_PIN -1
#define ESP_WIFI_MODULE_ENABLE_PIN PG1

View file

@ -164,7 +164,11 @@
#define SDIO_CK_PIN PC12 #define SDIO_CK_PIN PC12
#define SDIO_CMD_PIN PD2 #define SDIO_CMD_PIN PD2
#if !defined(SDCARD_CONNECTION) || SD_CONNECTION_IS(ONBOARD) #ifndef SDCARD_CONNECTION
#define SDCARD_CONNECTION ONBOARD
#endif
#if SD_CONNECTION_IS(ONBOARD)
#define SDIO_SUPPORT // Use SDIO for onboard SD #define SDIO_SUPPORT // Use SDIO for onboard SD
#ifndef SDIO_SUPPORT #ifndef SDIO_SUPPORT