View Issue Details

IDProjectCategoryView StatusLast Update
0001897Ham Radio DeluxeBugpublic2019-03-31 11:13
ReporterKB3NPHAssigned ToK7ZCZ 
PrioritynormalSeveritymajorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version 
Target VersionFixed in Version6.5.0.207 
Summary0001897: Icom IC-910H sub band in Satellite tracking mode
I have found a regression in functionality between:
•HRD v5.24.0.36 (free version, released 2012), which I have used for a long time, and
•HRD v6.3.0.501 (released 03/15/2016), which I am testing with a Trail license. It is the latest available version on your website.
The problem concerns Satellite Tracking with the Icom IC-910H. When frequency tracking is enabled for RX and TX, the main band frequency and the sub band frequency of the transceiver should be continuously updated (according to doppler). This works correctly in HRD v5.24.0.36. However, it does not work in v6.3.0.501: only the main band frequency is updated in v6.3.0.501.

 Is this a known problem? The problem is easily reproducible. The settings in both HRD versions are the same. All settings on the Icom IC-910H remain the same. For information, I upload some screenshots of the configuration.

Note that the problem can also be visually observed on the transceiver: using v5.24.0.36 the "SUB" indicator periodically appears on the LCD display (this is normal -- it means that HRD is updating the sub band frequency); using v6.3.0.501 the "SUB" indicator never appears.

To help debugging, I have also used the "Trace HRD Comms" button in HRD Satellite Tracking for logging the communication with the transceiver. I uploaded the resulting logfiles for both v5.24.0.36 and v6.3.0.501. In both logfiles it seems that HRD is sending frequency settings for both the main and sub band, but seemingly in a different way. This might give you a clue about the reason for this issue.
Additional InformationPlease see the attached files in the actual support ticket
TagsIC-910H, ICOM
ModuleSatellite Tracking
Testing Beta Successful


related to 0000580 closedK7ZCZ 5 - Closed w/o Action Freq(RX) missing from ALE 
has duplicate 0001863 closedK7ZCZ 5 - Closed w/o Action Sat control.. VFO tracking bug.. 



2019-03-05 22:08

administrator   ~0007582

The HRD 6.3 log file does show the two frequencies being sent:

<Row Text="Sent 043> [31] set frequencies-hz 145798500 437804505 Recv 002> OK" Class="HRD Comms" Time="17:18:31"/>

so odds are there's something going on in Rig Control.


2019-03-09 18:40

administrator   ~0007653

A few issues conspire to make a fix for this bug challenging.

The team has struggled to define how they want "VFO A", "VFO B", "Main", and "Sub" settings to behave. There's no clear definition for this nomenclature in radio manuals, and there doesn't seem to be agreement on the team about how the radio should be have or what Rig Control should show.

The IC-910H is unique among the radios I used (I think) because it has both main and sub bands, and VFO A and VFO B. It actually supports both: the main and sub receivers each have VFO A and VFO B, so the radio might have four different frequencies at a particular moment.

From the front panel of the radio, this arrangement can readily be demonstrated:

1) Make sure the radio is NOT in satellite mode.
2) Press the M/S button until the 2 meter frequency band is in the top display.
3) Press A/B until the top display says "VFO A".
4) Tune the top display to 145.000 MHz.
5) Press A/B so the top display says "VFO B".
6) Tune the top display to 147.000 MHz.
7) Press the M/S button. Now, the 70 cm band is in the top display. The bottom display should read "147.000 VFO B" from Step 6.
8) Press A/B until the top display reads "VFO A".
9) Tune the top display to 443.000 MHz
10) Press A/B. Now the Top display reads "VFO B".
11) Tune the top display to 445.000 MHz

At this point, the main band is 70cm, with VFO A tuned to 443.000 and VFO B tuned to 445.000. The sub band is 2m, with VFO A tuned to 145.000 and VFO B tuned to 147.000.

Rig Control, which is used by all the other HRD applications to read and write the status of the radio, shows (and retrieves) only one frequency from the radio. While the steps above can be successfully performed with Rig Control, Rig Control itself will never read any other frequency than the selected VFO on the main band.

