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.
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.