MSP protocol support

Thanks for the help. Do you know what needs to be sent back to acknowledge the frame. I also would like to process these two messages only. Maybe the lack of acknowledgement is the reason for the Mateksys board to only sends the first couple of messages correctly, because it is waiting for the acknowledgement of the sent messages. After those couple of initial correct messages only 0x24 or $ is sent (and probably some noise once in a while). So if you know how to respond to a rangefinder or optic flow message please share it. It is fantastic that you managed to find this out without any documentation about these messages. I did not even know that these messages should be acked.

Thanks

To create the acks you need to check the MSP protocol specs.
What you need is writing your own MSP encode/decoder, it’s not a reverse engineering but rather an implementation by specs.

Dear Alex

I have already started to implement my own encoder and decoder from scratch, but
the only documentation that I could find was these two links.


http://armazila.com/MultiwiiSerialProtocol(draft)v02.pdf

I even wrote to Mateksys to provide the specs and they directed me to this page (Ardupilot and Inav)
This is the reason why I reverted to try to reverse engineer the code.

If you have such specs or know where to find them please share it.

thanks

No such thing as “official specs”, I studied betaflight code and checked many open source implementations on github, there are no official MSP v2 specs, the protocol lives in the code :slight_smile:

You might find usefull reading here http://www.multiwii.com/forum/viewtopic.php?t=1516

All acks are just the same as the original message but with 0 payload size and no payload.

For the v2 protocol you will have to study the code, the specs you posted are about all you’ll get

Thanks, for help, I will read through that forum. When you meant to “study the code”, which code do you mean. There are multiple MSP related codes, is there are reference implementation for this, or just search for some random MSP projects with google? Should I look at bareflight?

I did not find any traces for acknowledgement in your v0.7 code, but maybe was not looking at the right place.

check /libraries/AP_MSP/msp.cpp , I’d say that the reference implementation for v2 and sensors is iNAV

hi,
sorry for the demand …
is there an arduplane firmware for the pixhawk 4 mini including MSP protocol?
thanks

here you go :slight_smile:
it’s current master configured with the --osd option for target PH4-mini

arducopter-heli_ph4-mini.zip (957.3 KB)
arducopter_ph4-mini.zip (967.4 KB)
arduplane_ph4-mini.zip (966.1 KB)

wonderful !
thanks, i will try this with a big drak
Pascal

hi,
today i flashed my holybro pixhawk 4 mini , connected the 3 cables ( tx, rx and ground ) from the telem1 port to my caddx vista.
Changed the paramaters : OSD_type =3
SERIAL2_PROTOCOL = 33 ( but this parameter is unknown???)
MSP_OPTION = 0
activated the osd on the google
i can’t get the osd working , what am i doing wrong ?

Thanks.
Pascal

Thanks Yaapu and Tridge for all this work. I started a new job this summer and was completely out of the area. I discover with pleasure the merge into arduplane 4.1 ! this is super cool. I try it now and all major needs seems to be ok. Again sorry for late answer. KR :grinning:

1 Like

Hi,
here is the serial port

hi,

ok ! it’s working ! i had to download the master mission planner and after update it ( ??)
Thanks
Is there a way to get the artificial horizon ?
Pascal

no DJI firmware doesn’t support it yet, at least it did not last time I checked.

ok thanks again ! so happy !

2 Likes

Just wanted to chime in that I built a small 220/5" props fpv/cinematic quad with DJI FPV, Matek Lidar, and CRSF passthrough! All 3 working quite well! For this quad I used Matek F405-SE.
I enabled optical flow but noticed it was reversed (my board is pointed toward the back of my quad). So I turned it off for now, and will revisit that config this weekend.

From the specs, I added the below settings.
RNGFND1_MIN_CM = 8
RNGFND1_MAX_CM = 200

All is well. Amazing work which allows us to play with a cheap(er) lidar than other options.

I would like to make a request for a latest stable Arducopter Heli firmware for kakute F7 Mini with MSP OSD support. I can’t use master as there is no option to disable EKF3.On a heli, EKF3 is creating problems.

So please compile KakuteF7Mini-heli 4.0.5-FIRMWARE_VERSION_TYPE_OFFICIAL with MSP OSD support. Thanks in advance!!!

Hi, this is not easy, it would imply a full backport of MSP support from master to stable :frowning: