Project

General

Profile

Actions

New Model #3015

closed

SUPPORT - Model BTech UV2501 UV5001

Added by John LaMartina over 8 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
Start date:
11/21/2015
Due date:
% Done:

100%

Estimated time:
Equipment Loan/Gift Offered:
Yes
I read the instructions above:

Description

This is a support request for the BTech UV2501/UV5001.
The same software is currently used for both models.


Files

write_commands_for_download.txt (3.95 KB) write_commands_for_download.txt commands to instruct the radio to download the data Pavel Milanes, 01/08/2016 10:16 AM
headers_received_at_downloads.txt (3.96 KB) headers_received_at_downloads.txt headers received from the commands to instruct the radio to download the data (data removed) Pavel Milanes, 01/08/2016 10:16 AM
upload_writes.txt (16.2 KB) upload_writes.txt commands to instruct the radio to write (upload) the data Pavel Milanes, 01/08/2016 10:16 AM
uv5001.py (7.93 KB) uv5001.py Python Windows script to download/upload proof of concept for the UV-5001 Pavel Milanes, 01/08/2016 10:16 AM
uv5001.img (12.5 KB) uv5001.img Radio sample image Pavel Milanes, 01/08/2016 10:16 AM
uv2501.py (8.25 KB) uv2501.py Modified uv5001.py to support uv2501 Foo Bar, 01/19/2016 06:03 PM
uv2501.img (12.5 KB) uv2501.img Image file from my personal uv2501 Foo Bar, 01/19/2016 06:03 PM
UV5001_DN.py (8.23 KB) UV5001_DN.py Jim Unroe, 01/20/2016 04:42 AM
debug 5-15-16.txt (23.2 KB) debug 5-15-16.txt Debug file on Gen 3 UV-2501, Windows 7, Btech cable Joe Alv, 05/14/2016 10:53 PM
Capture.PNG (281 KB) Capture.PNG m s, 05/24/2016 03:35 PM

Related issues

Related to New Model #2673: Juentai JT-6188ClosedJim Unroe06/26/2015

Actions
Related to Bug #3543: QYT KT-8900ClosedPavel Milanes04/04/2016

Actions
Related to Bug #3539: KT8900 erraticClosedPavel Milanes04/02/2016

Actions
Related to Bug #3559: BTECH 2501-220 fails to IDRejected04/08/2016

Actions
Actions #1

Updated by Pavel Milanes about 8 years ago

Some progress between Jim Unroe and me (Pavel Milanes) on the BTECH UV-5001.

A download/upload script for (python) windows came into light.

And some (clean and parsed) debug files attached from the serial monitor logs to enlighten a little about the comm process.

Any owner of the BTECH UV-2501 want to give the script a try? This will allow us to auto-detect the right model for you

If you own a BTECH UV-2501 and want to help, write me an email for instructions.

73

Actions #2

Updated by Brad S about 8 years ago

I have a BTECH UV-2501 and would be willing to help.

Actions #3

Updated by Foo Bar about 8 years ago

I've modified the original script from Pavel to support the UV-2501.
The script doesn't like to download on the first try, but will usually work on the second run.

I'll help out as much as I can. I can't write python, but I can play with existing code a little bit.

Actions #4

Updated by Pavel Milanes about 8 years ago

Hi Jim and others.

I have he skill, the willingness, the hardware interface & the time, but not the radio.

