This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Cambiar drivers A4988 por TMC2209 v4
#41
@Simemart he echo lo que me dices pero no entiendo nada... Esto me ha salido
Connecting...
Printer is now online.
>>> m122
SENDING:M122
X Y Z Z2 E
Address 0 0 0 0 0
Enabled false false false false false
Set current 800 800 800 800 800
RMS current 1436 1436 1436 1436 1436
MAX current 2025 2025 2025 2025 2025
Run current 25/31 25/31 25/31 25/31 25/31
Hold current 12/31 12/31 12/31 12/31 12/31
CS actual 0/31 0/31 0/31 0/31 0/31
PWM scale
vsense 0=.325 0=.325 0=.325 0=.325 0=.325
stealthChop false false false false false
msteps 256 256 256 256 256
interp false false false false false
tstep 0 0 0 0 0
PWM thresh.
[mm/s]
OT prewarn false false false false false
pwm scale sum 0 0 0 0 0
pwm scale auto 0 0 0 0 0
pwm offset auto 0 0 0 0 0
pwm grad auto 0 0 0 0 0
off time 0 0 0 0 0
blank time 16 16 16 16 16
hysteresis
-end -3 -3 -3 -3 -3
-start 1 1 1 1 1
Stallguard thrs 0 0 0 0 0
uStep count 0 0 0 0 0
DRVSTATUS X Y Z Z2 E
sg_result 0 0 0 0 0
stst * * * * *
olb
ola
s2gb
s2ga
otpw
ot
157C
150C
143C
120C
s2vsa
s2vsb
Driver registers:
X 0x00:00:00:00 Bad response!
Y 0x00:00:00:00 Bad response!
Z 0x00:00:00:00 Bad response!
Z2 0x00:00:00:00 Bad response!
E 0x00:00:00:00 Bad response!
Testing X connection... Error: All LOW
Testing Y connection... Error: All LOW
Testing Z connection... Error: All LOW
Testing Z2 connection... Error: All LOW
Testing E connection... Error: All LOW

Así tengo los puentes de debajo del driver 

[Imagen: 17150961624013853859817455429964.jpg]
  Responder
#42
Como se ve al final del reporte, no se están conectando por UART
  Responder
#43
Me podrías decir que tengo que hacer para conectarlos en modo UART???
Estoy revisando de arriba a abajo la configuración de marlin y no se que puede pasar, los pines de la placa los tengo puesto donde pone en la pagina de github que me manda el vendedor, no se que puede pasar
  Responder
#44
Pues según MakerBase, para la placa solo poner ese puente que se ve en la foto y por la configuración de Marlin lo veo todo correcto, así que no descarto que pueda ser un problema con ese modelo de driver, pues esto ha pasado con algunas placas de Bigteeetrech similares a esta: voy a investigar algo más a fondo esto.
  Responder
#45
@Simemart, muchas gracias por tu tiempo.
Lo único que he visto que no se si será es en configuration_adv esta linea:
//#define SOFTWARE_DRIVER_ENABLE esta en la posición 3029
no se si se tendría que activar no lo entiendo muy bien.

No se si ayudara de algo pero creo que para que haga 16 subdivisiones hay que poner mas puentes. lo que no se si hay que ponerlos si esta conectado en modo UART o no.

https://blog.csdn.net/gjy_skyblue/articl....3001.5501

En esta pagina del vendedor sale todo pero no lo se interpretar bien

He puesto la configuracion para el ventilador 2 como me dijiste y efectivamente cuando el extrusor se pone a mas de 50º se enciende pero me estoy dando cuenta de que el ventilador de capa no se regula, o funciona o no funciona. del 0 al 50% no funciona y a partir de 50% se pone a tope no se xq sera...
  Responder
#46
Esa configuración se refiere al pin ENABLE del driver (activación), pero los TMC2209 tienen esa línea física, por lo que no deberían necesitar hacerlo por software y en todo caso no se activarían (no se moverían los motores) en caso contrario y sí lo hacen.
Los puentes para configurar los micropasos no funcionan en UART: como en este momento no están en ese modo sino en STEP/DIR, para conseguir los 16 micropasos habría que colocar los puentes correspondientes , pero también habría que quitar antes el que habilita UART y configurar en Marlin el driver como TMC2209_STANDALONE, que es lo que le indica que el driver va a funcionar en STEP/DIR y no en UART.
Esa página en chino es bastante indescifrable, aunque no veo que tenga nada distinto de lo que contiene la wiki de MKS.
Lo del ventilador de capa también es raro: prueba a enviar los comandos gcode M106 S64 (25%), M106 S128 (50%), M106 S192 (75%), M106 S255 (100%) y M106 S0 (0%), a ver como se comporta.
  Responder