We have no prescriptive advice for how Satellite Tracking should work. My presumption is that Satellite Tracker drives VFO A and VFO B for the uplink and downlink of the satellite -- this is how other radios, like the FT-991A, work.

It seems like the IC-910H must work differently. If we manually set the radio to Satellite mode, the A/B switch does not work to change VFOs. M/S will swap the tuned frequencies (and bands) from the top to bottom display, and transmission always uses the bottom display (sub band) frequency.

Thus, it seems like using this radio with Satellite Tracker means that we'd programatically follow these steps:

1) Enter Satellite mode
2) If the uplink frequency is in the 2m band, then be sure the sub band is 2m. Otherwise, swap bands so that 70cm is in the sub band.
3) Tune the downlink frequency in the main band.
4) Tune the uplink frequency in the sub band.
5) Transmit at will -- which uses the sub band transmitter.

The Satellite Tracker app is able to compute doppler shift and do manual tuning, so it will adjust the uplink and downlink frequencies while transmission and reception are in progress. This means that the frequencies of those tuners must be settable without changing the selected transmitter or receiver.

The IC-910H manual is quite thin about controlling the radio; command numbers are given with only the most terse descriptions of the effect of the command. (In fact, there's no documentation of the data formats sent with each command.) It appears that we can directly write a frequency to either the main or sub band without affecting the transmission band or received band, but I need to do more tests to prove this.

We're left with several questions:

1) How are VFO A, VFO B, Main, and Sub meant to be represented in the Rig Control UI?
2) How are the four tunings meant to be represented through Rig Control's API to other apps, like Logbook and Satellite Tracker?
3) Should the radio always be set to "Satellite" mode when using Satellite Tracker? If so, how and when should that command be issued?
4) Is this the right approach, anyway? How is it expected to work?


2019-03-11 11:18

administrator   ~0007672

It seems like there's not too much we can do with VFO A and VFO B in this radio. The reason is that the radio doesn't implement commands to directly read or set the VFO B or Sub tuning frequencies. Instead, the radio must be set to VFO B or Sub, then the frequency queried, then the radio set back to the previous mode.

Newer radios, like the IC-7300 or IC-7610, provide two commands to read the radio's frequency. 0x03 reads the currently selected frequency. If the radio is in VFO A, 0x03 reports the VFO A frequency. If the radio is on VFO B, 0x03 reports the VFO B frequency. These radios also implement, however, command 0x23. This command accepts a parameter which specifies which tuner should be queried -- 0x2300 queries VFO A, and 0x2301 queries VFO B. Using this command, the second tuning can be retrieved without altering the radio's operating mode.

If we wrote code to try to retrieve the second tuner's frequency on the IC-910H, we'd have to do something like this:

1) send 0x03 to get the current operating frequency.
2) send 0x07D0 to set to "Main VFO"
3) send 0x03 to get the Main VFO frequency
4) send 0x07D1 to set to "Sub VFO"
5) send 0x03 to query the Sub VFO frequency.

6) If the main VFO frequency matches the operating frequency retrieved at Step #1, reset the radio to "Main VFO" by sending 0x07D0.

This is invasive; the user would constantly see the radio flashing "SUB" on and off when 0x07D1 was sent. If the user tried to transmit while the selections were switching back and forth, they'd not be pleased with the results.

I don't see any other commands that help with the radio's setting. I had hoped that satellite mode would allow better control, but it doesn't; the effect of the frequency query and set commands are unchanged.

Here's what I propose:

  1. We leave Rig Control itself unchanged. It displays only the currently accessible frequency -- whatever 0x03 returns. We can't have a dual frequency display because there's no command to access the alternate setting.

  2. Rig Control implements commands in its API to switch into and out of satellite mode.

  3. Rig Control implements commands to set and query the main/sub frequency, explicitly. That requires "bouncing" the 0x07D0 and 0x07D1 settings, as described above.

  4. Satellite Tracker uses the commands in #2 and #3 to read and update satellite frequencies while tracking a satellite.

This'll work, assuming that bouncing the Sub/Main mode doesn't disrupt transmission or reception. It doesn't appear to, but I don't have enough antennas (or dummy loads and meters) to tell for sure.


