update code base to Marlin 2.0.9.2

This commit is contained in:
Stefan Kalscheuer
2021-10-03 18:57:12 +02:00
parent b9d7ba838e
commit 7077da3591
2617 changed files with 332093 additions and 103438 deletions

View File

@@ -0,0 +1,42 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2021 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 <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#if ENABLED(ALLOW_MEGA644)
#if NOT_TARGET(__AVR_ATmega644__, __AVR_ATmega644P__, __AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644', 'ATmega644P', or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#elif ENABLED(ALLOW_MEGA644P)
#if NOT_TARGET(__AVR_ATmega644P__, __AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644P' or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#elif ENABLED(REQUIRE_MEGA644P)
#if NOT_TARGET(__AVR_ATmega644P__)
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega644P' in 'Tools > Processor.'"
#endif
#elif NOT_TARGET(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega1284P' in 'Tools > Processor.' (For PlatformIO, use 'melzi' or 'melzi_optiboot.')"
#endif
#undef ALLOW_MEGA644
#undef ALLOW_MEGA644P
#undef REQUIRE_MEGA644P

87
Marlin/src/pins/sanguino/pins_ANET_10.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -30,7 +30,6 @@
*
* 1) no longer uses Sanguino files to define some of the pins
* 2) added pointers to useable Arduino IDE extensions
*
*/
/**
@@ -48,7 +47,6 @@
* "Anet V1.0 (Optiboot)" frees up another 3K of FLASH. You'll need to burn
* a new bootloader to the board to be able to automatically download a
* compiled image.
*
*/
/**
@@ -66,7 +64,6 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
/**
@@ -82,15 +79,31 @@
* Additional info:
*
* Anet Schematics - https://github.com/ralf-e/ANET-3D-Board-V1.0
* Wiring RRDFG Smart Controller - http://www.thingiverse.com/thing:2103748
* Wiring RRDFG Smart Controller - https://www.thingiverse.com/thing:2103748
* SkyNet3D Anet software development - https://github.com/SkyNet3D/Marlin/
* Anet Users / Skynet SW on Facebook - https://www.facebook.com/skynet3ddevelopment/
*
* Many thanks to Hans Raaf (@oderwat) for developing the Anet-specific software and supporting the Anet community.
*/
#ifndef __AVR_ATmega1284P__
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega1284P' in 'Tools > Processor.' (For PlatformIO, use 'melzi' or 'melzi_optiboot.')"
/**
* OptiBoot Bootloader:
* Optiboot is an alternative bootloader that can be flashed on the board to free up space for a larger firmware build.
* See https://github.com/Optiboot/optiboot for more information.
*
* Install Marlin with Arduino IDE:
* For a board with the stock bootloader, select 'Sanguino' in 'Tools > Board' and 'ATmega1284P' in 'Tools > Processor.'
* For a board with OptiBoot, select 'Sanguino (Optiboot)' in 'Tools > Board' and 'ATmega1284P' in 'Tools > Processor.'
*
* Install Marlin with PlatformIO IDE:
* (NOTE: You can set a default build environment by editing the value of 'default_env' in 'platformio.ini'.
* For the best user experience install the "Auto Build Marlin" extension.)
* For a board with the stock bootloader use Build / Upload under the 'sanguino1284p' or 'sanguino1284p_optimized' target.
* For a board with OptiBoot, use Build / Upload under the 'melzi_optiboot' target.
*/
#if NOT_TARGET(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega1284P' in 'Tools > Processor.' (For PlatformIO, use 'sanguino1284p' or 'sanguino1284p_optimized'. With optiboot, use 'melzi_optiboot.')"
#endif
#define BOARD_INFO_NAME "Anet 1.0"
@@ -148,13 +161,16 @@
*
* Only the following displays are supported:
* ZONESTAR_LCD
* ANET_FULL_GRAPHICS_LCD
* ANET_FULL_GRAPHICS_LCD(_ALT_WIRING)?
* REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
*/
#if HAS_SPI_LCD
#if HAS_WIRED_LCD
#define LCD_SDSS 28
#if ENABLED(ADC_KEYPAD)
#if HAS_ADC_BUTTONS
#define SERVO0_PIN 27 // free for BLTouch/3D-Touch
#define LCD_PINS_RS 28
#define LCD_PINS_ENABLE 29
@@ -163,28 +179,49 @@
#define LCD_PINS_D6 16
#define LCD_PINS_D7 17
#define ADC_KEYPAD_PIN 1
#elif EITHER(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER, ANET_FULL_GRAPHICS_LCD)
#elif IS_RRD_FG_SC
// Pin definitions for the Anet A6 Full Graphics display and the RepRapDiscount Full Graphics
// display using an adapter board // https://go.aisler.net/benlye/anet-lcd-adapter/pcb
// See below for alternative pin definitions for use with https://www.thingiverse.com/thing:2103748
#define SERVO0_PIN 29 // free for BLTouch/3D-Touch
#define BEEPER_PIN 17
#define LCD_PINS_RS 27
#define LCD_PINS_ENABLE 28
#define LCD_PINS_D4 30
#define BTN_EN1 11
#define BTN_EN2 10
#define BTN_ENC 16
#define BOARD_ST7920_DELAY_1 DELAY_NS(0)
#define BOARD_ST7920_DELAY_2 DELAY_NS(63)
#define BOARD_ST7920_DELAY_3 DELAY_NS(125)
#define STD_ENCODER_PULSES_PER_STEP 4
#define STD_ENCODER_STEPS_PER_MENU_ITEM 1
#if ENABLED(ANET_FULL_GRAPHICS_LCD_ALT_WIRING)
#define SERVO0_PIN 30
#define BEEPER_PIN 27
#define LCD_PINS_RS 29
#define LCD_PINS_ENABLE 16
#define LCD_PINS_D4 11
#define BTN_EN1 28
#define BTN_EN2 10
#define BTN_ENC 17
#define BOARD_ST7920_DELAY_1 250
#define BOARD_ST7920_DELAY_2 250
#define BOARD_ST7920_DELAY_3 250
#else
#define SERVO0_PIN 29 // free for BLTouch/3D-Touch
#define BEEPER_PIN 17
#define LCD_PINS_RS 27
#define LCD_PINS_ENABLE 28
#define LCD_PINS_D4 30
#define BTN_EN1 11
#define BTN_EN2 10
#define BTN_ENC 16
#define BOARD_ST7920_DELAY_1 125
#define BOARD_ST7920_DELAY_2 63
#define BOARD_ST7920_DELAY_3 125
#endif
#endif
#else
#define SERVO0_PIN 27
#endif
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN SERVO0_PIN
#endif
/**
* ====================================================================
* =============== Alternative RepRapDiscount Wiring ==================
@@ -209,7 +246,7 @@
* ====================================================================
*
* Anet V1.0 controller | ZONESTAR_LCD | ANET_FULL_ | RepRapDiscount Full | Thingiverse RepRap wiring
* physical logical alt | | GRAPHICS_LCD | Graphics Display Wiring | http://www.thingiverse
* physical logical alt | | GRAPHICS_LCD | Graphics Display Wiring | https://www.thingiverse
* pin pin functions | | | | .com/thing:2103748
*------------------------------------------------------------------------------------------------------------------------
* ANET-J3.1 8 *** | N/A | J3_TX *** | |

2
Marlin/src/pins/sanguino/pins_AZTEEG_X1.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

9
Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -29,7 +29,6 @@
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -47,12 +46,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#ifndef __AVR_ATmega644P__
#error "Oops! Select 'Sanguino' in 'Tools > Board.'"
#endif
#define REQUIRE_MEGA644P
#include "env_validate.h"
#define BOARD_INFO_NAME "Gen3 Monolithic"
#define DEBUG_PIN 0

9
Marlin/src/pins/sanguino/pins_GEN3_PLUS.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -29,7 +29,6 @@
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -47,12 +46,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the SANGUINO board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644P' or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644P
#include "env_validate.h"
#define BOARD_INFO_NAME "Gen3+"

14
Marlin/src/pins/sanguino/pins_GEN6.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -31,7 +31,6 @@
* 1) added pointer to a current Arduino IDE extension
* 2) added support for M3, M4 & M5 spindle control commands
* 3) added case light pin definition
*
*/
/**
@@ -49,12 +48,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644P' or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644P
#include "env_validate.h"
#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "Gen6"
@@ -106,7 +103,10 @@
//
#define SDSS 17
#define DEBUG_PIN 0
#define CASE_LIGHT_PIN 16 // Hardware PWM
#ifndef CASE_LIGHT_PIN
#define CASE_LIGHT_PIN 16 // Hardware PWM
#endif
// RS485 pins
#define TX_ENABLE_PIN 12

4
Marlin/src/pins/sanguino/pins_GEN6_DELUXE.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -29,7 +29,6 @@
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -47,7 +46,6 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the SANGUINO board and then select the CPU.
*
*/

