Put a looplimit on icom_get_ant_count trying to get autodetect to work
Changes to icom_get_ant_count to try and get this working
Added dummy antenna # args to rigs that don't care i.e. only have 1 antenna
Change to ic785x.c to get antenna calls working
Added automatic detection of # of antennas for Icom rigs
Note that rig_get_ant returns a zero-based antenna# and not RIG_ANT1/2/3/4....
rig_set_ant on the other hand takes RIG_ANT1/2/3/4 as the argument for antenna
These RIG_ANT settings are a bit mask
This may have to be converted in the rig back end to whatever the rig expects
Fix declarations after statements
Remove some !rig checks...we either don't need them or need them everywhere with a new error code
If you pass a NULL rig you get what you deserve :-)
This found tons of errors in rig_debug statements
So this patch cleans up all the files that were producing warnings or errors
This should fix a few segfaults when running with debug turned on
netrigctl_transaction() returns either an error code (-ve int),
RIG_OK, or the number of characters read from the protocol stream. +ve
return values indicate successful parsing of stream data, not an
error.
on the real rig. In rigctl_parse.c, we make sure that invalid attempts to
so so are mapped on a safe variant.
Second change to netrigctl: drain the input line before sending a new
command, to reach sync again after a timeout.
Separate FT-891 features
Fix rigctl and rigctld to not abort on function not available
Change Yaesu detection of FA length to automatic method instead of rig specific
The rig frontend may be able to emulate RIG_LEVEL_STRENGTH by using
RIG_LEVEL_RAWSTR and an S-meter calibration curve. The netrig client
doesn't know this so it must pass STRENGTH queries regardless if it
knows a RIG_LEVEL_RAWSTR query is allowed. If the server cannot oblige
it will return a -RIG_EINVAL error which should be fine.
From the SourceForge tracker:
I am using version hamlib-1.2.15.2~rc3. Start rigctl and specify rig 2
(rigctld). The command "s" (get_split_vfo) will return two parameters,
the spilt state (0 or 1) and the TX VFO name. The command "S"
(set_split_vfo) will send one parameter, the TX VFO name, but will not
send the split state (0 or 1). This is incorrect. In the file
dummy/netrigctl.c change netrigctl_set_split_vfo() line 782:
len = sprintf(cmd, "S %s\n", rig_strvfo(tx_vfo));
to include the "split" paramater; perhaps:
len = sprintf(cmd, "S %d %s\n", split, rig_strvfo(tx_vfo));
Thanks to Jim, N2ADR for reporting this.