kopia lustrzana https://github.com/Hamlib/Hamlib
rodzic
24eb991f55
commit
fde9ad706c
|
@ -8047,6 +8047,8 @@ int icom_get_powerstat(RIG *rig, powerstat_t *status)
|
||||||
|
|
||||||
ENTERFUNC;
|
ENTERFUNC;
|
||||||
|
|
||||||
|
*status = RIG_POWER_OFF; // default return until proven otherwise
|
||||||
|
|
||||||
/* r75 has no way to get power status, so fake it */
|
/* r75 has no way to get power status, so fake it */
|
||||||
if (rig->caps->rig_model == RIG_MODEL_ICR75)
|
if (rig->caps->rig_model == RIG_MODEL_ICR75)
|
||||||
{
|
{
|
||||||
|
@ -8070,7 +8072,11 @@ int icom_get_powerstat(RIG *rig, powerstat_t *status)
|
||||||
if (rig->caps->rig_model == RIG_MODEL_IC7300)
|
if (rig->caps->rig_model == RIG_MODEL_IC7300)
|
||||||
{
|
{
|
||||||
freq_t freq;
|
freq_t freq;
|
||||||
|
int retrysave = rig->caps->retry;
|
||||||
|
rig->caps->retry = 0;
|
||||||
int retval = rig_get_freq(rig, RIG_VFO_A, &freq);
|
int retval = rig_get_freq(rig, RIG_VFO_A, &freq);
|
||||||
|
rig->caps->retry = retrysave;
|
||||||
|
*status = retval==RIG_OK ? RIG_POWER_ON : RIG_POWER_OFF;
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -36,6 +36,7 @@ int ptt = 0;
|
||||||
int satmode = 0;
|
int satmode = 0;
|
||||||
int agc_time = 1;
|
int agc_time = 1;
|
||||||
int ovf_status = 0;
|
int ovf_status = 0;
|
||||||
|
int powerstat = 0;
|
||||||
|
|
||||||
void dumphex(unsigned char *buf, int n)
|
void dumphex(unsigned char *buf, int n)
|
||||||
{
|
{
|
||||||
|
@ -99,7 +100,8 @@ void frameParse(int fd, unsigned char *frame, int len)
|
||||||
}
|
}
|
||||||
|
|
||||||
frame[10] = 0xfd;
|
frame[10] = 0xfd;
|
||||||
n = write(fd, frame, 11);
|
if (powerstat)
|
||||||
|
n = write(fd, frame, 11);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x04:
|
case 0x04:
|
||||||
|
@ -524,7 +526,12 @@ int main(int argc, char **argv)
|
||||||
fd = openPort(argv[1]);
|
fd = openPort(argv[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (powerstat)
|
||||||
frameParse(fd, buf, len);
|
frameParse(fd, buf, len);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
usleep(1000*1000);
|
||||||
|
}
|
||||||
rigStatus();
|
rigStatus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5860,9 +5860,11 @@ int HAMLIB_API rig_get_powerstat(RIG *rig, powerstat_t *status)
|
||||||
|
|
||||||
if (rig->caps->get_powerstat == NULL)
|
if (rig->caps->get_powerstat == NULL)
|
||||||
{
|
{
|
||||||
|
*status = RIG_POWER_ON; // default to power if not available
|
||||||
RETURNFUNC(-RIG_ENAVAIL);
|
RETURNFUNC(-RIG_ENAVAIL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
*status = RIG_POWER_OFF; // default now to power off until proven otherwise in get_powerstat
|
||||||
HAMLIB_TRACE;
|
HAMLIB_TRACE;
|
||||||
retcode = rig->caps->get_powerstat(rig, status);
|
retcode = rig->caps->get_powerstat(rig, status);
|
||||||
RETURNFUNC(retcode);
|
RETURNFUNC(retcode);
|
||||||
|
|
Ładowanie…
Reference in New Issue