Mike Black W9MDB
9841e500b9
Fix ptt_share segmentation fault
...
https://github.com/Hamlib/Hamlib/issues/1433
Fix ID5100 0x25 and simplex VFO actions
https://github.com/Hamlib/Hamlib/issues/1429
2023-11-23 15:00:05 -06:00
Mikael Nousiainen
7b341a2ad6
Merge branch 'master' into streamline-vfo-targeting-and-split-functionality
2023-11-20 10:16:15 +02:00
Mike Black W9MDB
cb34dc3b20
Add stop_voice_mem to some icom rigs
...
Also add send_voice_mem to IC275
2023-11-16 09:02:32 -06:00
Mikael Nousiainen
dd974a2536
Merge branch 'master' into streamline-vfo-targeting-and-split-functionality
2023-11-14 10:05:52 +02:00
Mikael Nousiainen
e2e723ec60
Simplify/streamline split VFO handling, especially in the Icom backend. Detect reverse split automatically at startup for Icom rigs.
2023-11-14 10:05:17 +02:00
Mike Black W9MDB
e19bdc3d56
Update vfo_fixup for ID5100 dual watch mode
...
https://github.com/Hamlib/Hamlib/issues/1425
2023-11-13 10:26:00 -06:00
Mikael Nousiainen
c90c675add
Unify and streamline Icom backend logic for freq/mode and split commands. Allow use of targeted freq/mode whenever possible. Move certain Icom-specific caps to the icom_priv_caps struct to remove rig-specific conditions in generic backend code.
2023-11-09 09:57:23 +02:00
Mikael Nousiainen
8ab8aafe48
Streamline VFO targeting and split functionality. Rewrite Icom backend routines to always avoid VFO swapping is the rig supports the 'targetable' commands 0x25 and 0x26. Work in progress.
2023-10-29 10:28:36 +02:00
Mike Black W9MDB
d3edab3759
Fix cppcheck warnings
...
https://github.com/Hamlib/Hamlib/issues/1351
2023-10-08 17:16:10 -05:00
Mike Black W9MDB
93af897753
FIx always true cppcheck warnings
...
https://github.com/Hamlib/Hamlib/issues/1351
2023-10-01 16:51:07 -05:00
Mike Black W9MDB
e887152407
Fix parm_gran
...
https://github.com/Hamlib/Hamlib/issues/1357
2023-08-17 16:04:45 -05:00
Mike Black W9MDB
2852fba73f
Increase sleep during power on for Icom to wait for serial port to wake up
2023-07-29 15:10:36 -05:00
Mike Black W9MDB
bd1fcbe025
Adjust icom power up to use the mininum number of 0xfe's needed for the baud rate
2023-07-28 17:32:23 -05:00
Mike Black W9MDB
fcba1cab20
Make icom echo check skip the 1st two bytes of the frame
...
Saw an instance where the 1st 0xfe was corrupted so this allows for that
2023-07-24 17:35:14 -05:00
Mike Black W9MDB
b58c0a0fa4
IC-9700 VFO selection now works for VFOA, VFOB, MainA, MainB, SubA, and SubB
...
WSJT-X does not set VFOB mode when VFOA mode is already selected...must change VFOA mode and back again to set VFOB
2023-07-18 10:20:53 -05:00
Mike Black W9MDB
902cfd708f
Improve Icom set_powerstat=1
...
Original 2023-07-16T09:28:43.323319-0600: 4:rig_set_powerstat: elapsed=10236ms
IC-7300 2023-07-16T09:46:48.814844-0600: 4:rig_set_powerstat: elapsed=4020ms
IC-9700 2023-07-16T10:36:27.239828-0600: 4:rig_set_powerstat: elapsed=5717ms
The goal is to tweak each rig for fastest result but need more testers for that
Slowest right now is IC-9700 which is the default value
Total timeout will be just over 10.5 seconds to allow rig to power on
https://github.com/Hamlib/Hamlib/issues/1325
2023-07-16 10:38:59 -05:00
Mike Black W9MDB
3cc6b7614c
Fix IC7610 caps structure for new firmware test
2023-07-07 11:47:59 -05:00
Mike Black W9MDB
a3ac6e0be3
Change to using RIG_IS macros
...
Fix segfault on non 76XX rigs
https://github.com/Hamlib/Hamlib/issues/1319
2023-06-27 11:24:27 -05:00
Mike Black W9MDB
c0c70b0146
Fix IC-7600 set/get freq to use new 0x25/x26 capability if available
...
https://github.com/Hamlib/Hamlib/issues/1319
2023-06-27 08:54:43 -05:00
Mike Black W9MDB
701aaab1c6
Ensure usb echo off is determined first thing for Icom rigs
...
https://github.com/Hamlib/Hamlib/issues/1318
2023-06-20 09:32:10 -05:00
Mike Black W9MDB
f14c241f43
Fix IC-905 frequency -- needed to be 10Hz units
2023-06-16 22:32:13 -05:00
Mike Black W9MDB
88a1d88e0f
Fix icom.c set_mode_with_data to skip mode if same and skip bandwidth if same or nochange
...
https://github.com/Hamlib/Hamlib/issues/1312
2023-06-09 17:06:46 -05:00
Mike Black W9MDB
21f0e560f7
For Icom rigs when PASSBAND_NOCHANGE is requested do not change the filter setting
...
https://github.com/Hamlib/Hamlib/issues/1309
2023-06-06 09:44:25 -05:00
Mike Black W9MDB
5745457d7f
Fix anytone thread deletion
2023-05-30 22:10:19 -05:00
Mike Black W9MDB
6eb0735c75
Update Icom rigs that cannot query power status
2023-05-20 22:22:02 -05:00
Mike Black W9MDB
04ee4ec580
Fix IC7800 to use get_freq instead of 0x18 command since it cannot read power status
2023-05-18 11:40:43 -05:00
Mike Black W9MDB
474428082d
Add rig_get_vfo for IC9700 -- seems we can use x07 0Xd2 to determine main/sub vfo now
2023-05-17 14:03:08 -05:00
Mike Black W9MDB
c7cfc78303
Add IC7700 to rigs that don't have 0x25
2023-05-12 14:36:40 -05:00
Mike Black W9MDB
e9cc1881dc
Fix x25cmdfails detection in icom.c
...
https://github.com/Hamlib/Hamlib/issues/1277#issuecomment-1542655090
2023-05-10 14:42:22 -05:00
Mike Black W9MDB
247f0f72cf
Excludes IC9100 from updating x25cmdfails from satmode
...
The IC9100 never supports 0x25
https://github.com/Hamlib/Hamlib/issues/1284
2023-05-08 10:30:24 -05:00
Mike Black W9MDB
4a8a82ffc4
Fix icom.c 0x25 detection and add IC9100 to known rigs that doesn't have 0x25
...
https://github.com/Hamlib/Hamlib/issues/1284
2023-05-05 09:38:07 -05:00
Mike Black W9MDB
d044ad998c
Add retry to icom_get_ptt
...
https://github.com/Hamlib/Hamlib/issues/1283
2023-05-03 16:18:02 -05:00
Mike Black W9MDB
e82f127965
Allow icom read_frame to return when bus collision occurs
...
https://github.com/Hamlib/Hamlib/issues/1280
2023-04-26 15:38:08 -05:00
Mike Black W9MDB
6fadbfb112
Change Icom 0x25 logic to only allow one detection
...
https://github.com/Hamlib/Hamlib/issues/1277
2023-04-25 08:00:43 -05:00
Daniele Forsi IU5HKX
2e894dd9cc
[icom] Remove unused include of config.h
...
Found wih "Include What You Use".
2023-02-14 19:21:18 +01:00
Mike Black W9MDB
d16b52e414
Fix IC7300 5 second sleep during poweron
...
Reverse ID-5100 logic for dual watch mode
https://github.com/Hamlib/Hamlib/issues/1220
2023-01-22 10:49:15 -06:00
Mike Black W9MDB
0c2426c800
Add 5 second sleep during power on for IC7300
...
https://github.com/Hamlib/Hamlib/issues/1220
2023-01-21 17:21:04 -06:00
Mike Black W9MDB
9d096c4ac9
Improve powerstat on/off behavior for Icom rigs
...
https://github.com/Hamlib/Hamlib/issues/1212
2023-01-18 15:00:18 -06:00
Mike Black W9MDB
9861d1f87b
Add dual watch capability for ID-5100
...
https://github.com/Hamlib/Hamlib/issues/1218
2023-01-18 08:49:11 -06:00
Mike Black W9MDB
dc131cba7f
Fix set_powerstat on/off/on for Icom rigs using rigctld power_on=0
...
https://github.com/Hamlib/Hamlib/issues/1212
2023-01-10 08:46:10 -06:00
Mike Black W9MDB
89fadca3bd
For Icom rigs close and reopen rig after set_powerstat=1 -- Linux resets the usb device
...
https://github.com/Hamlib/Hamlib/issues/1212
2023-01-09 09:50:25 -06:00
Mike Black W9MDB
138795668f
Fix ID5100 get/set_mode
...
Remove ID rigs freq_len check as civ_731 setting should cover it
https://github.com/Hamlib/Hamlib/issues/1204
2023-01-04 06:57:12 -06:00
Mike Black W9MDB
1b6b78f54a
Another attempt to fix get/set freq for ID5100 ID4100 ID31 ID51
...
https://github.com/Hamlib/Hamlib/issues/1202
https://github.com/Hamlib/Hamlib/issues/1200
2023-01-03 12:17:16 -06:00
Mike Black W9MDB
c7b33ef0b3
Fix ID5100 ID4100 ID31 ID51 get/set freq
...
Remove get_powerstat from ID4100 ID31 ID51 as it they are not capable
Add new rig_is_model function to help with Icom rig identification checks
https://github.com/Hamlib/Hamlib/issues/1202
https://github.com/Hamlib/Hamlib/issues/1200
2023-01-02 11:30:52 -06:00
Mike Black W9MDB
1ef3549e94
Fix rigctld showing the real rig agc_levels instead of all levels
...
Fix display of RIG_AGC_OFF
Add RIG_AGC_LONG
Fix PowerSDR AGC values
https://github.com/Hamlib/Hamlib/issues/1155
2022-11-23 23:29:18 -06:00
Mike Black W9MDB
e3a1d8c96c
Update icom.h data
...
https://github.com/Hamlib/Hamlib/issues/1154
2022-11-20 11:42:45 -06:00
Mike Black W9MDB
4f5bf9aadd
Fix some dumpcaps warnings in many rigs
2022-11-14 16:02:28 -06:00
Mike Black W9MDB
c218996e2f
Add RIG_FUNC_OVF_STATUS for IC-7300, IC-9700, IC-705, IC-R8600
2022-11-04 23:31:51 -05:00
Mike Black W9MDB
224ccc7839
Fix filter set for IC375 and promote to stable
...
https://github.com/Hamlib/Hamlib/issues/1113
2022-09-09 14:01:43 -05:00
Mike Black W9MDB
9cb511af00
Add some debug for Icom use_cached variables
...
https://github.com/Hamlib/Hamlib/issues/1108
2022-09-05 12:21:45 -05:00
Mike Black W9MDB
5701e73e1e
Fix valgrind warning
...
https://github.com/Hamlib/Hamlib/issues/1108
2022-08-31 08:57:00 -05:00
Mike Black W9MDB
6965927fb4
Add IC275 to icom rigs that can't do 0x25
2022-08-19 07:55:20 -05:00
Mike Black W9MDB
51650e9425
Remove get_dsp_flt for Xeigu X5105
2022-08-01 12:53:34 -05:00
Mike Black W9MDB
2b7c2ab5ce
Fix all Icom rigs AGC values for correct printout with dumpcaps
...
https://github.com/Hamlib/Hamlib/issues/1096
2022-07-29 23:44:17 -05:00
Mike Black W9MDB
4385b50b1f
Add Xiegu X5105 from G90 config
2022-07-28 10:33:07 -05:00
Mike Black W9MDB
05941406da
This broke Icom rigs.
...
Revert "Improve debug output on icom_get_vfo to note Icom's inability to get current vfo"
This reverts commit 02b2dad5b0
.
2022-07-22 15:51:22 -05:00
Mike Black W9MDB
02b2dad5b0
Improve debug output on icom_get_vfo to note Icom's inability to get current vfo
2022-07-22 12:57:11 -05:00
Mike Black W9MDB
b1369f9458
Fix ic9700 segfault
...
https://github.com/Hamlib/Hamlib/issues/1078
2022-07-07 22:10:49 -05:00
Mike Black W9MDB
04b9353d88
Change fix for IC9700 satmode to be more generic
...
https://github.com/Hamlib/Hamlib/issues/1059
2022-06-30 08:15:49 -05:00
Mike Black W9MDB
cd2b734150
Prevent IC9700 from using 0x25 0x26 commands when in satmode
...
https://github.com/Hamlib/Hamlib/issues/1059
2022-06-29 15:40:41 -05:00
Mike Black W9MDB
763836881f
Reverse selected vfo logic for 0x25 command when in split and ptt is on for Icom rigs
...
https://github.com/Hamlib/Hamlib/issues/1048
2022-06-01 12:29:12 -05:00
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
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
987af84908
Update version in icom.h
2022-01-23 11:50:04 -06: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
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
e9038f7c41
Add Xeigu G90 and fix spelling
2021-12-29 09:36:54 -06:00
Mike Black W9MDB
86a6ffb19e
Add Xeigu X6100
2021-12-27 23:23:26 -06:00
Mike Black W9MDB
52e856dbbe
Add IC-F8101 rig
2021-12-24 13:04:47 -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
Mikael Nousiainen
cd9a24b72e
Merge upstream changes and fix conflicts
2021-12-18 23:53:42 +02:00
Mike Black W9MDB
c6c18c0903
Reduced timeout on Icom startup
...
Reduce time to start up when powering up Icom
2021-12-15 16:36:34 -06:00
Mike Black W9MDB
32ce1bae50
Fix no-autopower and echo off for Icom
...
https://github.com/Hamlib/Hamlib/issues/885
2021-12-12 23:42:00 -06:00
Mikael Nousiainen
56c95b1529
Merge upstream changes and fix conflicts
2021-12-12 23:05:26 +02:00
Mike Black W9MDB
add666f891
Fix Icom echo off not working
...
https://github.com/Hamlib/Hamlib/issues/885
2021-12-12 13:18:24 -06:00
Mikael Nousiainen
d857f18163
Initial implementation of: reader thread for async handling of rig data, UDP multicast publisher routine and rig state poll thread routine. The reader thread can correctly handle asynchronous data, such as transceive or spectrum data. Work in progress: multi-platform code for I/O routines still missing and the poll routine is not yet in use. Tested briefly on an IC-7300 so far.
2021-11-28 20:52:29 +02:00
Mike Black W9MDB
ba407cfcdf
Fix RIG_VFO_OTHER in icom.c set_vfo
...
https://github.com/Hamlib/Hamlib/issues/853
2021-11-20 17:02:48 -06:00
Mikael Nousiainen
1f538ad7ec
Started work on asynchronous reader thread to enable handling of rig tranceive and waterfall data (WIP)
2021-11-20 21:33:29 +02:00
Mike Black W9MDB
d9d247cad3
Add rig_lock to icom.c -- testing multicast capability
...
https://github.com/Hamlib/Hamlib/issues/695
2021-11-15 07:23:18 -06:00
Mike Black W9MDB
470d3b7c4f
All icom_open to do 1 retry
...
https://github.com/Hamlib/Hamlib/issues/868
2021-11-14 11:51:14 -06:00
Mike Black W9MDB
3b927a81eb
Fix icom filter number for 0x26 command -- filter should not change now at all from what the user sets.
...
https://github.com/Hamlib/Hamlib/issues/854
2021-11-07 12:39:54 -06:00
Mike Black W9MDB
c83949ae6d
For Icom rigs like IC910H and IC9700 Main/Sub are only used for split and satmode
...
Otherwise VFOA/B can be used on either Main or Sub VFOs
So if Main is requested and not in split/satmode then VFOA is assumed -- this case was fixed
And if Sub is requested and not in split/satmode then VFOB is assumed -- this was already true
https://github.com/Hamlib/Hamlib/issues/832
2021-10-20 15:56:11 -05:00
Mike Black W9MDB
569f21c7fe
Revert "Start to normalize Icom cmd detection"
...
This reverts commit 1ade49f3d5
.
2021-10-17 16:02:30 -05:00
Mike Black W9MDB
1ade49f3d5
Start to normalize Icom cmd detection
2021-10-17 13:10:15 -05:00
Mike Black W9MDB
83b7243946
Change icom_set_mode_with_data to reuse existing filter# if RIG_PASSBAND_NOCHANGE is requested
...
https://github.com/Hamlib/Hamlib/issues/827
2021-10-15 12:56:17 -05:00
Mike Black W9MDB
c7acbc19de
Improve Icom rigs with 1A 03 command and add some debug
...
https://github.com/Hamlib/Hamlib/issues/811
2021-10-13 11:53:45 -05:00
Mike Black W9MDB
75408098a4
Change Icom frame.c to only look for 0xfd for end of frame. Was not seeing error frames]
...
https://github.com/Hamlib/Hamlib/issues/818
2021-10-10 16:27:58 -05:00
Mike Black W9MDB
fecc7d42aa
Hopefully fixed auto_power_on for IC-7610 and IC-9700
...
But it takes ~4 seconds on IC-7300 to power on 14 seconds to time out when the rig does not respond at all
https://github.com/Hamlib/Hamlib/issues/815
2021-10-05 11:40:54 -05:00
Mike Black W9MDB
ca9a45c93e
Reduce icom auto_power_on timeout from 15 seconds to just over 5 seconds
...
https://github.com/Hamlib/Hamlib/issues/815
2021-10-04 17:34:09 -05:00
Mike Black W9MDB
eadd1da009
Fix IC7300 (and other Icoms) set/get_dsp_filter
...
All Icoms will now try the 1A 03 command once and if it is rejected won't try again.
https://github.com/Hamlib/Hamlib/issues/811
2021-10-02 17:33:21 -05:00
Mike Black W9MDB
a2b3a8d67e
Disable icom_get_vfo as user twiddling VFO knob does not work while polling
...
current_vfo is still determined at startup
https://github.com/Hamlib/Hamlib/issues/806
2021-09-29 05:46:53 -05:00
Mike Black W9MDB
3a76cb1b40
For Icom get_vfo when freqs are equal will only check vfo 1 time
...
This means get_vfo will not follow rig button pushes when freqs are equal
https://github.com/Hamlib/Hamlib/issues/806
2021-09-28 12:01:50 -05:00
Mike Black W9MDB
aae3ec4996
Allow IC-7300 and many other Icom rigs to find current vfo on startup
...
Icom rigs that do not have 0x25 or XCHG cannot do this yet which are older Icom rigs
XCHG rigs cannot get_vfo while transmitting but 0x25 rigs can
https://github.com/Hamlib/Hamlib/issues/806
2021-09-26 17:03:47 -05:00
Mike Black W9MDB
421c6e7c4e
Fix icom.c get_mode to not ask for unselected VFO when VFO_CURR is requested
...
https://github.com/Hamlib/Hamlib/issues/806
2021-09-22 10:40:56 -05:00
Mike Black W9MDB
a94dcddcf4
Fix ICOM request for VFOB info when VFOB is active vfo
...
https://github.com/Hamlib/Hamlib/issues/806
2021-09-21 12:17:17 -05:00
Mike Black W9MDB
6e5bc09b27
Fix potential buffer underflow in icom.c
2021-09-11 05:41:25 -05:00
Mike Black W9MDB
e900b4f9dc
Change set_icom_set_mode_with_data to not change mode unless necessary
...
Should allow filters to stay where they are set if USB-D is the starting mode
https://github.com/Hamlib/Hamlib/issues/791
2021-09-07 17:44:57 -05:00
Mike Black W9MDB
ee56688003
Fix icom_set_func so that it can also turn off DUAL_WATCH
...
In ic756.c remove ic756_set_func and use icom_set_func instead
2021-09-01 09:00:56 -05:00