mirror of
https://github.com/MarlinFirmware/Configurations.git
synced 2026-01-30 04:40:43 -07:00
Addition of Monoprice Maker Ultimate 2
This is for posterity mostly. I have since ported these into Marlin bugfix-2.1.x.
This commit is contained in:
parent
bbbf73588d
commit
4562a10e0e
10 changed files with 6733 additions and 0 deletions
Binary file not shown.
163
config/examples/Monoprice/Maker Ultimate 2/boards.h
Normal file
163
config/examples/Monoprice/Maker Ultimate 2/boards.h
Normal file
|
|
@ -0,0 +1,163 @@
|
|||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 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/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef BOARDS_H
|
||||
#define BOARDS_H
|
||||
|
||||
#define BOARD_UNKNOWN -1
|
||||
|
||||
//
|
||||
// RAMPS 1.3 / 1.4 - ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#define BOARD_RAMPS_OLD 3 // MEGA/RAMPS up to 1.2
|
||||
|
||||
#define BOARD_RAMPS_13_EFB 33 // RAMPS 1.3 (Power outputs: Hotend, Fan, Bed)
|
||||
#define BOARD_RAMPS_13_EEB 34 // RAMPS 1.3 (Power outputs: Hotend0, Hotend1, Bed)
|
||||
#define BOARD_RAMPS_13_EFF 35 // RAMPS 1.3 (Power outputs: Hotend, Fan0, Fan1)
|
||||
#define BOARD_RAMPS_13_EEF 36 // RAMPS 1.3 (Power outputs: Hotend0, Hotend1, Fan)
|
||||
#define BOARD_RAMPS_13_SF 38 // RAMPS 1.3 (Power outputs: Spindle, Controller Fan)
|
||||
|
||||
#define BOARD_RAMPS_14_EFB 43 // RAMPS 1.4 (Power outputs: Hotend, Fan, Bed)
|
||||
#define BOARD_RAMPS_14_EEB 44 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Bed)
|
||||
#define BOARD_RAMPS_14_EFF 45 // RAMPS 1.4 (Power outputs: Hotend, Fan0, Fan1)
|
||||
#define BOARD_RAMPS_14_EEF 46 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Fan)
|
||||
#define BOARD_RAMPS_14_SF 48 // RAMPS 1.4 (Power outputs: Spindle, Controller Fan)
|
||||
|
||||
#define BOARD_RAMPS_PLUS_EFB 143 // RAMPS Plus 3DYMY (Power outputs: Hotend, Fan, Bed)
|
||||
#define BOARD_RAMPS_PLUS_EEB 144 // RAMPS Plus 3DYMY (Power outputs: Hotend0, Hotend1, Bed)
|
||||
#define BOARD_RAMPS_PLUS_EFF 145 // RAMPS Plus 3DYMY (Power outputs: Hotend, Fan0, Fan1)
|
||||
#define BOARD_RAMPS_PLUS_EEF 146 // RAMPS Plus 3DYMY (Power outputs: Hotend0, Hotend1, Fan)
|
||||
#define BOARD_RAMPS_PLUS_SF 148 // RAMPS Plus 3DYMY (Power outputs: Spindle, Controller Fan)
|
||||
|
||||
//
|
||||
// RAMPS Derivatives - ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#define BOARD_3DRAG 77 // 3Drag Controller
|
||||
#define BOARD_K8200 78 // Velleman K8200 Controller (derived from 3Drag Controller)
|
||||
#define BOARD_K8400 79 // Velleman K8400 Controller (derived from 3Drag Controller)
|
||||
#define BOARD_BAM_DICE 401 // 2PrintBeta BAM&DICE with STK drivers
|
||||
#define BOARD_BAM_DICE_DUE 402 // 2PrintBeta BAM&DICE Due with STK drivers
|
||||
#define BOARD_MKS_BASE 40 // MKS BASE v1.0
|
||||
#define BOARD_MKS_BASE_15 405 // MKS v1.5 with Allegro A4982 stepper drivers
|
||||
#define BOARD_MKS_BASE_HEROIC 41 // MKS BASE 1.0 with Heroic HR4982 stepper drivers
|
||||
#define BOARD_MKS_GEN_13 47 // MKS GEN v1.3 or 1.4
|
||||
#define BOARD_MKS_GEN_L 53 // MKS GEN L
|
||||
#define BOARD_MKS_GEN_L_V2 54 // MKS GEN L V2
|
||||
#define BOARD_ZRIB_V20 504 // zrib V2.0 control board (Chinese knock off RAMPS replica)
|
||||
#define BOARD_FELIX2 37 // Felix 2.0+ Electronics Board (RAMPS like)
|
||||
#define BOARD_RIGIDBOARD 42 // Invent-A-Part RigidBoard
|
||||
#define BOARD_RIGIDBOARD_V2 52 // Invent-A-Part RigidBoard V2
|
||||
#define BOARD_SAINSMART_2IN1 49 // Sainsmart 2-in-1 board
|
||||
#define BOARD_ULTIMAKER 7 // Ultimaker
|
||||
#define BOARD_ULTIMAKER_OLD 71 // Ultimaker (Older electronics. Pre 1.5.4. This is rare)
|
||||
#define BOARD_AZTEEG_X3 67 // Azteeg X3
|
||||
#define BOARD_AZTEEG_X3_PRO 68 // Azteeg X3 Pro
|
||||
#define BOARD_ULTIMAIN_2 72 // Ultimainboard 2.x (Uses TEMP_SENSOR 20)
|
||||
#define BOARD_RUMBA 80 // Rumba
|
||||
#define BOARD_BQ_ZUM_MEGA_3D 503 // bq ZUM Mega 3D
|
||||
#define BOARD_MAKEBOARD_MINI 431 // MakeBoard Mini v2.1.2 is a control board sold by MicroMake
|
||||
#define BOARD_TRIGORILLA_13 343 // TriGorilla Anycubic version 1.3 based on RAMPS EFB
|
||||
#define BOARD_TRIGORILLA_14 443 // TriGorilla Anycubic version 1.4 based on RAMPS EFB
|
||||
#define BOARD_RAMPS_ENDER_4 243 // Creality: Ender-4, CR-8
|
||||
|
||||
//
|
||||
// Other ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#define BOARD_CNCONTROLS_11 111 // Cartesio CN Controls V11
|
||||
#define BOARD_CNCONTROLS_12 112 // Cartesio CN Controls V12
|
||||
#define BOARD_CHEAPTRONIC 2 // Cheaptronic v1.0
|
||||
#define BOARD_CHEAPTRONIC_V2 21 // Cheaptronic v2.0
|
||||
#define BOARD_MIGHTYBOARD_REVE 200 // Makerbot Mightyboard Revision E
|
||||
#define BOARD_MEGATRONICS 70 // Megatronics
|
||||
#define BOARD_MEGATRONICS_2 701 // Megatronics v2.0
|
||||
#define BOARD_MEGATRONICS_3 703 // Megatronics v3.0
|
||||
#define BOARD_MEGATRONICS_31 704 // Megatronics v3.1
|
||||
#define BOARD_RAMBO 301 // Rambo
|
||||
#define BOARD_MINIRAMBO 302 // Mini-Rambo
|
||||
#define BOARD_MINIRAMBO_10A 303 // Mini-Rambo 1.0a
|
||||
#define BOARD_EINSY_RAMBO 304 // Einsy Rambo
|
||||
#define BOARD_EINSY_RETRO 305 // Einsy Retro
|
||||
#define BOARD_ELEFU_3 21 // Elefu Ra Board (v3)
|
||||
#define BOARD_LEAPFROG 999 // Leapfrog
|
||||
#define BOARD_MEGACONTROLLER 310 // Mega controller
|
||||
#define BOARD_SCOOVO_X9H 321 // abee Scoovo X9H
|
||||
#define BOARD_GT2560_REV_A 74 // Geeetech GT2560 Rev. A
|
||||
#define BOARD_GT2560_REV_A_PLUS 75 // Geeetech GT2560 Rev. A+ (with auto level probe)
|
||||
#define BOARD_WEEDO_62B 801 // WEEDO3D 62B
|
||||
|
||||
//
|
||||
// ATmega1281, ATmega2561
|
||||
//
|
||||
|
||||
#define BOARD_MINITRONICS 702 // Minitronics v1.0/1.1
|
||||
#define BOARD_SILVER_GATE 25 // Silvergate v1.0
|
||||
|
||||
//
|
||||
// Sanguinololu and Derivatives - ATmega644P, ATmega1284P
|
||||
//
|
||||
|
||||
#define BOARD_SANGUINOLOLU_11 6 // Sanguinololu < 1.2
|
||||
#define BOARD_SANGUINOLOLU_12 62 // Sanguinololu 1.2 and above
|
||||
#define BOARD_MELZI 63 // Melzi
|
||||
#define BOARD_MELZI_MAKR3D 66 // Melzi with ATmega1284 (MaKr3d version)
|
||||
#define BOARD_MELZI_CREALITY 89 // Melzi Creality3D board (for CR-10 etc)
|
||||
#define BOARD_MELZI_MALYAN 92 // Melzi Malyan M150 board
|
||||
#define BOARD_MELZI_TRONXY 505 // Tronxy X5S
|
||||
#define BOARD_STB_11 64 // STB V1.1
|
||||
#define BOARD_AZTEEG_X1 65 // Azteeg X1
|
||||
#define BOARD_ANET_10 69 // Anet 1.0 (Melzi clone)
|
||||
|
||||
//
|
||||
// Other ATmega644P, ATmega644, ATmega1284P
|
||||
//
|
||||
|
||||
#define BOARD_GEN3_MONOLITHIC 22 // Gen3 Monolithic Electronics
|
||||
#define BOARD_GEN3_PLUS 9 // Gen3+
|
||||
#define BOARD_GEN6 5 // Gen6
|
||||
#define BOARD_GEN6_DELUXE 51 // Gen6 deluxe
|
||||
#define BOARD_GEN7_CUSTOM 10 // Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics"
|
||||
#define BOARD_GEN7_12 11 // Gen7 v1.1, v1.2
|
||||
#define BOARD_GEN7_13 12 // Gen7 v1.3
|
||||
#define BOARD_GEN7_14 13 // Gen7 v1.4
|
||||
#define BOARD_OMCA_A 90 // Alpha OMCA board
|
||||
#define BOARD_OMCA 91 // Final OMCA board
|
||||
#define BOARD_SETHI 20 // Sethi 3D_1
|
||||
|
||||
//
|
||||
// Teensyduino - AT90USB1286, AT90USB1286P
|
||||
//
|
||||
|
||||
#define BOARD_TEENSYLU 8 // Teensylu
|
||||
#define BOARD_PRINTRBOARD 81 // Printrboard (AT90USB1286)
|
||||
#define BOARD_PRINTRBOARD_REVF 811 // Printrboard Revision F (AT90USB1286)
|
||||
#define BOARD_BRAINWAVE 82 // Brainwave (AT90USB646)
|
||||
#define BOARD_BRAINWAVE_PRO 85 // Brainwave Pro (AT90USB1286)
|
||||
#define BOARD_SAV_MKI 83 // SAV Mk-I (AT90USB1286)
|
||||
#define BOARD_TEENSY2 84 // Teensy++2.0 (AT90USB1286) - CLI compile: HARDWARE_MOTHERBOARD=84 make
|
||||
#define BOARD_5DPRINT 88 // 5DPrint D8 Driver Board
|
||||
|
||||
#define MB(board) (defined(BOARD_##board) && MOTHERBOARD==BOARD_##board)
|
||||
|
||||
#endif // __BOARDS_H
|
||||
886
config/examples/Monoprice/Maker Ultimate 2/pins.h
Normal file
886
config/examples/Monoprice/Maker Ultimate 2/pins.h
Normal file
|
|
@ -0,0 +1,886 @@
|
|||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 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 pins definitions
|
||||
*
|
||||
* Pins numbering schemes:
|
||||
*
|
||||
* - Digital I/O pin number if used by READ/WRITE macros. (e.g., X_STEP_DIR)
|
||||
* The FastIO headers map digital pins to their ports and functions.
|
||||
*
|
||||
* - Analog Input number if used by analogRead or DAC. (e.g., TEMP_n_PIN)
|
||||
* These numbers are the same in any pin mapping.
|
||||
*/
|
||||
|
||||
#ifndef __PINS_H__
|
||||
#define __PINS_H__
|
||||
|
||||
#if MB(RAMPS_13_EFB) || MB(RAMPS_14_EFB) || MB(RAMPS_PLUS_EFB)
|
||||
#define IS_RAMPS_EFB
|
||||
#elif MB(RAMPS_13_EEB) || MB(RAMPS_14_EEB) || MB(RAMPS_PLUS_EEB)
|
||||
#define IS_RAMPS_EEB
|
||||
#elif MB(RAMPS_13_EFF) || MB(RAMPS_14_EFF) || MB(RAMPS_PLUS_EFF)
|
||||
#define IS_RAMPS_EFF
|
||||
#elif MB(RAMPS_13_EEF) || MB(RAMPS_14_EEF) || MB(RAMPS_PLUS_EEF)
|
||||
#define IS_RAMPS_EEF
|
||||
#elif MB(RAMPS_13_SF) || MB(RAMPS_14_SF) || MB(RAMPS_PLUS_SF)
|
||||
#define IS_RAMPS_SF
|
||||
#endif
|
||||
|
||||
//
|
||||
// RAMPS 1.3 / 1.4 - ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#if MB(RAMPS_OLD)
|
||||
#include "pins_RAMPS_OLD.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_13_EFB)
|
||||
#include "pins_RAMPS_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_13_EEB)
|
||||
#include "pins_RAMPS_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_13_EFF)
|
||||
#include "pins_RAMPS_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_13_EEF)
|
||||
#include "pins_RAMPS_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_13_SF)
|
||||
#include "pins_RAMPS_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_14_EFB)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_14_EEB)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_14_EFF)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_14_EEF)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_14_SF)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_PLUS_EFB)
|
||||
#include "pins_RAMPS_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_PLUS_EEB)
|
||||
#include "pins_RAMPS_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_PLUS_EFF)
|
||||
#include "pins_RAMPS_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_PLUS_EEF)
|
||||
#include "pins_RAMPS_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RAMPS_PLUS_SF)
|
||||
#include "pins_RAMPS_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
|
||||
//
|
||||
// RAMPS Derivatives - ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#elif MB(3DRAG)
|
||||
#include "pins_3DRAG.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(K8200)
|
||||
#include "pins_K8200.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560 (3DRAG)
|
||||
#elif MB(K8400)
|
||||
#include "pins_K8400.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560 (3DRAG)
|
||||
#elif MB(BAM_DICE)
|
||||
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(BAM_DICE_DUE)
|
||||
#include "pins_BAM_DICE_DUE.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MKS_BASE)
|
||||
#include "pins_MKS_BASE.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MKS_BASE_15)
|
||||
#include "pins_MKS_BASE_15.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MKS_BASE_HEROIC)
|
||||
#include "pins_MKS_BASE_HEROIC.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MKS_GEN_13)
|
||||
#include "pins_MKS_GEN_13.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MKS_GEN_L)
|
||||
#include "pins_MKS_GEN_L.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(ZRIB_V20)
|
||||
#include "pins_ZRIB_V20.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560 (MKS_GEN_13)
|
||||
#elif MB(FELIX2)
|
||||
#include "pins_FELIX2.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RIGIDBOARD)
|
||||
#include "pins_RIGIDBOARD.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(RIGIDBOARD_V2)
|
||||
#include "pins_RIGIDBOARD_V2.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(SAINSMART_2IN1)
|
||||
#include "pins_SAINSMART_2IN1.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(ULTIMAKER)
|
||||
#include "pins_ULTIMAKER.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(ULTIMAKER_OLD)
|
||||
#include "pins_ULTIMAKER_OLD.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(AZTEEG_X3)
|
||||
#include "pins_AZTEEG_X3.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(AZTEEG_X3_PRO)
|
||||
#include "pins_AZTEEG_X3_PRO.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(ULTIMAIN_2)
|
||||
#include "pins_ULTIMAIN_2.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(RUMBA)
|
||||
#include "pins_RUMBA.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(BQ_ZUM_MEGA_3D)
|
||||
#include "pins_BQ_ZUM_MEGA_3D.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(MAKEBOARD_MINI)
|
||||
#include "pins_MAKEBOARD_MINI.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(TRIGORILLA_13)
|
||||
#include "pins_TRIGORILLA_13.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(TRIGORILLA_14)
|
||||
#include "pins_TRIGORILLA_14.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(RAMPS_ENDER_4)
|
||||
#include "pins_RAMPS_ENDER_4.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(MKS_GEN_L_V2)
|
||||
#include "pins_MKS_GEN_L_V2.h" // ATmega2560 env:megaatmega2560
|
||||
|
||||
//
|
||||
// Other ATmega1280, ATmega2560
|
||||
//
|
||||
|
||||
#elif MB(CNCONTROLS_11)
|
||||
#include "pins_CNCONTROLS_11.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(CNCONTROLS_12)
|
||||
#include "pins_CNCONTROLS_12.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MIGHTYBOARD_REVE)
|
||||
#include "pins_MIGHTYBOARD_REVE.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(CHEAPTRONIC)
|
||||
#include "pins_CHEAPTRONIC.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(CHEAPTRONIC_V2)
|
||||
#include "pins_CHEAPTRONICv2.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(MEGATRONICS)
|
||||
#include "pins_MEGATRONICS.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(MEGATRONICS_2)
|
||||
#include "pins_MEGATRONICS_2.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(MEGATRONICS_3) || MB(MEGATRONICS_31)
|
||||
#include "pins_MEGATRONICS_3.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(RAMBO)
|
||||
#include "pins_RAMBO.h" // ATmega2560 env:rambo
|
||||
#elif MB(MINIRAMBO) || MB(MINIRAMBO_10A)
|
||||
#include "pins_MINIRAMBO.h" // ATmega2560 env:rambo
|
||||
#elif MB(EINSY_RAMBO)
|
||||
#include "pins_EINSY_RAMBO.h" // ATmega2560 env:rambo
|
||||
#elif MB(EINSY_RETRO)
|
||||
#include "pins_EINSY_RETRO.h" // ATmega2560 env:rambo
|
||||
#elif MB(ELEFU_3)
|
||||
#include "pins_ELEFU_3.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(LEAPFROG)
|
||||
#include "pins_LEAPFROG.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(MEGACONTROLLER)
|
||||
#include "pins_MEGACONTROLLER.h" // ATmega2560 env:megaatmega2560
|
||||
#elif MB(SCOOVO_X9H)
|
||||
#include "pins_SCOOVO_X9H.h" // ATmega2560 env:rambo
|
||||
#elif MB(GT2560_REV_A)
|
||||
#include "pins_GT2560_REV_A.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(GT2560_REV_A_PLUS)
|
||||
#include "pins_GT2560_REV_A_PLUS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
|
||||
#elif MB(WEEDO_62B)
|
||||
#include "pins_WEEDO_62B.h"
|
||||
|
||||
//
|
||||
// ATmega1281, ATmega2561
|
||||
//
|
||||
|
||||
#elif MB(MINITRONICS)
|
||||
#include "pins_MINITRONICS.h" // ATmega1281 env:megaatmega1280
|
||||
#elif MB(SILVER_GATE)
|
||||
#include "pins_SILVER_GATE.h" // ATmega2561 env:megaatmega2560
|
||||
|
||||
//
|
||||
// Sanguinololu and Derivatives - ATmega644P, ATmega1284P
|
||||
//
|
||||
|
||||
#elif MB(SANGUINOLOLU_11)
|
||||
#include "pins_SANGUINOLOLU_11.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(SANGUINOLOLU_12)
|
||||
#include "pins_SANGUINOLOLU_12.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(MELZI)
|
||||
#include "pins_MELZI.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(MELZI_MAKR3D)
|
||||
#include "pins_MELZI_MAKR3D.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(MELZI_CREALITY)
|
||||
#include "pins_MELZI_CREALITY.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(MELZI_MALYAN)
|
||||
#include "pins_MELZI_MALYAN.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(MELZI_TRONXY)
|
||||
#include "pins_MELZI_TRONXY.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(STB_11)
|
||||
#include "pins_STB_11.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(AZTEEG_X1)
|
||||
#include "pins_AZTEEG_X1.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
|
||||
//
|
||||
// Other ATmega644P, ATmega644, ATmega1284P
|
||||
//
|
||||
|
||||
#elif MB(GEN3_MONOLITHIC)
|
||||
#include "pins_GEN3_MONOLITHIC.h" // ATmega644P env:sanguino_atmega644p
|
||||
#elif MB(GEN3_PLUS)
|
||||
#include "pins_GEN3_PLUS.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN6)
|
||||
#include "pins_GEN6.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN6_DELUXE)
|
||||
#include "pins_GEN6_DELUXE.h" // ATmega644P, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN7_CUSTOM)
|
||||
#include "pins_GEN7_CUSTOM.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN7_12)
|
||||
#include "pins_GEN7_12.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN7_13)
|
||||
#include "pins_GEN7_13.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(GEN7_14)
|
||||
#include "pins_GEN7_14.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
#elif MB(OMCA_A)
|
||||
#include "pins_OMCA_A.h" // ATmega644 env:sanguino_atmega644p
|
||||
#elif MB(OMCA)
|
||||
#include "pins_OMCA.h" // ATmega644P, ATmega644 env:sanguino_atmega644p
|
||||
#elif MB(ANET_10)
|
||||
#include "pins_ANET_10.h" // ATmega1284P env:sanguino_atmega1284p
|
||||
#elif MB(SETHI)
|
||||
#include "pins_SETHI.h" // ATmega644P, ATmega644, ATmega1284P env:sanguino_atmega644p env:sanguino_atmega1284p
|
||||
|
||||
//
|
||||
// Teensyduino - AT90USB1286, AT90USB1286P
|
||||
//
|
||||
|
||||
#elif MB(TEENSYLU)
|
||||
#include "pins_TEENSYLU.h" // AT90USB1286, AT90USB1286P env:at90USB1286_CDC
|
||||
#elif MB(PRINTRBOARD)
|
||||
#include "pins_PRINTRBOARD.h" // AT90USB1286 env:at90USB1286_DFU
|
||||
#elif MB(PRINTRBOARD_REVF)
|
||||
#include "pins_PRINTRBOARD_REVF.h" // AT90USB1286 env:at90USB1286_DFU
|
||||
#elif MB(BRAINWAVE)
|
||||
#include "pins_BRAINWAVE.h" // AT90USB646 env:at90USB1286_CDC
|
||||
#elif MB(BRAINWAVE_PRO)
|
||||
#include "pins_BRAINWAVE_PRO.h" // AT90USB1286 env:at90USB1286_CDC
|
||||
#elif MB(SAV_MKI)
|
||||
#include "pins_SAV_MKI.h" // AT90USB1286 env:at90USB1286_CDC
|
||||
#elif MB(TEENSY2)
|
||||
#include "pins_TEENSY2.h" // AT90USB1286 env:teensy20
|
||||
#elif MB(5DPRINT)
|
||||
#include "pins_5DPRINT.h" // AT90USB1286 ?env:at90USB1286_DFU
|
||||
|
||||
#else
|
||||
#error "Unknown MOTHERBOARD value set in Configuration.h"
|
||||
#endif
|
||||
|
||||
// Define certain undefined pins
|
||||
#ifndef X_MS1_PIN
|
||||
#define X_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef X_MS2_PIN
|
||||
#define X_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef Y_MS1_PIN
|
||||
#define Y_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef Y_MS2_PIN
|
||||
#define Y_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef Z_MS1_PIN
|
||||
#define Z_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef Z_MS2_PIN
|
||||
#define Z_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef Z_MS3_PIN
|
||||
#define Z_MS3_PIN -1
|
||||
#endif
|
||||
#ifndef E0_MS1_PIN
|
||||
#define E0_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef E0_MS2_PIN
|
||||
#define E0_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef E1_MS1_PIN
|
||||
#define E1_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef E1_MS2_PIN
|
||||
#define E1_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef E2_MS1_PIN
|
||||
#define E2_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef E2_MS2_PIN
|
||||
#define E2_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef E3_MS1_PIN
|
||||
#define E3_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef E3_MS2_PIN
|
||||
#define E3_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef E3_MS3_PIN
|
||||
#define E3_MS3_PIN -1
|
||||
#endif
|
||||
#ifndef E4_MS1_PIN
|
||||
#define E4_MS1_PIN -1
|
||||
#endif
|
||||
#ifndef E4_MS2_PIN
|
||||
#define E4_MS2_PIN -1
|
||||
#endif
|
||||
#ifndef E4_MS3_PIN
|
||||
#define E4_MS3_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef E0_STEP_PIN
|
||||
#define E0_STEP_PIN -1
|
||||
#endif
|
||||
#ifndef E0_DIR_PIN
|
||||
#define E0_DIR_PIN -1
|
||||
#endif
|
||||
#ifndef E0_ENABLE_PIN
|
||||
#define E0_ENABLE_PIN -1
|
||||
#endif
|
||||
#ifndef E1_STEP_PIN
|
||||
#define E1_STEP_PIN -1
|
||||
#endif
|
||||
#ifndef E1_DIR_PIN
|
||||
#define E1_DIR_PIN -1
|
||||
#endif
|
||||
#ifndef E1_ENABLE_PIN
|
||||
#define E1_ENABLE_PIN -1
|
||||
#endif
|
||||
#ifndef E2_STEP_PIN
|
||||
#define E2_STEP_PIN -1
|
||||
#endif
|
||||
#ifndef E2_DIR_PIN
|
||||
#define E2_DIR_PIN -1
|
||||
#endif
|
||||
#ifndef E2_ENABLE_PIN
|
||||
#define E2_ENABLE_PIN -1
|
||||
#endif
|
||||
#ifndef E3_STEP_PIN
|
||||
#define E3_STEP_PIN -1
|
||||
#endif
|
||||
#ifndef E3_DIR_PIN
|
||||
#define E3_DIR_PIN -1
|
||||
#endif
|
||||
#ifndef E3_ENABLE_PIN
|
||||
#define E3_ENABLE_PIN -1
|
||||
#endif
|
||||
#ifndef E4_STEP_PIN
|
||||
#define E4_STEP_PIN -1
|
||||
#endif
|
||||
#ifndef E4_DIR_PIN
|
||||
#define E4_DIR_PIN -1
|
||||
#endif
|
||||
#ifndef E4_ENABLE_PIN
|
||||
#define E4_ENABLE_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef X_CS_PIN
|
||||
#define X_CS_PIN -1
|
||||
#endif
|
||||
#ifndef Y_CS_PIN
|
||||
#define Y_CS_PIN -1
|
||||
#endif
|
||||
#ifndef Z_CS_PIN
|
||||
#define Z_CS_PIN -1
|
||||
#endif
|
||||
#ifndef E0_CS_PIN
|
||||
#define E0_CS_PIN -1
|
||||
#endif
|
||||
#ifndef E1_CS_PIN
|
||||
#define E1_CS_PIN -1
|
||||
#endif
|
||||
#ifndef E2_CS_PIN
|
||||
#define E2_CS_PIN -1
|
||||
#endif
|
||||
#ifndef E3_CS_PIN
|
||||
#define E3_CS_PIN -1
|
||||
#endif
|
||||
#ifndef E4_CS_PIN
|
||||
#define E4_CS_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef FAN_PIN
|
||||
#define FAN_PIN -1
|
||||
#endif
|
||||
#ifndef FAN1_PIN
|
||||
#define FAN1_PIN -1
|
||||
#endif
|
||||
#ifndef FAN2_PIN
|
||||
#define FAN2_PIN -1
|
||||
#endif
|
||||
#ifndef CONTROLLER_FAN_PIN
|
||||
#define CONTROLLER_FAN_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef FANMUX0_PIN
|
||||
#define FANMUX0_PIN -1
|
||||
#endif
|
||||
#ifndef FANMUX1_PIN
|
||||
#define FANMUX1_PIN -1
|
||||
#endif
|
||||
#ifndef FANMUX2_PIN
|
||||
#define FANMUX2_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef HEATER_0_PIN
|
||||
#define HEATER_0_PIN -1
|
||||
#endif
|
||||
#ifndef HEATER_1_PIN
|
||||
#define HEATER_1_PIN -1
|
||||
#endif
|
||||
#ifndef HEATER_2_PIN
|
||||
#define HEATER_2_PIN -1
|
||||
#endif
|
||||
#ifndef HEATER_3_PIN
|
||||
#define HEATER_3_PIN -1
|
||||
#endif
|
||||
#ifndef HEATER_4_PIN
|
||||
#define HEATER_4_PIN -1
|
||||
#endif
|
||||
#ifndef HEATER_BED_PIN
|
||||
#define HEATER_BED_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef TEMP_0_PIN
|
||||
#define TEMP_0_PIN -1
|
||||
#endif
|
||||
#ifndef TEMP_1_PIN
|
||||
#define TEMP_1_PIN -1
|
||||
#endif
|
||||
#ifndef TEMP_2_PIN
|
||||
#define TEMP_2_PIN -1
|
||||
#endif
|
||||
#ifndef TEMP_3_PIN
|
||||
#define TEMP_3_PIN -1
|
||||
#endif
|
||||
#ifndef TEMP_4_PIN
|
||||
#define TEMP_4_PIN -1
|
||||
#endif
|
||||
#ifndef TEMP_BED_PIN
|
||||
#define TEMP_BED_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef SD_DETECT_PIN
|
||||
#define SD_DETECT_PIN -1
|
||||
#endif
|
||||
#ifndef SDPOWER
|
||||
#define SDPOWER -1
|
||||
#endif
|
||||
#ifndef SDSS
|
||||
#define SDSS -1
|
||||
#endif
|
||||
#ifndef LED_PIN
|
||||
#define LED_PIN -1
|
||||
#endif
|
||||
#ifndef PS_ON_PIN
|
||||
#define PS_ON_PIN -1
|
||||
#endif
|
||||
#ifndef KILL_PIN
|
||||
#define KILL_PIN -1
|
||||
#endif
|
||||
#ifndef SUICIDE_PIN
|
||||
#define SUICIDE_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef MAX_EXTRUDERS
|
||||
#define MAX_EXTRUDERS 5
|
||||
#endif
|
||||
|
||||
//
|
||||
// Assign auto fan pins if needed
|
||||
//
|
||||
#ifndef E0_AUTO_FAN_PIN
|
||||
#ifdef ORIG_E0_AUTO_FAN_PIN
|
||||
#define E0_AUTO_FAN_PIN ORIG_E0_AUTO_FAN_PIN
|
||||
#else
|
||||
#define E0_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
#ifndef E1_AUTO_FAN_PIN
|
||||
#ifdef ORIG_E1_AUTO_FAN_PIN
|
||||
#define E1_AUTO_FAN_PIN ORIG_E1_AUTO_FAN_PIN
|
||||
#else
|
||||
#define E1_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
#ifndef E2_AUTO_FAN_PIN
|
||||
#ifdef ORIG_E2_AUTO_FAN_PIN
|
||||
#define E2_AUTO_FAN_PIN ORIG_E2_AUTO_FAN_PIN
|
||||
#else
|
||||
#define E2_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
#ifndef E3_AUTO_FAN_PIN
|
||||
#ifdef ORIG_E3_AUTO_FAN_PIN
|
||||
#define E3_AUTO_FAN_PIN ORIG_E3_AUTO_FAN_PIN
|
||||
#else
|
||||
#define E3_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
#ifndef E4_AUTO_FAN_PIN
|
||||
#ifdef ORIG_E4_AUTO_FAN_PIN
|
||||
#define E4_AUTO_FAN_PIN ORIG_E4_AUTO_FAN_PIN
|
||||
#else
|
||||
#define E4_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
#ifndef CHAMBER_AUTO_FAN_PIN
|
||||
#ifdef ORIG_CHAMBER_AUTO_FAN_PIN
|
||||
#define CHAMBER_AUTO_FAN_PIN ORIG_CHAMBER_AUTO_FAN_PIN
|
||||
#else
|
||||
#define CHAMBER_AUTO_FAN_PIN -1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those!
|
||||
#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, E0_MS1_PIN, E0_MS2_PIN, E0_CS_PIN,
|
||||
#define _E1_PINS
|
||||
#define _E2_PINS
|
||||
#define _E3_PINS
|
||||
#define _E4_PINS
|
||||
|
||||
#if ENABLED(SWITCHING_EXTRUDER)
|
||||
// Tools 0 and 1 use E0
|
||||
#if EXTRUDERS > 2 // Tools 2 and 3 use E1
|
||||
#undef _E1_PINS
|
||||
#define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, E1_MS1_PIN, E1_MS2_PIN, E1_CS_PIN,
|
||||
#if EXTRUDERS > 4 // Tools 4 and 5 use E2
|
||||
#undef _E2_PINS
|
||||
#define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, E2_MS1_PIN, E2_MS2_PIN, E2_CS_PIN,
|
||||
#endif
|
||||
#endif
|
||||
#elif EXTRUDERS > 1
|
||||
#undef _E1_PINS
|
||||
#define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, E1_MS1_PIN, E1_MS2_PIN, E1_CS_PIN,
|
||||
#if EXTRUDERS > 2
|
||||
#undef _E2_PINS
|
||||
#define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, E2_MS1_PIN, E2_MS2_PIN, E2_CS_PIN,
|
||||
#if EXTRUDERS > 3
|
||||
#undef _E3_PINS
|
||||
#define _E3_PINS E3_STEP_PIN, E3_DIR_PIN, E3_ENABLE_PIN, E3_MS1_PIN, E3_MS2_PIN, E3_MS3_PIN, E3_CS_PIN,
|
||||
#if EXTRUDERS > 4
|
||||
#undef _E4_PINS
|
||||
#define _E4_PINS E4_STEP_PIN, E4_DIR_PIN, E4_ENABLE_PIN, E4_MS1_PIN, E4_MS2_PIN, E4_MS3_PIN, E4_CS_PIN,
|
||||
#endif // EXTRUDERS > 4
|
||||
#endif // EXTRUDERS > 3
|
||||
#endif // EXTRUDERS > 2
|
||||
#endif // EXTRUDERS > 1
|
||||
|
||||
// Marlin needs to account for pins that equal -1
|
||||
#define marlinAnalogInputToDigitalPin(p) ((p) == -1 ? -1 : analogInputToDigitalPin(p))
|
||||
|
||||
#define _H0_PINS HEATER_0_PIN, E0_AUTO_FAN_PIN, marlinAnalogInputToDigitalPin(TEMP_0_PIN),
|
||||
#define _H1_PINS
|
||||
#define _H2_PINS
|
||||
#define _H3_PINS
|
||||
#define _H4_PINS
|
||||
|
||||
#if HOTENDS > 1
|
||||
#undef _H1_PINS
|
||||
#define _H1_PINS HEATER_1_PIN, E1_AUTO_FAN_PIN, marlinAnalogInputToDigitalPin(TEMP_1_PIN),
|
||||
#if HOTENDS > 2
|
||||
#undef _H2_PINS
|
||||
#define _H2_PINS HEATER_2_PIN, E2_AUTO_FAN_PIN, marlinAnalogInputToDigitalPin(TEMP_2_PIN),
|
||||
#if HOTENDS > 3
|
||||
#undef _H3_PINS
|
||||
#define _H3_PINS HEATER_3_PIN, E3_AUTO_FAN_PIN, marlinAnalogInputToDigitalPin(TEMP_3_PIN),
|
||||
#if HOTENDS > 4
|
||||
#undef _H4_PINS
|
||||
#define _H4_PINS HEATER_4_PIN, marlinAnalogInputToDigitalPin(TEMP_4_PIN),
|
||||
#endif // HOTENDS > 4
|
||||
#endif // HOTENDS > 3
|
||||
#endif // HOTENDS > 2
|
||||
#elif ENABLED(MIXING_EXTRUDER)
|
||||
#undef _E1_PINS
|
||||
#define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, E1_MS1_PIN, E1_MS2_PIN, E1_CS_PIN,
|
||||
#if MIXING_STEPPERS > 2
|
||||
#undef _E2_PINS
|
||||
#define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, E2_MS1_PIN, E2_MS2_PIN, E2_CS_PIN,
|
||||
#if MIXING_STEPPERS > 3
|
||||
#undef _E3_PINS
|
||||
#define _E3_PINS E3_STEP_PIN, E3_DIR_PIN, E3_ENABLE_PIN, E3_MS1_PIN, E3_MS2_PIN, E3_CS_PIN,
|
||||
#if MIXING_STEPPERS > 4
|
||||
#undef _E4_PINS
|
||||
#define _E4_PINS E4_STEP_PIN, E4_DIR_PIN, E4_ENABLE_PIN, E4_MS1_PIN, E4_MS2_PIN, E4_CS_PIN,
|
||||
#endif // MIXING_STEPPERS > 4
|
||||
#endif // MIXING_STEPPERS > 3
|
||||
#endif // MIXING_STEPPERS > 2
|
||||
#endif // MIXING_STEPPERS > 1
|
||||
|
||||
#define BED_PINS HEATER_BED_PIN, marlinAnalogInputToDigitalPin(TEMP_BED_PIN),
|
||||
|
||||
//
|
||||
// Assign endstop pins for boards with only 3 connectors
|
||||
//
|
||||
#ifdef X_STOP_PIN
|
||||
#if X_HOME_DIR < 0
|
||||
#define X_MIN_PIN X_STOP_PIN
|
||||
#define X_MAX_PIN -1
|
||||
#else
|
||||
#define X_MIN_PIN -1
|
||||
#define X_MAX_PIN X_STOP_PIN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef Y_STOP_PIN
|
||||
#if Y_HOME_DIR < 0
|
||||
#define Y_MIN_PIN Y_STOP_PIN
|
||||
#define Y_MAX_PIN -1
|
||||
#else
|
||||
#define Y_MIN_PIN -1
|
||||
#define Y_MAX_PIN Y_STOP_PIN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef Z_STOP_PIN
|
||||
#if Z_HOME_DIR < 0
|
||||
#define Z_MIN_PIN Z_STOP_PIN
|
||||
#define Z_MAX_PIN -1
|
||||
#else
|
||||
#define Z_MIN_PIN -1
|
||||
#define Z_MAX_PIN Z_STOP_PIN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// Disable unused endstop / probe pins
|
||||
//
|
||||
#if DISABLED(Z_MIN_PROBE_ENDSTOP)
|
||||
#undef Z_MIN_PROBE_PIN
|
||||
#define Z_MIN_PROBE_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_XMAX_PLUG)
|
||||
#undef X_MAX_PIN
|
||||
#define X_MAX_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_YMAX_PLUG)
|
||||
#undef Y_MAX_PIN
|
||||
#define Y_MAX_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_ZMAX_PLUG)
|
||||
#undef Z_MAX_PIN
|
||||
#define Z_MAX_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_XMIN_PLUG)
|
||||
#undef X_MIN_PIN
|
||||
#define X_MIN_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_YMIN_PLUG)
|
||||
#undef Y_MIN_PIN
|
||||
#define Y_MIN_PIN -1
|
||||
#endif
|
||||
|
||||
#if DISABLED(USE_ZMIN_PLUG)
|
||||
#undef Z_MIN_PIN
|
||||
#define Z_MIN_PIN -1
|
||||
#endif
|
||||
|
||||
#ifndef LCD_PINS_D4
|
||||
#define LCD_PINS_D4 -1
|
||||
#endif
|
||||
#ifndef LCD_PINS_D5
|
||||
#define LCD_PINS_D5 -1
|
||||
#endif
|
||||
#ifndef LCD_PINS_D6
|
||||
#define LCD_PINS_D6 -1
|
||||
#endif
|
||||
#ifndef LCD_PINS_D7
|
||||
#define LCD_PINS_D7 -1
|
||||
#endif
|
||||
|
||||
//
|
||||
// Dual X-carriage, Dual Y, Dual Z support
|
||||
//
|
||||
|
||||
#define _D_PINS
|
||||
#define _X2_PINS
|
||||
#define _Y2_PINS
|
||||
#define _Z2_PINS
|
||||
|
||||
#define __EPIN(p,q) E##p##_##q##_PIN
|
||||
#define _EPIN(p,q) __EPIN(p,q)
|
||||
|
||||
// The HANGPRINTER A, B, C, D axes
|
||||
#if ENABLED(HANGPRINTER)
|
||||
#define A_ENABLE_PIN X_ENABLE_PIN
|
||||
#define A_DIR_PIN X_DIR_PIN
|
||||
#define A_STEP_PIN X_STEP_PIN
|
||||
#define A_MS1_PIN X_MS1_PIN
|
||||
|
||||
#define B_ENABLE_PIN Y_ENABLE_PIN
|
||||
#define B_DIR_PIN Y_DIR_PIN
|
||||
#define B_STEP_PIN Y_STEP_PIN
|
||||
#define B_MS1_PIN Y_MS1_PIN
|
||||
|
||||
#define C_ENABLE_PIN Z_ENABLE_PIN
|
||||
#define C_DIR_PIN Z_DIR_PIN
|
||||
#define C_STEP_PIN Z_STEP_PIN
|
||||
#define C_MS1_PIN Z_MS1_PIN
|
||||
|
||||
#ifndef D_STEP_PIN
|
||||
#define D_STEP_PIN _EPIN(E_STEPPERS, STEP)
|
||||
#define D_DIR_PIN _EPIN(E_STEPPERS, DIR)
|
||||
#define D_ENABLE_PIN _EPIN(E_STEPPERS, ENABLE)
|
||||
#ifndef D_CS_PIN
|
||||
#define D_CS_PIN _EPIN(E_STEPPERS, CS)
|
||||
#endif
|
||||
#ifndef D_MS1_PIN
|
||||
#define D_MS1_PIN _EPIN(E_STEPPERS, MS1)
|
||||
#endif
|
||||
#if E_STEPPERS >= MAX_EXTRUDERS || !PIN_EXISTS(D_ENABLE)
|
||||
#error "No E stepper plug left for D Axis!"
|
||||
#endif
|
||||
#endif
|
||||
#undef _D_PINS
|
||||
#define ___D_PINS D_STEP_PIN, D_DIR_PIN, D_ENABLE_PIN,
|
||||
#ifdef D_CS_PIN
|
||||
#define __D_PINS ___D_PINS D_CS_PIN,
|
||||
#else
|
||||
#define __D_PINS ___D_PINS
|
||||
#endif
|
||||
#ifdef D_MS1_PIN
|
||||
#define _D_PINS __D_PINS D_MS1_PIN,
|
||||
#else
|
||||
#define _D_PINS __D_PINS
|
||||
#endif
|
||||
#define X2_E_INDEX INCREMENT(E_STEPPERS)
|
||||
#else
|
||||
#define X2_E_INDEX E_STEPPERS
|
||||
#endif
|
||||
|
||||
// The X2 axis, if any, should be the next open extruder port
|
||||
#if ENABLED(DUAL_X_CARRIAGE) || ENABLED(X_DUAL_STEPPER_DRIVERS)
|
||||
#ifndef X2_STEP_PIN
|
||||
#define X2_STEP_PIN _EPIN(X2_E_INDEX, STEP)
|
||||
#define X2_DIR_PIN _EPIN(X2_E_INDEX, DIR)
|
||||
#define X2_ENABLE_PIN _EPIN(X2_E_INDEX, ENABLE)
|
||||
#ifndef X2_CS_PIN
|
||||
#define X2_CS_PIN _EPIN(X2_E_INDEX, CS)
|
||||
#endif
|
||||
#if X2_E_INDEX >= MAX_EXTRUDERS || !PIN_EXISTS(X2_ENABLE)
|
||||
#error "No E stepper plug left for X2!"
|
||||
#endif
|
||||
#endif
|
||||
#undef _X2_PINS
|
||||
#define __X2_PINS X2_STEP_PIN, X2_DIR_PIN, X2_ENABLE_PIN,
|
||||
#ifdef X2_CS_PIN
|
||||
#define _X2_PINS __X2_PINS X2_CS_PIN,
|
||||
#else
|
||||
#define _X2_PINS __X2_PINS
|
||||
#endif
|
||||
#define Y2_E_INDEX INCREMENT(X2_E_INDEX)
|
||||
#else
|
||||
#define Y2_E_INDEX X2_E_INDEX
|
||||
#endif
|
||||
|
||||
// The Y2 axis, if any, should be the next open extruder port
|
||||
#if ENABLED(Y_DUAL_STEPPER_DRIVERS)
|
||||
#ifndef Y2_STEP_PIN
|
||||
#define Y2_STEP_PIN _EPIN(Y2_E_INDEX, STEP)
|
||||
#define Y2_DIR_PIN _EPIN(Y2_E_INDEX, DIR)
|
||||
#define Y2_ENABLE_PIN _EPIN(Y2_E_INDEX, ENABLE)
|
||||
#ifndef Y2_CS_PIN
|
||||
#define Y2_CS_PIN _EPIN(Y2_E_INDEX, CS)
|
||||
#endif
|
||||
#if Y2_E_INDEX >= MAX_EXTRUDERS || !PIN_EXISTS(Y2_ENABLE)
|
||||
#error "No E stepper plug left for Y2!"
|
||||
#endif
|
||||
#endif
|
||||
#undef _Y2_PINS
|
||||
#define __Y2_PINS Y2_STEP_PIN, Y2_DIR_PIN, Y2_ENABLE_PIN,
|
||||
#ifdef Y2_CS_PIN
|
||||
#define _Y2_PINS __Y2_PINS Y2_CS_PIN,
|
||||
#else
|
||||
#define _Y2_PINS __Y2_PINS
|
||||
#endif
|
||||
#define Z2_E_INDEX INCREMENT(Y2_E_INDEX)
|
||||
#else
|
||||
#define Z2_E_INDEX Y2_E_INDEX
|
||||
#endif
|
||||
|
||||
// The Z2 axis, if any, should be the next open extruder port
|
||||
#if ENABLED(Z_DUAL_STEPPER_DRIVERS)
|
||||
#ifndef Z2_STEP_PIN
|
||||
#define Z2_STEP_PIN _EPIN(Z2_E_INDEX, STEP)
|
||||
#define Z2_DIR_PIN _EPIN(Z2_E_INDEX, DIR)
|
||||
#define Z2_ENABLE_PIN _EPIN(Z2_E_INDEX, ENABLE)
|
||||
#ifndef Z2_CS_PIN
|
||||
#define Z2_CS_PIN _EPIN(Z2_E_INDEX, CS)
|
||||
#endif
|
||||
#if Z2_E_INDEX >= MAX_EXTRUDERS || !PIN_EXISTS(Z2_ENABLE)
|
||||
#error "No E stepper plug left for Z2!"
|
||||
#endif
|
||||
#endif
|
||||
#undef _Z2_PINS
|
||||
#define __Z2_PINS Z2_STEP_PIN, Z2_DIR_PIN, Z2_ENABLE_PIN,
|
||||
#ifdef Z2_CS_PIN
|
||||
#define _Z2_PINS __Z2_PINS Z2_CS_PIN,
|
||||
#else
|
||||
#define _Z2_PINS __Z2_PINS
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define SENSITIVE_PINS { 0, 1, \
|
||||
X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, X_MS1_PIN, X_MS2_PIN, X_CS_PIN, \
|
||||
Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Y_MS1_PIN, Y_MS2_PIN, Y_CS_PIN, \
|
||||
Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, Z_MS1_PIN, Z_MS2_PIN, Z_MS3_PIN, Z_CS_PIN, Z_MIN_PROBE_PIN, \
|
||||
PS_ON_PIN, HEATER_BED_PIN, FAN_PIN, FAN1_PIN, FAN2_PIN, CONTROLLER_FAN_PIN, \
|
||||
_E0_PINS _E1_PINS _E2_PINS _E3_PINS _E4_PINS BED_PINS \
|
||||
_H0_PINS _H1_PINS _H2_PINS _H3_PINS _H4_PINS \
|
||||
_D_PINS _X2_PINS _Y2_PINS _Z2_PINS \
|
||||
}
|
||||
|
||||
#define HAS_DIGIPOTSS (PIN_EXISTS(DIGIPOTSS))
|
||||
|
||||
/**
|
||||
* Define SPI Pins: SCK, MISO, MOSI, SS
|
||||
*/
|
||||
#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328__) || defined(__AVR_ATmega328P__)
|
||||
#define AVR_SCK_PIN 13
|
||||
#define AVR_MISO_PIN 12
|
||||
#define AVR_MOSI_PIN 11
|
||||
#define AVR_SS_PIN 10
|
||||
#elif defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644PA__) || defined(__AVR_ATmega1284P__)
|
||||
#define AVR_SCK_PIN 7
|
||||
#define AVR_MISO_PIN 6
|
||||
#define AVR_MOSI_PIN 5
|
||||
#define AVR_SS_PIN 4
|
||||
#elif defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
|
||||
#define AVR_SCK_PIN 52
|
||||
#define AVR_MISO_PIN 50
|
||||
#define AVR_MOSI_PIN 51
|
||||
#define AVR_SS_PIN 53
|
||||
#elif defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__)
|
||||
#define AVR_SCK_PIN 21
|
||||
#define AVR_MISO_PIN 23
|
||||
#define AVR_MOSI_PIN 22
|
||||
#define AVR_SS_PIN 20
|
||||
#elif defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__)
|
||||
#define AVR_SCK_PIN 10
|
||||
#define AVR_MISO_PIN 12
|
||||
#define AVR_MOSI_PIN 11
|
||||
#define AVR_SS_PIN 16
|
||||
#endif
|
||||
|
||||
#ifndef SCK_PIN
|
||||
#define SCK_PIN AVR_SCK_PIN
|
||||
#endif
|
||||
#ifndef MISO_PIN
|
||||
#define MISO_PIN AVR_MISO_PIN
|
||||
#endif
|
||||
#ifndef MOSI_PIN
|
||||
#define MOSI_PIN AVR_MOSI_PIN
|
||||
#endif
|
||||
#ifndef SS_PIN
|
||||
#define SS_PIN AVR_SS_PIN
|
||||
#endif
|
||||
|
||||
#endif // __PINS_H__
|
||||
80
config/examples/Monoprice/Maker Ultimate 2/pins_WEEDO_62B.h
Normal file
80
config/examples/Monoprice/Maker Ultimate 2/pins_WEEDO_62B.h
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
/**
|
||||
* Copyright (C) 2019 WEEDO3D
|
||||
* Author: perron@163.com
|
||||
*/
|
||||
|
||||
#ifndef BOARD_NAME
|
||||
#define BOARD_NAME "WEEDO 62B"
|
||||
#endif
|
||||
|
||||
#define LARGE_FLASH true
|
||||
|
||||
// X Motor
|
||||
#define X_STEP_PIN 54
|
||||
#define X_DIR_PIN 55
|
||||
#define X_ENABLE_PIN 38
|
||||
|
||||
// X Endstop
|
||||
#define X_MIN_PIN 3
|
||||
#define X_MAX_PIN 2
|
||||
|
||||
// Y Motor
|
||||
#define Y_STEP_PIN 60
|
||||
#define Y_DIR_PIN 61
|
||||
#define Y_ENABLE_PIN 56
|
||||
|
||||
// Y Endstop
|
||||
#define Y_MIN_PIN -1
|
||||
#define Y_MAX_PIN 41
|
||||
|
||||
// Z Motor
|
||||
#define Z_STEP_PIN 46
|
||||
#define Z_DIR_PIN 48
|
||||
#define Z_ENABLE_PIN 62
|
||||
|
||||
// Z Endstop
|
||||
#define Z_MIN_PIN 18
|
||||
#define Z_MAX_PIN 19
|
||||
|
||||
// A Motor
|
||||
#define E0_STEP_PIN 26
|
||||
#define E0_DIR_PIN 28
|
||||
#define E0_ENABLE_PIN 24
|
||||
|
||||
// Card Reader
|
||||
#define SDSS 53
|
||||
#define SD_DETECT_PIN 49
|
||||
|
||||
// UART LED
|
||||
#define LED_PIN 13
|
||||
|
||||
#define SOL1_PIN 19
|
||||
#define Z_MIN_PROBE_PIN 32
|
||||
|
||||
// Filament out sensor
|
||||
#define FIL_RUNOUT_PIN 3
|
||||
|
||||
// Front Door Sensor
|
||||
#define DOOROPEN_PIN 40
|
||||
|
||||
// Extruder0
|
||||
#define FAN_PIN 9 // (Sprinter config)
|
||||
#define HEATER_0_PIN 10 // EXTRUDER 1
|
||||
#define TEMP_0_PIN 13 // ANALOG NUMBERING
|
||||
|
||||
// Heater Bed
|
||||
#define HEATER_BED_PIN 8 // BED
|
||||
#define TEMP_BED_PIN 14 // ANALOG NUMBERING
|
||||
|
||||
// BUZZ
|
||||
#define BEEPER_PIN 37
|
||||
|
||||
// Pins for DOGM SPI LCD Support
|
||||
#define DOGLCD_A0 27
|
||||
#define DOGLCD_CS 29
|
||||
#define LCD_RESET_PIN 25
|
||||
|
||||
// Encoder
|
||||
#define BTN_EN1 33
|
||||
#define BTN_EN2 31
|
||||
#define BTN_ENC 35 //the click switch
|
||||
|
|
@ -0,0 +1,883 @@
|
|||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 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/>.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Configuration.h
|
||||
*
|
||||
* Basic settings such as:
|
||||
*
|
||||
* - Type of electronics
|
||||
* - Type of temperature sensor
|
||||
* - Printer geometry
|
||||
* - Endstop configuration
|
||||
* - LCD controller
|
||||
* - Extra features
|
||||
*
|
||||
* Advanced settings can be found in Configuration_adv.h
|
||||
*
|
||||
*/
|
||||
#ifndef CONFIGURATION_H
|
||||
#define CONFIGURATION_H
|
||||
#define CONFIGURATION_H_VERSION 010109
|
||||
|
||||
// @section info
|
||||
|
||||
// User-specified version info of this build to display in [Pronterface, etc] terminal window during
|
||||
// startup. Implementation of an idea by Prof Braino to inform user that any changes made to this
|
||||
// build by the user have been successfully uploaded into firmware.
|
||||
#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes.
|
||||
#define SHOW_BOOTSCREEN
|
||||
#define STRING_SPLASH_LINE1 SHORT_BUILD_VERSION // will be shown during bootup in line 1
|
||||
#define STRING_SPLASH_LINE2 WEBSITE_URL // will be shown during bootup in line 2
|
||||
|
||||
#define BRAND_MP
|
||||
|
||||
#ifdef BRAND_MP
|
||||
#define MACHINE_NAME "Ultimate2"
|
||||
#endif
|
||||
|
||||
#ifdef BRAND_MP
|
||||
#define EnableRunoutAndDoor
|
||||
#endif
|
||||
|
||||
/**
|
||||
* *** VENDORS PLEASE READ ***
|
||||
*
|
||||
* Marlin allows you to add a custom boot image for Graphical LCDs.
|
||||
* With this option Marlin will first show your custom screen followed
|
||||
* by the standard Marlin logo with version number and web URL.
|
||||
*
|
||||
* We encourage you to take advantage of this new feature and we also
|
||||
* respectfully request that you retain the unmodified Marlin boot screen.
|
||||
*/
|
||||
|
||||
// Enable to show the bitmap in Marlin/_Bootscreen.h on startup.
|
||||
#define SHOW_CUSTOM_BOOTSCREEN
|
||||
|
||||
// Enable to show the bitmap in Marlin/_Statusscreen.h on the status screen.
|
||||
#define CUSTOM_STATUS_SCREEN_IMAGE
|
||||
|
||||
// @section machine
|
||||
|
||||
/**
|
||||
* Select the serial port on the board to use for communication with the host.
|
||||
* This allows the connection of wireless adapters (for instance) to non-default port pins.
|
||||
* Serial port 0 is always used by the Arduino bootloader regardless of this setting.
|
||||
*
|
||||
* :[0, 1, 2, 3, 4, 5, 6, 7]
|
||||
*/
|
||||
//#define SERIAL_PORT 0
|
||||
|
||||
/**
|
||||
* This setting determines the communication speed of the printer.
|
||||
*
|
||||
* 250000 works in most cases, but you might try a lower speed if
|
||||
* you commonly experience drop-outs during host printing.
|
||||
* You may try up to 1000000 to speed up SD file transfer.
|
||||
*
|
||||
* :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000]
|
||||
*/
|
||||
#ifdef BRAND_MP
|
||||
#define BAUDRATE 115200
|
||||
#endif
|
||||
|
||||
// The following define selects which electronics board you have.
|
||||
// Please choose the name from boards.h that matches your setup
|
||||
#define MOTHERBOARD BOARD_WEEDO_62B
|
||||
|
||||
// @section extruder
|
||||
|
||||
// This defines the number of extruders
|
||||
// :[1, 2, 3, 4, 5]
|
||||
#define EXTRUDERS 1
|
||||
|
||||
// Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc.
|
||||
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
|
||||
|
||||
// @section temperature
|
||||
|
||||
//===========================================================================
|
||||
//============================= Thermal Settings ============================
|
||||
//===========================================================================
|
||||
|
||||
/**
|
||||
* --NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table
|
||||
*
|
||||
* Temperature sensors available:
|
||||
*
|
||||
* -4 : thermocouple with AD8495
|
||||
* -3 : thermocouple with MAX31855 (only for sensor 0)
|
||||
* -2 : thermocouple with MAX6675 (only for sensor 0)
|
||||
* -1 : thermocouple with AD595
|
||||
* 0 : not used
|
||||
* 1 : 100k thermistor - best choice for EPCOS 100k (4.7k pullup)
|
||||
* 2 : 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup)
|
||||
* 3 : Mendel-parts thermistor (4.7k pullup)
|
||||
* 4 : 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !!
|
||||
* 5 : 100K thermistor - ATC Semitec 104GT-2/104NT-4-R025H42G (Used in ParCan & J-Head) (4.7k pullup)
|
||||
* 501 : 100K Zonestar (Tronxy X3A) Thermistor
|
||||
* 6 : 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup)
|
||||
* 7 : 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup)
|
||||
* 71 : 100k Honeywell thermistor 135-104LAF-J01 (4.7k pullup)
|
||||
* 8 : 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup)
|
||||
* 9 : 100k GE Sensing AL03006-58.2K-97-G1 (4.7k pullup)
|
||||
* 10 : 100k RS thermistor 198-961 (4.7k pullup)
|
||||
* 11 : 100k beta 3950 1% thermistor (4.7k pullup)
|
||||
* 12 : 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup) (calibrated for Makibox hot bed)
|
||||
* 13 : 100k Hisens 3950 1% up to 300°C for hotend "Simple ONE " & "Hotend "All In ONE"
|
||||
* 15 : 100k thermistor calibration for JGAurora A5 hotend
|
||||
* 20 : the PT100 circuit found in the Ultimainboard V2.x
|
||||
* 60 : 100k Maker's Tool Works Kapton Bed Thermistor beta=3950
|
||||
* 66 : 4.7M High Temperature thermistor from Dyze Design
|
||||
* 70 : the 100K thermistor found in the bq Hephestos 2
|
||||
* 75 : 100k Generic Silicon Heat Pad with NTC 100K MGB18-104F39050L32 thermistor
|
||||
*
|
||||
* 1k ohm pullup tables - This is atypical, and requires changing out the 4.7k pullup for 1k.
|
||||
* (but gives greater accuracy and more stable PID)
|
||||
* 51 : 100k thermistor - EPCOS (1k pullup)
|
||||
* 52 : 200k thermistor - ATC Semitec 204GT-2 (1k pullup)
|
||||
* 55 : 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (1k pullup)
|
||||
*
|
||||
* 1047 : Pt1000 with 4k7 pullup
|
||||
* 1010 : Pt1000 with 1k pullup (non standard)
|
||||
* 147 : Pt100 with 4k7 pullup
|
||||
* 110 : Pt100 with 1k pullup (non standard)
|
||||
*
|
||||
* Use these for Testing or Development purposes. NEVER for production machine.
|
||||
* 998 : Dummy Table that ALWAYS reads 25°C or the temperature defined below.
|
||||
* 999 : Dummy Table that ALWAYS reads 100°C or the temperature defined below.
|
||||
*
|
||||
* :{ '0': "Not used", '1':"100k / 4.7k - EPCOS", '2':"200k / 4.7k - ATC Semitec 204GT-2", '3':"Mendel-parts / 4.7k", '4':"10k !! do not use for a hotend. Bad resolution at high temp. !!", '5':"100K / 4.7k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", '501':"100K Zonestar (Tronxy X3A)", '6':"100k / 4.7k EPCOS - Not as accurate as Table 1", '7':"100k / 4.7k Honeywell 135-104LAG-J01", '8':"100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT", '9':"100k / 4.7k GE Sensing AL03006-58.2K-97-G1", '10':"100k / 4.7k RS 198-961", '11':"100k / 4.7k beta 3950 1%", '12':"100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT (calibrated for Makibox hot bed)", '13':"100k Hisens 3950 1% up to 300°C for hotend 'Simple ONE ' & hotend 'All In ONE'", '20':"PT100 (Ultimainboard V2.x)", '51':"100k / 1k - EPCOS", '52':"200k / 1k - ATC Semitec 204GT-2", '55':"100k / 1k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", '60':"100k Maker's Tool Works Kapton Bed Thermistor beta=3950", '66':"Dyze Design 4.7M High Temperature thermistor", '70':"the 100K thermistor found in the bq Hephestos 2", '71':"100k / 4.7k Honeywell 135-104LAF-J01", '147':"Pt100 / 4.7k", '1047':"Pt1000 / 4.7k", '110':"Pt100 / 1k (non-standard)", '1010':"Pt1000 / 1k (non standard)", '-4':"Thermocouple + AD8495", '-3':"Thermocouple + MAX31855 (only for sensor 0)", '-2':"Thermocouple + MAX6675 (only for sensor 0)", '-1':"Thermocouple + AD595",'998':"Dummy 1", '999':"Dummy 2" }
|
||||
*/
|
||||
#define TEMP_SENSOR_0 1
|
||||
#define TEMP_SENSOR_1 0
|
||||
#define TEMP_SENSOR_2 0
|
||||
#define TEMP_SENSOR_3 0
|
||||
#define TEMP_SENSOR_4 0
|
||||
#define TEMP_SENSOR_BED 1
|
||||
#define TEMP_SENSOR_CHAMBER 0
|
||||
|
||||
// Dummy thermistor constant temperature readings, for use with 998 and 999
|
||||
#define DUMMY_THERMISTOR_998_VALUE 25
|
||||
#define DUMMY_THERMISTOR_999_VALUE 100
|
||||
|
||||
// Use temp sensor 1 as a redundant sensor with sensor 0. If the readings
|
||||
// from the two sensors differ too much the print will be aborted.
|
||||
//#define TEMP_SENSOR_1_AS_REDUNDANT
|
||||
#define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10
|
||||
|
||||
// Extruder temperature must be close to target for this long before M109 returns success
|
||||
#define TEMP_RESIDENCY_TIME 10 // (seconds)
|
||||
#define TEMP_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one
|
||||
#define TEMP_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
|
||||
|
||||
// Bed temperature must be close to target for this long before M190 returns success
|
||||
#define TEMP_BED_RESIDENCY_TIME 10 // (seconds)
|
||||
#define TEMP_BED_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one
|
||||
#define TEMP_BED_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
|
||||
|
||||
// The minimal temperature defines the temperature below which the heater will not be enabled It is used
|
||||
// to check that the wiring to the thermistor is not broken.
|
||||
// Otherwise this would lead to the heater being powered on all the time.
|
||||
#define HEATER_0_MINTEMP -20
|
||||
#define HEATER_1_MINTEMP 1
|
||||
#define HEATER_2_MINTEMP 1
|
||||
#define HEATER_3_MINTEMP 1
|
||||
#define HEATER_4_MINTEMP 1
|
||||
#define BED_MINTEMP 1
|
||||
|
||||
// When temperature exceeds max temp, your heater will be switched off.
|
||||
// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
|
||||
// You should use MINTEMP for thermistor short/failure protection.
|
||||
#define HEATER_0_MAXTEMP 250
|
||||
#define HEATER_1_MAXTEMP 240
|
||||
#define HEATER_2_MAXTEMP 240
|
||||
#define HEATER_3_MAXTEMP 240
|
||||
#define HEATER_4_MAXTEMP 240
|
||||
#define BED_MAXTEMP 150
|
||||
|
||||
//===========================================================================
|
||||
//============================= PID Settings ================================
|
||||
//===========================================================================
|
||||
// PID Tuning Guide here: http://reprap.org/wiki/PID_Tuning
|
||||
|
||||
// Comment the following line to disable PID and enable bang-bang.
|
||||
#define PIDTEMP
|
||||
#define BANG_MAX 255 // Limits current to nozzle while in bang-bang mode; 255=full current
|
||||
#define PID_MAX BANG_MAX // Limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current
|
||||
#define PID_K1 0.95 // Smoothing factor within any PID loop
|
||||
#if ENABLED(PIDTEMP)
|
||||
//#define PID_AUTOTUNE_MENU // Add PID Autotune to the LCD "Temperature" menu to run M303 and apply the result.
|
||||
//#define PID_DEBUG // Sends debug data to the serial port.
|
||||
//#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
|
||||
//#define SLOW_PWM_HEATERS // PWM with very low frequency (roughly 0.125Hz=8s) and minimum state time of approximately 1s useful for heaters driven by a relay
|
||||
//#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders)
|
||||
// Set/get with gcode: M301 E[extruder number, 0-2]
|
||||
#define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature
|
||||
// is more than PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
|
||||
|
||||
// If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it
|
||||
|
||||
|
||||
#define DEFAULT_Kp 13.66
|
||||
#define DEFAULT_Ki 1.04
|
||||
#define DEFAULT_Kd 44.77
|
||||
|
||||
#endif // PIDTEMP
|
||||
|
||||
//===========================================================================
|
||||
//============================= PID > Bed Temperature Control ===============
|
||||
//===========================================================================
|
||||
|
||||
/**
|
||||
* PID Bed Heating
|
||||
*
|
||||
* If this option is enabled set PID constants below.
|
||||
* If this option is disabled, bang-bang will be used and BED_LIMIT_SWITCHING will enable hysteresis.
|
||||
*
|
||||
* The PID frequency will be the same as the extruder PWM.
|
||||
* If PID_dT is the default, and correct for the hardware/configuration, that means 7.689Hz,
|
||||
* which is fine for driving a square wave into a resistive load and does not significantly
|
||||
* impact FET heating. This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W
|
||||
* heater. If your configuration is significantly different than this and you don't understand
|
||||
* the issues involved, don't use bed PID until someone else verifies that your hardware works.
|
||||
*/
|
||||
//#define PIDTEMPBED
|
||||
|
||||
//#define BED_LIMIT_SWITCHING
|
||||
|
||||
/**
|
||||
* Max Bed Power
|
||||
* Applies to all forms of bed control (PID, bang-bang, and bang-bang with hysteresis).
|
||||
* When set to any value below 255, enables a form of PWM to the bed that acts like a divider
|
||||
* so don't use it unless you are OK with PWM on your bed. (See the comment on enabling PIDTEMPBED)
|
||||
*/
|
||||
#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current
|
||||
|
||||
// @section extruder
|
||||
|
||||
/**
|
||||
* Prevent extrusion if the temperature is below EXTRUDE_MINTEMP.
|
||||
* Add M302 to set the minimum extrusion temperature and/or turn
|
||||
* cold extrusion prevention on and off.
|
||||
*
|
||||
* *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
|
||||
*/
|
||||
#define PREVENT_COLD_EXTRUSION
|
||||
#define EXTRUDE_MINTEMP 170
|
||||
|
||||
/**
|
||||
* Prevent a single extrusion longer than EXTRUDE_MAXLENGTH.
|
||||
* Note: For Bowden Extruders make this large enough to allow load/unload.
|
||||
*/
|
||||
#define PREVENT_LENGTHY_EXTRUDE
|
||||
#define EXTRUDE_MAXLENGTH 200
|
||||
|
||||
//===========================================================================
|
||||
//======================== Thermal Runaway Protection =======================
|
||||
//===========================================================================
|
||||
|
||||
/**
|
||||
* Thermal Protection provides additional protection to your printer from damage
|
||||
* and fire. Marlin always includes safe min and max temperature ranges which
|
||||
* protect against a broken or disconnected thermistor wire.
|
||||
*
|
||||
* The issue: If a thermistor falls out, it will report the much lower
|
||||
* temperature of the air in the room, and the the firmware will keep
|
||||
* the heater on.
|
||||
*
|
||||
* If you get "Thermal Runaway" or "Heating failed" errors the
|
||||
* details can be tuned in Configuration_adv.h
|
||||
*/
|
||||
|
||||
#define THERMAL_PROTECTION_HOTENDS // Enable thermal protection for all extruders
|
||||
#define THERMAL_PROTECTION_BED // Enable thermal protection for the heated bed
|
||||
|
||||
|
||||
//===========================================================================
|
||||
//============================== Endstop Settings ===========================
|
||||
//===========================================================================
|
||||
|
||||
// @section homing
|
||||
|
||||
// Specify here all the endstop connectors that are connected to any endstop or probe.
|
||||
// Almost all printers will be using one per axis. Probes will use one or more of the
|
||||
// extra connectors. Leave undefined any used for non-endstop and non-probe purposes.
|
||||
#define USE_ZMIN_PLUG
|
||||
#define USE_XMAX_PLUG
|
||||
#define USE_YMAX_PLUG
|
||||
#define USE_ZMAX_PLUG
|
||||
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
//=============================================================================
|
||||
//============================== Movement Settings ============================
|
||||
//=============================================================================
|
||||
// @section motion
|
||||
|
||||
/**
|
||||
* Default Settings
|
||||
*
|
||||
* These settings can be reset by M502
|
||||
*
|
||||
* Note that if EEPROM is enabled, saved values will override these.
|
||||
*/
|
||||
|
||||
/**
|
||||
* With this option each E stepper can have its own factors for the
|
||||
* following movement settings. If fewer factors are given than the
|
||||
* total number of extruders, the last value applies to the rest.
|
||||
*/
|
||||
//#define DISTINCT_E_FACTORS
|
||||
|
||||
/**
|
||||
* Default Axis Steps Per Unit (steps/mm)
|
||||
* Override with M92
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 94, 94, 400, 90 }
|
||||
|
||||
/**
|
||||
* Default Max Feed Rate (mm/s)
|
||||
* Override with M203
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_MAX_FEEDRATE {5000, 5000, 5000, 5000}
|
||||
|
||||
/**
|
||||
* Default Max Acceleration (change/s) change = mm/s
|
||||
* (Maximum start speed for accelerated moves)
|
||||
* Override with M201
|
||||
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
|
||||
*/
|
||||
#define DEFAULT_MAX_ACCELERATION {9000,9000,9000,10000}
|
||||
|
||||
/**
|
||||
* Default Acceleration (change/s) change = mm/s
|
||||
* Override with M204
|
||||
*
|
||||
* M204 P Acceleration
|
||||
* M204 R Retract Acceleration
|
||||
* M204 T Travel Acceleration
|
||||
*/
|
||||
#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E acceleration for printing moves
|
||||
#define DEFAULT_RETRACT_ACCELERATION 2000 // E acceleration for retracts
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration for travel (non printing) moves
|
||||
|
||||
/**
|
||||
* Default Jerk (mm/s)
|
||||
* Override with M205 X Y Z E
|
||||
*
|
||||
* "Jerk" specifies the minimum speed change that requires acceleration.
|
||||
* When changing speed and direction, if the difference is less than the
|
||||
* value set here, it may happen instantaneously.
|
||||
*/
|
||||
#define DEFAULT_XJERK 10.0
|
||||
#define DEFAULT_YJERK 10.0
|
||||
#define DEFAULT_ZJERK 0.3
|
||||
#define DEFAULT_EJERK 5.0
|
||||
|
||||
//===========================================================================
|
||||
//============================= Z Probe Options =============================
|
||||
//===========================================================================
|
||||
// @section probes
|
||||
|
||||
//
|
||||
// See http://marlinfw.org/docs/configuration/probes.html
|
||||
//
|
||||
|
||||
/**
|
||||
* Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
|
||||
*
|
||||
* Enable this option for a probe connected to the Z Min endstop pin.
|
||||
*/
|
||||
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
|
||||
|
||||
/**
|
||||
* A Fix-Mounted Probe either doesn't deploy or needs manual deployment.
|
||||
* (e.g., an inductive probe or a nozzle-based probe-switch.)
|
||||
*/
|
||||
#define FIX_MOUNTED_PROBE
|
||||
|
||||
|
||||
/**
|
||||
* Z Probe to nozzle (X,Y) offset, relative to (0, 0).
|
||||
* X and Y offsets must be integers.
|
||||
*
|
||||
* In the following example the X and Y offsets are both positive:
|
||||
* #define X_PROBE_OFFSET_FROM_EXTRUDER 10
|
||||
* #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
|
||||
*
|
||||
* +-- BACK ---+
|
||||
* | |
|
||||
* L | (+) P | R <-- probe (20,20)
|
||||
* E | | I
|
||||
* F | (-) N (+) | G <-- nozzle (10,10)
|
||||
* T | | H
|
||||
* | (-) | T
|
||||
* | |
|
||||
* O-- FRONT --+
|
||||
* (0,0)
|
||||
*/
|
||||
#define X_PROBE_OFFSET_FROM_EXTRUDER 0 // X offset: -left +right [of the nozzle]
|
||||
#define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle]
|
||||
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle]
|
||||
|
||||
// Certain types of probes need to stay away from edges
|
||||
#define MIN_PROBE_EDGE 2
|
||||
|
||||
// X and Y axis travel speed (mm/m) between probes
|
||||
#define XY_PROBE_SPEED HOMING_FEEDRATE_XY
|
||||
|
||||
// Feedrate (mm/m) for the first approach when double-probing (MULTIPLE_PROBING == 2)
|
||||
#define Z_PROBE_SPEED_FAST HOMING_FEEDRATE_Z
|
||||
|
||||
// Feedrate (mm/m) for the "accurate" probe of each point
|
||||
#define Z_PROBE_SPEED_SLOW (Z_PROBE_SPEED_FAST / 4)
|
||||
|
||||
// The number of probes to perform at each point.
|
||||
// Set to 2 for a fast/slow probe, using the second probe result.
|
||||
// Set to 3 or more for slow probes, averaging the results.
|
||||
#define MULTIPLE_PROBING 2
|
||||
|
||||
/**
|
||||
* Z probes require clearance when deploying, stowing, and moving between
|
||||
* probe points to avoid hitting the bed and other hardware.
|
||||
* Servo-mounted probes require extra space for the arm to rotate.
|
||||
* Inductive probes need space to keep from triggering early.
|
||||
*
|
||||
* Use these settings to specify the distance (mm) to raise the probe (or
|
||||
* lower the bed). The values set here apply over and above any (negative)
|
||||
* probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD.
|
||||
* Only integer values >= 1 are valid here.
|
||||
*
|
||||
* Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle.
|
||||
* But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle.
|
||||
*/
|
||||
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
|
||||
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
|
||||
#define Z_CLEARANCE_MULTI_PROBE 5 // Z Clearance between multiple probes
|
||||
|
||||
#define Z_PROBE_LOW_POINT -11 // Farthest distance below the trigger-point to go before stopping
|
||||
|
||||
// For M851 give a range for adjusting the Z probe offset
|
||||
#define Z_PROBE_OFFSET_RANGE_MIN -20
|
||||
#define Z_PROBE_OFFSET_RANGE_MAX 20
|
||||
|
||||
// Enable the M48 repeatability test to test probe accuracy
|
||||
#define Z_MIN_PROBE_REPEATABILITY_TEST
|
||||
|
||||
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
|
||||
// :{ 0:'Low', 1:'High' }
|
||||
#define X_ENABLE_ON 0
|
||||
#define Y_ENABLE_ON 0
|
||||
#define Z_ENABLE_ON 0
|
||||
#define E_ENABLE_ON 0 // For all extruders
|
||||
|
||||
// Disables axis stepper immediately when it's not being used.
|
||||
// WARNING: When motors turn off there is a chance of losing position accuracy!
|
||||
#define DISABLE_X false
|
||||
#define DISABLE_Y false
|
||||
#define DISABLE_Z false
|
||||
// Warn on display about possibly reduced accuracy
|
||||
//#define DISABLE_REDUCED_ACCURACY_WARNING
|
||||
|
||||
// @section extruder
|
||||
|
||||
#define DISABLE_E false // For all extruders
|
||||
#define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.
|
||||
|
||||
// @section machine
|
||||
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR true
|
||||
#define INVERT_Y_DIR true
|
||||
#define INVERT_Z_DIR true
|
||||
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#define INVERT_E0_DIR true
|
||||
#define INVERT_E1_DIR false
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
|
||||
// @section homing
|
||||
|
||||
// Direction of endstops when homing; 1=MAX, -1=MIN
|
||||
// :[-1,1]
|
||||
#define X_HOME_DIR 1
|
||||
#define Y_HOME_DIR 1
|
||||
#define Z_HOME_DIR 1
|
||||
|
||||
// @section machine
|
||||
|
||||
// The size of the print bed
|
||||
#define X_BED_SIZE 200
|
||||
#define Y_BED_SIZE 150
|
||||
|
||||
// Travel limits (mm) after homing, corresponding to endstop positions.
|
||||
#define X_MIN_POS 0
|
||||
#define Y_MIN_POS 0
|
||||
#define Z_MIN_POS 0
|
||||
#define X_MAX_POS X_BED_SIZE
|
||||
#define Y_MAX_POS Y_BED_SIZE
|
||||
#define Z_MAX_POS 170
|
||||
#define Z_SAFE_MAX_POS 165
|
||||
|
||||
/**
|
||||
* Software Endstops
|
||||
*
|
||||
* - Prevent moves outside the set machine bounds.
|
||||
* - Individual axes can be disabled, if desired.
|
||||
* - X and Y only apply to Cartesian robots.
|
||||
* - Use 'M211' to set software endstops on/off or report current state
|
||||
*/
|
||||
|
||||
// Min software endstops constrain movement within minimum coordinate bounds
|
||||
#define MIN_SOFTWARE_ENDSTOPS
|
||||
#if ENABLED(MIN_SOFTWARE_ENDSTOPS)
|
||||
#define MIN_SOFTWARE_ENDSTOP_X
|
||||
#define MIN_SOFTWARE_ENDSTOP_Y
|
||||
#define MIN_SOFTWARE_ENDSTOP_Z
|
||||
#endif
|
||||
|
||||
// Max software endstops constrain movement within maximum coordinate bounds
|
||||
#define MAX_SOFTWARE_ENDSTOPS
|
||||
#if ENABLED(MAX_SOFTWARE_ENDSTOPS)
|
||||
#define MAX_SOFTWARE_ENDSTOP_X
|
||||
#define MAX_SOFTWARE_ENDSTOP_Y
|
||||
#define MAX_SOFTWARE_ENDSTOP_Z
|
||||
#endif
|
||||
|
||||
#if ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)
|
||||
//#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Filament Runout Sensors
|
||||
* Mechanical or opto endstops are used to check for the presence of filament.
|
||||
*
|
||||
* RAMPS-based boards use SERVO3_PIN for the first runout sensor.
|
||||
* For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
|
||||
* By default the firmware assumes HIGH=FILAMENT PRESENT.
|
||||
*/
|
||||
#ifdef EnableRunoutAndDoor
|
||||
#define FILAMENT_RUNOUT_SENSOR
|
||||
#endif
|
||||
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
|
||||
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
|
||||
#define FIL_RUNOUT_INVERTING true // set to true to invert the logic of the sensor.
|
||||
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
|
||||
#define FILAMENT_RUNOUT_SCRIPT "W211"
|
||||
#endif
|
||||
|
||||
//===========================================================================
|
||||
//=============================== Bed Leveling ==============================
|
||||
//===========================================================================
|
||||
// @section calibrate
|
||||
|
||||
/**
|
||||
* Choose one of the options below to enable G29 Bed Leveling. The parameters
|
||||
* and behavior of G29 will change depending on your selection.
|
||||
*
|
||||
* If using a Probe for Z Homing, enable Z_SAFE_HOMING also!
|
||||
*
|
||||
* - AUTO_BED_LEVELING_3POINT
|
||||
* Probe 3 arbitrary points on the bed (that aren't collinear)
|
||||
* You specify the XY coordinates of all 3 points.
|
||||
* The result is a single tilted plane. Best for a flat bed.
|
||||
*
|
||||
* - AUTO_BED_LEVELING_LINEAR
|
||||
* Probe several points in a grid.
|
||||
* You specify the rectangle and the density of sample points.
|
||||
* The result is a single tilted plane. Best for a flat bed.
|
||||
*
|
||||
* - AUTO_BED_LEVELING_BILINEAR
|
||||
* Probe several points in a grid.
|
||||
* You specify the rectangle and the density of sample points.
|
||||
* The result is a mesh, best for large or uneven beds.
|
||||
*
|
||||
* - AUTO_BED_LEVELING_UBL (Unified Bed Leveling)
|
||||
* A comprehensive bed leveling system combining the features and benefits
|
||||
* of other systems. UBL also includes integrated Mesh Generation, Mesh
|
||||
* Validation and Mesh Editing systems.
|
||||
*
|
||||
* - MESH_BED_LEVELING
|
||||
* Probe a grid manually
|
||||
* The result is a mesh, suitable for large or uneven beds. (See BILINEAR.)
|
||||
* For machines without a probe, Mesh Bed Leveling provides a method to perform
|
||||
* leveling in steps so you can manually adjust the Z height at each grid-point.
|
||||
* With an LCD controller the process is guided step-by-step.
|
||||
*/
|
||||
#define AUTO_BED_LEVELING_3POINT
|
||||
|
||||
/**
|
||||
* Points to probe for all 3-point Leveling procedures.
|
||||
* Override if the automatically selected points are inadequate.
|
||||
*/
|
||||
#if ENABLED(AUTO_BED_LEVELING_3POINT) || ENABLED(AUTO_BED_LEVELING_UBL)
|
||||
#define PROBE_PT_1_X 155
|
||||
#define PROBE_PT_1_Y 5
|
||||
#define PROBE_PT_2_X 5
|
||||
#define PROBE_PT_2_Y 5
|
||||
#define PROBE_PT_3_X 5
|
||||
#define PROBE_PT_3_Y 120
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Add a bed leveling sub-menu for ABL or MBL.
|
||||
* Include a guided procedure if manual probing is enabled.
|
||||
*/
|
||||
#define LCD_BED_LEVELING
|
||||
|
||||
#if ENABLED(LCD_BED_LEVELING)
|
||||
#define MBL_Z_STEP 0.025 // Step size while manually probing Z axis.
|
||||
#define LCD_PROBE_Z_RANGE 4 // Z Range centered on Z_MIN_POS for LCD Z adjustment
|
||||
#endif
|
||||
|
||||
// Add a menu item to move between bed corners for manual bed adjustment
|
||||
#define LEVEL_BED_CORNERS
|
||||
|
||||
#if ENABLED(LEVEL_BED_CORNERS)
|
||||
#define LEVEL_CORNERS_INSET 15 // (mm) An inset for corner leveling
|
||||
#define LEVEL_CENTER_TOO // Move to the center after the last corner
|
||||
#endif
|
||||
|
||||
// @section homing
|
||||
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (3000)
|
||||
#define HOMING_FEEDRATE_Z (500)
|
||||
|
||||
//=============================================================================
|
||||
//============================= Additional Features ===========================
|
||||
//=============================================================================
|
||||
|
||||
// @section extras
|
||||
|
||||
//
|
||||
// EEPROM
|
||||
//
|
||||
// The microcontroller can store settings in the EEPROM, e.g. max velocity...
|
||||
// M500 - stores parameters in EEPROM
|
||||
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
|
||||
// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
|
||||
//
|
||||
#define EEPROM_SETTINGS // Enable for M500 and M501 commands
|
||||
#define DISABLE_M503 // Saves ~2700 bytes of PROGMEM. Disable for release!
|
||||
#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM.
|
||||
|
||||
// @section temperature
|
||||
|
||||
// Preheat Constants
|
||||
#define PREHEAT_1_TEMP_HOTEND 180
|
||||
#define PREHEAT_1_TEMP_BED 70
|
||||
#define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255
|
||||
|
||||
#define PREHEAT_2_TEMP_HOTEND 240
|
||||
#define PREHEAT_2_TEMP_BED 110
|
||||
#define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255
|
||||
|
||||
/**
|
||||
* Nozzle Park
|
||||
*
|
||||
* Park the nozzle at the given XYZ position on idle or G27.
|
||||
*
|
||||
* The "P" parameter controls the action applied to the Z axis:
|
||||
*
|
||||
* P0 (Default) If Z is below park Z raise the nozzle.
|
||||
* P1 Raise the nozzle always to Z-park height.
|
||||
* P2 Raise the nozzle by Z-park amount, limited to Z_MAX_POS.
|
||||
*/
|
||||
#define NOZZLE_PARK_FEATURE
|
||||
|
||||
#if ENABLED(NOZZLE_PARK_FEATURE)
|
||||
// Specify a park position as { X, Y, Z }
|
||||
#define NOZZLE_PARK_POINT { 180, 145, 20 }
|
||||
#define NOZZLE_PARK_XY_FEEDRATE 100 // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
|
||||
#define NOZZLE_PARK_Z_FEEDRATE 5 // Z axis feedrate in mm/s (not used for delta printers)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Print Job Timer
|
||||
*
|
||||
* Automatically start and stop the print job timer on M104/M109/M190.
|
||||
*
|
||||
* M104 (hotend, no wait) - high temp = none, low temp = stop timer
|
||||
* M109 (hotend, wait) - high temp = start timer, low temp = stop timer
|
||||
* M190 (bed, wait) - high temp = start timer, low temp = none
|
||||
*
|
||||
* The timer can also be controlled with the following commands:
|
||||
*
|
||||
* M75 - Start the print job timer
|
||||
* M76 - Pause the print job timer
|
||||
* M77 - Stop the print job timer
|
||||
*/
|
||||
#define PRINTJOB_TIMER_AUTOSTART
|
||||
|
||||
/**
|
||||
* Print Counter
|
||||
*
|
||||
* Track statistical data such as:
|
||||
*
|
||||
* - Total print jobs
|
||||
* - Total successful print jobs
|
||||
* - Total failed print jobs
|
||||
* - Total time printing
|
||||
*
|
||||
* View the current statistics with M78.
|
||||
*/
|
||||
#define PRINTCOUNTER
|
||||
|
||||
//=============================================================================
|
||||
//============================= LCD and SD support ============================
|
||||
//=============================================================================
|
||||
|
||||
// @section lcd
|
||||
|
||||
/**
|
||||
* LCD LANGUAGE
|
||||
*
|
||||
* Select the language to display on the LCD. These languages are available:
|
||||
*
|
||||
* en, an, bg, ca, cn, cz, cz_utf8, de, el, el-gr, es, es_utf8,
|
||||
* eu, fi, fr, fr_utf8, gl, hr, it, kana, kana_utf8, nl, pl, pt,
|
||||
* pt_utf8, pt-br, pt-br_utf8, ru, sk_utf8, tr, uk, zh_CN, zh_TW, test
|
||||
*
|
||||
* :{ 'en':'English', 'an':'Aragonese', 'bg':'Bulgarian', 'ca':'Catalan', 'cn':'Chinese', 'cz':'Czech', 'cz_utf8':'Czech (UTF8)', 'de':'German', 'el':'Greek', 'el-gr':'Greek (Greece)', 'es':'Spanish', 'es_utf8':'Spanish (UTF8)', 'eu':'Basque-Euskera', 'fi':'Finnish', 'fr':'French', 'fr_utf8':'French (UTF8)', 'gl':'Galician', 'hr':'Croatian', 'it':'Italian', 'kana':'Japanese', 'kana_utf8':'Japanese (UTF8)', 'nl':'Dutch', 'pl':'Polish', 'pt':'Portuguese', 'pt-br':'Portuguese (Brazilian)', 'pt-br_utf8':'Portuguese (Brazilian UTF8)', 'pt_utf8':'Portuguese (UTF8)', 'ru':'Russian', 'sk_utf8':'Slovak (UTF8)', 'tr':'Turkish', 'uk':'Ukrainian', 'zh_CN':'Chinese (Simplified)', 'zh_TW':'Chinese (Taiwan)', 'test':'TEST' }
|
||||
*/
|
||||
|
||||
#define LCD_LANGUAGE cn
|
||||
|
||||
|
||||
/**
|
||||
* LCD Character Set
|
||||
*
|
||||
* Note: This option is NOT applicable to Graphical Displays.
|
||||
*
|
||||
* All character-based LCDs provide ASCII plus one of these
|
||||
* language extensions:
|
||||
*
|
||||
* - JAPANESE ... the most common
|
||||
* - WESTERN ... with more accented characters
|
||||
* - CYRILLIC ... for the Russian language
|
||||
*
|
||||
* To determine the language extension installed on your controller:
|
||||
*
|
||||
* - Compile and upload with LCD_LANGUAGE set to 'test'
|
||||
* - Click the controller to view the LCD menu
|
||||
* - The LCD will display Japanese, Western, or Cyrillic text
|
||||
*
|
||||
* See http://marlinfw.org/docs/development/lcd_language.html
|
||||
*
|
||||
* :['JAPANESE', 'WESTERN', 'CYRILLIC']
|
||||
*/
|
||||
#define DISPLAY_CHARSET_HD44780 JAPANESE
|
||||
|
||||
/**
|
||||
* SD CARD
|
||||
*
|
||||
* SD Card support is disabled by default. If your controller has an SD slot,
|
||||
* you must uncomment the following option or it won't work.
|
||||
*
|
||||
*/
|
||||
#define SDSUPPORT
|
||||
|
||||
//
|
||||
// SPEAKER/BUZZER
|
||||
//
|
||||
// If you have a speaker that can produce tones, enable it here.
|
||||
// By default Marlin assumes you have a buzzer with a fixed frequency.
|
||||
//
|
||||
#define SPEAKER
|
||||
|
||||
//
|
||||
// The duration and frequency for the UI feedback sound.
|
||||
// Set these to 0 to disable audio feedback in the LCD menus.
|
||||
//
|
||||
// Note: Test audio output with the G-Code:
|
||||
// M300 S<frequency Hz> P<duration ms>
|
||||
//
|
||||
#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 5
|
||||
#define LCD_FEEDBACK_FREQUENCY_HZ 5000
|
||||
|
||||
//=============================================================================
|
||||
//======================== LCD / Controller Selection =========================
|
||||
//======================== (Character-based LCDs) =========================
|
||||
//=============================================================================
|
||||
|
||||
//
|
||||
// MakerLab Mini Panel with graphic
|
||||
// controller and SD support - http://reprap.org/wiki/Mini_panel
|
||||
//
|
||||
#define MINIPANEL
|
||||
|
||||
//=============================================================================
|
||||
//=============================== Extra Features ==============================
|
||||
//=============================================================================
|
||||
|
||||
// @section extras
|
||||
|
||||
// Increase the FAN PWM frequency. Removes the PWM noise but increases heating in the FET/Arduino
|
||||
#define FAST_PWM_FAN
|
||||
|
||||
// Use software PWM to drive the fan, as for the heaters. This uses a very low frequency
|
||||
// which is not as annoying as with the hardware PWM. On the other hand, if this frequency
|
||||
// is too low, you should also increment SOFT_PWM_SCALE.
|
||||
#define FAN_SOFT_PWM
|
||||
|
||||
// Incrementing this by 1 will double the software PWM frequency,
|
||||
// affecting heaters, and the fan if FAN_SOFT_PWM is enabled.
|
||||
// However, control resolution will be halved for each increment;
|
||||
// at zero value, there are 128 effective control positions.
|
||||
#define SOFT_PWM_SCALE 0
|
||||
|
||||
/**
|
||||
* Number of servos
|
||||
*
|
||||
* For some servo-related options NUM_SERVOS will be set automatically.
|
||||
* Set this manually if there are extra servos needing manual control.
|
||||
* Leave undefined or set to 0 to entirely disable the servo subsystem.
|
||||
*/
|
||||
//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command
|
||||
|
||||
// Delay (in milliseconds) before the next move will start, to give the servo time to reach its target angle.
|
||||
// 300ms is a good value but you can try less delay.
|
||||
// If the servo can't reach the requested position, increase it.
|
||||
#define SERVO_DELAY { 300 }
|
||||
|
||||
// Only power servos during movement, otherwise leave off to prevent jitter
|
||||
//#define DEACTIVATE_SERVOS_AFTER_MOVE
|
||||
|
||||
#define SETZOFFSET
|
||||
|
||||
|
||||
#endif // CONFIGURATION_H
|
||||
File diff suppressed because it is too large
Load diff
30
config/examples/Monoprice/Maker Ultimate 2/v2.2.8/README.md
Normal file
30
config/examples/Monoprice/Maker Ultimate 2/v2.2.8/README.md
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
> Unmodified manufacturer config corresponding to official V2.2.8 firmware found here: [Weedo3D Monoprice Ultimate 2](https://github.com/WEEDO3DTECH/MonopriceUltimate2_Marlin)
|
||||
> Note that there are other modifications to the Marlin source code (in Weedo3D repo) that are not included here.
|
||||
> Some functions such as the door sensor are not implemented in Marlin, and these files may not build as-is.
|
||||
> This is strictly for posterity of the base machine definition.
|
||||
> At the least it requires the board and pin files in the parent folder.
|
||||
> *VZ 20260101*
|
||||
....................
|
||||
|
||||
# MonopriceUltimate2_Marlin
|
||||
|
||||
Monoprice Ultimate2 firmware base on <a href="https://github.com/MarlinFirmware/Marlin/tree/1.1.x" target="_blank">Marlin 1.1.x</a>
|
||||
|
||||
## Releases
|
||||
### V 2.2.8
|
||||
* Ultimate2 V2 factory firmware
|
||||
* Integration of Chinese, Japanese, English, French, German, Spanish and Italian languages, online dynamic switching.
|
||||
* Improved filament auto feed and retract functions, with dedicated interface and voice prompt.
|
||||
* Added stepper motor off function to prepare menu.
|
||||
* Added nozzle parking function when printing is paused.
|
||||
* Improved the Z-axis offset adjustment function.
|
||||
* Added the wizard function launched by first power on or restore.
|
||||
* Added switch options for runout sensor and front door sensor to the TUNE menu when printing.
|
||||
* Add boot sound prompt.
|
||||
* Serial port baud rate changed to 115200bps.
|
||||
* Added a selecting z-axis height menu before goto bed leveling menu. Ultimate2 V1 version corresponds to 165mm. Ultimate2 V2 version corresponds to 170mm.
|
||||
|
||||
### V 1.6
|
||||
* Ultimate2 V1 factory firmware
|
||||
|
||||
|
||||
1938
config/examples/Monoprice/Maker Ultimate 2/v2.2.9/Configuration.h
Normal file
1938
config/examples/Monoprice/Maker Ultimate 2/v2.2.9/Configuration.h
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
39
config/examples/Monoprice/Maker Ultimate 2/v2.2.9/README.md
Normal file
39
config/examples/Monoprice/Maker Ultimate 2/v2.2.9/README.md
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
> Modified manufacturer config running much closer to stock Marlin found here: [OstlerDev/Marlin_MonopriceUltimate2](https://github.com/OstlerDev/Marlin_MonopriceUltimate2)
|
||||
> Also requires the board and pin files in the parent folder.
|
||||
> *VZ 20260101*
|
||||
....................
|
||||
|
||||
# Marlin2_MonopriceUltimate2
|
||||
|
||||
Note: This fork tracks upstream Marlin 1.1.x for critical fixes. Upstream docs: [Marlin 1.1.x](https://github.com/MarlinFirmware/Marlin/tree/1.1.x).
|
||||
Original Manufacturer Firmware: https://github.com/WEEDO3DTECH/MonopriceUltimate2_Marlin
|
||||
|
||||
Monoprice Ultimate2 firmware base on <a href="https://github.com/MarlinFirmware/Marlin/tree/1.1.x" target="_blank">Marlin 1.1.x</a>
|
||||
|
||||
## Releases
|
||||
### V 3.0.0 (Marlin 1.1.9.2)
|
||||
* Pulled in bugfixes from Marlin 1.1.9 -> 1.1.9.2
|
||||
* Support for Mesh 3x3 Auto Bed Leveling instead of just 3 point ABL
|
||||
* Stock Marlin UI navigation!
|
||||
* Only kept machine settings, tossed out all the manufacturer bullshit.
|
||||
* Enabled Z_SAFE_HOMING
|
||||
|
||||
If you run into issues with disconnects after flashing, clear your EEPROM (`M502` then `M500`) so saved defaults don’t fight the new versions config.
|
||||
|
||||
### V 2.2.8 (Marlin 1.1.9)
|
||||
* Ultimate2 V2 factory firmware
|
||||
* Integration of Chinese, Japanese, English, French, German, Spanish and Italian languages, online dynamic switching.
|
||||
* Improved filament auto feed and retract functions, with dedicated interface and voice prompt.
|
||||
* Added stepper motor off function to prepare menu.
|
||||
* Added nozzle parking function when printing is paused.
|
||||
* Improved the Z-axis offset adjustment function.
|
||||
* Added the wizard function launched by first power on or restore.
|
||||
* Added switch options for runout sensor and front door sensor to the TUNE menu when printing.
|
||||
* Add boot sound prompt.
|
||||
* Serial port baud rate changed to 115200bps.
|
||||
* Added a selecting z-axis height menu before goto bed leveling menu. Ultimate2 V1 version corresponds to 165mm. Ultimate2 V2 version corresponds to 170mm.
|
||||
|
||||
### V 1.6
|
||||
* Ultimate2 V1 factory firmware
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue