Reparar pin sensor temperatura

Como solucionar problemas con pin de termistor dañados

Un fallo muy común normalmente por mala manipulación o por un corto en un termistor es que el pin de nuestra placa quede dañado y en este caso podemos intentar ajustar nuestro Marlin para usar un pin alternativo para esa función.

Os recordamos que tienes mas guias de ayuda en nuestro bot de Telegram @ThreeDWorkHelpBot

Es MUY aconsejable que desechemos ese termistor para evitar que ese fallo vuelva a dañar otro pin de nuestra placa!!!

Otra alternativa en el caso que no dispongamos de ningún pin alternativo es usar Thermistor Expander de SKR.

El cual podremos conectar a nuestro conector TFT o adaptar al puerto wifi o AUX de nuestra placa para conseguir dos thermistores extras.

https://lab4450.com/product/skr-mini-e3-thermistor-expander/

También podremos hacernos el nuestro propio https://github.com/VoronDesign/Voron-Hardware/tree/master/SKR-Mini_TFT_Thermistor_Board

Cambios en Marlin

El procedimiento es muy sencillo pero antes de nada deberemos de tener claro 3 puntos importantes:

  • saber identificar el fichero pins de nuestra placa y si este tiene incluidos otros relacionados. En el caso de ejemplo que desarrollaremos usaremos uno de los más complejos escenarios usando una SKR 1.4 Turbo. En todo caso puedes revisar la table de nuestra guia de ventiladores:

  • Identificar un pin de nuestra placa PWM, en este caso no solemos tener muchos disponibles por lo que deberemos revisar el esquema de nuestra placa para identificar uno libre y que no sea útil/necesario. Puedes revisar la lista de pines identificados que incluímos en nuestra guía sobre ventiladores:

  • Realizar los cambios de asignación de pines

Cambios a realizar en nuestro fichero pins en Marlin

Vamos o proponer el siguiente escenario... Nuestra placa, SKR 1.4 Turbo, despues de un mantenimiento realizamos un corto en el thermistor y desgraciadamente rompió el pin de la placa... normalmente se dan dos casos:

  • nuestra pantalla muestra -14 en la temperatura, en estos casos estamos de "suerte" ya que normalmente significa que nuestro thermisor esta fallando o no se ha conectado correctamente

  • la lectura de temperatura da valores muy altos, en estos casos normalmente indica un fallo de pines de nuestra placa. Podemos cambiar thermistores con el de la cama para verificar que un thermistor que funciona correctamente en otro pin en este no lo hace

Una vez identificado que el problema debemos identificar el fichero pins de nuestra placa en Marlin, en nuestro caso SKR 1.4 Turbo el fichero pins se encuentra en:

Marlin/src/pins/lpc1769/pins_BTT_SKR_V1_4_TURBO.h

Los ficheros con la definicion de pines se encuentran en Marlin/src/pins y la siguiente carpeta es el tipo de CPU que usa nuestra placa.

Como podemos ver en el fichero pins de nuestra placa SKR 1.4 TURBO este incluye un include de otro:

// Include SKR 1.4 pins
#include "../lpc1768/pins_BTT_SKR_V1_4.h"

Donde también vemos que tiene un include:

// Include common SKR pins
#include "pins_BTT_SKR_common.h"

Verificaremos el ficher pins de nuestra placa, en nuestro caso al solamente usar un extrusor cambiaremos el rol de pines entre el TH0 (falla) con el TH1, en el caso de estar en uso y tal como comentamos al inicio de la guia buscaremos otro pin PWM que no este en uso para trasladar el rol

Así que pasaremos a editar ese fichero "SKR V1 4" de pines e identificaremos la parte donde se definen los thermistores que en nuestro caso es primero en

Ajustaremos los valores tal como vemos a continuación:

../lpc1768/pins_BTT_SKR_V1_4.h
#define TEMP_1_PIN                      P0_24_A1  // 3DWORK - P0_23_A0 Valor Original - A0 (T0) - (67) - TEMP_1_PIN
#define TEMP_BED_PIN                    P0_25_A2  // A2 (T2) - (69) - TEMP_BED_PIN

Aunque este paso no es necesario pero por "consistencia" volveremos al fichero de pins "commons.h" y corregiremos la asignación del pin para TEMP1 para que coincida con el anterior

../lpc1768/pins_BTT_SKR_common.h
// Temperature Sensors
//  3.3V max when defined as an analog input
#ifndef TEMP_0_PIN
  #define TEMP_0_PIN                    P0_23_A0  // 3DWORK - P0_24_A1 Valor Original - A1 (T1) - (68) - TEMP_0_PIN
#endif
#ifndef TEMP_1_PIN
  #define TEMP_1_PIN                    P0_24_A1  // 3DWORK - P0_25_A2 Valor Original - A2 (T2) - (69) - TEMP_1_PIN
#endif
#ifndef TEMP_BED_PIN
  #define TEMP_BED_PIN                  P0_25_A2  // 3DWORK - P0_23_A0 Valor Original - A0 (T0) - (67) - TEMP_BED_PIN
#endif

Ahora tan solo nos queda compilar y seguir fundiendo!!!

Última actualización