2020-03-09 07:42 AM
I am doing a design that will make STM32 more accessible to a broad range of developers. We are relying upon stm32duino combined with accessible boards such as the Adafruit STM32F405 Feather Express.
In order to use any Adafruit Feather, the procedure is
1) purchase the MCU, and connect it by USB
2) download and run the Arduino IDE, which requires no registration or purchase
3) load the Board support files for your board by using the Arduino Board Manager
4) load an Example source code
5) press the Download button, and it works
Unfortunately, there are three problems with ST's offering that discourages use of STM32. I strongly believe that ST needs to fix these, and it should be doable very quickly.
1) STM32CubeProgrammer needs to be downloadable without registration on ST's website. This is a barrier that slows the process down. Anything that involves email confirmation is highly subject to error. The STM32CubeProgrammer should instead use a "shrink wrap" license on its web page that doesn't involve registration.
2) STM32CubeProgrammer must work on its target operating systems in a way that is consistent with those OS's security policies. Right now, on the Mac, the STM32CubeProgrammer executables are NOT DIGITALLY SIGNED, and in MacOS Catalina this means that they cannot be loaded except by superhuman developers. The OS treats them like malware and makes them extremely difficult to install. ST's own documentation even recommends something quite bad: that the user disables all security in the OS using a sudo terminal command! Instead, STM32CubeProgrammer should be digitally signed and thus easily installable, and ideally should even be in the Mac app store.
3) STM32CubeProgrammer should be included as an automatically-installed part of the STM32DUINO installation, as is the case with other MCUs. The concept that someone needs to do a separate install completely defeats the usability of Arduino, which is the standard industry-wide for industrial IoT developers who are prototyping their products.
Can you please consider these improvements? Thank you for listening.