#47
Mmm y no voy a poder usarlo en modo UART?? Me hubiera gustado probar cosas nuevas por eso cambiaba toda la electrónica. Otro dato curioso es que al arrancar la placa se enciende el ventilador de capa a tope hasta que termina de arrancar. Los comandos que me pones con s64 no hace nada con s128 se activa a tope con s127 se desactiva, hace lo mismo que desde la pantalla. Igual faltan puentes en algún sitio porque se me hace raro lo que hace...
  Responder
#48
Una cosa que me he dado cuenta es que en la configuración tienes activada la memoria EEPROM, pero la MCU de esta placa no la tiene, por lo que debe hacerse mediante emulación.
Si no se indica lo contrario, se emula mediante un archivo que se guarda en la tarjeta SD que se encuentre en el lector de la placa, lo que no es demasiado práctico.
La placa admite otras dos emulaciones, una en la memoria RAM y otra en la memoria Flash, siendo está última quizá la más recomendable: para activarla, debes cambiar la siguiente línea en el archivo Marlin\src\pins\stm32f4\pins_MKS_ROBIN_NANO_V3_common.h:

//#define FLASH_EEPROM_EMULATION  ->  #define FLASH_EEPROM_EMULATION

compilar y cargar a la placa.
En el primer arranque, quizá pida refrescar la memoria EEPROM: si no lo hace, hay que ir al menú de configuración y utilizar las opciones correspondientes (no sé como lo indicará en esa pantalla, en las normales son Rest. fábrica y Guardar EEPROM, aplicándolas por ese orden).

¿El ventilador de capa está conectado en FAN1? Es muy mosqueante todo lo que te está pasando, sobre todo esto del ventilador, pues aquí no hay ningún misterio ni configuración alguna a realizar.
  Responder
#49
Lo compilo mañana y te cuento vale, lo del ventilador de capa si está en el fan1 y el del extrusor en fan2 el cual he probado y al llegar a 50° como dijiste se enciende a tope. Pero el de capa que está en el fan1 no lo regula no se porque.
  Responder
#50
Estuve mirando la página del vendedor de los TMC2209 que tienes y es bastante mosqueante que indique que, para conectarlos en UART, haya que soldar dos salidas y cortar un pin: me temo que el problema pueden ser los drivers.
  Responder
#51
Bueno te contesto por partes @Simemart.
He cambiado los valores que me has dicho
#define FLASH_EEPROM_EMULATION
y he comentado las lineas de
//#define EEPROM_SETTINGS
//#define EEPROM_CHITCHAT
//#define EEPROM_BOOT_SILENT
//#define EEPROM_INIT_NOW

si intentaba compilar con esas lineas no se si todas o no pero me daba error por eso las he comentado.

y he vuelto ha hacer el m122 que ha cambiado cosas.

>>> m122
SENDING:M122
X Y Z Z2 E
Address 0 0 0 0 0
Enabled false false false false false
Set current 800 800 800 800 800
RMS current 1436 1436 1436 1436 1436
MAX current 2025 2025 2025 2025 2025
Run current 25/31 25/31 25/31 25/31 25/31
Hold current 12/31 12/31 12/31 12/31 12/31
CS actual 0/31 0/31 0/31 0/31 0/31
PWM scale
vsense 0=.325 0=.325 0=.325 0=.325 0=.325
stealthChop false false false false false
msteps 256 256 256 256 256
interp false false false false false
tstep 0 0 0 0 0
PWM thresh.
[mm/s]
OT prewarn false false false false false
pwm scale sum 0 0 0 0 0
pwm scale auto 0 0 0 0 0
pwm offset auto 0 0 0 0 0
pwm grad auto 0 0 0 0 0
off time 0 0 0 0 0
blank time 16 16 16 16 16
hysteresis
-end -3 -3 -3 -3 -3
-start 1 1 1 1 1
Stallguard thrs 0 0 0 0 0
uStep count 0 0 0 0 0
DRVSTATUS X Y Z Z2 E
sg_result 0 0 0 0 0
stst * * * * *
olb
ola
s2gb
s2ga
otpw
ot
157C
150C
143C
120C
s2vsa
0

