MAX32630 PWM uses wrong peripheral; plus a vendor rant

14 Apr 2018

I wanted to post a link to my question on this forum, since it really is an OS issue. Please take a look.

The OS uses the Pulse Train Engine to create PWM, which has the consequence of forcing the output to a maximum 32-place quantization. That makes it worthless for usual PWM uses like driving a servo. The Timer device is the correct one to use, so this library urgently needs an overhaul.

In the original question, I stated that I was off to bit-bang a solution using the Timer device, but I decided that the MAX32630FTHR has two strikes against it now (I can't get the SD interface to read or write a disk, despite several weeks of trying). I moved my code to a K64F and everything works great. I really wanted to use the FTHR since it is very small and would be perfect for my application.

<RANT> To those of you who build this stuff: we users generally don't mind a few minor bugs, and usually don't mind reporting them and working around them until a better solution is released, but it is very disappointing to see boards come to market and have an essentially unsupported code base. I can't find any working examples for using mbed with a MAX32630FTHR, and even the CPU user manual was very hard to find on Maxim's site. Once I read it, I didn't find any examples for setting up peripherals or using them. Terse is not good with CPU manuals.

For an excellent example of a UM, please see NXP's LPC1768 User Manual ( It's what made me really appreciate ARM Cortex M chips in the first place, and why I use mbed at all. The original mbed library for this chip was exceptionally well done. If you want us to use your stuff, take enough time to give us the needed information, and then be willing to provide examples. Maybe even consider using your stuff yourself, so you can help discover your own bugs. You have a lot of competition that understands these things.... </RANT>


- Just Gary

16 Apr 2018


Please direct your rant at the proper party !!!!!

The issues you are complaining about are Maxim fault and not MBEDs !!!!!!!!!!!!!!!!!!

The board vendor and not MBED is responsible for customizing required to support their board on the MBED platform !!!!!!!!!!!!!!!!!!!!!!!!!!!