# Reparar pin sensor temperatura

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](https://t.me/ThreeDWorkHelpBot)

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

{% embed url="<https://s.click.aliexpress.com/e/_9iwUDd>" %}

{% embed url="<https://s.click.aliexpress.com/e/_AOHeqf>" %}

{% hint style="info" %}
Otra alternativa en el caso que no dispongamos de ningún pin alternativo es usar Thermistor Expander de SKR.

<img src="/files/uCKRvcLQ531akkOmRiax" alt="" data-size="original">

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/>

<img src="/files/TSZjlNqIna7TKkbdBpoC" alt="" data-size="original">

También podremos hacernos el nuestro propio <https://github.com/VoronDesign/Voron-Hardware/tree/master/SKR-Mini_TFT_Thermistor_Board>
{% endhint %}

## 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:

{% embed url="<https://3dwork.qitec.net/guias-impresion-3d/resolucion-de-problemas/problemas-hardware-impresora-3d/control-de-ventiladores-con-mosfet-externo#que-deshabilitar-para-poder-trasladar-la-funcion-de-ventilador-a-otro-pin>" %}

* 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:

{% embed url="<https://3dwork.qitec.net/guias-impresion-3d/resolucion-de-problemas/problemas-hardware-impresora-3d/control-de-ventiladores-con-mosfet-externo#que-deshabilitar-para-poder-trasladar-la-funcion-de-ventilador-a-otro-pin>" %}

* 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:

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

Donde también vemos que tiene un include:

```cpp
// 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

![Esquema de pines de nuestra SKR 1.4, el TH0 con flecha roja lo trasladaremos al TH1 con flecha verde.](/files/-MXNNIULf5P8ljov-tvo)

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:

```cpp
../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

![](/files/-MXNMuytDvCNCULgyK5z)

```cpp
../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
```

![](/files/-MXNMgzvPekNOkI0BCCY)

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


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://marlin.3dwork.io/marlin/troubleshooting-marlin/reparar-pin-sensor-temperatura.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
