Browse Source

Merge branch 'Marlin_v1' into update_menu_plan

pull/1/head
Cylindric 11 years ago
parent
commit
363dc2f0e8
  1. 1
      Marlin/Configuration.h
  2. 6
      Marlin/Configuration_adv.h
  3. 26
      Marlin/Makefile
  4. 5
      Marlin/Marlin.h
  5. 4
      Marlin/Marlin.ino
  6. 4
      Marlin/Marlin.pde
  7. 10
      Marlin/Marlin_main.cpp
  8. 54
      Marlin/digipot_mcp4451.cpp
  9. 357
      Marlin/language.h
  10. 45
      Marlin/pins.h
  11. 30
      Marlin/ultralcd.cpp

1
Marlin/Configuration.h

@ -52,6 +52,7 @@
// 65 = Azteeg X1
// 66 = Melzi with ATmega1284 (MaKr3d version)
// 67 = Azteeg X3
// 68 = Azteeg X3 Pro
// 7 = Ultimaker
// 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare)
// 77 = 3Drag Controller

6
Marlin/Configuration_adv.h

@ -268,6 +268,12 @@
// Motor Current setting (Only functional when motor driver current ref pins are connected to a digital trimpot on supported boards)
#define DIGIPOT_MOTOR_CURRENT {135,135,135,135,135} // Values 0-255 (RAMBO 135 = ~0.75A, 185 = ~1A)
// uncomment to enable an I2C based DIGIPOT like on the Azteeg X3 Pro
//#define DIGIPOT_I2C
// Number of channels available for I2C digipot, For Azteeg X3 Pro we have 8
#define DIGIPOT_I2C_NUM_CHANNELS 8
// actual motor currents in Amps, need as many here as DIGIPOT_I2C_NUM_CHANNELS
#define DIGIPOT_I2C_MOTOR_CURRENTS {1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0}
//===========================================================================
//=============================Additional Features===========================

26
Marlin/Makefile

@ -57,6 +57,9 @@ BUILD_DIR ?= applet
# This defines whether Liquid_TWI2 support will be built
LIQUID_TWI2 ?= 0
# this defines if Wire is needed
WIRE ?= 0
############################################################################
# Below here nothing should be changed...
@ -174,6 +177,14 @@ else ifeq ($(HARDWARE_MOTHERBOARD),301)
HARDWARE_VARIANT ?= arduino
MCU ?= atmega2560
# Azteeg
else ifeq ($(HARDWARE_MOTHERBOARD),67)
HARDWARE_VARIANT ?= arduino
MCU ?= atmega2560
else ifeq ($(HARDWARE_MOTHERBOARD),68)
HARDWARE_VARIANT ?= arduino
MCU ?= atmega2560
endif
# Be sure to regenerate speed_lookuptable.h with create_speed_lookuptable.py
@ -213,6 +224,10 @@ VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire/utility
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidTWI2
endif
ifeq ($(WIRE), 1)
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire
VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire/utility
endif
else
VPATH += $(HARDWARE_DIR)/libraries/LiquidCrystal
VPATH += $(HARDWARE_DIR)/libraries/SPI
@ -221,6 +236,10 @@ VPATH += $(HARDWARE_DIR)/libraries/Wire
VPATH += $(HARDWARE_DIR)/libraries/Wire/utility
VPATH += $(HARDWARE_DIR)/libraries/LiquidTWI2
endif
ifeq ($(WIRE, 1)
VPATH += $(HARDWARE_DIR)/libraries/Wire
VPATH += $(HARDWARE_DIR)/libraries/Wire/utility
endif
endif
ifeq ($(HARDWARE_VARIANT), arduino)
HARDWARE_SUB_VARIANT ?= mega
@ -241,7 +260,7 @@ CXXSRC = WMath.cpp WString.cpp Print.cpp Marlin_main.cpp \
MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp \
SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp \
stepper.cpp temperature.cpp cardreader.cpp ConfigurationStore.cpp \
watchdog.cpp SPI.cpp Servo.cpp Tone.cpp ultralcd.cpp
watchdog.cpp SPI.cpp Servo.cpp Tone.cpp ultralcd.cpp digipot_mcp4451.cpp
ifeq ($(LIQUID_TWI2), 0)
CXXSRC += LiquidCrystal.cpp
else
@ -249,6 +268,11 @@ SRC += twi.c
CXXSRC += Wire.cpp LiquidTWI2.cpp
endif
ifeq ($(WIRE), 1)
SRC += twi.c
CXXSRC += Wire.cpp
endif
#Check for Arduino 1.0.0 or higher and use the correct sourcefiles for that version
ifeq ($(shell [ $(ARDUINO_VERSION) -ge 100 ] && echo true), true)
CXXSRC += main.cpp

5
Marlin/Marlin.h

@ -235,4 +235,9 @@ extern unsigned long stoptime;
// Handling multiple extruders pins
extern uint8_t active_extruder;
#ifdef DIGIPOT_I2C
extern void digipot_i2c_set_current( int channel, float current );
extern void digipot_i2c_init();
#endif
#endif

4
Marlin/Marlin.ino

@ -50,3 +50,7 @@
#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1
#include <SPI.h>
#endif
#if defined(DIGIPOT_I2C)
#include <Wire.h>
#endif

4
Marlin/Marlin.pde

@ -50,3 +50,7 @@
#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1
#include <SPI.h>
#endif
#if defined(DIGIPOT_I2C)
#include <Wire.h>
#endif

10
Marlin/Marlin_main.cpp

@ -492,6 +492,10 @@ void setup()
#if defined(CONTROLLERFAN_PIN) && CONTROLLERFAN_PIN > -1
SET_OUTPUT(CONTROLLERFAN_PIN); //Set pin used for driver cooling fan
#endif
#ifdef DIGIPOT_I2C
digipot_i2c_init();
#endif
}
@ -2841,6 +2845,12 @@ void process_commands()
#ifdef MOTOR_CURRENT_PWM_E_PIN
if(code_seen('E')) digipot_current(2, code_value());
#endif
#ifdef DIGIPOT_I2C
// this one uses actual amps in floating point
for(int i=0;i<NUM_AXIS;i++) if(code_seen(axis_codes[i])) digipot_i2c_set_current(i, code_value());
// for each additional extruder (named B,C,D,E..., channels 4,5,6,7...)
for(int i=NUM_AXIS;i<DIGIPOT_I2C_NUM_CHANNELS;i++) if(code_seen('B'+i-NUM_AXIS)) digipot_i2c_set_current(i, code_value());
#endif
}
break;
case 908: // M908 Control digital trimpot directly.

