I re-configured the WAV trigger Pro as indicated to run as a MIDI Host. It works very well. Running it with a 5.5 v , 550ma . both the WAV trigger and a MIDI usb keyboard. The WAV trigger board feels hot after very few minutes. Is this normal ? Anything I should do?
Yes, the STM32H750 at 480MHz does tend to run hot, although it’s within spec. We measured temps across the board to make sure we weren’t exceeding the rated temps.
If you are concerned, or if you plan to enclose the WAV Trigger Pro, these adhesive GPU heat sinks applied directly to the STM32H750 can help.
Thanks @robertsonics for such a quick reply. I will eventually enclosed the WAV Trigger Pro in a case , therefore will take your recommendation. Thanks again.
When you do so, please also consider venting for airflow. Keep me posted here. If necessary, I can also experiment with lowering the clock speed.
Hi @robertsonics I noticed it to become quite hot quickly too (not possible to touch by hand any more). It even starts to smell “electronically” a bit.
I wonder if you experimented with lowering the clock speed?
@PRPROG01 mentions 550mA - did you measure that? Afaik USB delivers only 500mA (and I use PoE which also does only 500 mA) so I wonder, since I have other Qwiic devices connected too that already sum up to around 350 mA - wouldn’t that be way too much then, or in other words, can I use the Wav Trigger Pro at all or is it too power consuming then?
I am reasonably certain that @PRPROG01 was saying that he was using a 5.5V supply capable of supplying 550mA, not that the WAV Trigger Pro was drawing 550mA. I don’t recall exactly what the current draw was, but I’d be surprised if it was much more than 200mA.
I used a Fluke infrared thermometer to measure temps and while it does run hot at 480MHz, the highest temps I recorded were well within spec. I did try lowering the clock to 400MHz, but did not notice much of an improvement.
When I get back from travelling next week, I’ll try going down to around 240Mhz. It’s entirely possible that because the limiting factor is usually the speed of the microSD interface, this won’t affect overall performance and I’m guessing would make a noticeable difference in temps.
I’m noticing the same thing: the main IC reaches ~70deg C, according to a FLIR thermal camera. This is when powered via QWIIC; I have not tried using other power sources.
I haven’t had a chance to measure current draw, but at 70C, I’m imagining it to be quite high.
The board continues to function, though. I don’t notice any changes in temperature between idle and playback.
Out of interest, what is the in-spec temperature range?
I do not have FLIR but since I cannot even touch the processor, I would say its likely to be in that 70° range..
In my setup, the board crashes after a few rapid audio FX plays (around 5-10).
At first the audio starts to stutter for around 1-2 seconds, then no more audio until I press the reset button on the audio board.
I have also attached several other Qwiic devices via daisy chain:
- button, haptic driver, LED strip, OLED display, 9 DOF imu
I did not throughoutly test the setup but from what I roughly observe, it seems to be to little power supply, because e.g. as soon as I add the audio board, the led strip starts to NOT light up. When I remove the audio board, everything else works fine. Maybe the audio board does not get enough power to rapidly play audio files over and over again (imagine shooting FX).
Even when I only add Qwiic Button + Audio Board I get the crashes mentioned above when rapidly triggering (meaning several times a second). The sketch is pretty simple, basically I check the button state every 50ms (no main loop delays but via millis() ) and if the button state has changed, I trigger once
wtp.trackPlayPoly(2, -10, 64, 0, 0, 0);
I have precisely followed the hookup instructions and the recommended SDHC card selection. I measured 85 MByte/s read speed, format FAT32 with 32K allocation, Wave files follow naming conventions (0000.wav and so on) with 44100 / 16 bit Mono and no meta tags.
Unfortunately, I’ve seen similar audio issues in the past with another project, using the DFRobot DFPlayer. They also crash when heavily/rapidly used. I have the impression those low-cost audio boards only work as long as they are not very stressed.. but in my case, I need rapid audio FX.
Unless you have put the WAV Trigger Pro inside an enclosure, I doubt that the problems you’re having are heat related. Certainly not impossible, but I’ve run constant playing at full polyphony for days without ever observing an issue related to heat. Having said that, I recognize that these heat levels generate valid concern and early next week I will try reducing the CPU clock speed to see if I can make a noticeable improvement without affecting performance.
In the meantime, let’s assume that your particular problem is not related to heat. Playing sounds rapidly should not cause any other issue other than running out of voices and having the voice stealing algorithm stop voices prematurely. If you are rapidly playing the same sound over and over, you shouldn’t notice the voice stealing.
When you say the board “crashes”, what does this mean precisely? Is there any LED activity? I presume from your post that you are powering a bunch of things over the Qwiic daisy chain? What’s providing that power and do you know for sure that it can supply the necessary current for everything that is drawing power? You can try powering the WAV Trigger Pro separately using a USB C power adaptor.
How long is the file that you are trying to play rapidly?
I just did a quick modification with equally quick testing of lowering the STM32H7 clock from its maximum allowable 480Mhz to 240Mhz. It reduces the full polyphony (playing 24 voices) current draw from around 220mA to around 125mA, and un-scientifically runs cooler. Everything seems to work fine, but that’s with limited stress testing. I just posted the Device version of this (v1.10) on my download page for you all to try.
I did this very quickly before leaving town so you might have something to work with. I’ll be back on Tuesday next week and will continue looking at this, as well as make an equivalent build for the Host firmware. In the meantime, I’ll keep an eye out here for any feedback.
CPU throttle
thanks for looking into cpu throttle, I will try firmware tomorrow and let you know
Power consumption
Seems to be the reason for random crashes:
- setup: power supply over USB-C to micromod board => via Qwiic to boards
- wave file exactly 1000ms length
- rapidly pressing trigger button (like 2-4 times per second) for min. 300 times
- with Qwiic only connected button + audio board = no problems
- with button + haptic + audio board = crash of audio board after around 50 times pressing the trigger. With crash I mean the sound first stutters, then audio board is not reacting any more (rest works), then when I press reset button on audio board all sorts of weird things start to happen but the only way to get everything back running again is to power cycle the whole micromod board
- I found out that when I as you suggested connect the audio board also separately to a USB-C port (so its self powered), all tests so far run smoothly without crash.
Problem with this self-powered approach is though that I do not have a way to do that in the final product as there will be only a PoE-Cable connected to the device that delivers power too. Any idea how to solve this?
Little/no Volume
Besides that I have problems with the volume (when I use the 3,5mm audio jack as in the hookup guide or by wiring a speaker directly to the board)
- connecting USB-powered speakers via audio jack: good, loud sound
- connecting headphones via audio jack: quiet sound
- connecting Thin Speaker - 4 Ohm, 2.5W directly : no sound at all
I assume this means I would additionally require an Amp (like the SparkFun Qwiic Speaker Amp) - but that would also increase the power requirement again, right?
@robertsonics I added your 240 MHz firmware - the CPU stays cooler (can touch it).
When I attach the PoE Network Cable, it seems there is enough power supply then. The WAV Trigger Pro plays the audio clip 300 times without crash.
BUT what I’ve noticed is another stuttering sound (underlying the currently played audio file) when I attach both PoE Network Cable AND USB Cable to the micromod board (both power sources go through the micromod board via Qwiic to the WAV Trigger Pro). If I unplug the USB cable, the stuttering is gone. So maybe a power issue.
Next thing I will test now is how to add an Amp (I have the Qwiic Speaker Amp here) and see how that goes.
Any chance to reduce the CPU speed even more to lower power consumption? Or even make it configureable via Qwiic so I can experiment and adapt by myself?
Underlying noise is usually caused by a grounding issue, such as when there are multiple return paths creating ground loops, or noisy power supplies. If this is the case, you need to isolate the problem to figure out what’s causing it and reconfigure your power/ground scheme accordingly.
I would encourage you not to “wing it” when it comes to supplying current to your system. You should really understand both the amount of current each of your components require, and the amount of current your power supply can safely deliver, and make sure you’re not right at the hairy edge. This is made a little more difficult by the fact that the current required by your amplifier depends on your power output level, i.e. what you are driving and how loud you need it. In general, more volume = more current. Just because it all seems to work now, doesn’t mean it won’t crash due to sagging 3.3V at some point in the future when you hit a volume peak.
I don’t think you can expect something like the WAV Trigger Pro to use much less than the 130mA it does with the lower clock rate. The original WAV Trigger also runs about that much current as well at 180MHz. Lowering the clock rate can have unintended consequences to peak performance.
Finally, regarding the output, line level is meant to drive an amplifier. It can often drive headphones directly - I do it for testing - but the volume is dependent on the impedance of the particular headphone, and it is what it is. You should really be using a headphone amp. There’s no way a line level output can drive speakers directly.
I’ve just had a chance to upload the new firmware – thank you @robertsonics for the quick provision! Very great product support.
It certainly runs cooler now – from 42degC (with a large heatsink) to 33degC (with same heatsink), both at 25degC ambient temp. I haven’t stress-tested the performance of the board, and likely won’t, since I’m using the board in a simple manner (playing one sound at a time).
I wonder if it’s worth making a note somewhere on the product’s documentation about the power requirements, specifically in the context of QWIIC. I usually associate QWIIC devices with low-ish power peripherals like sensors (although, I suppose, that’s not the official, exclusive definition), and just got lucky that the development board I’m using (custom) had enough 3.3V available.
Anyways, thanks again for the updated firmware. I’m very happy with the product!