I would like to connect a BeagleBoard-xM to the ArduPilotMega 2560.  Connecting over serial appears to me to be the easiest way.  I see that in the Arducopter code, Serial2 is not being used.  However, tonight I noticed this comment in the optical flow code: "External ADNS3080 OpticalFlow is connected via Serial port 2 (in SPI mode)."  I would also like to use optical flow, in addition to the BeagleBoard-xM.  Can anyone confirm this comment is true?

If this is the case, how do you suggest that I connect the BeagleBoard-xM and ArduPilotMega so that they can exchange data?


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

Join diydrones

Email me when people reply –


  • I am building a quadrotor with object tracking feature. all image processing will be done on beaglebone black. can anyone guide me how can i connect beaglebone black with ardupilot mega 2.5 so that beaglebone can give movement commands to ardupilot? also is it posible?

  • Hi Guys,

    Sorry I have been AWOL.  I got the connection to work just fine using MAVLink between an app running on the BeagleBoard/PandaBoard and the APM board.  Please see section 6 in my attached report for more details.


  • Hi Noah;

    I want to do same thing. So, if you could achieve this please give some information about it.


  • +1

  • Noah: were you able to connect beaglebone to ardupilot?

    I can connect it through UART0 from APM to beaglebone through pin21/22 on beaglebone... but the problem is it doesnt works if i unplug the USB and power the board through battery.

    would love to know how you solved the issue.

  • Hi Noah - were you ever able to exchange data between your BeagleBoard and the APM? I'm a student at Georgia Tech and our group is trying to do something similar. Do you have any suggestions? 

  • Serial 2 cannot be used without changes to the arducopter code. It is put into spi mode in order to communicate with the analog-digital converter on the IMU shield, the data-flash chip, and the optical flow sensor if available. You could connect another device to this port by using a spare digital out on the apm as a chip select line so you only talk to one device at a time.

    Students at where I go to college did a similar project with the original BeagleBoard. They just connected it using the usb port on the shield (Serial). It worked fine for them.

This reply was deleted.


Mike Whitney liked Mike Whitney's profile
Jul 19
Abdulatif Tlaib liked Ryan's profile
Jun 24