Ok, moderate progress after playing with some ideas I had.

Instead of sending the ident interrogation as a single group of bytes, I slightly delayed writing each one individually:

    for byte in magic:
        serial.write(byte)
        time.sleep(0.01)

turns out the radio likes this, and responded!
Now im getting a bit further. Shelving this for tonight!

---------------------
User selected Baojie BJ-UV55 on port COM5
Clone thread started
Sending Magic: 000: 50 bb dd 55 63 98 4d 00   P..Uc.M.

Ident:
000: aa 01 36 05 05 46 04 dd   ..6..F..

Clone thread ended
Traceback (most recent call last):
  File "C:\Documents and Settings\jens\build\chirp.hg\chirpui\mainapp.py", line
428, in cb_clonein
    self.do_open_live(radio, tempname="(" + _("Untitled") + ")")
  File "C:\Documents and Settings\jens\build\chirp.hg\chirpui\mainapp.py", line
362, in do_open_live
    eset = editorset.EditorSet(radio, self, tempname=tempname)
  File "C:\Documents and Settings\jens\build\chirp.hg\chirpui\editorset.py", lin
e 126, in __init__
    self.rf = self.radio.get_features()
  File "C:\Documents and Settings\jens\build\chirp.hg\chirp\uv5r.py", line 530,
in get_features
    elif not self._is_orig() and self._my_upper_band() == vhf_220_radio:
  File "C:\Documents and Settings\jens\build\chirp.hg\chirp\uv5r.py", line 762,
in _is_orig
    version_tag)
chirp.errors.RadioError: Unable to parse version string                 



On Saturday, November 9, 2013 10:55 AM, Jens J. <kd4tjx@yahoo.com> wrote:
I'm working on the BJ-UV55, and after inspecting the serial comms and memory format, I have concluded that this is essentially a clone (at least memory/program-wise) of UV5R.

It uses the same memory format, similar ident string, and same programming protocol.

So I have set this ident string as follows:
BJUV55_MODEL   = "\x50\xBB\xDD\x55\x63\x98\x4D"

However, when using chirp, the radio never acks this (with 0x06)

Looking at portmon, etc, I see that the baud and settings (9600, 8N1) are correct.

It's not just chirp. If I try to interrogate with ident string from something like realterm, the radio never responds. I'm sure that everything is correct, but the radio still refuses to respond. (I've tried this on linux and windows.) I have also tried doing a factory reset on the radio.

The radio will continue to respond just fine to the OEM (but extremely crappy) software with same handshake.

Has anyone else encountered this sort of behavior with the UV5R clone or similar families?
Any thoughts or ideas?

PS. one thought was maybe the oem software is doing some tricks with toggling DTR/RTS. I did try to fiddle around with various combinations, but so far no luck. (One oddity I did notice was that when serial line was set to BREAK, the radio keyed up PTT! Maybe this is something to do with the cable pinout?)


-Jens
AF5MI


_______________________________________________
chirp_devel mailing list
chirp_devel@intrepid.danplanet.com
http://intrepid.danplanet.com/mailman/listinfo/chirp_devel
Developer docs: http://chirp.danplanet.com/projects/chirp/wiki/Developers