Open ZeroChaos- opened 5 years ago
Update: I have literally no idea how the original CPS knows which of the three ranges the radio is set to, and I have no idea what altering it will do to the windows cps. I used the words "incompatible with unmodified windows cps" but more likely the cps will not pop any kind of error and just generally behave poorly
When I open a modified code plug that has incompatible ranges in it, the cps seems to think I'm no longer a UHF radio, so I guess it defaults to setting 0 which is the default VHF range. The codeplug opens and reads correctly, but any attempt to adjust a frequency forces it to be reset to a VHF frequency. Interestingly I can still make other changes to channels, like toggling rx only
I have tested this on md380/md390.
Recently, I randomly opened up settings.ini on the windows CPS and came across the following:
I found it interesting that it seemed to be encoding the limits of the radio, and thought it might be fun to open it up. So I added:
Then I edited a codeplug to change that key value in the header to match my newly opened setting and pushed it to the radio. After this, I was able to program in all the frequencies I wanted with no issues (I wanted to use my hotspot on 433 and listen to the public safety on 49X).
I believe this should be incorporated into your software in the following two ways:
1.) When creating a new empty code plug (if supported), this full range should be offered as an option; with a pop-up warning that it will make it incompatible with unmodified windows cps. 2.) Since there is no need to clear the radio to widen the supported frequencies, there should be an option to switch from any/all of the currently offered frequency ranges to this one, again with a pop-up warning that doing so will be incompatible with unmodified windows cps.
You could go futher, and allow user specified ranges if desired. I didn't try to set the radio out of this range, as that's all it's been calibrated for, and I don't think it would be wise to do so, but you could allow a user to set any range inside 350-520, like 351-412, for whatever reason.