Por otro lado me han comentado en un foro que descomentase la linea que pone FAN_SOFT_PWM para lo del ventilador, y efectivamente el ventilador de capa regula, manda como señales intermitentes para ir con la velocidad no es que regule el voltaje como hacia la otra.

Lo de los drivers estoy preguntando al vendedor de la placa y al vendedor de los drivers, el de la placa aun no me ha dicho nada pero el de los drivers me ha dicho algo como lo que tu me dices. te adjunto foto.

[Imagen: 1089715084-43205217.png]


Así que no se que hacer.
  Responder
#52
En efecto, si se configura el tipo de EEPROM en el archivo de pins da error, porque se evalúa el SanityCheck con los dos métodos activos (SD y Flash).
Para evitarlo, hay que definir el tipo de EEPROM en uno de los archivos de configuración (por ejemplo en el Configuration.h): comenta de nuevo la línea en el archivo de pins:

#define FLASH_EEPROM_EMULATION  ->  //#define FLASH_EEPROM_EMULATION

y pon así el archivo Configuration.h:

#define EEPROM_SETTINGS    // Persistent storage with M500 and M501
//#define DISABLE_M503        // Saves ~2700 bytes of flash. Disable for release!
#define EEPROM_CHITCHAT      // Give feedback on EEPROM commands. Disable to save flash.
#define EEPROM_BOOT_SILENT    // Keep M503 quiet and only give errors during first load
#if ENABLED(EEPROM_SETTINGS)
    #define FLASH_EEPROM_EMULATION
    #define EEPROM_AUTO_INIT  // Init EEPROM automatically on any errors.
    //#define EEPROM_INIT_NOW  // Init EEPROM on first boot after a new build.
#endif


Que haya que hacer eso para que los drivers funcionen en modo UART con las placas que vienen preparadas para ello, no es de recibo: con seguridad no sucede eso con los TMC2209 de MKS y probablemente de otros fabricantes: parece como si el de esos drivers hubiese intercambiado esas dos salidas.
Es raro que se necesite activar el PWM por software para controlar un ventilador de este tipo: desde que me dedico a esto, nunca he tenido que utilizarlo; otra cosa es que haya que cambiar la frecuencia del PWM, pero eso se hace en el apartado Fan Fast PWM del archivo Configuration_adv.h: en todo caso, nunca he visto que se haya necesitado cambiar eso, ni MKS indica nada, como sería lógico si hubiese este problema.
¿Qué tipo de ventilador de capa tienes?
  Responder
#53
Entonces no cambio lo de
pins_MKS_ROBIN_NANO_V3_common.h:
//#define FLASH_EEPROM_EMULATION  ->  #define FLASH_EEPROM_EMULATION
lo dejo como estaba y modifico esos otros valores que me has puesto.
Lo del ventilador no se porque será pero te puedo decir que en la placa se enciende una luz cada vez que lo activa como si fuera un hotend o la cama caliente que se enciende una luz y cuando llega a la temperatura va a pulsos y que activa la salida, es como si fuera una salida de potencia, no se si con eso me explico o no,
No se que hacer con los drivers, debería comprar otros al mismo que le he comprado la placa MKS para que sean compatibles al 100%. Me fastidia que tardan mas de una semana en llegar pero bueno. Tu que harías @Simemart

Mira te pongo todas las modificaciones que hemos realizado por el momento por si se me pasa algo.

Configuration.h