9
Marlin/src/pins/sanguino/pins_GEN7_12.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -31,7 +31,6 @@
* 1) added pointer to a current Arduino IDE extension
* 2) added support for M3, M4 & M5 spindle control commands
* 3) added case light pin definition
*
*/
/**
@@ -49,12 +48,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644', 'ATmega644P', or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644
#include "env_validate.h"
#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "Gen7 v1.1 / 1.2"

4
Marlin/src/pins/sanguino/pins_GEN7_13.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -29,7 +29,6 @@
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -47,7 +46,6 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#define BOARD_INFO_NAME "Gen7 v1.3"

14
Marlin/src/pins/sanguino/pins_GEN7_14.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -31,7 +31,6 @@
* 1) added pointer to a current Arduino IDE extension
* 2) added support for M3, M4 & M5 spindle control commands
* 3) added case light pin definition
*
*/
/**
@@ -49,12 +48,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644', 'ATmega644P', or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644
#include "env_validate.h"
#define BOARD_INFO_NAME "Gen7 v1.4"
@@ -102,7 +99,10 @@
// Misc. Functions
//
#define PS_ON_PIN 15
#define CASE_LIGHT_PIN 15 // Hardware PWM
#ifndef CASE_LIGHT_PIN
#define CASE_LIGHT_PIN 15 // Hardware PWM
#endif
// A pin for debugging
#define DEBUG_PIN 0

14
Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -34,7 +34,6 @@
* 1) added pointer to a current Arduino IDE extension
* 2) added support for M3, M4 & M5 spindle control commands
* 3) added case light pin definition
*
*/
/**
@@ -52,12 +51,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644', 'ATmega644P', or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644
#include "env_validate.h"
#define BOARD_INFO_NAME "Gen7 Custom"
@@ -104,7 +101,10 @@
//
#define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support
#define PS_ON_PIN 19
#define CASE_LIGHT_PIN 15 // Hardware PWM
#ifndef CASE_LIGHT_PIN
#define CASE_LIGHT_PIN 15 // Hardware PWM
#endif
// A pin for debugging
#define DEBUG_PIN -1

17
Marlin/src/pins/sanguino/pins_MELZI.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -29,4 +29,19 @@
#define BOARD_INFO_NAME "Melzi"
#endif
#define IS_MELZI 1
// Alter timing for graphical display
#if ENABLED(U8GLIB_ST7920)
#ifndef BOARD_ST7920_DELAY_1
#define BOARD_ST7920_DELAY_1 0
#endif
#ifndef BOARD_ST7920_DELAY_2
#define BOARD_ST7920_DELAY_2 188
#endif
#ifndef BOARD_ST7920_DELAY_3
#define BOARD_ST7920_DELAY_3 0
#endif
#endif
#include "pins_SANGUINOLOLU_12.h"

65
Marlin/src/pins/sanguino/pins_MELZI_CREALITY.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -28,11 +28,20 @@
* If you don't have a chip programmer you can use a spare Arduino plus a few
* electronic components to write the bootloader.
*
* See http://www.instructables.com/id/Burn-Arduino-Bootloader-with-Arduino-MEGA/
* See https://www.instructables.com/id/Burn-Arduino-Bootloader-with-Arduino-MEGA/
*
* Schematic: https://bit.ly/2XOnsWb
*/
#define BOARD_INFO_NAME "Melzi (Creality)"
// Alter timing for graphical display
#if ENABLED(U8GLIB_ST7920)
#define BOARD_ST7920_DELAY_1 125
#define BOARD_ST7920_DELAY_2 125
#define BOARD_ST7920_DELAY_3 125
#endif
#include "pins_MELZI.h"
//
@@ -46,28 +55,31 @@
#undef LCD_PINS_D5
#undef LCD_PINS_D6
#undef LCD_PINS_D7
#undef FIL_RUNOUT_PIN // Uses Beeper/LED Pin Pulled to GND
#define LCD_SDSS 31 // Smart Controller SD card reader (rather than the Melzi)
#define LCD_PINS_RS 28 // ST9720 CS
#define LCD_PINS_ENABLE 17 // ST9720 DAT
#define LCD_PINS_D4 30 // ST9720 CLK
#define LCD_SDSS 31 // Smart Controller SD card reader (rather than the Melzi)
#define LCD_PINS_RS 28 // ST9720 CS
#define LCD_PINS_ENABLE 17 // ST9720 DAT
#define LCD_PINS_D4 30 // ST9720 CLK
#if ENABLED(BLTOUCH)
#define SERVO0_PIN 27
#undef BEEPER_PIN
#endif
// Alter timing for graphical display
#if HAS_GRAPHICAL_LCD
#define BOARD_ST7920_DELAY_1 DELAY_NS(125)
#define BOARD_ST7920_DELAY_2 DELAY_NS(125)
#define BOARD_ST7920_DELAY_3 DELAY_NS(125)
#ifndef SERVO0_PIN
#define SERVO0_PIN 27
#endif
#if SERVO0_PIN == BEEPER_PIN
#undef BEEPER_PIN
#endif
#elif ENABLED(FILAMENT_RUNOUT_SENSOR)
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN 27
#endif
#if FIL_RUNOUT_PIN == BEEPER_PIN
#undef BEEPER_PIN
#endif
#endif
#if ENABLED(MINIPANEL)
#undef DOGLCD_CS
#define DOGLCD_CS LCD_PINS_RS
#define DOGLCD_CS LCD_PINS_RS
#endif
/**
@@ -77,13 +89,13 @@
PIN: 3 Port: B3 Z_STEP_PIN protected
PIN: 4 Port: B4 AVR_SS_PIN protected
. FAN_PIN protected
. SS_PIN protected
. SD_SS_PIN protected
PIN: 5 Port: B5 AVR_MOSI_PIN Output = 1
. MOSI_PIN Output = 1
. SD_MOSI_PIN Output = 1
PIN: 6 Port: B6 AVR_MISO_PIN Input = 0 TIMER3A PWM: 0 WGM: 1 COM3A: 0 CS: 3 TCCR3A: 1 TCCR3B: 3 TIMSK3: 0
. MISO_PIN Input = 0
. SD_MISO_PIN Input = 0
PIN: 7 Port: B7 AVR_SCK_PIN Output = 0 TIMER3B PWM: 0 WGM: 1 COM3B: 0 CS: 3 TCCR3A: 1 TCCR3B: 3 TIMSK3: 0
. SCK_PIN Output = 0
. SD_SCK_PIN Output = 0
PIN: 8 Port: D0 RXD Input = 1
PIN: 9 Port: D1 TXD Input = 0
PIN: 10 Port: D2 BTN_EN2 Input = 1
@@ -116,3 +128,14 @@
PIN: 30 Port: A1 LCD_PINS_D4 Output = 1
PIN: 31 Port: A0 SDSS Output = 1
*/
/**
* EXP1 Connector EXP1 as CR10 STOCKDISPLAY
* ------ ------
* PA4 |10 9 | PC0 BEEPER_PIN |10 9 | BTN_ENC
* PD3 | 8 7 | RESET BTN_EN1 | 8 7 | RESET
* PD2 6 5 | PA1 BTN_EN2 6 5 | LCD_PINS_D4 (ST9720 CLK)
* PA3 | 4 3 | PC1 (ST9720 CS) LCD_PINS_RS | 4 3 | LCD_PINS_ENABLE (ST9720 DAT)
* GND | 2 1 | 5V GND | 2 1 | 5V
* ------ ------
*/

