MSP protocol support

Hi. I made some further test… but no success, there is no flight mode display in osd message. I ve only see "CRAFT_NAME " text message after the systems initialize…and this message blinks when i m changing the FT modes, but nothing appers. Also i ve got a FLIGHT MODE=11 message after i switch off the radio and FS triggers. Of course i see also the FS! osd text at the Flight Mode osd parameter.

When will be the MSP osd available in a stable version.? I m little bit worry about flying with dev FW s.

1 Like

Hi, I just tested on an omnisf4pro and it works fine, flight modes and scrolling messages as well.
flashed latest master, reset params to default, set OSD_TYPE=3, SERIAL1_PROTOCOL=33, rebooted, loaded test params from ardupilot/libraries/AP_MSP/Tools/osdtest.parm

Alex,

I’m getting some very interesting results… Loading just the osdtest.parm file does not solve my issue. Resetting to all defaults, then loading osdtest.parm, and changing the serial settings I do get the flight mode with OSD_TYPE=1. If I change OSD_TYPE to 3 I still get OSD data on my DJI goggles.

Then I reloaded my parm file and it breaks the flight mode notification, which is interesting because it worked for you when I posted a couple days ago.

Then I started changing OSD items 1 at a time and found out that if I disable OSD1_WIND_EN then I lose flight mode notification. I loaded my parameter file, then enabled Wind and I get flight mode displayed.

@Tamas_Landa can you try setting OSDx_WIND_EN = 1 and see if you get flight mode.

This is all on my matek f405ctr board using 12/23 build now. Uploaded my working parameters filegoblin_fm_working.param (18.9 KB)

Thanks fot sticking to this issue, I’ve a found a directive (added recentely) wrapping the flight mode code for the wind disabled case, I bet the directive is responsible for your issue, AP_MSP_Telem_Backend line 314, you might try to comment it out as a quick test, let me dig some more in the meantime, (do not fly with it, just try if you see the flightmode)

#ifndef HAL_NO_GCS
#endif

@cyber_06_wolf hi thanks for your test and tip.
Yep i can confirm the flight modes appear in scrolling text if i enable OSD1 WIND_EN =1 parameter :wink:
Wow nice touch👍 it works, would be nice to know the reason why wind osd param has an effect on Fmodes in the message element.!
I m using on port serial 3 (uart 3) serial protocol 33, OSD type=3 on matek f405 wing
20201225_010328|624x499
@yaapu how can we comment it out or can we do anything with that Backend line 314?
Thanks all for your help and effort.
Marry X-mas :christmas_tree::blush:

Hello All. Looking for some help here. I want to get OSD on Byte Frost but don’t know where to begin with all this. I don’t see MSP listed in my parameters. I have the latest release of Arduplane and adjusted the serial 2 port to the settings listed for Byte Frost at the beginning of this thread. Do I need to upload something from the Github link posted at the top of this thread?

Any help is greatly appreciated!

I don’t know yet why that define behaves the way it does, but we will eventually fix it

I do have a Shark Byte unit for dev and testing but no success reports for Byte Frost, it might work, just set same settings as for DJI …and report back

Should MSP NAV_CONTROLLER be set at 0 or 1?

PR To fix this: https://github.com/ArduPilot/ardupilot/pull/16226
Please test and report back on github

@svs77 @Kija

I’m seeing the same problems as svs77 and Kija with my optical flow sensor. My flow sensor is mounted 180 degree from proper but I’m at 0 on FLOW_ORIENT_YAW and this is what my logs are:


OF.flowX is inversely correlated and way off in multiplier and IMU.GyrX and OF.bodyX are correlated near perfectly. Changing to 18000 on FLOW_ORIENT_YAW just screwed up the body reading but flowX is exactly the same.

thanks to @tenten8401 I think we’ve found the opflow issue, the Matek 3901 sensor requires an inversion of both flow and gyro vectors.
The fix was trivial but we need some testers to validate the change once for all, the PR is here let me know if anybody needs a test build

The Matek 3901 needs the scaler parameters to be set quite high, @tenten8401 used
FLOW_FXSCALER = -800 and FLOW_FYSCALER = -800

1 Like

Hey guys, been loving being able to use the DJI goggles with arduplane for the last few months on some wings thanks to the DEV’s. I’ve just tried converting one wing to 12S on using the Matek F405-STD and FCHub12 and everything is working except the voltage max’s out at 25.5v.
I’ve confirmed the voltage with a multimeter, scale is adjusted via missionplanner and displays correct through the HUD screen on MP.
Anything 3,4,5 or 6S comes through fine to the goggles but 7-12S just sits at 25.5V.
I tried adjusting the MSP_OSD_NCELLS to 12 just to see if it was a calculation thing but same result.
Any help would be greatly appreciated. Thanks again!

Hi,
this is a DJI firmware limit, betaflight has the same issue

MSP battery telemetry carries the same voltage in decivolts and centivolts, the former uses 8 bits and is limited to 25.5 volts, the latter is not limited.
cell voltage is calculated by the goggles dividing the centivolts value by cell count giving a correct cell voltage but pack voltage uses the 8 bit value and is thus limited to 25.5V max.

Thanks so much for the quick reply Alex. Looks like I’ll just run good old analogue for now.
Cheers

Hi, i am wondering does this matek optic flow works on latest arducopter firmwares, i did set as you set but no luck

Works fine, more info here https://github.com/ArduPilot/ardupilot/pull/16226

could you please share your setup parameters? I used parameters from this post you have shared before and also parameters on matek website, both didnt work.

This is not a real vehicle, it’s a bench test setup but should get you started.
MSP support is not in current stable or beta firmware and requires master as of now downloaded from here https://firmware.ardupilot.org/Plane/latest/

minipix_msp_3901.parm (28.0 KB)

thank you very much, it worked, does this also work on quadcopter master firmware?