# How to tune gnuradio-companion from an external application

**URL:** <https://www.ruby-forum.com/t/how-to-tune-gnuradio-companion-from-an-external-application/241598>\
**Category:** GNU Radio\
**Created:** [April 18, 2015, 3:20am UTC](https://www.ruby-forum.com/t/how-to-tune-gnuradio-companion-from-an-external-application/241598 "2015-04-18T03:20:42Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![musicdenotation](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ea666f/32.png) [@musicdenotation](https://www.ruby-forum.com/u/musicdenotation)\
**Post date:** [April 18, 2015, 3:20am UTC](https://www.ruby-forum.com/t/how-to-tune-gnuradio-companion-from-an-external-application/241598/1 "2015-04-18T03:20:42Z")

</div>

Hello,

I am new to GNU radio. I have an application first written for Windows  
and now successfully ported to Ubuntu Linux. Briefly, the program uses  
the Longley and Rice Irregular terrain method to determine the path loss  
between the transmitting antenna and the receiving antenna. I wrote the  
program for TV use and would like to use the program to tune the Ettus  
B200 USRP device. The TV channel and engineering data is from the FCC  
CDBS web site as well as 7.5 minute maps of the entire US. While the  
math is intensive, more than 1000 samples between transmitter and  
receiver, compiled Pascal has no problem producing very responsive  
results.

_Tune details:_  
I understand that an RPC client placed on a GRC form may work.  
Unfortunately, I have no clue how to make this work with my application  
and know nothing about client server networking stuff. Lazarus, (with  
the Fee Pascal Compiler) was used to port my program to Linux. Lazarus  
does have an IPC client and an IPC server component. I do not know if  
there is compatibility between RPC (remote procedure call) and IPC  
(internet procedure call) components. I did locate GRC examples for  
using an RPC client and RPC server; unfortunately neither will load,  
using GNU Radio Companion v3.7.6.1-262-g6afc40e8

Things I need to know.

1. To tune the GRC UHD source component, do I need a client or server?
2. Do I use the the opposite in my program. i.e client on GRC form,  
server on my program.
3. How do I set the port to 8080 in my program. The IPC server has the  
following parameters:

Lazarus IPC server parameters:

1. Active: False (select true/false)
2. Global: False (select true/false)
3. Name: SimpleIPCServer1
4. ServerID: Lazarus
5. Tag: ServerID0 (long integer field, user choice of tag value)

Lazarus, only one IPC server event

1. onMessage: SimpleIPCServer1Message (What message do I put in the  
event handler?)

Help, suggestions and criticisms are greatly appreciated.  
Rob
