From da3a0d619c17bd8b5874764282ee43b524197bde Mon Sep 17 00:00:00 2001 From: Alexey Shvetsov Date: Sun, 4 Feb 2018 12:15:09 +0300 Subject: [PATCH] Add Selena Compact board (#9407) 5-axis, high performance, powerful board with Smoothieware opensource firmware. Designed for 3D printer, Laser cutter or CNC mill. Five changed independent drivers on board. Two extruders 3d printer support. --- Marlin/src/core/boards.h | 1 + Marlin/src/pins/pins.h | 2 + Marlin/src/pins/pins_SELENA_COMPACT.h | 115 ++++++++++++++++++++++++++ README.md | 1 + 4 files changed, 119 insertions(+) create mode 100644 Marlin/src/pins/pins_SELENA_COMPACT.h diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h index 0f5085fd00b8..feeeaa37c50c 100644 --- a/Marlin/src/core/boards.h +++ b/Marlin/src/core/boards.h @@ -162,6 +162,7 @@ #define BOARD_AZSMZ_MINI 1751 // AZSMZ Mini #define BOARD_AZTEEG_X5_GT 1752 // Azteeg X5 GT (Power outputs: Hotend0, Hotend1, Bed, Fan) #define BOARD_BIQU_BQ111_A4 1753 // BIQU BQ111-A4 (Power outputs: Hotend, Fan, Bed) +#define BOARD_SELENA_COMPACT 1754 // Selena Compact (Power outputs: Hotend0, Hotend1, Bed0, Bed1, Fan0, Fan1) // // SAM3X8E ARM Cortex M3 diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h index e82343236025..b030850d2bc9 100644 --- a/Marlin/src/pins/pins.h +++ b/Marlin/src/pins/pins.h @@ -341,6 +341,8 @@ #include "pins_BIQU_BQ111_A4.h" #elif MB(THE_BORG) #include "pins_THE_BORG.h" +#elif MB(SELENA_COMPACT) + #include "pins_SELENA_COMPACT.h" #else #error "Unknown MOTHERBOARD value set in Configuration.h" #endif diff --git a/Marlin/src/pins/pins_SELENA_COMPACT.h b/Marlin/src/pins/pins_SELENA_COMPACT.h new file mode 100644 index 000000000000..104c7c8b9040 --- /dev/null +++ b/Marlin/src/pins/pins_SELENA_COMPACT.h @@ -0,0 +1,115 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * Copyright (C) 2017 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 . + * + */ + +/** + * Selena Compact pin assignments + */ + +#ifndef TARGET_LPC1768 + #error "Oops! Make sure you have LPC1768 selected." +#endif + +#ifndef BOARD_NAME + #define BOARD_NAME "Selena Compact" + #define DEFAULT_WEBSITE_URL "https://github.com/Ales2-k/Selena" +#endif + +// +// Limit Switches +// + +#define X_MIN_PIN P1_28 +#define X_MAX_PIN P1_25 +#define Y_MIN_PIN P2_11 +#define Y_MAX_PIN -1 +#define Z_MIN_PIN P1_27 +#define Z_MAX_PIN -1 +#define Z_PROBE P1_22 + +// +// Steppers +// +#define X_STEP_PIN P2_00 +#define X_DIR_PIN P0_05 +#define X_ENABLE_PIN P0_04 + +#define Y_STEP_PIN P2_01 +#define Y_DIR_PIN P0_11 +#define Y_ENABLE_PIN P0_10 + +#define Z_STEP_PIN P2_02 +#define Z_DIR_PIN P0_20 +#define Z_ENABLE_PIN P0_19 + +#define E0_STEP_PIN P2_03 +#define E0_DIR_PIN P0_22 +#define E0_ENABLE_PIN P0_21 + +#define E1_STEP_PIN P2_08 +#define E1_DIR_PIN P2_13 +#define E1_ENABLE_PIN P4_29 + +// +// Temperature Sensors +// 3.3V max when defined as an analog input +// +#define TEMP_BED_PIN 0 // A0 (TH1) +#define TEMP_0_PIN 1 // A1 (TH2) +#define TEMP_1_PIN 2 // A2 (TH3) + + +// +// Heaters / Fans +// + +#define HEATER_BED_PIN P2_05 +#define HEATER_BED2_PIN P2_04 +#define HEATER_0_PIN P2_07 +#define HEATER_1_PIN P2_06 +#define FAN_PIN P1_24 +#define FAN1_PIN P1_26 + +// +// Display +// + +#if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define LCD_PINS_RS P0_16 + #define LCD_PINS_ENABLE P0_18 + #define LCD_PINS_D4 P0_15 + #define LCD_PINS_D5 P1_00 + #define LCD_PINS_D6 P1_01 + #define LCD_PINS_D7 P1_04 + #define BEEPER_PIN P1_31 + + #define BTN_EN1 P3_25 + #define BTN_EN2 P3_26 + #define BTN_ENC P1_30 + + #define SD_DETECT_PIN -1 +#endif // REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + +// +// Servo +// +#define SERVO0_PIN P1_23 diff --git a/README.md b/README.md index cfe3eed45ec2..5fc12c3dd7d4 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ Marlin 2.0 adds a new abstraction layer so that Marlin can build and run on 32-b [Re-ARM](https://www.kickstarter.com/projects/1245051645/re-arm-for-ramps-simple-32-bit-upgrade)|[LPC1768 ARM-Cortex M3](http://www.nxp.com/products/microcontrollers-and-processors/arm-based-processors-and-mcus/lpc-cortex-m-mcus/lpc1700-cortex-m3/512kb-flash-64kb-sram-ethernet-usb-lqfp100-package:LPC1768FBD100)|100MHz|512k|32+16+16k|3.3-5V|no [MKS SBASE](http://forums.reprap.org/read.php?13,499322)|LPC1768 ARM-Cortex M3|100MHz|512k|32+16+16k|3.3-5V|no [Azteeg X5 GT](https://www.panucatt.com/azteeg_X5_GT_reprap_3d_printer_controller_p/ax5gt.htm)|LPC1769 ARM-Cortex M3|120MHz|512k|32+16+16k|3.3-5V|no + [Selena Compact](https://github.com/Ales2-k/Selena)|LPC1768 ARM-Cortex M3|100MHz|512k|32+16+16k|3.3-5V|no [Teensy 3.5](https://www.pjrc.com/store/teensy35.html)|ARM-Cortex M4|120MHz|512k|192k|3.3-5V|yes [Teensy 3.6](https://www.pjrc.com/store/teensy36.html)|ARM-Cortex M4|180MHz|1M|256k|3.3V|yes