La diferencia principal

Bluetooth clásico suele utilizarse cuando el dispositivo expone un canal serie continuo, como ocurre con módulos tipo HC-05. BLE trabaja con servicios y características: el teléfono descubre una estructura de datos y lee, escribe o se suscribe a características concretas.

Cuándo elegir Bluetooth clásico

Es una buena opción cuando el dispositivo ya trabaja como puerto serie y necesitas enviar comandos o recibir texto de forma continua. Para prototipos con Arduino es simple porque la aplicación puede comportarse como una terminal.

Cuándo elegir BLE

BLE es más adecuado cuando quieres exponer variables concretas, trabajar con bajo consumo o aprovechar periféricos modernos que ya están diseñados alrededor de GATT. En vez de pensar en una sola corriente de bytes, se piensa en servicios y características.

Impacto en Flutter

No conviene ocultar ambas tecnologías detrás de una implementación idéntica. La capa de dominio puede compartir conceptos como conectar, desconectar o enviar datos, pero la capa de infraestructura debe respetar las diferencias de descubrimiento, permisos y transporte.

Conclusión

Si el hardware se comporta como un puerto serie, Bluetooth clásico suele ser más directo. Si el dispositivo expone servicios y características o se necesita bajo consumo, BLE es el enfoque natural. Una aplicación como MakerLink necesita soportar ambos sin mezclar sus detalles internos.