Combine projects

74 views
Skip to first unread message

richard kappler

unread,
Dec 23, 2017, 2:27:14 PM12/23/17
to Gqrx SDR
Alexandru,

I am considering loading gqrx on a raspberry pi 3 with either a nooelec or rtl-sdr dongle, then integrating it with a bitx40. What would be involved in controlling the frequency of gqrx with the frequency rheostat/rotary encoder of the bitx40? As I understand it, the rheostat is read by arduino code to control receive freq of the radio, so I should think it’s a matter of tapping that arduino output and sending it to the raspi, then inserting code in gqrx to read that signal for the freq setting in gqrx. Is gqrx c++? Do you see any issues with doing this or have any guidance or suggestions?

regards, Richard
W2KAP

Robin Gape

unread,
Dec 23, 2017, 9:00:10 PM12/23/17
to gq...@googlegroups.com

Richard,

1) A good place to start would be gqrx.dk, and particularly http://gqrx.dk/doc/remote-control on remote (which may in fact be local) control.

2) The Raduino code is on GitHub, and a good place to start might be https://github.com/amunters/bitx40. This also looks interesting https://groups.io/g/BITX20/wiki/Raduino-Topics. And there is more inspiration here: https://github.com/pavelmc/ft857d.

3) The most difficult part of the project would seem to be to get the operating frequency from the BITX40 to the Raspberry Pi. It would probably be possible to do this using the Arduino nano's USB connection, but that would require a thorough understanding of the existing Raduino code, and the use of a USB library.

4) Before doing any experimentation on your Raduino, I would strongly suggest getting another Arduino nano to play with, to become familiar with the Arduino IDE, program downloading, prototyping &c.

That way any mistakes, bricking the Arduino and other learning experiences do not affect your BITX40.

5) The rest is up to you, and your ability to use your favourite search engine. Any decisions must be yours, and the responsibility for anything you do (or fail to do) is yours alone. (My lawyer would wish me to be quite clear on this point!)

6) There is a lot more to what you seem to be thinking of doing than can be said in a short note, of course.

Compliments of The Season and Good luck,

Robin, G8DQX

PS: Hacking GQRX directly, though possible, is generally a Really Bad Idea℠! (See 1) above)

PPS: Google tells me that your email is that of a Python hacker, so you should be able to take it from here without too much difficulty on the software front!

richard kappler

unread,
Dec 23, 2017, 11:10:50 PM12/23/17
to gq...@googlegroups.com
Robin,

Thank you for the reply. I’ve been using Arduino for years now, started when the duemilanove was cutting edge, so no worries there. The tcp control looks promising, I’ll have to dig a little deeper to be sure that will be the most effective solution. Not sure why you state hacking gqrx would be bad, why else use open source? And yes, I’ve been writing python for a few years now too, as well as Lisp, Perl, SPL and a few others.the first language is hard (fortran for me), they get easier after that. I figured I’d have to create some sort of hook or REST endpoint, but the tcp idea may just do it! Thanks again!

regard, Richard
W2KAP

--
You received this message because you are subscribed to the Google Groups "Gqrx SDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+uns...@googlegroups.com.
To post to this group, send email to gq...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gqrx/8b084037-2e74-ec05-d541-51cc4ff8be00%40googlemail.com.
For more options, visit https://groups.google.com/d/optout.
--
W2KAP

In any given circuit, the most expensive part will always sacrifice itself to protect the fuse.


Simon Kennedy

unread,
Dec 24, 2017, 5:30:06 AM12/24/17
to gq...@googlegroups.com
Hi Richard,

You may wish to check out my gqrxHamlib software on github: https://github.com/g0fcu/gqrx-hamlib-gui/blob/master/README.md

It implements uni-directional or bi-directional control between gqrx and a Hamlib controlled radio. 

You should be able to reuse some or all of it.

Regards
Simon.
G0FCU.



To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+unsubscribe@googlegroups.com.

To post to this group, send email to gq...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gqrx/8b084037-2e74-ec05-d541-51cc4ff8be00%40googlemail.com.
For more options, visit https://groups.google.com/d/optout.
--
W2KAP

In any given circuit, the most expensive part will always sacrifice itself to protect the fuse.


--
You received this message because you are subscribed to the Google Groups "Gqrx SDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+unsubscribe@googlegroups.com.

To post to this group, send email to gq...@googlegroups.com.

richard kappler

unread,
Dec 24, 2017, 9:13:17 AM12/24/17
to gq...@googlegroups.com
Brilliant, I’ll have a look, thanks Simon.

To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+uns...@googlegroups.com.

To post to this group, send email to gq...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gqrx/8b084037-2e74-ec05-d541-51cc4ff8be00%40googlemail.com.
For more options, visit https://groups.google.com/d/optout.
--
W2KAP

In any given circuit, the most expensive part will always sacrifice itself to protect the fuse.


