Commit Graph

514 Commits

Author SHA1 Message Date
Mike Black W9MDB
3aa8f31dcd Start excluding some Icom rigs from checking x25 command
Rigs like IC-751 don't even reject it and have to time out
2022-03-26 09:18:52 -05:00
Mike Black W9MDB
56fc193323 Add IC-756 to list of Icom rigs that don't support dsp
https://github.com/Hamlib/Hamlib/issues/997
2022-03-24 17:55:59 -05:00
Mike Black W9MDB
d6cfef6963 In icom.c rig_open limit 0x25 to one try
Start eliminating rigs that will never have 0x25 too like the IC-751 for starters
2022-03-23 23:02:49 -05:00
Mike Black W9MDB
92161c989a Balance RETURNFUNC 2022-02-19 16:50:35 -06:00
Mike Black W9MDB
453e831d63 Balance RETURNFUNC 2022-02-19 16:33:16 -06:00
Mike Black W9MDB
3c9b1203bb Balance RETURNFUNC 2022-02-19 16:24:55 -06:00
Mike Black W9MDB
81202d3477 Update hamlib_check_rig_caps 2022-02-11 13:16:26 -06:00
Mike Black W9MDB
599761f196 Improve 0x25 0x26 debug msg a bit 2022-02-06 23:27:39 -06:00
Mike Black W9MDB
524dd1f8c2 Balance ENTER/RETURN FUNC in icom.c 2022-02-06 23:24:33 -06:00
Mike Black W9MDB
8c34ce1a2d astyle source code 2022-02-05 15:27:43 -06:00
Mike Black W9MDB
68e121d82c Change all to remove HAVE_CONFIG dependency and include <hamlib/config.h> by default
This is necessary to keep alignment between the client view of rig->state and the shared libarary view
Including PTHREAD functions in rig->state necessitated this as HAVE_PTHREAD only defined during hamlib compilation.
Clients including hamlib/rig.h did not pick up all the HAVE* config variable that control what gets included
https://github.com/Hamlib/Hamlib/issues/947
2022-02-04 07:41:36 -06:00
Mikael Nousiainen
d5cd99b7f5 Allow async I/O for Icom SDR rigs, mainly for waterfall spectrum data support. Async I/O is still turned off by default and needs to be enabled via a conf option. 2022-02-02 13:15:05 +02:00
Mike Black W9MDB
7b4b7ee630 Add a depth count to debug statements to help understand calling sequences
First call into rig functions is level 1
Top level like rigctl, rigctld is level 0
Non-depth calls are internal debug statements -- which can be modified to also show levels but that's a whole lot of statements not really necessary
Normal calls from other clients will be level 1
2022-01-30 23:37:01 -06:00
Mike Black W9MDB
afd595d2da Allow asyncio rigs to use cached-only values for rig_get_freq and rig_get_mode
https://github.com/Hamlib/Hamlib/issues/894
2022-01-29 08:39:27 -06:00
Mike Black W9MDB
551594f48d Remove duplicate IC7300_RF_POWER_METER_CAL entry 2022-01-26 11:15:46 -06:00
Mike Black W9MDB
a277d7ab9b Changes changing hamlib_port_t to pointer are not backwards compatible 2022-01-25 17:41:26 -06:00
Mike Black W9MDB
9e86e62238 Enable async I/O by default
Change hamlib_port_t to a pointer in rig.state
Deprecate static hamlib_port_t structure
New hamlib_port_t structure at end of rig.state
Clients built with older hamlib will use old structure in DLL
Clients built with newer hamlib will use new structure in DLL
So we maintain backwards compatibility until Hamlib 5.0
https://github.com/Hamlib/Hamlib/issues/894
2022-01-25 07:59:47 -06:00
Mike Black W9MDB
987af84908 Update version in icom.h 2022-01-23 11:50:04 -06:00
Michael Black
51da62f3fb
Merge pull request #943 from mikaelnousiainen/async-rigctld-icom-bugfixes
Bugfixes for async I/O, rigctld and Icom backend
2022-01-23 11:49:14 -06:00
Mikael Nousiainen
664604f7b6 Make icom_rig_open() fail in case rig_set_powerstat() failure is auto_power_on is requested. Exit rigctld client loop if process is interrupted. 2022-01-23 11:49:16 +02:00
Mike Black W9MDB
38d7697d03 Change snprintf to SNPRINTF in rigs
https://github.com/Hamlib/Hamlib/issues/857
2022-01-22 22:37:09 -06:00
Mikael Nousiainen
1f428c8d95 Allow icom_rig_open() to succeed even if the rig is powered off. Fix issues with async I/O error code propagation. Allow rigctld daemon to start even if rig is powered off. Add mutex locks around rig_open()/rig_close() calls as multiple client connections could end up calling them concurrently, which could lead to all kinds of issues as the functions are not meant to be thread-safe. This also blocks execution of rigctl commands during rig open/close. 2022-01-22 23:19:07 +02:00
Mike Black W9MDB
965d2dc52b Add IC-705 power meter scale
https://github.com/Hamlib/Hamlib/issues/939
2022-01-19 17:19:04 -06:00
Mikael Nousiainen
5b9feffa78 Fix Icom dual watch set command. Make rotator macro name buffer larger, as the macro names are longer than the space allocated. 2022-01-18 19:02:01 +02:00
Mike Black W9MDB
2422de0951 Add IC-910 to the Icom rigs that don't use the filter byte
https://github.com/Hamlib/Hamlib/issues/929
2022-01-16 15:51:01 -06:00
Mike Black W9MDB
a291def17f Revert "Add MAIN A/B and SUB A/B VFOs to ic7610.c"
7610 does not have A/B VFOs
This reverts commit a7f6d693ac.
2022-01-15 12:23:26 -06:00
Mike Black W9MDB
a7f6d693ac Add MAIN A/B and SUB A/B VFOs to ic7610.c 2022-01-15 12:14:05 -06:00
Mike Black W9MDB
ea76b9e495 Replace sprintf with snprintf in icom.c
https://github.com/Hamlib/Hamlib/issues/857
2022-01-10 23:22:38 -06:00
Mike Black W9MDB
b84086d7f6 Add SNPRINTF macro to autodetect buffer limit exceeded
Change sprintf in icmarine and icom to SNPRINTF
https://github.com/Hamlib/Hamlib/issues/857
2022-01-09 23:47:46 -06:00
Mike Black W9MDB
5735441205 Fix set_mode_with_data for IC-7200
https://github.com/Hamlib/Hamlib/issues/921
2022-01-05 22:58:30 -06:00
Mike Black W9MDB
0b6d423633 Revert "Fix win32 build"
This reverts commit 3f431314d8.
2022-01-05 13:11:34 -06:00
Mike Black W9MDB
3f431314d8 Fix win32 build 2022-01-05 13:08:38 -06:00
Mike Black W9MDB
4eb0719f1d Fix IC-7610 send_voice_mem looping
https://github.com/Hamlib/Hamlib/issues/917
2022-01-04 07:11:44 -06:00
Mike Black W9MDB
01b7f81119 Add a data tag to the caps structure and a test in rig_init to ensure the data tag is where it is expected
Modify testrigcaps.c to test new data tag
This should detect any changes which corrupt rig_caps from additons/subtractions/changes to the structure
2021-12-31 23:49:29 -06:00
Mike Black W9MDB
e9038f7c41 Add Xeigu G90 and fix spelling 2021-12-29 09:36:54 -06:00
Mike Black W9MDB
320eb0975d Remove rts/dtr setting from x108g_open 2021-12-28 22:50:51 -06:00
Mike Black W9MDB
32a9903466 Remove split functions from XG6100 -- rig was rejecting the 0x0f 0x01 split on command so apparently it is not supported
https://github.com/Hamlib/Hamlib/issues/908
2021-12-28 22:44:39 -06:00
Mike Black W9MDB
86a6ffb19e Add Xeigu X6100 2021-12-27 23:23:26 -06:00
Mike Black W9MDB
1048cbb568 Add RIG_FUNC_DUAL_WATCH for IC-9700 and IC-9100 2021-12-26 22:39:57 -06:00
Mike Black W9MDB
3da4a9ea74 Revert "Revert "Add testgrid and move grid lat/lon functions to rig.h""
This reverts commit 1601375f7a.
2021-12-26 10:07:24 -06:00
Mike Black W9MDB
1601375f7a Revert "Add testgrid and move grid lat/lon functions to rig.h"
This reverts commit d510893f7e.
This may have messed up DLL compatibility
2021-12-26 09:53:58 -06:00
Mike Black W9MDB
665e0de488 Fix split mode functions for IC-F8101 2021-12-26 09:29:58 -06:00
Mike Black W9MDB
a9fd2020f6 Fix IC-F8101 split command 2021-12-26 07:50:17 -06:00
Mike Black W9MDB
90400c0d9f Add split funcions to IC-F8101 2021-12-25 16:03:20 -06:00
Mike Black W9MDB
5a18808933 Turn on VFO mode for ICF8101 during rig_open 2021-12-25 11:38:10 -06:00
Mike Black W9MDB
d510893f7e Add testgrid and move grid lat/lon functions to rig.h
This will support future gps integrations for autogrid during mobile operations
2021-12-24 13:13:56 -06:00
Mike Black W9MDB
52e856dbbe Add IC-F8101 rig 2021-12-24 13:04:47 -06:00
Mike Black W9MDB
55b8f03c74 Temporarily adding a bit of debug to help figure out 0xfe logic for icom/frame.c 2021-12-22 17:45:15 -06:00
Mike Black W9MDB
8c5816c53c During icom power on 0xfe may get echoed after power on so ensure we look for it and remove it
https://github.com/Hamlib/Hamlib/issues/900
2021-12-22 09:16:17 -06:00
Mike Black W9MDB
cee10db2cd Ensure power on 0xfe's are flushed for Icom rigs
https://github.com/Hamlib/Hamlib/issues/900
2021-12-22 08:22:24 -06:00