A friend has a Kenwood TS-520S HF (high frequency) ham radio. He does not have the optional DG-5 frequency display and calibrating the dials between bands is not much fun. He gave me some information about the DG-5 and through some review I believe I can make a substitute for the DG-5 using an Arduino, LCD Shield and hand full of chips.
He could buy a DG-5 but that would cost more than he paid for the whole rig and it really is not necessary to use the radio, just more convenient.
This is part one so watch this video which covers my idea and some pre-testing. All looks good so far and I’m already working on part two.
I got the Arduino frequency library from this site:
In the video I just use the library example scketch so I have no code to share in part 1.
I also followed some circuit examples shared at these two sites which both built HF frequency counts and were great sources of information to help me on my way to building an Arduino derivative HF frequency counter. My counter is for a single custom application and so doesn’t incorporate all the features these other builds include.
Here are some photos of what I covered in part one. CLICK ON PHOTO for hi-resolution image.
My Arduino I will be using to count freq and do some line select inputs and math.
RGB back light dispaly by Adafruit.com for my freq display
These are the freq I measured coming out of the three RCA jacks on the back of the TS-520S ham radio. I need to count these freq and do some math to know the freq the radio is using.
I can measure the VFO and BFO with the Arduino directly but not the HFO. I will need to use a prescaler to divide the HFO by 8 before it gets to the Arduino.
The library I’m using is coded to use just the one input so my plan is to use a line select chip to multiplex the three signals to this single Arduino input.
For a test of the Arduino measuring the BFO freq level directly I just created a nice clean 0-5v square wave at 3.395MHz on my freq generator and put it into the input pin the Arduino is coded to use per the library. As you can see it can count this just fine.
I use my leader to validate the Arduino is correct.
I then double check the Leader and Arduino with my HP counter. All instruments agree to within 1Hz. WOW. Nice.
For the HFO I have to use a MFJ-259 SWR antenna analyzer to generate the higher 10 to 40 MHz signal for testing the Arduino.
However this instrument only outputs a 1 to 1.1V peak wave which is too low of a voltage level for the Arduino to count.
Even at the 5MHz level the Arduino only outputs 0 back to the serial monitor on the PC. It could measure the 5MHz but not at the low voltage levels. I will need to build an amplifier before the Arduino can use the SWR antenna analyzer output for testing.
On to testing the divide by 8 prescaler. I output a 4MHz square wave 0-5 v from my function generator.
I then pipe this 4MHz into the 4 bit binary ripple counter in 3 bit mode. It should output a clean divide by 8 signal at 500KHz
My Leader records the 4MHz in and the HP records the 500KHz out of the chip so we can compare to the Arduino freq count output.
The Arduino reads spot on with the HP at 499,997Hz
This just shows that the Arduino can then do some math to multiply what it counted back to 4MHz with (frq*8) code.
This shows the Leader which is counting the source at 4Mhz agrees with the Arduino’s math to within +/-4Hz. NICE! I only need to be within 100Hz in the end for this to work as a ham radio freq display
That is it for part one. Part two will start with signal amplification then multiplexing and more. I’m not sure how many parts this will end up being but it is fun to share and I hope fun to follow along.