54
Marlin/digipot_mcp4451.cpp

@ -0,0 +1,54 @@
#include "Configuration.h"
#ifdef DIGIPOT_I2C
#include "Stream.h"
#include "utility/twi.h"
#include "Wire.h"
// Settings for the I2C based DIGIPOT (MCP4451) on Azteeg X3 Pro
#define DIGIPOT_I2C_FACTOR 106.7
#define DIGIPOT_I2C_MAX_CURRENT 2.5
static byte current_to_wiper( float current ){
return byte(ceil(float((DIGIPOT_I2C_FACTOR*current))));
}
static void i2c_send(byte addr, byte a, byte b)
{
Wire.beginTransmission(addr);
Wire.write(a);
Wire.write(b);
Wire.endTransmission();
}
// This is for the MCP4451 I2C based digipot
void digipot_i2c_set_current( int channel, float current )
{
current = min( (float) max( current, 0.0f ), DIGIPOT_I2C_MAX_CURRENT);
// these addresses are specific to Azteeg X3 Pro, can be set to others,
// In this case first digipot is at address A0=0, A1= 0, second one is at A0=0, A1= 1
byte addr= 0x2C; // channel 0-3
if(channel >= 4) {
addr= 0x2E; // channel 4-7
channel-= 4;
}
// Initial setup
i2c_send( addr, 0x40, 0xff );
i2c_send( addr, 0xA0, 0xff );
// Set actual wiper value
byte addresses[4] = { 0x00, 0x10, 0x60, 0x70 };
i2c_send( addr, addresses[channel], current_to_wiper(current) );
}
void digipot_i2c_init()
{
const float digipot_motor_current[] = DIGIPOT_I2C_MOTOR_CURRENTS;
Wire.begin();
// setup initial currents as defined in Configuration_adv.h
for(int i=0;i<=sizeof(digipot_motor_current)/sizeof(float);i++) {
digipot_i2c_set_current(i, digipot_motor_current[i]);
}
}
#endif

357
Marlin/language.h

