<div dir="ltr"><div><div><div>Eric,<br><br></div>Don't use .CSV files. Use .IMG files. You can import .IMG files just like .CSV files and your power levels, duplex settings, etc will be retained.<br><br></div>Another thing that might help is the "Edit Multiple Memories" dialog. Say you have a zone with 20 channels that need TX locked out. Highlight all 20 of those rows (use ctrl-click, shift-click, etc.) then right-click one of them. Choose Edit at the dialog box that appears. Now with the Edit Multiple Memories editor showing, you can set Duplex=off on all 20 rows at once.<br><br></div>Jim KC9HI<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 8, 2014 at 9:39 PM, Eric Vought <span dir="ltr"><<a href="mailto:evought@pobox.com" target="_blank">evought@pobox.com</a>></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 style="font-family:arial,sans-serif;font-size:13px">If this ends up being a duplicate post, I apologize: I never got a copy back from the list server.</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I would like to programatically combine multiple stock configs, potentially manipulating them as I go. Failing that, I need to be able to at least modify duplex settings across an entire config at one go rather than having to toggle the settings for each channel entry.</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Here is what I am trying to do:</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I have a number of .csv files defining different zones for channel settings. For example, I have, a zone for regional interoperability, a zone for local law enforcement, local fire, etc., a zone for NIFOG Interoperability channels, a zone for GMRS, a zone for regional ARES/Skywarn channels, one for channels used by CERT and other local groups, etc. I store those zone files as stock configs for building a laydown for a specific radio and specific user.</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Specific users will need some zones in their laydown and not others. More problematically, different users may be *licensed* for some services and not others. Generally it is not a problem to monitor the channels they are not licensed for, but I have to lock out transmit. For example, a user is licensed for local Part 90 public service but not amateur radio or vice-versa. So, when I build their laydown, I bring in the zones they need from stock configs but I either need to build two files for each zone (and worry that they will lose sync over time) or I have to manually toggle Duplex=off in each channel in every service they do not have access to. This gets to be a bit of a pain. I also need to make some individualized settings for each user (e.g. call-sign to come up at startup).</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">As Chirp is written in Python, is there an internal API available to do this kind of manipulation? Is that API at all documented or stable? Ideally, I would like to write a script which will do something like (pseudocode):</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.import("ZoneA.csv", 0);</div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.import("ZoneB.csv", 30, monitor);</div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.import("ZoneF.csv", 100, monitor);</div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.import("ZoneN.csv", 190, monitor);</div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.set("startup_message", callsign);</div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.set("lock_pin", pin);<br></div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.set("primary_channel", primaryChannel);<br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"># ...etc...</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">newWouxunLaydown.write(outputFile);</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I can then create a script for each common configuration and when, for instance, ZoneB gets updated, just run the scripts to rebuild the laydowns. In theory I could even version control the .csv s for the zones and the scripts, stick them on a server, and then reuse them between local agencies (the end goal).</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Is this a fantasy?</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Somehow going from there to pretty-printing quick-reference cards for each user would be nice, too... :-)</div></div>
<br>_______________________________________________<br>
chirp_users mailing list<br>
<a href="mailto:chirp_users@intrepid.danplanet.com">chirp_users@intrepid.danplanet.com</a><br>
<a href="http://intrepid.danplanet.com/mailman/listinfo/chirp_users" target="_blank">http://intrepid.danplanet.com/mailman/listinfo/chirp_users</a><br>
<br></blockquote></div><br></div>