Difference between pages "NanoVNA" and "VFO-003"

From Land Boards Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== NanoVNA - Network Analyzer ==
+
[[fILE:VFO-003_P1861_720px.jpg]]
  
[[File:715RBejXZJL-Half.jpg]]
+
== Features ==
  
== Specifications ==
+
Software controlled VFO
  
* Number of Calibration Points: 101 (Fixed)
+
* Arduino Pro Mini Microprocessor
* Number of Scanning Points: 101 (Fixed)
+
** 8-bit ATMEGA328 CPU
* Display Tracking: 4, Marking: 4, Save Setting : 5
+
** 8 MHz
* PCB: 54mm x 85.5mm x 11mm (without the size of connectors, switches)
+
** 3.3V I/O
* Measurement Frequency: 50KHz ~ 300MHz (50KHz -900MHz, enable extended firmware)
+
* Detachable Rotary Encoder/OLED card
* RF Output: -13dbm (maximum -9dbm)
+
** SSD1306 OLED Display
* Frequency Accuracy: 0.5ppm
+
*** I2C Interface
* Measurement Range: 70dB (50kHz-300MHz), 50dB (300M-600MHz), 40dB (600M-900MHz) enable extended firmware)
+
** Rotary encoder
* Port SWR: 1.1
+
* Menu options
* Display: 2.8 inch TFT (320 x240)
+
** Select between 3 VFOs
* USB Interface: USB Type-C; Communications Mode: CDC (Serial)
+
** Adjust frequency
* Power Supply
+
** Step sizes: 1Hz, 10 Hz, 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable)
** USB 5V 120mA
+
** Adjust frequency accuracy to 0.01 Hz precision
** Maximum charging current 0.8A
+
** Turn VFO Off/On (Off = 3.3V)
 +
** Save default values which are loaded at power up
 +
* Si5351A Oscillator
 +
** 3 Outputs
 +
