Salud y saludos.
Como sospechaba si el checkbox no es activado el valor que envía es vacío.
El problema era que lo estaba gestionando mal.
Tuve que poner un condicional, una vez enviado el formulario, para controlarlo.
Código:
if (is_null($ciclo)){
$ciclo = '0';
}
Por si a alguien le pasa lo mismo.