I have made some assumptions about the radio to get a leg up. Keep in mind I am working from a logical argument not an understanding of python or chirp.
I am using the 760G driver set written by Pavel Milanes, tk760g.py, as a starting point to understand and open the radio. I edited that file by copying the TK270G data and changing the model information to TK280 ...
@directory.register class TK280G_Radios(Kenwood_Serie_60G): """Kenwood TK-280G Radio K/K1/M/E/NE/NT""" MODEL = "TK-280G" TYPE = "P2800" VARIANTS = { "P2800T\xff": (128, 144, 174, "NE/NT"), # 146-174 original "P2800$\xff": (128, 144, 174, "E"), # 146-174 original "P2800\x14\xff": (128, 150, 174, "M"), "P2800\x05\xff": (128, 136, 150, "K1"), "P2800\x04\xff": (128, 150, 174, "K"), }
This gave me the error wrong model with the message, "expected P2800 but got v2.01k instead". So I edited the string again ...
@directory.register class TK280G_Radios(Kenwood_Serie_60G): """Kenwood TK-280G Radio K/K1/M/E/NE/NT""" MODEL = "TK-280G" TYPE = "v2.01k" VARIANTS = { "P2800T\xff": (128, 144, 174, "NE/NT"), # 146-174 original "P2800$\xff": (128, 144, 174, "E"), # 146-174 original "P2800\x14\xff": (128, 150, 174, "M"), "P2800\x05\xff": (128, 136, 150, "K1"), "P2800\x04\xff": (128, 150, 174, "K"), }
and got a Handshake error ...
File "/usr/lib/python2.7/dist-packages/chirp/drivers/tk760g.py", line 884, in sync_in self._mmap = do_download(self) File "/usr/lib/python2.7/dist-packages/chirp/drivers/tk760g.py", line 517, in do_download _open_radio(radio, status) File "/usr/lib/python2.7/dist-packages/chirp/drivers/tk760g.py", line 501, in _open_radio _handshake(radio) File "/usr/lib/python2.7/dist-packages/chirp/drivers/tk760g.py", line 385, in _handshake raise Exception(mesg) Exception: Handshake failed
from the code process at line 385 ...
def _handshake(radio, msg=""): """Make a full handshake""" # send ACK _raw_send(radio, ACK_CMD) # receive ACK ack = _raw_recv(radio, 1) # check ACK if ack != ACK_CMD: _close_radio(radio) mesg = "Handshake failed " + msg # DEBUG LOG.debug(mesg) raise Exception(mesg)
So basically the ACK failed. If I understand the serial process this could be the form of the ACK, bit length, stop bit etc. Could it also be the model mismatch raising it's head?
I will try a couple of other configurations to get in but suggestions are always welcome.
David Davis KG7ZMX
On Jun 17, 2016 11:48 PM, "Glancing Blow via chirp_devel" < chirp_devel@intrepid.danplanet.com> wrote:
So basically the ACK failed. If I understand the serial process this
could be the form of the ACK, bit length, stop bit etc. Could it also be the model mismatch raising it's head?
You might try printing the ack to see what you're getting.
You might end up needing to chew through some extra data similar to what I did for the TK-790H.
http://intrepid.danplanet.com/pipermail/chirp_devel/2016-June/004042.html
Tom KD7LXL
participants (2)
-
Glancing Blow
-
Tom Hayward