@ -16,6 +16,7 @@
// 7 Italian
// 8 Portuguese
// 9 Finnish
// 10 Aragonese
#ifndef LANGUAGE_CHOICE
#define LANGUAGE_CHOICE 1 // Pick your language from the list above
@ -70,6 +71,13 @@
#define MSG_EXTRUDE "Extrude"
#define MSG_RETRACT "Retract"
#define MSG_MOVE_AXIS "Move Axis"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Speed"
#define MSG_NOZZLE "Nozzle"
#define MSG_NOZZLE1 "Nozzle2"
@ -139,6 +147,12 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
#define MSG_Enqueing "enqueing \""
@ -210,6 +224,9 @@
#define MSG_ENDSTOPS_HIT "endstops hit: "
#define MSG_ERR_COLD_EXTRUDE_STOP " cold extrusion prevented"
#define MSG_ERR_LONG_EXTRUDE_STOP " too long extrusion prevented"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -220,7 +237,7 @@
#define WELCOME_MSG MACHINE_NAME " Gotowe."
#define MSG_SD_INSERTED "Karta wlozona"
#define MSG_SD_REMOVED "Karta usunieta"
#define MSG_MAIN "Main"
#define MSG_MAIN "Menu glowne"
#define MSG_AUTOSTART "Autostart"
#define MSG_DISABLE_STEPPERS "Wylacz silniki"
#define MSG_AUTO_HOME "Auto. poz. zerowa"
@ -230,11 +247,18 @@
#define MSG_PREHEAT_ABS "Rozgrzej ABS"
#define MSG_PREHEAT_ABS_SETTINGS "Ustawienia roz. ABS"
#define MSG_COOLDOWN "Chlodzenie"
#define MSG_SWITCH_PS_ON "Switch Power On"
#define MSG_SWITCH_PS_OFF "Switch Power Off"
#define MSG_SWITCH_PS_ON "Wl. zasilacz"
#define MSG_SWITCH_PS_OFF "Wyl. zasilacz"
#define MSG_EXTRUDE "Ekstruzja"
#define MSG_RETRACT "Cofanie"
#define MSG_MOVE_AXIS "Ruch osi"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Predkosc"
#define MSG_NOZZLE "Dysza"
#define MSG_NOZZLE1 "Dysza2"
@ -273,19 +297,19 @@
#define MSG_RECTRACT "Wycofanie"
#define MSG_TEMPERATURE "Temperatura"
#define MSG_MOTION "Ruch"
#define MSG_CONTRAST "LCD contrast"
#define MSG_CONTRAST "Kontrast LCD"
#define MSG_STORE_EPROM "Zapisz w pamieci"
#define MSG_LOAD_EPROM "Wczytaj z pamieci"
#define MSG_RESTORE_FAILSAFE "Ustawienia fabryczne"
#define MSG_REFRESH "\004Odswiez"
#define MSG_WATCH "Obserwuj"
#define MSG_WATCH "Ekran glowny"
#define MSG_PREPARE "Przygotuj"
#define MSG_CONTROL "Kontroluj"
#define MSG_CONTROL "Ustawienia"
#define MSG_TUNE "Strojenie"
#define MSG_PAUSE_PRINT "Pauza"
#define MSG_RESUME_PRINT "Wznowienie"
#define MSG_STOP_PRINT "Stop"
#define MSG_CARD_MENU "Menu SDCard"
#define MSG_CARD_MENU "Menu karty SD"
#define MSG_NO_CARD "Brak karty"
#define MSG_DWELL "Uspij..."
#define MSG_USERWAIT "Czekaj na uzytkownika..."
@ -301,12 +325,17 @@
#define MSG_CONTROL_RETRACT_RECOVER "Cof. wycof. +mm"
#define MSG_CONTROL_RETRACT_RECOVERF "Cof. wycof. F"
#define MSG_AUTORETRACT "Auto. wycofanie"
#define MSG_FILAMENTCHANGE "Change filament"
#define MSG_INIT_SDCARD "Init. SD-Card"
#define MSG_CNG_SDCARD "Change SD-Card"
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_FILAMENTCHANGE "Zmien filament"
#define MSG_INIT_SDCARD "Uruchom karte SD"
#define MSG_CNG_SDCARD "Zmien karte SD"
#define MSG_ZPROBE_OUT "Probkuj Z poza lozem"
#define MSG_POSITION_UNKNOWN "Domuj X/Y przed Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -355,8 +384,8 @@
#define MSG_Z_MIN "z_min: "
#define MSG_Z_MAX "z_max: "
#define MSG_M119_REPORT "Zgloszenie statusu wylacznikow krancowych"
#define MSG_ENDSTOP_HIT "WYZWOLONY"
#define MSG_ENDSTOP_OPEN "otwarty"
#define MSG_ENDSTOP_HIT "Wyzwolony"
#define MSG_ENDSTOP_OPEN "Otwarty"
#define MSG_HOTEND_OFFSET "Hotend offsets:"
#define MSG_SD_CANT_OPEN_SUBDIR "Nie mozna otworzyc podkatalogu"
@ -379,6 +408,9 @@
#define MSG_ENDSTOPS_HIT "Wylacznik krancowy zostal wyzwolony na pozycji: "
#define MSG_ERR_COLD_EXTRUDE_STOP " uniemozliwiono zimna ekstruzje"
#define MSG_ERR_LONG_EXTRUDE_STOP " uniemozliwiono zbyt dluga ekstruzje"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -405,6 +437,13 @@
#define MSG_PREHEAT_PLA "Prechauffage PLA"
#define MSG_PREHEAT_ABS "Prechauffage ABS"
#define MSG_MOVE_AXIS "Deplacer un axe"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED " Vitesse"
#define MSG_NOZZLE "Buse"
#define MSG_NOZZLE1 "Buse2"
@ -475,6 +514,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -547,6 +591,9 @@
#define MSG_ENDSTOPS_HIT "Fin de course atteint: "
#define MSG_ERR_COLD_EXTRUDE_STOP " Extrusion a froid evitee"
#define MSG_ERR_LONG_EXTRUDE_STOP " Extrusion longue evitee"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -574,6 +621,13 @@
#define MSG_EXTRUDE "Extrude"
#define MSG_RETRACT "Retract"
#define MSG_MOVE_AXIS "Achsen bewegen"
#define MSG_MOVE_X "X bewegen"
#define MSG_MOVE_Y "Y bewegen"
#define MSG_MOVE_Z "Z bewegen"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "0.1mm bewegen"
#define MSG_MOVE_1MM "1mm bewegen"
#define MSG_MOVE_10MM "10mm bewegen"
#define MSG_SPEED "Geschw"
#define MSG_NOZZLE "Düse"
#define MSG_NOZZLE1 "Düse2"
@ -646,6 +700,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -718,6 +777,9 @@
#define MSG_ENDSTOPS_HIT "endstops hit: "
#define MSG_ERR_COLD_EXTRUDE_STOP " cold extrusion prevented"
#define MSG_ERR_LONG_EXTRUDE_STOP " too long extrusion prevented"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -743,6 +805,13 @@
#define MSG_EXTRUDE "Extruir"
#define MSG_RETRACT "Retraer"
#define MSG_MOVE_AXIS "Mover Ejes"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Velocidad"
#define MSG_NOZZLE "Nozzle"
#define MSG_NOZZLE1 "Nozzle2"
@ -821,6 +890,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -892,6 +966,9 @@
#define MSG_ENDSTOPS_HIT "Se ha tocado el fin de carril: "
#define MSG_ERR_COLD_EXTRUDE_STOP " extrusion fria evitada"
#define MSG_ERR_LONG_EXTRUDE_STOP " extrusion demasiado larga evitada"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -916,6 +993,13 @@
#define MSG_EXTRUDE " Экструзия "
#define MSG_RETRACT " Откат"
#define MSG_MOVE_AXIS " Движение по осям \x7E"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED " Скорость:"
#define MSG_NOZZLE " \002 Фильера:"
#define MSG_NOZZLE1 " \002 Фильера2:"
@ -986,6 +1070,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -1056,6 +1145,9 @@
#define MSG_ENDSTOPS_HIT "концевик сработал: "
#define MSG_ERR_COLD_EXTRUDE_STOP " защита холодной экструзии"
#define MSG_ERR_LONG_EXTRUDE_STOP " защита превышения длинны экструзии"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -1081,6 +1173,13 @@
#define MSG_EXTRUDE "Estrudi"
#define MSG_RETRACT "Ritrai"
#define MSG_MOVE_AXIS "Muovi Asse"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Velcità"
#define MSG_NOZZLE "Ugello"
#define MSG_NOZZLE1 "Ugello2"
@ -1151,6 +1250,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -1223,6 +1327,9 @@
#define MSG_ENDSTOPS_HIT "Raggiunto il fondo carrello: "
#define MSG_ERR_COLD_EXTRUDE_STOP " prevenuta estrusione fredda"
#define MSG_ERR_LONG_EXTRUDE_STOP " prevenuta estrusione troppo lunga"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -1250,6 +1357,13 @@
#define MSG_PREHEAT_PLA " pre-aquecer PLA"
#define MSG_PREHEAT_ABS " pre-aquecer ABS"
#define MSG_MOVE_AXIS " Mover eixo \x7E"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED " Velocidade:"
#define MSG_NOZZLE " \002Nozzle:"
#define MSG_NOZZLE1 " \002Nozzle2:"
@ -1325,6 +1439,11 @@
#define MSG_ZPROBE_OUT "Sonda fora da mesa"
#define MSG_POSITION_UNKNOWN "Home X/Y antes de Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -1397,7 +1516,9 @@
#define MSG_ENDSTOPS_HIT "O ponto final foi tocado: "
#define MSG_ERR_COLD_EXTRUDE_STOP " Extrusao a frio evitada"
#define MSG_ERR_LONG_EXTRUDE_STOP " Extrusao muito larga evitada"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
@ -1426,6 +1547,13 @@
#define MSG_EXTRUDE "Pursota"
#define MSG_RETRACT "Veda takaisin"
#define MSG_MOVE_AXIS "Liikuta akseleita"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Nopeus"
#define MSG_NOZZLE "Suutin"
#define MSG_NOZZLE1 "Suutin2"
@ -1495,6 +1623,11 @@
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
@ -1567,6 +1700,200 @@
#define MSG_ENDSTOPS_HIT "paatyrajat aktivoitu: "
#define MSG_ERR_COLD_EXTRUDE_STOP " kylmana pursotus estetty"
#define MSG_ERR_LONG_EXTRUDE_STOP " liian pitka pursotus estetty"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
#endif
#if LANGUAGE_CHOICE == 10
// LCD Menu Messages
#define WELCOME_MSG MACHINE_NAME " Parada."
#define MSG_SD_INSERTED "Tarcheta SD Colocada"
#define MSG_SD_REMOVED "Tarcheta SD Retirada"
#define MSG_MAIN "Menu Prencipal"
#define MSG_AUTOSTART " Autostart"
#define MSG_DISABLE_STEPPERS "Amortar Motors"
#define MSG_AUTO_HOME "Levar a l'Orichen" // "Levar Eixes a o Zero"
#define MSG_SET_ORIGIN "Establir Zero"
#define MSG_PREHEAT_PLA "Precalentar PLA"
#define MSG_PREHEAT_PLA_SETTINGS "Achustar temp. PLA"
#define MSG_PREHEAT_ABS "Precalentar ABS"
#define MSG_PREHEAT_ABS_SETTINGS "Achustar temp. ABS"
#define MSG_COOLDOWN "Enfriar"
#define MSG_SWITCH_PS_ON "Enchegar Fuent"
#define MSG_SWITCH_PS_OFF "Desenchegar Fuent"
#define MSG_EXTRUDE "Extruir"
#define MSG_RETRACT "Retraer"
#define MSG_MOVE_AXIS "Mover Eixes"
#define MSG_MOVE_X "Move X"
#define MSG_MOVE_Y "Move Y"
#define MSG_MOVE_Z "Move Z"
#define MSG_MOVE_E "Extruder"
#define MSG_MOVE_01MM "Move 0.1mm"
#define MSG_MOVE_1MM "Move 1mm"
#define MSG_MOVE_10MM "Move 10mm"
#define MSG_SPEED "Velocidat"
#define MSG_NOZZLE "Nozzle"
#define MSG_NOZZLE1 "Nozzle2"
#define MSG_NOZZLE2 "Nozzle3"
#define MSG_BED "Base"
#define MSG_FAN_SPEED "Ixoriador"
#define MSG_FLOW "Fluxo"
#define MSG_CONTROL "Control"
#define MSG_MIN "\002 Min"
#define MSG_MAX "\002 Max"
#define MSG_FACTOR "\002 Fact"
#define MSG_AUTOTEMP "Autotemp"
#define MSG_ON "On"
#define MSG_OFF "Off"
#define MSG_PID_P "PID-P"
#define MSG_PID_I "PID-I"
#define MSG_PID_D "PID-D"
#define MSG_PID_C "PID-C"
#define MSG_ACC "Acel"
#define MSG_VXY_JERK "Vxy-jerk"
#define MSG_VZ_JERK "Vz-jerk"
#define MSG_VE_JERK "Ves-jerk"
#define MSG_VMAX "Vmax"
#define MSG_X "x"
#define MSG_Y "y"
#define MSG_Z "z"
#define MSG_E "y"
#define MSG_VMIN "Vmin"
#define MSG_VTRAV_MIN "VTrav min"
#define MSG_AMAX "Amax"
#define MSG_A_RETRACT "A-retrac."
#define MSG_XSTEPS "X trangos/mm"
#define MSG_YSTEPS "Y trangos/mm"
#define MSG_ZSTEPS "Z trangos/mm"
#define MSG_ESTEPS "E trangos/mm"
#define MSG_RECTRACT "Retraer"
#define MSG_TEMPERATURE "Temperatura"
#define MSG_MOTION "Movimiento"
#define MSG_STORE_EPROM "Alzar Memoria"
#define MSG_LOAD_EPROM "Cargar Memoria"
#define MSG_RESTORE_FAILSAFE "Rest. d'emerchencia"
#define MSG_REFRESH "Tornar a cargar"
#define MSG_WATCH "Monitorizar"
#define MSG_PREPARE "Preparar"
#define MSG_TUNE "Achustar"
#define MSG_PAUSE_PRINT "Pausar Impresion"
#define MSG_RESUME_PRINT "Continar Impresion"
#define MSG_STOP_PRINT "Detener Impresion"
#define MSG_CARD_MENU "Menu de SD"
#define MSG_NO_CARD "No i hai Tarcheta SD"
#define MSG_DWELL "Reposo..."
#define MSG_USERWAIT "Asperando Ordines..."
#define MSG_RESUMING "Continando Impresion"
#define MSG_NO_MOVE "Sin movimiento"
#define MSG_KILLED "ATURADA D'EMERCHENCIA. "
#define MSG_STOPPED "ATURADA."
#define MSG_CONTROL_RETRACT "Retraer mm"
#define MSG_CONTROL_RETRACTF "Retraer F"
#define MSG_CONTROL_RETRACT_ZLIFT "Devantar mm"
#define MSG_CONTROL_RETRACT_RECOVER "DesRet +mm"
#define MSG_CONTROL_RETRACT_RECOVERF "DesRet F"
#define MSG_AUTORETRACT "AutoRetr."
#define MSG_FILAMENTCHANGE "Cambear"
#define MSG_INIT_SDCARD "Encetando. Tarcheta-SD"
#define MSG_CNG_SDCARD "Cambiar Tarcheta-SD"
#define MSG_RECTRACT_WIDE "Retraer"
#define MSG_TEMPERATURE_WIDE "Temperatura"
#define MSG_TEMPERATURE_RTN "Temperatura"
#define MSG_MAIN_WIDE "Menu Prencipal"
#define MSG_MOTION_WIDE "Movimiento"
#define MSG_PREPARE_ALT "Preparar"
#define MSG_CONTROL_ARROW "Control"
#define MSG_RETRACT_ARROW "Retraer"
#define MSG_PART_RELEASE "Desacople Parcial"
#define MSG_STEPPER_RELEASED "Desacoplada."
#define MSG_ZPROBE_OUT "ZProbe Outside Bed"
#define MSG_POSITION_UNKNOWN "Home X/Y before Z"
#define MSG_ZPROBE_ZOFFSET "Z Offset"
#define MSG_BABYSTEP_X "Babystep X"
#define MSG_BABYSTEP_Y "Babystep Y"
#define MSG_BABYSTEP_Z "Babystep Z"
#define MSG_ENDSTOP_ABORT "Endstop abort"
#define MSG_CONTRAST "Contrast"
// Serial Console Messages
#define MSG_Enqueing "En coda \""
#define MSG_POWERUP "PowerUp"
#define MSG_EXTERNAL_RESET " Reset Externo"
#define MSG_BROWNOUT_RESET " Reset por Voltaje Incorrecto"
#define MSG_WATCHDOG_RESET " Reset por Bloqueo"
#define MSG_SOFTWARE_RESET " Reset por Software"
#define MSG_MARLIN "Marlin "
#define MSG_AUTHOR " | Autor: "
#define MSG_CONFIGURATION_VER " Zaguer esvielle: "
#define MSG_FREE_MEMORY " Memoria libre: "
#define MSG_PLANNER_BUFFER_BYTES " PlannerBufferBytes: "
#define MSG_OK "ok"
#define MSG_FILE_SAVED "Guardau."
#define MSG_ERR_LINE_NO "O Numero de Linea no ye igual a l'Ultimo Numero de Linea+1, Ultima Linea:"
#define MSG_ERR_CHECKSUM_MISMATCH "o checksum no coincide, Ultima Linea:"
#define MSG_ERR_NO_CHECKSUM "No se podió trobar o Checksum con o numero de linea, Ultima Linea:"
#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No se trobo o Numero de Linea con o Checksum, Ultima Linea:"
#define MSG_FILE_PRINTED "Impresion rematada"
#define MSG_BEGIN_FILE_LIST "Prencipio d'a lista de fichero"
#define MSG_END_FILE_LIST "Fin d'a lista de fichero"
#define MSG_M104_INVALID_EXTRUDER "M104 Extrusor Invalido "
#define MSG_M105_INVALID_EXTRUDER "M105 Extrusor Invalido "
#define MSG_M200_INVALID_EXTRUDER "M200 Extrusor Invalido "
#define MSG_M218_INVALID_EXTRUDER "M218 Extrusor Invalido "
#define MSG_ERR_NO_THERMISTORS "No i hai termistores - no temp"
#define MSG_M109_INVALID_EXTRUDER "M109 Extrusor Invalido "
#define MSG_HEATING "Calentando..."
#define MSG_HEATING_COMPLETE "Calentamiento Feito."
#define MSG_BED_HEATING "Calentando la base."
#define MSG_BED_DONE "Base Calient."
#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
#define MSG_COUNT_X " Cuenta X:"
#define MSG_ERR_KILLED "Impresora Aturada con kill()!!"
#define MSG_ERR_STOPPED "Impresora aturada por errors. Apanye a error y use M999 Ta reiniciar!. (a temperatura se reestablece. Ajustela antes de continar)"
#define MSG_RESEND "Reninviar:"
#define MSG_UNKNOWN_COMMAND "Comando Desconoixiu:\""
#define MSG_ACTIVE_EXTRUDER "Extrusor Activo: "
#define MSG_INVALID_EXTRUDER "Extrusor Invalido"
#define MSG_X_MIN "x_min: "
#define MSG_X_MAX "x_max: "
#define MSG_Y_MIN "y_min: "
#define MSG_Y_MAX "y_max: "
#define MSG_Z_MIN "z_min: "
#define MSG_Z_MAX "z_max: "
#define MSG_M119_REPORT "Comprobando fins de corrida."
#define MSG_ENDSTOP_HIT "PULSAU"
#define MSG_ENDSTOP_OPEN "ubierto"
#define MSG_HOTEND_OFFSET "Hotend offsets:"
#define MSG_SD_CANT_OPEN_SUBDIR "No se podió ubrir a subcarpeta."
#define MSG_SD_INIT_FAIL "Fallo en encetar a SD"
#define MSG_SD_VOL_INIT_FAIL "Fallo en amontar o volumen"
#define MSG_SD_OPENROOT_FAIL "Fallo en ubrir a carpeta raiz"
#define MSG_SD_CARD_OK "Tarcheta SD OK"
#define MSG_SD_WORKDIR_FAIL "Fallo en ubrir a carpeta de treballo"
#define MSG_SD_OPEN_FILE_FAIL "Error en ubrir, Fichero: "
#define MSG_SD_FILE_OPENED "Fichero ubierto:"
#define MSG_SD_SIZE " Grandaria:"
#define MSG_SD_FILE_SELECTED "Fichero Seleccionau"
#define MSG_SD_WRITE_TO_FILE "Escribindo en o fichero: "
#define MSG_SD_PRINTING_BYTE "SD imprentando o byte "
#define MSG_SD_NOT_PRINTING "No se ye imprentando con SD"
#define MSG_SD_ERR_WRITE_TO_FILE "Error en escribir en o fichero"
#define MSG_SD_CANT_ENTER_SUBDIR "No se puede ubrir a carpeta:"
#define MSG_STEPPER_TOO_HIGH "Steprate masiau alto : "
#define MSG_ENDSTOPS_HIT "S'ha tocau a fin de carril: "
#define MSG_ERR_COLD_EXTRUDE_STOP " extrusion fria privada"
#define MSG_ERR_LONG_EXTRUDE_STOP " extrusion masiau larga privada"
#define MSG_BABYSTEPPING_X "Babystepping X"
#define MSG_BABYSTEPPING_Y "Babystepping Y"
#define MSG_BABYSTEPPING_Z "Babystepping Z"
#endif
#endif // ifndef LANGUAGE_H

