2010-03-06 17:29:05 +00:00
|
|
|
/*
|
|
|
|
* Hamlib Racal backend - RA37XX header
|
|
|
|
* Copyright (c) 2004-2010 by Stephane Fillod
|
|
|
|
*
|
2011-08-21 23:16:20 +00:00
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
2010-03-06 17:29:05 +00:00
|
|
|
*
|
2011-08-21 23:16:20 +00:00
|
|
|
* This library is distributed in the hope that it will be useful,
|
2010-03-06 17:29:05 +00:00
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2011-08-21 23:16:20 +00:00
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
2010-03-06 17:29:05 +00:00
|
|
|
*
|
2011-08-21 23:16:20 +00:00
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
2010-03-06 17:29:05 +00:00
|
|
|
* License along with this library; if not, write to the Free Software
|
2011-08-21 23:16:20 +00:00
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
2010-03-06 17:29:05 +00:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _RA37XX_H
|
|
|
|
#define _RA37XX_H 1
|
|
|
|
|
|
|
|
#include "hamlib/rig.h"
|
|
|
|
#include "racal.h"
|
|
|
|
|
|
|
|
extern const struct confparams ra37xx_cfg_params[];
|
|
|
|
|
|
|
|
/* Packet timeout at Master port, 5-9 */
|
|
|
|
#define RA37XX_TIMEOUT 1000 /* ms */
|
|
|
|
|
|
|
|
|
|
|
|
#define RA37XX_STR_CAL { 13, \
|
|
|
|
{ \
|
|
|
|
{ 97, 86 }, /* 120 dBuV */ \
|
|
|
|
{ 109, 76 }, /* 110 dBuV */ \
|
|
|
|
{ 120, 66 }, /* 100 dBuV */ \
|
|
|
|
{ 132, 56 }, /* 90 dBuV */ \
|
|
|
|
{ 144, 46 }, /* 80 dBuV */ \
|
|
|
|
{ 155, 36 }, /* 70 dBuV */ \
|
|
|
|
{ 167, 26 }, /* 60 dBuV */ \
|
|
|
|
{ 179, 16 }, /* 50 dBuV */ \
|
|
|
|
{ 190, 6 }, /* 40 dBuV */ \
|
|
|
|
{ 202, -4 }, /* 30 dBuV */ \
|
|
|
|
{ 214, -14 }, /* 20 dBuV */ \
|
|
|
|
{ 225, -24 }, /* 10 dBuV */ \
|
|
|
|
{ 255, -34 }, /* 0 dBuV */ \
|
|
|
|
} }
|
|
|
|
|
|
|
|
#define RA37XX_MEM_CAP { \
|
|
|
|
.freq = 1, \
|
|
|
|
.mode = 1, \
|
|
|
|
.width = 1, \
|
|
|
|
.levels = RIG_LEVEL_AGC|RIG_LEVEL_CWPITCH, \
|
|
|
|
/* .flags = 1, */ \
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
struct ra37xx_priv_data {
|
|
|
|
int receiver_id;
|
|
|
|
};
|
|
|
|
|
|
|
|
int ra37xx_set_conf(RIG *rig, token_t token, const char *val);
|
|
|
|
int ra37xx_get_conf(RIG *rig, token_t token, char *val);
|
|
|
|
int ra37xx_init(RIG *rig);
|
|
|
|
int ra37xx_cleanup(RIG *rig);
|
|
|
|
int ra37xx_open(RIG *rig);
|
|
|
|
int ra37xx_close(RIG *rig);
|
|
|
|
|
|
|
|
int ra37xx_set_freq(RIG *rig, vfo_t vfo, freq_t freq);
|
|
|
|
int ra37xx_get_freq(RIG *rig, vfo_t vfo, freq_t *freq);
|
|
|
|
int ra37xx_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width);
|
|
|
|
int ra37xx_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width);
|
|
|
|
int ra37xx_set_func(RIG *rig, vfo_t vfo, setting_t func, int status);
|
|
|
|
int ra37xx_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status);
|
|
|
|
int ra37xx_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val);
|
|
|
|
int ra37xx_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val);
|
|
|
|
const char* ra37xx_get_info(RIG *rig);
|
|
|
|
int ra37xx_set_ant(RIG *rig, vfo_t vfo, ant_t ant);
|
|
|
|
int ra37xx_get_ant(RIG *rig, vfo_t vfo, ant_t *ant);
|
|
|
|
int ra37xx_set_mem(RIG *rig, vfo_t vfo, int ch);
|
|
|
|
int ra37xx_get_mem(RIG *rig, vfo_t vfo, int *ch);
|
|
|
|
int ra37xx_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch);
|
|
|
|
int ra37xx_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op);
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* _RA37XX_H */
|