From f9d657d507fe246652d1a1c42acd069028c76c46 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 4 Nov 2024 12:23:41 +0100 Subject: [PATCH 01/10] Adding Info about Link-Stats Comes along with https://github.com/olliw42/mLRS/tree/dev-msplinkstats --- docs/MSPX.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/MSPX.md b/docs/MSPX.md index 1212a65..b030e7c 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -10,6 +10,7 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air - MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWP. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). - MspX is tested and verified for INAV 7.1. It has been successfully tested with INAV 8.0 development builds (it may also work with INAV 6.0 and newer, but this has not been tested). - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. +- Link-Information such as RSSI, Link-Quality, SNR and more are provided to the Flight-Controller via MSP (Only INAV 8.0 and higher; Will be disabled automatically on unsupported firmwares; [More info](https://github.com/iNavFlight/inav/pull/10451)) ## mLRS Receiver Configuration From de4e87c7fd4571d4dfe6f1df4c54f26c5e5cadf3 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 4 Nov 2024 16:33:49 +0100 Subject: [PATCH 02/10] Update MSPX.md --- docs/MSPX.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index b030e7c..ec1ba5b 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -10,7 +10,7 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air - MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWP. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). - MspX is tested and verified for INAV 7.1. It has been successfully tested with INAV 8.0 development builds (it may also work with INAV 6.0 and newer, but this has not been tested). - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- Link-Information such as RSSI, Link-Quality, SNR and more are provided to the Flight-Controller via MSP (Only INAV 8.0 and higher; Will be disabled automatically on unsupported firmwares; [More info](https://github.com/iNavFlight/inav/pull/10451)) +- 'Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8.0 and higher (not available on earlier versions). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). ## mLRS Receiver Configuration From de332c3c787e0ff9efc17b1227cd537e9105d031 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:19:13 +0100 Subject: [PATCH 03/10] Update MSPX.md --- docs/MSPX.md | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index ec1ba5b..d788423 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -3,14 +3,16 @@ ([back to main page](../README.md)) mLRS provides the MspX technology, which is designed to improve the over-the-air communication for systems using the MSP protocol, specifically INAV. It includes the following features: -- MSP to CRSF message conversion which provides telemetry elements to the radio and therefore enables Lua scripts on the radio such as the INAV app or telemetry widgets to function. +- MSP to CRSF message conversion which provides telemetry elements to the radio and therefore enables Lua scripts on the radio such as the INAV Telemetry Widget, FM2M Toolbox or the Horus Mapping Widget to function. - Robust framing and parsing which reduces packet losses to a minimum, and compression of some very large MSP messages to increase probability of successful transmission. +- Providing of comprehensive mLRS link statistics and information to the Flight-Controller, to show them on the OSD and in blackbox recordings. +- Possibility of RC-Control, serial data communication and Radio Telemetry through a single UART. ***Notes***: -- MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWP. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). -- MspX is tested and verified for INAV 7.1. It has been successfully tested with INAV 8.0 development builds (it may also work with INAV 6.0 and newer, but this has not been tested). +- For INAV Versions before 8.0 RC1 MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWPT. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). +- MspX is tested and verified for INAV 7.1 and newer (it may also work with older INAV releases, but this has not been tested). - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- 'Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8.0 and higher (not available on earlier versions). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). +- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8.0 and higher (not available on earlier versions, RC Control over CRSF on a second UART are necessary, to recieve link statistics). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). ## mLRS Receiver Configuration @@ -28,9 +30,12 @@ For enabling MSP-RC set: With MSP-RC enabled, SET_RAW_RC messages are sent to the flight controller. In the flight controller configure the receiver to the MSP protocol. This allows one to avoid the extra wire for CRSF or SBus. MspX needs to be enabled. +***Notes***: +RC Link Statistics are only send to the Flight controller via MSP, if "rc override" or "rc channels" is enabled. + ## INAV Configuration -The baudrate should be set to 115200 as lower baudrates have shown irregular telemetry update rates on the radio due to the lack of flow control on the INAV side. +The baudrate should be set to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in a inconsistent RC control at 50Hz RC Rate, if MSP-RC is used (INAV Limitation). INAV 8.0 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. Additionally with INAV 8.0 the performance of the serial link to a ground control station will be increased, due to some optimizations in INAV. @@ -49,3 +54,7 @@ To use a mLRS receiver with INAV in MspX mode, the following settings have to be If your radio is connected, you should now be able to see the channel values update when you move the radio sticks. No further settings are needed and telemetry will work for EdgeTX/OpenTX radios after scanning for sensors. + + + + From 3143d764b5e1950afe7bdc432306d65d606ca920 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:56:09 +0100 Subject: [PATCH 04/10] Add files via upload --- docs/images/MSPX_receiver.png | Bin 0 -> 118530 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/MSPX_receiver.png diff --git a/docs/images/MSPX_receiver.png b/docs/images/MSPX_receiver.png new file mode 100644 index 0000000000000000000000000000000000000000..cc9c869c927a27c0892813dcbf27b2110b4d9cd1 GIT binary patch literal 118530 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 z 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 Pz>k)?{$1?tXMz6(M$Cl@ literal 0 HcmV?d00001 From dbcc1f8e9f85a7092d6655a7f842a3587af21c31 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:43:09 +0100 Subject: [PATCH 05/10] Update MSPX.md --- docs/MSPX.md | 66 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 58 insertions(+), 8 deletions(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index d788423..db50bc8 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -9,10 +9,10 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air - Possibility of RC-Control, serial data communication and Radio Telemetry through a single UART. ***Notes***: -- For INAV Versions before 8.0 RC1 MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWPT. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). +- For INAV Versions before 8 RC1 MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWPT. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). - MspX is tested and verified for INAV 7.1 and newer (it may also work with older INAV releases, but this has not been tested). - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8.0 and higher (not available on earlier versions, RC Control over CRSF on a second UART are necessary, to recieve link statistics). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). +- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8 and higher (not available on earlier versions, RC Control over CRSF on a second UART are necessary, to recieve link statistics). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). ## mLRS Receiver Configuration @@ -26,18 +26,19 @@ MspX is enabled by this setting in the receiver: For enabling MSP-RC set: -- "Rx Snd RcChannel" = "rc override" or "rc channels" +- "Rx Snd RcChannel" = "rc override" or "rc channels" (both have the same functionality in mspX mode) With MSP-RC enabled, SET_RAW_RC messages are sent to the flight controller. In the flight controller configure the receiver to the MSP protocol. This allows one to avoid the extra wire for CRSF or SBus. MspX needs to be enabled. ***Notes***: RC Link Statistics are only send to the Flight controller via MSP, if "rc override" or "rc channels" is enabled. +MSP-RC messages will always override other RC Link inputs. If CRSF is connected and CRSF selected as the RC Protocol in INAV, MSP-RC still has priority if enabled in mLRS and connected to a MSP Enabled UART. ## INAV Configuration The baudrate should be set to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in a inconsistent RC control at 50Hz RC Rate, if MSP-RC is used (INAV Limitation). -INAV 8.0 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. Additionally with INAV 8.0 the performance of the serial link to a ground control station will be increased, due to some optimizations in INAV. +INAV 8 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. Additionally with INAV 8 the performance of the serial link to a ground control station will be increased, due to some optimizations in INAV. To use a mLRS receiver with INAV in MspX mode, the following settings have to be applied in INAV: - Enable MSP for the Serial Port the mLRS receiver is connected to (UART 2 is recommended on most STM32 flight controllers; do not enable "Serial RX"). @@ -45,16 +46,65 @@ To use a mLRS receiver with INAV in MspX mode, the following settings have to be -- In the Receiver tab, select the Receiver Type in the Receiver Mode panel to MSP, and save settings. +- In the Receiver tab, select the Receiver Type in the Receiver Mode panel to MSP and also set the RSSI Source to MSP (INAV 8 and later) and save settings. - + -- When connecting INAV 8.0 Configurator through mLRS it is highly recommended to enable the Wireless Mode switch before connection, for better link reliability (do not use Wireless Mode with versions earlier than 8.0, such as INAV 7.1). +- When connecting INAV 8 Configurator through mLRS for flight monitoring, it is recommended to enable the Wireless Mode switch before connection, for better link reliability (do not use Wireless Mode with versions earlier than 8, such as INAV 7.1). If your radio is connected, you should now be able to see the channel values update when you move the radio sticks. No further settings are needed and telemetry will work for EdgeTX/OpenTX radios after scanning for sensors. - +## Connection Types with different INAV Versions + +Depending on the chosen connection and serial mode, the functionality will slightly differ, especially in INAV versions before 8.0. This is a quick overview, what options are available and what functions to expect. + +### INAV 7 + +Serial Mode: +- mspX + - provides telemetry sensors to your radio + - allows RC Control over MSP (rc override) + - Ground control station use is limited to applications that can handle unrequested MSP messages (MWPTools only works in Monitor-Mode, INAV Configurator will be slow to load parameters, etc.) + - Will not provide RC Link Statistics for OSD or Blackbox +- Transparent + - Full functionality of GCS Software but possibility of higher message loss (Especially big MSP Messages like ADS-B Data or Waypoint Mission transfers) + - No RC Control, No Telemetry to the radio (needs CRSF for RC control) + - No link statistics for the OSD (Needs CRSF for OSD Link Information) + +RC Out Mode (Can be combined with Serial if the Rx has 2 UART) +- CRSF + - allows RC Control + - provides link statistics for OSD and Blackbox + - No Telemetry + + ***Recommendation*** + For INAV 7 we recommend one of three options, depending on the usecase. + - mspX+CRSF if mLRS is only used as a radio control system for FPV. The separate CRSF for RC Control is recommended, to have OSD Link Statistics available + - mspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) + - Transparent+CRSF for full 2-Way GCS Communication and RC Control. In this case you will not have telemetry on your radio. + +### INAV 8 + +Serial Mode: +- mspX + - provides telemetry sensors to your radio + - allows RC Control over MSP (rc override) + - Full MSP GCS Functionality with INAV Configurator, MWP and other applications + - comprehensive OSD and Blackbox Link Statistics with dedicated MSP messages provided by mLRS + - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) +- Transparent + - See INAV 7 section + - Not recommended + +RC Out Mode (Can be combined with Serial if the Rx has 2 UART) +- CRSF + - allows RC Control + - RC Rate up to 111Hz in 2.4GHz FLRC mode + + ***Recommendation*** +Since INAV 8 in combination with mLRS can provide all features over mspX, it is recommended to only use a single UART mspX connection for most vehicles. The only exception is the 2.4GHz FLRC mode that can provide 111Hz packet and RC rate. +Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separated CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. From d5009e739257ca1e13dad571e9334aa376ee5510 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:43:54 +0100 Subject: [PATCH 06/10] Update MSPX.md --- docs/MSPX.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/MSPX.md b/docs/MSPX.md index db50bc8..0e063a3 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -80,6 +80,7 @@ RC Out Mode (Can be combined with Serial if the Rx has 2 UART) - No Telemetry ***Recommendation*** + For INAV 7 we recommend one of three options, depending on the usecase. - mspX+CRSF if mLRS is only used as a radio control system for FPV. The separate CRSF for RC Control is recommended, to have OSD Link Statistics available - mspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) @@ -104,6 +105,7 @@ RC Out Mode (Can be combined with Serial if the Rx has 2 UART) - RC Rate up to 111Hz in 2.4GHz FLRC mode ***Recommendation*** + Since INAV 8 in combination with mLRS can provide all features over mspX, it is recommended to only use a single UART mspX connection for most vehicles. The only exception is the 2.4GHz FLRC mode that can provide 111Hz packet and RC rate. Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separated CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. From edaf0d4f408ec83e592c439234a44e759e97515c Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 16:04:03 +0100 Subject: [PATCH 07/10] Update MSPX.md Update from JLPs feedback --- docs/MSPX.md | 83 ++++++++++++++++++++++++++-------------------------- 1 file changed, 42 insertions(+), 41 deletions(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index 0e063a3..a6aac22 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -5,14 +5,15 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air communication for systems using the MSP protocol, specifically INAV. It includes the following features: - MSP to CRSF message conversion which provides telemetry elements to the radio and therefore enables Lua scripts on the radio such as the INAV Telemetry Widget, FM2M Toolbox or the Horus Mapping Widget to function. - Robust framing and parsing which reduces packet losses to a minimum, and compression of some very large MSP messages to increase probability of successful transmission. -- Providing of comprehensive mLRS link statistics and information to the Flight-Controller, to show them on the OSD and in blackbox recordings. -- Possibility of RC-Control, serial data communication and Radio Telemetry through a single UART. +- Provides comprehensive link statistics to the flight controller, enabling them to be shown on the OSD and recorded in the blackbox. +- Possible to have both RC and MSP serial data on a single UART. ***Notes***: -- For INAV Versions before 8 RC1 MspX is not strictly compliant with the MSP protocol, and softwares which require strict compliance may not work properly. This includes e.g. MWPT. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). -- MspX is tested and verified for INAV 7.1 and newer (it may also work with older INAV releases, but this has not been tested). +- For INAV Versions before 8, MspX can not fully comply with MSP functional design rules and might not work properly with GCS Applications. This includes e.g. MWPTools. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). +- MspX is tested with INAV 7.1 but it is highly recommended to use INAV 8 or newer. - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC on INAV 8 and higher (not available on earlier versions, RC Control over CRSF on a second UART are necessary, to recieve link statistics). More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). +- Link statistics and information such as RSSI, LQ, SNR, etc. are provided via MspX on INAV 8 and higher [here](https://github.com/iNavFlight/inav/pull/10451). +- RC Rate will be limited to 37Hz in 2.4GHz FLRC mode (see INAV 8 Summary) ## mLRS Receiver Configuration @@ -21,36 +22,34 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air MspX is enabled by this setting in the receiver: - "Rx Ser Link Mode" = "mspX" +- "Ser Baudrate" = "115200" or "230400" (for INAV 8 and later) #### MSP-RC For enabling MSP-RC set: -- "Rx Snd RcChannel" = "rc override" or "rc channels" (both have the same functionality in mspX mode) - -With MSP-RC enabled, SET_RAW_RC messages are sent to the flight controller. In the flight controller configure the receiver to the MSP protocol. This allows one to avoid the extra wire for CRSF or SBus. MspX needs to be enabled. +- "Rx Snd RcChannel" = "rc override" or "rc channels" (both have the same functionality in MspX mode) ***Notes***: -RC Link Statistics are only send to the Flight controller via MSP, if "rc override" or "rc channels" is enabled. -MSP-RC messages will always override other RC Link inputs. If CRSF is connected and CRSF selected as the RC Protocol in INAV, MSP-RC still has priority if enabled in mLRS and connected to a MSP Enabled UART. +- RC link statistics are only sent to the flight controller via MSP if "rc override" or "rc channels" is selected. +- MSP-RC messages will always override other RC Link inputs. If CRSF is connected and CRSF selected as the RC Protocol in INAV, MSP-RC still has priority if enabled in mLRS and connected to a MSP Enabled UART. ## INAV Configuration -The baudrate should be set to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in a inconsistent RC control at 50Hz RC Rate, if MSP-RC is used (INAV Limitation). - -INAV 8 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. Additionally with INAV 8 the performance of the serial link to a ground control station will be increased, due to some optimizations in INAV. +The baudrate should be set to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in inconsistent RC control at 50Hz RC Rate, if MSP-RC is used (INAV Limitation). To use a mLRS receiver with INAV in MspX mode, the following settings have to be applied in INAV: - Enable MSP for the Serial Port the mLRS receiver is connected to (UART 2 is recommended on most STM32 flight controllers; do not enable "Serial RX"). - Set the baudrate to 115200 or higher. +- INAV 8 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. -- In the Receiver tab, select the Receiver Type in the Receiver Mode panel to MSP and also set the RSSI Source to MSP (INAV 8 and later) and save settings. +- In the Receiver tab, change the Receiver Mode to 'MSP' and the RSSI Source to 'MSP' (INAV 8 and later) then save settings. -- When connecting INAV 8 Configurator through mLRS for flight monitoring, it is recommended to enable the Wireless Mode switch before connection, for better link reliability (do not use Wireless Mode with versions earlier than 8, such as INAV 7.1). +- When connecting INAV 8 Configurator through mLRS for flight monitoring, it is recommended to enable the Wireless Mode switch before connection, for better link reliability (do not use Wireless Mode with versions less than 8). @@ -58,14 +57,38 @@ If your radio is connected, you should now be able to see the channel values upd ## Connection Types with different INAV Versions -Depending on the chosen connection and serial mode, the functionality will slightly differ, especially in INAV versions before 8.0. This is a quick overview, what options are available and what functions to expect. +Depending on the chosen connection and serial mode, the functionality will slightly differ, especially in INAV versions before 8. This is a quick overview, what options are available and what functions to expect. + +### INAV 8 + +Serial Mode: +- MspX + - provides telemetry sensors to your radio + - allows RC Control over MSP (rc override) + - Full MSP GCS Functionality with INAV Configurator, MWP and other applications + - comprehensive OSD and Blackbox Link Statistics with dedicated MSP messages provided by mLRS + - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) +- Transparent + - See INAV 7 section + - Not recommended + +RC Out Mode (Can be combined with Serial if the Rx has 2 UART) +- CRSF + - allows RC Control + - RC Rate up to 111Hz in 2.4GHz FLRC mode + + ***Recommendation*** + +Since INAV 8 in combination with mLRS can provide all features over MspX, it is recommended to only use a single UART MspX connection for most vehicles. The only exception is the 2.4GHz FLRC mode that can provide 111Hz packet and RC rate. +Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separated CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. ### INAV 7 Serial Mode: -- mspX +- MspX - provides telemetry sensors to your radio - allows RC Control over MSP (rc override) + - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) - Ground control station use is limited to applications that can handle unrequested MSP messages (MWPTools only works in Monitor-Mode, INAV Configurator will be slow to load parameters, etc.) - Will not provide RC Link Statistics for OSD or Blackbox - Transparent @@ -82,31 +105,9 @@ RC Out Mode (Can be combined with Serial if the Rx has 2 UART) ***Recommendation*** For INAV 7 we recommend one of three options, depending on the usecase. - - mspX+CRSF if mLRS is only used as a radio control system for FPV. The separate CRSF for RC Control is recommended, to have OSD Link Statistics available - - mspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) + - MspX+CRSF if mLRS is only used as a radio control system for FPV. The separate CRSF for RC Control is recommended, to have OSD Link Statistics available + - MspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) - Transparent+CRSF for full 2-Way GCS Communication and RC Control. In this case you will not have telemetry on your radio. -### INAV 8 - -Serial Mode: -- mspX - - provides telemetry sensors to your radio - - allows RC Control over MSP (rc override) - - Full MSP GCS Functionality with INAV Configurator, MWP and other applications - - comprehensive OSD and Blackbox Link Statistics with dedicated MSP messages provided by mLRS - - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) -- Transparent - - See INAV 7 section - - Not recommended - -RC Out Mode (Can be combined with Serial if the Rx has 2 UART) -- CRSF - - allows RC Control - - RC Rate up to 111Hz in 2.4GHz FLRC mode - - ***Recommendation*** - -Since INAV 8 in combination with mLRS can provide all features over mspX, it is recommended to only use a single UART mspX connection for most vehicles. The only exception is the 2.4GHz FLRC mode that can provide 111Hz packet and RC rate. -Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separated CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. From fe9d2b4a295adf26748642cb204364e4b779bbc4 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 19:08:28 +0100 Subject: [PATCH 08/10] Update MSPX.md further tweaks by JLPs suggestion --- docs/MSPX.md | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index a6aac22..0215a1c 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -9,11 +9,11 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air - Possible to have both RC and MSP serial data on a single UART. ***Notes***: -- For INAV Versions before 8, MspX can not fully comply with MSP functional design rules and might not work properly with GCS Applications. This includes e.g. MWPTools. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). -- MspX is tested with INAV 7.1 but it is highly recommended to use INAV 8 or newer. +- For INAV 7.1 and earlier, MspX does not fully comply with MSP functional design rules and might not work properly with GCS applications. This includes e.g. MWPTools. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). +- It is highly recommended to use INAV 8 or later, although MspX has also been tested with INAV 7.1. - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- Link statistics and information such as RSSI, LQ, SNR, etc. are provided via MspX on INAV 8 and higher [here](https://github.com/iNavFlight/inav/pull/10451). -- RC Rate will be limited to 37Hz in 2.4GHz FLRC mode (see INAV 8 Summary) +- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC only on INAV 8.0 and higher. More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). +- RC Rate will be limited to 37Hz in 2.4GHz FLRC mode (see INAV 8 Summary). ## mLRS Receiver Configuration @@ -36,11 +36,9 @@ For enabling MSP-RC set: ## INAV Configuration -The baudrate should be set to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in inconsistent RC control at 50Hz RC Rate, if MSP-RC is used (INAV Limitation). - To use a mLRS receiver with INAV in MspX mode, the following settings have to be applied in INAV: - Enable MSP for the Serial Port the mLRS receiver is connected to (UART 2 is recommended on most STM32 flight controllers; do not enable "Serial RX"). -- Set the baudrate to 115200 or higher. +- Set the baudrate to 115200 or higher for consistent dataflow and RC control. Baudrates of less than 57600 can cause message loss on the INAV side and result in inconsistent RC control over MSP-RC (INAV Limitation). - INAV 8 and later will also support a baudrate of 230400 but no change in performance or stability was noticed. @@ -55,7 +53,7 @@ To use a mLRS receiver with INAV in MspX mode, the following settings have to be If your radio is connected, you should now be able to see the channel values update when you move the radio sticks. No further settings are needed and telemetry will work for EdgeTX/OpenTX radios after scanning for sensors. -## Connection Types with different INAV Versions +## Differences between INAV 8 and 7 when using MspX Depending on the chosen connection and serial mode, the functionality will slightly differ, especially in INAV versions before 8. This is a quick overview, what options are available and what functions to expect. @@ -67,20 +65,23 @@ Serial Mode: - allows RC Control over MSP (rc override) - Full MSP GCS Functionality with INAV Configurator, MWP and other applications - comprehensive OSD and Blackbox Link Statistics with dedicated MSP messages provided by mLRS - - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) + - limited to 50Hz RC Rate (only relevant for 2.4GHz FLRC mode, which will be limited to 37Hz RC rate, but full datarate) - Transparent - - See INAV 7 section - Not recommended + - See INAV 7 section -RC Out Mode (Can be combined with Serial if the Rx has 2 UART) + +RC Out Mode (can be combined with serial if the receiver has 2 UARTs) - CRSF - allows RC Control + - provides limited link statistics for OSD and Blackbox - RC Rate up to 111Hz in 2.4GHz FLRC mode + - no downlink telemetry ***Recommendation*** Since INAV 8 in combination with mLRS can provide all features over MspX, it is recommended to only use a single UART MspX connection for most vehicles. The only exception is the 2.4GHz FLRC mode that can provide 111Hz packet and RC rate. -Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separated CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. +Due to a performance limitation in INAV, this mode had to be limited to 37Hz RC Rate over MSP. Use a separate CRSF UART instead, to achieve full 111Hz RC Update Rates in this mode. All other features will work as normal. ### INAV 7 @@ -88,26 +89,27 @@ Serial Mode: - MspX - provides telemetry sensors to your radio - allows RC Control over MSP (rc override) - - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) - Ground control station use is limited to applications that can handle unrequested MSP messages (MWPTools only works in Monitor-Mode, INAV Configurator will be slow to load parameters, etc.) - Will not provide RC Link Statistics for OSD or Blackbox + - limited to 50Hz RC Rate (Only relevant for 2.4GHz FLRC Mode with 111Hz Packet rate, Will be limited to 37Hz RC rate) - Transparent - Full functionality of GCS Software but possibility of higher message loss (Especially big MSP Messages like ADS-B Data or Waypoint Mission transfers) - - No RC Control, No Telemetry to the radio (needs CRSF for RC control) + - No RC control, no telemetry to the radio (needs CRSF for RC control) - No link statistics for the OSD (Needs CRSF for OSD Link Information) RC Out Mode (Can be combined with Serial if the Rx has 2 UART) - CRSF - allows RC Control - - provides link statistics for OSD and Blackbox - - No Telemetry + - provides limited link statistics for OSD and Blackbox + - RC Rate up to 111Hz in 2.4GHz FLRC mode + - no downlink telemetry ***Recommendation*** For INAV 7 we recommend one of three options, depending on the usecase. - - MspX+CRSF if mLRS is only used as a radio control system for FPV. The separate CRSF for RC Control is recommended, to have OSD Link Statistics available - - MspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) - - Transparent+CRSF for full 2-Way GCS Communication and RC Control. In this case you will not have telemetry on your radio. + 1. MspX+CRSF if you fly FPV, the separate CRSF for RC Control enables OSD Link Statistics. + 2. MspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) + 3. Transparent+CRSF for full 2-Way GCS Communication and RC Control. However, in this case you will not have telemetry on your radio. From 7383450a3fdb3cad9cf566bf107c7f1a747e6342 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 19:17:32 +0100 Subject: [PATCH 09/10] Update MSPX.md --- docs/MSPX.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index 0215a1c..5ebf3f3 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -65,7 +65,7 @@ Serial Mode: - allows RC Control over MSP (rc override) - Full MSP GCS Functionality with INAV Configurator, MWP and other applications - comprehensive OSD and Blackbox Link Statistics with dedicated MSP messages provided by mLRS - - limited to 50Hz RC Rate (only relevant for 2.4GHz FLRC mode, which will be limited to 37Hz RC rate, but full datarate) + - limited to 50Hz RC Rate (only relevant for 2.4GHz FLRC mode, which will be limited to 37Hz RC rate) - Transparent - Not recommended - See INAV 7 section From 71d9b606afe50a05aa487f702c57a45c267e8bd3 Mon Sep 17 00:00:00 2001 From: b14ckyy <33039058+b14ckyy@users.noreply.github.com> Date: Mon, 9 Dec 2024 20:15:48 +0100 Subject: [PATCH 10/10] Update MSPX.md probably last tweaks --- docs/MSPX.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/MSPX.md b/docs/MSPX.md index 5ebf3f3..84cc6ab 100644 --- a/docs/MSPX.md +++ b/docs/MSPX.md @@ -12,14 +12,14 @@ mLRS provides the MspX technology, which is designed to improve the over-the-air - For INAV 7.1 and earlier, MspX does not fully comply with MSP functional design rules and might not work properly with GCS applications. This includes e.g. MWPTools. In these cases, mLRS can be set into transparent mode by setting "Rx Ser Link Mode" = "transp." (the below features of MspX will then not be avaiable). - It is highly recommended to use INAV 8 or later, although MspX has also been tested with INAV 7.1. - INAV Configurator is assumed as ground control station, and INAV Lua app on the radio. -- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC only on INAV 8.0 and higher. More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). -- RC Rate will be limited to 37Hz in 2.4GHz FLRC mode (see INAV 8 Summary). +- Link statistics and information such as RSSI, LQ, SNR, etc. are provided to the FC only on INAV 8 and higher. More info can be found [here](https://github.com/iNavFlight/inav/pull/10451). +- RC Rate will be limited to 37Hz in 2.4GHz FLRC mode when using MspX (see INAV 8 summary). ## mLRS Receiver Configuration #### MspX -MspX is enabled by this setting in the receiver: +For enabling MspX set: - "Rx Ser Link Mode" = "mspX" - "Ser Baudrate" = "115200" or "230400" (for INAV 8 and later) @@ -32,7 +32,7 @@ For enabling MSP-RC set: ***Notes***: - RC link statistics are only sent to the flight controller via MSP if "rc override" or "rc channels" is selected. -- MSP-RC messages will always override other RC Link inputs. If CRSF is connected and CRSF selected as the RC Protocol in INAV, MSP-RC still has priority if enabled in mLRS and connected to a MSP Enabled UART. +- MSP-RC messages will always override other RC Link inputs. If CRSF is connected and selected as the RC Protocol in INAV, MSP-RC still has priority if enabled in mLRS and connected to a MSP Enabled UART. ## INAV Configuration @@ -108,7 +108,7 @@ RC Out Mode (Can be combined with Serial if the Rx has 2 UART) For INAV 7 we recommend one of three options, depending on the usecase. 1. MspX+CRSF if you fly FPV, the separate CRSF for RC Control enables OSD Link Statistics. - 2. MspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP) + 2. MspX+MSP-RC if no OSD link statistics are needed (autonomous flights and LOS only) and if you use a GCS Software that can handle passive MSP Message Monitoring with no 2-way communication (MWP). 3. Transparent+CRSF for full 2-Way GCS Communication and RC Control. However, in this case you will not have telemetry on your radio.