2019-03-11 15:25

administrator   ~0007673

It took a couple of hours, but I got 5.24 set up with the IC-910H. It appears to be doing what I suggest above: Rig Control shows only one frequency, but responds to tuning commands that carry two frequencies by setting one to the main and the other to the sub, even though doing so involves "bouncing" the main/sub setting. This is affirmed in the bug report here, where the ticket says "using v5.24.0.36 the "SUB" indicator periodically appears on the LCD display (this is normal -- it means that HRD is updating the sub band frequency)".

I found code which was changed in this change set:

that defeats setting the frequency of the second "sub" band for all radios except the IC-7100, 7300, 7600, 7610, 7700, and 7800. I've repaired that problem.

Removing that code causes the IC-910H to track the Satellite app correctly, as far as I can tell. Here's what I'm doing to test:

1) Start up Rig Control. Connect to an IC-910H.
2) Start up Satellite Tracker.
3) In Satellite Tracking, use the "Options" command in the "Tools" menu to reach the "Options" dialog
4) In the "Options" dialog, activate the "Radios" tab.
5) Make sure the "IC-910H in TX mode update Main and Sub Frequencies" box is marked
6) Close the Options dialog
7) In Satellite Tracking, click the "Next passes" button in the main tool bar.
8) Mark the "Elevation" button in the "Passes" dialog to show elevation graphs
9) Double-click the first visible satellite. Whatever it is is fine -- we just want a "visible" satellite to track
10) In the resulting tab for that satellite, click hte "Tuning Dial" button
11) It's possible that the selected satellite is just a beacon. We won't communicate with it, but want to track both TX and RX frequencies. Press the "FREQ" button in the tuning dial bar.
12) Mark "Repeater / Split" in the "Frequency" tab of the satellite's properties
13) Close the satellite properties window
14) In the tuning bar, mark the box next to "RX" and the box next to "RX", too.

At this point, Satellite Tracking should be updating Rig Control with the shifting frequencies for the satellite. The "SUB" icon on the radio will flicker, and the radio will be difficult (impossible?) to control with its front panel because Rig Control is monopolizing its time.

However, the main frequency will update to follow "RX" and the sub frequency will update to follow "TX".


2019-03-11 15:26

administrator   ~0007674

fixed with this checkin:


2019-03-27 14:39

administrator   ~0007779

Validated (Thanks Mike... this is a big win for folks who use this rig.)

Issue History

Date Modified Username Field Change
2016-04-07 08:49 KB3NPH New Issue
2018-03-04 00:55 WA9PIE Status new => assigned
2018-03-04 00:55 WA9PIE Assigned To => NW7US
2018-03-04 00:56 WA9PIE Project 2 - Next Dev List (Holding Area) => 3 - Current Dev List
2018-03-04 00:56 WA9PIE Testing => Not Started
2019-02-25 21:43 WA9PIE Relationship added related to 0000580
2019-02-26 17:31 WA9PIE Assigned To NW7US => K7ZCZ
2019-03-05 22:08 K7ZCZ Note Added: 0007582
2019-03-09 18:40 K7ZCZ Note Added: 0007653
2019-03-11 11:18 K7ZCZ Note Added: 0007672
2019-03-11 15:25 K7ZCZ Note Added: 0007673
2019-03-11 15:26 K7ZCZ Status assigned => resolved
2019-03-11 15:26 K7ZCZ Resolution open => fixed
2019-03-11 15:26 K7ZCZ Note Added: 0007674
2019-03-11 15:30 K7ZCZ Tag Attached: IC-910H
2019-03-11 15:30 K7ZCZ Tag Attached: ICOM
2019-03-12 22:19 K7ZCZ Fixed in Version =>
2019-03-21 15:05 K7ZCZ Relationship added has duplicate 0001863
2019-03-27 14:39 WA9PIE Status resolved => closed
2019-03-27 14:39 WA9PIE Testing Not Started => Beta Successful
2019-03-27 14:39 WA9PIE Note Added: 0007779
2019-03-31 11:13 WA9PIE Fixed in Version =>
2019-03-31 11:13 WA9PIE Project 3 - Current Dev List => Ham Radio Deluxe