Project

General

Profile

Actions

New Model #579

closed

Icom IC-T90A

Added by Barry Winters about 11 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
02/16/2013
Due date:
% Done:

100%

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

Description

Would appreciate this radio being added to those working with CHIRP. If no one has one to work with, I'll make mine available in May when I return to Newport, OR. I can supply an icf file now.
Thanks
barry@k7baw.us


Files

Icom_IC-E90.img (11.3 KB) Icom_IC-E90.img Jaroslav Škarvada, 09/20/2019 12:11 AM

Related issues

Has duplicate New Model #6721: Icom IC-T90A Closed04/17/2019

Actions
Actions #1

Updated by Ryan Lovett about 11 years ago

Also happy to immediately loan an IC-T90A.

Cheers.

Actions #2

Updated by Kevin James over 10 years ago

Volunteer for testing - adding to the request for additional support

Actions #3

Updated by Christopher Suleske over 10 years ago

Adding my name and rig to the roster of T90a owners who'd like it working with CHIRP.

Actions #4

Updated by Christopher Suleske over 10 years ago

I found this substantial research:

and a complete (!) memory map:

This is from Eric Behr's NIU site, http://www.math.niu.edu/~behr/Ham/

An overview of his work on the T90A:

Programming the ICOM T90A

I'm trying to figure out computer programming of the T90A. It does have this ability (with optional cable and software), but in the spirit of DIY I'd like to avoid buying extra stuff. Here is what I found out so far. [Added 1/9/2004] I just discovered a boatload of information on BlakkeKatte's page. [Added 1/11/2008] An IC-T90A memory map courtesy of Michael Gantz.

Combining some plans available out there, I built my own level converter ("kind-of RS-232" to/from TTL). It seems to work, i.e. it passes data on between the computer and the handheld. E.g. after telling the ICOM to clone, I can see that data in TeraTerm (PC) and ZTerm (Mac). But it's still a mystery to me how one puts this radio into programming mode. It's either a secret key combination (like the one for cloning), or a special ICOM CI-V command. No matter what I tried, the transceiver doesn't react to it, and nobody replied to my Usenet query with anything useful.

So far I've been underwhelmed by the public domain software used for controlling rigs. The authors are doing a great public service, so I shouldn't complain, but I haven't found any software that would fit the bill. I might take the plunge and try to roll my own somehow, except I only have a crappy Belkin F5U109 USB to serial adapter, and it doesn't work with OS X (shame on Belkin for not providing drivers!)

Actions #5

Updated by Christopher Suleske over 10 years ago

I am now working on rolling a programming cable. I've successfully made ones for the Baofeng UV-3R and UV-5R from this exact CP-2102 USB board:

Using this board (I got 5 off eBay for like $8) and the following instructions:

(Scroll to the last section for the 2102 board.) I've been unable to connect with the T90A via the Icom CS-90 software. Any suggestions on building an OPC-478 clone with this CP-2102 board? I'm about ready to spend the $12 or so and get one prefab on eBay.

Actions #6

Updated by David Jam about 10 years ago

Barry Winters wrote:

Would appreciate this radio being added to those working with CHIRP. If no one has one to work with, I'll make mine available in May when I return to Newport, OR. I can supply an icf file now.
Thanks
barry@k7baw.us
I too would be very happy if Chirp could be made to work with the IC-T90A.
The Icom software is terrible, when it come to adding data.
David

Actions #7

Updated by Christopher Suleske over 8 years ago

Though I've relented and acquired a few Baofengs, I'd still like to get the Icom T90A working with CHIRP. I had done a good bit of research a couple of years ago (see above) and could take some form of lead for this if I were guided. I don't know anything (yet) about the CHIRP programming interface, but I can learn if guided. I would start with the info I posted above and couple that with a scheme to modify one or more of the existing (working) Icom profiles. Anyone who can point me in the right direction, please contact me. Thanks! Chris NM2S

Actions #8

Updated by Bob Jonas almost 6 years ago

Has any progress been made on the use of CHIRP on the ICOM T90A HT??
Thank you

Actions #9

Updated by Christopher Suleske almost 6 years ago

Alas, I do not believe so. I keep an eye on this thread and, as you can see, nothing appears to have happened in several years. I still have my trusty T90A. It's been a while since I attempted to program it. I would have to find a cable and the computer with the Icom software. I'm not sure I ever got that working, as I didn't want to buy an expensive cable for an obsolete rig.

Actions #10

Updated by Jaroslav Škarvada over 5 years ago

Hi, I have IC-E90 it's european model of IC-T90. I guess both are nearly the same and differ only in defaults for bands and repeater tones. I would like to add support for it to Chirp. Does anybody have the memory maps mentioned in comment 4? Both URLs are now down and I am unable to find it elsewhere on the internet. Could you re-upload / provide it to me? It would speed me up. 73! Jaroslav, OK2JRQ