45
Marlin/pins.h

@ -375,7 +375,7 @@
* Arduino Mega pin assignment
*
****************************************************************************************/
#if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67
#if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67 || MOTHERBOARD == 68
#define KNOWN_BOARD 1
//////////////////FIX THIS//////////////
@ -391,7 +391,7 @@
// #define RAMPS_V_1_0
#if MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67
#if MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67 || MOTHERBOARD == 68
#define LARGE_FLASH true
@ -472,12 +472,26 @@
#define E1_DIR_PIN 34
#define E1_ENABLE_PIN 30
#if MOTHERBOARD == 68
#define E2_STEP_PIN 23
#define E2_DIR_PIN 25
#define E2_ENABLE_PIN 40
#define E3_STEP_PIN 27
#define E3_DIR_PIN 29
#define E3_ENABLE_PIN 41
#define E4_STEP_PIN 43
#define E4_DIR_PIN 37
#define E4_ENABLE_PIN 42
#endif
#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#endif
#if MOTHERBOARD == 33 || MOTHERBOARD == 35 || MOTHERBOARD == 67
#if MOTHERBOARD == 33 || MOTHERBOARD == 35 || MOTHERBOARD == 67 || MOTHERBOARD == 68
#define FAN_PIN 9 // (Sprinter config)
#else
#define FAN_PIN 4 // IO pin. Buffer needed
@ -511,17 +525,33 @@
#define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter)
#endif
#define HEATER_2_PIN -1
#if MOTHERBOARD == 77
#define HEATER_0_PIN 10
#define HEATER_1_PIN 12
#define HEATER_2_PIN 6
#elif MOTHERBOARD == 68
#define HEATER_2_PIN 16
#define HEATER_3_PIN 17
#define HEATER_4_PIN 4
#define HEATER_5_PIN 5
#define HEATER_6_PIN 6
#define HEATER_7_PIN 11
#else
#define HEATER_2_PIN -1
#endif
#define TEMP_0_PIN 13 // ANALOG NUMBERING
#define TEMP_1_PIN 15 // ANALOG NUMBERING
#if MOTHERBOARD == 68
#define TEMP_2_PIN 12 // ANALOG NUMBERING
#define TEMP_3_PIN 11 // ANALOG NUMBERING
#define TEMP_4_PIN 10 // ANALOG NUMBERING
#define TC1 4 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
#define TC2 5 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
#else
#define TEMP_2_PIN -1 // ANALOG NUMBERING
#endif
#if MOTHERBOARD == 35
#define HEATER_BED_PIN -1 // NO BED
@ -532,9 +562,8 @@
#define HEATER_BED_PIN 8 // BED
#endif
#endif
#define TEMP_BED_PIN 14 // ANALOG NUMBERING
#define TEMP_BED_PIN 14 // ANALOG NUMBERING
#ifdef NUM_SERVOS
#define SERVO0_PIN 11
@ -552,6 +581,10 @@
#endif
#endif
#if MOTHERBOARD == 68
#define BEEPER 33
#endif
#ifdef TEMP_STAT_LEDS
#if MOTHERBOARD == 67
#define STAT_LED_RED 6

