rodizio1 / EZ-WifiBroadcast

Affordable Digital HD Video Transmission made easy!
GNU General Public License v2.0
826 stars 200 forks source link

Verify Status of MSP #168

Closed pilotnbr1 closed 6 years ago

pilotnbr1 commented 6 years ago

It is unknown if MSP is a working RC protocol. I will take a look at this one next week.

zipray commented 6 years ago

Yes it is

careyer commented 6 years ago

@zipray : Can you shed some light on this maybe? What is the current status of MSP support in the latest 1.6rc6 build? Is it supporting MSP v1.0 or MSP v2.0 and - most importantly - is it enabled at all? The release notes mention nothing about it and as both of us @pilotnbr1 and me can remember there was a discussion long ago that there were version problems with v1 and the newer CF, BF, and iNav (only supporting v2). That ultimately resulted in the need for the EZ-WBC MSP implementation to be overhauled (which never happened afaik) and if my mind does not play tricks on me it was even completely deactivated , i.e. there is no RC=msp option anymore?

I did a little bit of digging in the RCgroups forum thread: https://www.rcgroups.com/forums/showpost.php?p=40083333&postcount=5487

https://www.rcgroups.com/forums/showpost.php?p=40085007&postcount=5497

https://www.rcgroups.com/forums/showpost.php?p=40085099&postcount=5499

https://www.rcgroups.com/forums/showpost.php?p=40085143&postcount=5500

https://www.rcgroups.com/forums/showpost.php?p=40085198&postcount=5501

This leaves us behind a little bit clueless what the latest status of MSP implementation with 1.6rc6 is.

zipray commented 6 years ago

@careyer @pilotnbr1 FC: f3 evo FW:inav V2.0(msp v2.0) Air pi:zero Ground pi:3b Radio:frsky Qx7 With RC=MSP enabled in the WBC, control can be achieved by connecting the air pi tx to the RX of the FC RC serial port.But like mavlink, the air pi 's serial interface, rx,tx, is occupied at the same time.Even if I connect the air pi rx to the FC telemetry serial port tx, and enable the LTM telemetry protocol, the information cannot be obtained in the ground OSD.In the case that both the FC and ari PI serial ports are defined as MSP's and cross connection, I do not know if any MSP data is returned to ground pi, as the OSD does not support MSP data display.

careyer commented 6 years ago

Alright thank you for that information. I suppose this was tested with 1.6rc6 right?

Let me summarize from all the information above:

pilotnbr1 commented 6 years ago

@zipray thanks for that! Very much appreciated! How much have you used the msp rc? Has it been reliable?

@careyer We dont truly know what is in the ez code. I am going to investigate this further from the code side to confirm what version of msp is running. The assumption is that ez is v1 and inav msp v2 is backwards compatible.

careyer commented 6 years ago

@pilotnbr1 : Yes please dig into the code... but I believe this says it all: https://www.rcgroups.com/forums/showpost.php?p=40085007&postcount=5497

zipray commented 6 years ago

@pilotnbr1 @careyer Thank you very much for your reply.I only use 6 ch's in 12ch. I've heard horror stories about MSP that I didn't encounter on inav. MSP connection cannot be obtained by connecting PC and ground PI serial port via usb-ttl module, including uplink MSP navigation point or adjustment parameter and downlink FC state.I think WBC only implements MSP RC output of air PI, because the MSP v2 of inav is compatible with v1, MSP RC is available at present. My more radical idea is to expand the number of usb ports of zero through usb hub, and use one of them to connect the usb socket of FC for MSP control. The serial port of air PI can be independently used for telemetry.

rodizio1 commented 6 years ago

@pilotnbr1 : Yes please dig into the code... but I believe this says it all: https://www.rcgroups.com/forums/showpost.php?p=40085007&postcount=5497

No, this doesn't say it all, also read my reply to Target0815's posting ;) https://www.rcgroups.com/forums/showpost.php?p=40085099&postcount=5499

(The change that made it incompatible wasn't the introduction of MSP v2, it must've been something else, as it stopped working somewhere around Cleanflight 1.13 or 1.14, well before MSP v2 was introduced.)

But, ofcourse, now it probably makes sense to implement MSP V2 as Cleanflight/Inav/Betaflight use that.

What needs to be changed is the MSP packet generation logic in /root/wifibroadcast/rcrx.c to generate MSP v2 packets instead of v1 packets, should be straight-forward.

(see here: https://github.com/iNavFlight/inav/wiki/MSP-V2 for MSP v2 specification)

zipray commented 6 years ago

@rodizio1 It's nice to have you back and continue to lead us through the WBC's ""hogwarts" .

pilotnbr1 commented 6 years ago

Well based on @rodizio1 comments, (thanks for shedding more light on it) i think msp needs an update (especially if it’s easy to implement). I suggest that be a new issue or enhancement, but I think we can close this issue as far as the question goes.