Según Hoja de datos STM32F446RETx:
3.13 Relojes e Inicio: "Al reiniciar, el oscilador RC interno de 16 MHz se selecciona como reloj de CPU por defecto. El oscilador RC interno de 16 MHz está ajustado en fábrica para ofrecer una precisión del 1% a 25 °C. La aplicación luego puede seleccionar como reloj de sistema ya sea el oscilador RC o una fuente de reloj externa de 4-26 MHz."
Algunos microcontroladores requieren configurar algunos bits de configuración no volátiles para configurar la fuente del reloj del sistema (por ejemplo, el Atmel ATmega328 tiene un registro "FUSE"). Pero basándonos en este párrafo de la hoja de datos, parece que el STM32F no necesita un cristal externo para su funcionamiento básico.
Tenga en cuenta que una precisión de reloj del 1% será una limitación de rendimiento para algunos tipos de comunicaciones. Normalmente solo utilizamos la configuración sin cristal en aplicaciones de alto volumen y costos sensibles... los cristales no son tan caros y tener un reloj estable ayuda a eliminar muchos tipos de problemas. Si aún no ha construido este PCB, le recomendaría al menos considerar la opción de usar un cristal externo, incluso si inicialmente lo deja sin colocar.