91 #define MOTHERBOARD BOARD_RAMPS_14_EFB  ->  #define MOTHERBOARD BOARD_MKS_ROBIN_NANO_V3
102 #define SERIAL_PORT  0  ->  #define SERIAL_PORT  -1
162 #define X_DRIVER_TYPE  A4988  ->  #define X_DRIVER_TYPE  TMC2209
163 #define Y_DRIVER_TYPE  A4988  ->  #define Y_DRIVER_TYPE  TMC2209
164 #define Z_DRIVER_TYPE  A4988  ->  #define Z_DRIVER_TYPE  TMC2209
167 //#define Z2_DRIVER_TYPE A4988 ->  #define Z2_DRIVER_TYPE TMC2209
176 #define E0_DRIVER_TYPE A4988  ->  #define E0_DRIVER_TYPE TMC2209
552 #define TEMP_SENSOR_0 1 -> #define TEMP_SENSOR_0 5
704 //#define MPC_EDIT_MENU -> #define MPC_EDIT_MENU
768 //#define PIDTEMPBED -> #define PIDTEMPBED
833 #define PID_FUNCTIONAL_RANGE 10 -> #define PID_FUNCTIONAL_RANGE 3
836 //#define PID_EDIT_MENU -> #define PID_EDIT_MENU
837 //#define PID_AUTOTUNE_MENU -> #define PID_AUTOTUNE_MENU
1133 #define X_MIN_ENDSTOP_INVERTING false ->  #define X_MIN_ENDSTOP_INVERTING true
1134 #define Y_MIN_ENDSTOP_INVERTING false  ->  #define Y_MIN_ENDSTOP_INVERTING true
1199 #define DEFAULT_AXIS_STEPS_PER_UNIT  { 80, 80, 400, 500 } -> #define DEFAULT_AXIS_STEPS_PER_UNIT  { 40, 40, 200, 200 }
1206 #define DEFAULT_MAX_FEEDRATE          { 300, 300, 5, 25 } -> #define DEFAULT_MAX_FEEDRATE          { 150, 150, 6, 80 }
1219 #define DEFAULT_MAX_ACCELERATION      { 3000, 3000, 100, 10000 } -> #define DEFAULT_MAX_ACCELERATION      { 2000, 2000, 50, 5000 }
1362 //#define BLTOUCH -> #define BLTOUCH
1514 #define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 } -> #define NOZZLE_TO_PROBE_OFFSET { -35.5, 17, -1.65 }
1518 #define PROBING_MARGIN 10 -> #define PROBING_MARGIN 30
1521 #define XY_PROBE_FEEDRATE (133*60) -> #define XY_PROBE_FEEDRATE (50*60)
1671 #define INVERT_X_DIR false -> #define INVERT_X_DIR true
1684 #define INVERT_E0_DIR true -> #define INVERT_E0_DIR true
1725 #define X_BED_SIZE 200 -> #define X_BED_SIZE 220
1726 #define Y_BED_SIZE 200 -> #define Y_BED_SIZE 220
1729 #define X_MIN_POS 0 -> #define X_MIN_POS -12.5
1730 #define Y_MIN_POS 0 -> #define Y_MIN_POS -12
1731 #define Z_MIN_POS 0 -> #define Z_MIN_POS 0
1732 #define X_MAX_POS X_BED_SIZE -> #define X_MAX_POS 230
1733 #define Y_MAX_POS Y_BED_SIZE -> #define Y_MAX_POS 260
1904 //#define AUTO_BED_LEVELING_BILINEAR -> #define AUTO_BED_LEVELING_BILINEAR
1919 //#define RESTORE_LEVELING_AFTER_G28 -> #define RESTORE_LEVELING_AFTER_G28
2121 //#define Z_SAFE_HOMING -> #define Z_SAFE_HOMING
2129 #define HOMING_FEEDRATE_MM_M { (50*60), (50*60), (4*60) } -> #define HOMING_FEEDRATE_MM_M { (75*60), (75*60), (4*60) }
2247 #define PREHEAT_1_TEMP_HOTEND 180 -> #define PREHEAT_1_TEMP_HOTEND 200
2248 #define PREHEAT_1_TEMP_BED    70 -> #define PREHEAT_1_TEMP_BED    60
2253 #define PREHEAT_2_TEMP_HOTEND 240 -> #define PREHEAT_2_TEMP_HOTEND 220
2254 #define PREHEAT_2_TEMP_BED    110 -> #define PREHEAT_2_TEMP_BED    90
2271 //#define NOZZLE_PARK_FEATURE -> #define NOZZLE_PARK_FEATURE
2275 #define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10), 20 } -> #define NOZZLE_PARK_POINT { (X_MIN_POS + 0), (Y_MAX_POS - 220), 20 }
2453 #define LCD_LANGUAGE en -> #define LCD_LANGUAGE es
2492 //#define SDSUPPORT  ->  #define SDSUPPORT
3068 //#define MKS_TS35_V2_0  ->  #define MKS_TS35_V2_0
3173 //#define TFT_LVGL_UI  ->  #define TFT_LVGL_UI
3180 //#define MKS_WIFI_MODULE  ->  #define MKS_WIFI_MODULE
3209 //#define TOUCH_SCREEN  ->  #define TOUCH_SCREEN
3259 //#define FAN_SOFT_PWM  ->  #define FAN_SOFT_PWM



