Programming a Radio Interface

Hi.. I'm trying to build a simple kit for myself.

I would like to write a visual basic program so that I can capture radio output to my pc. But I would also like to be able to programatically define and change the frequency... I want this program to run when I am away from home and can not be there to manually change the frequency. Some stations are AM others FM... Are there AM/FM pci or usb boards that I can purchase that are "programmable"?

Do you know of any way to do this?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

I think that you'll need a slightly lower level language (more platform dependant) to control/communicate with whatever the hardware device is, that you get..

The languages you'll want to use for this (personally) is:
  -Java /JNI

You'd code a driver in assembler, and use C++ to communicate with the driver.. I also recommended Java, because it's MUCH more platform compatible, and is a very nice, secure, (and easy, personally) language to use to build the interface, and using the JNI capabilities, you can call any C++ function easily via Java.

Just my perspective :-)

Good luck with it!!

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Jaime OlivaresSoftware ArchitectCommented:
You don't need a driver at all. Some radios have a serial interface to receive "commands" but I am refering to some models of Yaesu or Motorola for Amateurs Hammers, even you can loose the detachable mask and control it via a "virtual control mask" in your PC.
I have seen on some store a Mini Component with USB cable (Philips if I remember correctly), I guess it comes with proper software.
I don't recommend you to use Java, although it could be more portable (I am no sure of that, really), it lacks of good hardware control. Also I don't recommend you to mix many languages to solve a problem. From my point of view, C++ is a good option, because you will have full control over a serial port and professional quality user interface, you can download lots of gadgets at
Good luck,
Hey Jaime :-)

I recommend Java because the GUIs are much easier to create, using the SWING API. Whereas MFC or Win32 is not easy, (well, MFC isn't toooo hard :D).
You are correct to say that Java lacks good hardware control. However, as you know, C++ doesn't, and although you don't seem to approveof mixing many languages, using JNI (Java Native Interface), implementing C++ is quick and easy..

But, I lack experience, so you're probably correct :-)

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Some analogue TV cards come with FM tuners in, and the provided software should allow you to record from different channels. A digital TV card would allow you to do this with the radio channels on Freeview (in the UK...), and there are USB DAB recievers that could also be used. You would need to look at some reviews of the available cards to choose one. I've never heard of an AM PCI reciever I'm afraid.
May I ask why you want to do this?
IMO this chap was looking for a consumer level solution, not to program a HAM radio (pity we can't tell as he's abandoned it ;-) ). This would make my answer worth looking at too as the other answers are geared towards a different type of radio (particularly jaimes).
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.