GPS/Mag - Connection woes and Firmware versions



  • Hello,
    please let me briefly outline the situation:

    I have one very nice and expensive GPS module that I want to use as the primary GPS, only it doesn't include a magnetometer so also have several "cheapo" modules that do include a mag.

    What I've done so far:
    -connect "nice" GPS to J1012 (ext. GPS/mag) using 5v,GD,TX,RX
    -connect "cheapo" unit to J1012 using only SDA and SCL, getting 5V and GND from J1009

    This workaround already flies basically the way I want it to but the GPS/Mag unit is getting very warm.
    Question: is that expectedor a consequence of pulling the power from a different port?
    i.e. Is my workaround electrically sound?

    Now here's the part where I'm stuck atm:

    I simply can not get a secondary GPS to work at all.
    I put the combo-unit on "J1012-ext GPS/mag" and the secondary unit (which really is the nice one without a mag that I want to use as primary source) on J1009-UART4.
    This is where the troubles begin - on Firmware 1.11.3 - 0.0.5 this is the selection for GPS2:
    1.11.3.jpg
    I select TELEM/SERIAL 4, reboot but nothing.
    The secondary GPS doesn't show any values at all, so appears not being used. I tried setting the EKF2 values correspondingly to no avail.

    On firmware version 1.12 the selection looks like this:
    1.12.jpg
    so I can't even select the proper port. Is that because this version isn't "built" yet for the VOXL Flight specifically or some other reason?

    I'd prefer flying 1.12 because of all the flight-characteristic improvements mostly but even using my workaround from before it just fails to navigate and just goes "somewhere".

    I've been trying switching around things for months now and pretty much stuck on using 1.11.3-0.0.5 and my workaround and only being able to use a singular GPS, so any insight is highly appreciated. 😉

    Also: regarding the selectable ports in the ModalAI firmware - where exactly are "GPS2" and "GPS3" broken out on the board?

    Anyway, I know it's a mess but I don't think I'm getting any further without describing all this to look for help.
    regards



  • A little more information on what I mean by the FW differences:
    (left is a 1.12 params file being loaded into a 1.11.3-0.0.5 vehicle)

    imu_ids_firmwares.jpg

    and

    imu_gps_firmwares.jpg



  • The new PX4 alpha firmware 1.13 looks promising.
    I juggled around the connections (gps/mag unit on J1012 and "nice" gps unit on J1002 (TELEM3) ).
    FINALLY got dual-GPS to work.
    ModalAI FW is missing several crucial parameters for this to work smoothly as far as I can tell.

    EKF2_Aid mask bit is a pita to set correctly though due to the intermittent documentation but at least it seems to work rn.

    Can do flight testing again on Monday, hoping for the best. 😉


  • Dev Team

    Thanks for the update!



  • Hi again,
    I fought myself through some more weirdness and think I have a pretty good grasp on what's happening now:

    The VOXL's "TELEM4/ SERIAL" port does not appear to work at all no matter the FW version.
    At least not as it's broken out on J1009.

    I tried several GPS/ mag modules now plus ESC telemetry and nothing at all gets recognized on that port.
    It is also only selectable (along with the mysterious "GPS2" and "GPS3" ports) in FW 1.11.3-0.0.5.

    Here's a pic of the serial selection in 1.12 coming from 1.11 with "data survives resets":

    ESC_Telem.jpg

    This is the selection for Dshot-ESC telemetry where I put it on J1009 and chose "TELEM/ Serial 4" before in 1.11.

    Question: What exactly is DGPS-Lock describing? Is it Dual-GPS lock as I suspect? It only shows up in the newer FW's whith the 2nd unit on TELEM3 so I assume it's working?

    One more question:
    If I use the newer FW with the ports selectable like shown in the picture, where could I put ESC telemetry on?
    TELEM1 has TBS-Crossfire Telemetry and TELEM2 is the on-pcb connection between the Flight Core and the VOXL, if I understand that correctly?
    So there's only one broken-out UART left? (TELEM3)? and I have to choose between 2nd GPS or ESC telemetry?

    Phew! ^^
    Best regards


  • Dev Team

    OK OK, I see what you are talking about.

    Yes J1009 is a UART... but not configured for TELEM, this is where we map MAVLINK instances to UARTs:

    https://github.com/PX4/PX4-Autopilot/blob/master/boards/modalai/fc-v1/default.cmake#L12

    There is/was a max MAVLINK instance count (at least in 1.10/1.11) that prevented enabling another instance.

    Are you setup to compile PX4? It might be you just need to add another instance after the line called out above.

    For the UART instances, this is what we have by default, and you could mess around by changing these to fit your need.

    		GPS1:/dev/ttyS0 # UART1  / J1012
    		TEL1:/dev/ttyS6 # UART7  / J1010
    		TEL2:/dev/ttyS4 # UART5  / (internally routed)
    		TEL3:/dev/ttyS1 # USART2 / J1002
    

    The form factor is off of a "racer" style, where we don't have all the interfaces like PX4IO etc, so you might find some limitations if comparing to other flight controllers with more IO.



  • @modaltb Cool, thanks. This is good information.
    I've been setting up to make PX4, yes.
    At least the jmavsim I got up and running so I think that's kinda halfway there, right...?

    I've switched to 1.12 for good now though, since it's just a lot better (like no weird limitations for take-off altitude., more of the important params to set, etc.).
    Only thing missing now is ESC telemetry...

    So just for a basic understanding, i would write into the lines you posted that J1009 is supposed to be a telem port, compile it and then it would become selectable in QGC?
    And it wasn't working in 1.11 (although selectable) because of the mav component conflict?

    I also found an error in the log (from 1.12) that said something about exactly that, I'll edit in the exact phrasing here later.

    For now, thanks a lot my friend.


  • Dev Team

    Hey @m4v3r , I'm not 100% confident and would need to try some tests out, but unfortunately am not able to do this till later next week likely. Above does sound correct but again, we might need to test things out...



  • Don't sweat it, I'm pretty pleased with how the VOXL performs on PX4 1.12.1 right now. 😃
    I've been messing around with 1.13 as well and love the idea of adjusting the IMU sampling rates but didn't get it to arm due to CPU load above 91-or-something percent even with what I would consider tame rates for an F7 chip but we'll see. 😉
    thanks again and enjoy a great weekend.



  • This post is deleted!


  • @m4v3r
    btw here's the message I wanted to edit-in:

    EDIT: The log message says:
    "WARNING - [mavlink] ignoring CMD with same SYS/COM (1/1) ID"

    I'm sorry to have to say but this Forum's edit function is screwed at least on my end... ;D
    cheers ❤



  • @modaltb said in GPS/Mag - Connection woes and Firmware versions:

    OK OK, I see what you are talking about.

    Yes J1009 is a UART... but not configured for TELEM, this is where we map MAVLINK instances to UARTs:

    https://github.com/PX4/PX4-Autopilot/blob/master/boards/modalai/fc-v1/default.cmake#L12

    There is/was a max MAVLINK instance count (at least in 1.10/1.11) that prevented enabling another instance.

    Are you setup to compile PX4? It might be you just need to add another instance after the line called out above.

    For the UART instances, this is what we have by default, and you could mess around by changing these to fit your need.

    		GPS1:/dev/ttyS0 # UART1  / J1012
    		TEL1:/dev/ttyS6 # UART7  / J1010
    		TEL2:/dev/ttyS4 # UART5  / (internally routed)
    		TEL3:/dev/ttyS1 # USART2 / J1002
    

    The form factor is off of a "racer" style, where we don't have all the interfaces like PX4IO etc, so you might find some limitations if comparing to other flight controllers with more IO.

    Hey man, just wanted to let you know that against all odds this actually worked.
    I put in the line describing TELEM4 and built the firmware myself and - tadaa!
    Thanks again. 😉



  • Hey everyone,
    just wanted to let you know that my fix got merged into master so it should work for everyone now... 😉

    I'd have loved to change the title of this to something a little more descriptive but it's too late now I guess.
    anyway, cheers everyone, happy flying. 😉


Log in to reply