Px4 Testing

I am starting this discussion to post information for  testing the Px4 platform.

Most of the discussion is currently in the APM vs Px4 thread. ArduCopter on the Px4 is a work in progressand has made great progress. I have Arducopter on a Px4 Fmu board hovering now and I am very glad to see the code base integrated into the Stm32 platorm. Ardupilot represents many hours testing and refinement , many thanks to Andrew Tridgell ,Randy Mackay  and the other developers as well as Gary Mcray for the documentation  on the Wiki

The Px4 can support a Quad with 4 Motors using only the Px4_FMu board with some of its Usart pins defined as Pwm outputs or using the Px4_Io board to supply Pwm motor (servo) outputs. The configuration with the Io board may work better at the moment , the Fmu only has a number of issues to get booted up  configured and running. It may be that all the testing at the moment is being done with boards that use the Px4_Io.

The Px4  usb is software driven not a ftdi chip like the Apm and has given problems but is working now . When the Stm32 bootloader starts it creates a Usb port with its own Id and sets up a DFU device for loading. If no bootloader request is received it jumps to the code startup and creates a usb serial port with a different USB Id for a mavlink connection. Windows drivers have to deal with the Usb connection and connect the appropiate driver.

I think the Px4 vs Apm  answer is that it is still early in the Px4 development but shows great promise.





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

Join diydrones

Email me when people reply –


  • Tristan ,  I have problems with the mavlink  starting as well.   What I have found is that  monitoring the console on serial 1  it will start  if i enter  a return on the console after the start up script has run.   I have been  jumpering the tx/rx togeather on the serial 1 port on powerup  to get Arducopter to run.  it may take more than one attempt .  You can see if mavlink is running on startup  by connecting to the usb com port with a terminal like putty ,  I have to do this and enter returns to get into cli  and then connect  mission planner .

    When it does start  and Arducopter is running  the NSH>  console is still  active and has not exited  which I do not think is correct .  I am trying to debug the startup script .

    In early versions the bootloader was starting the usb virtual com port with one ID  and then starting again with a different ID .  Now it uses  the same Id  for both boot loader and  mavlink. The booloader starts the port and then drops it  and then system code  starts it again so you have the two connect sounds.





  • i am trying to locate the pins which are to be used for propulsion battery and current. will solve it soon. in this case only three oins are to be used unliker APM2.5

  • the 3DR radio has to go in the port market "FMU USART2" of the PX4IO. it works fine on that port.

  • Hi,

    I now have the Hexa working on my PX4 :)

    My problem is that I still can't connect to MP. It did work before, I had the first com port on com 9, then it switched to com 10 and I was able to connect to MP. Now, I have the first windows sound when connect, appears as com 9, then I have a second connection sound, but PX4 is still on com 9 and connection to MP fail :/

    I have tried to update drivers, PX4FMU and PX4IO firmware but no changes :/ Any idea on this issue ?



  • Hello all,

    I already post in other thread but decide to repeat here. 

    To run hexa on PX4 I editer APC_CONFIG.h uncopment this line #define FRAME_CONFIG HEXA_FRAME

    Then build firmware from sources and upload to board. Motors bars show me 6 motors and motor test in CLI mode spins my (all of them) motors. Now I'm waiting for weather to fly.

  • Has anyone tried the native px4   FW  with the  hex or octo  mixers .


    Like This   one for  hex

    "This file defines a single mixer for a hexacopter in the X configuration.  All controls

    are mixed 100%.
    R: 6x 10000 10000 10000 0 "
  • I have some thougths about running only 4 motors on hexa.

    I you look in rc.APC file you will see than PX4IO use mixer

    mixer load /dev/pwm_output /etc/mixers/FMU_pass.mix

    If you check FMU_pass.mix it shows you that only 4 channels are mapped.

    I soppouse that we should use another mixer in this folder for hexa. 

    Currently I'm planing to install PX4 on Hexa too, but have not free time for it (a lot of work) and check it.

    I hope Andrew Tridgell read this thread and can comment my opinion.

    PS: I hope it will help someone to put his hexa in air and sorry for my bad English.

  • Dear all, I´m trying to upload the APM firm for the px4 using the px4uploader.exe, but when I´m try upload the firm, I recieve the following message: " 154 Trying Port COM4 The interval of waiting of the semaphore has been finished " Please, anybody know what can I do?


  • Hey!

    I've some questions to the new PX4. I install the windows-usb driver and then the latest FW PX4FMU und PX4IO. After some issues with my pc I could connect. I don't know where the problem was. On our noteebook it was no problem (both win7 64 bit / one of them ultimate).

    Where can I calibrate the sensors? If I click at MP on configuration > ArduCopter Level and then on the button "Calibrate Accel" there shows Initialising APM but that was ist. The command-window shows all 5 lines the same Text "Init...".

    Where I can connect the FLOW-Sensor? And last one: Where we must connect minimOSD and 3DR module?

    Best regards

  • Great idea to start this thread John.

    I have now ported the PX4 Overview and Wiring and Assembly sections over to the New Wiki as well which is down at the moment or I'd provide links.

    I briefly got my PX4FMU plus PX4IO fully operational in spite of a bad power supply on the PX4IO board.

    And I learned a few things.

    I did not have the problem that you are having which requires the use of an FTDI port.

    Mine worked with both PX4FMU only and PX4FMU plus PX4IO.

    I worked through this problem on a screen share hangout with Andrew Tridgell which he fixed and he had me try both configurations to be sure.

    It may be that the versions you are using are out of date, because this was only fixed a week ago and in the latest "dev" version.

    It will work with correctly a conventional receiver and the little 3DR 8 channel PPM-Sum encoder board for those people who don't want to go out and get a whole new RC system.

    Albeit the Turnigy 9XR and FRSky modula and receiver are only about $100.00 from HobbyKing.

    It is reasonable to power the receiver and the 8 channel encoder from the PX4IO power supply but don't try to power servos from it.

    After you have the firmware loaded into the PX4FMU (and PX4IO if you are using one), when you plug the PX4 USB into Mission planner wait at least 10 seconds before attempting to connect (or checking the Com Port.

    When the PX4 starts up it initially uses a dedicated port to permit downloading firmware into it.

    After 10 seconds or so it switches to the next sequential USB com port for MavLink (Mission Planner) communication.

    Once you have it up and running it works like a regular APM with mostly the same parameters although needed PID values might be a bit different.

    I also found that at least for the PX4IO mode the normal standard of having the Px4IO board on the bottom with it's connectors facing downward - sucked.

    Fortunately, they  have just implemented a board orientation parameter in the top part of the Advaced Parameters list.

    I selected roll 180 and it works fine with the PX4IO on top facing up.

    Just a few quick tips.

    I didn't move the Firmware loading portion of the old Wiki to the new Wiki because they are planning on handling the entire batch of procedures directly from Mission Planner, but if you are having trouble getting the firmware working properly, the old Wiki entries are still present.

    PX4FMU only is here: https://code.google.com/p/arducopter/wiki/PX4_First

    and PX4FMU plus PX4IO is here: https://code.google.com/p/arducopter/wiki/PX4FMU_PX4IO_First

    Hope this is of some use to get things started.

This reply was deleted.


Neville Rodrigues liked Neville Rodrigues's profile
Jun 30
Santiago Perez liked Santiago Perez's profile
Jun 21