VFO Design with Adaptive Step Rate and Vernier Display

V

VK3YNV

Guest
The encoder arrived today. The one I finally settled on is an optical encoder with push button. For the continuous tuning VFO I wanted an optical encoder without detent and push switch. This one is 64 ppr, which is in the range that should make the adaptive step control work smoothly without having to change the code too much.

It's not free spinning like a servo style incremental encoder, it has some rotational resistance so with the right size and weight knob it should be ok.
 

Attachments

V

VK3ZYZ

Guest
I purchased an ENS1J-B28 L00064 on Ebay a couple of weeks ago.
It was quite cheap, at least compared to new. And it was s'posed to be new old stock.
This one too is a 64PPR device. It has no detents or switch.
 

Attachments

V

VK3ZYZ

Guest
The boards have arrived :)
VK3ZYZ_VFO_Delux_01.jpg

Only problem (so far) is it looks like I forgot to do the step to produce the solder mask, so some places will need to have the mask scraped off before soldering.
Pooh!
 
V

VK3ZYZ

Guest
Assembly so far.
The regulator really needs to be a lower package, or on the other side of the PCB. Another oops! Version 2 board anyone???
5V_Reg.JPG
EDIT!
Use a 78D05 (or78M05) as it is lower!
78D05.JPG

If you are new to surface mount parts, one help is to pre-tin one end on the PCB pattern, then place the part with tweezers and solder that end.
PreTinOneEnd.JPG

Then go and solder the other ends.
SmtParts1.JPG SmtParts2.JPG

I've put sockets for the LCD and pins for the ESP32 module on this as it is the prototype and may need mods.
Socketed.JPG

Another error, the 120R 600mW resistor for the back light is marked as "R6" back light, but it should be "R5".
R5(R6)120R.png


And the trim pot VR1 needs to be rotated 180 degrees as it is too close to CN7.
RotateVR1.jpg
Or you could mount it on the other side of the PCB, maybe.

PLEASE NOTE!!!
The spacing for the ESP32 is wrong. Out by 0.025", so it needs to be mounted to the board on the pins, or pins and sockets (whichever way you go) BEFORE soldering either end!!

And so for the first test...
It's Alive!.JPG


All these have been soldered without scraping the solder resist off the pads. It seems to be ok.
Next. I will buy some push buttons and maybe install other connectors as the ones I want to use have not arrived as yet.

4pins.png

These are the type I'm waiting on. Ebay search for "10 Set 4 Pin Mini Micro JST XH 2.54mm 24AWG Connector Plug With Wires".
 
Last edited by a moderator:
V

VK3ZYZ

Guest
A couple of values have been changed to suit what I had in stock, so here is an updated circuit.

I also have purchased some SMA leads that have a right angle connector on one end. Ebay search for ...
"4/8/12/20INCH SMA male plug to sma male right angle lot RG316 cable pigtail FPV"
SMA_Lead.png
SMA_Lead_Ends.JPG

The SI5351 board is mounted about 8mm above the board.
Only CLK2 needs to use a RT angle SMA connector.

I'm not sure if the SI5351 board works as I soldered it in upside down, There was no smoke but it may now be crook.
 

Attachments

Last edited by a moderator:
V

VK3ZYZ

Guest
The power connector is different, 3.5mm pin spacing. This is so the 12V cannot be plugged into any other ports.
Some are coming from RS. I did think I had stock of them as they are a part I use on my commercial boards, but there was only 1 left and that is on my prototype board.
There are From RSPro and/or Wurth, and other brands as well. Here are those I have on order.

PowerSocket.png

On my board, the wire entry is from the side as that is the type I had, but this one will allow the PCB to be close to the case side if needed.
PowerPlug.png
 
Last edited by a moderator:
V

VK3ZYZ

Guest
NOTES:
I have noticed I got the header spacing a bit out. It will fit if the header pins and ESP32 board are all mounted BEFORE soldering.
Make sure the ESP32 board has a USB lead plugged in to get the height ok too. If you seat it down as low as you can, the lead will not fit.
Use a 90 degree vertical USB lead, or do not install SW3 and SW4, at least until it is all programmed.

On the version 1 board, the Tant capacitor labeled C6 should be C2, while C7 next to it should be C4.
The back light resistor R6 should be R5.

FETs Q3 and Q4 are BUK6207, not as on the original circuit.

Please post here if you find anything else I need to fix for the version 2 board.
 
Last edited by a moderator:
V

VK3YNV

Guest
Hi Denys,

I didn't have any problems soldering the ESP32 board, I fitted the pins to the VFO board to hold them in place while soldering the ESP32 pins

My TFT display has a different pinout, so I think I'll order the same one you used rather than muck about. The mounting holes are different too.


IMG_3741.JPG
 
V

VK3YNV

Guest
Hi Denys, could you post a link to the 50 ppr encoder that suits the mounting holes.
 
Last edited by a moderator:
V

VK3ZYZ

Guest
I just went to see Ray and he has loaded code that tests the encoder and SI5351 board.
They work :)
My code needs fixing and I'll post it later.
Thanks Ray.
 
V

VK3YNV

Guest
Here is a copy of the code it's pretty much the original JF3HZB code, the display works, the encoder works and the SI5351 outputs a 9 MHz signal. So no artwork errors or problems. :) very nice.

So now begins the process of modifying the code to make it do whatever you want.

Congratulations to Denys for a great job. I predict it will become the basis of many future projects.
 

Attachments

V

vk3tjs

Guest
Hi Denys,

I didn't have any problems soldering the ESP32 board, I fitted the pins to the VFO board to hold them in place while soldering the ESP32 pins

My TFT display has a different pinout, so I think I'll order the same one you used rather than muck about. The mounting holes are different too.


View attachment 437
Denys, I only have 1 set of pins for this board (ESP32) to solder, I do not have the inner set.
 
V

VK3ZYZ

Guest
I have some demo code all working now.
The right most buttons change the band.
There is some debug code running so if you open the serial terminal you can see the frequency updates.
Note: This debug code may slow it down a bit.

The VFO is output on the third port (CLK2) while CLK0 and CLK1 have a quadrature "BFO" output.
When I figure out how to change the code I will alter that.
Have fun :)
 

Attachments

V

VK3ZYZ

Guest
As I was getting sick of the board just sitting on the bench, I thought a case is in order.
Here is the start of that process.
VFO_caseFront.jpg

I think I'll cover up the red LED!

VFO_case back.jpg

The back of the case is still to be printed, and I may still change the front so the USB lead can be plugged in.
Now I am working on getting the code of 2 different versions into one.
 
V

vk3tjs

Guest
As I was getting sick of the board just sitting on the bench, I thought a case is in order.
Here is the start of that process.
VFO_caseFront.jpg

I think I'll cover up the red LED!

VFO_case back.jpg

The back of the case is still to be printed, and I may still change the front so the USB lead can be plugged in.
Now I am working on getting the code of 2 different versions into one.
Pictures?
 
V

VK3ZYZ

Guest
You wanted some pictures Jacek?
Here is the inside of the first 3d printed case.
First3DPrintedCase.jpg

Before that, I tried a Jaycar case.. HB6011
JiffyBoxHB6011.png

OriginalBoxFront.jpg

As you can see, I'm not much good at cutting neat holes!

So, back to the 3D printer...

BoardMounts.jpg


BoxNewFront.jpg

BoardFitted.jpg

Please note, the glass I print on has damage so the surface is not smooth.
I'm toying with getting a spring steel sheet instead, but another 410x410mm glass will be a lot easier to source.
 
Top