:-(

73.

Actions #5

Updated by Foo Bar about 8 years ago

Just let me know what I need to test or play around with.
The file I uploaded contains the ident string to look for. The magic code seems to work.

The only thing that needs work is the timing of the data download.

----Script first run----
Good Ident it's a BTECH UV-2501, ident follows
000: 01 03 00 01 07 09 04 00   ........
008: 00 05 02 00 57 48 4b 4a   ....WHKJ
016: 31 36 38 4d 49 4e 4d 32   168MINM2
024: 39 32 30 34 55 38 38 30   9204U880
032: 30 30 30 30 30 30 30 30   00000000
040: 30 30 30 30 30 30 30 30   00000000
048: 55 00 00 00 00 00 00 00   U.......

 
Radio Found!!!, downloading image to uv2501.img
BAD ACK (0x58) for block: 0x0000
Traceback (most recent call last):
  File "uv2501.py", line 258, in 
    d = dump_mem(radio)
  File "uv2501.py", line 197, in dump_mem
    raise Exception, "Problem receiving block %s" % addr
Exception: Problem receiving block 0

----Script ran again----
Radio Found!!!, downloading image to uv2501.img
Correct ACK (0x05) for block: 0x0000
Header received:
000: 58 00 00 40 00 00 00 00   X..@....
----etc...----
Actions #6

Updated by Brad S about 8 years ago

I can get you remote access to a windows machine with logmein and a uv-2501 connected to the serial interface. The only issue that I see in this is that the radio likes to timeout, but I suspect that we can change a setting to adjust this.

Actions #7

Updated by Jim Unroe about 8 years ago

I have the radios. I have mapped out the majority of the memory. What I am still lacking is figuring out how to get the download/upload part converted from Pavel's script into my CHIRP driver.

The script above does not retrieve the complete memory of the radio. I modified it slightly to get it all. I have attached the script. I also modified it to run in the current folder.

I'm not going to map out the memory of the 2501 until after I have the 5001 available. Working on two similar radios at the same time bit me when working on the AnytoneTech radios.

Jim

Actions #8

Updated by Pavel Milanes about 8 years ago

Jim Tuit:

If the fault you found in the 2501 about running the second not the first time is consistent then we can talk about a communication bug (or feature) and keep that into account in the code.

Than make me think, the \x58 is the char "X" the first on the header... humm...

Is the 2501 missing the ACK of the first packet?
Is the 2501 having another trick like the "\x05" on the first packet as the 5001.

Just the testing and playing will have the truth, wait for my emails to work it out and build a bare-bone driver.

Keep mapping the mem and +1 to the one radio at a time.

73

Actions #9

Updated by Pavel Milanes about 8 years ago

Brad S wrote:

I can get you remote access to a windows machine with logmein and a uv-2501 connected to the serial interface.
The only issue that I see in this is that the radio likes to timeout, but I suspect that we can change a setting to adjust this.

Brad, thanks for the offering, but unfortunately this is Cuba.

I have a 64Kbps link on my workplace shared with another 11 users; and at home (believe it or not) just a 9600 baud packet radio link on VHF and everything has to be done with much patience, like writing this post, for example.

So technically is impossible to me to user such solution, but thanks for the offering.

Actions #10

Updated by Foo Bar about 8 years ago

It's not much yet, but this is what I've got on the uv2501 radio memory so far.
Hopefully I've got the memory numbers and types right so far.

#mem-start 0x0000
--- Start Ch Freqs (16b/entry)
lbcd[4]         RX Freq
lbcd[4]         TX Freq
Unk[2]          unknown
Unk[2]          T-CTCS
Unk[2]          unknown
Unk[2]          unknown
--- End Ch Freq
#ENDseek 0x0c1f

#seekto 0x0e00
Unk [??]        0x0e00-0x0ebf - Unknown
--- Start Settings
Char[6] 0ec0    Power on MSG - Line 1
Char[6] 0ec6    Power on MSG - Line 2
--- End Settings
Unk [??]        0x0ecc-0x0fff - Unknown
#ENDseek 0x0fff

#seekto 0x1000
--- Start Ch Names (16b/entry)
Char[6]         Ch Name
    [10]        "FF FF FF FF FF FF FF FF FF FF"
--- End Ch Names
#ENDseek 0x1c20

#seekto 0x1c20 
--- Blank FF's to 0x1fff
#seekto 0x2000         
??? UNKNOWN
#ENDseek 0x23f0

#seekto 0x23f0         
--- Blank FF's to 0x2aef
#seekto 0x29f0         
Unk[8]          03 03 ff ff ff ff ff ff
#seekto 0x29f8         
--- Blank FF's to 0x2aef
#seekto 0x2af0 
Unk[8]          ??? Unknown
#seekto 0x2af8
--- Blank FF's
#ENDseek 0x2fff

#seekto 0x3000
--- FM Freqs - Start 3000
Unk [4] 0000    (8b)    FM 1 Freq (01 00 01 05 for 101.5Mhz)
Char[6] 0008    (10b)   FF FF FF FF FF FF
Char[6] 0020    (6b)    FM 1 Name
Char[4] 0026    (2b)    FF FF
--- End FM Freqs
#mem-end 0x3200
Actions #11

Updated by Jim Unroe about 8 years ago

  • Assignee set to Jim Unroe
Actions #12

Updated by James Ridenour about 8 years ago

I just purchased a UV-5001 and would be willing to help out any way I can to get CHIRP working with it. I'm not up on code or anything but if I can be of help let me know.

Actions #13

Updated by Pavel Milanes about 8 years ago

  • % Done changed from 10 to 30

Hi to all. Some progress today, we have a first working driver!

By now just frequency and channel name tag.

Slow progress because I don't have the radio in hand and I'm working with Jim on this as he do have a radio.

Cheers

Actions #14

Updated by kevin humphrey about 8 years ago

I have a BTECH UV-5001 and would be willing to help
i have no programming skills but i have the radio and USB data cord

Actions #15

Updated by t z about 8 years ago

I have a 5001, and am a senior firmware engineer, so what can I do to help?
What is the easiest way to test the "beta"?

Actions #16

Updated by daniel williams about 8 years ago

I also have a BTECH UV-5001. I'm also willing to help any way I can. I'm completely disappointed in the software it currently uses. CHIRP is an awesome resource and I greatly appreciate your work.

Actions #17

Updated by Pavel Milanes about 8 years ago

Hi, This night I was provided with a serial logs for the UV-2501+220 thanks to Jim Unroe.

So far so good, I found that the comm procedure is essentially the same but they make a double check to see if the radio at the end of the interface is really a 2501+220 and not a 5001 or a simple 2501.

That lead to review the drivers and serial logs to found that with the factory softwares for this radios read up to 0x3200 and in the write just to 0x3100, but our driver can reach beyond up to 0x4000 and in that "hidden" area reside the ID Codes for each radio model and the second id the 2501+220 ask for.

That will allow us to improve the aim in the detection of the specific models, and it's the solution for a problem we had already with the upload in the developing driver.

Just a note to keep you informed.

Actions #18

Updated by Robert Young about 8 years ago

i have a btech uv-2501+220 if anyone would like it send me a message ill send it to you or send me the stuff and how to integrate it with my most up to date chirp and ill try it out and let you know

Actions #19

Updated by Pavel Milanes about 8 years ago

  • % Done changed from 30 to 90

The basic driver for the BTECH's UV-2501, UV-5001 and UV-2501+220 is on the test bench now; as the drivers has to deal with a few different radios and now with the UV-5001 gen 2 radios is has to be tested extensively before release.

Be patient please.

73 CO7WT.

Actions #20

Updated by Pavel Milanes about 8 years ago

We are facing problems with the behavior of the driver in windows (timing issues), it's working ok on Linux & Mac. As windows is the most used OS we have to fix this before releasing the driver.

Just to keep you informed, 73.

Actions #21

Updated by Robert Young about 8 years ago

Pavel Milanes wrote:

We are facing problems with the behavior of the driver in windows (timing issues), it's working ok on Linux & Mac. As windows is the most used OS we have to fix this before releasing the driver.

Just to keep you informed, 73.

I do have a windows machine if you want an outsider to test it.

Actions #22

Updated by Mike K about 8 years ago

I have a 2501+220 and use a CP2102 programming cable (if that matters). I have Windows 7 and a Mac (OSX 10.6.8), so I can do some testing or send some data if you would like some assistance.

Actions #23

Updated by Michael Gilchrist about 8 years ago

I also have a 2501+220, but also have a QYT KT8900R which is an identical radio with slightly different firmware in that the 220 range is higher (for asian market rather than US). Note, that both radios are able to be programmed across the same range (221-270MHz) using software. When attempting to program them on the radio themselves, you are restricted to the local market ranges (but can still tune the entire range using channels programmed from software).

Would you be interested in data from the QYT KT8900R? (Also can do anything with the 2501+220 if you need).

Actions #24

Updated by Pavel Milanes about 8 years ago

Please wait for us, I have the idea for a way to dynamically determine the delay times in the windows version, I have to test it (when I get to home), this can also help on the problems with Kenwood radios.

This way we must manage uneven delay found on windows for every case, that (to me) is the root of the problem.

About other radios like the BTECHS, yes, +we will test that radios to give support in Chirp+, but always after the BTECH driver is stable enough.

The actual BTECHs (3 models to you and at least 5 model to us internally) is a mess to deal with all together, so we are addressing a radio at a time, that way we are getting out of the problem.

73.

Actions #25

Updated by kevin humphrey about 8 years ago

how is it going with this radio i really need the software

Actions #26

Updated by Pavel Milanes about 8 years ago

  • Status changed from Feedback to In Progress

An update for all fellow hams that follows this issue.

A new procedure of talking with the radio is implemented on the alpha driver, just like I said in comment No.24, and is currently on the bech to test with ALL the BTECH radios, only the UV-5001 remains to be hard to talk with. (this new approach must improve the reading speed in linux/mac, and something a like in windows, and will allow us a better time control in the talk-with-radio process)

The UV-5001 is proving a challenge on windows platform due to timing issues, sum to that I have connectivity problems that make hard for me to interact with Jim to work this out.

Sorry for this, here in Cuba connectivity is always a problem, all point that I will have restored my email/Internet for Monday.

Remember that all the work is done in free time as a volunteer work, so be patient. We are working to get all BTECH models included on the driver when it came into Chirp.

73.

Actions #27

Updated by John LaMartina about 8 years ago

Pavel and Jim, I sincerely appreciate the time and effort going into adapting CHIRP to the UV2501/5001 radios.
As always, if there is any way I can assist, please let me know.
John 'Miklor' - http://www.miklor.com

Actions #28

Updated by kevin humphrey about 8 years ago

i just wanted to say thank you for all your hard work

Actions #29

Updated by Pavel Milanes about 8 years ago

Thanks to John, Kevin and all others that have supported us.

Today we managed to get reading consistency for all BTECH radios in the three major OS (Linux/Windows/Mac) and also the WACCOM Mini 9800plus. The new approach in the driver is paying the invested time.

We are working to have ready the upload procedure for all models, the release is close folks!

73

Actions #30

Updated by Robin Pierre about 8 years ago

Thank you so much!
I noticed that the cps software for BTECH UV5001 is actually fully compatible with QYT KT-UV980.
73
Robin

Actions #31

Updated by Pavel Milanes about 8 years ago

Robin Pierre wrote:

Thank you so much!
I noticed that the cps software for BTECH UV5001 is actually fully compatible with QYT KT-UV980.
73
Robin

Yes we have found that at the chirp level, but also is a note about the bad programming practices of the OEM software authors, because both radios respond to the same magic code, but the radio ID are different, so they don't care much about validation in the software...

That is the bigger issue we have found, as we build in reverse engineering mode from the OEM software serial communications and they don't care to validate we have to put the validation (and timing) for our self and more than one time this have got us chasing our tails for a while...

Finally las night came into light the first pre-alpha release, the early test showed full download/upload with all all BTECH and the Waccom Mini8900plus...

So that was a big step forward the release.

73.

Actions #32

Updated by Craig Kirkpatrick about 8 years ago

Nice work that you guys are doing. Thanks Pavel for the updates for the progress.
I enjoy the UV-2501 radio.

I admire CHIRP for its capability and function across all of the radios that I own. For me it is simple if I can use only CHIRP.

Best wishes to your progress and eventual success adopting the UV-2501 radio.

Thank you in advance,
Craig K.

Actions #33

Updated by Pavel Milanes about 8 years ago

We have the release candidate basic driver on the test bench now. Stay tuned. 73.

Actions #34

Updated by Jason Fellingham about 8 years ago

Thanks Dan and the gang for CHIRP! I've had loads of success across multiple platforms for years! You really do add value to the amateur products that we buy!

Actions #35

Updated by Jim Unroe about 8 years ago

We are looking for some volunteers with BTECH radios for a closed test. Because these radios seem to be very picky with Widows, we want to get some "real data" to see if we need to make any additional tweaks before this driver is submitted for general use.

If you have one or more of the following BTECH radios (UV-5001, UV-2501 or UV-2501+220) and wish to volunteer, contact Pavel or myself at the following email addresses:

Jim rock.unroe@gmail.com
Pavel pavelmc@gmail.com

Include the following in your email:

  • Radio models available
  • Operating systems available (Windows, Linux, Mac and the version)
  • Programming cable chip types available (Prolific, FTDI, etc)
Actions #36

Updated by kevin humphrey about 8 years ago

Just to let everyone know the beta software works was able to download and upload to radio with no issues
Operating System: windows 10 pro x64 bit build 10586
Baofeng (BTECH) new programing cable
Driver: FTDI
thanks for all your hard work

Actions #37

Updated by kevin humphrey about 8 years ago

kevin humphrey wrote:
Radio: BTECH UV-5001

Just to let everyone know the beta software works was able to download and upload to radio with no issues
Operating System: windows 10 pro x64 bit build 10586
Baofeng (BTECH) new programing cable
Driver: FTDI
thanks for all your hard work

Actions #38

Updated by David Taylor about 8 years ago

BTECH UV-5001

I've just tested the beta for uv 5001. download, upload to radio just fine. Added channels via RadioRef and
Repeater Book. Works great so far.Thanks guys so much for your hard work. I think you nailed it.

windows 8 x64bit
Baofeng FTDI cable

Actions #39

Updated by Brad S about 8 years ago

I had a failure on OS X, debugging information sent to Pavel and Jim.
The radio gets a positive ident and then errors out.

Success on Windows 10, FTDI, Repeater Book import

Actions #40

Updated by Pavel Milanes about 8 years ago

Brad S wrote:

I had a failure on OS X, debugging information sent to Pavel and Jim.
The radio gets a positive ident and then errors out.

Success on Windows 10, FTDI, Repeater Book import

Yes brad, we are aware, it appears that the FTDI chips are slower to respond and need more room.

Jim has instructions to make some test with your help to fine tune the issue, wait for Jim emails.

So far so good, just about a few failures and all related with the driver being to fast, we have climbed from out internal default of 0.008 sec/char to about 0.020 sec/char now with Brad findings, or another trick that Jim will test with your help.

That's the real data we was looking for before release, thanks to all you that have volunteered to help up tune the driver.

73 CO7WT

Actions #41

Updated by Brad S about 8 years ago

I can confirm that the updated drivers worked for me on OS X - no timeouts.

Actions #42

Updated by Jim Unroe about 8 years ago

The testing period is over. Some timing values were adjusted due to volunteer feedback. The driver will be submitted soon. Thank you all for you participation.

Jim KC9HI

Actions #43

Updated by Robin Pierre about 8 years ago

Hi,
BTECH UV 2501 and 5001 are both supported by the new chirp version, but what about the QYT KT8900 and QYT KT-UV980?
Robin

Actions #44

Updated by Jim Unroe about 8 years ago

Robin,
Those radios are being tracked under another issue (#2673). Doing this is a lot of work. We are not finished with this issue yet plus we do not have possession of the radios that you mention. When we are finished here we plan on moving over to the other radios.
Jim KC9HI

Actions #45

Updated by Pavel Milanes about 8 years ago

Robin Pierre wrote:

Hi,
BTECH UV 2501 and 5001 are both supported by the new chirp version, but what about the QYT KT8900 and QYT KT-UV980?
Robin

Your wish come true: http://chirp.danplanet.com/issues/2673#change-9629 the ball is on your park now.

73 CO7WT

Actions #46

Updated by Craig Kirkpatrick about 8 years ago

Jim and Pavel, thank you for your work.

I succeeded to use Chirp with my UV-2501 on OS-X with the BTECH FTDI cable.

Best Wishes,
Craig K

Actions #47

Updated by Jonathan Karras almost 8 years ago

Just purchased a new UV-2501. Using CHIRP I was able to read the data only a handful of times. Writing seemed to have no issue. Is there any data I can gather to help the cause?

Actions #48

Updated by Jonathan Karras almost 8 years ago

Information about my setup which I failed to put in the last update.

UV-2501
Model: 168MIN
MCU-Version: BT.G2.1.4

FTDI based cable from Baofeng Tech US

Ubuntu Linux - Has trouble reading
Windows 7 - Seems to work fine

Actions #49

Updated by t z almost 8 years ago

The 4/19 version is working fine with my BTECH-2501-220.

It would fail to identify on earlier versions but worked with my BTECH-5001.

Actions #50

Updated by Pavel Milanes almost 8 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 90 to 100

Jim et all, can we close this issue?

Support for the BTECHS and others is implemented, sure, there is some bugs to address in some specific cases, but that has it's own issues opened by now.

73 Pavel CO7WT.

Actions #51

Updated by Jim Unroe almost 8 years ago

Pavel,

If I recall, our initial submission was only accepted with an understanding that the download/upload routines would be reworked per Dan's recommendations/guidelines? Unless I missed it, I don't think this has been done yet. If it hasn't, then we need to leave this open for an issue to apply it to (unless you want to open a new issue just for that purpose).

Jim

Actions #52

Updated by Joe Alv almost 8 years ago

Hi,
UV-2501 Generation 3 (received from Amazon May 13th) can't be identified, I tried all the suggestions I found. Please find enclosed the debug file. Great work on CHIRP, I use it for 5 different model radios. Joe.

Actions #53

Updated by Jim Unroe almost 8 years ago

  • Status changed from Resolved to Feedback

Joe,

The "gen 3" radios all have "fingerprints" that are unknown to the currently released CHIRP. A patch that adds the G3 fingerprints has been submitted and is currently awaiting approval.

Jim KC9HI

Actions #54

Updated by Joe Alv almost 8 years ago

Hi,
Just downloaded and uploaded to Gen 3 radio with new daily, worked perfectly! Seems to have kept all info.

Actions #55

Updated by m s almost 8 years ago

Hi there,
installed newest available version 20160517. No workie! Btech UV-5001 Gen 3: "an error has occured; Error reading data from radio." Are we still awaiting a fix? anything i can do to assist?

Actions #56

Updated by Jim Unroe almost 8 years ago

I have no issues with the G3 UV-2501 or UV-5001 here when using Windows. Linux mostly fails. It is still a work in progress.

Jim KC9HI

Actions #57

Updated by m s almost 8 years ago

apologies jim,
but i cant second that statment^

ive tried multiple times on my 64 bit windows 10 pro..

nada :(

mike

Actions #58

Updated by m s over 7 years ago

good news it does work^ im a fool apologies :?

Actions #59

Updated by Tim Smith about 7 years ago

  • Status changed from Feedback to Closed
Actions

Also available in: Atom PDF