CAMBIAR ESTAS LINEAS POSICIÓN 2207

//#define EEPROM_SETTINGS    // Persistent storage with M500 and M501
//#define DISABLE_M503        // Saves ~2700 bytes of flash. Disable for release!
#define EEPROM_CHITCHAT      // Give feedback on EEPROM commands. Disable to save flash.
#define EEPROM_BOOT_SILENT    // Keep M503 quiet and only give errors during first load
#if ENABLED(EEPROM_SETTINGS)
  //#define EEPROM_AUTO_INIT  // Init EEPROM automatically on any errors.
  //#define EEPROM_INIT_NOW  // Init EEPROM on first boot after a new build.
#endif

POR ESTAS OTRAS POSICIÓN 2207

#define EEPROM_SETTINGS    // Persistent storage with M500 and M501
//#define DISABLE_M503        // Saves ~2700 bytes of flash. Disable for release!
#define EEPROM_CHITCHAT      // Give feedback on EEPROM commands. Disable to save flash.
#define EEPROM_BOOT_SILENT    // Keep M503 quiet and only give errors during first load
#if ENABLED(EEPROM_SETTINGS)
    #define FLASH_EEPROM_EMULATION
    #define EEPROM_AUTO_INIT  // Init EEPROM automatically on any errors.
    //#define EEPROM_INIT_NOW  // Init EEPROM on first boot after a new build.
#endif



Configuration_adv.h

638 #define E0_AUTO_FAN_PIN  -1  ->  #define E0_AUTO_FAN_PIN  FAN1_PIN (Enciende FAN2 cuando la boquilla alcanza 50º
1674 //#define USB_FLASH_DRIVE_SUPPORT  ->  #define USB_FLASH_DRIVE_SUPPORT
1694 //#define USE_OTG_USB_HOST  ->  #define USE_OTG_USB_HOST
3215 //#define TMC_DEBUG  ->  #define TMC_DEBUG
  Responder
#54
Porque imagino que no se puede cambiar los pines o algo en la configuración de marlin para adaptar esos drivers, veo una guarrada tener que ir quitando patillas y haciendo puentes sinceramente por mucho que sean los TMC2209 V4, antes montaría los V2 de MKS si fuera llegar y enchufar.
  Responder
#55
Coincido en lo de quitar patillas y soldar, no me parece recomendable.
Sobre una posible solución sin hacer lo anterior, en el software no es factible pues es algo físico del hardware, pero mirando el esquema de la placa, sí habría una forma de hacerlo, aunque habría que implementar un puente que una tres pines en lugar de dos, tal y como indico aquí:

[Imagen: Img1.jpg]


Esto tendría el mismo efecto, que la modificación del driver que indica el vendedor, aunque la forma de implementarlo ya sería otra cuestión.
En todo caso, si te decides a comprar otros, yo iría directamente a por los MKS V2: por lo que yo sé, con ellos sería enchufar y a funcionar, tal y como indica la propia MKS en la wiki.
Vamos con la configuración:
//#define MPC_EDIT_MENU -> #define MPC_EDIT_MENU    <- Este cambio no tiene efecto, ya que no está definido el Model Predictive Control (MPC).
#define PID_FUNCTIONAL_RANGE 10 -> #define PID_FUNCTIONAL_RANGE 3  <- La configuración por defecto suele dar buenos resultados: poner solo 3 ºC de rango para el PID es un margen algo escaso y al calentar se pasará bastante de la temperatura objetivo cuando llegue a ella.
#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 } -> #define NOZZLE_TO_PROBE_OFFSET { -35.5, 17, -1.65 }  <- No conviene indicar el Z Probe Offset en el firmware, es mejor dejarlo en 0, pues es una configuración que hay que realizar de forma empírica.
#define X_MAX_POS X_BED_SIZE -> #define X_MAX_POS 230
#define Y_MAX_POS Y_BED_SIZE -> #define Y_MAX_POS 260
  <- Estos dos ajustes no tienen sentido, pues el cabezal de impresión se saldrá de la cama: deja lo que está por defecto.
