I have a Flywoo Goku GN745 nano that I can’t seem to get configured properly to utilize an external compass through the I2C port. I’ve connected the pins according to the directions listed on this page with regard to the SCL and SDA pins. I previously had a BN-880 GPS connected and recently picked up a FOXEER M10Q-250 and I haven’t been able to get the flight controller to recognize either compass.
Am I missing something in the configuration of the firmware?
@andyp1per let me know if you are able to get it to work. I think my next move is to connect it to an arduino and see if I can read compass data via the serial terminal. If the compass works with the arduino I might try some other arducopter qualified flight controller.
This doesn’t sound like a compass problem if neither works - sounds more like a flight controller problem. I notice in betaflight on the nano that the external pads are on a separate i2c bus. I suppose the hwdef could be wrong for the AIO. It’s worth trying the nano firmware just in case that’s the problem. Did you try in betaflight? Did it work?
@andyp1per I did try beta flight but couldn’t get the compass to work with that firmware either. I did take a look at the nano features.txt and these are all of the lines with compass listed:
They are the same. If betaflight doesn’t work then maybe that is wrong also - might be a newer rev of the board I suppose. Did you try the nano firmware? It has a different I2C setup.
The FOXEER documentation doesn’t seem to be very helpful. If the compass signal is output via the serial UART interface, it must be embedded in the UBLOX or NMEA protocol. Rather unlikely.
Otherwise, the compass is simply connected to the I2C interface as usual.
This should be possible to check with a small Arduino sketch.