Alright, updated patch with passing tests. Turns out it *does* support fractional frequencies, but using a shifted BCD. I also brought in the band edges to what this thing supports when you do the software switch to wide RX.
I checked the tuning steps. This Icom doesn't store the step, as verified by diffing memory dumps and trying it out on the radio.
On Tue, Jul 17, 2012 at 9:32 AM, Dan Smith dsmith@danplanet.com wrote:
Updated patch with copyright changes and hg export format. I've also attached an image file from my T7H.
Cool, thanks.
Tests are failing like crazy, I think because of fractional frequencies, which AFAIK the T7H doesn't support. I'll take a look later this week.
Yep, see below.
+STEPS = [5.0, 10.0, 12.5, 15.0, 20.0, 25.0, 30.0, 50.0]
<snip>
- def get_features(self):
rf = chirp_common.RadioFeatures()
rf.memory_bounds = (0, 59)
rf.valid_modes = list(MODES)
rf.valid_tmodes = list(TMODES)
rf.valid_duplexes = list(DUPLEX)
rf.valid_bands = [( 30000000, 823995000),
(849000000, 868995000),
(894000000, 1309995000)]
One of the tests is trying to set the claimed top-end frequency of 1309MHz and getting back 309MHz. If the radio really supports this, then something isn't right in the driver to store/fetch that value.
rf.valid_skips = ["", "S"]
You define STEPS above, but don't tell CHIRP what they are. If you do that, then the tests won't try to set frequencies that require 6.25 and 12.5 kHz steps. This will cause all of the tests (other than the one mentioned above) to pass.
rf.has_tuning_step = False
Note that all Icoms I've ever seen store the tuning step in the memory channels. I don't know why they do this (other than to support tuning off of a memory) but they do. It's fine if that one doesn't, or if you don't want to support it, but all of the other Icom drivers do, just FYI.
Thanks!
-- Dan Smith www.danplanet.com KK7DS
chirp_devel mailing list chirp_devel@intrepid.danplanet.com http://intrepid.danplanet.com/mailman/listinfo/chirp_devel