Developers
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- 1 participants
- 2965 discussions
Tested changes:
[Dan Smith <dsmith(a)danplanet.com>] Add test image for Alinco DJ-G7
Related to #699
[Mathias Weyland <lt-betrieb(a)hb9uf.ch>] Add support for Alinco DJ-G7EG. Partially addresses #699
This patch adds basic support for the DJ-G7EG. The patch was tested on
Linux and Windows 7 and can reliably download memories from, and upload
memories to the radio. Other flavours of the DJ-G7 are not supported
yet because I don't know whether they use the same memory map or not.
The patch introduces a new class to the alinco.py driver. This is some-
what unfortunate because the radios supported by alinco.py so far are
all quite similar. The DJ-G7EG is considerably more different from the
others, yet still sufficiently similar to re-use some of the methods
implemented in AlincoStyleRadio. I'll leave it up to the reviewers to
comment on that. Code that might be of particular interest to reviewers
is marked with "FIXME" comments.
The patch does not support changing bank assignments, groups, and/or
radio settings. I am planning to add dynamic bank assignements as soon
as I have figured out how to do this best with Chirp.
[Tyler Tidman <tyler.tidman(a)draak.ca>] Minor PEP8 cleanup for some drivers. Fixes #4161.
[Tom Hayward <tom(a)tomh.us>] [id880] Fix typo in charset definition. #281
[Tom Hayward <tom(a)tomh.us>] [thf6a] Support full charset (ASCII). Fixes #141
[Tom Hayward <tom(a)tomh.us>] [id880] Support full charset. Fixes #281
[Tom Hayward <tom(a)tomh.us>] [vx5] Support full charset (ASCII). Fixes #292
[Tom Hayward <tom(a)tomh.us>] [id31a] set used bit when creating new memory, clear when deleting. Fixes #269
[Tom Hayward <tom(a)tomh.us>] Support PyGTK < 2.22 in bank edit. Fixes #231
[Tom Hayward <tom(a)tomh.us>] [d710] [v71] [d72] Fix tone list (not all tones are supported). Fixes #212
[Dan Smith <dsmith(a)danplanet.com>] [vx7] Fix setting memory power levels on 220MHz band
Fixes #214
[Dan Smith <dsmith(a)danplanet.com>] fips: Pennsylvania FIPS code was wrong. #117
[Marco Filippi <iz3gme.marco(a)gmail.com>] Consider lower bound frequency of each valid_band as valid
Fix bug #181
[Tom Hayward <tom(a)tomh.us>] tmd700: allow 8-char names. Fixes #176
[Dan Smith <dsmith(a)danplanet.com>] Fix the "blind deletion" problem, as well as properly direct copy/paste
Fixes #172
[David Griffith <dave(a)661.org>] Bug #155 fix: VX-7 1.25m power levels
[David Griffith <dave(a)661.org>] New INSTALL and README files
Fixes #122
[Tom Hayward <tom(a)tomh.us>] thd72: only use hardware flow on OS X. Fixes #166
[Marco Filippi <iz3gme.marco(a)gmail.com>] [FT817] Tone freq not set correctly
Same as #88 for FT857, to avoid code duplication fix code have been moved from
ft857 to its ancestor class
Fix bug #163
[Tom Hayward <tom(a)tomh.us>] Fix Mac .app so paths with spaces work. Fixes Bug #145
Full log:
Started by an SCM change
Building in workspace /var/lib/jenkins/jobs/chirp-test/workspace
[workspace] $ hg showconfig paths.default
[workspace] $ hg pull --rev default
[workspace] $ hg update --clean --rev default
12 files updated, 0 files merged, 0 files removed, 0 files unresolved
[workspace] $ hg log --rev . --template {node}
[workspace] $ hg log --rev . --template {rev}
[workspace] $ hg log --rev dbf1814476cd964c4042689205064df7a9b72a26
[workspace] $ hg log --template "<changeset node='{node}' author='{author|xmlescape}' rev='{rev}' date='{date}'><msg>{desc|xmlescape}</msg><added>{file_adds|stringify|xmlescape}</added><deleted>{file_dels|stringify|xmlescape}</deleted><files>{files|stringify|xmlescape}</files><parents>{parents}</parents></changeset>\n" --rev default:0 --follow --prune dbf1814476cd964c4042689205064df7a9b72a26
No emails were triggered.
[workspace] $ /bin/sh -xe /tmp/hudson1004350116725297011.sh
[workspace] $ /bin/sh -xe /tmp/hudson3456170407611306121.sh
+ PATH=/usr/bin:/bin:/usr/local/bin ./run_all_tests.sh
test_bit_array (tests.unit.test_bitwise.TestBitType) ... ok
test_bit_array_fail (tests.unit.test_bitwise.TestBitType) ... ok
test_bitfield_u16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u8 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_bbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_int_array (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u8 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_char (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_invalid_chars (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_wrong_length (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_comment_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_comment_inline_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_missing_semicolon (tests.unit.test_bitwise.TestBitwiseErrors) ... ok
test_seek (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_seekto (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_struct_one_element (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_two_elements (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_writes (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
split_tone_encode_test_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_fix_rounded_step_250 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_500 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_750 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_12_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_2_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_5_0 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_6_25 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_fractional_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step_fail (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_format_freq (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_bad (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_decimal (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whitespace (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whole (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_ensure_has_calls_almost_full (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_empty (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_partial (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full1 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full2 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_urcall_full (tests.unit.test_import_logic.DstarTests) ... ok
test_import_bank (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffA_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffB_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_negative (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_too_big_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_uhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_errors (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_warnings (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_invalid (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_am (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_fm (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_name (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_closest (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_dst (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_src (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_same (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffA_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffB_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModelIndexInterface) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_icom_bank (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_index_bounds (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_next_mapping_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_auto_tone_mode_cross (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_pol (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_rx (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tone (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tsql (tests.unit.test_memedit_edits.TestEdits) ... ok
test_init (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_bad_portnames (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_sorted (tests.unit.test_platform.Win32PlatformTest) ... ok
test_apply_callback (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_group (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_multi (tests.unit.test_settings.TestSettingContainers) ... ok
test_changed (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_boolean (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_float (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_integer (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_list (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_string (tests.unit.test_settings.TestSettingValues) ... ok
test_validate_callback (tests.unit.test_settings.TestSettingValues) ... ok
test_delete_hole_with_all (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_all_full (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_without_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_with_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_without_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
----------------------------------------------------------------------
Ran 151 tests in 0.054s
OK
Patch 'tip' is OK
Checking for PEP8 regressions...
./chirp/drivers/alinco.py:595:1: E302 expected 2 blank lines, found 1
./chirp/drivers/alinco.py:603:80: E501 line too long (114 > 79 characters)
./chirp/drivers/alinco.py:608:26: E261 at least two spaces before inline comment
./chirp/drivers/alinco.py:608:80: E501 line too long (84 > 79 characters)
./chirp/drivers/alinco.py:616:26: E222 multiple spaces after operator
./chirp/drivers/alinco.py:718:80: E501 line too long (89 > 79 characters)
./chirp/drivers/alinco.py:736:32: E261 at least two spaces before inline comment
./chirp/drivers/alinco.py:749:80: E501 line too long (86 > 79 characters)
./chirp/drivers/alinco.py:750:47: E128 continuation line under-indented for visual indent
./chirp/drivers/alinco.py:754:80: E501 line too long (86 > 79 characters)
./chirp/drivers/alinco.py:755:47: E128 continuation line under-indented for visual indent
./chirp/drivers/alinco.py:758:80: E501 line too long (81 > 79 characters)
./chirp/drivers/alinco.py:763:80: E501 line too long (86 > 79 characters)
./chirp/drivers/alinco.py:764:47: E128 continuation line under-indented for visual indent
./chirp/drivers/alinco.py:770:80: E501 line too long (86 > 79 characters)
./chirp/drivers/alinco.py:771:47: E128 continuation line under-indented for visual indent
./chirp/drivers/alinco.py:775:80: E501 line too long (86 > 79 characters)
./chirp/drivers/alinco.py:776:47: E128 continuation line under-indented for visual indent
./chirp/drivers/alinco.py:779:55: E231 missing whitespace after ','
real 0m7.761s
user 0m7.612s
sys 0m0.072s
================================================
Tests OK
+ cat /var/lib/jenkins/.chirp/debug.log
[2016-11-15 14:33:19,388] chirp.logger - DEBUG: CHIRP 0.3.0dev on Linux - Ubuntu 16.04.1 LTS (Python 2.7.12)
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TH-D7 = THD7Radio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TH-D7G = THD7GRadio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TM-D700 = TMD700Radio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TM-V7 = TMV7Radio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TM-G707 = TMG707Radio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TH-G71 = THG71Radio
[2016-11-15 14:33:21,106] chirp.directory - INFO: Registered Kenwood_TH-F6 = THF6ARadio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TH-F7 = THF7ERadio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-D710 = TMD710Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TH-D72_live_mode = THD72Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-V71 = TMV71Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-D710G = TMD710GRadio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TH-K2 = THK2Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-271 = TM271Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-281 = TM281Radio
[2016-11-15 14:33:21,107] chirp.directory - INFO: Registered Kenwood_TM-471 = TM471Radio
[2016-11-15 14:33:21,108] chirp.directory - INFO: Registered Icom_7200 = Icom7200Radio
[2016-11-15 14:33:21,108] chirp.directory - INFO: Registered Icom_IC-7000 = Icom7000Radio
[2016-11-15 14:33:21,108] chirp.directory - INFO: Registered Icom_IC-7100 = Icom7100Radio
[2016-11-15 14:33:21,108] chirp.directory - INFO: Registered Icom_746 = Icom746Radio
[2016-11-15 14:33:21,109] chirp.directory - INFO: Registered Alinco_DR03T = DR03Radio
[2016-11-15 14:33:21,109] chirp.directory - INFO: Registered Alinco_DR06T = DR06Radio
[2016-11-15 14:33:21,109] chirp.directory - INFO: Registered Alinco_DR135T = DR135Radio
[2016-11-15 14:33:21,109] chirp.directory - INFO: Registered Alinco_DR235T = DR235Radio
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered Alinco_DR435T = DR435Radio
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered Alinco_DJ596 = DJ596Radio
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered Jetstream_JT220M = JT220MRadio
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered Alinco_DJ175 = DJ175Radio
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered Alinco_DJ-G7EG = AlincoDJG7EG
[2016-11-15 14:33:21,110] chirp.directory - INFO: Registered AnyTone_5888UV = AnyTone5888UVRadio
[2016-11-15 14:33:21,111] chirp.directory - INFO: Registered Intek_HR-2040 = IntekHR2040Radio
[2016-11-15 14:33:21,111] chirp.directory - INFO: Registered Polmar_DB-50M = PolmarDB50MRadio
[2016-11-15 14:33:21,111] chirp.directory - INFO: Registered Powerwerx_DB-750X = PowerwerxDB750XRadio
[2016-11-15 14:33:21,111] chirp.directory - INFO: Registered AnyTone_TERMN-8R = AnyToneTERMN8RRadio
[2016-11-15 14:33:21,111] chirp.directory - INFO: Registered AnyTone_OBLTR-8R = AnyToneOBLTR8RRadio
[2016-11-15 14:33:21,113] chirp.directory - INFO: Registered Baofeng_UV-3R = UV3RRadio
[2016-11-15 14:33:21,113] chirp.directory - INFO: Registered Baofeng_BF-A58 = BFA58
[2016-11-15 14:33:21,113] chirp.directory - INFO: Registered Baofeng_UV-82WP = UV82WP
[2016-11-15 14:33:21,113] chirp.directory - INFO: Registered Baofeng_GT-3WP = GT3WP
[2016-11-15 14:33:21,113] chirp.directory - INFO: Registered Retevis_RT6 = RT6
[2016-11-15 14:33:21,114] chirp.directory - INFO: Registered Baojie_BJ-9900 = BJ9900Radio
[2016-11-15 14:33:21,114] chirp.directory - INFO: Registered Baofeng_UV-5R = BaofengUV5RGeneric
[2016-11-15 14:33:21,114] chirp.directory - INFO: Registered Baofeng_F-11 = BaofengF11Radio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Baofeng_UV-82 = BaofengUV82Radio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Baofeng_UV-6 = BaofengUV6Radio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Intek_KT-980HP = IntekKT980Radio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Baofeng_BF-F8HP = BaofengBFF8HPRadio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Baofeng_UV-82HP = BaofengUV82HPRadio
[2016-11-15 14:33:21,115] chirp.directory - INFO: Registered Baojie_BJ-UV55 = BaojieBJUV55Radio
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered BTECH_UV-2501 = UV2501
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered BTECH_UV-2501+220 = UV2501_220
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered BTECH_UV-5001 = UV5001
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered WACCOM_MINI-8900 = MINI8900
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered QYT_KT-UV980 = KTUV980
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered QYT_KT8900 = KT9800
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered QYT_KT8900R = KT9800R
[2016-11-15 14:33:21,116] chirp.directory - INFO: Registered LUITON_LT-588UV = LT588UV
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-268A = FD268ARadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-268B = FD268BRadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-288A = FD288ARadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-288B = FD288BRadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-150A = FD150ARadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-160A = FD160ARadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-450A = FD450ARadio
[2016-11-15 14:33:21,117] chirp.directory - INFO: Registered Feidaxin_FD-460A = FD460ARadio
[2016-11-15 14:33:21,118] chirp.directory - INFO: Registered Yaesu_FT-1802M = FT1802Radio
[2016-11-15 14:33:21,118] chirp.directory - INFO: Registered Yaesu_FT-1D_R = FT1Radio
[2016-11-15 14:33:21,119] chirp.directory - INFO: Registered Yaesu_FT-2800M = FT2800Radio
[2016-11-15 14:33:21,119] chirp.directory - INFO: Registered Yaesu_FT-2900R_1900R = FT2900Radio
[2016-11-15 14:33:21,119] chirp.directory - INFO: Registered Yaesu_FT-50 = FT50Radio
[2016-11-15 14:33:21,120] chirp.directory - INFO: Registered Yaesu_FT-60 = FT60Radio
[2016-11-15 14:33:21,120] chirp.directory - INFO: Registered Yaesu_FT-7800_7900 = FT7800Radio
[2016-11-15 14:33:21,120] chirp.directory - INFO: Registered Yaesu_FT-8800 = FT8800Radio
[2016-11-15 14:33:21,120] chirp.directory - INFO: Registered Yaesu_FT-8900 = FT8900Radio
[2016-11-15 14:33:21,121] chirp.directory - INFO: Registered Yaesu_FT-8100 = FT8100Radio
[2016-11-15 14:33:21,121] chirp.directory - INFO: Registered Yaesu_FT-817 = FT817Radio
[2016-11-15 14:33:21,121] chirp.directory - INFO: Registered Yaesu_FT-817ND = FT817NDRadio
[2016-11-15 14:33:21,121] chirp.directory - INFO: Registered Yaesu_FT-817ND_US = FT817NDUSRadio
[2016-11-15 14:33:21,122] chirp.directory - INFO: Registered Yaesu_FT-857_897 = FT857Radio
[2016-11-15 14:33:21,122] chirp.directory - INFO: Registered Yaesu_FT-857_897_US = FT857USRadio
[2016-11-15 14:33:21,122] chirp.directory - INFO: Registered Yaesu_FT-90 = FT90Radio
[2016-11-15 14:33:21,122] chirp.directory - INFO: Registered Yaesu_FTM-350 = FTM350Radio
[2016-11-15 14:33:21,125] chirp.directory - INFO: Registered Generic_CSV = CSVRadio
[2016-11-15 14:33:21,125] chirp.directory - INFO: Registered Commander_KG-UV = CommanderCSVRadio
[2016-11-15 14:33:21,125] chirp.directory - INFO: Registered RT_Systems_CSV = RTCSVRadio
[2016-11-15 14:33:21,125] chirp.directory - INFO: Registered ARRL_Travel_Plus = TpeRadio
[2016-11-15 14:33:21,149] chirp.directory - INFO: Registered Generic_XML = XMLRadio
[2016-11-15 14:33:21,150] chirp.directory - INFO: Registered BTECH_GMRS-V1 = GMRSV1
[2016-11-15 14:33:21,176] chirp.directory - INFO: Registered Baofeng_BF-888 = H777Radio
[2016-11-15 14:33:21,176] chirp.directory - INFO: Registered HobbyPCB_RS-UV3 = HobbyPCBRSUV3Radio
[2016-11-15 14:33:21,177] chirp.directory - INFO: Registered Icom_IC-208H = IC208Radio
[2016-11-15 14:33:21,177] chirp.directory - INFO: Registered Icom_IC-2100H = IC2100Radio
[2016-11-15 14:33:21,177] chirp.directory - INFO: Registered Icom_IC-2200H = IC2200Radio
[2016-11-15 14:33:21,178] chirp.directory - INFO: Registered Icom_IC-2720H = IC2720Radio
[2016-11-15 14:33:21,178] chirp.directory - INFO: Registered Icom_IC-2820H = IC2820Radio
[2016-11-15 14:33:21,178] chirp.directory - INFO: Registered Icom_IC-91_92AD = IC9xRadio
[2016-11-15 14:33:21,179] chirp.directory - INFO: Registered Icom_IC-Q7A = ICQ7Radio
[2016-11-15 14:33:21,179] chirp.directory - INFO: Registered Icom_IC-T70 = ICT70Radio
[2016-11-15 14:33:21,180] chirp.directory - INFO: Registered Icom_IC-T7H = ICT7HRadio
[2016-11-15 14:33:21,180] chirp.directory - INFO: Registered Icom_IC-T8A = ICT8ARadio
[2016-11-15 14:33:21,180] chirp.directory - INFO: Registered Icom_IC-W32A = ICW32ARadio
[2016-11-15 14:33:21,180] chirp.directory - INFO: Registered Icom_IC-W32E = ICW32ERadio
[2016-11-15 14:33:21,181] chirp.directory - INFO: Registered Icom_IC-V82_U82 = ICx8xRadio
[2016-11-15 14:33:21,181] chirp.directory - INFO: Registered Icom_ID-31A = ID31Radio
[2016-11-15 14:33:21,181] chirp.directory - INFO: Registered Icom_ID-51 = ID51Radio
[2016-11-15 14:33:21,182] chirp.directory - INFO: Registered Icom_ID-51_Plus = ID51PLUSRadio
[2016-11-15 14:33:21,182] chirp.directory - INFO: Registered Icom_ID-800H_v2 = ID800v2Radio
[2016-11-15 14:33:21,182] chirp.directory - INFO: Registered Icom_ID-880H = ID880Radio
[2016-11-15 14:33:21,183] chirp.directory - INFO: Registered Icom_ID-80H = ID80Radio
[2016-11-15 14:33:21,183] chirp.directory - INFO: Registered Kenwood_HMK = HMKRadio
[2016-11-15 14:33:21,183] chirp.directory - INFO: Registered Kenwood_ITM = ITMRadio
[2016-11-15 14:33:21,184] chirp.directory - INFO: Registered Wouxun_KG-UV8D = KGUV8DRadio
[2016-11-15 14:33:21,184] chirp.directory - INFO: Registered KYD_NC-630A = NC630aRadio
[2016-11-15 14:33:21,185] chirp.directory - INFO: Registered KYD_IP-620 = IP620Radio
[2016-11-15 14:33:21,185] chirp.directory - INFO: Registered Leixen_VV-898 = LeixenVV898Radio
[2016-11-15 14:33:21,185] chirp.directory - INFO: Registered Jetstream_JT270M = JetstreamJT270MRadio
[2016-11-15 14:33:21,186] chirp.directory - INFO: Registered Leixen_VV-898S = LeixenVV898SRadio
[2016-11-15 14:33:21,186] chirp.directory - INFO: Registered LUITON_LT-725UV = LT725UV
[2016-11-15 14:33:21,186] chirp.directory - INFO: Registered Wouxun_KG-UVD1P = KGUVD1PRadio
[2016-11-15 14:33:21,186] chirp.directory - INFO: Registered Wouxun_KG-UV6 = KGUV6DRadio
[2016-11-15 14:33:21,187] chirp.directory - INFO: Registered Wouxun_KG-816 = KG816Radio
[2016-11-15 14:33:21,187] chirp.directory - INFO: Registered Wouxun_KG-818 = KG818Radio
[2016-11-15 14:33:21,187] chirp.directory - INFO: Registered Puxing_PX-777 = Puxing777Radio
[2016-11-15 14:33:21,187] chirp.directory - INFO: Registered Puxing_PX-2R = Puxing2RRadio
[2016-11-15 14:33:21,188] chirp.directory - INFO: Registered Puxing_PX-888K = Puxing_PX888K_Radio
[2016-11-15 14:33:21,188] chirp.directory - INFO: Registered Retevis_RT21 = RT21Radio
[2016-11-15 14:33:21,189] chirp.directory - INFO: Registered TYT_TH-7800_File = TYTTH7800File
[2016-11-15 14:33:21,189] chirp.directory - INFO: Registered TYT_TH-7800 = TYTTH7800Radio
[2016-11-15 14:33:21,189] chirp.directory - INFO: Registered TYT_TH9000_220 = Th9000220Radio
[2016-11-15 14:33:21,189] chirp.directory - INFO: Registered TYT_TH9000_144 = Th9000144Radio
[2016-11-15 14:33:21,190] chirp.directory - INFO: Registered TYT_TH9000_440 = Th9000440Radio
[2016-11-15 14:33:21,190] chirp.directory - INFO: Registered TYT_TH-9800_File = TYTTH9800File
[2016-11-15 14:33:21,190] chirp.directory - INFO: Registered TYT_TH-9800 = TYTTH9800Radio
[2016-11-15 14:33:21,190] chirp.directory - INFO: Registered TYT_TH-UV3R = TYTUV3RRadio
[2016-11-15 14:33:21,190] chirp.directory - INFO: Registered TYT_TH-UV3R-25 = TYTUV3R25Radio
[2016-11-15 14:33:21,191] chirp.directory - INFO: Registered TYT_TH-UVF8D = TYTUVF8DRadio
[2016-11-15 14:33:21,191] chirp.directory - INFO: Registered Kenwood_TH-D72_clone_mode = THD72Radio
[2016-11-15 14:33:21,191] chirp.directory - INFO: Registered TYT_TH-UVF1 = TYTTHUVF1Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-260 = TK260_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-270 = TK270_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-272 = TK272_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-278 = TK278_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-360 = TK360_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-370 = TK370_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-372 = TK372_Radio
[2016-11-15 14:33:21,192] chirp.directory - INFO: Registered Kenwood_TK-378 = TK378_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-760 = TK760_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-762 = TK762_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-768 = TK768_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-860 = TK860_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-862 = TK862_Radio
[2016-11-15 14:33:21,193] chirp.directory - INFO: Registered Kenwood_TK-868 = TK868_Radio
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-868G = TK868G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-862G = TK862G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-860G = TK860G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-768G = TK768G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-762G = TK762G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-760G = TK760G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-388G = TK388G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-378G = TK378G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-372G = TK372G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-370G = TK370G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-360G = TK360G_Radios
[2016-11-15 14:33:21,194] chirp.directory - INFO: Registered Kenwood_TK-278G = TK278G_Radios
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-272G = TK272G_Radios
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-270G = TK270G_Radios
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-260G = TK260G_Radios
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-7102 = KenwoodTK7102Radio
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-8102 = KenwoodTK8102Radio
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-7108 = KenwoodTK7108Radio
[2016-11-15 14:33:21,195] chirp.directory - INFO: Registered Kenwood_TK-8108 = KenwoodTK8108Radio
[2016-11-15 14:33:21,196] chirp.directory - INFO: Registered Kenwood_TS-2000 = TS2000Radio
[2016-11-15 14:33:21,196] chirp.directory - INFO: Registered BTECH_UV-5X3 = UV5X3
[2016-11-15 14:33:21,196] chirp.directory - INFO: Registered Baofeng_UV-6R = UV6R
[2016-11-15 14:33:21,197] chirp.directory - INFO: Registered Baofeng_UV-B5 = BaofengUVB5
[2016-11-15 14:33:21,197] chirp.directory - INFO: Registered BTECH_UV-50X3 = UV50X3
[2016-11-15 14:33:21,197] chirp.directory - INFO: Registered Yaesu_VX-170 = VX170Radio
[2016-11-15 14:33:21,198] chirp.directory - INFO: Registered Yaesu_VX-2 = VX2Radio
[2016-11-15 14:33:21,198] chirp.directory - INFO: Registered Yaesu_VX-3 = VX3Radio
[2016-11-15 14:33:21,198] chirp.directory - INFO: Registered Yaesu_VX-5 = VX5Radio
[2016-11-15 14:33:21,199] chirp.directory - INFO: Registered Yaesu_VX-6 = VX6Radio
[2016-11-15 14:33:21,199] chirp.directory - INFO: Registered Yaesu_VX-7 = VX7Radio
[2016-11-15 14:33:21,200] chirp.directory - INFO: Registered Yaesu_VX-8_R = VX8Radio
[2016-11-15 14:33:21,200] chirp.directory - INFO: Registered Yaesu_VX-8_DR = VX8DRadio
[2016-11-15 14:33:21,200] chirp.directory - INFO: Registered Yaesu_VX-8_GE = VX8GERadio
[2016-11-15 14:33:21,200] chirp.directory - INFO: Registered Vertex_Standard_VXA-700 = VXA700Radio
Email was triggered for: Success
Sending email for trigger: Success
1
0
15 Nov '16
Hello guys
I didn't get much feedback on my question about the banks (so sorry
for the bad line wrapping), hence it's probably best to submit the
patch without bank support for review and go from there. I hope it's
OK to amend the copyright line, otherwise that can just be scrapped.
The FIXME comments are where things might have to be straightened
out. This will probably require a few iterations but I'm happy to
follow whatever advice you have.
Best regards and thanks.
Matt
1
2
15 Nov '16
1
0
Tested changes:
[Jim Unroe <rock.unroe(a)gmail.com>] [UV-5X3] Fix for Out-of-Range Values
The UV-5X3 apparently ships from the factory with invalid values for
the Group Code and Space Code settings. This patch intercepts
these invalid settings and changes them to the same default values
that the OEM software sets them to.
Related to #4215
[Michael Wagner <michael.wagner(a)gmx.at>] [btech] Add 5Tone and DTMF to all models of btech-driver. #4051
Thanks to Jim's clarifications and tests with several Models (http://intrepid.danplanet.com/pipermail/chirp_devel/2016-November/004356.ht…), this patch now adds 5-tone and DTMF without restrictions to a few models, and without crashing when editind a "fresh" memory-image.
[Tom Hayward <tom(a)tomh.us>] [id880] Fix typo in charset definition. #281
[Tom Hayward <tom(a)tomh.us>] [thf6a] Support full charset (ASCII). Fixes #141
[Tom Hayward <tom(a)tomh.us>] [id880] Support full charset. Fixes #281
[Tom Hayward <tom(a)tomh.us>] [vx5] Support full charset (ASCII). Fixes #292
[Tom Hayward <tom(a)tomh.us>] [id31a] set used bit when creating new memory, clear when deleting. Fixes #269
[Tom Hayward <tom(a)tomh.us>] Support PyGTK < 2.22 in bank edit. Fixes #231
[Tom Hayward <tom(a)tomh.us>] [d710] [v71] [d72] Fix tone list (not all tones are supported). Fixes #212
[Dan Smith <dsmith(a)danplanet.com>] [vx7] Fix setting memory power levels on 220MHz band
Fixes #214
[Dan Smith <dsmith(a)danplanet.com>] fips: Pennsylvania FIPS code was wrong. #117
[Marco Filippi <iz3gme.marco(a)gmail.com>] Consider lower bound frequency of each valid_band as valid
Fix bug #181
[Tom Hayward <tom(a)tomh.us>] tmd700: allow 8-char names. Fixes #176
[Dan Smith <dsmith(a)danplanet.com>] Fix the "blind deletion" problem, as well as properly direct copy/paste
Fixes #172
[David Griffith <dave(a)661.org>] Bug #155 fix: VX-7 1.25m power levels
[David Griffith <dave(a)661.org>] New INSTALL and README files
Fixes #122
[Tom Hayward <tom(a)tomh.us>] thd72: only use hardware flow on OS X. Fixes #166
[Marco Filippi <iz3gme.marco(a)gmail.com>] [FT817] Tone freq not set correctly
Same as #88 for FT857, to avoid code duplication fix code have been moved from
ft857 to its ancestor class
Fix bug #163
[Tom Hayward <tom(a)tomh.us>] Fix Mac .app so paths with spaces work. Fixes Bug #145
Full log:
Started by an SCM change
Building in workspace /var/lib/jenkins/jobs/chirp-test/workspace
[workspace] $ hg showconfig paths.default
[workspace] $ hg pull --rev default
[workspace] $ hg update --clean --rev default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
[workspace] $ hg log --rev . --template {node}
[workspace] $ hg log --rev . --template {rev}
[workspace] $ hg log --rev 37474c501a92467c5122a6ec080e81da2526ea48
[workspace] $ hg log --template "<changeset node='{node}' author='{author|xmlescape}' rev='{rev}' date='{date}'><msg>{desc|xmlescape}</msg><added>{file_adds|stringify|xmlescape}</added><deleted>{file_dels|stringify|xmlescape}</deleted><files>{files|stringify|xmlescape}</files><parents>{parents}</parents></changeset>\n" --rev default:0 --follow --prune 37474c501a92467c5122a6ec080e81da2526ea48
No emails were triggered.
[workspace] $ /bin/sh -xe /tmp/hudson6282738494181819843.sh
[workspace] $ /bin/sh -xe /tmp/hudson8744757217333016343.sh
+ PATH=/usr/bin:/bin:/usr/local/bin ./run_all_tests.sh
test_bit_array (tests.unit.test_bitwise.TestBitType) ... ok
test_bit_array_fail (tests.unit.test_bitwise.TestBitType) ... ok
test_bitfield_u16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u8 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_bbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_int_array (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u8 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_char (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_invalid_chars (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_wrong_length (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_comment_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_comment_inline_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_missing_semicolon (tests.unit.test_bitwise.TestBitwiseErrors) ... ok
test_seek (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_seekto (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_struct_one_element (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_two_elements (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_writes (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
split_tone_encode_test_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_fix_rounded_step_250 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_500 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_750 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_12_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_2_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_5_0 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_6_25 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_fractional_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step_fail (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_format_freq (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_bad (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_decimal (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whitespace (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whole (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_ensure_has_calls_almost_full (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_empty (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_partial (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full1 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full2 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_urcall_full (tests.unit.test_import_logic.DstarTests) ... ok
test_import_bank (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffA_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffB_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_negative (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_too_big_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_uhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_errors (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_warnings (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_invalid (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_am (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_fm (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_name (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_closest (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_dst (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_src (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_same (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffA_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffB_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModelIndexInterface) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_icom_bank (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_index_bounds (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_next_mapping_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_auto_tone_mode_cross (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_pol (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_rx (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tone (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tsql (tests.unit.test_memedit_edits.TestEdits) ... ok
test_init (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_bad_portnames (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_sorted (tests.unit.test_platform.Win32PlatformTest) ... ok
test_apply_callback (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_group (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_multi (tests.unit.test_settings.TestSettingContainers) ... ok
test_changed (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_boolean (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_float (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_integer (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_list (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_string (tests.unit.test_settings.TestSettingValues) ... ok
test_validate_callback (tests.unit.test_settings.TestSettingValues) ... ok
test_delete_hole_with_all (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_all_full (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_without_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_with_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_without_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
----------------------------------------------------------------------
Ran 151 tests in 0.057s
OK
Patch 'tip' is OK
Checking for PEP8 regressions...
./chirp/drivers/ft2900.py:781:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft2900.py:805:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft2900.py:835:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:842:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:923:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:1106:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1111:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1118:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1123:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft2900.py:1169:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft2900.py:1174:80: E501 line too long (90 > 79 characters)
./chirp/drivers/ft2900.py:1238:1: E265 block comment should start with '# '
./chirp/drivers/ft60.py:490:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft60.py:495:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:500:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:505:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:510:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:538:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:556:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:567:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:584:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:589:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:594:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:599:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft60.py:605:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:610:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:621:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft60.py:632:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:637:80: E501 line too long (83 > 79 characters)
./chirp/drivers/ft60.py:642:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:647:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:652:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:657:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft817.py:1010:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft817.py:1087:80: E501 line too long (94 > 79 characters)
./chirp/drivers/kguv8d.py:698:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:727:80: E501 line too long (85 > 79 characters)
./chirp/drivers/kguv8d.py:731:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:746:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:760:80: E501 line too long (82 > 79 characters)
./chirp/drivers/kguv8d.py:764:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:774:80: E501 line too long (84 > 79 characters)
./chirp/drivers/kguv8d.py:778:80: E501 line too long (85 > 79 characters)
./chirp/drivers/kguv8d.py:789:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:800:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:817:80: E501 line too long (85 > 79 characters)
./chirp/drivers/leixen.py:956:80: E501 line too long (87 > 79 characters)
./chirp/drivers/thd72.py:205:80: E501 line too long (89 > 79 characters)
./chirp/drivers/thd72.py:206:80: E501 line too long (101 > 79 characters)
./chirp/drivers/uv5r.py:864:52: W291 trailing whitespace
./chirp/drivers/uv5r.py:947:13: E265 block comment should start with '# '
./chirp/settings.py:256:80: E501 line too long (81 > 79 characters)
./chirp/ui/mainapp.py:1379:80: E501 line too long (80 > 79 characters)
./chirp/ui/settingsedit.py:60:9: E303 too many blank lines (2)
real 0m7.611s
user 0m7.492s
sys 0m0.036s
================================================
Tests OK
+ cat /var/lib/jenkins/.chirp/debug.log
[2016-11-13 17:53:03,183] chirp.logger - DEBUG: CHIRP 0.3.0dev on Linux - Ubuntu 16.04.1 LTS (Python 2.7.12)
[2016-11-13 17:53:03,220] chirp.directory - INFO: Registered Kenwood_TH-D7 = THD7Radio
[2016-11-13 17:53:03,220] chirp.directory - INFO: Registered Kenwood_TH-D7G = THD7GRadio
[2016-11-13 17:53:03,220] chirp.directory - INFO: Registered Kenwood_TM-D700 = TMD700Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-V7 = TMV7Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-G707 = TMG707Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TH-G71 = THG71Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TH-F6 = THF6ARadio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TH-F7 = THF7ERadio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-D710 = TMD710Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TH-D72_live_mode = THD72Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-V71 = TMV71Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-D710G = TMD710GRadio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TH-K2 = THK2Radio
[2016-11-13 17:53:03,221] chirp.directory - INFO: Registered Kenwood_TM-271 = TM271Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Kenwood_TM-281 = TM281Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Kenwood_TM-471 = TM471Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Icom_7200 = Icom7200Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Icom_IC-7000 = Icom7000Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Icom_IC-7100 = Icom7100Radio
[2016-11-13 17:53:03,222] chirp.directory - INFO: Registered Icom_746 = Icom746Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DR03T = DR03Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DR06T = DR06Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DR135T = DR135Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DR235T = DR235Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DR435T = DR435Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DJ596 = DJ596Radio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Jetstream_JT220M = JT220MRadio
[2016-11-13 17:53:03,223] chirp.directory - INFO: Registered Alinco_DJ175 = DJ175Radio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered AnyTone_5888UV = AnyTone5888UVRadio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered Intek_HR-2040 = IntekHR2040Radio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered Polmar_DB-50M = PolmarDB50MRadio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered Powerwerx_DB-750X = PowerwerxDB750XRadio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered AnyTone_TERMN-8R = AnyToneTERMN8RRadio
[2016-11-13 17:53:03,224] chirp.directory - INFO: Registered AnyTone_OBLTR-8R = AnyToneOBLTR8RRadio
[2016-11-13 17:53:03,225] chirp.directory - INFO: Registered Baofeng_UV-3R = UV3RRadio
[2016-11-13 17:53:03,226] chirp.directory - INFO: Registered Baofeng_BF-A58 = BFA58
[2016-11-13 17:53:03,226] chirp.directory - INFO: Registered Baofeng_UV-82WP = UV82WP
[2016-11-13 17:53:03,226] chirp.directory - INFO: Registered Baofeng_GT-3WP = GT3WP
[2016-11-13 17:53:03,226] chirp.directory - INFO: Registered Retevis_RT6 = RT6
[2016-11-13 17:53:03,226] chirp.directory - INFO: Registered Baojie_BJ-9900 = BJ9900Radio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_UV-5R = BaofengUV5RGeneric
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_F-11 = BaofengF11Radio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_UV-82 = BaofengUV82Radio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_UV-6 = BaofengUV6Radio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Intek_KT-980HP = IntekKT980Radio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_BF-F8HP = BaofengBFF8HPRadio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baofeng_UV-82HP = BaofengUV82HPRadio
[2016-11-13 17:53:03,227] chirp.directory - INFO: Registered Baojie_BJ-UV55 = BaojieBJUV55Radio
[2016-11-13 17:53:03,228] chirp.directory - INFO: Registered BTECH_UV-2501 = UV2501
[2016-11-13 17:53:03,228] chirp.directory - INFO: Registered BTECH_UV-2501+220 = UV2501_220
[2016-11-13 17:53:03,228] chirp.directory - INFO: Registered BTECH_UV-5001 = UV5001
[2016-11-13 17:53:03,228] chirp.directory - INFO: Registered WACCOM_MINI-8900 = MINI8900
[2016-11-13 17:53:03,228] chirp.directory - INFO: Registered QYT_KT-UV980 = KTUV980
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered QYT_KT8900 = KT9800
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered QYT_KT8900R = KT9800R
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered LUITON_LT-588UV = LT588UV
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered Feidaxin_FD-268A = FD268ARadio
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered Feidaxin_FD-268B = FD268BRadio
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered Feidaxin_FD-288A = FD288ARadio
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered Feidaxin_FD-288B = FD288BRadio
[2016-11-13 17:53:03,229] chirp.directory - INFO: Registered Feidaxin_FD-150A = FD150ARadio
[2016-11-13 17:53:03,230] chirp.directory - INFO: Registered Feidaxin_FD-160A = FD160ARadio
[2016-11-13 17:53:03,230] chirp.directory - INFO: Registered Feidaxin_FD-450A = FD450ARadio
[2016-11-13 17:53:03,230] chirp.directory - INFO: Registered Feidaxin_FD-460A = FD460ARadio
[2016-11-13 17:53:03,230] chirp.directory - INFO: Registered Yaesu_FT-1802M = FT1802Radio
[2016-11-13 17:53:03,231] chirp.directory - INFO: Registered Yaesu_FT-1D_R = FT1Radio
[2016-11-13 17:53:03,231] chirp.directory - INFO: Registered Yaesu_FT-2800M = FT2800Radio
[2016-11-13 17:53:03,231] chirp.directory - INFO: Registered Yaesu_FT-2900R_1900R = FT2900Radio
[2016-11-13 17:53:03,232] chirp.directory - INFO: Registered Yaesu_FT-50 = FT50Radio
[2016-11-13 17:53:03,232] chirp.directory - INFO: Registered Yaesu_FT-60 = FT60Radio
[2016-11-13 17:53:03,233] chirp.directory - INFO: Registered Yaesu_FT-7800_7900 = FT7800Radio
[2016-11-13 17:53:03,233] chirp.directory - INFO: Registered Yaesu_FT-8800 = FT8800Radio
[2016-11-13 17:53:03,233] chirp.directory - INFO: Registered Yaesu_FT-8900 = FT8900Radio
[2016-11-13 17:53:03,233] chirp.directory - INFO: Registered Yaesu_FT-8100 = FT8100Radio
[2016-11-13 17:53:03,233] chirp.directory - INFO: Registered Yaesu_FT-817 = FT817Radio
[2016-11-13 17:53:03,234] chirp.directory - INFO: Registered Yaesu_FT-817ND = FT817NDRadio
[2016-11-13 17:53:03,234] chirp.directory - INFO: Registered Yaesu_FT-817ND_US = FT817NDUSRadio
[2016-11-13 17:53:03,234] chirp.directory - INFO: Registered Yaesu_FT-857_897 = FT857Radio
[2016-11-13 17:53:03,234] chirp.directory - INFO: Registered Yaesu_FT-857_897_US = FT857USRadio
[2016-11-13 17:53:03,234] chirp.directory - INFO: Registered Yaesu_FT-90 = FT90Radio
[2016-11-13 17:53:03,235] chirp.directory - INFO: Registered Yaesu_FTM-350 = FTM350Radio
[2016-11-13 17:53:03,235] chirp.directory - INFO: Registered Generic_CSV = CSVRadio
[2016-11-13 17:53:03,235] chirp.directory - INFO: Registered Commander_KG-UV = CommanderCSVRadio
[2016-11-13 17:53:03,236] chirp.directory - INFO: Registered RT_Systems_CSV = RTCSVRadio
[2016-11-13 17:53:03,236] chirp.directory - INFO: Registered ARRL_Travel_Plus = TpeRadio
[2016-11-13 17:53:03,246] chirp.directory - INFO: Registered Generic_XML = XMLRadio
[2016-11-13 17:53:03,246] chirp.directory - INFO: Registered BTECH_GMRS-V1 = GMRSV1
[2016-11-13 17:53:03,250] chirp.directory - INFO: Registered Baofeng_BF-888 = H777Radio
[2016-11-13 17:53:03,250] chirp.directory - INFO: Registered HobbyPCB_RS-UV3 = HobbyPCBRSUV3Radio
[2016-11-13 17:53:03,250] chirp.directory - INFO: Registered Icom_IC-208H = IC208Radio
[2016-11-13 17:53:03,250] chirp.directory - INFO: Registered Icom_IC-2100H = IC2100Radio
[2016-11-13 17:53:03,250] chirp.directory - INFO: Registered Icom_IC-2200H = IC2200Radio
[2016-11-13 17:53:03,251] chirp.directory - INFO: Registered Icom_IC-2720H = IC2720Radio
[2016-11-13 17:53:03,251] chirp.directory - INFO: Registered Icom_IC-2820H = IC2820Radio
[2016-11-13 17:53:03,251] chirp.directory - INFO: Registered Icom_IC-91_92AD = IC9xRadio
[2016-11-13 17:53:03,252] chirp.directory - INFO: Registered Icom_IC-Q7A = ICQ7Radio
[2016-11-13 17:53:03,252] chirp.directory - INFO: Registered Icom_IC-T70 = ICT70Radio
[2016-11-13 17:53:03,252] chirp.directory - INFO: Registered Icom_IC-T7H = ICT7HRadio
[2016-11-13 17:53:03,252] chirp.directory - INFO: Registered Icom_IC-T8A = ICT8ARadio
[2016-11-13 17:53:03,252] chirp.directory - INFO: Registered Icom_IC-W32A = ICW32ARadio
[2016-11-13 17:53:03,253] chirp.directory - INFO: Registered Icom_IC-W32E = ICW32ERadio
[2016-11-13 17:53:03,253] chirp.directory - INFO: Registered Icom_IC-V82_U82 = ICx8xRadio
[2016-11-13 17:53:03,253] chirp.directory - INFO: Registered Icom_ID-31A = ID31Radio
[2016-11-13 17:53:03,253] chirp.directory - INFO: Registered Icom_ID-51 = ID51Radio
[2016-11-13 17:53:03,253] chirp.directory - INFO: Registered Icom_ID-51_Plus = ID51PLUSRadio
[2016-11-13 17:53:03,254] chirp.directory - INFO: Registered Icom_ID-800H_v2 = ID800v2Radio
[2016-11-13 17:53:03,254] chirp.directory - INFO: Registered Icom_ID-880H = ID880Radio
[2016-11-13 17:53:03,254] chirp.directory - INFO: Registered Icom_ID-80H = ID80Radio
[2016-11-13 17:53:03,254] chirp.directory - INFO: Registered Kenwood_HMK = HMKRadio
[2016-11-13 17:53:03,255] chirp.directory - INFO: Registered Kenwood_ITM = ITMRadio
[2016-11-13 17:53:03,255] chirp.directory - INFO: Registered Wouxun_KG-UV8D = KGUV8DRadio
[2016-11-13 17:53:03,255] chirp.directory - INFO: Registered KYD_NC-630A = NC630aRadio
[2016-11-13 17:53:03,255] chirp.directory - INFO: Registered KYD_IP-620 = IP620Radio
[2016-11-13 17:53:03,256] chirp.directory - INFO: Registered Leixen_VV-898 = LeixenVV898Radio
[2016-11-13 17:53:03,256] chirp.directory - INFO: Registered Jetstream_JT270M = JetstreamJT270MRadio
[2016-11-13 17:53:03,256] chirp.directory - INFO: Registered Leixen_VV-898S = LeixenVV898SRadio
[2016-11-13 17:53:03,256] chirp.directory - INFO: Registered LUITON_LT-725UV = LT725UV
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Wouxun_KG-UVD1P = KGUVD1PRadio
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Wouxun_KG-UV6 = KGUV6DRadio
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Wouxun_KG-816 = KG816Radio
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Wouxun_KG-818 = KG818Radio
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Puxing_PX-777 = Puxing777Radio
[2016-11-13 17:53:03,257] chirp.directory - INFO: Registered Puxing_PX-2R = Puxing2RRadio
[2016-11-13 17:53:03,259] chirp.directory - INFO: Registered Puxing_PX-888K = Puxing_PX888K_Radio
[2016-11-13 17:53:03,259] chirp.directory - INFO: Registered Retevis_RT21 = RT21Radio
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH-7800_File = TYTTH7800File
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH-7800 = TYTTH7800Radio
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH9000_220 = Th9000220Radio
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH9000_144 = Th9000144Radio
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH9000_440 = Th9000440Radio
[2016-11-13 17:53:03,260] chirp.directory - INFO: Registered TYT_TH-9800_File = TYTTH9800File
[2016-11-13 17:53:03,261] chirp.directory - INFO: Registered TYT_TH-9800 = TYTTH9800Radio
[2016-11-13 17:53:03,261] chirp.directory - INFO: Registered TYT_TH-UV3R = TYTUV3RRadio
[2016-11-13 17:53:03,261] chirp.directory - INFO: Registered TYT_TH-UV3R-25 = TYTUV3R25Radio
[2016-11-13 17:53:03,261] chirp.directory - INFO: Registered TYT_TH-UVF8D = TYTUVF8DRadio
[2016-11-13 17:53:03,262] chirp.directory - INFO: Registered Kenwood_TH-D72_clone_mode = THD72Radio
[2016-11-13 17:53:03,262] chirp.directory - INFO: Registered TYT_TH-UVF1 = TYTTHUVF1Radio
[2016-11-13 17:53:03,262] chirp.directory - INFO: Registered Kenwood_TK-260 = TK260_Radio
[2016-11-13 17:53:03,262] chirp.directory - INFO: Registered Kenwood_TK-270 = TK270_Radio
[2016-11-13 17:53:03,262] chirp.directory - INFO: Registered Kenwood_TK-272 = TK272_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-278 = TK278_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-360 = TK360_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-370 = TK370_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-372 = TK372_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-378 = TK378_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-760 = TK760_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-762 = TK762_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-768 = TK768_Radio
[2016-11-13 17:53:03,263] chirp.directory - INFO: Registered Kenwood_TK-860 = TK860_Radio
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-862 = TK862_Radio
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-868 = TK868_Radio
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-868G = TK868G_Radios
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-862G = TK862G_Radios
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-860G = TK860G_Radios
[2016-11-13 17:53:03,264] chirp.directory - INFO: Registered Kenwood_TK-768G = TK768G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-762G = TK762G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-760G = TK760G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-388G = TK388G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-378G = TK378G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-372G = TK372G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-370G = TK370G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-360G = TK360G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-278G = TK278G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-272G = TK272G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-270G = TK270G_Radios
[2016-11-13 17:53:03,265] chirp.directory - INFO: Registered Kenwood_TK-260G = TK260G_Radios
[2016-11-13 17:53:03,266] chirp.directory - INFO: Registered Kenwood_TK-7102 = KenwoodTK7102Radio
[2016-11-13 17:53:03,266] chirp.directory - INFO: Registered Kenwood_TK-8102 = KenwoodTK8102Radio
[2016-11-13 17:53:03,266] chirp.directory - INFO: Registered Kenwood_TK-7108 = KenwoodTK7108Radio
[2016-11-13 17:53:03,266] chirp.directory - INFO: Registered Kenwood_TK-8108 = KenwoodTK8108Radio
[2016-11-13 17:53:03,266] chirp.directory - INFO: Registered Kenwood_TS-2000 = TS2000Radio
[2016-11-13 17:53:03,267] chirp.directory - INFO: Registered BTECH_UV-5X3 = UV5X3
[2016-11-13 17:53:03,267] chirp.directory - INFO: Registered Baofeng_UV-6R = UV6R
[2016-11-13 17:53:03,267] chirp.directory - INFO: Registered Baofeng_UV-B5 = BaofengUVB5
[2016-11-13 17:53:03,268] chirp.directory - INFO: Registered BTECH_UV-50X3 = UV50X3
[2016-11-13 17:53:03,268] chirp.directory - INFO: Registered Yaesu_VX-170 = VX170Radio
[2016-11-13 17:53:03,268] chirp.directory - INFO: Registered Yaesu_VX-2 = VX2Radio
[2016-11-13 17:53:03,269] chirp.directory - INFO: Registered Yaesu_VX-3 = VX3Radio
[2016-11-13 17:53:03,269] chirp.directory - INFO: Registered Yaesu_VX-5 = VX5Radio
[2016-11-13 17:53:03,269] chirp.directory - INFO: Registered Yaesu_VX-6 = VX6Radio
[2016-11-13 17:53:03,270] chirp.directory - INFO: Registered Yaesu_VX-7 = VX7Radio
[2016-11-13 17:53:03,270] chirp.directory - INFO: Registered Yaesu_VX-8_R = VX8Radio
[2016-11-13 17:53:03,270] chirp.directory - INFO: Registered Yaesu_VX-8_DR = VX8DRadio
[2016-11-13 17:53:03,270] chirp.directory - INFO: Registered Yaesu_VX-8_GE = VX8GERadio
[2016-11-13 17:53:03,271] chirp.directory - INFO: Registered Vertex_Standard_VXA-700 = VXA700Radio
Email was triggered for: Success
Sending email for trigger: Success
1
0
# HG changeset patch
# User Jim Unroe <rock.unroe(a)gmail.com>
# Date 1478985715 18000
# Node ID 6042d1b0b34d47d0fc78de71db7d24014c860603
# Parent 37474c501a92467c5122a6ec080e81da2526ea48
[UV-5X3] Fix for Out-of-Range Values
The UV-5X3 apparently ships from the factory with invalid values for
the Group Code and Space Code settings. This patch intercepts
these invalid settings and changes them to the same default values
that the OEM software sets them to.
Related to #4215
diff -r 37474c501a92 -r 6042d1b0b34d chirp/drivers/uv5x3.py
--- a/chirp/drivers/uv5x3.py Fri Nov 11 17:58:33 2016 -0500
+++ b/chirp/drivers/uv5x3.py Sat Nov 12 16:21:55 2016 -0500
@@ -1128,14 +1128,20 @@
val = LIST_DTMF_SPECIAL_VALUES[index]
obj.set_value(val)
- idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.groupcode)
+ if _mem.ani.groupcode in LIST_DTMF_SPECIAL_VALUES:
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.groupcode)
+ else:
+ idx = LIST_DTMF_SPECIAL_VALUES.index(0x0B)
rs = RadioSetting("ani.groupcode", "Group Code",
RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
LIST_DTMF_SPECIAL_DIGITS[idx]))
rs.set_apply_callback(apply_dmtf_listvalue, _mem.ani.groupcode)
dtmfd.append(rs)
- idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.spacecode)
+ if _mem.ani.spacecode in LIST_DTMF_SPECIAL_VALUES:
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.spacecode)
+ else:
+ idx = LIST_DTMF_SPECIAL_VALUES.index(0x0C)
rs = RadioSetting("ani.spacecode", "Space Code",
RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
LIST_DTMF_SPECIAL_DIGITS[idx]))
1
0
[chirp_devel] [PATCH] [btech] Add 5Tone and DTMF to all models of btech-driver. #4051
by Michael Wagner (OE4AMW) 12 Nov '16
by Michael Wagner (OE4AMW) 12 Nov '16
12 Nov '16
# HG changeset patch
# User Michael Wagner <michael.wagner(a)gmx.at>
# Date 1478957786 -3600
# Sat Nov 12 14:36:26 2016 +0100
# Node ID 9d3de34ab51e7c7b3583e0da98287452e7ada457
# Parent 37474c501a92467c5122a6ec080e81da2526ea48
[btech] Add 5Tone and DTMF to all models of btech-driver. #4051
Thanks to Jim's clarifications and tests with several Models (http://intrepid.danplanet.com/pipermail/chirp_devel/2016-November/004356.ht…), this patch now adds 5-tone and DTMF without restrictions to a few models, and without crashing when editind a "fresh" memory-image.
diff -r 37474c501a92 -r 9d3de34ab51e chirp/drivers/btech.py
--- a/chirp/drivers/btech.py Fri Nov 11 17:58:33 2016 -0500
+++ b/chirp/drivers/btech.py Sat Nov 12 14:36:26 2016 +0100
@@ -155,6 +155,92 @@
u8 unknown1[10];
} names[200];
+#seekto 0x2400;
+struct {
+ u8 period; // one out of LIST_5TONE_STANDARD_PERIODS
+ u8 group_tone;
+ u8 repeat_tone;
+ u8 unused[13];
+} _5tone_std_settings[15];
+
+#seekto 0x2500;
+struct {
+ u8 frame1[5];
+ u8 frame2[5];
+ u8 frame3[5];
+ u8 standard; // one out of LIST_5TONE_STANDARDS
+} _5tone_codes[15];
+
+#seekto 0x25F0;
+struct {
+ u8 _5tone_delay1; // * 10ms
+ u8 _5tone_delay2; // * 10ms
+ u8 _5tone_delay3; // * 10ms
+ u8 _5tone_first_digit_ext_length;
+ u8 unknown1;
+ u8 unknown2;
+ u8 unknown3;
+ u8 unknown4;
+ u8 decode_standard;
+ u8 unknown5:5,
+ _5tone_decode_call_frame3:1,
+ _5tone_decode_call_frame2:1,
+ _5tone_decode_call_frame1:1;
+ u8 unknown6:5,
+ _5tone_decode_disp_frame3:1,
+ _5tone_decode_disp_frame2:1,
+ _5tone_decode_disp_frame1:1;
+ u8 decode_reset_time; // * 100 + 100ms
+} _5tone_settings;
+
+#seekto 0x2900;
+struct {
+ u8 code[16]; // 0=x0A, A=0x0D, B=0x0E, C=0x0F, D=0x00, #=0x0C *=0x0B
+} dtmf_codes[15];
+
+#seekto 0x29F0;
+struct {
+ u8 dtmfspeed_on; //list with 50..2000ms in steps of 10
+ u8 dtmfspeed_off; //list with 50..2000ms in steps of 10
+ u8 unknown0[14];
+ u8 inspection[16];
+ u8 monitor[16];
+ u8 alarmcode[16];
+ u8 stun[16];
+ u8 kill[16];
+ u8 revive[16];
+ u8 unknown1[16];
+ u8 unknown2[16];
+ u8 unknown3[16];
+ u8 unknown4[16];
+ u8 unknown5[16];
+ u8 unknown6[16];
+ u8 unknown7[16];
+ u8 masterid[16];
+ u8 viceid[16];
+ u8 unused01:7,
+ mastervice:1;
+ u8 unused02:3,
+ mrevive:1,
+ mkill:1,
+ mstun:1,
+ mmonitor:1,
+ minspection:1;
+ u8 unused03:3,
+ vrevive:1,
+ vkill:1,
+ vstun:1,
+ vmonitor:1,
+ vinspection:1;
+ u8 unused04:6,
+ txdisable:1,
+ rxdisable:1;
+ u8 groupcode;
+ u8 spacecode;
+ u8 delayproctime; // * 100 + 100ms
+ u8 resettime; // * 100 + 100ms
+} dtmf_settings;
+
#seekto 0x3000;
struct {
u8 freq[8];
@@ -237,6 +323,30 @@
LIST_WIDE = ["Wide", "Narrow"]
STEPS = [2.5, 5.0, 6.25, 10.0, 12.5, 25.0]
LIST_STEP = [str(x) for x in STEPS]
+LIST_5TONE_STANDARDS = ["CCIR1", "CCIR2", "PCCIR", "ZVEI1", "ZVEI2", "ZVEI3",
+ "PZVEI", "DZVEI", "PDZVEI", "EEA", "EIA", "EURO",
+ "CCITT", "NATEL", "MODAT", "none"]
+LIST_5TONE_STANDARDS_without_none = ["CCIR1", "CCIR2", "PCCIR", "ZVEI1",
+ "ZVEI2", "ZVEI3",
+ "PZVEI", "DZVEI", "PDZVEI", "EEA", "EIA",
+ "EURO", "CCITT", "NATEL", "MODAT"]
+LIST_5TONE_STANDARD_PERIODS = ["20", "30", "40", "50", "60", "70", "80", "90",
+ "100", "110", "120", "130", "140", "150", "160",
+ "170", "180", "190", "200"]
+LIST_5TONE_DIGITS = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A",
+ "B", "C", "D", "E", "F"]
+LIST_5TONE_DELAY = ["%s ms" % x for x in range(0, 1010, 10)]
+LIST_5TONE_RESET = ["%s ms" % x for x in range(100, 8100, 100)]
+LIST_DTMF_SPEED = ["%s ms" % x for x in range(50, 2010, 10)]
+LIST_DTMF_DIGITS = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B",
+ "C", "D", "#", "*"]
+LIST_DTMF_VALUES = [0x0A, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
+ 0x0D, 0x0E, 0x0F, 0x00, 0x0C, 0x0B ]
+LIST_DTMF_SPECIAL_DIGITS = [ "*", "#", "A", "B", "C", "D"]
+LIST_DTMF_SPECIAL_VALUES = [ 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x00]
+LIST_DTMF_DELAY = ["%s ms" % x for x in range(100, 4100, 100)]
+CHARSET_DTMF_DIGITS = "0123456789AaBbCcDd#*"
+
# This is a general serial timeout for all serial read functions.
# Practice has show that about 0.7 sec will be enough to cover all radios.
@@ -1613,7 +1723,562 @@
fm_presets.append(fmfreq)
i = i + 1
+
+ # DTMF-Setting
+ dtmf_enc_settings = RadioSettingGroup ("dtmf_enc_settings",
+ "DTMF Encoding Settings")
+ dtmf_dec_settings = RadioSettingGroup ("dtmf_dec_settings",
+ "DTMF Decoding Settings")
+ top.append(dtmf_enc_settings)
+ top.append(dtmf_dec_settings)
+ txdisable = RadioSetting("dtmf_settings.txdisable",
+ "TX-Disable",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.txdisable))
+ dtmf_enc_settings.append(txdisable)
+
+ rxdisable = RadioSetting("dtmf_settings.rxdisable",
+ "RX-Disable",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.rxdisable))
+ dtmf_enc_settings.append(rxdisable)
+
+ dtmfspeed_on = RadioSetting(
+ "dtmf_settings.dtmfspeed_on",
+ "DTMF Speed (On Time)",
+ RadioSettingValueList(LIST_DTMF_SPEED,
+ LIST_DTMF_SPEED[
+ _mem.dtmf_settings.dtmfspeed_on]))
+ dtmf_enc_settings.append(dtmfspeed_on)
+
+ dtmfspeed_off = RadioSetting(
+ "dtmf_settings.dtmfspeed_off",
+ "DTMF Speed (Off Time)",
+ RadioSettingValueList(LIST_DTMF_SPEED,
+ LIST_DTMF_SPEED[
+ _mem.dtmf_settings.dtmfspeed_off]))
+ dtmf_enc_settings.append(dtmfspeed_off)
+
+ def memory2string(dmtf_mem):
+ dtmf_string = ""
+ for digit in dmtf_mem:
+ if digit != 255:
+ index = LIST_DTMF_VALUES.index(digit)
+ dtmf_string = dtmf_string + LIST_DTMF_DIGITS[index]
+ return dtmf_string
+
+ def apply_dmtf_frame(setting, obj):
+ LOG.debug("Setting DTMF-Code: " + str(setting.value) )
+ val_string = str(setting.value)
+ for i in range(0,16):
+ obj[i] = 255
+ i = 0
+ for current_char in val_string:
+ current_char = current_char.upper()
+ index = LIST_DTMF_DIGITS.index(current_char)
+ obj[i] = LIST_DTMF_VALUES[ index ]
+ i = i + 1
+
+ codes = self._memobj.dtmf_codes
+ i = 1
+ for dtmfcode in codes:
+ val = RadioSettingValueString(0, 16,
+ memory2string(dtmfcode.code),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_code_" + str(i) + "_code",
+ "DMTF Code " + str(i), val)
+ line.set_apply_callback(apply_dmtf_frame, dtmfcode.code)
+ dtmf_enc_settings.append(line)
+ i = i + 1
+
+ line = RadioSetting("dtmf_settings.mastervice",
+ "Master and Vice ID",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.mastervice))
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.masterid),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.masterid",
+ "Master Control ID ", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.masterid)
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.minspection",
+ "Master Inspection",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.minspection))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.mmonitor",
+ "Master Monitor",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.mmonitor))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.mstun",
+ "Master Stun",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.mstun))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.mkill",
+ "Master Kill",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.mkill))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.mrevive",
+ "Master Revive",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.mrevive))
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.viceid),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.viceid",
+ "Vice Control ID ", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.viceid)
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.vinspection",
+ "Vice Inspection",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.vinspection))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.vmonitor",
+ "Vice Monitor",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.vmonitor))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.vstun",
+ "Vice Stun",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.vstun))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.vkill",
+ "Vice Kill",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.vkill))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting("dtmf_settings.vrevive",
+ "Vice Revive",
+ RadioSettingValueBoolean(
+ _mem.dtmf_settings.vrevive))
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.inspection),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.inspection",
+ "Inspection", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.inspection)
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.alarmcode),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.alarmcode",
+ "Alarm", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.alarmcode)
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.kill),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.kill",
+ "Kill", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.kill)
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.monitor),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.monitor",
+ "Monitor", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.monitor)
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.stun),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.stun",
+ "Stun", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.stun)
+ dtmf_dec_settings.append(line)
+
+ val = RadioSettingValueString(0, 16,
+ memory2string(
+ _mem.dtmf_settings.revive),
+ False, CHARSET_DTMF_DIGITS)
+ line = RadioSetting("dtmf_settings.revive",
+ "Revive", val)
+ line.set_apply_callback(apply_dmtf_frame,
+ _mem.dtmf_settings.revive)
+ dtmf_dec_settings.append(line)
+
+ def apply_dmtf_listvalue(setting, obj):
+ LOG.debug("Setting value: "+ str(setting.value) + " from list")
+ val = str(setting.value)
+ index = LIST_DTMF_SPECIAL_DIGITS.index(val)
+ val = LIST_DTMF_SPECIAL_VALUES[index]
+ obj.set_value(val)
+
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.dtmf_settings.groupcode)
+ line = RadioSetting(
+ "dtmf_settings.groupcode",
+ "Group Code",
+ RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
+ LIST_DTMF_SPECIAL_DIGITS[idx]))
+ line.set_apply_callback(apply_dmtf_listvalue,
+ _mem.dtmf_settings.groupcode)
+ dtmf_dec_settings.append(line)
+
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.dtmf_settings.spacecode)
+ line = RadioSetting(
+ "dtmf_settings.spacecode",
+ "Space Code",
+ RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
+ LIST_DTMF_SPECIAL_DIGITS[idx]))
+ line.set_apply_callback(apply_dmtf_listvalue,
+ _mem.dtmf_settings.spacecode)
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting(
+ "dtmf_settings.resettime",
+ "Reset time",
+ RadioSettingValueList(LIST_5TONE_RESET,
+ LIST_5TONE_RESET[
+ _mem.dtmf_settings.resettime]))
+ dtmf_dec_settings.append(line)
+
+ line = RadioSetting(
+ "dtmf_settings.delayproctime",
+ "Delay processing time",
+ RadioSettingValueList(LIST_DTMF_DELAY,
+ LIST_DTMF_DELAY[
+ _mem.dtmf_settings.delayproctime]))
+ dtmf_dec_settings.append(line)
+
+
+ # 5 Tone Settings
+ stds_5tone = RadioSettingGroup ("stds_5tone", "Standards")
+ codes_5tone = RadioSettingGroup ("codes_5tone", "Codes")
+
+ group_5tone = RadioSettingGroup ("group_5tone", "5 Tone Settings")
+ group_5tone.append(stds_5tone)
+ group_5tone.append(codes_5tone)
+
+ top.append(group_5tone)
+
+ def apply_list_value(setting, obj):
+ options = setting.value.get_options()
+ obj.set_value ( options.index(str(setting.value)) )
+
+ _5tone_standards = self._memobj._5tone_std_settings
+ i = 0
+ for standard in _5tone_standards:
+ std_5tone = RadioSettingGroup ("std_5tone_" + str(i),
+ LIST_5TONE_STANDARDS[i])
+ stds_5tone.append(std_5tone)
+
+ period = standard.period
+ if period == 255:
+ LOG.debug("Period for " + LIST_5TONE_STANDARDS[i] +
+ " is not yet configured. Setting to 70ms.")
+ period = 5
+
+ if period <= len( LIST_5TONE_STANDARD_PERIODS ):
+ line = RadioSetting(
+ "_5tone_std_settings_" + str(i) + "_period",
+ "Period (ms)", RadioSettingValueList
+ (LIST_5TONE_STANDARD_PERIODS,
+ LIST_5TONE_STANDARD_PERIODS[period]))
+ line.set_apply_callback(apply_list_value, standard.period)
+ std_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone period! Disabling.")
+
+ group_tone = standard.group_tone
+ if group_tone == 255:
+ LOG.debug("Group-Tone for " + LIST_5TONE_STANDARDS[i] +
+ " is not yet configured. Setting to A.")
+ group_tone = 10
+
+ if group_tone <= len( LIST_5TONE_DIGITS ):
+ line = RadioSetting(
+ "_5tone_std_settings_" + str(i) + "_grouptone",
+ "Group Tone",
+ RadioSettingValueList(LIST_5TONE_DIGITS,
+ LIST_5TONE_DIGITS[
+ group_tone]))
+ line.set_apply_callback(apply_list_value,
+ standard.group_tone)
+ std_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone digit! Disabling.")
+
+ repeat_tone = standard.repeat_tone
+ if repeat_tone == 255:
+ LOG.debug("Repeat-Tone for " + LIST_5TONE_STANDARDS[i] +
+ " is not yet configured. Setting to E.")
+ repeat_tone = 14
+
+ if repeat_tone <= len( LIST_5TONE_DIGITS ):
+ line = RadioSetting(
+ "_5tone_std_settings_" + str(i) + "_repttone",
+ "Repeat Tone",
+ RadioSettingValueList(LIST_5TONE_DIGITS,
+ LIST_5TONE_DIGITS[
+ repeat_tone]))
+ line.set_apply_callback(apply_list_value,
+ standard.repeat_tone)
+ std_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone digit! Disabling.")
+ i = i + 1
+
+ def my_apply_5tonestdlist_value(setting, obj):
+ if LIST_5TONE_STANDARDS.index(str(setting.value)) == 15:
+ obj.set_value(0xFF)
+ else:
+ obj.set_value( LIST_5TONE_STANDARDS.
+ index(str(setting.value)) )
+
+ def apply_5tone_frame(setting, obj):
+ LOG.debug("Setting 5 Tone: " + str(setting.value) )
+ valstring = str(setting.value)
+ if len(valstring) == 0:
+ for i in range(0,5):
+ obj[i] = 255
+ else:
+ validFrame = True
+ for i in range(0,5):
+ currentChar = valstring[i].upper()
+ if currentChar in LIST_5TONE_DIGITS:
+ obj[i] = LIST_5TONE_DIGITS.index(currentChar)
+ else:
+ validFrame = False
+ LOG.debug("invalid char: " + str(currentChar))
+ if not validFrame:
+ LOG.debug("setting whole frame to FF" )
+ for i in range(0,5):
+ obj[i] = 255
+
+ def validate_5tone_frame(value):
+ if (len(str(value)) != 5) and (len(str(value)) != 0) :
+ msg = ("5 Tone must have 5 digits or 0 digits")
+ raise InvalidValueError(msg)
+ for digit in str(value):
+ if digit.upper() not in LIST_5TONE_DIGITS:
+ msg = (str(digit) + " is not a valid digit for 5tones")
+ raise InvalidValueError(msg)
+ return value
+
+ def frame2string(frame):
+ frameString = ""
+ for digit in frame:
+ if digit != 255:
+ frameString = frameString + LIST_5TONE_DIGITS[digit]
+ return frameString
+
+ _5tone_codes = self._memobj._5tone_codes
+ i = 1
+ for code in _5tone_codes:
+ code_5tone = RadioSettingGroup ("code_5tone_" + str(i),
+ "5 Tone code " + str(i))
+ codes_5tone.append(code_5tone)
+ if (code.standard == 255 ):
+ currentVal = 15
+ else:
+ currentVal = code.standard
+ line = RadioSetting("_5tone_code_" + str(i) + "_std",
+ " Standard",
+ RadioSettingValueList(LIST_5TONE_STANDARDS,
+ LIST_5TONE_STANDARDS[
+ currentVal]) )
+ line.set_apply_callback(my_apply_5tonestdlist_value,
+ code.standard)
+ code_5tone.append(line)
+
+ val = RadioSettingValueString(0, 6,
+ frame2string(code.frame1), False)
+ line = RadioSetting("_5tone_code_" + str(i) + "_frame1",
+ " Frame 1", val)
+ val.set_validate_callback(validate_5tone_frame)
+ line.set_apply_callback(apply_5tone_frame, code.frame1)
+ code_5tone.append(line)
+
+ val = RadioSettingValueString(0, 6,
+ frame2string(code.frame2), False)
+ line = RadioSetting("_5tone_code_" + str(i) + "_frame2",
+ " Frame 2", val)
+ val.set_validate_callback(validate_5tone_frame)
+ line.set_apply_callback(apply_5tone_frame, code.frame2)
+ code_5tone.append(line)
+
+ val = RadioSettingValueString(0, 6,
+ frame2string(code.frame3), False)
+ line = RadioSetting("_5tone_code_" + str(i) + "_frame3",
+ " Frame 3", val)
+ val.set_validate_callback(validate_5tone_frame)
+ line.set_apply_callback(apply_5tone_frame, code.frame3)
+ code_5tone.append(line)
+ i = i + 1
+
+ _5_tone_decode1 = RadioSetting(
+ "_5tone_settings._5tone_decode_call_frame1",
+ "5 Tone decode call Frame 1",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_call_frame1))
+ group_5tone.append(_5_tone_decode1)
+
+ _5_tone_decode2 = RadioSetting(
+ "_5tone_settings._5tone_decode_call_frame2",
+ "5 Tone decode call Frame 2",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_call_frame2))
+ group_5tone.append(_5_tone_decode2)
+
+ _5_tone_decode3 = RadioSetting(
+ "_5tone_settings._5tone_decode_call_frame3",
+ "5 Tone decode call Frame 3",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_call_frame3))
+ group_5tone.append(_5_tone_decode3)
+
+ _5_tone_decode_disp1 = RadioSetting(
+ "_5tone_settings._5tone_decode_disp_frame1",
+ "5 Tone decode disp Frame 1",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_disp_frame1))
+ group_5tone.append(_5_tone_decode_disp1)
+
+ _5_tone_decode_disp2 = RadioSetting(
+ "_5tone_settings._5tone_decode_disp_frame2",
+ "5 Tone decode disp Frame 2",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_disp_frame2))
+ group_5tone.append(_5_tone_decode_disp2)
+
+ _5_tone_decode_disp3 = RadioSetting(
+ "_5tone_settings._5tone_decode_disp_frame3",
+ "5 Tone decode disp Frame 3",
+ RadioSettingValueBoolean(
+ _mem._5tone_settings._5tone_decode_disp_frame3))
+ group_5tone.append(_5_tone_decode_disp3)
+
+ decode_standard = _mem._5tone_settings.decode_standard
+ if decode_standard == 255:
+ decode_standard = 0
+ if decode_standard <= len (LIST_5TONE_STANDARDS_without_none) :
+ line = RadioSetting("_5tone_settings.decode_standard",
+ "5 Tone-decode Standard",
+ RadioSettingValueList(
+ LIST_5TONE_STANDARDS_without_none,
+ LIST_5TONE_STANDARDS_without_none[
+ decode_standard]))
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid decode std...")
+ _5tone_delay1 = _mem._5tone_settings._5tone_delay1
+ if _5tone_delay1 == 255:
+ _5tone_delay1 = 20
+
+ if _5tone_delay1 <= len( LIST_5TONE_DELAY ):
+ list = RadioSettingValueList(LIST_5TONE_DELAY,
+ LIST_5TONE_DELAY[
+ _5tone_delay1])
+ line = RadioSetting("_5tone_settings._5tone_delay1",
+ "5 Tone Delay Frame 1", list)
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone delay (frame1) ! Disabling.")
+
+ _5tone_delay2 = _mem._5tone_settings._5tone_delay2
+ if _5tone_delay2 == 255:
+ _5tone_delay2 = 20
+ LOG.debug("5 Tone delay unconfigured! Resetting to 200ms.")
+
+ if _5tone_delay2 <= len( LIST_5TONE_DELAY ):
+ list = RadioSettingValueList(LIST_5TONE_DELAY,
+ LIST_5TONE_DELAY[
+ _5tone_delay2])
+ line = RadioSetting("_5tone_settings._5tone_delay2",
+ "5 Tone Delay Frame 2", list)
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone delay (frame2)! Disabling.")
+
+ _5tone_delay3 = _mem._5tone_settings._5tone_delay3
+ if _5tone_delay3 == 255:
+ _5tone_delay3 = 20
+ LOG.debug("5 Tone delay unconfigured! Resetting to 200ms.")
+
+ if _5tone_delay3 <= len( LIST_5TONE_DELAY ):
+ list = RadioSettingValueList(LIST_5TONE_DELAY,
+ LIST_5TONE_DELAY[
+ _5tone_delay3])
+ line = RadioSetting("_5tone_settings._5tone_delay3",
+ "5 Tone Delay Frame 3", list )
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone delay (frame3)! Disabling.")
+
+ ext_length = _mem._5tone_settings._5tone_first_digit_ext_length
+ if ext_length == 255:
+ ext_length = 0
+ LOG.debug("1st Tone ext lenght unconfigured! Resetting to 0")
+
+ if ext_length <= len(
+ LIST_5TONE_DELAY ):
+ list = RadioSettingValueList(
+ LIST_5TONE_DELAY,
+ LIST_5TONE_DELAY[
+ ext_length])
+ line = RadioSetting(
+ "_5tone_settings._5tone_first_digit_ext_length",
+ "First digit extend length", list)
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid value for 5tone ext length! Disabling.")
+
+ decode_reset_time = _mem._5tone_settings.decode_reset_time
+ if decode_reset_time == 255:
+ decode_reset_time = 59
+ LOG.debug("Decode reset time unconfigured. resetting.")
+ if decode_reset_time <= len(LIST_5TONE_RESET):
+ list = RadioSettingValueList(
+ LIST_5TONE_RESET,
+ LIST_5TONE_RESET[
+ decode_reset_time])
+ line = RadioSetting("_5tone_settings.decode_reset_time",
+ "Decode reset time", list)
+ group_5tone.append(line)
+ else:
+ LOG.debug("Invalid value decode reset time! Disabling.")
+
return top
def set_settings(self, settings):
1
0
Hi,
the attached version of the btech-driver has support for DTMF and 5-Tone signalling.
However, I could only test it on the KT8900R, and unfortunately my last patch caused crashes for other models.
So I'd like to enable the new features only for models that have been successfully tested.
Therefore I'm searching for owners of following models:
JT2705M
JT-6188 Mini
JT-6188 Plus
GT-890
MP-300
UV-2501
UV-2501+220
UV-5001
MINI-8900
KT-UV980
KT8900
LT-588UV
Could you please add your models in line 1728 (for DTMF) and 1991 (for 5-Tone) of the attached module, load it in chirp, test whether chirp displays the DTMF and 5-Tone-Settings as configured in the OEM-software - and report the result?
Thanks in advance!
73,
Michael
2
5
Tested changes:
[Jim Unroe <rock.unroe(a)gmail.com>] [UV-5X3] Add remaining DTMF Decode settings
This patch adds the following settings to the BTech UV-5X3:
- Group Code
- Space Code
related to #3931
[Michael Wagner <michael.wagner(a)gmx.at>] Add TreeView into ScrolledWindow to prevent resize of window. #4209
[Michael Wagner <michael.wagner(a)gmx.at>] [uv5r] Memorize extra-settings before erasing memory. Fix for UV-5R of issue #4121
Try two, with consistent naming of variables.
[Jim Unroe <rock.unroe(a)gmail.com>] [KG-UV8D] Add TX Inhibited Channel Support
The Wouxun KG-UV8D supports the ability to program channels with
TX disabled. This patch adds support for this feature.
Related to #4175
[Tom Hayward <tom(a)tomh.us>] [id880] Fix typo in charset definition. #281
[Tom Hayward <tom(a)tomh.us>] [thf6a] Support full charset (ASCII). Fixes #141
[Tom Hayward <tom(a)tomh.us>] [id880] Support full charset. Fixes #281
[Tom Hayward <tom(a)tomh.us>] [vx5] Support full charset (ASCII). Fixes #292
[Tom Hayward <tom(a)tomh.us>] [id31a] set used bit when creating new memory, clear when deleting. Fixes #269
[Tom Hayward <tom(a)tomh.us>] Support PyGTK < 2.22 in bank edit. Fixes #231
[Tom Hayward <tom(a)tomh.us>] [d710] [v71] [d72] Fix tone list (not all tones are supported). Fixes #212
[Dan Smith <dsmith(a)danplanet.com>] [vx7] Fix setting memory power levels on 220MHz band
Fixes #214
[Dan Smith <dsmith(a)danplanet.com>] fips: Pennsylvania FIPS code was wrong. #117
[Marco Filippi <iz3gme.marco(a)gmail.com>] Consider lower bound frequency of each valid_band as valid
Fix bug #181
[Tom Hayward <tom(a)tomh.us>] tmd700: allow 8-char names. Fixes #176
[Dan Smith <dsmith(a)danplanet.com>] Fix the "blind deletion" problem, as well as properly direct copy/paste
Fixes #172
[David Griffith <dave(a)661.org>] Bug #155 fix: VX-7 1.25m power levels
[David Griffith <dave(a)661.org>] New INSTALL and README files
Fixes #122
[Tom Hayward <tom(a)tomh.us>] thd72: only use hardware flow on OS X. Fixes #166
[Marco Filippi <iz3gme.marco(a)gmail.com>] [FT817] Tone freq not set correctly
Same as #88 for FT857, to avoid code duplication fix code have been moved from
ft857 to its ancestor class
Fix bug #163
[Tom Hayward <tom(a)tomh.us>] Fix Mac .app so paths with spaces work. Fixes Bug #145
Full log:
Started by an SCM change
Building in workspace /var/lib/jenkins/jobs/chirp-test/workspace
[workspace] $ hg showconfig paths.default
[workspace] $ hg pull --rev default
[workspace] $ hg update --clean --rev default
4 files updated, 0 files merged, 0 files removed, 0 files unresolved
[workspace] $ hg log --rev . --template {node}
[workspace] $ hg log --rev . --template {rev}
[workspace] $ hg log --rev c386ef4dc431e5065266de2b163260e6f5637b27
[workspace] $ hg log --template "<changeset node='{node}' author='{author|xmlescape}' rev='{rev}' date='{date}'><msg>{desc|xmlescape}</msg><added>{file_adds|stringify|xmlescape}</added><deleted>{file_dels|stringify|xmlescape}</deleted><files>{files|stringify|xmlescape}</files><parents>{parents}</parents></changeset>\n" --rev default:0 --follow --prune c386ef4dc431e5065266de2b163260e6f5637b27
No emails were triggered.
[workspace] $ /bin/sh -xe /tmp/hudson268147186702195759.sh
[workspace] $ /bin/sh -xe /tmp/hudson7606836058231878804.sh
+ PATH=/usr/bin:/bin:/usr/local/bin ./run_all_tests.sh
test_bit_array (tests.unit.test_bitwise.TestBitType) ... ok
test_bit_array_fail (tests.unit.test_bitwise.TestBitType) ... ok
test_bitfield_u16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_u8 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul16 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bitfield_ul24 (tests.unit.test_bitwise.TestBitfieldTypes) ... ok
test_bbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_bbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_lbcd_array (tests.unit.test_bitwise.TestBitwiseBCDTypes) ... ok
test_int_array (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_u8 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul16 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul24 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_type_ul32 (tests.unit.test_bitwise.TestBitwiseBaseIntTypes) ... ok
test_char (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_invalid_chars (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_string_wrong_length (tests.unit.test_bitwise.TestBitwiseCharTypes) ... ok
test_comment_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_comment_inline_cppstyle (tests.unit.test_bitwise.TestBitwiseComments) ... ok
test_missing_semicolon (tests.unit.test_bitwise.TestBitwiseErrors) ... ok
test_seek (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_seekto (tests.unit.test_bitwise.TestBitwiseSeek) ... ok
test_struct_one_element (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_two_elements (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
test_struct_writes (tests.unit.test_bitwise.TestBitwiseStructTypes) ... ok
split_tone_encode_test_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
split_tone_encode_test_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_dtcs_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_none_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_cross_tone_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_dtcs (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_none (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tone (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_split_tone_decode_tsql (tests.unit.test_chirp_common.TestSplitTone) ... ok
test_fix_rounded_step_250 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_500 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_fix_rounded_step_750 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_12_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_2_5 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_5_0 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_6_25 (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_is_fractional_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_required_step_fail (tests.unit.test_chirp_common.TestStepFunctions) ... ok
test_format_freq (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_bad (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_decimal (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whitespace (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_parse_freq_whole (tests.unit.test_chirp_common.TestUtilityFunctions) ... ok
test_ensure_has_calls_almost_full (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_empty (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_partial (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full1 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_rptcall_full2 (tests.unit.test_import_logic.DstarTests) ... ok
test_ensure_has_calls_urcall_full (tests.unit.test_import_logic.DstarTests) ... ok
test_import_bank (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffA_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_dtcs_diffB_dtcs (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_negative (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_too_big_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_uhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_duplex_vhf (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_errors (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mem_with_warnings (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_invalid (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_am (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_mode_valid_fm (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_name (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_closest (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_dst (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_no_src (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_power_same (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffA_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_import_tone_diffB_tsql (tests.unit.test_import_logic.ImportFieldTests) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseBank) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseBankModel) ... ok
test_mapping (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestBaseMapping) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_get_name (tests.unit.test_mappingmodel.TestBaseMappingModel) ... ok
test_base_class (tests.unit.test_mappingmodel.TestBaseMappingModelIndexInterface) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomBankModel) ... ok
test_icom_bank (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_mapping_eq (tests.unit.test_mappingmodel.TestIcomBanks) ... ok
test_add_memory_to_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_index_bounds (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mapping_memories (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_memory_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_next_mapping_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_get_num_mappings (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_no_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_remove_memory_from_mapping_wrong_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_bank (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_set_memory_index_bad_index (tests.unit.test_mappingmodel.TestIcomIndexedBankModel) ... ok
test_auto_tone_mode_cross (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_pol (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_dtcs_rx (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tone (tests.unit.test_memedit_edits.TestEdits) ... ok
test_auto_tone_mode_tsql (tests.unit.test_memedit_edits.TestEdits) ... ok
test_init (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_bad_portnames (tests.unit.test_platform.Win32PlatformTest) ... ok
test_serial_ports_sorted (tests.unit.test_platform.Win32PlatformTest) ... ok
test_apply_callback (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_group (tests.unit.test_settings.TestSettingContainers) ... ok
test_radio_setting_multi (tests.unit.test_settings.TestSettingContainers) ... ok
test_changed (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_boolean (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_float (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_integer (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_list (tests.unit.test_settings.TestSettingValues) ... ok
test_radio_setting_value_string (tests.unit.test_settings.TestSettingValues) ... ok
test_validate_callback (tests.unit.test_settings.TestSettingValues) ... ok
test_delete_hole_with_all (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_all_full (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_with_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_delete_hole_without_hole (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_with_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
test_insert_hole_without_space (tests.unit.test_shiftdialog.ShiftDialogTest) ... ok
----------------------------------------------------------------------
Ran 151 tests in 0.055s
OK
Patch 'tip' is OK
Checking for PEP8 regressions...
./chirp/drivers/ft2900.py:781:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft2900.py:805:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft2900.py:835:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:842:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:923:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft2900.py:1106:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1111:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1118:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft2900.py:1123:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft2900.py:1169:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft2900.py:1174:80: E501 line too long (90 > 79 characters)
./chirp/drivers/ft2900.py:1238:1: E265 block comment should start with '# '
./chirp/drivers/ft60.py:490:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft60.py:495:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:500:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:505:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:510:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:538:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:556:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:567:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:584:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:589:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:594:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:599:80: E501 line too long (88 > 79 characters)
./chirp/drivers/ft60.py:605:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:610:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:621:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft60.py:632:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:637:80: E501 line too long (83 > 79 characters)
./chirp/drivers/ft60.py:642:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft60.py:647:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:652:80: E501 line too long (87 > 79 characters)
./chirp/drivers/ft60.py:657:80: E501 line too long (86 > 79 characters)
./chirp/drivers/ft817.py:1010:80: E501 line too long (85 > 79 characters)
./chirp/drivers/ft817.py:1087:80: E501 line too long (94 > 79 characters)
./chirp/drivers/kguv8d.py:698:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:727:80: E501 line too long (85 > 79 characters)
./chirp/drivers/kguv8d.py:731:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:746:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:760:80: E501 line too long (82 > 79 characters)
./chirp/drivers/kguv8d.py:764:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:774:80: E501 line too long (84 > 79 characters)
./chirp/drivers/kguv8d.py:778:80: E501 line too long (85 > 79 characters)
./chirp/drivers/kguv8d.py:789:80: E501 line too long (80 > 79 characters)
./chirp/drivers/kguv8d.py:800:80: E501 line too long (83 > 79 characters)
./chirp/drivers/kguv8d.py:817:80: E501 line too long (85 > 79 characters)
./chirp/drivers/leixen.py:956:80: E501 line too long (87 > 79 characters)
./chirp/drivers/thd72.py:205:80: E501 line too long (89 > 79 characters)
./chirp/drivers/thd72.py:206:80: E501 line too long (101 > 79 characters)
./chirp/drivers/uv5r.py:864:52: W291 trailing whitespace
./chirp/drivers/uv5r.py:947:13: E265 block comment should start with '# '
./chirp/settings.py:256:80: E501 line too long (81 > 79 characters)
./chirp/ui/mainapp.py:1379:80: E501 line too long (80 > 79 characters)
./chirp/ui/settingsedit.py:60:9: E303 too many blank lines (2)
real 0m7.568s
user 0m7.432s
sys 0m0.044s
================================================
Tests OK
+ cat /var/lib/jenkins/.chirp/debug.log
[2016-11-11 15:13:00,586] chirp.logger - DEBUG: CHIRP 0.3.0dev on Linux - Ubuntu 16.04.1 LTS (Python 2.7.12)
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-D7 = THD7Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-D7G = THD7GRadio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-D700 = TMD700Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-V7 = TMV7Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-G707 = TMG707Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-G71 = THG71Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-F6 = THF6ARadio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-F7 = THF7ERadio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-D710 = TMD710Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TH-D72_live_mode = THD72Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-V71 = TMV71Radio
[2016-11-11 15:13:00,624] chirp.directory - INFO: Registered Kenwood_TM-D710G = TMD710GRadio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Kenwood_TH-K2 = THK2Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Kenwood_TM-271 = TM271Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Kenwood_TM-281 = TM281Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Kenwood_TM-471 = TM471Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Icom_7200 = Icom7200Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Icom_IC-7000 = Icom7000Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Icom_IC-7100 = Icom7100Radio
[2016-11-11 15:13:00,625] chirp.directory - INFO: Registered Icom_746 = Icom746Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DR03T = DR03Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DR06T = DR06Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DR135T = DR135Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DR235T = DR235Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DR435T = DR435Radio
[2016-11-11 15:13:00,626] chirp.directory - INFO: Registered Alinco_DJ596 = DJ596Radio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered Jetstream_JT220M = JT220MRadio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered Alinco_DJ175 = DJ175Radio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered AnyTone_5888UV = AnyTone5888UVRadio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered Intek_HR-2040 = IntekHR2040Radio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered Polmar_DB-50M = PolmarDB50MRadio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered Powerwerx_DB-750X = PowerwerxDB750XRadio
[2016-11-11 15:13:00,627] chirp.directory - INFO: Registered AnyTone_TERMN-8R = AnyToneTERMN8RRadio
[2016-11-11 15:13:00,628] chirp.directory - INFO: Registered AnyTone_OBLTR-8R = AnyToneOBLTR8RRadio
[2016-11-11 15:13:00,628] chirp.directory - INFO: Registered Baofeng_UV-3R = UV3RRadio
[2016-11-11 15:13:00,629] chirp.directory - INFO: Registered Baofeng_BF-A58 = BFA58
[2016-11-11 15:13:00,629] chirp.directory - INFO: Registered Baofeng_UV-82WP = UV82WP
[2016-11-11 15:13:00,629] chirp.directory - INFO: Registered Baofeng_GT-3WP = GT3WP
[2016-11-11 15:13:00,629] chirp.directory - INFO: Registered Retevis_RT6 = RT6
[2016-11-11 15:13:00,629] chirp.directory - INFO: Registered Baojie_BJ-9900 = BJ9900Radio
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Baofeng_UV-5R = BaofengUV5RGeneric
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Baofeng_F-11 = BaofengF11Radio
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Baofeng_UV-82 = BaofengUV82Radio
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Baofeng_UV-6 = BaofengUV6Radio
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Intek_KT-980HP = IntekKT980Radio
[2016-11-11 15:13:00,630] chirp.directory - INFO: Registered Baofeng_BF-F8HP = BaofengBFF8HPRadio
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered Baofeng_UV-82HP = BaofengUV82HPRadio
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered Baojie_BJ-UV55 = BaojieBJUV55Radio
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered BTECH_UV-2501 = UV2501
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered BTECH_UV-2501+220 = UV2501_220
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered BTECH_UV-5001 = UV5001
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered WACCOM_MINI-8900 = MINI8900
[2016-11-11 15:13:00,631] chirp.directory - INFO: Registered QYT_KT-UV980 = KTUV980
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered QYT_KT8900 = KT9800
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered QYT_KT8900R = KT9800R
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered LUITON_LT-588UV = LT588UV
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered Feidaxin_FD-268A = FD268ARadio
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered Feidaxin_FD-268B = FD268BRadio
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered Feidaxin_FD-288A = FD288ARadio
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered Feidaxin_FD-288B = FD288BRadio
[2016-11-11 15:13:00,632] chirp.directory - INFO: Registered Feidaxin_FD-150A = FD150ARadio
[2016-11-11 15:13:00,633] chirp.directory - INFO: Registered Feidaxin_FD-160A = FD160ARadio
[2016-11-11 15:13:00,633] chirp.directory - INFO: Registered Feidaxin_FD-450A = FD450ARadio
[2016-11-11 15:13:00,633] chirp.directory - INFO: Registered Feidaxin_FD-460A = FD460ARadio
[2016-11-11 15:13:00,633] chirp.directory - INFO: Registered Yaesu_FT-1802M = FT1802Radio
[2016-11-11 15:13:00,634] chirp.directory - INFO: Registered Yaesu_FT-1D_R = FT1Radio
[2016-11-11 15:13:00,634] chirp.directory - INFO: Registered Yaesu_FT-2800M = FT2800Radio
[2016-11-11 15:13:00,634] chirp.directory - INFO: Registered Yaesu_FT-2900R_1900R = FT2900Radio
[2016-11-11 15:13:00,635] chirp.directory - INFO: Registered Yaesu_FT-50 = FT50Radio
[2016-11-11 15:13:00,635] chirp.directory - INFO: Registered Yaesu_FT-60 = FT60Radio
[2016-11-11 15:13:00,636] chirp.directory - INFO: Registered Yaesu_FT-7800_7900 = FT7800Radio
[2016-11-11 15:13:00,636] chirp.directory - INFO: Registered Yaesu_FT-8800 = FT8800Radio
[2016-11-11 15:13:00,636] chirp.directory - INFO: Registered Yaesu_FT-8900 = FT8900Radio
[2016-11-11 15:13:00,636] chirp.directory - INFO: Registered Yaesu_FT-8100 = FT8100Radio
[2016-11-11 15:13:00,636] chirp.directory - INFO: Registered Yaesu_FT-817 = FT817Radio
[2016-11-11 15:13:00,637] chirp.directory - INFO: Registered Yaesu_FT-817ND = FT817NDRadio
[2016-11-11 15:13:00,637] chirp.directory - INFO: Registered Yaesu_FT-817ND_US = FT817NDUSRadio
[2016-11-11 15:13:00,637] chirp.directory - INFO: Registered Yaesu_FT-857_897 = FT857Radio
[2016-11-11 15:13:00,637] chirp.directory - INFO: Registered Yaesu_FT-857_897_US = FT857USRadio
[2016-11-11 15:13:00,637] chirp.directory - INFO: Registered Yaesu_FT-90 = FT90Radio
[2016-11-11 15:13:00,638] chirp.directory - INFO: Registered Yaesu_FTM-350 = FTM350Radio
[2016-11-11 15:13:00,638] chirp.directory - INFO: Registered Generic_CSV = CSVRadio
[2016-11-11 15:13:00,639] chirp.directory - INFO: Registered Commander_KG-UV = CommanderCSVRadio
[2016-11-11 15:13:00,639] chirp.directory - INFO: Registered RT_Systems_CSV = RTCSVRadio
[2016-11-11 15:13:00,639] chirp.directory - INFO: Registered ARRL_Travel_Plus = TpeRadio
[2016-11-11 15:13:00,647] chirp.directory - INFO: Registered Generic_XML = XMLRadio
[2016-11-11 15:13:00,648] chirp.directory - INFO: Registered BTECH_GMRS-V1 = GMRSV1
[2016-11-11 15:13:00,651] chirp.directory - INFO: Registered Baofeng_BF-888 = H777Radio
[2016-11-11 15:13:00,652] chirp.directory - INFO: Registered HobbyPCB_RS-UV3 = HobbyPCBRSUV3Radio
[2016-11-11 15:13:00,652] chirp.directory - INFO: Registered Icom_IC-208H = IC208Radio
[2016-11-11 15:13:00,652] chirp.directory - INFO: Registered Icom_IC-2100H = IC2100Radio
[2016-11-11 15:13:00,652] chirp.directory - INFO: Registered Icom_IC-2200H = IC2200Radio
[2016-11-11 15:13:00,652] chirp.directory - INFO: Registered Icom_IC-2720H = IC2720Radio
[2016-11-11 15:13:00,653] chirp.directory - INFO: Registered Icom_IC-2820H = IC2820Radio
[2016-11-11 15:13:00,653] chirp.directory - INFO: Registered Icom_IC-91_92AD = IC9xRadio
[2016-11-11 15:13:00,653] chirp.directory - INFO: Registered Icom_IC-Q7A = ICQ7Radio
[2016-11-11 15:13:00,654] chirp.directory - INFO: Registered Icom_IC-T70 = ICT70Radio
[2016-11-11 15:13:00,654] chirp.directory - INFO: Registered Icom_IC-T7H = ICT7HRadio
[2016-11-11 15:13:00,654] chirp.directory - INFO: Registered Icom_IC-T8A = ICT8ARadio
[2016-11-11 15:13:00,654] chirp.directory - INFO: Registered Icom_IC-W32A = ICW32ARadio
[2016-11-11 15:13:00,654] chirp.directory - INFO: Registered Icom_IC-W32E = ICW32ERadio
[2016-11-11 15:13:00,655] chirp.directory - INFO: Registered Icom_IC-V82_U82 = ICx8xRadio
[2016-11-11 15:13:00,655] chirp.directory - INFO: Registered Icom_ID-31A = ID31Radio
[2016-11-11 15:13:00,655] chirp.directory - INFO: Registered Icom_ID-51 = ID51Radio
[2016-11-11 15:13:00,655] chirp.directory - INFO: Registered Icom_ID-51_Plus = ID51PLUSRadio
[2016-11-11 15:13:00,655] chirp.directory - INFO: Registered Icom_ID-800H_v2 = ID800v2Radio
[2016-11-11 15:13:00,656] chirp.directory - INFO: Registered Icom_ID-880H = ID880Radio
[2016-11-11 15:13:00,656] chirp.directory - INFO: Registered Icom_ID-80H = ID80Radio
[2016-11-11 15:13:00,656] chirp.directory - INFO: Registered Kenwood_HMK = HMKRadio
[2016-11-11 15:13:00,656] chirp.directory - INFO: Registered Kenwood_ITM = ITMRadio
[2016-11-11 15:13:00,657] chirp.directory - INFO: Registered Wouxun_KG-UV8D = KGUV8DRadio
[2016-11-11 15:13:00,657] chirp.directory - INFO: Registered KYD_NC-630A = NC630aRadio
[2016-11-11 15:13:00,657] chirp.directory - INFO: Registered KYD_IP-620 = IP620Radio
[2016-11-11 15:13:00,657] chirp.directory - INFO: Registered Leixen_VV-898 = LeixenVV898Radio
[2016-11-11 15:13:00,658] chirp.directory - INFO: Registered Jetstream_JT270M = JetstreamJT270MRadio
[2016-11-11 15:13:00,658] chirp.directory - INFO: Registered Leixen_VV-898S = LeixenVV898SRadio
[2016-11-11 15:13:00,658] chirp.directory - INFO: Registered LUITON_LT-725UV = LT725UV
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Wouxun_KG-UVD1P = KGUVD1PRadio
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Wouxun_KG-UV6 = KGUV6DRadio
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Wouxun_KG-816 = KG816Radio
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Wouxun_KG-818 = KG818Radio
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Puxing_PX-777 = Puxing777Radio
[2016-11-11 15:13:00,659] chirp.directory - INFO: Registered Puxing_PX-2R = Puxing2RRadio
[2016-11-11 15:13:00,661] chirp.directory - INFO: Registered Puxing_PX-888K = Puxing_PX888K_Radio
[2016-11-11 15:13:00,661] chirp.directory - INFO: Registered Retevis_RT21 = RT21Radio
[2016-11-11 15:13:00,661] chirp.directory - INFO: Registered TYT_TH-7800_File = TYTTH7800File
[2016-11-11 15:13:00,661] chirp.directory - INFO: Registered TYT_TH-7800 = TYTTH7800Radio
[2016-11-11 15:13:00,662] chirp.directory - INFO: Registered TYT_TH9000_220 = Th9000220Radio
[2016-11-11 15:13:00,662] chirp.directory - INFO: Registered TYT_TH9000_144 = Th9000144Radio
[2016-11-11 15:13:00,662] chirp.directory - INFO: Registered TYT_TH9000_440 = Th9000440Radio
[2016-11-11 15:13:00,662] chirp.directory - INFO: Registered TYT_TH-9800_File = TYTTH9800File
[2016-11-11 15:13:00,662] chirp.directory - INFO: Registered TYT_TH-9800 = TYTTH9800Radio
[2016-11-11 15:13:00,663] chirp.directory - INFO: Registered TYT_TH-UV3R = TYTUV3RRadio
[2016-11-11 15:13:00,663] chirp.directory - INFO: Registered TYT_TH-UV3R-25 = TYTUV3R25Radio
[2016-11-11 15:13:00,663] chirp.directory - INFO: Registered TYT_TH-UVF8D = TYTUVF8DRadio
[2016-11-11 15:13:00,663] chirp.directory - INFO: Registered Kenwood_TH-D72_clone_mode = THD72Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered TYT_TH-UVF1 = TYTTHUVF1Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-260 = TK260_Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-270 = TK270_Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-272 = TK272_Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-278 = TK278_Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-360 = TK360_Radio
[2016-11-11 15:13:00,664] chirp.directory - INFO: Registered Kenwood_TK-370 = TK370_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-372 = TK372_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-378 = TK378_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-760 = TK760_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-762 = TK762_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-768 = TK768_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-860 = TK860_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-862 = TK862_Radio
[2016-11-11 15:13:00,665] chirp.directory - INFO: Registered Kenwood_TK-868 = TK868_Radio
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-868G = TK868G_Radios
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-862G = TK862G_Radios
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-860G = TK860G_Radios
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-768G = TK768G_Radios
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-762G = TK762G_Radios
[2016-11-11 15:13:00,666] chirp.directory - INFO: Registered Kenwood_TK-760G = TK760G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-388G = TK388G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-378G = TK378G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-372G = TK372G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-370G = TK370G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-360G = TK360G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-278G = TK278G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-272G = TK272G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-270G = TK270G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-260G = TK260G_Radios
[2016-11-11 15:13:00,667] chirp.directory - INFO: Registered Kenwood_TK-7102 = KenwoodTK7102Radio
[2016-11-11 15:13:00,668] chirp.directory - INFO: Registered Kenwood_TK-8102 = KenwoodTK8102Radio
[2016-11-11 15:13:00,668] chirp.directory - INFO: Registered Kenwood_TK-7108 = KenwoodTK7108Radio
[2016-11-11 15:13:00,668] chirp.directory - INFO: Registered Kenwood_TK-8108 = KenwoodTK8108Radio
[2016-11-11 15:13:00,668] chirp.directory - INFO: Registered Kenwood_TS-2000 = TS2000Radio
[2016-11-11 15:13:00,669] chirp.directory - INFO: Registered BTECH_UV-5X3 = UV5X3
[2016-11-11 15:13:00,669] chirp.directory - INFO: Registered Baofeng_UV-6R = UV6R
[2016-11-11 15:13:00,669] chirp.directory - INFO: Registered Baofeng_UV-B5 = BaofengUVB5
[2016-11-11 15:13:00,670] chirp.directory - INFO: Registered BTECH_UV-50X3 = UV50X3
[2016-11-11 15:13:00,670] chirp.directory - INFO: Registered Yaesu_VX-170 = VX170Radio
[2016-11-11 15:13:00,670] chirp.directory - INFO: Registered Yaesu_VX-2 = VX2Radio
[2016-11-11 15:13:00,671] chirp.directory - INFO: Registered Yaesu_VX-3 = VX3Radio
[2016-11-11 15:13:00,671] chirp.directory - INFO: Registered Yaesu_VX-5 = VX5Radio
[2016-11-11 15:13:00,671] chirp.directory - INFO: Registered Yaesu_VX-6 = VX6Radio
[2016-11-11 15:13:00,671] chirp.directory - INFO: Registered Yaesu_VX-7 = VX7Radio
[2016-11-11 15:13:00,672] chirp.directory - INFO: Registered Yaesu_VX-8_R = VX8Radio
[2016-11-11 15:13:00,672] chirp.directory - INFO: Registered Yaesu_VX-8_DR = VX8DRadio
[2016-11-11 15:13:00,672] chirp.directory - INFO: Registered Yaesu_VX-8_GE = VX8GERadio
[2016-11-11 15:13:00,673] chirp.directory - INFO: Registered Vertex_Standard_VXA-700 = VXA700Radio
Email was triggered for: Success
Sending email for trigger: Success
1
0
11 Nov '16
# HG changeset patch
# User Jim Unroe <rock.unroe(a)gmail.com>
# Date 1478905113 18000
# Node ID 1b62ad89d453ee26555704d9fe75767866adb48a
# Parent c386ef4dc431e5065266de2b163260e6f5637b27
[UV-5X3] Add remaining DTMF Decode settings
This patch adds the following settings to the BTech UV-5X3:
- Group Code
- Space Code
related to #3931
diff -r c386ef4dc431 -r 1b62ad89d453 chirp/drivers/uv5x3.py
--- a/chirp/drivers/uv5x3.py Tue Nov 01 18:42:18 2016 -0700
+++ b/chirp/drivers/uv5x3.py Fri Nov 11 17:58:33 2016 -0500
@@ -71,6 +71,8 @@
LIST_TXPOWER = ["High", "Low"]
LIST_VOICE = ["Off", "English", "Chinese"]
LIST_WORKMODE = ["Frequency", "Channel"]
+LIST_DTMF_SPECIAL_DIGITS = [ "*", "#", "A", "B", "C", "D"]
+LIST_DTMF_SPECIAL_VALUES = [ 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x00]
def model_match(cls, data):
"""Match the opened/downloaded image to the correct version"""
@@ -1119,6 +1121,27 @@
rs.set_apply_callback(apply_code, self._memobj.ani)
dtmfd.append(rs)
+ def apply_dmtf_listvalue(setting, obj):
+ LOG.debug("Setting value: "+ str(setting.value) + " from list")
+ val = str(setting.value)
+ index = LIST_DTMF_SPECIAL_DIGITS.index(val)
+ val = LIST_DTMF_SPECIAL_VALUES[index]
+ obj.set_value(val)
+
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.groupcode)
+ rs = RadioSetting("ani.groupcode", "Group Code",
+ RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
+ LIST_DTMF_SPECIAL_DIGITS[idx]))
+ rs.set_apply_callback(apply_dmtf_listvalue, _mem.ani.groupcode)
+ dtmfd.append(rs)
+
+ idx = LIST_DTMF_SPECIAL_VALUES.index(_mem.ani.spacecode)
+ rs = RadioSetting("ani.spacecode", "Space Code",
+ RadioSettingValueList(LIST_DTMF_SPECIAL_DIGITS,
+ LIST_DTMF_SPECIAL_DIGITS[idx]))
+ rs.set_apply_callback(apply_dmtf_listvalue, _mem.ani.spacecode)
+ dtmfd.append(rs)
+
if _mem.ani.resettime > 0x9F:
val = 0x4F
else:
1
0
[chirp_devel] [PATCH] Add TreeView into ScrolledWindow to prevent resize of window. #4209
by Michael Wagner (OE4AMW) 11 Nov '16
by Michael Wagner (OE4AMW) 11 Nov '16
11 Nov '16
# HG changeset patch
# User Michael Wagner <michael.wagner(a)gmx.at>
# Date 1478903495 -3600
# Fri Nov 11 23:31:35 2016 +0100
# Node ID 7131b7133b5ebce905376c59784d1d10503d0fe7
# Parent c386ef4dc431e5065266de2b163260e6f5637b27
Add TreeView into ScrolledWindow to prevent resize of window. #4209
diff -r c386ef4dc431 -r 7131b7133b5e chirp/ui/settingsedit.py
--- a/chirp/ui/settingsedit.py Tue Nov 01 18:42:18 2016 -0700
+++ b/chirp/ui/settingsedit.py Fri Nov 11 23:31:35 2016 +0100
@@ -45,12 +45,17 @@
# The selection tree
self._store = gtk.TreeStore(gobject.TYPE_STRING, gobject.TYPE_INT)
self._view = gtk.TreeView(self._store)
- self._view.set_size_request(150, -1)
self._view.get_selection().connect("changed", self._view_changed_cb)
self._view.append_column(
gtk.TreeViewColumn("", gtk.CellRendererText(), text=0))
self._view.show()
- paned.pack1(self._view)
+ scrolled_window = gtk.ScrolledWindow()
+ scrolled_window.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+ scrolled_window.add_with_viewport(self._view)
+ scrolled_window.set_size_request(200, -1)
+ scrolled_window.show()
+ paned.pack1(scrolled_window)
+
# The settings notebook
self._notebook = gtk.Notebook()
1
0