# Exclude Objects

Una función muy útil para nuestro Klipper es Exclude Objects, con ella podemos cancelar/omitir un objeto de nuestra impresión en caso de que tenga algún problema, ponga en peligro el conjunto de la impresión o que lo incluyésemos por equivocación.

{% hint style="success" %}
La función Exclude Objects está disponible en todas las versiones actuales de Klipper, Moonraker, Mainsail y Fluidd. No se requiere ninguna versión específica si tu instalación está actualizada.
{% endhint %}

## Habilitar la función Label Objects en tu laminador/slicer

Para que Exclude Objects funcione, tu laminador tiene que estar configurado para crear etiquetas en el gcode generado para cada objeto de la impresión. Los laminadores modernos (PrusaSlicer 2.6+, OrcaSlicer, Bambu Studio, Cura 5+) generan estas etiquetas de forma nativa, lo que evita tener que usar el pre-procesado de Moonraker.

{% tabs %}
{% tab title="PrusaSlicer" %}
En PrusaSlicer deberemos habilitar la siguiente opción:

```
Print Settings > Output options > Output file > Label objects
```

![](/files/wmcH1McD4BHULnMkcZQQ)

{% hint style="info" %}
SuperSlicer, el fork de PrusaSlicer, ya no tiene desarrollo activo. Se recomienda migrar a PrusaSlicer u OrcaSlicer.
{% endhint %}
{% endtab %}

{% tab title="Bambu Studio / OrcaSlicer" %}
En Bambu Studio y OrcaSlicer deberemos habilitar la siguiente opción:

```
Process > Others > Label objects / Exclude objects
```

![](/files/smDiyWVCpGfu2XZH5klx)
{% endtab %}

{% tab title="Cura / Ideamaker" %}
Cura e Ideamaker etiquetan los objetos por defecto en el gcode generado y por lo tanto son compatibles directamente sin realizar ninguna configuración adicional.
{% endtab %}
{% endtabs %}

## Habilitar el pre-procesado en Moonraker

Este paso convierte las etiquetas generadas por el laminador en gcode que Klipper pueda procesar. Solo es necesario si tu laminador no genera las etiquetas de forma nativa.

Para habilitarlo abriremos nuestro `moonraker.conf` y añadiremos:

{% code title="./moonraker.conf" %}

```django
[file_manager]
enable_object_processing: True
```

{% endcode %}

{% hint style="warning" %}
**Si tu laminador ya genera etiquetas nativas** (PrusaSlicer 2.6+, OrcaSlicer, Bambu Studio, Cura 5+) **no necesitas activar este pre-procesado**.

Si decides activarlo, ten en cuenta que es un proceso intensivo en I/O. **No se recomienda en hosts de baja potencia como Raspberry Pi Zero**.

Como alternativa externa puedes usar [preprocess-cancellation](https://github.com/kageurufu/cancelobject-preprocessor) desde tu propio ordenador antes de cargar el fichero.
{% endhint %}

## Habilitando Exclude Objects en Klipper

Para que Klipper procese correctamente la exclusión de objetos tenemos que habilitarlo en nuestro `printer.cfg`:

{% code title="./printer.cfg" %}

```django
[exclude_object]
```

{% endcode %}

{% hint style="info" %}
Tenéis más información sobre el [módulo exclude\_object](https://www.klipper3d.org/Exclude_Object.html) en la documentación oficial de Klipper.
{% endhint %}

{% hint style="danger" %}
\*\*Para que Exclude Objects funcione es necesario reiniciar Klipper.\*\*Un `FIRMWARE_RESTART` desde la UI es suficiente; no hace falta reiniciar el sistema completo.
{% endhint %}

## Uso desde la interfaz web

Con todo activado y un gcode que incluya las etiquetas de objetos, todos los interfaces compatibles mostrarán controles para excluir objetos durante la impresión:

{% tabs %}
{% tab title="Mainsail" %}
Aparecerá un nuevo botón en el apartado de estado de impresión:

<figure><img src="/files/cEmMujHsqMO86OEYSKaA" alt=""><figcaption></figcaption></figure>

Ese botón abre una ventana donde seleccionamos los objetos a excluir:

<figure><img src="/files/8I5dg6M1d3ND00s5NGQq" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Fluidd" %}
Fluidd también soporta Exclude Objects desde sus versiones actuales. Mostrará los objetos disponibles en el panel de estado de impresión con controles equivalentes a Mainsail.
{% endtab %}

{% tab title="KlipperScreen" %}
KlipperScreen muestra los objetos en pantalla durante la impresión y permite excluirlos directamente desde el panel táctil, sin necesidad de acceder a la interfaz web.
{% endtab %}
{% endtabs %}

## Uso desde consola

También puedes excluir objetos manualmente desde la consola de Klipper con el comando:

```
EXCLUDE_OBJECT NAME=<nombre_del_objeto>
```

El nombre del objeto es el que aparece en la interfaz o en el gcode bajo la etiqueta `EXCLUDE_OBJECT_DEFINE NAME=`.


---

# 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://klipper.3dwork.io/klipper/mejoras/mainsail-mejoras/exclude-objects.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.
