<div dir="ltr"><div><div><div><div>Hi, <br><br></div>Attached is a patch for adding settings to the VX-8. Also attached are image files for each model. Thanks to Ray and Rob for supplying images for the VX-8GR and VX-8DR. <br></div>All tests against each of the three models are successful and now include Settings. <br><br>Note that there are now three distinct VX-8 models in the pull-down menu for Yaesu. I couldn&#39;t get things to work simply using VARIANT but perhaps I&#39;m missing something (Chirp noob). <br>Perhaps also there was already an issue with the VARIANT mechanism in the current driver. With the current driver, when I would download from my stock VX-8R, I would get traceback errors <br>and then a blank Settings menu even though _has_settings was False for the base VX8Radio class. It was obvious that the VX8DRadio class functions were getting called even though <br>the radio was a stock VX-8R (AH029). The only way I could get this behaviour to stop was to delete the VARIANT and change each radio MODEL from VX-8 to VX-8R, VX-8DR, and VX-8GE<br></div><div>respectively. <br></div><div><br></div><div>The patch is somewhat lengthy due to the fact that I promoted most of the VX8DRadio class functions to the VX8Radio base class. This left the VX8DRadio class with just functions that were<br></div><div>somewhat different for the VX-8DR and VX-8GE (e.g. _get_aprs_tx_settings) or unique to the VX-8DR and VX-8GE (e.g. _get_aprs_smartbeacon). <br></div></div><div><br></div><div>Hopefully, I haven&#39;t introduced any PEP-8 violations..PyCharm is pretty good at yelling at me about those. Please review and feel free to toss the whole thing if it&#39;s felt that I&#39;m off base <br></div><div>on this approach. <br><br></div><div>73&#39;s,<br><br></div><div>Keith<br></div><div>KF7DRV<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jun 4, 2017 at 4:39 PM, Keith Williamson <span dir="ltr">&lt;<a href="mailto:hkwilliamson@gmail.com" target="_blank">hkwilliamson@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Hi Ray,<br><br></div>Yes, I would love to have a VX-8GR image also!<br><br></div>Thanks,<br><br></div>Keith<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jun 4, 2017 at 3:01 PM, ray c <span dir="ltr">&lt;<a href="mailto:rayslinky@gmail.com" target="_blank">rayslinky@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>FWIW, my VX-8GR identifies as AH041. I did a factory reset and took an image of it. It&#39;s not a DR, but I&#39;d be happy to send it to you.<br><br></div>ray<br></div>AC1BC<br></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="m_-853180241765006125h5">On Sun, Jun 4, 2017 at 4:59 PM, Keith Williamson via chirp_devel <span dir="ltr">&lt;<a href="mailto:chirp_devel@intrepid.danplanet.com" target="_blank">chirp_devel@intrepid.danplane<wbr>t.com</a>&gt;</span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="m_-853180241765006125h5"><div dir="ltr">Hi,<div><br></div><div>I think I figured out the &quot;chirp&quot; method for dealing with differing memory layouts between radios withing the same driver. </div><div><br></div><div>I split the aprs struct into a shorter aprs struct, followed by a aprs_msg_macro[%d] struct, and an aprs2 struct. I prepended both the aprs_msg_macro[%d] struct and the aprs2 struct with &quot;#seekto 0x%04X;&quot; I then computed the beginning address of the aprs_msg_macro[%d] struct and added the starting address and number of message macros to the _mem_params for both the VX8Radio and VX8DRadio classes. I also computed the beginning address of the aprs2 struct and added those to the _mem_params for both radio classes. </div><div><br></div><div>I&#39;ve tested these changes with my VX-8R and the test image Yaesu_VX-8_R.img. This leads to a quandry. </div><div><br></div><div>Reading back through the archived messages from around 2013, I see that when the Settings support was added for the VX-8DR, the conclusion at the time was that Settings would not be supported for the stock VX-8R due to lack of a radio to test with. It was felt that most everyone would have sent their VX-8R&#39;s in for the Yaesu upgrade that added the enhanced memory and APRS support of the VX-8DR. Unfortunately, I was asleep at the switch and was unaware of that opportunity until it was no longer offered. I would have jumped on that given that APRS was one of my major drivers for buying the VX-8R in the first place. Bummer..would have definitely liked to have smart beaconing. Anyway, inspecting the Yaesu_VX-8_R.img memory, I see that it is an AH029 that appears to have come from Dan who I remember from the archives had gotten his upgraded through the Yaesu program. So, apparently, the upgrade didn&#39;t result in a change to the _model for the radio. </div><div><br></div><div>Does anybody know of a way to disambiguate between a stock VX-8R and an upgraded one? I need to be able to support upgraded VX-8R&#39;s as VX-8DR&#39;s. </div><div><br></div><div>Can anyone supply an image for a true VX-8DR so that I can test that my code changes for the VX8DRadio class?</div><div><br></div><div>Thanks in advance!</div><div><br></div><div>73&#39;s,</div><div><br></div><div>Keith</div><div>KF7DRV</div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jun 2, 2017 at 6:16 PM, Keith Williamson <span dir="ltr">&lt;<a href="mailto:hkwilliamson@gmail.com" target="_blank">hkwilliamson@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">Hi,</span><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">I&#39;m trying to add support for Settings for the original VX-8R. I just recently have been switching over to chirp for all of my radios and was surprised to find that the Settings tab was empty after downloading from my VX-8R. After a few modifications to the vx8.py driver, I have settings coming up properly for my radio but have doubtless broken support for the VX-8DR. </div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">The VX8-DR has expanded APRS features such as SmartBeaconing, more Message Macros, more DigiPaths, etc. These affect the memory layout some. To fix it (temporarily), I corrected the memory layout to align with the VX-8R and commented out the calls that referenced the now missing memory elements. </div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">I&#39;d like to contribute the changes back but I&#39;m not sure how to handle support for both the VX-8R and VX-8DR (and VX-8GER). With differences in memory layout, should the VX-8R have a separate driver or can the memory layout differences be somehow accommodated within the same driver?</div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">73&#39;s,</div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">Keith</div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px">KF7DRV</div><div style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;font-size:12.8px"><br></div></div>
</blockquote></div><br></div>
<br></div></div><span>______________________________<wbr>_________________<br>
chirp_devel mailing list<br>
<a href="mailto:chirp_devel@intrepid.danplanet.com" target="_blank">chirp_devel@intrepid.danplanet<wbr>.com</a><br>
<a href="http://intrepid.danplanet.com/mailman/listinfo/chirp_devel" rel="noreferrer" target="_blank">http://intrepid.danplanet.com/<wbr>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/pro<wbr>jects/chirp/wiki/Developers</a><br></span></blockquote></div><br></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>