Today I updated the PX4 source code from github and build it as usual.
But when I use the command “make px4fmu-v2_default”, errors occurred! And I didn’t meet this problem before.
Anyone can help me? Thank you a lot!
Need I update the arm-none-eabi? But the version of my arm-none-eabi is 4.9, higher than the required version 4.8.
Let me update the arm-none-eabi to version 5.4 for a try.
does it work if you build for v4?
Cool! It works out! Thanks a lot~:slight_smile:
Good to hear, you are out of flash on v2
@metinburak Is there any differences between px4fmuv2 and px4fmuv4? I don’t know much about this.@
@zyq1993 the difference i saw was in the linker script. v4 defines the flash area being 2M and v2 defines it to be 1M. I have’t digged any other config or script differences. But the main is i think the linkerscript.
I also met the same problem as you when I tried to build the code by using ‘make px4fmu-v2_default’. Have you ever solved this problem? From the advice of @CarlOlsson,it seems to work by changing the flash area of px4fmu-v2 to 2M,did it work? Thank you a lot!
Oh, sorry to see your reply late. I don’t know if you have solved this problem.
I solved this problem by using “make px4fmu-v4_default”, and I didn’t changing the flash area of px4fmu-v2 to 2M. I think chaning the flash area should be work.
But depending on which revision of the STM32F427 chip you are using you could run into this bug which is why the ld.script was limiting the firmware to usign only 1MB flash.
I normally solve this problem by editing cmake/configs/nuttx_px4fmu-v2_default.cmake to remove optional components that I don’t need. But I have to admit this is getting harder to do these days as the core components get bigger.
Oh,thanks for your advice.I have never noticed the 2Mb flash’s bug existing in the early revisions of this CPU. Removing the optional apps may be the best way to solve this problem.
Oh thanks for your reply. I cannot solve my problem by changing the command to “make px4fmu-v4_default”, because I have to upload it to the pixhawk v2 instead of the pixhawk v4. I finally solve this problem by removing some modules.
Which modules did you remove? Do you remove them by just commenting them out in nuttx_px4fmu-v2_default.cmake?
I will choose the module that won’t be used, for instance,the modules of quadrotor if my plane is a fixedwing airplane. As for the way of removing, /module/ is okay.