Hi Rein,
Thanks very much for your patch, and your interrest in Hamlib.
I've Cc'ed hamlib-developer since you seem having problem with
going through.
> ---------- Forwarded Message ----------
> Subject: icom.c _ omni 6 plus
> Date: Mon, 19 Aug 2002 19:58:03 +0200
> From: Rein <re...@co...>
> To: ham...@li...
>
>
> Hello All,
>
> I have written a hamlib interface for tlf. In doing this, I have tested the
> icom library for use with the OMNI VI plus. These are my first findings:
>
> 1: A rit control function is missing. I need to reset the rit after each qso.
> I have tried to add the function, and got to the point that I have now at
> least something that resets the rit to zero. (see attached diff).
ok, commited.
Note: I haven't tested it on my IC-706 because the function is not
supported.
> 2: I don't understand why set-rit needs vfo as a parameter.
set_rit needs vfo as a parameter because on some other rigs, you may
want to change the RIT of another vfo which is not the current one.
Some protocols have provision for that. Icom's don't, but this is
emulated by the Hamlib frontend anyway.
> 3. Set-frequency and get-frequency seem to work o.k., for my rig (one of the
> oldest omni 6's) I had to disable 731 mode (data len for get-freq = 5).
great, I was not sure about the 731 mode. The fix in your patch has been
commited also.
> 4. Set mode and get mode seem to work o.k., Why is this combined with
> bandwidth? Seems more logical to do filters separately (set_bw ?)
well, the very first versions of the API were handling these
separately. Unfortunately, a lot of protocols change both parameters
in the same command, which would make backend writing much more
complicated. And when you think twice, you often change both at the
same time. You can still change filters later on by passing the same mode.
There might be some other good reasons I forgot, that should be in the
list archive.
> 5: On Suse 7.0 and Slackware 8.0, hamlib-1.1.3 (with my changes) compiled
> without problems. Hamlib requested the c++ compiler and libs, which I could
> just fit onto the sysem disk.... (waste of resources?)
Hamlib compiles C++ binding whenever the c++ compiler is detected.
You can force and disable c++ compilation by passing --without-cxx-binding
to configure. Anyway, even though you compile it, it's useless for tlf,
and simply don't install libhamlib++.so on the floppy.
compiling the c++ binding has no impact on the hamlib C library size.
> 6: Tlf could not find the library at startup (I left it at /usr/local/lib). I
> had to do a ldconfig, then it worked o.k.
the make install should have warned you about that. Anyway thanks for the
reminder.
> 7. Tlf only needs set_freq, get_freq, set_rit, get_mode and set-mode. The
> rest seems a bit overdone, and makes it too big for static link. I am
> especially worried about the floppy version :-)
Just a note: be careful, some rigs/backends do NOT support the list of
functions you're expecting. This is especially true for set_rit.
tlf would then exec 'mvprintw(24,0,"Problem with rig link!\n"); .. sleep()'
each time, which might be a bit irritating. So consider replacing
if (retval != RIG_OK) {
by
if (retval != RIG_OK && retval != -RIG_ENAVAIL) {
Human readable error message is also available as a string
returned by 'rigerror(retval)'.
Talking about library size, have you tried stripping the binaries?
You can also compile libhamlib as a static library (not the backends),
link tlf against libhamlib.a, and then strip the binary.
In that case, the strip should remove all the frontend functions of
libhamlib that tlf is not referencing.
> 8. I am of course interested to get reports on tlf/hamlib compatability. (You
> can now use tlf to test hamlib :-)
>
> 9: All in all I must conclude that I am impressed with the work done so far!!
That's the nice thing with collaborative work.
I hope to see you one day in the contest with tlf, I'm too QRS right now,
but I'm working on it.
> See attached diff, hope you can use it.
Sure, thank you very much! This will be in next release.
>
> Rein PA0RCT
>
73,
Stephane
>
> /* Contesting with Linux? : http://www.iae.nl/users/reinc/TLF-0.2.html !! */
>
> -------------------------------------------------------
|