Hamlib  4.5
riglist.h
1 /*
2  * Hamlib Interface - list of known rigs
3  * Copyright (c) 2000-2003 by Frank Singleton
4  * Copyright (c) 2000-2015 by Stephane Fillod
5  *
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  *
21  */
22 
23 #ifndef _RIGLIST_H
24 #define _RIGLIST_H 1
25 
27 
28 // The rig model number is designed to fit in a 32-bit int
29 // As of 2020-02-18 we have 33 backends defined
30 // With a max of 1000 models per backend we get total a model number range of 1001-33001
31 // This MAX was 100 prior to 2020-02-18 and Icom was close to running out of the 100 range
32 #define MAX_MODELS_PER_BACKEND 1000
33 #define RIG_MAKE_MODEL(a,b) ((a)*MAX_MODELS_PER_BACKEND+(b))
34 #define RIG_BACKEND_NUM(a) ((a)/MAX_MODELS_PER_BACKEND)
35 
52 #define RIG_MODEL_NONE 0
53 
65 #define RIG_DUMMY 0
66 #define RIG_BACKEND_DUMMY "dummy"
67 #define RIG_MODEL_DUMMY RIG_MAKE_MODEL(RIG_DUMMY, 1)
68 #define RIG_MODEL_NETRIGCTL RIG_MAKE_MODEL(RIG_DUMMY, 2)
69 #define RIG_MODEL_ARMSTRONG RIG_MAKE_MODEL(RIG_DUMMY, 3)
70 #define RIG_MODEL_FLRIG RIG_MAKE_MODEL(RIG_DUMMY, 4)
71 #define RIG_MODEL_TRXMANAGER_RIG RIG_MAKE_MODEL(RIG_DUMMY, 5)
72 #define RIG_MODEL_DUMMY_NOVFO RIG_MAKE_MODEL(RIG_DUMMY, 6)
73 #define RIG_MODEL_TCI1X RIG_MAKE_MODEL(RIG_DUMMY, 7)
74 
75 
76 /*
77  * Yaesu
78  */
79 #define RIG_YAESU 1
80 #define RIG_BACKEND_YAESU "yaesu"
81 #define RIG_MODEL_FT847 RIG_MAKE_MODEL(RIG_YAESU, 1)
82 #define RIG_MODEL_FT1000 RIG_MAKE_MODEL(RIG_YAESU, 2)
83 #define RIG_MODEL_FT1000D RIG_MAKE_MODEL(RIG_YAESU, 3)
84 #define RIG_MODEL_FT1000MPMKV RIG_MAKE_MODEL(RIG_YAESU, 4)
85 #define RIG_MODEL_FT747 RIG_MAKE_MODEL(RIG_YAESU, 5)
86 #define RIG_MODEL_FT757 RIG_MAKE_MODEL(RIG_YAESU, 6)
87 #define RIG_MODEL_FT757GXII RIG_MAKE_MODEL(RIG_YAESU, 7)
88 #define RIG_MODEL_FT575 RIG_MAKE_MODEL(RIG_YAESU, 8)
89 #define RIG_MODEL_FT767 RIG_MAKE_MODEL(RIG_YAESU, 9)
90 #define RIG_MODEL_FT736R RIG_MAKE_MODEL(RIG_YAESU, 10)
91 #define RIG_MODEL_FT840 RIG_MAKE_MODEL(RIG_YAESU, 11)
92 #define RIG_MODEL_FT820 RIG_MAKE_MODEL(RIG_YAESU, 12)
93 #define RIG_MODEL_FT900 RIG_MAKE_MODEL(RIG_YAESU, 13)
94 #define RIG_MODEL_FT920 RIG_MAKE_MODEL(RIG_YAESU, 14)
95 #define RIG_MODEL_FT890 RIG_MAKE_MODEL(RIG_YAESU, 15)
96 #define RIG_MODEL_FT990 RIG_MAKE_MODEL(RIG_YAESU, 16)
97 #define RIG_MODEL_FRG100 RIG_MAKE_MODEL(RIG_YAESU, 17)
98 #define RIG_MODEL_FRG9600 RIG_MAKE_MODEL(RIG_YAESU, 18)
99 #define RIG_MODEL_FRG8800 RIG_MAKE_MODEL(RIG_YAESU, 19)
100 #define RIG_MODEL_FT817 RIG_MAKE_MODEL(RIG_YAESU, 20)
101 #define RIG_MODEL_FT100 RIG_MAKE_MODEL(RIG_YAESU, 21)
102 #define RIG_MODEL_FT857 RIG_MAKE_MODEL(RIG_YAESU, 22)
103 #define RIG_MODEL_FT897 RIG_MAKE_MODEL(RIG_YAESU, 23)
104 #define RIG_MODEL_FT1000MP RIG_MAKE_MODEL(RIG_YAESU, 24)
105 #define RIG_MODEL_FT1000MPMKVFLD RIG_MAKE_MODEL(RIG_YAESU, 25)
106 #define RIG_MODEL_VR5000 RIG_MAKE_MODEL(RIG_YAESU, 26)
107 #define RIG_MODEL_FT450 RIG_MAKE_MODEL(RIG_YAESU, 27)
108 #define RIG_MODEL_FT950 RIG_MAKE_MODEL(RIG_YAESU, 28)
109 #define RIG_MODEL_FT2000 RIG_MAKE_MODEL(RIG_YAESU, 29)
110 #define RIG_MODEL_FT9000 RIG_MAKE_MODEL(RIG_YAESU, 30)
111 #define RIG_MODEL_FT980 RIG_MAKE_MODEL(RIG_YAESU, 31)
112 #define RIG_MODEL_FTDX5000 RIG_MAKE_MODEL(RIG_YAESU, 32)
113 #define RIG_MODEL_VX1700 RIG_MAKE_MODEL(RIG_YAESU, 33)
114 #define RIG_MODEL_FTDX1200 RIG_MAKE_MODEL(RIG_YAESU, 34)
115 #define RIG_MODEL_FT991 RIG_MAKE_MODEL(RIG_YAESU, 35)
116 #define RIG_MODEL_FT891 RIG_MAKE_MODEL(RIG_YAESU, 36)
117 #define RIG_MODEL_FTDX3000 RIG_MAKE_MODEL(RIG_YAESU, 37)
118 #define RIG_MODEL_FT847UNI RIG_MAKE_MODEL(RIG_YAESU, 38)
119 #define RIG_MODEL_FT600 RIG_MAKE_MODEL(RIG_YAESU, 39)
120 #define RIG_MODEL_FTDX101D RIG_MAKE_MODEL(RIG_YAESU, 40)
121 #define RIG_MODEL_FT818 RIG_MAKE_MODEL(RIG_YAESU, 41)
122 #define RIG_MODEL_FTDX10 RIG_MAKE_MODEL(RIG_YAESU, 42)
123 #define RIG_MODEL_FT897D RIG_MAKE_MODEL(RIG_YAESU, 43)
124 #define RIG_MODEL_FTDX101MP RIG_MAKE_MODEL(RIG_YAESU, 44)
125 #define RIG_MODEL_MCHFQRP RIG_MAKE_MODEL(RIG_YAESU, 45)
126 #define RIG_MODEL_FT450D RIG_MAKE_MODEL(RIG_YAESU, 46)
127 #define RIG_MODEL_FT650 RIG_MAKE_MODEL(RIG_YAESU, 47)
128 #define RIG_MODEL_FT990UNI RIG_MAKE_MODEL(RIG_YAESU, 48)
129 #define RIG_MODEL_FT710 RIG_MAKE_MODEL(RIG_YAESU, 49)
130 
131 
132 /*
133  * Kenwood
134  */
135 #define RIG_KENWOOD 2
136 #define RIG_BACKEND_KENWOOD "kenwood"
137 #define RIG_MODEL_TS50 RIG_MAKE_MODEL(RIG_KENWOOD, 1)
138 #define RIG_MODEL_TS440 RIG_MAKE_MODEL(RIG_KENWOOD, 2)
139 #define RIG_MODEL_TS450S RIG_MAKE_MODEL(RIG_KENWOOD, 3)
140 #define RIG_MODEL_TS570D RIG_MAKE_MODEL(RIG_KENWOOD, 4)
141 #define RIG_MODEL_TS690S RIG_MAKE_MODEL(RIG_KENWOOD, 5)
142 #define RIG_MODEL_TS711 RIG_MAKE_MODEL(RIG_KENWOOD, 6)
143 #define RIG_MODEL_TS790 RIG_MAKE_MODEL(RIG_KENWOOD, 7)
144 #define RIG_MODEL_TS811 RIG_MAKE_MODEL(RIG_KENWOOD, 8)
145 #define RIG_MODEL_TS850 RIG_MAKE_MODEL(RIG_KENWOOD, 9)
146 #define RIG_MODEL_TS870S RIG_MAKE_MODEL(RIG_KENWOOD, 10)
147 #define RIG_MODEL_TS940 RIG_MAKE_MODEL(RIG_KENWOOD, 11)
148 #define RIG_MODEL_TS950S RIG_MAKE_MODEL(RIG_KENWOOD, 12)
149 #define RIG_MODEL_TS950SDX RIG_MAKE_MODEL(RIG_KENWOOD, 13)
150 #define RIG_MODEL_TS2000 RIG_MAKE_MODEL(RIG_KENWOOD, 14)
151 #define RIG_MODEL_R5000 RIG_MAKE_MODEL(RIG_KENWOOD, 15)
152 #define RIG_MODEL_TS570S RIG_MAKE_MODEL(RIG_KENWOOD, 16)
153 #define RIG_MODEL_THD7A RIG_MAKE_MODEL(RIG_KENWOOD, 17)
154 #define RIG_MODEL_THD7AG RIG_MAKE_MODEL(RIG_KENWOOD, 18)
155 #define RIG_MODEL_THF6A RIG_MAKE_MODEL(RIG_KENWOOD, 19)
156 #define RIG_MODEL_THF7E RIG_MAKE_MODEL(RIG_KENWOOD, 20)
157 #define RIG_MODEL_K2 RIG_MAKE_MODEL(RIG_KENWOOD, 21)
158 #define RIG_MODEL_TS930 RIG_MAKE_MODEL(RIG_KENWOOD, 22)
159 #define RIG_MODEL_THG71 RIG_MAKE_MODEL(RIG_KENWOOD, 23)
160 #define RIG_MODEL_TS680S RIG_MAKE_MODEL(RIG_KENWOOD, 24)
161 #define RIG_MODEL_TS140S RIG_MAKE_MODEL(RIG_KENWOOD, 25)
162 #define RIG_MODEL_TMD700 RIG_MAKE_MODEL(RIG_KENWOOD, 26)
163 #define RIG_MODEL_TMV7 RIG_MAKE_MODEL(RIG_KENWOOD, 27)
164 #define RIG_MODEL_TS480 RIG_MAKE_MODEL(RIG_KENWOOD, 28)
165 #define RIG_MODEL_K3 RIG_MAKE_MODEL(RIG_KENWOOD, 29)
166 #define RIG_MODEL_TRC80 RIG_MAKE_MODEL(RIG_KENWOOD, 30)
167 #define RIG_MODEL_TS590S RIG_MAKE_MODEL(RIG_KENWOOD, 31)
168 #define RIG_MODEL_TRANSFOX RIG_MAKE_MODEL(RIG_KENWOOD, 32) /* SigFox Transfox */
169 #define RIG_MODEL_THD72A RIG_MAKE_MODEL(RIG_KENWOOD, 33)
170 #define RIG_MODEL_TMD710 RIG_MAKE_MODEL(RIG_KENWOOD, 34)
171 #define RIG_MODEL_TMV71 RIG_MAKE_MODEL(RIG_KENWOOD, 35)
172 #define RIG_MODEL_F6K RIG_MAKE_MODEL(RIG_KENWOOD, 36) /* Flex 6000 Series */
173 #define RIG_MODEL_TS590SG RIG_MAKE_MODEL(RIG_KENWOOD, 37)
174 #define RIG_MODEL_XG3 RIG_MAKE_MODEL(RIG_KENWOOD, 38) /* Elecraft XG-3 signal generator */
175 #define RIG_MODEL_TS990S RIG_MAKE_MODEL(RIG_KENWOOD, 39)
176 #define RIG_MODEL_HPSDR RIG_MAKE_MODEL(RIG_KENWOOD, 40) /* OpenHPSDR, PiHPSDR */
177 #define RIG_MODEL_TS890S RIG_MAKE_MODEL(RIG_KENWOOD, 41)
178 #define RIG_MODEL_THD74 RIG_MAKE_MODEL(RIG_KENWOOD, 42)
179 #define RIG_MODEL_K3S RIG_MAKE_MODEL(RIG_KENWOOD, 43)
180 #define RIG_MODEL_KX2 RIG_MAKE_MODEL(RIG_KENWOOD, 44)
181 #define RIG_MODEL_KX3 RIG_MAKE_MODEL(RIG_KENWOOD, 45)
182 #define RIG_MODEL_PT8000A RIG_MAKE_MODEL(RIG_KENWOOD, 46)
183 #define RIG_MODEL_K4 RIG_MAKE_MODEL(RIG_KENWOOD, 47)
184 #define RIG_MODEL_POWERSDR RIG_MAKE_MODEL(RIG_KENWOOD, 48)
185 #define RIG_MODEL_MALACHITE RIG_MAKE_MODEL(RIG_KENWOOD, 49)
186 #define RIG_MODEL_LAB599_TX500 RIG_MAKE_MODEL(RIG_KENWOOD,50)
187 #define RIG_MODEL_SDRUNO RIG_MAKE_MODEL(RIG_KENWOOD,51)
188 
189 /*
190  * Icom
191  */
192 #define RIG_ICOM 3
193 #define RIG_BACKEND_ICOM "icom"
194 #define RIG_MODEL_IC1271 RIG_MAKE_MODEL(RIG_ICOM, 1)
195 #define RIG_MODEL_IC1275 RIG_MAKE_MODEL(RIG_ICOM, 2)
196 #define RIG_MODEL_IC271 RIG_MAKE_MODEL(RIG_ICOM, 3)
197 #define RIG_MODEL_IC275 RIG_MAKE_MODEL(RIG_ICOM, 4)
198 #define RIG_MODEL_IC375 RIG_MAKE_MODEL(RIG_ICOM, 5)
199 #define RIG_MODEL_IC471 RIG_MAKE_MODEL(RIG_ICOM, 6)
200 #define RIG_MODEL_IC475 RIG_MAKE_MODEL(RIG_ICOM, 7)
201 #define RIG_MODEL_IC575 RIG_MAKE_MODEL(RIG_ICOM, 8)
202 #define RIG_MODEL_IC706 RIG_MAKE_MODEL(RIG_ICOM, 9)
203 #define RIG_MODEL_IC706MKII RIG_MAKE_MODEL(RIG_ICOM, 10)
204 #define RIG_MODEL_IC706MKIIG RIG_MAKE_MODEL(RIG_ICOM, 11)
205 #define RIG_MODEL_IC707 RIG_MAKE_MODEL(RIG_ICOM, 12)
206 #define RIG_MODEL_IC718 RIG_MAKE_MODEL(RIG_ICOM, 13)
207 #define RIG_MODEL_IC725 RIG_MAKE_MODEL(RIG_ICOM, 14)
208 #define RIG_MODEL_IC726 RIG_MAKE_MODEL(RIG_ICOM, 15)
209 #define RIG_MODEL_IC728 RIG_MAKE_MODEL(RIG_ICOM, 16)
210 #define RIG_MODEL_IC729 RIG_MAKE_MODEL(RIG_ICOM, 17)
211 #define RIG_MODEL_IC731 RIG_MAKE_MODEL(RIG_ICOM, 18)
212 #define RIG_MODEL_IC735 RIG_MAKE_MODEL(RIG_ICOM, 19)
213 #define RIG_MODEL_IC736 RIG_MAKE_MODEL(RIG_ICOM, 20)
214 #define RIG_MODEL_IC737 RIG_MAKE_MODEL(RIG_ICOM, 21)
215 #define RIG_MODEL_IC738 RIG_MAKE_MODEL(RIG_ICOM, 22)
216 #define RIG_MODEL_IC746 RIG_MAKE_MODEL(RIG_ICOM, 23)
217 #define RIG_MODEL_IC751 RIG_MAKE_MODEL(RIG_ICOM, 24)
218 #define RIG_MODEL_IC751A RIG_MAKE_MODEL(RIG_ICOM, 25)
219 #define RIG_MODEL_IC756 RIG_MAKE_MODEL(RIG_ICOM, 26)
220 #define RIG_MODEL_IC756PRO RIG_MAKE_MODEL(RIG_ICOM, 27)
221 #define RIG_MODEL_IC761 RIG_MAKE_MODEL(RIG_ICOM, 28)
222 #define RIG_MODEL_IC765 RIG_MAKE_MODEL(RIG_ICOM, 29)
223 #define RIG_MODEL_IC775 RIG_MAKE_MODEL(RIG_ICOM, 30)
224 #define RIG_MODEL_IC781 RIG_MAKE_MODEL(RIG_ICOM, 31)
225 #define RIG_MODEL_IC820 RIG_MAKE_MODEL(RIG_ICOM, 32)
226 //#define RIG_MODEL_IC821 RIG_MAKE_MODEL(RIG_ICOM, 33) // not implemented and can be reused
227 #define RIG_MODEL_IC821H RIG_MAKE_MODEL(RIG_ICOM, 34)
228 #define RIG_MODEL_IC970 RIG_MAKE_MODEL(RIG_ICOM, 35)
229 #define RIG_MODEL_ICR10 RIG_MAKE_MODEL(RIG_ICOM, 36)
230 #define RIG_MODEL_ICR71 RIG_MAKE_MODEL(RIG_ICOM, 37)
231 #define RIG_MODEL_ICR72 RIG_MAKE_MODEL(RIG_ICOM, 38)
232 #define RIG_MODEL_ICR75 RIG_MAKE_MODEL(RIG_ICOM, 39)
233 #define RIG_MODEL_ICR7000 RIG_MAKE_MODEL(RIG_ICOM, 40)
234 #define RIG_MODEL_ICR7100 RIG_MAKE_MODEL(RIG_ICOM, 41)
235 #define RIG_MODEL_ICR8500 RIG_MAKE_MODEL(RIG_ICOM, 42)
236 #define RIG_MODEL_ICR9000 RIG_MAKE_MODEL(RIG_ICOM, 43)
237 #define RIG_MODEL_IC910 RIG_MAKE_MODEL(RIG_ICOM, 44)
238 #define RIG_MODEL_IC78 RIG_MAKE_MODEL(RIG_ICOM, 45)
239 #define RIG_MODEL_IC746PRO RIG_MAKE_MODEL(RIG_ICOM, 46)
240 #define RIG_MODEL_IC756PROII RIG_MAKE_MODEL(RIG_ICOM, 47) /* 48-53 defined below */
241 #define RIG_MODEL_ICID1 RIG_MAKE_MODEL(RIG_ICOM, 54)
242 #define RIG_MODEL_IC703 RIG_MAKE_MODEL(RIG_ICOM, 55)
243 #define RIG_MODEL_IC7800 RIG_MAKE_MODEL(RIG_ICOM, 56)
244 #define RIG_MODEL_IC756PROIII RIG_MAKE_MODEL(RIG_ICOM, 57)
245 #define RIG_MODEL_ICR20 RIG_MAKE_MODEL(RIG_ICOM, 58) /* 59 defined below */
246 #define RIG_MODEL_IC7000 RIG_MAKE_MODEL(RIG_ICOM, 60)
247 #define RIG_MODEL_IC7200 RIG_MAKE_MODEL(RIG_ICOM, 61)
248 #define RIG_MODEL_IC7700 RIG_MAKE_MODEL(RIG_ICOM, 62)
249 #define RIG_MODEL_IC7600 RIG_MAKE_MODEL(RIG_ICOM, 63) /* 64 defined below */
250 #define RIG_MODEL_IC92D RIG_MAKE_MODEL(RIG_ICOM, 65)
251 #define RIG_MODEL_ICR9500 RIG_MAKE_MODEL(RIG_ICOM, 66)
252 #define RIG_MODEL_IC7410 RIG_MAKE_MODEL(RIG_ICOM, 67)
253 #define RIG_MODEL_IC9100 RIG_MAKE_MODEL(RIG_ICOM, 68)
254 #define RIG_MODEL_ICRX7 RIG_MAKE_MODEL(RIG_ICOM, 69)
255 #define RIG_MODEL_IC7100 RIG_MAKE_MODEL(RIG_ICOM, 70)
256 #define RIG_MODEL_ID5100 RIG_MAKE_MODEL(RIG_ICOM, 71)
257 #define RIG_MODEL_IC2730 RIG_MAKE_MODEL(RIG_ICOM, 72)
258 #define RIG_MODEL_IC7300 RIG_MAKE_MODEL(RIG_ICOM, 73)
259 #define RIG_MODEL_PERSEUS RIG_MAKE_MODEL(RIG_ICOM, 74)
260 #define RIG_MODEL_IC785x RIG_MAKE_MODEL(RIG_ICOM, 75)
261 #define RIG_MODEL_X108G RIG_MAKE_MODEL(RIG_ICOM, 76) /* Xiegu X108 */
262 #define RIG_MODEL_ICR6 RIG_MAKE_MODEL(RIG_ICOM, 77)
263 #define RIG_MODEL_IC7610 RIG_MAKE_MODEL(RIG_ICOM, 78)
264 #define RIG_MODEL_ICR8600 RIG_MAKE_MODEL(RIG_ICOM, 79)
265 #define RIG_MODEL_ICR30 RIG_MAKE_MODEL(RIG_ICOM, 80)
266 #define RIG_MODEL_IC9700 RIG_MAKE_MODEL(RIG_ICOM, 81)
267 #define RIG_MODEL_ID4100 RIG_MAKE_MODEL(RIG_ICOM, 82)
268 #define RIG_MODEL_ID31 RIG_MAKE_MODEL(RIG_ICOM, 83)
269 #define RIG_MODEL_ID51 RIG_MAKE_MODEL(RIG_ICOM, 84)
270 #define RIG_MODEL_IC705 RIG_MAKE_MODEL(RIG_ICOM, 85)
271 #define RIG_MODEL_ICF8101 RIG_MAKE_MODEL(RIG_ICOM, 86)
272 #define RIG_MODEL_X6100 RIG_MAKE_MODEL(RIG_ICOM, 87) /* Xiegu X6100 */
273 #define RIG_MODEL_G90 RIG_MAKE_MODEL(RIG_ICOM, 88) /* Xiegu G90 */
274 #define RIG_MODEL_X5105 RIG_MAKE_MODEL(RIG_ICOM, 89) /* Xiegu X5105 -- G90 compatible */
275 
276 
277 /*
278  * Optoelectronics (CI-V)
279  */
280 #define RIG_MODEL_MINISCOUT RIG_MAKE_MODEL(RIG_ICOM, 48)
281 #define RIG_MODEL_XPLORER RIG_MAKE_MODEL(RIG_ICOM, 49)
282 #define RIG_MODEL_OS535 RIG_MAKE_MODEL(RIG_ICOM, 52)
283 #define RIG_MODEL_OS456 RIG_MAKE_MODEL(RIG_ICOM, 53)
284 
285 
286 /*
287  * TenTec (CI-V)
288  */
289 #define RIG_MODEL_OMNIVI RIG_MAKE_MODEL(RIG_ICOM, 50)
290 #define RIG_MODEL_OMNIVIP RIG_MAKE_MODEL(RIG_ICOM, 51) /* OMNI-VI+ */
291 #define RIG_MODEL_PARAGON2 RIG_MAKE_MODEL(RIG_ICOM, 59)
292 #define RIG_MODEL_DELTAII RIG_MAKE_MODEL(RIG_ICOM, 64)
293 
294 
295 /*
296  * Icom PCR
297  */
298 #define RIG_PCR 4
299 #define RIG_BACKEND_PCR "pcr"
300 #define RIG_MODEL_PCR1000 RIG_MAKE_MODEL(RIG_PCR, 1)
301 #define RIG_MODEL_PCR100 RIG_MAKE_MODEL(RIG_PCR, 2)
302 #define RIG_MODEL_PCR1500 RIG_MAKE_MODEL(RIG_PCR, 3)
303 #define RIG_MODEL_PCR2500 RIG_MAKE_MODEL(RIG_PCR, 4)
304 
305 
306 /*
307  * AOR
308  */
309 #define RIG_AOR 5
310 #define RIG_BACKEND_AOR "aor"
311 #define RIG_MODEL_AR8200 RIG_MAKE_MODEL(RIG_AOR, 1)
312 #define RIG_MODEL_AR8000 RIG_MAKE_MODEL(RIG_AOR, 2)
313 #define RIG_MODEL_AR7030 RIG_MAKE_MODEL(RIG_AOR, 3)
314 #define RIG_MODEL_AR5000 RIG_MAKE_MODEL(RIG_AOR, 4)
315 #define RIG_MODEL_AR3030 RIG_MAKE_MODEL(RIG_AOR, 5)
316 #define RIG_MODEL_AR3000A RIG_MAKE_MODEL(RIG_AOR, 6)
317 #define RIG_MODEL_AR3000 RIG_MAKE_MODEL(RIG_AOR, 7)
318 #define RIG_MODEL_AR2700 RIG_MAKE_MODEL(RIG_AOR, 8)
319 #define RIG_MODEL_AR2500 RIG_MAKE_MODEL(RIG_AOR, 9)
320 #define RIG_MODEL_AR16 RIG_MAKE_MODEL(RIG_AOR, 10)
321 #define RIG_MODEL_SDU5500 RIG_MAKE_MODEL(RIG_AOR, 11)
322 #define RIG_MODEL_SDU5000 RIG_MAKE_MODEL(RIG_AOR, 12)
323 #define RIG_MODEL_AR8600 RIG_MAKE_MODEL(RIG_AOR, 13)
324 #define RIG_MODEL_AR5000A RIG_MAKE_MODEL(RIG_AOR, 14)
325 #define RIG_MODEL_AR7030P RIG_MAKE_MODEL(RIG_AOR, 15)
326 #define RIG_MODEL_SR2200 RIG_MAKE_MODEL(RIG_AOR, 16)
327 
328 
329 /*
330  * JRC
331  */
332 #define RIG_JRC 6
333 #define RIG_BACKEND_JRC "jrc"
334 #define RIG_MODEL_JST145 RIG_MAKE_MODEL(RIG_JRC, 1)
335 #define RIG_MODEL_JST245 RIG_MAKE_MODEL(RIG_JRC, 2)
336 #define RIG_MODEL_CMH530 RIG_MAKE_MODEL(RIG_JRC, 3)
337 #define RIG_MODEL_NRD345 RIG_MAKE_MODEL(RIG_JRC, 4)
338 #define RIG_MODEL_NRD525 RIG_MAKE_MODEL(RIG_JRC, 5)
339 #define RIG_MODEL_NRD535 RIG_MAKE_MODEL(RIG_JRC, 6)
340 #define RIG_MODEL_NRD545 RIG_MAKE_MODEL(RIG_JRC, 7)
341 
342 
343 /*
344  * Radio Shack
345  * Actually, they might be either Icom or Uniden. TBC --SF
346  */
347 #define RIG_RADIOSHACK 7
348 #define RIG_BACKEND_RADIOSHACK "radioshack"
349 #define RIG_MODEL_RS64 RIG_MAKE_MODEL(RIG_RADIOSHACK, 1) /* PRO-64 */
350 #define RIG_MODEL_RS2005 RIG_MAKE_MODEL(RIG_RADIOSHACK, 2) /* w/ OptoElectronics OS456 Board */
351 #define RIG_MODEL_RS2006 RIG_MAKE_MODEL(RIG_RADIOSHACK, 3) /* w/ OptoElectronics OS456 Board */
352 #define RIG_MODEL_RS2035 RIG_MAKE_MODEL(RIG_RADIOSHACK, 4) /* w/ OptoElectronics OS435 Board */
353 #define RIG_MODEL_RS2042 RIG_MAKE_MODEL(RIG_RADIOSHACK, 5) /* w/ OptoElectronics OS435 Board */
354 #define RIG_MODEL_RS2041 RIG_MAKE_MODEL(RIG_RADIOSHACK, 6) /* PRO-2041 */
355 
356 
357 /*
358  * Uniden
359  */
360 #define RIG_UNIDEN 8
361 #define RIG_BACKEND_UNIDEN "uniden"
362 #define RIG_MODEL_BC780 RIG_MAKE_MODEL(RIG_UNIDEN, 1) /* Uniden BC780 - Trunk Tracker "Desktop Radio" */
363 #define RIG_MODEL_BC245 RIG_MAKE_MODEL(RIG_UNIDEN, 2)
364 #define RIG_MODEL_BC895 RIG_MAKE_MODEL(RIG_UNIDEN, 3)
365 #define RIG_MODEL_PRO2052 RIG_MAKE_MODEL(RIG_UNIDEN, 4) /* Radio Shack PRO-2052 */
366 #define RIG_MODEL_BC235 RIG_MAKE_MODEL(RIG_UNIDEN, 5)
367 #define RIG_MODEL_BC250 RIG_MAKE_MODEL(RIG_UNIDEN, 6)
368 #define RIG_MODEL_BC785 RIG_MAKE_MODEL(RIG_UNIDEN, 7)
369 #define RIG_MODEL_BC786 RIG_MAKE_MODEL(RIG_UNIDEN, 8)
370 #define RIG_MODEL_BCT8 RIG_MAKE_MODEL(RIG_UNIDEN, 9)
371 #define RIG_MODEL_BCD396T RIG_MAKE_MODEL(RIG_UNIDEN, 10)
372 #define RIG_MODEL_BCD996T RIG_MAKE_MODEL(RIG_UNIDEN, 11)
373 #define RIG_MODEL_BC898 RIG_MAKE_MODEL(RIG_UNIDEN, 12)
374 
375 
376 /*
377  * Drake
378  */
379 #define RIG_DRAKE 9
380 #define RIG_BACKEND_DRAKE "drake"
381 #define RIG_MODEL_DKR8 RIG_MAKE_MODEL(RIG_DRAKE, 1)
382 #define RIG_MODEL_DKR8A RIG_MAKE_MODEL(RIG_DRAKE, 2)
383 #define RIG_MODEL_DKR8B RIG_MAKE_MODEL(RIG_DRAKE, 3)
384 
385 
386 /*
387  * Lowe
388  */
389 #define RIG_LOWE 10
390 #define RIG_BACKEND_LOWE "lowe"
391 #define RIG_MODEL_HF150 RIG_MAKE_MODEL(RIG_LOWE, 1)
392 #define RIG_MODEL_HF225 RIG_MAKE_MODEL(RIG_LOWE, 2)
393 #define RIG_MODEL_HF250 RIG_MAKE_MODEL(RIG_LOWE, 3)
394 #define RIG_MODEL_HF235 RIG_MAKE_MODEL(RIG_LOWE, 4)
395 
396 
397 /*
398  * Racal
399  */
400 #define RIG_RACAL 11
401 #define RIG_BACKEND_RACAL "racal"
402 #define RIG_MODEL_RA3790 RIG_MAKE_MODEL(RIG_RACAL, 1)
403 #define RIG_MODEL_RA3720 RIG_MAKE_MODEL(RIG_RACAL, 2)
404 #define RIG_MODEL_RA6790 RIG_MAKE_MODEL(RIG_RACAL, 3)
405 #define RIG_MODEL_RA3710 RIG_MAKE_MODEL(RIG_RACAL, 4)
406 #define RIG_MODEL_RA3702 RIG_MAKE_MODEL(RIG_RACAL, 5)
407 
408 
409 /*
410  * Watkins-Johnson
411  */
412 #define RIG_WJ 12
413 #define RIG_BACKEND_WJ "wj"
414 #define RIG_MODEL_HF1000 RIG_MAKE_MODEL(RIG_WJ, 1)
415 #define RIG_MODEL_HF1000A RIG_MAKE_MODEL(RIG_WJ, 2)
416 #define RIG_MODEL_WJ8711 RIG_MAKE_MODEL(RIG_WJ, 3)
417 #define RIG_MODEL_WJ8888 RIG_MAKE_MODEL(RIG_WJ, 4)
418 
419 
420 /*
421  * Rohde & Schwarz--ek
422  */
423 #define RIG_EK 13
424 #define RIG_BACKEND_EK "ek"
425 #define RIG_MODEL_ESM500 RIG_MAKE_MODEL(RIG_EK, 1)
426 #define RIG_MODEL_EK890 RIG_MAKE_MODEL(RIG_EK, 2)
427 #define RIG_MODEL_EK891 RIG_MAKE_MODEL(RIG_EK, 3)
428 #define RIG_MODEL_EK895 RIG_MAKE_MODEL(RIG_EK, 4)
429 #define RIG_MODEL_EK070 RIG_MAKE_MODEL(RIG_EK, 5)
430 
431 
432 /*
433  * Skanti
434  */
435 #define RIG_SKANTI 14
436 #define RIG_BACKEND_SKANTI "skanti"
437 #define RIG_MODEL_TRP7000 RIG_MAKE_MODEL(RIG_SKANTI, 1)
438 #define RIG_MODEL_TRP8000 RIG_MAKE_MODEL(RIG_SKANTI, 2)
439 #define RIG_MODEL_TRP9000 RIG_MAKE_MODEL(RIG_SKANTI, 3)
440 #define RIG_MODEL_TRP8255 RIG_MAKE_MODEL(RIG_SKANTI, 4)
441 
442 
443 /*
444  * WiNRADiO/LinRADiO
445  */
446 #define RIG_WINRADIO 15
447 #define RIG_BACKEND_WINRADIO "winradio"
448 #define RIG_MODEL_WR1000 RIG_MAKE_MODEL(RIG_WINRADIO, 1)
449 #define RIG_MODEL_WR1500 RIG_MAKE_MODEL(RIG_WINRADIO, 2)
450 #define RIG_MODEL_WR1550 RIG_MAKE_MODEL(RIG_WINRADIO, 3)
451 #define RIG_MODEL_WR3100 RIG_MAKE_MODEL(RIG_WINRADIO, 4)
452 #define RIG_MODEL_WR3150 RIG_MAKE_MODEL(RIG_WINRADIO, 5)
453 #define RIG_MODEL_WR3500 RIG_MAKE_MODEL(RIG_WINRADIO, 6)
454 #define RIG_MODEL_WR3700 RIG_MAKE_MODEL(RIG_WINRADIO, 7)
455 #define RIG_MODEL_G303 RIG_MAKE_MODEL(RIG_WINRADIO, 8)
456 #define RIG_MODEL_G313 RIG_MAKE_MODEL(RIG_WINRADIO, 9)
457 #define RIG_MODEL_G305 RIG_MAKE_MODEL(RIG_WINRADIO, 10)
458 #define RIG_MODEL_G315 RIG_MAKE_MODEL(RIG_WINRADIO, 11)
459 
460 
461 /*
462  * Ten Tec
463  */
464 #define RIG_TENTEC 16
465 #define RIG_BACKEND_TENTEC "tentec"
466 #define RIG_MODEL_TT550 RIG_MAKE_MODEL(RIG_TENTEC, 1) /* Pegasus */
467 #define RIG_MODEL_TT538 RIG_MAKE_MODEL(RIG_TENTEC, 2) /* Jupiter */
468 #define RIG_MODEL_RX320 RIG_MAKE_MODEL(RIG_TENTEC, 3)
469 #define RIG_MODEL_RX340 RIG_MAKE_MODEL(RIG_TENTEC, 4)
470 #define RIG_MODEL_RX350 RIG_MAKE_MODEL(RIG_TENTEC, 5)
471 #define RIG_MODEL_TT526 RIG_MAKE_MODEL(RIG_TENTEC, 6) /* 6N2 */
472 #define RIG_MODEL_TT516 RIG_MAKE_MODEL(RIG_TENTEC, 7) /* Argonaut V */
473 #define RIG_MODEL_TT565 RIG_MAKE_MODEL(RIG_TENTEC, 8) /* Orion */
474 #define RIG_MODEL_TT585 RIG_MAKE_MODEL(RIG_TENTEC, 9) /* Paragon */
475 #define RIG_MODEL_TT588 RIG_MAKE_MODEL(RIG_TENTEC, 11) /* Omni-VII */
476 #define RIG_MODEL_RX331 RIG_MAKE_MODEL(RIG_TENTEC, 12)
477 #define RIG_MODEL_TT599 RIG_MAKE_MODEL(RIG_TENTEC, 13) /* Eagle */
478 
479 
480 /*
481  * Alinco
482  */
483 #define RIG_ALINCO 17
484 #define RIG_BACKEND_ALINCO "alinco"
485 #define RIG_MODEL_DX77 RIG_MAKE_MODEL(RIG_ALINCO, 1)
486 #define RIG_MODEL_DXSR8 RIG_MAKE_MODEL(RIG_ALINCO, 2)
487 
488 
489 /*
490  * Kachina
491  */
492 #define RIG_KACHINA 18
493 #define RIG_BACKEND_KACHINA "kachina"
494 #define RIG_MODEL_505DSP RIG_MAKE_MODEL(RIG_KACHINA, 1)
495 
496 
497 /*
498  * Gnuradio backend
499  */
500 #define RIG_GNURADIO 20
501 #define RIG_BACKEND_GNURADIO "gnuradio"
502 #define RIG_MODEL_GNURADIO RIG_MAKE_MODEL(RIG_GNURADIO, 1) /* dev model, Chirp source */
503 #define RIG_MODEL_MC4020 RIG_MAKE_MODEL(RIG_GNURADIO, 2) /* MC4020 */
504 #define RIG_MODEL_GRAUDIO RIG_MAKE_MODEL(RIG_GNURADIO, 3) /* Sound card source */
505 #define RIG_MODEL_GRAUDIOIQ RIG_MAKE_MODEL(RIG_GNURADIO, 4) /* I&Q stereo sound card source */
506 #define RIG_MODEL_USRP_G RIG_MAKE_MODEL(RIG_GNURADIO, 5) /* Universal Software Radio Peripheral */
507 
508 
509 /*
510  * Microtune tuners
511  */
512 #define RIG_MICROTUNE 21
513 #define RIG_BACKEND_MICROTUNE "microtune"
514 #define RIG_MODEL_MICROTUNE_4937 RIG_MAKE_MODEL(RIG_MICROTUNE, 1) /* eval board */
515 #define RIG_MODEL_MICROTUNE_4702 RIG_MAKE_MODEL(RIG_MICROTUNE, 2) /* Alan's */
516 #define RIG_MODEL_MICROTUNE_4707 RIG_MAKE_MODEL(RIG_MICROTUNE, 3)
517 
518 
519 /*
520  * TAPR
521  */
522 #define RIG_TAPR 22
523 #define RIG_BACKEND_TAPR "tapr"
524 #define RIG_MODEL_DSP10 RIG_MAKE_MODEL(RIG_TAPR, 1)
525 
526 
527 /*
528  * Flex-radio
529  */
530 #define RIG_FLEXRADIO 23
531 #define RIG_BACKEND_FLEXRADIO "flexradio"
532 #define RIG_MODEL_SDR1000 RIG_MAKE_MODEL(RIG_FLEXRADIO, 1)
533 #define RIG_MODEL_SDR1000RFE RIG_MAKE_MODEL(RIG_FLEXRADIO, 2)
534 #define RIG_MODEL_DTTSP RIG_MAKE_MODEL(RIG_FLEXRADIO, 3)
535 #define RIG_MODEL_DTTSP_UDP RIG_MAKE_MODEL(RIG_FLEXRADIO, 4)
536 
537 
538 /*
539  * VEB Funkwerk Köpenick RFT
540  */
541 #define RIG_RFT 24
542 #define RIG_BACKEND_RFT "rft"
543 #define RIG_MODEL_EKD500 RIG_MAKE_MODEL(RIG_RFT, 1)
544 
545 
546 /*
547  * Various kits
548  */
549 #define RIG_KIT 25
550 #define RIG_BACKEND_KIT "kit"
551 #define RIG_MODEL_ELEKTOR304 RIG_MAKE_MODEL(RIG_KIT, 1)
552 #define RIG_MODEL_DRT1 RIG_MAKE_MODEL(RIG_KIT, 2)
553 #define RIG_MODEL_DWT RIG_MAKE_MODEL(RIG_KIT, 3)
554 #define RIG_MODEL_USRP0 RIG_MAKE_MODEL(RIG_KIT, 4) /* prototype */
555 #define RIG_MODEL_USRP RIG_MAKE_MODEL(RIG_KIT, 5)
556 #define RIG_MODEL_DDS60 RIG_MAKE_MODEL(RIG_KIT, 6)
557 #define RIG_MODEL_ELEKTOR507 RIG_MAKE_MODEL(RIG_KIT, 7) /* Elektor SDR USB */
558 #define RIG_MODEL_MINIVNA RIG_MAKE_MODEL(RIG_KIT, 8)
559 #define RIG_MODEL_SI570AVRUSB RIG_MAKE_MODEL(RIG_KIT, 9) /* SoftRock Si570 AVR */
560 #define RIG_MODEL_PMSDR RIG_MAKE_MODEL(RIG_KIT, 10)
561 #define RIG_MODEL_SI570PICUSB RIG_MAKE_MODEL(RIG_KIT, 11) /* SoftRock Si570 PIC */
562 #define RIG_MODEL_FIFISDR RIG_MAKE_MODEL(RIG_KIT, 12) /* FiFi-SDR USB */
563 #define RIG_MODEL_FUNCUBEDONGLE RIG_MAKE_MODEL(RIG_KIT, 13) /* FunCUBE Dongle */
564 #define RIG_MODEL_HIQSDR RIG_MAKE_MODEL(RIG_KIT, 14) /* HiQSDR */
565 #define RIG_MODEL_FASDR RIG_MAKE_MODEL(RIG_KIT,15) /* Funkamateur Sdr */
566 #define RIG_MODEL_SI570PEABERRY1 RIG_MAKE_MODEL(RIG_KIT, 16) /* Peaberry V1 */
567 #define RIG_MODEL_SI570PEABERRY2 RIG_MAKE_MODEL(RIG_KIT, 17) /* Peaberry V2 */
568 #define RIG_MODEL_FUNCUBEDONGLEPLUS RIG_MAKE_MODEL(RIG_KIT, 18) /* FunCUBE Dongle Pro+ */
569 #define RIG_MODEL_RSHFIQ RIG_MAKE_MODEL(RIG_KIT, 19) /* RS-HFIQ */
570 
571 
572 /*
573  * SW/FM/TV tuner cards supported by Video4Linux,*BSD, ..
574  */
575 #define RIG_TUNER 26
576 #define RIG_BACKEND_TUNER "tuner"
577 #define RIG_MODEL_V4L RIG_MAKE_MODEL(RIG_TUNER, 1)
578 #define RIG_MODEL_V4L2 RIG_MAKE_MODEL(RIG_TUNER, 2)
579 
580 
581 /*
582  * Rohde & Schwarz--rs
583  */
584 #define RIG_RS 27
585 #define RIG_BACKEND_RS "rs"
586 #define RIG_MODEL_ESMC RIG_MAKE_MODEL(RIG_RS, 1)
587 #define RIG_MODEL_EB200 RIG_MAKE_MODEL(RIG_RS, 2)
588 #define RIG_MODEL_XK2100 RIG_MAKE_MODEL(RIG_RS, 3)
589 #define RIG_MODEL_EK89X RIG_MAKE_MODEL(RIG_RS, 4)
590 
591 
592 /*
593  * Phillips/Simoco PRM80
594  */
595 #define RIG_PRM80 28
596 #define RIG_BACKEND_PRM80 "prm80"
597 #define RIG_MODEL_PRM8060 RIG_MAKE_MODEL(RIG_PRM80, 1)
598 #define RIG_MODEL_PRM8070 RIG_MAKE_MODEL(RIG_PRM80, 2)
599 
600 
601 /*
602  * ADAT by HB9CBU
603  *
604  * ADDED: frgo (DG1SBG), 2012-01-01
605  */
606 #define RIG_ADAT 29
607 #define RIG_BACKEND_ADAT "adat"
608 #define RIG_MODEL_ADT_200A RIG_MAKE_MODEL(RIG_ADAT, 1)
609 
610 
611 /*
612  * ICOM Marine
613  */
614 #define RIG_ICMARINE 30
615 #define RIG_BACKEND_ICMARINE "icmarine"
616 #define RIG_MODEL_IC_M700PRO RIG_MAKE_MODEL(RIG_ICMARINE, 1)
617 #define RIG_MODEL_IC_M802 RIG_MAKE_MODEL(RIG_ICMARINE, 2)
618 #define RIG_MODEL_IC_M710 RIG_MAKE_MODEL(RIG_ICMARINE, 3)
619 #define RIG_MODEL_IC_M803 RIG_MAKE_MODEL(RIG_ICMARINE, 4)
620 
621 
622 /*
623  * Dorji transceiver modules
624  */
625 #define RIG_DORJI 31
626 #define RIG_BACKEND_DORJI "dorji"
627 #define RIG_MODEL_DORJI_DRA818V RIG_MAKE_MODEL(RIG_DORJI, 1)
628 #define RIG_MODEL_DORJI_DRA818U RIG_MAKE_MODEL(RIG_DORJI, 2)
629 
630 /*
631  * Barrett
632  */
633 #define RIG_BARRETT 32
634 #define RIG_BACKEND_BARRETT "barrett"
635 #define RIG_MODEL_BARRETT_2050 RIG_MAKE_MODEL(RIG_BARRETT, 1)
636 #define RIG_MODEL_BARRETT_950 RIG_MAKE_MODEL(RIG_BARRETT, 2)
637 #define RIG_MODEL_BARRETT_4050 RIG_MAKE_MODEL(RIG_BARRETT, 3)
638 
639 /*
640  * Elad
641  */
642 #define RIG_ELAD 33
643 #define RIG_BACKEND_ELAD "elad"
644 #define RIG_MODEL_ELAD_FDM_DUO RIG_MAKE_MODEL(RIG_ELAD, 1)
645 
646 /*
647  * CODAN
648  */
649 #define RIG_CODAN 34
650 #define RIG_BACKEND_CODAN "codan"
651 #define RIG_MODEL_CODAN_ENVOY RIG_MAKE_MODEL(RIG_CODAN, 1)
652 #define RIG_MODEL_CODAN_NGT RIG_MAKE_MODEL(RIG_CODAN, 2)
653 
654 /*
655  * Gomspace
656  */
657 #define RIG_GOMSPACE 35
658 #define RIG_BACKEND_GOMSPACE "gomspace"
659 #define RIG_MODEL_GS100 RIG_MAKE_MODEL(RIG_GOMSPACE, 1)
661 
662 /*
663  * TODO:
664  RIG_MODEL_KWZ30, KNEISNER +DOERING
665  RIG_MODEL_E1800, DASA-Telefunken
666  etc.
667 */
668 
669 
673 typedef uint32_t rig_model_t;
674 
675 
676 /*
677  * struct rig_backend_list {
678  * rig_model_t model;
679  * const char *backend;
680  * } rig_backend_list[] = RIG_LIST;
681  *
682  * TODO:
683  *
684  { RIG_RADIOSHACK, RIG_BACKEND_RADIOSHACK }, \
685  */
686 
687 #endif /* _RIGLIST_H */