2
Marlin/src/pins/sanguino/pins_MELZI_MAKR3D.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

22
Marlin/src/pins/sanguino/pins_MELZI_MALYAN.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -26,6 +26,7 @@
*/
#define BOARD_INFO_NAME "Melzi (Malyan)"
#include "pins_MELZI.h"
#undef LCD_SDSS
@@ -36,16 +37,9 @@
#undef BTN_EN2
#undef BTN_ENC
#define LCD_PINS_RS 17 // ST9720 CS
#define LCD_PINS_ENABLE 16 // ST9720 DAT
#define LCD_PINS_D4 11 // ST9720 CLK
#define BTN_EN1 30
#define BTN_EN2 29
#define BTN_ENC 28
// Alter timing for graphical display
#if HAS_GRAPHICAL_LCD
#define BOARD_ST7920_DELAY_1 DELAY_NS(125)
#define BOARD_ST7920_DELAY_2 DELAY_NS(125)
#define BOARD_ST7920_DELAY_3 DELAY_NS(125)
#endif
#define LCD_PINS_RS 17 // ST9720 CS
#define LCD_PINS_ENABLE 16 // ST9720 DAT
#define LCD_PINS_D4 11 // ST9720 CLK
#define BTN_EN1 30
#define BTN_EN2 29
#define BTN_ENC 28