//#define RESTORE_LEVELING_AFTER_G28 -> #define RESTORE_LEVELING_AFTER_G28  <- mejor definir el parámetro ENABLE_LEVELING_AFTER_G28 en lugar de este (descomentar la siguiente línea,no esta).
#define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10), 20 } -> #define NOZZLE_PARK_POINT { (X_MIN_POS + 0), (Y_MAX_POS - 220), 20 }  <- Normalmente, el aparcado del cabezal de impresión se suele poner donde no estorbe para acceder a la pieza impresa, lo que suele ser en la parte de atrás de la cama, de ahí la configuración por defecto: mucho ojo con esto, pues en tu caso no conviene utilizar los parámetros *_MIN_POS, ya que son negativos y tampoco los *_MAX_POS si no los modificas antes.
//#define FAN_SOFT_PWM  ->  #define FAN_SOFT_PWM  <- sobre esto ya comenté en mi anterior mensaje.
  Responder
#56
Gracias @Simemart, probare lo de los puentes que me dices que eso es fácil y vuelvo a mandar el comando m122 a ver que me responde. pero con eso no tendría que quitar la patilla que ponía el vendedor de los drivers? 
pero que si vemos pegas compro los tmc2209 v2 de mks y fuera, me espero un par de semanas mas que no pasa nada y estos me los guardo para la mega2560 para que no hagan ruido.

Gracias por revisar toda mi configuración, se que soy un poco pesado.

Tengo un bloc de notas con los cambios que realizo para saber que cambiar en futuras actualizaciones y como he estado probando cosas y me marcaba lo que cambiaba, porque no consigo que funcione el menu PID en la pantalla, no me muestra nada y este parámetro se me paso quitarlo.
#define MPC_EDIT_MENU   

este en la mega 2560 me daba error al hacer el PID de la cama
#define PID_FUNCTIONAL_RANGE 10

Los offset primero los puse como dijiste pero cuando lo calibre lo introduje en marlin por si se reseteaban los valores en la placa que siguieran siendo los mismos, no se si es lo mas correcto o no,
#define NOZZLE_TO_PROBE_OFFSET { -35.5, 17, -1.65 }

Esto lo puse para que no me limitara movimientos el marlin he puesto los valores máximos, después en el slicer solo se moverá lo que tenga la cama así podía engrasar todo el eje y moverlo con desde la pantalla, es cierto que igual corto un poco el recorrido en el eje Y ya que así ocupa mas espacio.
#define X_MAX_POS
#define Y_MAX_POS

Esto no sabia que era mejor pero ya lo he cambiado
#define RESTORE_LEVELING_AFTER_G28    ->  ENABLE_LEVELING_AFTER_G28

Aquí vuelves a tener razón me lie con las coordenadas solo quería sacarlo de la mesa por si goteaba y la pieza estaba justo en la esquina pero es improbable así que lo dejo como estaba
#define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10), 20 }

y lo del ventilador #define FAN_SOFT_PWM  es porque si no, no regula, no se como hacerlo, es como si fuera regulado por un mosfet que o deja pasar corriente o la corta.
  Responder
#57
Como digo, con ese puente de los tres pines, se consigue lo mismo que dice el vendedor (cortar el pin 5 y soldar 4-5).
Las opciones para configurar por pantalla el PID y los drivers TMC, se encuentran en el menú de configuraciones avanzadas, dentro del menú de configuración general.
Sobre el resto de parámetros, te indico lo que suele ser normal pero, si te funciona bien con los que tienes configurados, no lo cambies.
El área de impresión conviene definirla correctamente en el firmware, para evitar potenciales problemas con el movimiento del cabezal de impresión.
Dado que no puede ser mayor que la superficie de la cama, solo hay que dar un pequeño margen para evitar posibles choques con elementos de sujeción (si los hay) y esa es la mayor superficie de impresión que se podrá conseguir: en el programa de corte debe ponerse la misma que tenga definida el firmware, para que todo se imprima en la posición que se ve en el software.
Además, si lo haces como tenías pensado, configurando el área de impresión en el programa de corte, no te realizará el home del eje Z en el centro de la cama ni te centrará tampoco la rejilla de medición del autolevel, pues lo hará en el centro del área de impresión que tiene configurado el firmware, que no sería la real.
Por cierto, ese pequeño margen respecto a los bordes físicos de la cama, es conveniente utilizarlo también para definir la rejilla de mediciones del autolevel, parámetro PROBING_MARGIN.
Cuando se realiza el home (comando G28) se desactiva el autolevel, por eso hay esos dos parámetros (RESTORE_LEVELING_AFTER_G28 y ENABLE_LEVELING_AFTER_G28): el primero deja el autolevel como estaba antes del G28 y el segundo lo activa independientemente de cómo estuviese antes, de ahí que sea una opción mejor si lo que se quiere es tener siempre activo el autolevel.
  Responder
