PX4 Toolchain Introduction Video

To make getting started with PX4 a bit easier, we've compiled an installation video for the Windows installer. The setup instructions for Eclipse are also valid for Mac OS and Linux.

Note that toolchain means a packaged selection of individual standard software required to develop software for a platform. We do not claim to have developed our own Integrated Development Environment (IDE), we just packaged what we needed into one redistributable file. This also implies that this development environment is not just usable for the PX4 platform, but for almost any other ARM-driven micro controllers.

The video runs through all setup steps, starting with the installation of the toolchain, downloading the PX4 Firmware the first time and finishing with Eclipse setup and board flashing. The toolchain can be used to build firmware for PX4FMU, PX4IO, PX4FLOW and any other ARM7, ARM9, ARM Cortex-M3 or ARM Cortex-M4. Functionality-wise it is similar to YAGARTO or CodeSourcery. Of course the credits for this go to MSYS, ARM and all other people porting the GNU toolchain to Windows, we just wrapped everything into an installer.

It contains:

  • ARM GCC (the official ARM GCC build, the only one we tested successfully with enabled M4 FPU)
  • GDB
  • OpenOCD
  • Python
  • GNU / MSYS tools (make, sh, genromfs, xxd, etc)

Developers have the choice to either use the Eclipse IDE and build with double-clicking make targets, or to use plain Makefiles on the console and their preferred text editor. There is a SublimeText 2 project in the Firmware folder, for users preferring SublimeText.

3689471526?profile=original

3689471555?profile=original

 

3689471462?profile=original

 

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • hello;
    i have a problem in the toolchain installation, in the step of the console build i find this error: make 1 :Entering directory make 1 leaving directory  error2
    this error it's displayed in this file attached. 
    3701789674?profile=original
    how i can resolve  this error
    thank you very much
  • We have just uploaded a new installer for Windows, which has the updated source code repository paths. If you have already installed the toolchain, either reinstall with the new setup or adjust the paths in C:\px4\toolchain\msys\1.0\px4_software_download.sh to match these:

    https://github.com/px4

    You only need libopencm3, Firmware and Bootloader, all other folders are now obsolete. These are the final repository URLs, there are no further planned changes.

    PX4 Drone Autopilot
    Professional Open Source Autopilot Stack. PX4 Drone Autopilot has 65 repositories available. Follow their code on GitHub.
  • Developer

    Got PX4 Tool chain with Eclipse running on Windows7 yea!  

    Browsing GPS now, Ubox has DOP message data enabled now ! whoa!

    A pet peeve of mine in APM library, was P_DOP was sent & displayed as H_DOP.

    Many Thanks to all!  

    My MacOSX install is messed up, brew doctor has reported a pageful of errors, I fixed some but, making slow progress, my path is non standard. 

  • Developer

    This is looking pretty darn good.

    Hardware with great potential and solid software framework. And a toolchain with proper IDE on top to work with.

  • @Roy The last revisions of CodeSourcery and of Summon Arm toolchain (stock GCC as well as Linaro GCC) we tested failed generating correct double precision floating point opcodes. That doesn't mean it hasn't been resolved by now. Using the GCC variant officially endorsed by ARM is however a good idea if you want safe code. Since it's GCC 4.6 based, I don't expect any real performance difference between the ARM GCC and other GCC flavors. We just know ARM got this one right and so we will stick to it.

    @Jack How is your question related to the post? If you're worried about the toolchain messing with Windows I can assure you that it, in contrast to 90% of the toolchains out there, does not mess with your system path or environment variables. It is self-contained and will not alter your system (except for start menu entries and the files in the folder).

    @Roberto Yes, I2C works fine and there is even an I2C watchdog that has your back if a transfer fails. Yes, the MPU-6000 is reporting fine now (thanks for the hint, product ID reads succeed), I did not mess extensively with it yet. Let me know how you go once you start playing with it.

  • Great video, everything worked!

  • Moderator

    Hi lorentz,

    this last revision work fine ... i have a questions but in your experience the i2c work fine ? I'm testing on VBRAIN because i'm waiting PX4 for doing comparative test , but it continue to have some problem on barometer instead on MPU6000 , i see that you use my driver inside the last revision ? How work ? Are you yet doing some test ?

    Best

    Roberto

  • How often do you have to reinstall windows?  My last Windows installation lasted only a few years before it died.

  • What other (free) compilers have you tried for FPU support? Have you compared the ARM compiler (code size and performance) with other toolsets (such as Code Sourcery) - besides the h/w floating point performance, of course.


    - Roy

This reply was deleted.