16
Marlin/src/pins/sanguino/pins_MELZI_TRONXY.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -26,6 +26,14 @@
*/
#define BOARD_INFO_NAME "Melzi (Tronxy)"
// Alter timing for graphical display
#if ENABLED(U8GLIB_ST7920)
#define BOARD_ST7920_DELAY_1 0
#define BOARD_ST7920_DELAY_2 125
#define BOARD_ST7920_DELAY_3 0
#endif
#include "pins_MELZI.h"
#undef Z_ENABLE_PIN
@@ -50,9 +58,3 @@
#define BTN_EN1 10
#define BTN_EN2 11
#define BTN_ENC 26
#if HAS_GRAPHICAL_LCD
#define BOARD_ST7920_DELAY_1 DELAY_NS(0)
#define BOARD_ST7920_DELAY_2 DELAY_NS(125)
#define BOARD_ST7920_DELAY_3 DELAY_NS(0)
#endif

View File

@@ -0,0 +1,37 @@
/**
* 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 <https://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* Melzi V2.0 as found at https://www.reprap.org/wiki/Melzi
*/
#define BOARD_INFO_NAME "Melzi V2"
// Alter timing for graphical display
#if ENABLED(U8GLIB_ST7920)
#define BOARD_ST7920_DELAY_1 0
#define BOARD_ST7920_DELAY_2 400
#define BOARD_ST7920_DELAY_3 0
#endif
#include "pins_MELZI.h"

