Skip to main content

Los perfiles de usuario no se aplican solos

Tengo perfiles personalizados en Creality Print desde hace semanas. El 30 de agosto de 2026 perdí dos impresiones seguidas y, al investigarlo, descubrí que esos perfiles existían pero no se estaban usando: el laminador trabajaba con los de fábrica sin decir nada.

Esta página explica cómo detectarlo y cómo evitarlo.

El síntoma

Dos impresiones canceladas con hilos volando, con el ventilador de pieza a tope y la cama notablemente fría al tacto. Mi primera sospecha fue que la aplicación me había «pisado» o corrompido los perfiles.

No era eso. Los perfiles estaban intactos en disco. Simplemente no eran los seleccionados.

La comprobación que decide: el gcode, no la interfaz

La interfaz muestra el nombre del preset en un desplegable, pero ese desplegable puede no reflejar lo que acabó dentro del fichero. La única prueba concluyente está en la cabecera del gcode que la máquina ejecuta:

; print_settings_id    = 0.20mm Standard @Creality K2 Pro 0.4 nozzle - ABK
; filament_settings_id = "Hyper PLA @Creality K2 Pro 0.4 nozzle - ABK"

Si esas dos líneas no terminan con el sufijo de tu preset, estás imprimiendo con los ajustes de fábrica.

El gcode se puede descargar de la propia impresora sin tocar nada, porque la K2 Pro expone Moonraker:

curl -s "http://<IP-de-tu-impresora>:7125/server/files/list?root=gcodes"
curl -s "http://<IP-de-tu-impresora>:7125/server/files/gcodes/<fichero>.gcode" \
  | grep -aE "^; (print|filament)_settings_id"

Qué te llevas si caes a fábrica

Estos son los valores del perfil de fábrica de la K2 Pro que más daño hacen en piezas pequeñas:

  • Cama a 50 °C — es el mínimo del rango del filamento, no un valor neutro.
  • close_fan_the_first_x_layers = 1 — el ventilador de pieza arranca al 100 % en la capa 2, antes de que la primera capa haya agarrado.
  • fan_min_speed y fan_max_speed = 100 — el ventilador va a tope siempre. No es una avería: es el perfil.
  • outer_wall_speed = 200 mm/s — la velocidad del perímetro exterior, que es el que define la cota de encaje de la pieza.

Por qué pasa: cada material necesita SU preset

El agujero que me tumbó las impresiones era este: yo tenía un preset de filamento personalizado, pero de Hyper PLA-CF (fibra de carbono), un material que no uso. El día que cambié de bobina a Hyper PLA normal, no había ningún preset propio al que caer, y el laminador tomó el de sistema.

La regla que saco de ahí:

  • Un preset de un material que no imprimes no protege nada. Cada material que uses de verdad necesita su propio preset personalizado.
  • Y ojo con los nombres: la lista de perfiles trunca el texto por el medio, así que Hyper PLA @Cr...4 nozzle - ABK y Hyper PLA-CF @... nozzle - ABK se leen casi igual en pantalla. La elipsis se come justo el -CF, que es lo único que los distingue.

Los ficheros .info: tus presets viajan a la nube

Cada preset creado desde la interfaz genera un fichero hermano .info junto al .json:

setting_id = 6a7c3ed7675aeed975583544
user_id = <tu id de Creality Cloud>
base_id = GP004
updated_time = 1786527762

Ese setting_id es el vínculo con tu cuenta de Creality Cloud. En el log de la aplicación se ve la sincronización explícitamente:

SyncUserPresets downloadUserPreset start...
ProfileList [https://api.crealitycloud.com/api/cxy/v2/slice/profile/user/list]

Consecuencia práctica: tus presets de usuario pueden sobrescribirse desde la nube. En mi caso no ocurrió, pero el mecanismo existe y conviene saberlo.

Corolario: si borras un preset solo del disco, puede reaparecer en la siguiente sincronización. Para eliminarlo de verdad, bórralo desde la aplicación.

Escribir presets a mano

Se puede, y a veces es lo más rápido. Los ficheros viven en:

~/Library/Application Support/Creality/Creality Print/<version>/user/<tu-id>/
├── filament/
└── process/

Precauciones que no son opcionales:

  • Cierra Creality Print antes de escribir. La aplicación reescribe los ficheros al salir y machacará tus cambios.
  • Haz copia de seguridad de la carpeta antes de tocar nada.
  • Los valores van como listas de cadenas (["60"]), nunca como números. Un valor numérico rompe el parser, que hace operaciones de texto sobre él.
  • Un preset escrito a mano nace sin .info, es decir, sin registrar en la nube. En mi caso sobrevivió y la aplicación lo cargó sin problema, pero la vía segura para que persista es crearlo desde la interfaz.

Ejemplo de preset de filamento válido, que hereda del de sistema y solo cambia lo necesario:

{
    "base_id": "GFSA04",
    "close_fan_the_first_x_layers": ["3"],
    "during_print_exhaust_fan_speed": ["60"],
    "filament_settings_id": ["Hyper PLA @Creality K2 Pro 0.4 nozzle - ABK"],
    "from": "User",
    "hot_plate_temp": ["60"],
    "hot_plate_temp_initial_layer": ["60"],
    "inherits": "Hyper PLA @Creality K2 Pro 0.4 nozzle",
    "name": "Hyper PLA @Creality K2 Pro 0.4 nozzle - ABK",
    "slow_down_layer_time": ["14"],
    "textured_plate_temp": ["60"],
    "textured_plate_temp_initial_layer": ["60"],
    "version": "26.8.4.20"
}

Higiene: los presets duplicados son una trampa

Al duplicar un perfil sin renombrarlo quedan nombres como - Copiar(1) y - Copiar(2). Yo tenía dos, y uno de ellos traía enable_support = 1 con umbral de voladizo a — seleccionarlo por error llena la pieza de soportes.

Con el truncado de nombres de la lista, ese duplicado se lee casi igual que el bueno. Bórralos en cuanto los detectes.

Y sobre las actualizaciones de la aplicación

El mismo día, la aplicación se actualizó sola de la versión 7.2.1 a la 7.2.2 y reescribió 1.896 de 1.957 ficheros de perfil de sistema, añadiendo seis perfiles nuevos.

Lo comprobé contra una copia de Time Machine anterior: de los 56 perfiles de mi impresora, 53 eran idénticos en valores y solo cambió el formato del fichero. Los tres que cambiaron de verdad no afectaban a mi material.

Dos cosas que aprendí de esa comprobación:

  • La aplicación sí reescribe los perfiles de sistema al actualizarse. Que cambie la fecha de todos los ficheros no significa que hayan cambiado los valores.
  • El diff útil es semántico sobre el JSON, no byte a byte. Un cmp marcaba los 56 como distintos solo por el reformateo, lo que habría llevado a una conclusión falsa.

Resumen operativo

  1. Crea un preset personalizado para cada material que uses de verdad.
  2. Antes de lanzar una impresión larga, verifica en el gcode que los dos settings_id son los tuyos.
  3. Borra los duplicados Copiar(n) en cuanto aparezcan.
  4. Si escribes presets a mano: aplicación cerrada, copia de seguridad, y valores como cadenas.