I'm sorry I'm not a programmer, just saw the ID in the log as being unknown then searched for the file that contained it and added a bit to get it recognised.
The programming of the memory works without problems once the memory has been programmed before.
It only reads and writes previous programmed memory channels, however, it does work fine.
So if people programmed the memory before, no matter what it contains, Chirp will work fine.
The log is showing this when a memory isn't programmed previously:
[2015-06-03 17:46:43,877] chirp.drivers.kenwood_live - DEBUG: PC->RADIO: MR0008;
[2015-06-03 17:46:43,987] chirp.drivers.kenwood_live - DEBUG: RADIO->PC: MR0 0800000000000000000000000000000000000;
[2015-06-03 17:46:43,987] chirp.ui.common - ERROR: Exception running RadioJob: `?' is not in valid list: ['WFM', 'FM', 'NFM', 'AM', 'NAM', 'DV', 'USB', 'LSB', $
[2015-06-03 17:46:43,988] chirp.ui.reporting - DEBUG: Throttling...
[2015-06-03 17:46:43,988] chirp.ui.common - ERROR: -- Exception: --
[2015-06-03 17:46:43,988] chirp.ui.common - ERROR: Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/chirp/ui/common.py", line 116, in _execute
result = func(*self.args, **self.kwargs)
File "/usr/lib/pymodules/python2.7/chirp/drivers/ts2000.py", line 111, in get_memory
mem = self._parse_mem_spec(result)
File "/usr/lib/pymodules/python2.7/chirp/drivers/ts2000.py", line 147, in _parse_mem_spec
mem.mode = TS2000_MODES[int(_p5)]
File "/usr/lib/pymodules/python2.7/chirp/chirp_common.py", line 333, in __setattr__
(val, self._valid_map[name]))
ValueError: `?' is not in valid list: ['WFM', 'FM', 'NFM', 'AM', 'NAM', 'DV', 'USB', 'LSB', 'CW', 'RTTY', 'DIG', 'PKT', 'NCW', 'NCWR', 'CWR', 'P25', 'Auto']
[2015-06-03 17:46:43,988] chirp.ui.common - ERROR: ----------------
[2015-06-03 17:46:43,989] chirp.ui.common - ERROR: Job Args: (8,)
[2015-06-03 17:46:43,989] chirp.ui.common - ERROR: Job KWArgs: {}
[2015-06-03 17:46:43,989] chirp.ui.common - ERROR: Job Called from:
File "/usr/bin/chirpw", line 145, in
gtk.main()
File "/usr/lib/pymodules/python2.7/chirp/ui/mainapp.py", line 1406, in mh
self.do_download(*args)
File "/usr/lib/pymodules/python2.7/chirp/ui/mainapp.py", line 687, in do_download
self.do_open_live(radio)
File "/usr/lib/pymodules/python2.7/chirp/ui/mainapp.py", line 406, in do_open_live
eset = editorset.EditorSet(radio, self, tempname=tempname)
File "/usr/lib/pymodules/python2.7/chirp/ui/editorset.py", line 143, in __init__
self._make_device_editors(device, devrthread, index)
File "/usr/lib/pymodules/python2.7/chirp/ui/editorset.py", line 78, in _make_device_editors
memories = memedit.MemoryEditor(devrthread)
File "/usr/lib/pymodules/python2.7/chirp/ui/memedit.py", line 1376, in __init__
self.prefill()
File "/usr/lib/pymodules/python2.7/chirp/ui/memedit.py", line 1063, in prefill
job = common.RadioJob(handler, "get_memory", i)
Looks to me it's reading the empty memories perfectly but then thinks the value is wrong.
I hope it helps you to fix it, as for the TS-590 (and simmular) Chrip would be a perfect tool to use memory.
I never used memory before as it's too hard to program with a name in it and I do not run Windows.
Thanks, Bas - ON2HB.