10
Marlin/src/pins/sanguino/pins_OMCA.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -49,14 +49,13 @@
* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM
* +--------+
*
* REF http://sanguino.cc/hardware
* REF http://sanguino.wikidot.com/hardware
*/
/**
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -70,14 +69,13 @@
*
* When installing select 1.0.2
*
* Installation instructions can be found at https://learn.sparkfun.com/pages/CustomBoardsArduino
* Installation instructions can be found at http://learn.sparkfun.com/pages/CustomBoardsArduino
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__)
#if NOT_TARGET(__AVR_ATmega644P__, __AVR_ATmega644__)
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega644' or 'ATmega644P' in 'Tools > Processor.'"
#endif

9
Marlin/src/pins/sanguino/pins_OMCA_A.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -48,14 +48,12 @@
* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL
* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM
* +--------+
*
*/
/**
* Rev B 26 DEC 2016
*
* added pointer to a current Arduino IDE extension
*
*/
/**
@@ -73,11 +71,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#ifndef __AVR_ATmega644__
#error "Oops! Select 'Sanguino' in 'Tools > Board' and ATmega644 in 'Tools > Processor.'"
#if NOT_TARGET(__AVR_ATmega644__)
#error "Oops! Select 'Sanguino' in 'Tools > Board' and 'ATmega644' in 'Tools > Processor.'"
#endif
#define BOARD_INFO_NAME "Alpha OMCA"

35
Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -31,7 +31,6 @@
* 1) added pointer to a current Arduino IDE extension
* 2) added support for M3, M4 & M5 spindle control commands
* 3) added case light pin definition
*
*/
/**
@@ -49,12 +48,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644P' or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644P
#include "env_validate.h"
#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "Sanguinololu <1.2"
@@ -108,10 +105,10 @@
#else
#define HEATER_BED_PIN 14 // (bed)
#define X_ENABLE_PIN -1
#define Y_ENABLE_PIN -1
#define Z_ENABLE_PIN -1
#define E0_ENABLE_PIN -1
#define X_ENABLE_PIN 4
#define Y_ENABLE_PIN 4
#define Z_ENABLE_PIN 4
#define E0_ENABLE_PIN 4
#endif
@@ -138,7 +135,7 @@
#define LCD_BACKLIGHT_PIN 17 // LCD backlight LED
#endif
#if NONE(SPINDLE_FEATURE, LASER_FEATURE) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(ULTRA_LCD, NEWPANEL)// try to use IO Header
#if NONE(SPINDLE_FEATURE, LASER_FEATURE) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(IS_ULTRA_LCD, IS_NEWPANEL) // try to use IO Header
#define CASE_LIGHT_PIN 4 // Hardware PWM - see if IO Header is available
#endif
@@ -154,21 +151,19 @@
//
// LCD / Controller
//
#if HAS_SPI_LCD
#if HAS_WIRED_LCD
#define SD_DETECT_PIN -1
#if HAS_GRAPHICAL_LCD
#if HAS_MARLINUI_U8GLIB
#if ENABLED(LCD_FOR_MELZI)
#define LCD_PINS_RS 17
#define LCD_PINS_ENABLE 16
#define LCD_PINS_D4 11
#define BOARD_ST7920_DELAY_1 DELAY_NS(0)
#define BOARD_ST7920_DELAY_2 DELAY_NS(188)
#define BOARD_ST7920_DELAY_3 DELAY_NS(0)
#define KILL_PIN 10
#define BEEPER_PIN 27
#elif ENABLED(U8GLIB_ST7920) // SPI GLCD 12864 ST7920 ( like [www.digole.com] ) For Melzi V2.0
@@ -266,18 +261,18 @@
#endif
#if ENABLED(NEWPANEL) && !defined(BTN_EN1)
#if IS_NEWPANEL && !defined(BTN_EN1)
#define BTN_EN1 11
#define BTN_EN2 10
#endif
#endif // HAS_SPI_LCD
#endif // HAS_WIRED_LCD
//
// M3/M4/M5 - Spindle/Laser Control
//
#if HAS_CUTTER
#if !MB(AZTEEG_X1) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(ULTRA_LCD, NEWPANEL)// try to use IO Header
#if !MB(AZTEEG_X1) && ENABLED(SANGUINOLOLU_V_1_2) && !BOTH(IS_ULTRA_LCD, IS_NEWPANEL) // try to use IO Header
#define SPINDLE_LASER_ENA_PIN 10 // Pullup or pulldown!
#define SPINDLE_LASER_PWM_PIN 4 // Hardware PWM

2
Marlin/src/pins/sanguino/pins_SANGUINOLOLU_12.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

8
Marlin/src/pins/sanguino/pins_SETHI.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
@@ -47,12 +47,10 @@
* Just use the above JSON URL instead of Sparkfun's JSON.
*
* Once installed select the Sanguino board and then select the CPU.
*
*/
#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
#error "Oops! Select 'Sanguino' in 'Tools > Boards' and 'ATmega644', 'ATmega644P', or 'ATmega1284P' in 'Tools > Processor.'"
#endif
#define ALLOW_MEGA644
#include "env_validate.h"
#define BOARD_INFO_NAME "Sethi 3D_1"

