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.





Views: 14600

Reply to This

Replies to This Discussion

At this time with the 2.91b-dev  on startup  the Virtual com port on the USB is being created  but the ArduCopter task gets hung up.  If a  ftdi serial is connected to the console port  sending a return  allows it to boot up  and start mavlink on the usb.

I found that shorting the console  TX/rx on boot allow it to start.


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.

Thanks  for the  board orentation  info Gary that is the kind of  thing needed.   To get the  Motors command to work  in the correct  sequence and  the quad fly  I had to use   a very different motor order .



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

Now, I found a bug?! I've connected the ESCs to servo 1-6 (like this https://code.google.com/p/arducopter/wiki/PX4FMU_IORC?wl=en for hex-x). If I Arm the copter and take throttle the motors 1-4 runs and the motors 5 and 6 stands still. I've uploaded the correct fw (http://firmware.diydrones.com/Copter/latest/PX4-hexa/). Have anybody an idea?

I have the exact same thing :( I have tried with the octa firmware too and it's not working either.

Also, it did connect to MP a few days ago, but it didn't anymore now :/ 

It's too bad because elsewhere it could fly, the ppm encoder is working good, when the 4 motors are spinning, I have all the controls and the sensor does work...

I have made the following developer issues:

PX4 not working for Hex or Octa: First 4 motors work, the rest do not turn.

PX4 leveling procedure not working in Mission Planner.

Also, I have a Flow sensor ordered as well, coming in tomorrow in fact.

The bad news is that it is not interfaced to the PX4 yet for the software that we are using.

Somewhere  I believe I have seen the leveling  discussed and stated that the CLI is the current method and that it was a Mission planner issue.



Craig Elder just confirmed that for now leveling has to be done in the CLI and that it is a known Mission Planner issue they are working on.

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?


This means my first problem: I've used another pc and there was no problem. Back on my pc I try it again. But I didn't get the semaphore message - he waits at correct com port and then runs to other ports. I reinstall driver and and and... Then I uses another usb port and there I could connect (on this usb port is an active usb-hub connected).

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.

Reply to Discussion


© 2018   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service