Depending on the BLDC controller, it could even produce voltage spikes. Sharing the SoC supply with it is sheer idiocy!
Yup. I haven't yet touch the hardware, but this for sure will be the first thing to hack and modify.
Even I – a bumbleduck hobbyist – would know enough to have a good filter separating the motor (any motor!) from the SoC supply.
Frankly, I'm still shocked by this discovery. I mean, I don't have the board schematic, and the board itself looks so small that you need a magnifying glass to check things out.
I thought like a user. if I buy a product, it should be well designed ... ain't it? umm.. No, wrong.
In this case, it "emerged" that there is a problem, and the problem seems to be related to the cooling fan, and if this is pure idiocy ... well it's just the *last* idiocy ever with this board. Remember the on-sale choice to overclock the dram and - worse still, in a 1.2Ghz SoC sold without a head-sink? All default incorrect choices that you (the customer, the end user) need to correct.
Depending on the supply voltage you use, perhaps you could use one of those small buck/boost converters to power a suitable PC case fan (3-pin voltage controlled one, 8 - 12 VDC) separately? I prefer larger ones over smaller ones, and undervolt them at 9-10v (depending on the fan), for quiet operation but sufficient airflow. You might consider 3D-printing a baffle and holder for the fan, to direct the airflow.
With my patches both u-boot and the kernel set the operating cpu-clock and the dram-clock to the minim, and in this configuration I have just demonstrated that the SoM doesn't overheat with a passive heat-sink, so in theory, you don't even need a cooling fan.
However, air flow is better, and constant air flow is more than enough, so for sure you don't even need additional noises introduced by a unit that controls the speed of a bldc motor, and the motor itself needs to sink current from the 12V power-rain, so before and not after the LDO that supplies the SoC.
That was a very unusual choice. Not cleaver and rather stupid, and I regret not having noticed this before, but I tend to *trust* the hardware of a product, in fact I spent two months thinking it was all software problems (and there are really problems even with the software).
All boards arrived with a bug with the thermal-zone set in the factory u-boot that, worse still, set the dram clock to the highest value possible, the module is sold without any heat-sink, and they say "
it's ok, trust us", I tried myself, with this configuration the module fries like fry chips, and if it doesn't fry immediately (which, at 1.2Ghz, is just a matter of time) ... well ... you experience several weird behaviors, and continuous crashes.
I too prefer a medium cooling fan to quite operation and sufficient airflow. I have just ordered a dozen 5V ultra silent cooling fans. Just a 5V version of those used years ago on 486-cpus.
The parcel is on its way, in the meanwhile, the first thing to do is to remove the on-board connector for the cooling fan, this will prevent my colleagues to install one.