Repetier-Firmware  0.91
src/ArduinoAVR/Repetier/pins.h
Go to the documentation of this file.
00001 #ifndef PINS_H
00002 #define PINS_H
00003 
00004 /*
00005 The board assignment defines the capabilities of the motherboard and the used pins.
00006 Each board definition follows the following scheme:
00007 
00008 CPU_ARCH
00009   ARCH_AVR for AVR based boards
00010   ARCH_ARM for all arm based boards
00011 
00012 STEPPER_CURRENT_CONTROL
00013   CURRENT_CONTROL_MANUAL  1  // mechanical poti, default if not defined
00014   CURRENT_CONTROL_DIGIPOT 2  // Use a digipot like RAMBO does
00015   CURRENT_CONTROL_LTC2600 3  // Use LTC2600 like Foltyn 3D Master
00016 
00017 */
00018 
00019 #define ARCH_AVR 1
00020 #define ARCH_ARM 2
00021 
00022 #define CURRENT_CONTROL_MANUAL  1  // mechanical poti, default if not defined
00023 #define CURRENT_CONTROL_DIGIPOT 2  // Use a digipot like RAMBO does
00024 #define CURRENT_CONTROL_LTC2600 3  // Use LTC2600 like Foltyn 3D Master
00025 
00026 /****************************************************************************************
00027 * Arduino pin assignment
00028 *
00029 *                  ATMega168
00030 *                   +-\/-+
00031 *             PC6  1|    |28  PC5 (AI 5 / D19)
00032 *       (D 0) PD0  2|    |27  PC4 (AI 4 / D18)
00033 *       (D 1) PD1  3|    |26  PC3 (AI 3 / D17)
00034 *       (D 2) PD2  4|    |25  PC2 (AI 2 / D16)
00035 *  PWM+ (D 3) PD3  5|    |24  PC1 (AI 1 / D15)
00036 *       (D 4) PD4  6|    |23  PC0 (AI 0 / D14)
00037 *             VCC  7|    |22  GND
00038 *             GND  8|    |21  AREF
00039 *             PB6  9|    |20  AVCC
00040 *             PB7 10|    |19  PB5 (D 13)
00041 *  PWM+ (D 5) PD5 11|    |18  PB4 (D 12)
00042 *  PWM+ (D 6) PD6 12|    |17  PB3 (D 11) PWM
00043 *       (D 7) PD7 13|    |16  PB2 (D 10) PWM
00044 *       (D 8) PB0 14|    |15  PB1 (D 9)  PWM
00045 *                   +----+
00046 ****************************************************************************************/
00047 #if MOTHERBOARD == 0
00048 #define KNOWN_BOARD 1
00049 
00050 #ifndef __AVR_ATmega168__
00051 #error Oops!  Make sure you have 'Arduino Diecimila' selected from the boards menu.
00052 #endif
00053 
00054 #define X_STEP_PIN          2
00055 #define X_DIR_PIN           3
00056 #define X_ENABLE_PIN       -1
00057 #define X_MIN_PIN           4
00058 #define X_MAX_PIN           9
00059 
00060 #define Y_STEP_PIN         10
00061 #define Y_DIR_PIN           7
00062 #define Y_ENABLE_PIN       -1
00063 #define Y_MIN_PIN           8
00064 #define Y_MAX_PIN          13
00065 
00066 #define Z_STEP_PIN         19
00067 #define Z_DIR_PIN          18
00068 #define Z_ENABLE_PIN        5
00069 #define Z_MIN_PIN          17
00070 #define Z_MAX_PIN          16
00071 
00072 #define E0_STEP_PIN         11
00073 #define E0_DIR_PIN          12
00074 #define E0_ENABLE_PIN       -1
00075 
00076 #define SDPOWER          -1
00077 #define SDSS          -1
00078 #define LED_PIN            -1
00079 #define FAN_PIN            -1
00080 #define PS_ON_PIN          15
00081 
00082 #define HEATER_0_PIN        6
00083 #define TEMP_0_PIN          0    // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00084 
00085 
00086 #endif
00087 
00088 
00089 
00090 /****************************************************************************************
00091 * Sanguino/RepRap Motherboard with direct-drive extruders
00092 *
00093 *                        ATMega644P
00094 *
00095 *                        +---\/---+
00096 *            (D 0) PB0  1|        |40  PA0 (AI 0 / D31)
00097 *            (D 1) PB1  2|        |39  PA1 (AI 1 / D30)
00098 *       INT2 (D 2) PB2  3|        |38  PA2 (AI 2 / D29)
00099 *        PWM (D 3) PB3  4|        |37  PA3 (AI 3 / D28)
00100 *        PWM (D 4) PB4  5|        |36  PA4 (AI 4 / D27)
00101 *       MOSI (D 5) PB5  6|        |35  PA5 (AI 5 / D26)
00102 *       MISO (D 6) PB6  7|        |34  PA6 (AI 6 / D25)
00103 *        SCK (D 7) PB7  8|        |33  PA7 (AI 7 / D24)
00104 *                  RST  9|        |32  AREF
00105 *                  VCC 10|        |31  GND
00106 *                  GND 11|        |30  AVCC
00107 *                XTAL2 12|        |29  PC7 (D 23)
00108 *                XTAL1 13|        |28  PC6 (D 22)
00109 *       RX0 (D 8)  PD0 14|        |27  PC5 (D 21) TDI
00110 *       TX0 (D 9)  PD1 15|        |26  PC4 (D 20) TDO
00111 *  INT0 RX1 (D 10) PD2 16|        |25  PC3 (D 19) TMS
00112 *  INT1 TX1 (D 11) PD3 17|        |24  PC2 (D 18) TCK
00113 *       PWM (D 12) PD4 18|        |23  PC1 (D 17) SDA
00114 *       PWM (D 13) PD5 19|        |22  PC0 (D 16) SCL
00115 *       PWM (D 14) PD6 20|        |21  PD7 (D 15) PWM
00116 *                        +--------+
00117 *
00118 ****************************************************************************************/
00119 #if MOTHERBOARD == 1
00120 #define KNOWN_BOARD 1
00121 
00122 #ifndef __AVR_ATmega644P__
00123 #error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00124 #endif
00125 
00126 #define X_STEP_PIN         15
00127 #define X_DIR_PIN          18
00128 #define X_ENABLE_PIN       19
00129 #define X_MIN_PIN          20
00130 #define X_MAX_PIN          21
00131 
00132 #define Y_STEP_PIN         23
00133 #define Y_DIR_PIN          22
00134 #define Y_ENABLE_PIN       19
00135 #define Y_MIN_PIN          25
00136 #define Y_MAX_PIN          26
00137 
00138 #define Z_STEP_PIN         29
00139 #define Z_DIR_PIN          30
00140 #define Z_ENABLE_PIN       31
00141 #define Z_MIN_PIN           2
00142 #define Z_MAX_PIN           1
00143 
00144 #define E0_STEP_PIN         12
00145 #define E0_DIR_PIN          16
00146 #define E0_ENABLE_PIN        3
00147 
00148 #define SDPOWER          -1
00149 #define SDSS          -1
00150 #define LED_PIN             0
00151 #define FAN_PIN            -1
00152 #define PS_ON_PIN          -1
00153 
00154 #define HEATER_0_PIN       14
00155 #define TEMP_0_PIN          4 //D27   // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00156 #define HEATER_1_PIN   -1
00157 #define TEMP_1_PIN     -1
00158 #define HEATER_2_PIN   -1
00159 #define TEMP_2_PIN     -1
00160 
00161 /*  Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31)  */
00162 
00163 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00164 #define E1_PINS
00165 
00166 
00167 #endif
00168 
00169 
00170 /****************************************************************************************
00171 * RepRap Motherboard  ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---*******
00172 *
00173 ****************************************************************************************/
00174 #if MOTHERBOARD == 2
00175 #define KNOWN_BOARD 1
00176 
00177 #ifndef __AVR_ATmega644P__
00178 #error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00179 #endif
00180 
00181 #define X_STEP_PIN      15
00182 #define X_DIR_PIN       18
00183 #define X_ENABLE_PIN    19
00184 #define X_MIN_PIN       20
00185 #define X_MAX_PIN       21
00186 
00187 #define Y_STEP_PIN      23
00188 #define Y_DIR_PIN       22
00189 #define Y_ENABLE_PIN    24
00190 #define Y_MIN_PIN       25
00191 #define Y_MAX_PIN       26
00192 
00193 #define Z_STEP_PINN     27
00194 #define Z_DIR_PINN      28
00195 #define Z_ENABLE_PIN    29
00196 #define Z_MIN_PIN       30
00197 #define Z_MAX_PIN       31
00198 
00199 #define E0_STEP_PIN      17
00200 #define E0_DIR_PIN       16
00201 #define E0_ENABLE_PIN    -1
00202 
00203 #define SDPOWER          -1
00204 #define SDSS          4
00205 #define LED_PIN          0
00206 
00207 #define SD_CARD_WRITE    2
00208 #define SD_CARD_DETECT   3
00209 #define SD_CARD_SELECT   4
00210 
00211 //our RS485 pins
00212 #define TX_ENABLE_PIN   12
00213 #define RX_ENABLE_PIN   13
00214 
00215 //pin for controlling the PSU.
00216 #define PS_ON_PIN       14
00217 
00218 #define FAN_PIN         -1
00219 
00220 #define HEATER_0_PIN    -1
00221 #define TEMP_0_PIN      -1    // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00222 
00223 
00224 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00225 #define E1_PINS
00226 
00227 
00228 #endif
00229 
00230 /****************************************************************************************
00231 * Gen3 PLUS for RepRap Motherboard V1.2
00232 *
00233 ****************************************************************************************/
00234 #if MOTHERBOARD == 21
00235 #define KNOWN_BOARD 1
00236 
00237 #ifndef __AVR_ATmega644P__
00238 #error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00239 #endif
00240 
00241 //x axis pins
00242 #define X_STEP_PIN      15
00243 #define X_DIR_PIN       18
00244 #define X_ENABLE_PIN    19
00245 #define X_MIN_PIN       20
00246 #define X_MAX_PIN       -1
00247 
00248 //y axis pins
00249 #define Y_STEP_PIN      23
00250 #define Y_DIR_PIN       22
00251 #define Y_ENABLE_PIN    24
00252 #define Y_MIN_PIN       25
00253 #define Y_MAX_PIN       -1
00254 
00255 //z axis pins
00256 #define Z_STEP_PIN      27
00257 #define Z_DIR_PIN       28
00258 #define Z_ENABLE_PIN    29
00259 #define Z_MIN_PIN       30
00260 #define Z_MAX_PIN       -1
00261 
00262 #define E0_DIR_PIN       21
00263 #define E0_STEP_PIN  17
00264 #define E0_ENABLE_PIN  13
00265 
00266 //heaters
00267 #define HEATER_0_PIN  12    // hot end heater
00268 #define HEATER_1_PIN   16    // heated bed heater
00269 #define HEATER_2_PIN   -1
00270 #define TEMP_2_PIN     -1
00271 
00272 //pin for debugging.
00273 #define DEBUG_PIN        -1
00274 //SD card pin
00275 #define SDSS      4
00276 #define SDPOWER          -1
00277 #define FAN_PIN          -1
00278 #define TEMP_0_PIN        0
00279 #define TEMP_1_PIN        5
00280 #define LED_PIN          -1
00281 
00282 //pin for controlling the PSU.
00283 #define PS_ON_PIN       14
00284 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00285 #define E1_PINS
00286 #endif
00287 //----------end Gen3 PLUS for RepRap Motherboard V1.2--------------
00288 
00289 /****************************************************************************************
00290 * Arduino Mega pin assignment
00291 *
00292 ****************************************************************************************/
00293 #if MOTHERBOARD == 33
00294 #define MOTHERBOARD 3
00295 #define RAMPS_V_1_3
00296 #elif MOTHERBOARD == 34
00297 #define MOTHERBOARD 3
00298 #define RAMPS_V_1_3
00299 #define AZTEEG_X3
00300 #endif
00301 #if MOTHERBOARD == 3
00302 #define KNOWN_BOARD 1
00303 
00305 #ifndef __AVR_ATmega1280__
00306 #ifndef __AVR_ATmega2560__
00307 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
00308 #endif
00309 #endif
00310 
00311 // uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1
00312 // #define RAMPS_V_1_3
00313 // #define RAMPS_V_1_0
00314 
00315 #ifdef RAMPS_V_1_3
00316 
00317 #define X_STEP_PIN         54
00318 #define X_DIR_PIN          55
00319 #define X_ENABLE_PIN       38
00320 #define X_MIN_PIN          3
00321 #define X_MAX_PIN          2
00322 
00323 #define Y_STEP_PIN         60
00324 #define Y_DIR_PIN          61
00325 #define Y_ENABLE_PIN       56
00326 #define Y_MIN_PIN          14
00327 #define Y_MAX_PIN          15
00328 
00329 #define Z_STEP_PIN         46
00330 #define Z_DIR_PIN          48
00331 #define Z_ENABLE_PIN       62
00332 #define Z_MIN_PIN          18
00333 #define Z_MAX_PIN          19
00334 
00335 #define E0_STEP_PIN         26
00336 #define E0_DIR_PIN          28
00337 #define E0_ENABLE_PIN       24
00338 
00339 #define E1_STEP_PIN         36
00340 #define E1_DIR_PIN          34
00341 #define E1_ENABLE_PIN       30
00342 
00343 #define SDPOWER            -1
00344 #define SDSS               53
00345 #define SDCARDDETECT        49
00346 
00347 #define LED_PIN            13
00348 #define FAN_PIN            9
00349 #define PS_ON_PIN          12
00350 
00351 #define HEATER_0_PIN       10
00352 #define HEATER_1_PIN       8
00353 #define HEATER_2_PIN       9
00354 #define TEMP_0_PIN         13   // ANALOG NUMBERING
00355 #define TEMP_1_PIN         14   // ANALOG NUMBERING
00356 #define TEMP_2_PIN         15
00357 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00358 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
00359 
00360 
00361 #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default
00362 
00363 #define X_STEP_PIN         26
00364 #define X_DIR_PIN          28
00365 #define X_ENABLE_PIN       24
00366 #define X_MIN_PIN           3
00367 #define X_MAX_PIN          -1    //2
00368 
00369 #define Y_STEP_PIN         38
00370 #define Y_DIR_PIN          40
00371 #define Y_ENABLE_PIN       36
00372 #define Y_MIN_PIN          16
00373 #define Y_MAX_PIN          -1    //17
00374 
00375 #define Z_STEP_PIN         44
00376 #define Z_DIR_PIN          46
00377 #define Z_ENABLE_PIN       42
00378 #define Z_MIN_PIN          18
00379 #define Z_MAX_PIN          -1    //19
00380 
00381 #define E0_STEP_PIN         32
00382 #define E0_DIR_PIN          34
00383 #define E0_ENABLE_PIN       30
00384 
00385 #define SDPOWER            48
00386 #define SDSS               53
00387 #define LED_PIN            13
00388 #define PS_ON_PIN          -1
00389 //#define SCL                21
00390 //#define SDA                20
00391 
00392 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00393 #define E1_PINS
00394 
00395 
00396 #ifdef RAMPS_V_1_0 // RAMPS_V_1_0
00397 #define HEATER_0_PIN     12    // RAMPS 1.0
00398 #define HEATER_1_PIN     -1    // RAMPS 1.0
00399 #define FAN_PIN          11    // RAMPS 1.0
00400 
00401 #else // RAMPS_V_1_1 or RAMPS_V_1_2
00402 #define HEATER_0_PIN     10    // RAMPS 1.1
00403 #define HEATER_1_PIN      8    // RAMPS 1.1
00404 #define FAN_PIN           9    // RAMPS 1.1
00405 #endif
00406 
00407 #define TEMP_0_PIN          2    // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00408 #define TEMP_1_PIN          1    // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00409 #endif
00410 
00411 // SPI for Max6675 Thermocouple
00412 
00413 // these pins are defined in the SD library if building with SD support
00414 #define SCK_PIN          52
00415 #define MISO_PIN         50
00416 #define MOSI_PIN         51
00417 #define MAX6675_SS       53
00418 
00419 #ifdef AZTEEG_X3
00420 #define SDSUPPORT true
00421 #define SDCARDDETECTINVERTED false
00422 #define SDCARDDETECT 49
00423 #define FAN_PIN           4
00424 #define FAN2_PIN          5
00425 #define LIGHT_PIN         6
00426 #define BEEPER_PIN        33  // Activate beeper on extension shield
00427 #define BEEPER_TYPE        1
00428 
00429 #define E2_STEP_PIN         27  // Only available with X3 shield
00430 #define E2_DIR_PIN          29  // Only available with X3 shield
00431 #define E2_ENABLE_PIN       41  // Only available with X3 shield
00432 #define E3_STEP_PIN         23  // Only available with X3 shield
00433 #define E3_DIR_PIN          25  // Only available with X3 shield
00434 #define E3_ENABLE_PIN       40  // Only available with X3 shield
00435 #define HEATER_3_PIN        17  // Only available with X3 shield
00436 #define TEMP_3_PIN          12  // Only available with X3 shield
00437 #define HEATER_4_PIN        16  // Only available with X3 shield
00438 #define TEMP_4_PIN          5 //11  // Only available with X3 shield
00439 
00440 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
00441 #define E2_PINS E2_STEP_PIN,E2_DIR_PIN,E2_ENABLE_PIN,
00442 #define E3_PINS E3_STEP_PIN,E3_DIR_PIN,E3_ENABLE_PIN,
00443 
00444 #endif
00445 #endif
00446 
00447 /****************************************************************************************
00448 * RUMBA pin assignment
00449 *
00450 ****************************************************************************************/
00451 #if MOTHERBOARD == 80
00452 #define KNOWN_BOARD 1
00453 
00454 #ifndef __AVR_ATmega2560__
00455 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
00456 #endif
00457 
00458 #define X_STEP_PIN         17
00459 #define X_DIR_PIN          16
00460 #define X_ENABLE_PIN       48
00461 #define X_MIN_PIN          37
00462 #define X_MAX_PIN          36   //Max endstops default to disabled "-1"
00463 
00464 #define Y_STEP_PIN         54
00465 #define Y_DIR_PIN          47
00466 #define Y_ENABLE_PIN       55
00467 #define Y_MIN_PIN          35
00468 #define Y_MAX_PIN          34
00469 
00470 #define Z_STEP_PIN         57
00471 #define Z_DIR_PIN          56
00472 #define Z_ENABLE_PIN       62
00473 #define Z_MIN_PIN          33
00474 #define Z_MAX_PIN          32
00475 
00476 #define E0_STEP_PIN         23
00477 #define E0_DIR_PIN          22
00478 #define E0_ENABLE_PIN       24
00479 
00480 #define E1_STEP_PIN        26
00481 #define E1_DIR_PIN         25
00482 #define E1_ENABLE_PIN      27
00483 
00484 #define E2_STEP_PIN        29
00485 #define E2_DIR_PIN         28
00486 #define E2_ENABLE_PIN      39
00487 
00488 #define LED_PIN            13
00489 
00490 #define FAN_PIN            7
00491 #define FAN1 PIN  8 // (e.g. useful for electronics fan or light on/off) on PIN 8
00492 
00493 #define PS_ON_PIN          45
00494 
00495 #define HEATER_0_PIN       2    // EXTRUDER 1
00496 #define HEATER_2_PIN       3    // EXTRUDER 2
00497 #define HEATER_3_PIN       6    // EXTRUDER 3
00498 //optional FAN1 can be used as 4th heater output: #define HEATER_4_PIN       8    // EXTRUDER 4
00499 #define HEATER_1_PIN       9    // BED
00500 
00501 #define TEMP_0_PIN         15   // ANALOG NUMBERING
00502 #define TEMP_2_PIN         14   // ANALOG NUMBERING
00503 #define TEMP_3_PIN         13   // ANALOG NUMBERING
00504 //optional for extruder 4 or chamber: #define TEMP_2_PIN         12   // ANALOG NUMBERING
00505 #define TEMP_1_PIN       11   // ANALOG NUMBERING
00506 
00507 #define SDPOWER            -1
00508 #define SDSS               53
00509 #define SCK_PIN          52
00510 #define MISO_PIN         50
00511 #define MOSI_PIN         51
00512 
00513 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00514 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
00515 #define E2_PINS E2_STEP_PIN,E2_DIR_PIN,E2_ENABLE_PIN,
00516 
00517 #endif //MOTHERBOARD==80
00518 
00519 /****************************************************************************************
00520 * Duemilanove w/ ATMega328P pin assignment
00521 *
00522 ****************************************************************************************/
00523 #if MOTHERBOARD == 4
00524 #define KNOWN_BOARD 1
00525 
00526 #ifndef __AVR_ATmega328P__
00527 #error Oops!  Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu.
00528 #endif
00529 
00530 #define X_STEP_PIN         19
00531 #define X_DIR_PIN          18
00532 #define X_ENABLE_PIN       -1
00533 #define X_MIN_PIN          17
00534 #define X_MAX_PIN          -1
00535 
00536 #define Y_STEP_PIN         10
00537 #define Y_DIR_PIN           7
00538 #define Y_ENABLE_PIN       -1
00539 #define Y_MIN_PIN           8
00540 #define Y_MAX_PIN          -1
00541 
00542 #define Z_STEP_PIN         13
00543 #define Z_DIR_PIN           3
00544 #define Z_ENABLE_PIN        2
00545 #define Z_MIN_PIN           4
00546 #define Z_MAX_PIN          -1
00547 
00548 #define E0_STEP_PIN         11
00549 #define E0_DIR_PIN          12
00550 #define E0_ENABLE_PIN       -1
00551 
00552 #define SDPOWER          -1
00553 #define SDSS          -1
00554 #define LED_PIN            -1
00555 #define FAN_PIN             5
00556 #define PS_ON_PIN          -1
00557 
00558 #define HEATER_0_PIN        6
00559 #define TEMP_0_PIN          0    // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
00560 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00561 #define E1_PINS
00562 
00563 
00564 #endif
00565 
00566 /****************************************************************************************
00567 * Gen6 pin assignment (5) and Gen6 deluxe assignment (51)
00568 *
00569 ****************************************************************************************/
00570 #if MOTHERBOARD == 5 || MOTHERBOARD == 51
00571 #define KNOWN_BOARD 1
00572 
00573 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__)
00574 #error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00575 #endif
00576 
00577 //x axis pins
00578 #define X_STEP_PIN      15
00579 #define X_DIR_PIN       18
00580 #define X_ENABLE_PIN    19
00581 #define X_MIN_PIN       20
00582 #define X_MAX_PIN       -1
00583 
00584 //y axis pins
00585 #define Y_STEP_PIN      23
00586 #define Y_DIR_PIN       22
00587 #define Y_ENABLE_PIN    24
00588 #define Y_MIN_PIN       25
00589 #define Y_MAX_PIN       -1
00590 
00591 //z axis pins
00592 #define Z_STEP_PIN      27
00593 #define Z_DIR_PIN       28
00594 #define Z_ENABLE_PIN    29
00595 #define Z_MIN_PIN       30
00596 #define Z_MAX_PIN       -1
00597 
00598 //extruder pins
00599 #define E0_STEP_PIN      4     //Edited @ EJE Electronics 20100715
00600 #define E0_DIR_PIN       2     //Edited @ EJE Electronics 20100715
00601 #define E0_ENABLE_PIN    3     //Added @ EJE Electronics 20100715
00602 #define TEMP_0_PIN      5     //changed @ rkoeppl 20110410
00603 #define HEATER_0_PIN    14    //changed @ rkoeppl 20110410
00604 #if MOTHERBOARD == 5
00605 #define HEATER_1_PIN  -1    //changed @ rkoeppl 20110410
00606 #define TEMP_1_PIN    -1    //changed @ rkoeppl 20110410
00607 #else
00608 #define HEATER_1_PIN   1    //changed @ rkoeppl 20110410
00609 #define TEMP_1_PIN     0    //changed @ rkoeppl 20110410
00610 #endif
00611 #define HEATER_2_PIN   -1
00612 #define TEMP_2_PIN     -1
00613 
00614 
00615 #define SDPOWER          -1
00616 #define SDSS          16 // SCL pin of I2C header
00617 #define LED_PIN         -1    //changed @ rkoeppl 20110410
00618 #define FAN_PIN         -1    //changed @ rkoeppl 20110410
00619 #define PS_ON_PIN       -1    //changed @ rkoeppl 20110410
00620 //our pin for debugging.
00621 
00622 #define DEBUG_PIN        0
00623 
00624 //our RS485 pins
00625 #define TX_ENABLE_PIN   12
00626 #define RX_ENABLE_PIN   13
00627 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00628 #define E1_PINS
00629 
00630 #define SCK_PIN          7
00631 #define MISO_PIN         6
00632 #define MOSI_PIN         5
00633 
00634 // #define SCL 16
00635 // #define SDA 17
00636 
00637 #endif
00638 /****************************************************************************************
00639 * Sanguinololu pin assignment
00640 *
00641 ****************************************************************************************/
00642 #if MOTHERBOARD == 62
00643 #define MOTHERBOARD 6
00644 #define SANGUINOLOLU_V_1_2
00645 #endif
00646 #if MOTHERBOARD == 6
00647 #define KNOWN_BOARD 1
00648 //#ifndef __AVR_ATmega644P__
00649 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__)
00650 #error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00651 #endif
00652 
00653 #define X_STEP_PIN         15
00654 #define X_DIR_PIN          21
00655 #define X_MIN_PIN          18
00656 #define X_MAX_PIN           -2
00657 
00658 #define Y_STEP_PIN         22
00659 #define Y_DIR_PIN          23
00660 #define Y_MIN_PIN          19
00661 #define Y_MAX_PIN          -1
00662 
00663 #define Z_STEP_PIN         3
00664 #define Z_DIR_PIN          2
00665 #define Z_MIN_PIN          20
00666 #define Z_MAX_PIN          -1
00667 
00668 #define E0_STEP_PIN         1
00669 #define E0_DIR_PIN          0
00670 
00671 #define LED_PIN            -1
00672 
00673 #define FAN_PIN            -1
00674 
00675 #define PS_ON_PIN          -1
00676 
00677 #define HEATER_0_PIN       13 // (extruder)
00678 
00679 #ifdef SANGUINOLOLU_V_1_2
00680 
00681 #define HEATER_1_PIN       12 // (bed)
00682 #define X_ENABLE_PIN       14
00683 #define Y_ENABLE_PIN       14
00684 #define Z_ENABLE_PIN       26
00685 #define E0_ENABLE_PIN       14
00686 
00687 #else
00688 
00689 #define HEATER_1_PIN       14  // (bed)
00690 #define X_ENABLE_PIN       -1
00691 #define Y_ENABLE_PIN       -1
00692 #define Z_ENABLE_PIN       -1
00693 #define E0_ENABLE_PIN       -1
00694 
00695 #endif
00696 
00697 #define TEMP_0_PIN          7   // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
00698 #define TEMP_1_PIN          6   // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
00699 #define SDPOWER          -1
00700 #define SDSS          31
00701 #define SCK_PIN          7
00702 #define MISO_PIN         6
00703 #define MOSI_PIN         5
00704 #define HEATER_2_PIN   -1
00705 #define TEMP_2_PIN     -1
00706 
00707 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00708 #define E1_PINS
00709 
00710 #ifndef KNOWN_BOARD
00711 #error Unknown MOTHERBOARD value in configuration.h
00712 #endif
00713 
00714 #endif
00715 
00716 /****************************************************************************************
00717 * Melzi pin assignment
00718 *
00719 ****************************************************************************************/
00720 #if MOTHERBOARD == 63
00721 #define KNOWN_BOARD 1
00722 #ifndef __AVR_ATmega644P__
00723 #ifndef __AVR_ATmega1284P__
00724 //#error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
00725 #endif
00726 #endif
00727 
00728 #define X_STEP_PIN         15
00729 #define X_DIR_PIN          21
00730 #define X_MIN_PIN          18
00731 #define X_MAX_PIN           -2
00732 
00733 #define Y_STEP_PIN         22
00734 #define Y_DIR_PIN          23
00735 #define Y_MIN_PIN          19
00736 #define Y_MAX_PIN          -1
00737 
00738 #define Z_STEP_PIN         3
00739 #define Z_DIR_PIN          2
00740 #define Z_MIN_PIN          20
00741 #define Z_MAX_PIN          -1
00742 
00743 #define E0_STEP_PIN         1
00744 #define E0_DIR_PIN          0
00745 #define E0_ENABLE_PIN      14
00746 
00747 #define PROBE_PIN          -1    //29 on Melzi1284p A2
00748 
00749 #define LED_PIN            27
00750 
00751 #define FAN_PIN            4
00752 
00753 #define PS_ON_PIN          -1
00754 
00755 #define HEATER_0_PIN       13 // (extruder)
00756 #define HEATER_2_PIN       -1
00757 #ifdef REPRAPPRO_HUXLEY
00758 #define HEATER_1_PIN     10 // bed (change to 10 for gate pin of MOSFET on heated bed)
00759 #else
00760 #define HEATER_1_PIN     12
00761 #endif
00762 #define X_ENABLE_PIN       14
00763 #define Y_ENABLE_PIN       14
00764 #define Z_ENABLE_PIN       26
00765 
00766 #define TEMP_0_PIN          7   // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
00767 #define TEMP_1_PIN          6   // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
00768 #define TEMP_2_PIN         -1
00769 #define SDPOWER            -1
00770 #define SDSS               31 // 31 http://reprap.org/wiki/Melzi#Melzi_Arduino_Pin_Numbers says 31, schamtic show pin 37 = PA0 which is arduino pin 31!
00771 #define SCK_PIN          7
00772 #define MISO_PIN         6
00773 #define MOSI_PIN         5
00774 #define SDSUPPORT true  // sd card reader on board
00775 #define SDCARDDETECT -1
00776 
00777 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00778 #define E1_PINS
00779 
00780 #endif
00781 
00782 /****************************************************************************************
00783 * Gen7 1.1 and above pin assignment
00784 *
00785 ****************************************************************************************/
00786 #if MOTHERBOARD == 7
00787 #define KNOWN_BOARD 1
00788 
00789 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
00790 #error Oops!  Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
00791 #endif
00792 
00793 //x axis pins
00794 #define X_STEP_PIN      19
00795 #define X_DIR_PIN       18
00796 #define X_ENABLE_PIN    24
00797 #define X_MIN_PIN       7
00798 #define X_MAX_PIN       6
00799 
00800 //y axis pins
00801 #define Y_STEP_PIN      23
00802 #define Y_DIR_PIN       22
00803 #define Y_ENABLE_PIN    24
00804 #define Y_MIN_PIN       5
00805 #define Y_MAX_PIN       2
00806 
00807 //z axis pins
00808 #define Z_STEP_PIN      26
00809 #define Z_DIR_PIN       25
00810 #define Z_ENABLE_PIN    24
00811 #define Z_MIN_PIN       1
00812 #define Z_MAX_PIN       0
00813 
00814 //extruder pins
00815 #define E0_STEP_PIN      28
00816 #define E0_DIR_PIN       27
00817 #define E0_ENABLE_PIN    24
00818 #define TEMP_0_PIN      1
00819 #define TEMP_1_PIN      2
00820 #define HEATER_0_PIN    4
00821 #define HEATER_1_PIN    3
00822 #define HEATER_2_PIN   -1
00823 #define TEMP_2_PIN     -1
00824 
00825 
00826 #define SDPOWER          -1
00827 #define SDSS          -1 // SCL pin of I2C header
00828 #define LED_PIN         -1
00829 
00830 #define FAN_PIN         31
00831 #define PS_ON_PIN       15
00832 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00833 #define E1_PINS
00834 
00835 //our pin for debugging.
00836 
00837 #define DEBUG_PIN        0
00838 
00839 //our RS485 pins
00840 #define TX_ENABLE_PIN   12
00841 #define RX_ENABLE_PIN   13
00842 
00843 #define SCK_PIN          7
00844 #define SDSSORIG         4
00845 #define MISO_PIN         6
00846 #define MOSI_PIN         5
00847 
00848 #endif
00849 /****************************************************************************************
00850 * Gen7 1.4.1 pin assignment
00851 *
00852 ****************************************************************************************/
00853 #if MOTHERBOARD == 71
00854 #define KNOWN_BOARD 1
00855 
00856 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
00857 #error Oops!  Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
00858 #endif
00859 
00860 //x axis pins
00861 #define X_STEP_PIN      29
00862 #define X_DIR_PIN       28
00863 #define X_ENABLE_PIN    25
00864 #define X_MIN_PIN       0
00865 #define X_MAX_PIN       -1
00866 
00867 //y axis pins
00868 #define Y_STEP_PIN      27
00869 #define Y_DIR_PIN       26
00870 #define Y_ENABLE_PIN    25
00871 #define Y_MIN_PIN       1
00872 #define Y_MAX_PIN       -1
00873 
00874 //z axis pins
00875 #define Z_STEP_PIN      23
00876 #define Z_DIR_PIN       22
00877 #define Z_ENABLE_PIN    25
00878 #define Z_MIN_PIN       2
00879 #define Z_MAX_PIN       -1
00880 
00881 //extruder pins
00882 #define E0_STEP_PIN      19
00883 #define E0_DIR_PIN       18
00884 #define E0_ENABLE_PIN    25
00885 #define TEMP_0_PIN      1
00886 #define TEMP_1_PIN      0
00887 #define HEATER_0_PIN    4
00888 #define HEATER_1_PIN    3
00889 #define HEATER_2_PIN   -1
00890 #define TEMP_2_PIN     -1
00891 
00892 
00893 #define SDPOWER          -1
00894 #define SDSS            -1
00895 #define LED_PIN         -1
00896 
00897 #define FAN_PIN         -1
00898 #define PS_ON_PIN       15
00899 //our pin for debugging.
00900 
00901 #define DEBUG_PIN        0
00902 
00903 //our RS485 pins
00904 #define TX_ENABLE_PIN   12
00905 #define RX_ENABLE_PIN   13
00906 
00907 #define SDPOWER          -1
00908 #define SDSS          -1
00909 #define SDSSORIG         4  // Needs to set this to output to enable SPI even if other SS is used!
00910 
00911 #define SCK_PIN          7
00912 #define MISO_PIN         6
00913 #define MOSI_PIN         5
00914 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00915 #define E1_PINS
00916 #endif
00917 
00918 /****************************************************************************************
00919 * Sethi 3D_1 Extruder
00920 *
00921 ****************************************************************************************/
00922 #if MOTHERBOARD == 72
00923 #define KNOWN_BOARD 1
00924 
00925 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
00926     #error Oops!  Make sure you have 'Sethi' selected from the 'Tools -> Boards' menu.
00927 #endif
00928 
00929 //x axis pins
00930 #define X_STEP_PIN      19
00931 #define X_DIR_PIN       18
00932 #define X_ENABLE_PIN    24
00933 #define X_MIN_PIN       2
00934 #define X_MAX_PIN       6
00935 
00936 //y axis pins
00937 #define Y_STEP_PIN      23
00938 #define Y_DIR_PIN       22
00939 #define Y_ENABLE_PIN    24
00940 #define Y_MIN_PIN       0
00941 #define Y_MAX_PIN       2
00942 
00943 //z axis pins
00944 #define Z_STEP_PIN      26
00945 #define Z_DIR_PIN       25
00946 #define Z_ENABLE_PIN    24
00947 #define Z_MIN_PIN       1
00948 #define Z_MAX_PIN       0
00949 
00950 //extruder pins
00951 #define E0_STEP_PIN      28
00952 #define E0_DIR_PIN       27
00953 #define E0_ENABLE_PIN    24
00954 #define TEMP_0_PIN      1
00955 #define TEMP_1_PIN      2
00956 #define HEATER_0_PIN    4
00957 #define HEATER_1_PIN    3
00958 
00959 
00960 #define SDPOWER          -1
00961 #define SDSS          -1 // SCL pin of I2C header
00962 #define LED_PIN         -1
00963 
00964 #define FAN_PIN         31
00965 #define PS_ON_PIN       15
00966 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
00967 #define E1_PINS
00968 
00969     //our pin for debugging.
00970 
00971     #define DEBUG_PIN        0
00972 
00973     //our RS485 pins
00974     #define TX_ENABLE_PIN       12
00975     #define RX_ENABLE_PIN       13
00976 
00977 #define SCK_PIN          7
00978 #define SDSSORIG         4
00979 #define MISO_PIN         6
00980 #define MOSI_PIN         5
00981 
00982 #endif
00983 
00984 /****************************************************************************************
00985 * Teensylu 0.7 pin assingments (ATMEGA90USB)
00986 * Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE!
00987 ****************************************************************************************/
00988 #if MOTHERBOARD == 8
00989 #define MOTHERBOARD 8
00990 #define KNOWN_BOARD 1
00991 
00992 #define X_STEP_PIN         28
00993 #define X_DIR_PIN          29
00994 #define X_ENABLE_PIN       19
00995 #define X_MIN_PIN          25
00996 #define X_MAX_PIN          -1
00997 
00998 #define Y_STEP_PIN         30
00999 #define Y_DIR_PIN          31
01000 #define Y_ENABLE_PIN       20 //26
01001 #define Y_MIN_PIN          26 // 20
01002 #define Y_MAX_PIN          -1
01003 
01004 #define Z_STEP_PIN         32
01005 #define Z_DIR_PIN          33
01006 #define Z_ENABLE_PIN       17
01007 #define Z_MIN_PIN          27
01008 #define Z_MAX_PIN          -1
01009 
01010 #define E0_STEP_PIN         34
01011 #define E0_DIR_PIN          35
01012 #define E0_ENABLE_PIN       13
01013 
01014 #define TEMP_0_PIN          7 // Extruder - ANALOG PIN NUMBER!
01015 #define TEMP_1_PIN          6 // Bed - ANALOG PIN NUMBER!
01016 #define HEATER_0_PIN       15 // Extruder
01017 #define HEATER_1_PIN       14 // bed
01018 #define HEATER_2_PIN   -1
01019 #define TEMP_2_PIN     -1
01020 
01021 #define SDPOWER            -1
01022 #define SDSS                20
01023 #define LED_PIN            -1
01024 
01025 #define FAN_PIN            16 // Fan
01026 #define PS_ON_PIN          -1
01027 
01028 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01029 #define E1_PINS
01030 
01031 #ifndef SDSUPPORT
01032 // these pins are defined in the SD library if building with SD support
01033 #define SCK_PIN          21
01034 #define MISO_PIN         23
01035 #define MOSI_PIN         22
01036 #endif
01037 
01038 #endif
01039 
01040 
01041 /****************************************************************************************
01042 * Printrboard Rev. B pin assingments (ATMEGA90USB1286)
01043 * Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE!
01044 * See http://reprap.org/wiki/Printrboard for more info
01045 ****************************************************************************************/
01046 #if MOTHERBOARD == 9
01047 #define MOTHERBOARD 9
01048 #define KNOWN_BOARD 1
01049 
01050 #define X_STEP_PIN         28
01051 #define X_DIR_PIN          29
01052 #define X_ENABLE_PIN       19
01053 #define X_MIN_PIN          47
01054 #define X_MAX_PIN          -1
01055 
01056 #define Y_STEP_PIN         30
01057 #define Y_DIR_PIN          31
01058 #define Y_ENABLE_PIN       18
01059 #define Y_MIN_PIN           20 // Don't use this if you want to use SD card. Use 37 and put the endstop in the e-stop slot!!!
01060 #define Y_MAX_PIN          -1
01061 
01062 #define Z_STEP_PIN         32
01063 #define Z_DIR_PIN          33
01064 #define Z_ENABLE_PIN       17
01065 #define Z_MIN_PIN          36
01066 #define Z_MAX_PIN          -1
01067 
01068 #define E0_STEP_PIN         34
01069 #define E0_DIR_PIN          35
01070 #define E0_ENABLE_PIN       13
01071 #define TEMP_0_PIN          1 // Extruder - ANALOG PIN NUMBER!
01072 #define TEMP_1_PIN          0 // Bed - ANALOG PIN NUMBER!
01073 #define HEATER_0_PIN       15 // Extruder
01074 #define HEATER_1_PIN       14 // bed
01075 #define HEATER_2_PIN   -1
01076 #define TEMP_2_PIN     -1
01077 
01078 #define SDPOWER            -1
01079 #define SDSS                26 // old value 2
01080 #define LED_PIN            -1
01081 
01082 #define FAN_PIN            16 // Fan
01083 #define PS_ON_PIN          -1
01084 
01085 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01086 #define E1_PINS
01087 #ifndef SDSUPPORT
01088 // these pins are defined in the SD library if building with SD support
01089 #define SCK_PIN          21
01090 #define MISO_PIN         23
01091 #define MOSI_PIN         22
01092 #endif
01093 
01094 #endif
01095 
01096 /****************************************************************************************
01097 * 3D Master pin assignment
01098 *
01099 ****************************************************************************************/
01100 #if MOTHERBOARD == 12
01101 #define KNOWN_BOARD 1
01102 
01103 #if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
01104 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
01105 #endif
01106 
01107 // Definition for current control
01108 #define STEPPER_CURRENT_CONTROL  CURRENT_CONTROL_LTC2600
01109 #define LTC2600_CHANNELS {0x30,0x31,0x32,0x33,0x34}
01110 #define LTC2600_NUM_CHANNELS 5
01111 #define LTC2600_CS_PIN             92   // PIND.4, 47, DA_CS
01112 #define LTC2600_SCK_PIN            93   // PIND.5, 48, DA_SCK
01113 #define LTC2600_SDI_PIN            94   // PIND.6, 49, DA_SDI
01114 
01115 // On board beeper, so define values already here
01116 #define BEEPER_PIN 23
01117 #define BEEPER_TYPE 1
01118 #define SDSUPPORT true  // sd card reader on board
01119 #define SDCARDDETECT -1
01120 
01121 // digital pin mappings
01122 #define X_STEP_PIN         54   // PINF.0, 97, STP_DRV1
01123 #define X_DIR_PIN          55   // PINF.1, 96, DIR_DRV1
01124 #define X_ENABLE_PIN       38   // PIND.7, 50, ENA_DRV1
01125 #define X_MIN_PIN           3   // PINE.5,  7, OPTO1
01126 #define X_MAX_PIN          -1   // PINJ.0, 63, OPTO4 (would be "15", -1 = disabled)
01127 
01128 #define Y_STEP_PIN         60   // PINF.6, 91, STP_DRV2
01129 #define Y_DIR_PIN          61   // PINF.7, 90, DIR_DRV2
01130 #define Y_ENABLE_PIN       56   // PINF.2, 95, ENA_DRV2
01131 #define Y_MIN_PIN           2   // PINE.4,  6, OPTO2
01132 #define Y_MAX_PIN          -1   // PIND.3, 46, OPTO5 (would be "18", -1 = disabled
01133 
01134 #define Z_STEP_PIN         46   // PINL.3, 38, STP_DRV3
01135 #define Z_DIR_PIN          48   // PINL.1, 36, DIR_DRV3
01136 #define Z_ENABLE_PIN       62   // PINK.0, 89, ENA_DRV3
01137 #define Z_MIN_PIN          14   // PINJ.1, 64, OPTO3
01138 #define Z_MAX_PIN          -1   // PIND.2, 45, OPTO6 (would be "19", -1 = disabled)
01139 
01140 #define E0_STEP_PIN         26  // PINA.4, 74, STP_DRV4
01141 #define E0_DIR_PIN          28  // PINA.6, 72, DIR_DRV4
01142 #define E0_ENABLE_PIN       24  // PINA.2, 76 ENA_DRV4
01143 
01144 #define E1_STEP_PIN       36    // PINC.1, 54, STP_DRV5
01145 #define E1_DIR_PIN        34    // PINC.3, 56, DIR_DRV5
01146 #define E1_ENABLE_PIN     30    // PINC.7, 60, ENA_DRV5
01147 
01148 #define SDPOWER            -1
01149 #define SDSS               53   // PINB.0, 19, SS
01150 #define LED_PIN            13   // PINB.7, 26, LED13
01151 #define FAN_PIN            25   // OUT1 PINA.3, 75, OUT1
01152 #define FAN_BOARD_PIN      27   // OUT2
01153 #define PS_ON_PIN          -1
01154 
01155 #define HEATER_0_PIN       10   // PINB.4, 23, HZ1
01156 #define HEATER_1_PIN        9   // PINH.6, 18, HZ2
01157 #define HEATER_2_PIN        8   // PINH.5, 17, HZ3
01158 
01159 // analog pin mappings
01160 #define TEMP_0_PIN         13   // PINK.5, 84, TH1
01161 #define TEMP_1_PIN         14   // PINK.6, 83, TH2
01162 #define TEMP_2_PIN         15   // PINK.7, 82, TH3
01163 
01164 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01165 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
01166 
01167 // these pins are defined in the SD library if building with SD support
01168 #define SCK_PIN          52     // PINB.1, 20, SCK
01169 #define MISO_PIN         50     // PINB.3, 22, MISO
01170 #define MOSI_PIN         51     // PINB.2, 21, MOSI
01171 #define MAX6675_SS       53     // PINB.0, 19, SS
01172 
01173 #endif // MOTHERBOARD == 12
01174 
01175 
01176 /****************************************************************************************
01177 * MegaTronics
01178 *
01179 ****************************************************************************************/
01180 #if MOTHERBOARD == 70
01181 #define KNOWN_BOARD 1
01182 
01184 
01185 #ifndef __AVR_ATmega2560__
01186 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
01187 #endif
01188 
01189 
01190 
01191 
01192 #define X_STEP_PIN         26
01193 #define X_DIR_PIN          28
01194 #define X_ENABLE_PIN       24
01195 #define X_MIN_PIN          41
01196 #define X_MAX_PIN          37   //2 //Max endstops default to disabled "-1", set to commented value to enable.
01197 
01198 #define Y_STEP_PIN         60 // A6
01199 #define Y_DIR_PIN          61 // A7
01200 #define Y_ENABLE_PIN       22
01201 #define Y_MIN_PIN          14
01202 #define Y_MAX_PIN          15   //15
01203 
01204 #define Z_STEP_PIN         54 // A0
01205 #define Z_DIR_PIN          55 // A1
01206 #define Z_ENABLE_PIN       56 // A2
01207 #define Z_MIN_PIN          18
01208 #define Z_MAX_PIN          19
01209 
01210 #define E0_STEP_PIN         31
01211 #define E0_DIR_PIN          32
01212 #define E0_ENABLE_PIN       38
01213 
01214 #define E1_STEP_PIN        34
01215 #define E1_DIR_PIN         36
01216 #define E1_ENABLE_PIN      30
01217 
01218 #define SDPOWER            -1
01219 #define SDSS               53
01220 #define LED_PIN            13
01221 
01222 
01223 #define FAN_PIN            7 // IO pin. Buffer needed
01224 #define PS_ON_PIN          12
01225 
01226 #define HEATER_0_PIN       9    // EXTRUDER 1
01227 #define HEATER_1_PIN       8    // EXTRUDER 2 (FAN On Sprinter)
01228 #define HEATER_2_PIN       10   // Heated bed
01229 
01230 #define TEMP_3_PIN         8   // Thermocouple 0 ANALOG NUMBERING
01231 #define TEMP_0_PIN         13   // ANALOG NUMBERING
01232 #define TEMP_1_PIN         15   // ANALOG NUMBERING
01233 #define TEMP_2_PIN         -1   // ANALOG NUMBERING
01234 #define HEATER_BED_PIN     10   // BED
01235 #define TEMP_BED_PIN       14   // ANALOG NUMBERING
01236 
01237 #define BEEPER_PIN 33                   // Beeper on AUX-4
01238 #define BEEPER_TYPE 1
01239 #define SDSUPPORT true  // sd card reader on board
01240 #define SDCARDDETECT -1
01241 
01242 
01243 #ifdef ULTRA_LCD
01244 
01245 #ifdef NEWPANEL
01246 #define LCD_PINS_RS 16
01247 #define LCD_PINS_ENABLE 17
01248 #define LCD_PINS_D4 23
01249 #define LCD_PINS_D5 25
01250 #define LCD_PINS_D6 27
01251 #define LCD_PINS_D7 29
01252 
01253 //buttons are directly attached using AUX-2
01254 #define BTN_EN1 37
01255 #define BTN_EN2 35
01256 #define BTN_ENC 43  //the click
01257 
01258 #define BLEN_C 2
01259 #define BLEN_B 1
01260 #define BLEN_A 0
01261 
01262 #endif
01263 #endif //ULTRA_LCD
01264 
01265 #define SCK_PIN          52
01266 #define MISO_PIN         50
01267 #define MOSI_PIN         51
01268 
01269 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01270 #define E1_PINS
01271 
01272 #endif
01273 
01274 /****************************************************************************************
01275 * MegaTronics v2.0
01276 *
01277 ****************************************************************************************/
01278 #if MOTHERBOARD == 701
01279 #define KNOWN_BOARD 1
01280 
01281 
01282 #ifndef __AVR_ATmega2560__
01283 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
01284 #endif
01285 
01286 
01287 #define X_STEP_PIN         26
01288 #define X_DIR_PIN          27
01289 #define X_ENABLE_PIN       25
01290 #define X_MIN_PIN          37
01291 #define X_MAX_PIN          40   //2 //Max endstops default to disabled "-1", set to commented value to enable.
01292 
01293 #define Y_STEP_PIN         4 // A6
01294 #define Y_DIR_PIN          54 // A0
01295 #define Y_ENABLE_PIN       5
01296 #define Y_MIN_PIN          41
01297 #define Y_MAX_PIN          38   //15
01298 
01299 #define Z_STEP_PIN         56 // A2
01300 #define Z_DIR_PIN          60 // A6
01301 #define Z_ENABLE_PIN       55 // A1
01302 #define Z_MIN_PIN          18
01303 #define Z_MAX_PIN          19
01304 
01305 #define E0_STEP_PIN         35
01306 #define E0_DIR_PIN          36
01307 #define E0_ENABLE_PIN       34
01308 
01309 #define E1_STEP_PIN         29
01310 #define E1_DIR_PIN          39
01311 #define E1_ENABLE_PIN       28
01312 
01313 #define E2_STEP_PIN         23
01314 #define E2_DIR_PIN          24
01315 #define E2_ENABLE_PIN       22
01316 
01317 #define SDCARDDETECT -1         // Ramps does not use this port
01318 #define SDPOWER            -1
01319 #define SDSS               53
01320 
01321 #define LED_PIN            13
01322 
01323 
01324 #define FAN_PIN            7
01325 #define FAN2_PIN           6
01326 #define PS_ON_PIN          12
01327 
01328 #define HEATER_0_PIN       9    // EXTRUDER 1
01329 #define HEATER_2_PIN       8    // Heated bed
01330 #define HEATER_1_PIN       10   // EXTRUDER 2
01331 
01332 #define TEMP_0_PIN         13   // Thermistor 0 ANALOG NUMBERING
01333 #define TEMP_2_PIN         15   // Thermistor 1 ANALOG NUMBERING
01334 #define TEMP_1_PIN         14   // Thermistor 2 for heated bed ANALOG NUMBERING
01335 #define TEMP_3_PIN         8    // Thermocouple 0
01336 #define TEMP_4_PIN         4    // Thermocouple 1
01337 
01338 #define BEEPER_PIN 64                   // Beeper on AUX-4
01339 
01340 #define LCD_PINS_RS 14
01341 #define LCD_PINS_ENABLE 15
01342 #define LCD_PINS_D4 30
01343 #define LCD_PINS_D5 31
01344 #define LCD_PINS_D6 32
01345 #define LCD_PINS_D7 33
01346 
01347 
01348 //buttons are directly attached using AUX-2
01349 #define BTN_EN1 59
01350 #define BTN_EN2 64
01351 #define BTN_ENC 43  //the click
01352 
01353 #define BLEN_C 2
01354 #define BLEN_B 1
01355 #define BLEN_A 0
01356 
01357 #define SCK_PIN          52
01358 #define MISO_PIN         50
01359 #define MOSI_PIN         51
01360 
01361 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01362 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
01363 #define E2_PINS E2_STEP_PIN,E2_DIR_PIN,E2_ENABLE_PIN,
01364 
01365 #endif
01366 
01367 
01368 #if MOTHERBOARD == 301
01369 #define KNOWN_BOARD
01370 /*****************************************************************
01371 * RAMBo Pin Assignments
01372 ******************************************************************/
01373 
01374 #ifndef __AVR_ATmega2560__
01375 #error Oops!  Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
01376 #endif
01377 
01378 #define X_STEP_PIN     37
01379 #define X_DIR_PIN      48
01380 #define X_MIN_PIN      12
01381 #define X_MAX_PIN      24
01382 #define X_ENABLE_PIN   29
01383 #define X_MS1_PIN      40
01384 #define X_MS2_PIN      41
01385 
01386 #define Y_STEP_PIN     36
01387 #define Y_DIR_PIN      49
01388 #define Y_MIN_PIN      11
01389 #define Y_MAX_PIN      23
01390 #define Y_ENABLE_PIN   28
01391 #define Y_MS1_PIN      69
01392 #define Y_MS2_PIN      39
01393 
01394 #define Z_STEP_PIN     35
01395 #define Z_DIR_PIN      47
01396 #define Z_MIN_PIN      10
01397 #define Z_MAX_PIN      30
01398 #define Z_ENABLE_PIN   27
01399 #define Z_MS1_PIN      68
01400 #define Z_MS2_PIN      67
01401 
01402 #define HEATER_BED_PIN 3
01403 #define TEMP_BED_PIN   2
01404 
01405 #define HEATER_0_PIN   9
01406 #define TEMP_0_PIN     0
01407 
01408 #define HEATER_1_PIN   3
01409 #define TEMP_1_PIN     2
01410 
01411 #define HEATER_2_PIN   7
01412 #define TEMP_2_PIN     1
01413 
01414 #define E0_STEP_PIN    34
01415 #define E0_DIR_PIN     43
01416 #define E0_ENABLE_PIN  26
01417 #define E0_MS1_PIN     65
01418 #define E0_MS2_PIN     66
01419 
01420 #define E1_STEP_PIN    33
01421 #define E1_DIR_PIN     42
01422 #define E1_ENABLE_PIN  25
01423 #define E1_MS1_PIN     63
01424 #define E1_MS2_PIN     64
01425 
01426 #define DIGIPOTSS_PIN  38
01427 #define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
01428 
01429 #define SDPOWER        -1
01430 #define SDSS           53
01431 #define LED_PIN        13
01432 #define FAN_PIN        8
01433 #define PS_ON_PIN      4
01434 #define SUICIDE_PIN    -1  //PIN that has to be turned on right after start, to keep power flowing.
01435 
01436 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,E0_MS1_PIN,E0_MS2_PIN,
01437 #define E1_PINS
01438 
01439 #define SCK_PIN          52
01440 #define MISO_PIN         50
01441 #define MOSI_PIN         51
01442 #define MAX6675_SS       53
01443 #define STEPPER_CURRENT_CONTROL CURRENT_CONTROL_DIGIPOT
01444 
01445 #endif
01446 
01447 
01448 /***************************************************************************************
01449 *PiBot for Repetier pins assignment
01450 *illustration :
01451 * PiBot for Repetier V1.0             =314
01452 * PiBot for Repetier V1.4              =315
01453 ***************************************************************************************/
01454 #if MOTHERBOARD == 315
01455 #define MOTHERBOARD 314
01456 #define PiBot_V_1_4
01457 #endif
01458 #if MOTHERBOARD == 314
01459 #define KNOWN_BOARD 1
01460 #define PiBot true
01461 #ifndef __AVR_ATmega1280__
01462 #ifndef __AVR_ATmega2560__
01463 #error Oops!  Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
01464 #endif
01465 #endif
01466 
01467 #ifdef PiBot_V_1_4
01468 #define X_STEP_PIN         4
01469 #define X_DIR_PIN          17
01470 #define X_ENABLE_PIN       16
01471 #define X_MIN_PIN          37
01472 #define X_MAX_PIN          34
01473 
01474 #define Y_STEP_PIN         56
01475 #define Y_DIR_PIN          55
01476 #define Y_ENABLE_PIN       54
01477 #define Y_MIN_PIN          36
01478 #define Y_MAX_PIN          33
01479 
01480 #define Z_STEP_PIN         59
01481 #define Z_DIR_PIN          58
01482 #define Z_ENABLE_PIN       57
01483 #define Z_MIN_PIN          35
01484 #define Z_MAX_PIN          32
01485 
01486 #define E0_STEP_PIN         24
01487 #define E0_DIR_PIN          23
01488 #define E0_ENABLE_PIN       22
01489 
01490 #define E1_STEP_PIN         27
01491 #define E1_DIR_PIN          26
01492 #define E1_ENABLE_PIN       25
01493 //uncomment when use 3rd extruder
01494 #define E2_STEP_PIN         15
01495 #define E2_DIR_PIN          14
01496 #define E2_ENABLE_PIN       39
01497 
01498 #define E3_STEP_PIN         41
01499 #define E3_DIR_PIN          38
01500 #define E3_ENABLE_PIN       13
01501 
01502 #define SDPOWER            -1
01503 #define SDCARDDETECT        10
01504 
01505 #define LED_PIN            40
01506 #define FAN_PIN            7        ////*****fan0
01507 //uncomment when the 2nd fan used - works only without heated bed!
01508 #define FAN2_PIN           2
01509 #define PS_ON_PIN          30
01510 
01511 #define HEATER_0_PIN       3    ////**** Extuder1
01512 #define HEATER_1_PIN       12   ////***Extuder2
01513 #define HEATER_2_PIN       6    ////***Bed
01514 //uncomment when the 3rd extruder used
01515 #define HEATER_3_PIN       9   ////***Extuder3
01516 //uncomment when the 4th extruder used
01517 #define HEATER_4_PIN       11   ////***Extuder4
01518 
01519 #define TEMP_0_PIN         14   // ANALOG NUMBERING   ////***Extuder1
01520 #define TEMP_1_PIN         15   // ANALOG NUMBERING   ////***Bed
01521 #define TEMP_2_PIN         13   // ANALOG NUMBERING   ////***Extuder2
01522 //uncomment when 3 extruder used
01523 #define TEMP_3_PIN         12   // ANALOG NUMBERING   ////***Extuder3
01524 //uncomment when 4 extruder used
01525 #define TEMP_4_PIN         11   // ANALOG NUMBERING   ////***Extuder4
01526 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01527 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
01528 #define E2_PINS E2_STEP_PIN,E2_DIR_PIN,E2_ENABLE_PIN,
01529 #define SDCARDDETECT        10
01530 #else
01531 #define X_STEP_PIN         54
01532 #define X_DIR_PIN          55
01533 #define X_ENABLE_PIN       38
01534 #define X_MIN_PIN          3
01535 #define X_MAX_PIN          2
01536 
01537 #define Y_STEP_PIN         60
01538 #define Y_DIR_PIN          61
01539 #define Y_ENABLE_PIN       56
01540 #define Y_MIN_PIN          14
01541 #define Y_MAX_PIN          15
01542 
01543 #define Z_STEP_PIN         46
01544 #define Z_DIR_PIN          48
01545 #define Z_ENABLE_PIN       62
01546 #define Z_MIN_PIN          18
01547 #define Z_MAX_PIN          19
01548 
01549 #define E0_STEP_PIN         26
01550 #define E0_DIR_PIN          28
01551 #define E0_ENABLE_PIN       24
01552 
01553 #define E1_STEP_PIN         36
01554 #define E1_DIR_PIN          34
01555 #define E1_ENABLE_PIN       30
01556 
01557 #define SDPOWER            -1
01558 #define SDCARDDETECT        49
01559 
01560 #define LED_PIN            13
01561 #define FAN_PIN            7        ////*****fan
01562 #define PS_ON_PIN          12
01563 
01564 #define HEATER_0_PIN       8    ////**** Extuder1
01565 #define HEATER_1_PIN       10    ////***Extuder2
01566 #define HEATER_2_PIN       9   ////***Bed
01567 #define TEMP_0_PIN         13   // ANALOG NUMBERING   ////***Extuder1
01568 #define TEMP_1_PIN         15   // ANALOG NUMBERING   ////***Bed
01569 #define TEMP_2_PIN         14   // ANALOG NUMBERING   ////***Extuder2
01570 
01571 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01572 #define E1_PINS E1_STEP_PIN,E1_DIR_PIN,E1_ENABLE_PIN,
01573 #define SDCARDDETECT       49
01574 
01575 #endif     ///////****** end PiBot for Repetier V1.4
01577 #define SDSS             53
01578 #define SCK_PIN          52
01579 #define MISO_PIN         50
01580 #define MOSI_PIN         51
01581 
01582 #define SDSUPPORT true
01583 #define SDCARDDETECTINVERTED false
01584 
01585 #endif   ///////******end  PiBot for Repetier
01586 
01587 
01588 #if MOTHERBOARD == 401
01589 #ifndef __SAM3X8E__
01590 #error Oops!  Make sure you have 'Arduino Due' selected from the 'Tools -> Boards' menu.
01591 #endif
01592 
01593 #define KNOWN_BOARD
01594 #define CPU_ARCH ARCH_ARM
01595 /*****************************************************************
01596 * Arduino Due Pin Assignments
01597 ******************************************************************/
01598 
01599 #define X_STEP_PIN     36
01600 #define X_DIR_PIN      48
01601 #define X_MIN_PIN      12
01602 #define X_MAX_PIN      19
01603 #define X_ENABLE_PIN   29
01604 #define X_MS1_PIN      40
01605 #define X_MS2_PIN      41
01606 
01607 #define Y_STEP_PIN     36
01608 #define Y_DIR_PIN      49
01609 #define Y_MIN_PIN      11
01610 #define Y_MAX_PIN      18
01611 #define Y_ENABLE_PIN   28
01612 #define Y_MS1_PIN      69
01613 #define Y_MS2_PIN      39
01614 
01615 #define Z_STEP_PIN     35
01616 #define Z_DIR_PIN      47
01617 #define Z_MIN_PIN      10
01618 #define Z_MAX_PIN      15
01619 #define Z_ENABLE_PIN   27
01620 #define Z_MS1_PIN      68
01621 #define Z_MS2_PIN      67
01622 
01623 #define HEATER_BED_PIN 3
01624 #define TEMP_BED_PIN   65
01625 
01626 #define HEATER_0_PIN   9
01627 #define TEMP_0_PIN     63
01628 
01629 #define HEATER_1_PIN   7
01630 #define TEMP_1_PIN     64
01631 
01632 #define HEATER_2_PIN   -1
01633 #define TEMP_2_PIN     -1
01634 
01635 #define E0_STEP_PIN    34
01636 #define E0_DIR_PIN     43
01637 #define E0_ENABLE_PIN  26
01638 #define E0_MS1_PIN     65
01639 #define E0_MS2_PIN     66
01640 
01641 #define E1_STEP_PIN    33
01642 #define E1_DIR_PIN     42
01643 #define E1_ENABLE_PIN  25
01644 #define E1_MS1_PIN     63
01645 #define E1_MS2_PIN     64
01646 
01647 #define SDPOWER        -1
01648 #define SDSS           53
01649 #define LED_PIN        13
01650 #define FAN_PIN        8
01651 #define PS_ON_PIN      4
01652 #define SUICIDE_PIN    -1  //PIN that has to be turned on right after start, to keep power flowing.
01653 
01654 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,E0_MS1_PIN,E0_MS2_PIN,
01655 #define E1_PINS
01656 
01657 #endif
01658 
01659 
01660 /****************************************************************************************
01661 * Sanguish Beta pin assignment
01662 *
01663 ****************************************************************************************/
01664 #if MOTHERBOARD == 501
01665 #define KNOWN_BOARD
01666 
01667 #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
01668 #error Oops! Make sure you have 'Your MCU/Bootloader' selected from the 'Tools -> Boards' menu.
01669 #endif
01670 
01671 //x axis pins
01672 #define X_STEP_PIN 28
01673 #define X_DIR_PIN 27
01674 #define X_ENABLE_PIN 29
01675 #define X_MIN_PIN 2
01676 #define X_MAX_PIN -1
01677 
01678 //y axis pins
01679 #define Y_STEP_PIN 25
01680 #define Y_DIR_PIN 24
01681 #define Y_ENABLE_PIN 26
01682 #define Y_MIN_PIN 5
01683 #define Y_MAX_PIN -1
01684 
01685 //z axis pins
01686 #define Z_STEP_PIN 22
01687 #define Z_DIR_PIN 21
01688 #define Z_ENABLE_PIN 23
01689 #define Z_MIN_PIN 1
01690 #define Z_MAX_PIN -1
01691 
01692 //extruder pins
01693 #define E0_STEP_PIN 19
01694 #define E0_DIR_PIN 18
01695 #define E0_ENABLE_PIN 20
01696 #define TEMP_0_PIN 1
01697 #define TEMP_1_PIN 0
01698 #define HEATER_0_PIN 3
01699 #define HEATER_1_PIN 4
01700 
01701 
01702 #define SDPOWER -1
01703 #define SDSS -1
01704 #define LED_PIN -1
01705 
01706 #define FAN_PIN -1
01707 #define PS_ON_PIN 0
01708 //our pin for debugging.
01709 
01710 #define DEBUG_PIN -1
01711 
01712 //our RS485 pins
01713 #define TX_ENABLE_PIN   12
01714 #define RX_ENABLE_PIN   13
01715 
01716 #define SDPOWER -1
01717 #define SDSS -1
01718 
01719 #define SCK_PIN 7
01720 #define MISO_PIN 6
01721 #define MOSI_PIN 5
01722 #define E0_PINS E0_STEP_PIN,E0_DIR_PIN,E0_ENABLE_PIN,
01723 #define E1_PINS
01724 #endif
01725 
01726 #ifndef CPU_ARCH  // Set default architecture
01727 #define CPU_ARCH ARCH_AVR
01728 #endif
01729 
01730 #ifndef SDSSORIG
01731 #define SDSSORIG -1
01732 #endif
01733 
01734 #ifndef STEPPER_CURRENT_CONTROL // Set default stepper current control if not set yet.
01735 #define STEPPER_CURRENT_CONTROL  CURRENT_CONTROL_MANUAL
01736 #endif
01737 
01738 #ifndef FAN_BOARD_PIN
01739 #define FAN_BOARD_PIN -1
01740 #endif
01741 
01742 #if NUM_EXTRUDER==1
01743 #define E1_PINS
01744 #endif
01745 
01746 #if NUM_EXTRUDER<3
01747 #define E2_PINS
01748 #endif
01749 #define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, LED_PIN, PS_ON_PIN, \
01750                         HEATER_0_PIN, HEATER_1_PIN, FAN_PIN, E0_PINS E1_PINS E2_PINS TEMP_0_PIN, TEMP_1_PIN,SDSS }
01751 #endif
01752 
 All Data Structures Namespaces Files Functions Variables Typedefs Friends Defines