I'm trying to attach an infrared sensor to the RTF drone using i2c and I'm trying to use the "Compass" port since I will not be using the onboard compass. I've looked at which i2c device node to use but there appears to be 15 of them when I did ls /dev/i2c-*. Which one should of these correspond to the compass?
I've also tried to do i2cdetect -y -r 2 and there appears to only be 0x12, which I've read is the onboard magnetometer.
I'm also using Ubuntu 16.04 LTS.
Thank you for your interest in Intel products. You will need to flash the .jam file with i2c, as shown in the guide below: http://www.instructables.com/id/Intel-Aero-Drone-Altitude-and-Position-Hold-Using-/ Let me know if it works.
I tried to flash with the .jam file but it doesn't seem to work. This is the message I get:
$ jam -aprogram aero-rtf_i2c.jam
Jam STAPL Player Version 2.5 (20040526)
Copyright (C) 1997-2004 Altera Corporation
Device # 1 unable to read IDCODE
Exit code = 6... Unrecognized device
I might be wrong,but I'm thinking the jam file only works with Yocto and not Ubuntu.
Sorry ignore my last message, I just needed to use sudo and it successfully flashed. However, I still do not know how to access the i2c devices I've attached. When I do sudo i2cdetect -y -r 2, I still only see 0x12.
Unfortunately, the i2c bus is currently not exposed to be accessed from the Aero Compute Board. The jam file that we provided enables the Px4Flow sensor to be accessed directly from the flight controller. We apologize for any inconvenience this may cause.
Ok. Another question though: the link you posted states that "Basically what we are doing is first updating the FPGA so that it can use the telemetry port as an I2C connection. Then we are updating the flight controller so that it will recognize the PX4Flow". Since the jam file is able to change the Telemetry port to use i2c, shouldn't it also be possible to update the FPGA such that the Compass port can be used? I read that the Compass port is already an i2c connection so I thought I didn't have to do much to make the i2c connection work.
You are correct, the FPGA can be configured to route several interfaces to ports. On the Intel Aero RTF drone, the ports are only accessible to the flight controller. At this time, you would need to build a custom board to connect to the 80 pin connector on the compute board and generate your own FPGA jam file. We hope to have an alternative solution soon.
I'm surprised to find out that Intel sets up the Aero board on the RTF this way.
Since the i2c is not available, what is the best way to connect additional rangefinders such as sonars and lidars to the Aero board?
I plan to connect the Aero with the Pixhawk in the future instead of the RTF flight controller. I see that the tutorials use UART to do so. In such a setup, is the 80pin breakout ports no longer functional? Is there any drawbacks when accessing flight controller data that we should be aware of?