--
You received this message because you are subscribed to the Google Groups "Gqrx SDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+uns...@googlegroups.com.

To post to this group, send email to gq...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Gqrx SDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+uns...@googlegroups.com.

To post to this group, send email to gq...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Robin Gape

unread,
Dec 24, 2017, 5:24:31 PM12/24/17
to gq...@googlegroups.com

Richard,

because a pretty useful mechanism for what you wish to do has already been designed, implemented, tested and been successfully deployed in the field! And Simon is offering you pre-digested glue logic, to get you started.

For a second reason, some of us on the list used—and one uses the word advisedly—to compile GQRX from source, using the QT Creator IDE. That was a painful process, when one simply wished to use GQRX.

Thirdly, if one considers GQRX as a black-box component, then applying clean design principles leads one to a solution where some glue logic interfaces GQRX—which already has a defined control interface—to the BITX40 which has been adapted to have a control interface. In that fashion the effort for the phases of design, implementation, testing & proving, is minimised, and the chances of success are maximised. Open source allows one, in this instance, to re-use already developed components with a minimum of modification. [A similar principle applies to GQRX being built on top of GNU Radio, to minimise unnecessary duplicate development.]

And on the programming languages front, I Iearnt programming with FORTRAN IV, using Hollerith cards, whose 80 columns continue in existence like the smile on a Cheshire cat. Somewhere in there are autocoders, various assemblers, FORTH/IPS, Modula-2, script languages, a smattering of C, all sorts of other junk and most recently a touch of R. As for LISP and the lambda calculus, let's just say that I happily use vi (when necessary), and abhor EMACS!

Compliments of The Season,

Robin, G8DQX

richard kappler

unread,
Dec 24, 2017, 5:29:10 PM12/24/17
to gq...@googlegroups.com
Lol, watching the rugby match, will digest all later, but abhor EMACS as well, why would anyone use anything but vi? Merry Christmas Robin, will return to this after family time.

Regards, Richard 
W2KAP

--
You received this message because you are subscribed to the Google Groups "Gqrx SDR" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gqrx+uns...@googlegroups.com.
To post to this group, send email to gq...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

richard kappler

unread,
Dec 26, 2017, 10:38:04 AM12/26/17
to gq...@googlegroups.com
Simon,

I took a detour and decided, before I mess with the bitx40/raspberry pi idea, to try out your software to control my Icom-718. Had to order a cable, should be here Thursday. In the mean time, I installed gqrxHamlib, but am having some issues. From what I'm seeing in the traceback, I expect it's due to gqrxHamlib using python3, and I'm currently running Ubuntu 14.04 which uses Python 2.7 as default, though Python 3 is installed. When I try to install xmlrpclib, apt and pip are unable to either find a package at all or a suitable package. Before I go running down too many rabbit holes, I presume you've run into this before, any guidance before I start troubleshooting/scripting? I hate reinventing the wheel where it is not needed.

Specific error:
$ gqrxHamlib
Traceback (most recent call last):
  File "/usr/local/bin/gqrxHamlib", line 9, in <module>
    load_entry_point('gqrxHamlib==2.6.2.2', 'console_scripts', 'gqrxHamlib')()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 351, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2363, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2088, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/local/lib/python2.7/dist-packages/gqrxHamlib/__init__.py", line 32, in <module>
    import xmlrpc.client
ImportError: No module named xmlrpc.client

regards, Richard
W2KAP




For more options, visit https://groups.google.com/d/optout.

Simon Kennedy

unread,
Dec 26, 2017, 11:56:40 AM12/26/17
to gq...@googlegroups.com
Hi Richard,

I have indeed run into this problem. IIRC the issue is that the xmlrpc library was renamed for Python 3. However I need to reacquaint myself with the issue before I give you a correct answer. I will have some time tomorrow to have as look.

In the meantime to make this work you will need to interface with the BITX and be able to respond to the f and F commands via a port (any port) (see http://gqrx.dk/doc/remote-control )

Regards
Simon.


Simon Kennedy

unread,
Dec 27, 2017, 12:04:38 PM12/27/17
to gq...@googlegroups.com
Hi Richard,

can I suggest that you download and use the pre-Python 3 version from here: https://github.com/g0fcu/gqrx-hamlib-gui/tree/v2.6
You may need to install xmlrpclib but it *should* already be installed as part of the Python install.

Unpack the zip file and cd to the directory you have extracted it to. The run by typing "python2 ./main.py", you will need hamlib running and gqrx running with TCP control turned on before you run the Python program.

I have just tried this and it works. BTW, the xmlrpc lib is only required for fldigi integration.

Regards
Simon.

On 26 December 2017 at 16:56, Simon Kennedy <si...@thekennedys.info> wrote:
Hi Richard,

Reply all
Reply to author
Forward
0 new messages