<div dir="ltr">This driver is very similar to the TH9800 driver.  The memory map is slightly different, the features differ a bit, and the upload/download sequence is slightly different.<div><br></div><div>I started discussing a refactor with the TH9800 authors.  They seem like a good bunch of guys.  Unfortunately I don&#39;t have access to a TH7800 radio anymore and I don&#39;t have a TH9800.  I didn&#39;t want to destabilize the TH9800 or break what I had for the TH7800 by refactoring much at this point.</div><div><br></div><div><span style="font-size:12.8px">&gt; Hmm, why is this copied into the driver?</span><br style="font-size:12.8px">&gt;<br style="font-size:12.8px"><span style="font-size:12.8px">&gt; &gt; +        add_radio_setting(basic, &quot;apo&quot;, &quot;Auto Power off (Hours)&quot;,</span><br style="font-size:12.8px"><span style="font-size:12.8px">&gt; &gt; +                          [(&quot;Off&quot;, 0), (&quot;0.5&quot;, 5), (&quot;1.0&quot;, 10), (&quot;1.5&quot;, 15), (&quot;2.0&quot;, 20)],</span><br style="font-size:12.8px"><span style="font-size:12.8px">&gt; &gt; +                          _settings.apo)</span><br></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">I&#39;m sorry, I don&#39;t understand your question.  FWIW, APO is a feature that was broken in the TH9800 and I&#39;ve fixed it in the TH7800.  I planned to show the TH7800 authors how I&#39;ve fixed it.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">There are probably a few things we could discuss about the driver.  I almost forgot about the comments I added about &quot;common code&quot; that could potentially be moved to a different module for all to use.  You&#39;re probably the right person to talk to about that.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">I can run the pep8 tester - hadn&#39;t done that.  I&#39;m sure I can break the lines before 80 columns.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">The tests pass with the driver.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Regards,</span></div><div><span style="font-size:12.8px">Nathan</span></div><div><span style="font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jun 8, 2016 at 8:28 AM, Dan Smith via chirp_devel <span dir="ltr">&lt;<a href="mailto:chirp_devel@intrepid.danplanet.com" target="_blank">chirp_devel@intrepid.danplanet.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Nathan,<br>
<span class=""><br>
&gt; This is my first submission to the project.  Hopefully I&#39;m following the<br>
&gt; process well enough.  I tested this driver fairly thoroughly with the<br>
&gt; radio when I had it, but no longer have access to it.<br>
<br>
</span>Cool, thanks!<br>
<span class=""><br>
&gt; Wasn&#39;t sure how to include the binary file for unit tests, which I ran.<br>
&gt; I attached it to this email.<br>
<br>
</span>Just attaching it here is okay. It would be even better to attach it to<br>
the ticket, because it doesn&#39;t get sent to all the subscribers and it&#39;s<br>
kind of archived with the request.<br>
<br>
&gt; # HG changeset patch<br>
&gt; # User Nathan Crapo &lt;<a href="mailto:nathan@n4nc3o.com">nathan@n4nc3o.com</a>&gt;<br>
&gt; # Date 1465334892 21600<br>
&gt; #      Tue Jun 07 15:28:12 2016 -0600<br>
&gt; # Node ID 2f356864c55f674a6faf157d7e13868e5275cf72<br>
&gt; # Parent  333a280ca0c4e856258ebf9dfdb7c547fa9ec90c<br>
&gt; Adding support for TYT TH-7800.  Fixes #3477.<br>
&gt;<br>
&gt; diff -r 333a280ca0c4 -r 2f356864c55f chirp/drivers/th7800.py<br>
&gt; --- /dev/null Thu Jan 01 00:00:00 1970 +0000<br>
&gt; +++ b/chirp/drivers/th7800.py Tue Jun 07 15:28:12 2016 -0600<br>
&gt; @@ -0,0 +1,780 @@<br>
&gt; +# Copyright 2014 Tom Hayward &lt;<a href="mailto:tom@tomh.us">tom@tomh.us</a>&gt;<br>
&gt; +# Copyright 2014 Jens Jensen &lt;<a href="mailto:af5mi@yahoo.com">af5mi@yahoo.com</a>&gt;<br>
&gt; +# Copyright 2014 James Lee N1DDK &lt;<a href="mailto:jml@jmlzone.com">jml@jmlzone.com</a>&gt;<br>
&gt; +# Copyright 2016 Nathan Crapo &lt;<a href="mailto:nathan@n4nc3o.com">nathan@n4nc3o.com</a>&gt;  (TH-7800 only)<br>
<br>
Is this a near copy of another radio? Is it significantly different such<br>
that making them share a common base is not feasible?<br>
<br>
&gt; +# --------------- Common Code ---------------<br>
&gt; +<br>
&gt; +# This section should go somewhere common like settings.py.  Keep it here for<br>
&gt; +# now until other developers review and accept or reject it.<br>
&gt; +class RadioSettingValueMap(RadioSettingValueList):<br>
<br>
Hmm, why is this copied into the driver?<br>
<br>
&gt; +        add_radio_setting(basic, &quot;apo&quot;, &quot;Auto Power off (Hours)&quot;,<br>
&gt; +                          [(&quot;Off&quot;, 0), (&quot;0.5&quot;, 5), (&quot;1.0&quot;, 10), (&quot;1.5&quot;, 15), (&quot;2.0&quot;, 20)],<br>
&gt; +                          _settings.apo)<br>
<br>
Can you break these lines before 80 columns? There is a pep8 tester in<br>
the tree (ideally, just run run_all_tests.sh) to validate the style.<br>
<br>
I didn&#39;t apply this to run the tests, but I assume they all pass with this?<br>
<br>
Thanks!<br>
<br>
--Dan<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" rel="noreferrer" target="_blank">http://intrepid.danplanet.com/mailman/listinfo/chirp_devel</a><br>
Developer docs: <a href="http://chirp.danplanet.com/projects/chirp/wiki/Developers" rel="noreferrer" target="_blank">http://chirp.danplanet.com/projects/chirp/wiki/Developers</a><br>
</blockquote></div><br></div>