** [https://www.mouser.com/ProductDetail/Fox-Abracon/FOX924B-27?qs=%2Fha2pyFaduhq6kU%252Bi5vLrAGjqnvi7J8gxS%252BDxofzmrc%3D 27 MHz TCXO crystal oscillator]
 +
** I2C Interface
 +
** [http://www.relmon.com/en/mobile/index.php/list/detail/347.html MS5351M Data Sheet] - Alternate part for Si5351A
 +
*** [http://qrp-labs.com/synth/ms5351m.html MS5351M Evaluation Report by QRP-Labs]
 +
* 3.3V, 50 Ohm outputs
 +
** +12.6 dBm output
 +
* Power
 +
** [[Mini360_Buck_Converter|MINI-360 DC/DC Buck regulator]]
 +
** 5-24 VDC
 +
** 30mA at 12VDC
 +
* Fits in standard extruded enclosures
  
=== Resources ===
+
=== Arduino Pro Mini ===
  
* nanovna users nanovna-users@groups.io
+
* [https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2510209.m570.l1313&_nkw=Arduino+Pro+Mini+3.3V&_sacat=0 Ebay search for Arduino Pro Mini 3.3V]
* [https://www.amazon.com/s?k=NanoVNA&ref=nb_sb_noss_2 Amazon links]
+
* [https://www.amazon.com/s?k=arduino+pro+mini+3.3v&crid=32353SO1QC57M&ref=nb_sb_ss_ts-doa-p_4_16 Amazon search for Arduino Pro Mini 3.3V]
* [https://abracon.com/uploads/resources/Abracon-White-Paper-Antenna-Impedance-Matching.pdf Antenna Impedance Matching Simplified] - Abracon White Paper
 
* [https://nanovna.com/?page_id=46 How to read NanoVNA screen]
 
  
== Adding a battery ==
+
[[File:ArdruinoProMini-EBAY_PART-720px.png]]
  
* My unit did not come with a battery
+
=== Power ===
* Added an SMT mount ST connector to the board
+
 
* Added an 850 mAh LiPo battery
+
* 5-24 VDC
* The pinout on the card was backwards from the pinout of the connector at the end of the battery wires
+
* 30mA at 12VDC
** Removed the pins from the battery wire connector and flipped the pins
+
* 55mA at 5V
* Charging works
+
* 35mA at 9V
* Battery is a bit too thick to screw the back on completely
+
* 28mA at 14V
* Switched to longer standoffs
+
* 33mA at 23V
* Someone else's page (they added an inline connector and wired to the card)
+
 
** [https://www.epanorama.net/blog/2019/09/29/battery-for-nanovna/ Adding a battery]
+
=== TCXO ===
 +
 
 +
* TXCO requires very little frequency correction
 +
* [https://www.mouser.com/ProductDetail/Fox-Abracon/FOX924B-27?qs=%2Fha2pyFaduhq6kU%252Bi5vLrAGjqnvi7J8gxS%252BDxofzmrc%3D 27 MHz TCXO crystal oscillator]
 +
** Package / Case: 5 mm x 3.2 mm
 +
** Frequency: 27 MHz
 +
** Frequency Stability: 2.5 PPM
 +
** Supply Voltage - Max: 3.3 V
 +
* [https://www.mouser.com/ProductDetail/Fox-Abracon/FOX924B-25?qs=%2Fha2pyFadui2wJvSeJUfy4U6zwGkGxGt0HiIeYtjWowmwSAvVs76ZA%3D%3D 25 MHz] - Alternate would require software changes
 +
 
 +
== Connectors ==
 +
 
 +
=== J1 - OLED ===
 +
 
 +
* Located on display/encoder board
 +
 
 +
# SDA
 +
# SCL
 +
# Vcc
 +
# GND
 +
 
 +
[[file:VFO-003_J1.PNG]]
 +
 
 +
=== J2 - Display Encoder/OLED (Display card) ===
 +
 
 +
* Connect via cable to display/encoder board
 +
 
 +
# Encoder A
 +
# Encoder B
 +
# Encoder Switch
 +
# SCL
 +
# SDA
 +
# Vcc
 +
# GND
 +
 
 +
[[file:VFO-003_J2.PNG]]
 +
 
 +
=== J3 - Display Encoder/OLED (Main card) ===
 +
 
 +
* Connect via cable to display/encoder board
 +
 
 +
# Encoder A
 +
# Encoder B
 +
# Encoder Switch
 +
# SCL
 +
# SDA
 +
# Vcc
 +
# GND
 +
 
 +
[[file:VFO-003_J3.PNG]]
 +
 
 +
=== J4 - FTDI ===
 +
 
 +
* Can install 1x6 header on the Arduino Pro Mini and not install this
 +
 
 +
# GND
 +
# GND
 +
# Vcc
 +
# RX
 +
# Tx
 +
# DTR
 +
 
 +
[[file:VFO-003_J4.PNG]]
 +
 
 +
=== J5 - Arduino A0-A3/C10-D13 ===
 +
 
 +
# A3
 +
# A2
 +
# A0
 +
# D13
 +
# D12
 +
# D11
 +
# D10
 +
# Vcc (not connected on Rev 1 PCB)
 +
# GND (not connected on Rev 1 PCB)
 +
 
 +
[[file:VFO-003_J5.PNG]]
 +
 
 +
=== J6 - Disconnect for Mini-360 Power Supply ===
 +
 
 +
* The [[Mini360 Buck Converter]] comes adjusted for a very high output voltage
 +
* Remove jumper to adjust the output voltage to 3.3V without powering the rest of the card
 +
* Install to power the card from the power supply only after adjusting output
 +
 
 +
[[file:VFO-003_J6.PNG]]
 +
 
 +
[[file:Mini-360-004.jpg]]
 +
 
 +
=== J7 - Output disconnects ===
 +
 
 +
* Cut rear side trace to disconnect
 +
* Can be used to install external LP filters
 +
* Limited use due to 74AC14 drivers
 +
 
 +
[[file:VFO-003_J7.PNG]]
 +
 
 +
=== J8 - Arduino P5-P9 ===
 +
 
 +
# P5
 +
# P6
 +
# P7
 +
# P8
 +
# P9
 +
# Vcc
 +
# GND
 +
 
 +
[[file:VFO-003_J8.PNG]]
 +
 
 +
=== J12 - I2C ===
 +
 
 +
[[file:VFO-003_J12.PNG]]
 +
 
 +
=== P1-P3 - Outputs (BNCs) ===
 +
 
 +
== Measurements ==
 +
 
 +
* [[NanoVNA]]
 +
* 10 Mhz signal from the VFO-003
 +
* 1-100 MHz
 +
 
 +
[[file:tinysa_LOGMAG_S11_2021-10-12_12-29-43.png]]
 +
 
 +
[[file:tinysa_LOGMAG_S11_2021-10-12_12-09-58.png]]
 +
 
 +
=== 1-350 MHz scan ===
 +
 
 +
[[file:tinysa_LOGMAG_S11_2021-10-12_12-27-58.png]]
 +
 
 +
=== Harmonic content ===
 +
 
 +
* 10MHz fundamental = +12.25 dBm
 +
* 20MHz harmonic = -16.75 dBm
 +
* 30MHz harmonic = +2.4 dBm
 +
* 50MHz harmonic = -2.1 dBm
 +
 
 +
[[file:tinysa_LOGMAG_S11_2021-10-12_12-19-33.png]]
 +
 
 +
== Schematic ==
 +
 
 +
* [https://github.com/land-boards/lb-boards/blob/master/HamRadio/VFO-003/Documents/Schematics/VFO-003_Rev3_Schematic.pdf Rev 3 schematic]
  
 
== Software ==
 
== Software ==
  
* [https://nanovna.com/ NanoVNA.com]
+
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/LBCards/VFO-003 GitHub Repository]
* [https://github.com/mihtjel/nanovna-saver NanoVNA Saver]
+
 
* [https://drive.google.com/drive/folders/1-JViWLBOIzaHTdwdONX2RP8S4EgWxoND Google Drive]
+
[[file:VFO-003_P1867-720pxV.jpg]]
* [https://groups.io/g/nanovna-users User Group]
 
  
== Test Jigs ==
+
=== Memory Usage ===
  
=== RF Demo Kit ===
+
* Total Memory usage
  
* [https://www.aliexpress.com/item/4001015355411.html?spm=a2g0s.9042311.0.0.21f34c4dHoOWrm AliExpress listing]
+
<pre>
* Board
+
Sketch uses 25970 bytes (84%) of program storage space. Maximum is 30720 bytes. Global variables use 1503 bytes (73%) of dynamic memory, leaving 545 bytes for local variables. Maximum is 2048 bytes.
* SMA female connectors X6
+
</pre>
* 6mm standoffs X4
 
* M2.5 screw X4 (for standoffs)
 
* 49 pin machine contact array (7x7)
 
* (2) 0805 49r9 calibration resistance
 
** 1 spare)
 
** Installed 49.9 ohm resistor on upper left SMA
 
** Installed 0 ohm resistor on upper right SMA (not in kit)
 
  
[[file:RFTestBoard-3B.png]]
+
* Display code: 10260
 +
* Si5351 code: 12076
  
[[File:RF-test-03.jpg]]
+
==== Minimal u8g2 code ====
  
== Dual Band Dipole Measurements ==
+
<pre>
 +
Sketch uses 10260 bytes (33%) of program storage space. Maximum is 30720 bytes. Global variables use 1033 bytes (50%) of dynamic memory, leaving 1015 bytes for local variables. Maximum is 2048 bytes.
 +
</pre>
  
* NanoVNA sweeping from 3.5 MHz to 30 MHz
+
* Code
  
[[file:Dipole_20-40.png]]
+
<pre>
 +
void setup(void)
 +
{
 +
  u8g2.begin();
  
* Following this setup
+
}
  
<video type="youtube">QJYeFpiqY8c</video>
+
void loop(void)
 +
{
 +
  printStringToOLED("VFO-003");
 +
}
  
* Documenting the setup / measurements of SWR on 20M/40M/15M
+
void printStringToOLED(char * charStr)
 +
{
 +
  u8g2.clearBuffer();
 +
  u8g2_prepare();
 +
  u8g2.drawStr( 0, 0, charStr);
 +
  u8g2.sendBuffer();
 +
}
  
<video type="youtube">sfTCtu78pn8</video>
+
// u8g2_prepare()
 +
// Setup the screen font, etc
 +
// List of fonts
 +
// https://github.com/olikraus/u8g2/wiki/fntlist8#u8g2-fonts-capital-a-height-38
 +
void u8g2_prepare(void)
 +
{
 +
  u8g2.setFont(u8g2_font_t0_11b_tf); // 8 Pixel tall font
 +
  u8g2.setFontRefHeightExtendedText();
 +
  u8g2.setDrawColor(1);
 +
  u8g2.setFontPosTop();
 +
  u8g2.setFontDirection(0);
 +
}
 +
</pre>
  
<video type="youtube">l49rcqumoZs</video>
+
==== Minimal Si5351 code ====
  
<video type="youtube">rYFYTinlzdI</video>
+
<pre>
 +
Sketch uses 12076 bytes (39%) of program storage space. Maximum is 30720 bytes. Global variables use 378 bytes (18%) of dynamic memory, leaving 1670 bytes for local variables. Maximum is 2048 bytes.
 +
</pre>
  
* Dual band dipole from 3rd floor attic eaves to fence post
+
<pre>
 +
#include <Arduino.h>
 +
#include "si5351.h"
  
[[File:Antenna_20_40M_Dipole.jpg]]
+
// Constructors
 +
Si5351 si5351;
 +
// End of constructor list
  
* 20 Meter SWR sweep
+
void setup(void)
 +
{
 +
  unsigned long VFO_0_Freq;
 +
  unsigned long VFO_1_Freq;
 +
  unsigned long VFO_2_Freq;
 +
  bool i2c_found;
 +
  VFO_0_Freq = 14000000;
 +
  VFO_0_Freq = 14000000;
 +
  VFO_0_Freq = 14000000;
 +
  // Si8351 initialiation
 +
  si5351.init(SI5351_CRYSTAL_LOAD_6PF, 27000000, 0);
 +
  si5351.set_freq(VFO_0_Freq, SI5351_CLK0);
 +
  si5351.set_freq(VFO_1_Freq, SI5351_CLK1);
 +
  si5351.set_freq(VFO_2_Freq, SI5351_CLK2);
 +
  si5351.update_status(); 
 +
  si5351.set_correction(0, SI5351_PLL_INPUT_XO);
 +
  si5351.drive_strength(SI5351_CLK0,SI5351_DRIVE_8MA);
 +
  si5351.drive_strength(SI5351_CLK1,SI5351_DRIVE_8MA);
 +
  si5351.drive_strength(SI5351_CLK2,SI5351_DRIVE_8MA);
 +
}
  
[[File:SWR_Dipole_20M_sweep.png]]
+
void loop(void)
 +
{
 +
}
 +
</pre>
  
* 40 Meter SWR sweep
+
=== Feature Adds ===
  
[[File:SWR_Dipole_40M_sweep.png]]
+
* [https://github.com/pavelmc/FT857d CAT control]
  
* 15 Meter SWR
+
== Mechanicals/Enclosure ==
  
[[File:SWR_Dipole_15M_sweep.png]]
+
* Detachable Front Panel OLED with Rotary Encoder
  
== YouTube Videos ==
+
[[file:VFO-003_P1871_720px.jpg]]
  
[https://www.youtube.com/c/IMSAIGuy/search?query=NanoVNA Youtube PlayList]
+
* Designed to fit into Aluminum Project Box Enclosure DIY 100*76*35mm - [https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2334524.m570.l1313&_nkw=100*76*35mm+aluminum&_sacat=0&LH_TitleDesc=0&_odkw=100*76*35mm+Aluminum+PCB+Instrument+Box+Enclosure+Electronic+Project+Case+Set&_id=174408274566 ebay search]
  
=== W2AEW Videos ===
+
[[file:VFO-003_CAD_Dimensioned.PNG]]
  
<video type="youtube">o1eLK4EMpEQ</video>
+
[[file:VFO-003_FrontPanel_Holes.PNG]]
  
<video type="youtube">Sb3q8f0NBZc</video>
+
[[file:VFO-003_RearPanel_Holes.PNG]]
  
<video type="youtube">x-tbvAbh9jk</video>
+
== Rev 1 Board Issues List ==
  
<video type="youtube">xa6dqx9udcg</video>
+
No major issues
  
<video type="youtube">F17mN5uuzGY</video>
+
* J5-9 and J5-10 are missing connections
 +
** Add wires on reverse side of the PCB if needed
 +
* Note orientation of I2C termination resistors
 +
** Installed sideways by accident on first build
  
<video type="youtube">9thbTC8-JtA</video>
+
[[file:Rev1-Rework_R10,R11.PNG]]
  
<video type="youtube">bEPUePy_buM</video>
+
* Note orientation of Mini360
 +
** Put on backwards on first build
 +
** Always use a current limited power supply (I did, no damage)
 +
** Always adjust Mini360 with 3.3V SEL jumper removed
 +
** Solder in with short leads - space up a bit to allow rework
 +
** Orientation is with inductor towards edge of card
  
<video type="youtube">G9zZRNzhsEE</video>
+
[[file:Rev1-Rework_Mini360_Oientation.PNG]]
  
<video type="youtube">TsXd6GktlYQ</video>
+
== Rev 3 Design ==
  
=== Other Videos ===
+
* Adds J12, I2C connector
 +
** Use with I2C Peripheral like port expanders
  
<video type="youtube">tLMAStiaAxU</video>
+
[[file:Rev3-_J12_I2C.PNG]]
  
<video type="youtube">fSzY5q-QTpw</video>
+
* Add silkscreen, "VADJ>" pointing to the adjustment pot on Mini360
  
<video type="youtube">mKi6s3WvBAM</video>
+
[[file:Rev2-Rework_Mini360_VADJ.PNG]]
  
<video type="youtube">GJNMnq8eD0E</video>
+
* Add breakaways for Front Panel to make it easier to separate
  
<video type="youtube">v01lSgWo904</video>
+
[[file:Rev3-_OLED_Breakaways.PNG]]
  
<video type="youtube">THc5ZTxQUSg</video>
+
* Switch to 0.1" pitch SMA edge launch connectors
  
<video type="youtube">Hsx4wqAlqlQ</video>
+
[[file:Rev3-_SMA_Smaller.PNG]]
  
<video type="youtube">R5iYuGLvlas</video>
+
== Assembly Sheet / Parts List ==
  
<video type="youtube">iJ1qKE5O0bY</video>
+
[[VFO-003 Assembly Sheet - Rev 1]]

Revision as of 00:05, 15 October 2021

VFO-003 P1861 720px.jpg

Features

Software controlled VFO

  • Arduino Pro Mini Microprocessor
    • 8-bit ATMEGA328 CPU
    • 8 MHz
    • 3.3V I/O
  • Detachable Rotary Encoder/OLED card
    • SSD1306 OLED Display
      • I2C Interface
    • Rotary encoder
  • Menu options
    • Select between 3 VFOs
    • Adjust frequency
    • Step sizes: 1Hz, 10 Hz, 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable)
    • Adjust frequency accuracy to 0.01 Hz precision
    • Turn VFO Off/On (Off = 3.3V)
    • Save default values which are loaded at power up
  • Si5351A Oscillator
  • 3.3V, 50 Ohm outputs
    • +12.6 dBm output
  • Power
  • Fits in standard extruded enclosures

Arduino Pro Mini

ArdruinoProMini-EBAY PART-720px.png

Power

  • 5-24 VDC
  • 30mA at 12VDC
  • 55mA at 5V
  • 35mA at 9V
  • 28mA at 14V
  • 33mA at 23V

TCXO

  • TXCO requires very little frequency correction
  • 27 MHz TCXO crystal oscillator
    • Package / Case: 5 mm x 3.2 mm
    • Frequency: 27 MHz
    • Frequency Stability: 2.5 PPM
    • Supply Voltage - Max: 3.3 V
  • 25 MHz - Alternate would require software changes

Connectors

J1 - OLED

  • Located on display/encoder board
  1. SDA
  2. SCL
  3. Vcc
  4. GND

VFO-003 J1.PNG

J2 - Display Encoder/OLED (Display card)

  • Connect via cable to display/encoder board
  1. Encoder A
  2. Encoder B
  3. Encoder Switch
  4. SCL
  5. SDA
  6. Vcc
  7. GND

VFO-003 J2.PNG

J3 - Display Encoder/OLED (Main card)

  • Connect via cable to display/encoder board
  1. Encoder A
  2. Encoder B
  3. Encoder Switch
  4. SCL
  5. SDA
  6. Vcc
  7. GND

VFO-003 J3.PNG

J4 - FTDI

  • Can install 1x6 header on the Arduino Pro Mini and not install this
  1. GND
  2. GND
  3. Vcc
  4. RX
  5. Tx
  6. DTR

VFO-003 J4.PNG

J5 - Arduino A0-A3/C10-D13

  1. A3
  2. A2
  3. A0
  4. D13
  5. D12
  6. D11
  7. D10
  8. Vcc (not connected on Rev 1 PCB)
  9. GND (not connected on Rev 1 PCB)

VFO-003 J5.PNG

J6 - Disconnect for Mini-360 Power Supply

  • The Mini360 Buck Converter comes adjusted for a very high output voltage
  • Remove jumper to adjust the output voltage to 3.3V without powering the rest of the card
  • Install to power the card from the power supply only after adjusting output

VFO-003 J6.PNG

Mini-360-004.jpg

J7 - Output disconnects

  • Cut rear side trace to disconnect
  • Can be used to install external LP filters
  • Limited use due to 74AC14 drivers

VFO-003 J7.PNG

J8 - Arduino P5-P9

  1. P5
  2. P6
  3. P7
  4. P8
  5. P9
  6. Vcc
  7. GND

VFO-003 J8.PNG

J12 - I2C

VFO-003 J12.PNG

P1-P3 - Outputs (BNCs)

Measurements

  • NanoVNA
  • 10 Mhz signal from the VFO-003
  • 1-100 MHz

Tinysa LOGMAG S11 2021-10-12 12-29-43.png

Tinysa LOGMAG S11 2021-10-12 12-09-58.png

1-350 MHz scan

Tinysa LOGMAG S11 2021-10-12 12-27-58.png

Harmonic content

  • 10MHz fundamental = +12.25 dBm
  • 20MHz harmonic = -16.75 dBm
  • 30MHz harmonic = +2.4 dBm
  • 50MHz harmonic = -2.1 dBm

Tinysa LOGMAG S11 2021-10-12 12-19-33.png

Schematic

Software

VFO-003 P1867-720pxV.jpg

Memory Usage

  • Total Memory usage
Sketch uses 25970 bytes (84%) of program storage space. Maximum is 30720 bytes. Global variables use 1503 bytes (73%) of dynamic memory, leaving 545 bytes for local variables. Maximum is 2048 bytes.
  • Display code: 10260
  • Si5351 code: 12076

Minimal u8g2 code

Sketch uses 10260 bytes (33%) of program storage space. Maximum is 30720 bytes. Global variables use 1033 bytes (50%) of dynamic memory, leaving 1015 bytes for local variables. Maximum is 2048 bytes.
  • Code
void setup(void)
{
  u8g2.begin();

}

void loop(void)
{
  printStringToOLED("VFO-003");
}

void printStringToOLED(char * charStr)
{
  u8g2.clearBuffer();
  u8g2_prepare();
  u8g2.drawStr( 0, 0, charStr);
  u8g2.sendBuffer();
}

// u8g2_prepare()
// Setup the screen font, etc
// List of fonts
// https://github.com/olikraus/u8g2/wiki/fntlist8#u8g2-fonts-capital-a-height-38
void u8g2_prepare(void)
{
  u8g2.setFont(u8g2_font_t0_11b_tf); // 8 Pixel tall font
  u8g2.setFontRefHeightExtendedText();
  u8g2.setDrawColor(1);
  u8g2.setFontPosTop();
  u8g2.setFontDirection(0);
}

Minimal Si5351 code

Sketch uses 12076 bytes (39%) of program storage space. Maximum is 30720 bytes. Global variables use 378 bytes (18%) of dynamic memory, leaving 1670 bytes for local variables. Maximum is 2048 bytes.
#include <Arduino.h>
#include "si5351.h"

// Constructors
Si5351 si5351;
// End of constructor list

void setup(void)
{
  unsigned long VFO_0_Freq;
  unsigned long VFO_1_Freq;
  unsigned long VFO_2_Freq;
  bool i2c_found;
  VFO_0_Freq = 14000000;
  VFO_0_Freq = 14000000;
  VFO_0_Freq = 14000000;
  // Si8351 initialiation
  si5351.init(SI5351_CRYSTAL_LOAD_6PF, 27000000, 0);
  si5351.set_freq(VFO_0_Freq, SI5351_CLK0);
  si5351.set_freq(VFO_1_Freq, SI5351_CLK1);
  si5351.set_freq(VFO_2_Freq, SI5351_CLK2);
  si5351.update_status();  
  si5351.set_correction(0, SI5351_PLL_INPUT_XO);
  si5351.drive_strength(SI5351_CLK0,SI5351_DRIVE_8MA);
  si5351.drive_strength(SI5351_CLK1,SI5351_DRIVE_8MA);
  si5351.drive_strength(SI5351_CLK2,SI5351_DRIVE_8MA);
}

void loop(void)
{
}

Feature Adds

Mechanicals/Enclosure

  • Detachable Front Panel OLED with Rotary Encoder

VFO-003 P1871 720px.jpg

  • Designed to fit into Aluminum Project Box Enclosure DIY 100*76*35mm - ebay search

VFO-003 CAD Dimensioned.PNG

VFO-003 FrontPanel Holes.PNG

VFO-003 RearPanel Holes.PNG

Rev 1 Board Issues List

No major issues

  • J5-9 and J5-10 are missing connections
    • Add wires on reverse side of the PCB if needed
  • Note orientation of I2C termination resistors
    • Installed sideways by accident on first build

Rev1-Rework R10,R11.PNG

  • Note orientation of Mini360
    • Put on backwards on first build
    • Always use a current limited power supply (I did, no damage)
    • Always adjust Mini360 with 3.3V SEL jumper removed
    • Solder in with short leads - space up a bit to allow rework
    • Orientation is with inductor towards edge of card

Rev1-Rework Mini360 Oientation.PNG

Rev 3 Design

  • Adds J12, I2C connector
    • Use with I2C Peripheral like port expanders

Rev3- J12 I2C.PNG

  • Add silkscreen, "VADJ>" pointing to the adjustment pot on Mini360

Rev2-Rework Mini360 VADJ.PNG

  • Add breakaways for Front Panel to make it easier to separate

Rev3- OLED Breakaways.PNG

  • Switch to 0.1" pitch SMA edge launch connectors

Rev3- SMA Smaller.PNG

Assembly Sheet / Parts List

VFO-003 Assembly Sheet - Rev 1