I'm trying to drive a motor for an academic project, using the circuit in the image.
The STM32F4 Discovery board that I'm using in this phase of the project produces a 30Khz PWM at 3V, that is correct (checked with an oscilloscope) but the motor does not turn on.
Anyone can suggest me some motivation for this behaviour?
You need to ensure that the PWM source & the FET are referenced to the same potential.
FET's turn on when the Voltage between their GATE & their SOURCE is greater than their threshold (actual characteristics are then determined by the driving characteristics.
If the 0V of the PSU powering the electrical machine is say... 5V higher than the 0V that is powering your controller ( STM32F4 ) then you will not be able to turn on the FET.
how are the the two 0V connected ? what is the potential difference between the two 0V (the laptop/USB 0V and the PSU 0V)