APM vs. PX4 – what to get?

What are the advantages and disadvantages or each?

 

The PX4 looks like the very old days when APM had many boards and no case. Just looking at the advertisement I have no idea why I would want to trade in my APM 2.5+ for a PX4?

 

.

 

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

Join diydrones

Email me when people reply –

Replies

  • Hi all,

    Latest ArduCopter Wiki system almost works.

    Problem related to Mission Planner talking to PX4FMU on Windows.

    Something still not quite right with Windows USB driver.

    When started up the PX4 loads a USB driver just for boot loading itself from host computer.

    After ten seconds or so it loads a second USB Com Port, the one you need to use for MavLink communications.

    In Mission planner you need to wait at least 10 plus seconds after plugging in PX4 then go look at ports and select the higher numbered one of the 2 you are shown (if it shows you 2).

    Just thought you might like to know.

    Please check out the Wiki again, a lot has changed and a lot of the external files have been seriously updated by Andrew.

    https://code.google.com/p/arducopter/wiki/PX4_First

  • Today I have some tries to make board working via USB. Unsuccessful.

    I think some error in debug terminal is the reason:

    AyCDE
    nsh_romfse[boot] Successfully initialized SPI port 1
    [boot] Initializing SPI port 3
    [boot] Successfully initialized SPI port 3
    tc: Mounting ROMFS filesystem at target=/etc with source=/dev/ram0
    [boot] Successfully bound SPI port 3 to the MMCSD driver
    [init] looking for microSD...
    [init] card mounted at /fs/microsd
    sercon: Registering CDC/ACM serial driver
    uart_regisercon: Successfully registered the CDC/ACM serial driver
    ster: Registering /dev/ttyACM0
    [init] USB interface connected
    Running rc.APM
    Mounting binfs
    nsh: mkdir: mkdir failed: 17
    Starting APM sensors
    [uorb] ready
    [MPU6000] on SPI bus 1 at 3
    [MS5611] on I2C bus 2 at 0x76
    [HMC5883] on I2C bus 2 at 0x1e
    <adc> init done
    Setting up PX4FMU direct mode
    [fmuservo] default PWM output device
    <fmuservo> MODE_4PWM
    <fmuservo> set_pwm_rate 0 50 50
    [fmuservo] starting
    <fmuservo> adjusted actuator update interval to 20ms max_rate=50 _pwm_default_rate=50 _pwm_alt_rate=50
    Starting ArduCopter
    Starting ArduCopter on /dev/ttyACM0 and /dev/ttyS2
    Failed to open UART device /dev/ttyACM0 - Unknown error
    rc.APM finished

    NuttShell (NSH)
    nsh> Failed to open UART device /dev/ttyACM0 - Unknown error
    <fmuservo> set_pwm_rate 0 50 490
    <fmuservo> adjusted actuator update interval to 2ms max_rate=490 _pwm_default_rate=50 _pwm_alt_rate=490
    [MS5611] measure error -110
    [MS5611] collection error -11

  • random observation regarding the DF13 connectors... they are significantly sturdier and usable than I thought based on the pictures. 

    I routinely unplug and replug them as I test different things, and they are not at all like most SMT connectors which tend to break after 1-2 uses. The DF13's are definitely a different caliber. 

  • Check out the PX4 Wiki now almost done with step by step system load for ArduPilot PX4 Firmware https://code.google.com/p/arducopter/wiki/PX4_First

    Some of it could undoubtedly be skipped and its not pretty but you also install the development environment at the same time.

    And it does use a few interesting tricks to overcome some of the "found" problems.

    Please review this and let me know what is incorrect and what could be done better.

  • I'm reading through the original PX4 wiki, trying to figure things out.  Some things are more clear, some less so.

    - Are GPIO_EXT1 and EXT2 connections the method that the FMU communicates with the IO?  If so, doesn't that mean that we could simply use the multi-connector to connect the two rather than trying to make an extension ribbon cable for the expansion port?  I see a few things potentially missing, a bunch of FMU USARTs, which we can probably live without.  Or plug those directly to the FMU board?

    - More worrisome is the ADC123 connections.  Not quite sure what those are for, or where they are used for?  I know there's a FMU Pressure connection on the IO.  What might the other two ADC's be for?

    - Could that FMU Pres connection be used for a second battery level instead of pressure transducer?

    - Is the FMU or IO aware of the actual voltage level of the avionics supply battery?  I've heard there is a low voltage warning, but is this on the Vcc, or the input battery level?

    - It's looking to me at this point however, that it would simply be easier to leave these stacked, and then make a servo power board for my heli.  Still, it leaves an incredible amount of wires bridging the gap across the vibration isolation.

    - The built in 500mA aux supply, and solid state relays are awesome.  Will be able to switch 12V lighting right on the board.

    - Still would like to know if there is anything we can use on either board as a trigger capture for a tachometer.  I can't see anything.  This would probably mean I have to keep going with my Arduino Nano Tach project, and then interface it with I2C or something.

  • hi allen, can you  refer a link to show how to upload the arduplane code to load to PX4. i had been usinhg the wiki pages on this link.  https://code.google.com/p/ardupilot-mega/wiki/Eclipse. everything seems OK until i get this error.

    ___________________________________________________________________

    09:43:43 **** Incremental Build of configuration Default for project ardupilot ****

    make apm2

    make: *** No rule to make target `apm2'. Stop.

    09:43:44 Build Finished (took 531ms)

    _______________________________________________________________

     'apm2' has been a replacement for build 'all' as per the instructions on the wiki.

    can you please help about  this error. i think i am not able to define the right folder for target 'apm2'.

  • I've got another question.

    So, I'm going to have to order a PX4 arming switch and buzzer, because I didn't get one originally.

    I see that there are a lot of Hirose DF13 connector cables available in the store.  What are those used for?  Just trying to figure out what I should buy at the same time...

    I'd like to plan for a setup on a TradHeli, which means I'll be using a GPS, but also a remote mounted Magnetometer.  How would you use a remote mag with the PX4?

  • For all interested in running APM on PX4 hardware, as announced by Andrew Tridgell its part of the official build and the APM plane / copter / rover builds for PX4 can be downloaded here (including support for PX4FMU standalone or PX4IO):

    http://firmware.diydrones.com

    Upload support to mission planner is trivial, but will only be added once the overall documentation (to which Gary is greatly contributing) is complete. If you feel like an early adopter, use the console instructions (Windows, Mac, Linux supported) here to upload the build:

    https://pixhawk.ethz.ch/px4/users/flash_px4fmu

    To flash PX4IO, just put the 'px4io.bin' file into the top level directory of the microSD card and keep the arming button of PX4IO pressed while powering up.

    After flashing, PX4FMU will behave like APM 2.5 regarding operation and Mission Planner usage. Thank Andrew Tridgell for putting this in place and making it already quite accessible.

    ONE WARNING: The linked builds are daily builds and represent the current work in progress. Its not the same as using a release version.

  • I have a couple a questions as well after reading the PX4 build manual Gary was kind enough to put on the wiki and update. I noticed the Px4 IMU multiconnector pins 9-12 are the only outputs for connecting ESCs This seem to be a limitation as you can only drive 4 motors independently unlike the 8 outputs in the APM2 Of course you could double up but this would lead to potentially loosing 2 motors on an Octo design. I also get the feeling this product was specifically targeted at the AV drone quad down to the specially shaped IO board?

    So is 3DR planning to release an APM3 anytime soon based using a more modern 32 bit ARM processor? I really do not like the chunky design, multi boards and limited ESC outputs on the PX4. Happy to stand corrected.
  • I have a few questions after reading Gary's Wiki.

    Is it possible to mount the IO Board separately from FMU?  Can the connection between the FMU and IO board be done easily with cables?  I'm not sure exactly which Comm bus is being used between these two boards, but I'm wondering if that bus is taken to one of the DF connectors, instead of just the pin header?  I'd prefer to make a locking connection, rather than simply making a cable with servo sockets that plug to the pin headers which is sort of crude.

    The idea here, is for a helicopter application, which would use big heavy servo wires, I'd rather keep the IO board seperate from the FMU for vibration purposes.  At the same time, having the free space over the FMU would make it easy and convenient to create a daughterboard to hold an Rx in an "All-in-One" fashion similar to what I've done in the past.  Alternatively, the Rx could be on a daughterboard attached to the IO board instead. This might make more sense in some applications.  This gets back to the original idea of having a minimalist IMU, vibration damped, mounted seperately from the rest of the IO.  Simply put, it is MUCH easier to get just the IMU near the CG of the heli, rather than the entire system including all the wiring.

    Is there any provision for extra inputs on the system?  I'd like to get 1 or 2 tach signal inputs, so these would need high speed interrupt processing.  It would be really slick if a governor program could be set up in the IO processor to drive an ESC. Or two.

This reply was deleted.

Activity

Jose Araujo liked Jose Araujo's profile
Aug 29
spencer harvey liked spencer harvey's profile
Jul 9
More…