Recommend FC and GPS/Compass combo for Chibios

Hi all, can anyone recommend a good combo of FC and External GPS/Compass that will work without adding a 2K resistor for use with Chibios.

I currently am using an Omnibus F4 V6 FC with a cheap AK09916 GPS/Compass combo, but i always get the “Bad compass health” in MP. I know i can add a 2k resistor to help with this. But im looking for a system that doesnt require any more soldering and will work 100% of the time.

I would be happy to keep my F4 board if there is a gps/compass that works.

Any suggestions ??

Cube + HERE2 gps.
If you are on budget then MiniPix

F4 Beta/Cleanflight hobbist board will always requires fiddling.

1 Like

+1 - a foolproof combination

I haven’t fly mine yet only bench test but I don’t see any bad compass health

Kakute F7 AIO
M8N gps

Without any fiddling…Works fine out of box you can Buy a Radiolink MiniPix combo with m8n gps…
The Matek F405Std/ctr Also working fine…

Kakute F7 AIO
M8N GPS bn880
Chibios 3.7

First test flight on altitude hold

Soldering wires to the board qualifies as fiddling :smiley:

Easy job!!!

IMG_20190322_020547

Holly Sh…t !
I would say this is a disaster waiting to happen. Soldered wire joints especially ones that soldered to SMD pads are prone to vibration fatigue. It will fly for a while then plunge to the ground and hopefully will not kill anybody in the process.
If you really need to solder to the pads, secure the wires with a dab of silicone glue (preferably with a non acetic acid version) to the board.

1 Like

I have had SOOOO many cables fail, that soldering to pads should not be considered an issue. Connectors have the same problem… Constant vibrations causes the wires to fail at their crimp points. I’ve actually had a lot more issues w/ connectors/cables than with soldered wires.
Now I’ll admit, those above pics are a mess, but soldering directly to pads is not an issue. I’ve never had one fail… I have had the wires fail at the point the hard solder stops and the wires begin to flex, but as I said above, I have that same issue w/ crimps.
Actually I’m looking at a few 4 or 5 year old copters sitting here, and every single one w/ connectors has wires falling out. My old auav x2 w/ soldered connections are all fine.

The silicone glue is great advice, though. I’ve actually put that on the back end of a lot of my connectors for the issues I was just mentioning.

There is a whole science behind cable joints :smiley: A good crimped connector which holds the insulation as well always better than a soldered connection.

But thus is just my opinion. :smiley:

The sockets are simply SMD soldered to the PCB anyway… same potential point of failure there… Plus you’re adding the connectors and crimps as additional points of failure. My experience has always been that crimped cables fail… even ones that were hardly flown seem to have somehow popped apart just sitting on the shelf for four years.
My old pixhawk cables are bad. On the one I’m looking at here, hasn’t been flown for over a year, the telemetry port has a broken wire. But my pixracer cables are horrible… Almost very connector has broken wires at the crimps. This is two pixracers I’m looking at. One from the original manufacturer, and one of the newer ones from mrobotics.

Anyway, like you said, this is just my opinion… I’m a fan of directly soldered.
Proper pre-flight checks of all the critical wires is an important step before any session. That’s the best answer for this issue.

-Quick edit, most of these boards w/ SMD pads have little holes going through the PCB anyway for extra strength… They usually aren’t just smooth pads. You can see that in the close up photo he posted above, in the row of smd pads on the right side.

1 Like

Unfortunately on that Kakute F7 AIO, there are a few pads without holes. SDA/SCL is particularly frustrating - just two very tiny surface pads for the compass interface.

Well the photo I posted it was when I build it

Now isn’t much better but all the wires goes where they have to be

If I will take out the top plate I will take a photo
The hot glue is a good solution
Thank you

Now have my FC working with compass and gps :slight_smile:

Now im stuck with my firmware not having the ability to display VBAT :frowning:

Anyone know a work around or am i stuck with this board not being able to display battery voltage ?

It should work, the nano version does.
BATT_MONITOR (3)
BATT_VOLT_PIN (12)

A workaround would be from ESC Telemetry if yours support it.

Cheers dave, will try it now :slight_smile:

Excellent, now working thanks a million :slight_smile:

I do agree with the discussion about soldering and crimping (@wicked1, @Eosbandi). Coming from a software background I am just bad at soldering and getting this right in the first place. Both soldering directly to the board or crimping (arduino style) seems to be a pain for me. I am not happy about soldering directly as I prefer testing with different pinouts etc., but I never found a good way of using connectors either. I like jst type connectors. After soldering a board its kind of destroyed. If any of you have a good procedure for getting this right, please let me know.

I have done quite a lot of testing with the omnibusv6 (not nano), and below are most of the details for setting it up based on my earlier pull request. I haven’t got to help out with the board description yet, but I did write it up back then. It’s quite similar to the nano but with some differences.
It is nice with the JST pins for GPS/COMPASS (per previous comment as I always get the soldering wrong). I have tested with a benewake lidar and esp8266 (wemos) for connection to ground station (so the board runs with all these plus gps/compass).

Board Connections (per March 2019 on master)

GPS (enabling use of the 6 pin JST for GPS/COMPASS)
SERIAL3_PROTOCOL # USART6

COMPASS (scl/sda at the default 6 pin JST)

Telemetry
SERIAL2_PROTOCOL # USART4

Available UART (lidar, GSC etc)
SERIAL4_PROTOCOL # USART3

RC input to be soldered to LED PIN (compatible with RX serial protocols).

Servos S5-S6 are available for use

Current/Voltage monitoring:

  1. BLHeli32:
    BATT_MONITOR 9
    BATT_VOLT_PIN -1
    BATT_CURR_PIN -1

  2. ADC battery monitor:
    BATT_MONITOR 4 (Analog Voltage and Current)
    BATT_VOLT_PIN 12
    BATT_CURR_PIN 11
    BATT_VOLT_MULT 11.0
    BATT_AMP_PERVOLT 38.0

RSSI
Option 1: RSSI_TYPE 2 (RX RSSI Analog input from receivers (Frsky etc.))
RSSI_CHANNEL (set to the channel number output from the receiveer, for example 16)

Using usart3 to connect to GS
SERIAL4_PROTOCOL 2
SERIAL4_BAUDRATE 921600
Connect to wifi, select UDP and 921600 Baud and connect.

To enable logging, set LOG_BACKEND_TYPE to 4

order of UARTs
UART_ORDER OTG1 USART6 USART1 UART4 USART3

Serial ports
R1/T1 -> USART1
R6/T6 -> USART6
R3/T3 -> USART3
R4 -> UART4 (only RX)