Hi,
What's the preferred method of interfacing the Arduino with a Pixhawk? And is there a guide out there somewhere for it?
I'd like to use an Ardunio(+Pixy) to locate and move a quad copter between indoor waypoints.
The only method I'm aware of is to use the auxiliary Pixhawk servo output ports to relay waypoint information to the Arduino and then mux the PPM signal going in to the pixhawk to move the quad in relationship to the target. It's a super clunky way of communicating so a better alternative would be awesome.
Replies
You can use a precise (+-2cm) Indoor "GPS": http://marvelmind.com/.
Here a couple of demos:
Sounds like you could use the Keplur board from NVdrones. It's basically an Arduino that interfaces with different flight controllers over PPM/PWM. Comes with different I/O pins and you can easily control the flight controller directly through Keplur.
You could use Mavlink over one of the serial ports, but this wastes alot of memory for the mavlink.h libraries. There are plenty of mavlink - arduino examples around the internet. Here is a recent example http://diydrones.com/forum/topics/amp-to-frsky-x8r-sport-converter (although this uses a Teensy the same code can be used in arduino.
Most people will probably be using a linux board to interface with pixhawk.
Thanks Glenn!
So, hooking up an Arduino to the APM (Pixhawk in my case) is best done over the telemetry port?
I guess that would work.
Let me read that back to you to see if I understood you correctly:
To tell the Pixhawk where to go I would create waypoints and switch to that waypoint via the Mavlink protocol, using the library you so kindly linked to. And the reverse, to sense where the Pixhawk is and what's going on I would listen in on the telemetry port.
Is that correct? Is that the official method to interface with the Pixhawk?
Ping!?
Is no one is using their Pixhawks together with an Arduino?