-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Current Behavior
Current implementation of the Tramp Power Protocol is too rigid in INAV for modern VTX units. There are currently four power tables that are implemented for 5G8:
25, 100, 200, 200, 200
25, 100, 200, 400, 400
25, 100, 200, 400, 600
25, 100, 200, 500, 800
Which table is used for programming the VTX is determined by the maximum power output reported by the VTX. The power table selection can be overridden by the vtx_max_power_override CLI function (note that setting this >800mW will still select the 800mW table). Unlike Smart Audio, the Tramp protocol sends the desired power output value in mW to the VTX. Therefore, there are two main issues, plus two other minor issues with the current implementation:
- INAV is not able to instruct any Tramp VTX to a higher output than 800mW
- There are a vast number of Tramp VTX units on sale that have at least one RF power output less than 800mW that is not able to be selected by INAV (See below for a list of a number of VTX units and how they might be affected).
- The number of power levels supported by each VTX can vary between 4 and 6. By having constant 5 power settings, for some VTX INAV is limiting the selection of the 6th, while VTX units with 3 power outputs cannot act on the 'extra' setting
Desired Behavior
Implement a more flexible way of modifying the Tramp Power tables in INAV, either via CLI command or via the configurator GUI.
Suggested Solution
Ideally this should include a setting for number of Tramp power levels, the Power Values to be sent to the VTX and the Power Labels to be displayed in the OSD. Betaflight and Cleanflight use the following commands to set the Tramp power levels:
vtxtable powerlevels 5
vtxtable powervalues 25 100 200 400 600
vtxtable powerlabels 25 100 200 400 600
Note, it is worth considering a similar approach could be adopted for Smart Audio, that would permit the correct RF power labels to be displayed in the OSD for both interfaces
Who does this impact? Who is this for?
Everyone who operates a non Immersion RC VTX with Tramp interface, especially those that wish to have higher powered VTX units
Additional context
List (not exhaustive) of VTX units that have/are expected to exhibit less than optimal performance with INAV based on the current design. I've documented the output power of each and highlighted which power levels are likely to be an issue (my assessment that vtx_max_power_override is not used and that each VTX is reporting max power correctly).
Speedybee tx800 - 25mW, 200mW, 400mW, 800mW (400mW not selectable via Tramp in INAV)
iFlight BLITZ - 25mW, 400mW, 800mW, 1600mW (400mW & 1600mW not selectable via Tramp in INAV)
iFlight SucceX Force 800mW - 25mW, 100mW, 400mW, 800mW (400mW not selectable via Tramp in INAV)
iFlight SucceX Mini - 25mW, 100mW, 200mW, 400mW, 500mW (500mW not selectable via Tramp in INAV)
iFlight SucceX Micro Force - 25mW, 100mW, 200mW, 300mW (300mW not selectable via Tramp in INAV)
HGLRC Zeus 800mW - 25mW, 100mW, 200mW, 400mW, 800mW (400mW not selectable via Tramp in INAV)
HGLRC Zeus Nano - 25mW, 100mW, 200mW, 350mW (350mW not selectable via Tramp in INAV)
Foxeer Reaper Nano - 25mW, 100mW, 200mW, 350mW (350mW not selectable via Tramp in INAV)
Foxeer Reaper Extreme - 25mW, 200mW, 500mW, 1500mW, 2500mW (1500mW and 2500mW not selectable via Tramp in INAV)
Diatone MAMBA Ultra 1000 - 25mW, 200mW, 400mW, 800mW, 1000mW (400mW and 1000mW not selectable via Tramp in INAV)
Diatone MAMBA TX500 - 25mW, 200mW, 500mW (500mW not selectable via Tramp in INAV)
GEPRC RAD MINI - 25mW, 200mW, 500mW, 1000mW (1000mW not selectable via Tramp in INAV)
GEPRC RAD - 25mW, 200mW, 600mW, 1600mW (1600mW not selectable via Tramp in INAV)
JHEMCU RuiBet - 25mW, 200mW, 400mW, 800mW, 1600mW (400mW and 1600mW not selectable via Tramp in INAV)
JHEMCU FE300T - 25mW, 50mW, 100mW, 200mW, 300mW (50mW and 300mW not selectable via Tramp in INAV)
JHEMCU VTX30-800 - 25mW, 100mW, 200mW, 400mW, 800mW (500mW not selectable via Tramp in INAV)
ATOMRC Exceed - 25mW, 200mW, 500mW (500mW not selectable via Tramp in INAV)
Eachine Nano Plus - 25mW, 200mW, 600mW, 800mW (600mW not selectable via Tramp in INAV)
Flywoo GOKU TX-NANO - 25mW, 50mW, 100mW, 200mW, 450mW (50mW and 450mW not selectable via Tramp in INAV)
Flywoo GOKU HM600 - 25mW, 50mW, 100mW, 200mW, 600mW (50mW not selectable via Tramp in INAV)
Flywoo GOKU HM850 - 25mW, 50mW, 100mW, 200mW, 850mW (50mW & 850mW not selectable via Tramp in INAV)
PandaRC VT5804 Mini - 25mW, 50mW, 100mW, 200mW, 400mW (50mW not selectable via Tramp in INAV)
PandaRC VT5804 Nano - 25mW, 50mW, 100mW, 200mW, 400mW (50mW not selectable via Tramp in INAV)
PandaRC VT5804 X1/Q1 - 25mW, 100mW, 200mW, 400mW, 800mW (400mW not selectable via Tramp in INAV)
PandaRC VT5804 V3 - 25mW, 100mW, 200mW, 400mW, 800mW, 1000mW (400mW and 1000mW not selectable via Tramp in INAV)
PandaRC VT5804 BAT - 25mW, 400mW, 800mW, 1500mW, 2500mW (400mW, 1500mW and 2500mW not selectable via Tramp in INAV)
Matek 5.8G VTX - 25mW, 200mW, 500mW (500mW not selectable via Tramp in INAV)