Actions #11

Updated by Jaroslav Škarvada over 5 years ago

Jaroslav Škarvada wrote:

Hi, I have IC-E90 it's european model of IC-T90. I guess both are nearly the same and differ only in defaults for bands and repeater tones. I would like to add support for it to Chirp. Does anybody have the memory maps mentioned in comment 4? Both URLs are now down and I am unable to find it elsewhere on the internet. Could you re-upload / provide it to me? It would speed me up. 73! Jaroslav, OK2JRQ

After cca. hour of hacking (currently I am on vacation on the beach, so I cannot give it more time :) I am able to clone the memory map in and out. It's simply ICF (so lot of the Chirp code can be reused) and my clones match the ICF saved from the original Icom software. Now the harder part - to parse it. I got the memory map mentioned in the comment 4 from the wayback machine snapshot, so hopefully I will be able to create the parser without brute forcing the memory.

Actions #12

Updated by Jaroslav Škarvada over 5 years ago

Now I have working clone in/out, basic channels support (0-499) and banks support. Remaining: call channels, scan edge channels, tv channels, wx channels, settings. Volunteers for testing are welcome :)

Actions #13

Updated by Scott Toland over 5 years ago

Do you have the code in mercurial, or available elsewhere? I am interested in testing on my T90A and possibly even working to fill in some of the missing functionality.

Thanks and have a great one,

Scott KD2QQK

Actions #14

Updated by Jaroslav Škarvada over 5 years ago

Scott Toland wrote:

Do you have the code in mercurial, or available elsewhere? I am interested in testing on my T90A and possibly even working to fill in some of the missing functionality.

Thanks and have a great one,

Scott KD2QQK

To be honest I haven't touched the code since my late summer vacation :) But I am going to finish it (hopefully during December 2018) and pull request upstream. The support is very very preliminary, I have to:

  • rebase the patches to the latest chirp upstream (it's frozen codebase from the September 2018)
  • rewrite the patches to use 'bitwise' for cleaner memory parsing, like e.g. uv-3r driver and others use - the current oldschool bit masking/shifting is ugly
  • add support for call channels, scan edge channels, TV channels, WX channels, settings

So probably the code is useless at the moment, but if you need to just re-arrange your memory banks/channels, it should work. It's in the icx90 branch:
https://github.com/yarda/chirp

73! Jaroslav, OK2JRQ

Actions #15

Updated by Jaroslav Škarvada over 4 years ago

Another year, another vacation and another coding session on the beach :)

I rewrote the driver the way I wanted, rebased to the latest devel branch, implemented nearly all the features and added test image
http://intrepid.danplanet.com/pipermail/chirp_devel/2019-September/005592.html

It now works with my IC-E90 radio at least (it didn't kill it after some heavy memory edits :) and everything seems to work as expected), feel free to test. There are probably bugs, because the radio is quite complex - I also spotted and reported few CHIRP bugs during the driver development.

Currently the memory bank management isn't the best. If you move channels in memory, you need to edit banks by hand. This is not optimal, but at the moment I don't know how to implement it better - there is probably no support for this on the CHIRP side - I am using its icf bank driver for it.

Actions #16

Updated by Jaroslav Škarvada over 4 years ago

According to communication with Dan I will use this ticket for tracking of inclusion of this new driver into CHIRP.

For the start here is nearly empty memory map which can be used by CHIRP testsuite.

Actions #17

Updated by Jaroslav Škarvada over 4 years ago

Everybody who is willing to test the new driver and provide feedback can try the icx90 branch from https://github.com/yarda/chirp
The driver should be fully functional now, but I am going do some changes according to upstream review before final posting.

Actions #18

Updated by Jaroslav Škarvada almost 4 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

Applied in changeset commit:105488687f31.

Actions #19

Updated by Jaroslav Škarvada almost 4 years ago

I deleted the github repo for this driver, because the driver was upstreamed and there is no need for it anymore.

Also the driver has built-in helper for bank management - it's an temporal solution until banks will be fully supported upstream. The idea behind is that you can create so called template file which stores how memory names are mapped to the banks, create it by:

./chirp/drivers/icx90.py -r ICOM_IC-E90.img banks.csv

I.e. it takes the radio memory image ICOM_IC-E90.img (previously stored in Chirp) and writes the channel->bank mappings to the banks.csv.

Then you can start Chirp as usual and arbitrary move your memory content. This will reorder the banks, because the banks are tight to the memory numbers, not the memory names. This is usually what you don't want. When you are done in Chirp use the following command which will reorder the memory names to the appropriate memory banks:

./chirp/drivers/icx90.py -f ICOM_IC-E90.img banks.csv

Then you can upload the IMG to the radio.

Actions

Also available in: Atom PDF