Companion: Russian UI (#7180)
[opentx.git] / radio / src / pulses / modules_constants.h
blobec0f8f819707e617a508db2decfe605f557de07c
1 /*
2 * Copyright (C) OpenTX
4 * Based on code named
5 * th9x - http://code.google.com/p/th9x
6 * er9x - http://code.google.com/p/er9x
7 * gruvin9x - http://code.google.com/p/gruvin9x
9 * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
21 #ifndef _MODULES_CONSTANTS_H_
22 #define _MODULES_CONSTANTS_H_
24 enum ModuleType {
25 MODULE_TYPE_NONE = 0,
26 MODULE_TYPE_PPM,
27 MODULE_TYPE_XJT_PXX1,
28 MODULE_TYPE_ISRM_PXX2,
29 MODULE_TYPE_DSM2,
30 MODULE_TYPE_CROSSFIRE,
31 MODULE_TYPE_MULTIMODULE,
32 MODULE_TYPE_R9M_PXX1,
33 MODULE_TYPE_R9M_PXX2,
34 MODULE_TYPE_R9M_LITE_PXX1,
35 MODULE_TYPE_R9M_LITE_PXX2,
36 MODULE_TYPE_R9M_LITE_PRO_PXX1, // Doesn't exist
37 MODULE_TYPE_R9M_LITE_PRO_PXX2,
38 MODULE_TYPE_SBUS,
39 MODULE_TYPE_XJT_LITE_PXX2,
40 MODULE_TYPE_COUNT,
41 MODULE_TYPE_MAX = MODULE_TYPE_COUNT - 1
44 /* FrSky XJT / ISRM */
46 enum ModuleSubtypePXX1 {
47 MODULE_SUBTYPE_PXX1_OFF = -1,
48 MODULE_SUBTYPE_PXX1_ACCST_D16,
49 MODULE_SUBTYPE_PXX1_ACCST_D8,
50 MODULE_SUBTYPE_PXX1_ACCST_LR12,
51 MODULE_SUBTYPE_PXX1_LAST = MODULE_SUBTYPE_PXX1_ACCST_LR12
54 enum ModuleSubtypeISRM_PXX2 {
55 MODULE_SUBTYPE_ISRM_PXX2_ACCESS,
56 MODULE_SUBTYPE_ISRM_PXX2_ACCST_D16,
57 MODULE_SUBTYPE_ISRM_PXX2_ACCST_LR12,
58 MODULE_SUBTYPE_ISRM_PXX2_ACCST_D8,
59 MODULE_SUBTYPE_ISRM_PXX2_LAST = MODULE_SUBTYPE_ISRM_PXX2_ACCST_D8
62 enum R9MLiteLBTPowerValues {
63 R9M_LITE_LBT_POWER_25_8CH = 0,
64 R9M_LITE_LBT_POWER_25_16CH,
65 R9M_LITE_LBT_POWER_100_16CH_NOTELEM,
66 R9M_LITE_LBT_POWER_MAX = R9M_LITE_LBT_POWER_100_16CH_NOTELEM
69 enum R9MFCCPowerValues {
70 R9M_FCC_POWER_10 = 0,
71 R9M_FCC_POWER_100,
72 R9M_FCC_POWER_500,
73 R9M_FCC_POWER_1000,
74 R9M_FCC_POWER_MAX = R9M_FCC_POWER_1000
77 enum R9MLBTPowerValues {
78 R9M_LBT_POWER_25_8CH = 0,
79 R9M_LBT_POWER_25_16CH,
80 R9M_LBT_POWER_200_16CH_NOTELEM,
81 R9M_LBT_POWER_500_16CH_NOTELEM,
82 R9M_LBT_POWER_MAX = R9M_LBT_POWER_500_16CH_NOTELEM
85 enum AntennaTypes {
86 XJT_INTERNAL_ANTENNA,
87 XJT_EXTERNAL_ANTENNA
90 /* FrSky R9M / R9M-Lite & co */
92 enum ModuleSubtypeR9M {
93 MODULE_SUBTYPE_R9M_FCC,
94 MODULE_SUBTYPE_R9M_EU,
95 MODULE_SUBTYPE_R9M_EUPLUS,
96 MODULE_SUBTYPE_R9M_AUPLUS,
97 MODULE_SUBTYPE_R9M_LAST=MODULE_SUBTYPE_R9M_AUPLUS
100 /* Multi module */
102 enum ModuleSubtypeMulti {
103 MODULE_SUBTYPE_MULTI_FIRST = 0,
104 MODULE_SUBTYPE_MULTI_FLYSKY = MODULE_SUBTYPE_MULTI_FIRST,
105 MODULE_SUBTYPE_MULTI_HUBSAN,
106 MODULE_SUBTYPE_MULTI_FRSKY,
107 MODULE_SUBTYPE_MULTI_HISKY,
108 MODULE_SUBTYPE_MULTI_V2X2,
109 MODULE_SUBTYPE_MULTI_DSM2,
110 MODULE_SUBTYPE_MULTI_DEVO,
111 MODULE_SUBTYPE_MULTI_YD717,
112 MODULE_SUBTYPE_MULTI_KN,
113 MODULE_SUBTYPE_MULTI_SYMAX,
114 MODULE_SUBTYPE_MULTI_SLT,
115 MODULE_SUBTYPE_MULTI_CX10,
116 MODULE_SUBTYPE_MULTI_CG023,
117 MODULE_SUBTYPE_MULTI_BAYANG,
118 MODULE_SUBTYPE_MULTI_ESky,
119 MODULE_SUBTYPE_MULTI_MT99XX,
120 MODULE_SUBTYPE_MULTI_MJXQ,
121 MODULE_SUBTYPE_MULTI_SHENQI,
122 MODULE_SUBTYPE_MULTI_FY326,
123 MODULE_SUBTYPE_MULTI_SFHSS,
124 MODULE_SUBTYPE_MULTI_J6PRO,
125 MODULE_SUBTYPE_MULTI_FQ777,
126 MODULE_SUBTYPE_MULTI_ASSAN,
127 MODULE_SUBTYPE_MULTI_HONTAI,
128 MODULE_SUBTYPE_MULTI_OLRS,
129 MODULE_SUBTYPE_MULTI_FS_AFHDS2A,
130 MODULE_SUBTYPE_MULTI_Q2X2,
131 MODULE_SUBTYPE_MULTI_WK_2X01,
132 MODULE_SUBTYPE_MULTI_Q303,
133 MODULE_SUBTYPE_MULTI_GW008,
134 MODULE_SUBTYPE_MULTI_DM002,
135 MODULE_SUBTYPE_MULTI_CABELL,
136 MODULE_SUBTYPE_MULTI_ESKY150,
137 MODULE_SUBTYPE_MULTI_H83D,
138 MODULE_SUBTYPE_MULTI_CORONA,
139 MODULE_SUBTYPE_MULTI_CFLIE,
140 MODULE_SUBTYPE_MULTI_HITEC,
141 MODULE_SUBTYPE_MULTI_WFLY,
142 MODULE_SUBTYPE_MULTI_BUGS,
143 MODULE_SUBTYPE_MULTI_BUGS_MINI,
144 MODULE_SUBTYPE_MULTI_TRAXXAS,
145 MODULE_SUBTYPE_MULTI_NCC1701,
146 MODULE_SUBTYPE_MULTI_E01X,
147 MODULE_SUBTYPE_MULTI_V911S,
148 MODULE_SUBTYPE_MULTI_GD00X,
149 MODULE_SUBTYPE_MULTI_V761,
150 MODULE_SUBTYPE_MULTI_KF606,
151 MODULE_SUBTYPE_MULTI_REDPINE,
152 MODULE_SUBTYPE_MULTI_POTENSIC,
153 MODULE_SUBTYPE_MULTI_ZSX,
154 MODULE_SUBTYPE_MULTI_FLYZONE,
155 MODULE_SUBTYPE_MULTI_SCANNER,
156 MODULE_SUBTYPE_MULTI_FRSKYX_RX,
157 MODULE_SUBTYPE_MULTI_AFHDS2A_RX,
158 MODULE_SUBTYPE_MULTI_HOTT,
159 MODULE_SUBTYPE_MULTI_FX816,
160 MODULE_SUBTYPE_MULTI_LAST = MODULE_SUBTYPE_MULTI_FX816
162 #define MODULE_SUBTYPE_MULTI_XN297DP 63-3
164 enum MMDSM2Subtypes {
165 MM_RF_DSM2_SUBTYPE_DSM2_22,
166 MM_RF_DSM2_SUBTYPE_DSM2_11,
167 MM_RF_DSM2_SUBTYPE_DSMX_22,
168 MM_RF_DSM2_SUBTYPE_DSMX_11,
169 MM_RF_DSM2_SUBTYPE_AUTO
172 enum MMRFrskySubtypes {
173 MM_RF_FRSKY_SUBTYPE_D16,
174 MM_RF_FRSKY_SUBTYPE_D8,
175 MM_RF_FRSKY_SUBTYPE_D16_8CH,
176 MM_RF_FRSKY_SUBTYPE_V8,
177 MM_RF_FRSKY_SUBTYPE_D16_LBT,
178 MM_RF_FRSKY_SUBTYPE_D16_LBT_8CH
181 enum ModuleSubtypeDSM2 {
182 DSM2_PROTO_LP45,
183 DSM2_PROTO_DSM2,
184 DSM2_PROTO_DSMX,
187 enum FailsafeModes {
188 FAILSAFE_NOT_SET,
189 FAILSAFE_HOLD,
190 FAILSAFE_CUSTOM,
191 FAILSAFE_NOPULSES,
192 FAILSAFE_RECEIVER,
193 FAILSAFE_LAST = FAILSAFE_RECEIVER
196 enum AntennaModes {
197 ANTENNA_MODE_INTERNAL = -2,
198 ANTENNA_MODE_ASK = -1,
199 ANTENNA_MODE_PER_MODEL = 0,
200 ANTENNA_MODE_EXTERNAL = 1,
201 ANTENNA_MODE_FIRST = ANTENNA_MODE_INTERNAL,
202 ANTENNA_MODE_LAST = ANTENNA_MODE_EXTERNAL
205 #endif // _MODULES_CONSTANTS_H_