A series of random and irregular jottings, documenting matters of interest (to me) in the sphere of amateur radio and beyond.

Sunday, 24 March 2013

Arduino VFO

The m0xpd wallet has been dusted off - to the extent that I actually invested in a genuine Arduino (!!!)

Nothing against the penny-pinching WotduinoTM - but I need to be able to show true compatibility for some "public appearances" in the future and there's nothing more convincing than hearing the tune played on a genuine Stradivarius fiddle.

As opening application for the kosher Arduino, I rustled up a VFO system - much in the style of the excellent pa0klt VFO I got from Jan at SDR-Kits a few years back.

I took another of my Arduino DDS shields (this time made up with a socket for the DDS module, as I wanted to be able to plug different units in for testing). Then I took my code for driving the DDS module and mixed in some rotary encoder interfacing and some calls to the Arduino LiquidCrystal library to drive a 16*4 LCD.

Here's the finished result...

Like my Arduino QRP rig, the VFO currently jumps the gaps between the amateur bands - although there's nothing to stop me having a continuously-variable frequency, with no inter-band gaps if I choose. That's the beauty of this approach - it is flexible and entirely configurable. Something other VFOs can't match.

It's also inexpensive - even if you insist on buying a pukka Arduino, you still might get change from £25.

1 comment:

Oh great, I am working on the same thing, I want to use it with a multiband BITX. 3 pins for LCD (HD44780 + 74HC164 shift registers), 2 for encoder, 3 for BPF bandswitch, 3 for buttons (band/step/split), 1 for TX sensing, 1 analog input for voltage, 1 analog input from AGC (for S-meter), 2 analog inputs for FWD/REF ... almost all used. I should be getting the AD9850 next week and dig more into it, for now I only implemented the display for mode(USB/LSB), freq and voltage, the encoder and the band and step buttons. I use only two steps (50Hz and 1000Hz), is enough for SSB with my 16-position encoder; I'll post something on my blog when I'm done.

Vi suggerisco...

About Me

Engineer, who grew up in the age when hobbyists used a soldering iron (rather than a mouse) to mess with computers. Came late in life to amateur radio, where he operates the station m0xpd, conducts pointless experiments, and plays with words and ideas.