30
Marlin/ultralcd.cpp

@ -344,7 +344,7 @@ static void lcd_babystep_x()
}
if (lcdDrawUpdate)
{
lcd_implementation_drawedit(PSTR("Babystepping X"),"");
lcd_implementation_drawedit(PSTR(MSG_BABYSTEPPING_X),"");
}
if (LCD_CLICKED)
{
@ -364,7 +364,7 @@ static void lcd_babystep_y()
}
if (lcdDrawUpdate)
{
lcd_implementation_drawedit(PSTR("Babystepping Y"),"");
lcd_implementation_drawedit(PSTR(MSG_BABYSTEPPING_Y),"");
}
if (LCD_CLICKED)
{
@ -384,7 +384,7 @@ static void lcd_babystep_z()
}
if (lcdDrawUpdate)
{
lcd_implementation_drawedit(PSTR("Babystepping Z"),"");
lcd_implementation_drawedit(PSTR(MSG_BABYSTEPPING_Z),"");
}
if (LCD_CLICKED)
{
@ -415,10 +415,10 @@ static void lcd_tune_menu()
#ifdef BABYSTEPPING
#ifdef BABYSTEP_XY
MENU_ITEM(submenu, "Babystep X", lcd_babystep_x);
MENU_ITEM(submenu, "Babystep Y", lcd_babystep_y);
MENU_ITEM(submenu, MSG_BABYSTEP_X, lcd_babystep_x);
MENU_ITEM(submenu, MSG_BABYSTEP_Y, lcd_babystep_y);
#endif //BABYSTEP_XY
MENU_ITEM(submenu, "Babystep Z", lcd_babystep_z);
MENU_ITEM(submenu, MSG_BABYSTEP_Z, lcd_babystep_z);
#endif
#ifdef FILAMENTCHANGEENABLE
MENU_ITEM(gcode, MSG_FILAMENTCHANGE, PSTR("M600"));
@ -573,12 +573,12 @@ static void lcd_move_menu_axis()
{
START_MENU();
MENU_ITEM(back, MSG_MOVE_AXIS, lcd_move_menu);
MENU_ITEM(submenu, "Move X", lcd_move_x);
MENU_ITEM(submenu, "Move Y", lcd_move_y);
MENU_ITEM(submenu, MSG_MOVE_X, lcd_move_x);
MENU_ITEM(submenu, MSG_MOVE_Y, lcd_move_y);
if (move_menu_scale < 10.0)
{
MENU_ITEM(submenu, "Move Z", lcd_move_z);
MENU_ITEM(submenu, "Extruder", lcd_move_e);
MENU_ITEM(submenu, MSG_MOVE_Z, lcd_move_z);
MENU_ITEM(submenu, MSG_MOVE_E, lcd_move_e);
}
END_MENU();
}
@ -603,9 +603,9 @@ static void lcd_move_menu()
{
START_MENU();
MENU_ITEM(back, MSG_PREPARE, lcd_prepare_menu);
MENU_ITEM(submenu, "Move 10mm", lcd_move_menu_10mm);
MENU_ITEM(submenu, "Move 1mm", lcd_move_menu_1mm);
MENU_ITEM(submenu, "Move 0.1mm", lcd_move_menu_01mm);
MENU_ITEM(submenu, MSG_MOVE_10MM, lcd_move_menu_10mm);
MENU_ITEM(submenu, MSG_MOVE_1MM, lcd_move_menu_1mm);
MENU_ITEM(submenu, MSG_MOVE_01MM, lcd_move_menu_01mm);
//TODO:X,Y,Z,E
END_MENU();
}
@ -727,7 +727,7 @@ static void lcd_control_motion_menu()
MENU_ITEM_EDIT(float51, MSG_ZSTEPS, &axis_steps_per_unit[Z_AXIS], 5, 9999);
MENU_ITEM_EDIT(float51, MSG_ESTEPS, &axis_steps_per_unit[E_AXIS], 5, 9999);
#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED
MENU_ITEM_EDIT(bool, "Endstop abort", &abort_on_endstop_hit);
MENU_ITEM_EDIT(bool, MSG_ENDSTOP_ABORT, &abort_on_endstop_hit);
#endif
END_MENU();
}
@ -746,7 +746,7 @@ static void lcd_set_contrast()
}
if (lcdDrawUpdate)
{
lcd_implementation_drawedit(PSTR("Contrast"), itostr2(lcd_contrast));
lcd_implementation_drawedit(PSTR(MSG_CONTRAST), itostr2(lcd_contrast));
}
if (LCD_CLICKED)
{

Loading…
Cancel
Save