hamlib with configurable LO

10 posts / 0 new
Last post
DF2ET
hamlib with configurable LO

Hello cqrlog users,

I am using cqrlog for quite some time now. Also for logging QSOs on Oscar 100. I got hamlib support up and running with an ICOM IC-9700. But what challenged me is that is can only read the TRX frequency off the radio not knowing that there is an up converter behind. Same for downlink.

Thus I made some changes to the cqrlog code to be able to define a LO frequency for that. After configuring it and activating the feature it now logs the real TX QRG and also fills the RX frequency field. At this stage it might be a quick and dirty hack which I still need to test.

Demo here: https://twitter.com/flo_0_/status/1182763582565564420?s=19

But my question is: After implementing this I found references to RX and TX offset in the sources. Those can be configured in the band maps. What are those needed for? Would those also fulfill my ideas about a LO?

vy73 de Florian DF2ET

oh1kh
hamlib with configurable LO

Hi Florian!

With quick look to source "grep -i RXOffset *.pas;grep -i TXOffset *.pas" offsets seem to be in use.

How ever you can not enter negative value to those fields that might sometimes be needed.

Closer look to uRigcontrol.pas shows that offsets are just added to set or get frequency results. They do not drive true split or double band rig. That would need lot of changes to Rigcontrol and also elsewhere.
With grepping there seems to be no signs of offset usage at NewQSO form. So they can not initiate the content of RXfreq in Satellite tab.

This needs further study for all effects of offset values, but perhaps there could be user checbox to allow RXoffset to produce content to satellite tab's RXFrequency field.
How ever the current actions must be cleared first.

In 1990's this would be very interesting subject to me, but I have not been on satellites over 20 years.

I hope you can clear things out, use so much existing code as possible and then, after testing, make a pull request for that property (with help files update! Hi!).

--
Saku
OH1KH

DF2ET
Hi Saku,

Hi Saku,

thank you for the feedback. Indeed I added two input fields to the preferences tab where you can enter the two LO frequencies. See screenshot attached.
I am unsure if that impacts other code as well so it might need further testing. The last few QSOs on QO-100 it worked fine though.
What about adding a checkbox in the new QSO window to activate or deactivate syncing the RX frequency to the RX field?

vy73 de Florian DF2ET

File: 

oh1kh
LO frequencies.

Ok Florian.

Or should LOs be in Satellite Tab with activation checkboxes?
NewQSO form is quite full. I just tried to find a place for new checkbox, but ended up to popup menu.
At satellite tab there is still plenty room to use.

Other place where I could find usage for these is VLF working with down transverter. There negative LO numbers may be needed if mixer product is going to be subtractive. In that case the "satellite department" use would be little wrong, but as there is also propagation why not LOs, too.

--
Saku
OH1KH

DF2ET
Hi Saku,

Hi Saku,

good question. I am still not happy with my current code as I expect it to cause issues somewhere else. Though it is working fine for my last 20 QSOs on the satellite. It just came to my mind to check whether hamlib has support for LOs. I will check that.
And also check if frequencies of both VFOs can be read via rigctl. Because currently the downlink is calculated from the TX frequency which my not work for inverted QRGs for up- and downlink.

vy73 de Florian DF2ET

oh1kh
LO frequencies.

Hi Florian!

Hamlib may support that, but cqrlog has uRigControl.pas that does not support dual vfo.

If you want to be sure your code does not cause issues you should extend TfrmNewQSO.cmbFreqChange(Sender: TObject); procedure with call to your own procedure that calculates LOs and sets RXFrequency.
Problem is just that when you return your calculated TX frequency that causes new OnChange event that leads to loop that must be stopped somehow, hi :-)

If you do not access any other place of code you can not cause issues, I think. It also works when manual frequency is typed in.

--
Saku
OH1KH

DF2ET
Hi Saku,

Hi Saku,

I did make a new attempt and put the config fields onto a separate tab in the newQSO windows. Looks more cleaner now.
Still testing the code and need to write the documentation. Maybe this could have a chance to be merged into upstream?

https://github.com/ok2cqr/cqrlog/compare/master...phl0:useLO

https://twitter.com/flo_0_/status/1231976330591338497?s=20

vy73 de Florian DF2ET

File: 

oh1kh
LO frequencies.

Hi Florian!

Yep!
It might be better to have it there. It could also be in preferences, but if the change is often and quick needed, then new tab is better place.

I did not look the code further (no time just now) but do you save/load values via MyIni to be valid over restart?

And another thing, check what tab will be active as default when program starts.

--
Saku
OH1KH

DF2ET
Hi Saku,

Hi Saku,

Thanks for your feedback. The values as well as the info whether the LOs should be active or not are saved to the ini file to survive restarts.
I did not change anything concerning the default active tab. So that should be fine.
Do you want me to make a PR of this?

vy73 de Florian DF2ET

oh1kh
LO frequencies

Hi Florian !

If you think it is ok and needed you must make PR. It is up to Petr to accept that then.
I am just a similar hobby programmer as you, not the product owner or team member.

--
Saku
OH1KH