#58
Ayer no pude hacer nada pero hoy ya he podido meterle mano, he hecho los puentes que me has dicho @Simemart

[Imagen: IMG-20240510-165844-336.jpg]


Y ahora he mandado la orden m122 y me ha salido esto.
Connecting...
Printer is now online.
>>> m122
SENDING:M122
X Y Z Z2 E
Address 0 0 0 0 0
Enabled false false false false false
Set current 800 800 800 800 800
RMS current 795 795 795 795 795
MAX current 1121 1121 1121 1121 1121
Run current 25/31 25/31 25/31 25/31 25/31
Hold current 12/31 12/31 12/31 12/31 12/31
CS actual 12/31 12/31 12/31 12/31 12/31
PWM scale
vsense 1=.18 1=.18 1=.18 1=.18 1=.18
stealthChop true true true true true
msteps 16 16 16 16 16
interp true true true true true
tstep max max max max max
PWM thresh.
[mm/s]
OT prewarn false false false false false
pwm scale sum 14 14 14 14 14
pwm scale auto 0 0 0 0 0
pwm offset auto 36 36 36 36 36
pwm grad auto 14 14 14 14 14
off time 3 3 3 3 3
blank time 24 24 24 24 24
hysteresis
-end -1 -1 -1 -1 -1
-start 1 1 1 1 1
Stallguard thrs 0 0 0 0 0
uStep count 8 8 8 8 40
DRVSTATUS X Y Z Z2 E
sg_result 0 0 0 0 0
stst
olb
ola
s2gb
s2ga
otpw
ot
157C
150C
143C
120C
s2vsa
s2vsb
Driver registers:
X 0xC0:0C:00:00
Y 0xC0:0C:00:00
Z 0xC0:0C:00:00
Z2 0xC0:0C:00:00
E 0xC0:0C:00:00
Testing X connection... OK
Testing Y connection... OK
Testing Z connection... OK
Testing Z2 connection... OK
Testing E connection... OK

puede ser que ya se hayan conectado en modo UART. al menos los micropasos ya se han corregido, tengo que poner los mismos que en la mega 2560.
Que opinas @Simemart?
  Responder
#59
Sí, ya se conectan por UART, eso está solucionado.
Una vez conseguido esto, podrás configurar los parámetros de los drivers de una forma muy sencilla, lo que te permitirá ajustarlos a los valores más adecuados para tu impresora, sobre todo la corriente que envían a los motores: esta debe ser la justa que haga que los ejes se muevan correctamente, ni más ni menos (es decir, sin perder pasos).
Con el control por UART, podrás cambiar esa configuración desde el menú de la pantalla (Configuración>Ajustes avanzados>Controladores>Amperaje Controlador).
Como cualquier cambio del valor de un parámetro realizado en RAM (por el menú de la pantalla o mediante comandos gcode), después hay que guardar las modificaciones en la memoria EEPROM o sino se perderán al apagar la impresora.
  Responder
#60
Vale perfecto, y como puedo saber si no pierde pasos??
Hay un menú que no se que es.

[Imagen: IMG-20240510-182038-500.jpg]

Antes no me dejaba moverlo y ahora puedo poner yes o no. Pero se vuelve loca la placa, se queda como borroso, cuando llegue a casa lo subo para que lo veas.
Existen puentes de esos que tengo que poner en los drivers pero en forma de L para que una los 3. Lo del puente he tenido que recortar y todo, no sé si harán buen contacto.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  Cambiar el Z_SAFE_HOMING del autolevel a una esquina de la cama Hugo43 5 829 01-05-2024, 12:27 AM
Último mensaje: Simemart
  CONSULTA cambiar posicion del extrusor luego de cambiar a guia lineal cesargomezp 1 1 25-02-2024, 12:12 PM
Último mensaje: Simemart
  Error Firmware en Ender V1 con placa MKS Robin E3D 1.0, TMC2209 Palido 1 1 29-12-2023, 10:37 AM
Último mensaje: Simemart
  A4988 campatibilidad con TMC2130 Puig 4 2 27-12-2023, 03:32 PM
Último mensaje: Puig
  CONSULTA Cambiar homing Anet et4 laroja04 4 2 22-12-2023, 01:10 AM
Último mensaje: Simemart