Alright, updated patch with passing tests. Turns out it <i>does</i> 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.<div>
<br></div><div>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.<br><br><div class="gmail_quote">On Tue, Jul 17, 2012 at 9:32 AM, Dan Smith <span dir="ltr"><<a href="mailto:dsmith@danplanet.com" target="_blank">dsmith@danplanet.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">> Updated patch with copyright changes and hg export format. I've also<br>
> attached an image file from my T7H.<br>
<br>
</div>Cool, thanks.<br>
<div class="im"><br>
> Tests are failing like crazy, I think because of fractional frequencies,<br>
> which AFAIK the T7H doesn't support. I'll take a look later this week.<br>
<br>
</div>Yep, see below.<br>
<br>
> +STEPS = [5.0, 10.0, 12.5, 15.0, 20.0, 25.0, 30.0, 50.0]<br>
<br>
<snip><br>
<br>
> + def get_features(self):<br>
> + rf = chirp_common.RadioFeatures()<br>
> + rf.memory_bounds = (0, 59)<br>
> + rf.valid_modes = list(MODES)<br>
> + rf.valid_tmodes = list(TMODES)<br>
> + rf.valid_duplexes = list(DUPLEX)<br>
> + rf.valid_bands = [( 30000000, 823995000),<br>
> + (849000000, 868995000),<br>
> + (894000000, 1309995000)]<br>
<br>
One of the tests is trying to set the claimed top-end frequency of<br>
1309MHz and getting back 309MHz. If the radio really supports this, then<br>
something isn't right in the driver to store/fetch that value.<br>
<br>
> + rf.valid_skips = ["", "S"]<br>
<br>
You define STEPS above, but don't tell CHIRP what they are. If you do<br>
that, then the tests won't try to set frequencies that require 6.25 and<br>
12.5 kHz steps. This will cause all of the tests (other than the one<br>
mentioned above) to pass.<br>
<br>
> + rf.has_tuning_step = False<br>
<br>
Note that all Icoms I've ever seen store the tuning step in the memory<br>
channels. I don't know why they do this (other than to support tuning<br>
off of a memory) but they do. It's fine if that one doesn't, or if you<br>
don't want to support it, but all of the other Icom drivers do, just FYI.<br>
<div class="HOEnZb"><div class="h5"><br>
Thanks!<br>
<br>
--<br>
Dan Smith<br>
<a href="http://www.danplanet.com" target="_blank">www.danplanet.com</a><br>
KK7DS<br>
<br>
<br>
<br>
</div></div><br>_______________________________________________<br>
chirp_devel mailing list<br>
<a href="mailto:chirp_devel@intrepid.danplanet.com">chirp_devel@intrepid.danplanet.com</a><br>
<a href="http://intrepid.danplanet.com/mailman/listinfo/chirp_devel" target="_blank">http://intrepid.danplanet.com/mailman/listinfo/chirp_devel</a><br>
<br></blockquote></div><br></div>