I recently spent numerous hours debugging the BME680 sensor on a Crazyflie drone, thinking there was an issue with the software they provided. I found however that the issue all along was that I was using a library made for the Cortex M4 architecture, when I should have been using one made for the Cortex M4F.
But the reason I used a Cortex M4 library was because the specs list the Crazyflie as having that processor. So does the Crazyflie have the Cortex M4 or Cortex M4F? If the former, how can the firmware use hard floats? If the latter, why don't the specs say so?
I just don't want other developers to sink hours of their time troubleshooting the wrong problem like I did because of a spec sheet miscommunication.
Cortex M4 or M4F?
Re: Cortex M4 or M4F?
Hi faskrobo!
I am sorry you wasted time!
The Crazyflie has a STM32F405 MCU: https://www.st.com/content/st_com/en/pr ... 5-415.html, which do include a FPU.
As far as I know a Cortex-M4 with a FPU is known as a Cortex-M4F. But it is not uncommon to refer to the STM32F405 as having a Cortex-M4 core, so I can see the confusion, since we do not list FPU support, explicitly, on our product page.
Jonas
I am sorry you wasted time!
The Crazyflie has a STM32F405 MCU: https://www.st.com/content/st_com/en/pr ... 5-415.html, which do include a FPU.
As far as I know a Cortex-M4 with a FPU is known as a Cortex-M4F. But it is not uncommon to refer to the STM32F405 as having a Cortex-M4 core, so I can see the confusion, since we do not list FPU support, explicitly, on our product page.
Jonas