By default the driver only uses digital output. Reason is that most pins do not have a hardware pwm timer that is not used by firmware. See drivers.cpp this function:
void LaserDriver::changeIntensity(secondspeed_t newIntensity) {
#if defined(DOOR_PIN) && DOOR_PIN > -1
if (Printer::isDoorOpen()) {
newIntensity = 0; // force laser off if door is open
}
#endif
if (EVENT_SET_LASER(newIntensity)) {
// Default implementation
#if LASER_PIN > -1
WRITE(LASER_PIN, (LASER_ON_HIGH ? newIntensity > 199 : newIntensity < 200));
#endif
}
intens = newIntensity; // for "Transfer" Status Page
}
If you have a pwm pin using timer 4 or 5 you can replace
WRITE(LASER_PIN, (LASER_ON_HIGH ? newIntensity > 199 : newIntensity < 200));
with
analogWrite(LASER_PIN, newIntensity);
Check pinout diagram which pin satisfies this or check the forum as it was already answered.