Hi,
I think I figured out the "chirp" method for dealing with differing memory layouts between radios withing the same driver.
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 "#seekto 0x%04X;" 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.
I've tested these changes with my VX-8R and the test image Yaesu_VX-8_R.img. This leads to a quandry.
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'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't result in a change to the _model for the radio.
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's as VX-8DR's.
Can anyone supply an image for a true VX-8DR so that I can test that my code changes for the VX8DRadio class?
Thanks in advance!
73's,
KeithKF7DRV
On Fri, Jun 2, 2017 at 6:16 PM, Keith Williamson <hkwilliamson@gmail.com> wrote:
Hi,
I'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.
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.
I'd like to contribute the changes back but I'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?
73's,
KeithKF7DRV
_______________________________________________ chirp_devel mailing list chirp_devel@intrepid.danplanet.com http://intrepid.danplanet.com/mailman/listinfo/chirp_devel Developer docs: http://chirp.danplanet.com/projects/chirp/wiki/Developers