Saturday, January 31, 2015

IF offset added to Si5351 VFO sketch

4/10/15***This sketch will no longer work go to this page and download the new library and sketch.
This new listing will allow an IF offset to be added to the VFO sketch.
*These new lines, among others, have been added:

  volatile uint32_t vfo = 14200000L; // this is the start frequency
  volatile uint32_t LSB = 8999500L;  // change this ...
  volatile uint32_t USB = 9001500L; // ... and this to reflect your IF frequency
  volatile uint32_t bfo = 9001500L;   // inital start bfo is set to USB

The bfo will change from USB to LSB when the vfo is below 10 MHz and will be noted on the LCD.

By all means, experiment with this code. If you mess up just download it again.
I will from time to time update this code and will try to keep it simple, readable and distinctive as to things like different types of displays. The whole idea to learning something about programming is that you will not be stuck with things the way I do them or anyone else. Come to think of it, that is also one of the best things about home brewing!

*just changing these few lines will not work. You need to click "new listing" to download the new sketch.


  1. hello tom .my if is 9mhz(crystal filter).can i receive all hf bands with this sketch ? thanks ,9a3xz,Mikele

  2. Hi Mikele,
    You should be ok with this. I used the same sketch in my multiband rx. Some bands that I don't have antennas for weren't checked thoroughly but should work.
    Tom, ak2b

    1. thanks Tom ,perhaps in my case will be better with arduino uno .i wanna make one receiver likes yours and i like Pete s ZIA.i like it with terminal insensitive amplifiers by w7zoi and Bob.

  3. I pretty much ran out or was close to running out of programming space with the Uno. I have a Mega 2560 but I really don't like the size of it. The Teensy 3.1 is something I'm playing around with now that I think is up to the task. The problem is, between the library sizes, both for displays and si5351's, the flash memory of an Uno (32K) can pretty quickly be eaten up if you vary much from the simple sketches on this site. In one of my receivers with switched band pass filters, I was right on the edge of the 32K limit and decided to go with the Teensy 3.1 for the larger flash memory(256K).
    Pete's ZIA should be fine with the Uno or a Mini.
    Tom, ak2b

    1. ok Tom thanks once again next monday i will buy one duemilanove via ebay and no problem.thank you a lot for your advices Tom.i m continue follow your nice blog.73 de 9a3xz Mikele ,Croatia

  4. Hello Tom
    Thank you
    My vfo worked perfectly.
    I will assemble a filter and install the SI 5351 .