2
Marlin/src/pins/sanguino/pins_STB_11.h Executable file → Normal file
View File

@@ -16,7 +16,7 @@
* 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/>.
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

View File

@@ -0,0 +1,232 @@
/**
* 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 <https://www.gnu.org/licenses/>.
*
*/
#pragma once
#define ALLOW_MEGA644P
#include "env_validate.h"
#define BOARD_INFO_NAME "Zonestar ZMIB_V2"
#define BOARD_WEBSITE_URL "www.aliexpress.com/item/32957490744.html"
#define IS_ZMIB_V2
/**
* ZMIB pin assignments
*
* The ZMIB board needs a bootloader installed before Marlin can be uploaded.
* If you don't have a chip programmer you can use a spare Arduino plus a few
* electronic components to write the bootloader.
*
* See http://www.instructables.com/id/Burn-Arduino-Bootloader-with-Arduino-MEGA/
*/
/**
* PIN: 0 Port: B0 HEATER_0_PIN
* PIN: 1 Port: B1 HEATER_BED_PIN
* PIN: 2 Port: B2 EXP1_4(BTN_EN2)
* PIN: 3 Port: B3 V1: SD_DETECT_PIN
* PIN: 3 Port: B3 V2: EXP1_6
* PIN: 4 Port: B4 SDSS
* PIN: 4 Port: B4 V1: EXP1_6
* PIN: 5 Port: B5 AVR_MOSI_PIN
* . SD_MOSI_PIN
* PIN: 6 Port: B6 AVR_MISO_PIN
* . EXP1_9(SD_MISO_PIN)
* PIN: 7 Port: B7 AVR_SCK_PIN
* . EXP1_10(SD_SCK_PIN)
* PIN: 8 Port: D0 RXD
* PIN: 9 Port: D1 TXD
* PIN: 10 Port: D2 EXP1_8
* PIN: 11 Port: D3 EXP1_7
* PIN: 12 Port: D4 EXP1_5(BTN_EN1)
* PIN: 13 Port: D5 Z_MIN_PIN
* PIN: 14 Port: D6 E1_DIR_PIN
* PIN: 15 Port: D7 E1_STEP_PIN
* PIN: 16 Port: C0 Z_DIR_PIN
* PIN: 17 Port: C1 Z_STEP_PIN
* PIN: 18 Port: C2 Y_MIN_PIN
* PIN: 19 Port: C3 Y_DIR_PIN
* PIN: 20 Port: C4 Y_STEP_PIN
* PIN: 21 Port: C5 X_MIN_PIN
* PIN: 22 Port: C6 X_DIR_PIN
* PIN: 23 Port: C7 X_STEP_PIN
* PIN: 24 Port: A7 X_ENABLE_PIN
* Y_ENABLE_PIN
* Z_ENABLE_PIN
* E0_ENABLE_PIN
* E1_ENABLE_PIN
* PIN: 25 Port: A6 FIL_RUNOUT_PIN
* PIN: 26 Port: A5 E0_DIR_PIN
* PIN: 27 Port: A4 E0_STEP_PIN
* PIN: 28 Port: A3 FAN_PIN
* PIN: 29 Port: A2 EXP1_3(BTN_ENC)
* ADC_KEY_PIN
* PIN: 30 Port: A1 TEMP_0_PIN
* PIN: 31 Port: A0 TEMP_BED_PIN
*/
//
// Limit Switches
//
#define X_MIN_PIN 21
#define Y_MIN_PIN 18
#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT)
#define Z_MIN_PIN 25
#else
#define Z_MIN_PIN 13
#endif
//
// Steppers
//
#define X_STEP_PIN 23
#define X_DIR_PIN 22
#define X_ENABLE_PIN 24
#define Y_STEP_PIN 20
#define Y_DIR_PIN 19
#define Y_ENABLE_PIN 24
#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT)
#define Z_STEP_PIN 27
#define Z_DIR_PIN 26
#else
#define Z_STEP_PIN 17
#define Z_DIR_PIN 16
#endif
#define Z_ENABLE_PIN 24
#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT)
#define E0_STEP_PIN 15
#define E0_DIR_PIN 14
#else
#define E0_STEP_PIN 27
#define E0_DIR_PIN 26
#endif
#define E0_ENABLE_PIN 24
#define E1_STEP_PIN 15
#define E1_DIR_PIN 14
#define E1_ENABLE_PIN 24
//
// Temperature Sensors
//
#define TEMP_0_PIN 1 // Analog Input
#define TEMP_BED_PIN 0 // Analog Input
//
// Heaters / Fans
//
#define HEATER_0_PIN 0
#define HEATER_BED_PIN 1
#define FAN_PIN 28
#define FAN1_PIN -1
//
//filament run out sensor
//
#if EITHER(Z6S_ZFAULT, Z6BS_ZFAULT)
#define FIL_RUNOUT_PIN 13
#else
#define FIL_RUNOUT_PIN 25 // Z-MIN
#endif
//
// SD card
//
#if ENABLED(SDSUPPORT)
#define SDSS 4
#endif
#define SD_DETECT_PIN -1
/*===================================================
* ZMIB Version 1 - EXP1 Connector
* MOSI(D5) TX1(D11) ENA(D12) ENC(D29/A2) 5V
* SCK(D7) RX1(D10) SCS(D4) ENB(D2) GND
*===================================================
* ZMIB Version 2 - EXP1 Connector
* MOSI(D5) TX1(D11) ENA(D12) ENC(D29/A2) 5V
* SCK(D7) RX1(D10) SCS(D3) ENB(D2) GND
*===================================================
* LCD 128x64
*==================================================*/
#if ENABLED(ZONESTAR_12864LCD)
//
// LCD 128x64
//
#define LCDSCREEN_NAME "ZONESTAR_12864LCD"
#define FORCE_SOFT_SPI
//#define LCD_SDSS 11
#define LCD_PINS_RS 11 // ST7920_CS_PIN LCD_PIN_RS (PIN4 of LCD module)
#ifdef IS_ZMIB_V2
#define LCD_PINS_ENABLE 3 // ST7920_DAT_PIN LCD_PIN_R/W (PIN5 of LCD module)
#else
#define LCD_PINS_ENABLE 4 // ST7920_DAT_PIN LCD_PIN_R/W (PIN5 of LCD module)
#endif
#define LCD_PINS_D4 10 // ST7920_CLK_PIN LCD_PIN_ENABLE (PIN6 of LCD module)
#define BOARD_ST7920_DELAY_1 DELAY_2_NOP
#define BOARD_ST7920_DELAY_2 DELAY_2_NOP
#define BOARD_ST7920_DELAY_3 DELAY_2_NOP
#elif EITHER(ZONESTAR_12864OLED, ZONESTAR_12864OLED_SSD1306)
//
// OLED 128x64
//
#define LCDSCREEN_NAME "ZONESTAR 12864OLED"
#define FORCE_SOFT_SPI
#ifdef IS_ZMIB_V2
#define LCD_PINS_RS 3 // RESET
#else
#define LCD_PINS_RS 4 // RESET
#endif
#define LCD_PINS_DC 10 // DC
#define DOGLCD_CS 11 // CS
#if ENABLED(OLED_HW_IIC)
#error "Oops! can't choose HW IIC for ZMIB board!!"
#elif ENABLED(OLED_HW_SPI)
// HW SPI
#define DOGLCD_A0 LCD_PINS_DC // A0 = DC
#else
// SW SPI
#define DOGLCD_A0 LCD_PINS_DC // A0 = DC
#define DOGLCD_MOSI AVR_MOSI_PIN // SDA
#define DOGLCD_SCK AVR_SCK_PIN // SCK
#endif
#endif
//
// All the above are also RRDSC with rotary encoder
//
#if IS_RRD_SC
#define BTN_EN1 2
#define BTN_EN2 12
#define BTN_ENC 29
#define BEEPER_PIN -1
#define KILL_PIN -1
#endif