Difference between revisions of "VFO-002"

From Land Boards Wiki
Jump to navigation Jump to search
 
(34 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''This is a work in process '''
+
'''Abandoned for Arduino Pro Mini based design [[VFO-003]]'''
  
[[File:VFO-002-720px.png]]
+
[[File:VFO-002-2.png]]
  
 
== Features ==
 
== Features ==
  
* Fits within standard extruded enclosure
+
* Software controlled VFO
* Controls Tx/Rx/BFO frequencies with rotary encoder
 
** 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps
 
* DD1306 OLED Display
 
** I2C Interface
 
** "Curved" display
 
* Uses RIT control on HW-9
 
** +/- 1 KHz RIT
 
 
* Blue Pill Microprocessor
 
* Blue Pill Microprocessor
 +
** STM32F103 32-but ARM RISC CPU
 
** Arduino compatible
 
** Arduino compatible
** 3.3V
+
** 3.3V I/O
* Si5351 Oscillator
+
* Detachable Rotary Encoder/OLED card
 +
** SSD1306 OLED Display
 +
*** I2C Interface
 +
** Controls frequencies with rotary encoder
 +
** 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable
 +
* Si5351A Oscillator
 +
** 3 Outputs
 +
** 25 or 27 MHz crystal
 
** I2C Interface
 
** I2C Interface
** 3 Outputs
+
* Power
 
+
** MINI-360 DC/DC Buck regulator
** 25/27 MHz crystal
+
** 7-24 VDC
 
+
* Fits in standard extruded enclosures
== Schematic ==
 
 
 
[[File:VFO-001-SCHEMATIC.PNG]]
 
 
 
== Connections to Radio ==
 
 
 
* RIT pot
 
** Connects to Analog input
 
*** Polled occasionally while in receive
 
* Band switch
 
** SW1 9V
 
* T/R - transmit/receive
 
  
 
== Parts ==
 
== Parts ==
Line 53: Line 42:
 
* Arduino IDE
 
* Arduino IDE
  
=== 128x32 OLED ===
+
=== OLED ===
  
[[File:Si5351_003_720px.jpg]]
+
==== 128x32 OLED ====
  
 
* [https://www.ebay.com/itm/2pcs-0-91-128x32-IIC-I2C-White-OLED-LCD-Display-DIY-Module-For-Arduino/293688288048?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649 Ebay]
 
* [https://www.ebay.com/itm/2pcs-0-91-128x32-IIC-I2C-White-OLED-LCD-Display-DIY-Module-For-Arduino/293688288048?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649 Ebay]
  
 
[[File:OLED128x32.PNG]]
 
[[File:OLED128x32.PNG]]
 +
 +
==== 128x64 OLED ====
 +
 +
* Rotated
  
 
==== Arduino Library for OLED ====
 
==== Arduino Library for OLED ====
Line 92: Line 85:
 
</pre>
 
</pre>
  
=== Rotary Encoder/Breakout Board ===
+
=== Rotary Encoder ===
 
 
[[File:RotaryEncoderCAD.PNG]]
 
 
 
 
 
[[File:Si5351_004_720px.jpg]]
 
  
 
* Includes pushbutton Switch
 
* Includes pushbutton Switch
Line 107: Line 95:
  
 
=== Si5351 Frequency Generator ===
 
=== Si5351 Frequency Generator ===
 
[[File:Si5351_001_720px.jpg]]
 
 
[[File:VFO3.PNG]]
 
  
 
* I2C Daisy-chain connector
 
* I2C Daisy-chain connector
Line 118: Line 102:
 
** BFO - could be adjusted
 
** BFO - could be adjusted
  
[[File:Si5351_002_720px.jpg]]
+
=== Mini-360 Buck Converter ===
  
==== Measurements ====
+
* Power from 7-23 VDC in
 +
* 5V out
  
==== VFO TX ====
+
[[File:mini-360-power-regulator.jpg]]
  
* 250 KHz range
+
[[File:Mini-360-Dimensions-01.PNG]]
** From 5.9993-5.7493 MHz
 
  
==== VFO RX ====
+
== Enclosure ==
  
* RIT knob is taken in through an A/D and adjusts the receive frequency plus/minus 1 KHz
+
== 100x76x35mm Black Aluminum Enclosure ===
  
==== BFO ====
+
* [https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2386202.m570.l1313&_nkw=100x76x35mm+Aluminum&_sacat=0 ebay search term]
  
* 8.8314 MHz in receive
+
[[File:box-100x76x30-Mechs.png]]
* 8.8307 MHz in transmit
 
* 700 Hz difference but could be adjusted
 
  
=== Low Pass Filters ===
+
== Schematic ==
  
* Si5351 has square wave outputs
+
== Mechanicals ==
* LP filter can be used to change squarewave into sinewave
 
* [https://rf-tools.com/lc-filter/ LC Filters Design Tool] - calculator
 
* [https://kitsandparts.com Kits and Parts dot Com]
 
** [https://kitsandparts.com/lpf.1.5.php Build a 7-pole Universal Low Pass Filter for HF]
 
** Butterworth
 
** Replace with SMT card?
 
  
[[File:LPF.1.5.sch.png]]
+
[[File:VFO-002_Mechanicals.PNG]]
  
[[File:LPF.1.5.pcb.png]]
+
== Libraries/Example Code ==
 
 
* [http://toroids.info/FT37-43.php Toroid Calculator]
 
* [https://kitsandparts.com/PCBs/LPF/filter2.pdf A short guide to harmonic filter for QRP transmitter output]
 
** [https://www.mouser.com/ProductDetail/Pulse-Electronics/PE-0805CLH1R5STS?qs=82jvyl5dHWdaYiLrQ038Kg%3D%3D PE-0805CLH1R5STS Example 1 uH inductor]
 
** [https://www.mouser.com/Search/Refine?Keyword=PE-0805CLH Search PE inductors]
 
** [https://www.mouser.com/Passive-Components/Inductors-Chokes-Coils/Fixed-Inductors/_/N-wpczZ1yzvvqx?P=1yzvlksZ1z0wqjdZ1z0woesZ1z0wrifZ1z0wri6Z1z0wrhxZ1z0wrhoZ1z0wrhfZ1z0wpbo&Ns=Pricing|0 Broader search]
 
** [https://www.mouser.com/Passive-Components/Capacitors/Ceramic-Capacitors/_/N-5g8mZ1yzvvqx?P=1z0z7ymZ1yxboka&Rl=5g8mZer3vZ1z0x74kZ1z0x7xwSGT&Keyword=0805&Ns=Pricing|0 0805 caps C0G]
 
 
 
 
 
[[File:LCFilterValues.PNG]]
 
 
 
* VFO and BFO frequencies are outside the bands (deliberately to void collisions)
 
 
 
==== BFO Filter ====
 
 
 
* 8.8314 MHz in receive
 
* 8.8307 MHz in transmit
 
 
 
[[File:BFO_Filter.PNG]]
 
  
[[File:BFO_Filter_IL.PNG]]
 
 
== Libraries/Example Code ==
 
 
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/STM32/VFO_Si5351 Land Boards Application]
 
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/STM32/VFO_Si5351 Land Boards Application]
 
* [https://github.com/pu2clr/VFO_BFO_OLED_ARDUINO VFO and BFO with Si5351A, OLED and Arduino]
 
* [https://github.com/pu2clr/VFO_BFO_OLED_ARDUINO VFO and BFO with Si5351A, OLED and Arduino]
Line 196: Line 150:
  
 
* [https://www.youtube.com/c/CharlieMorrisZL2CTM/videos Charlie Morris YouTube channel]
 
* [https://www.youtube.com/c/CharlieMorrisZL2CTM/videos Charlie Morris YouTube channel]
 +
 +
== Assembly ==
 +
 +
[[VFO-002 Assembly]]

Latest revision as of 16:57, 10 March 2021

Abandoned for Arduino Pro Mini based design VFO-003

VFO-002-2.png

Features

  • Software controlled VFO
  • Blue Pill Microprocessor
    • STM32F103 32-but ARM RISC CPU
    • Arduino compatible
    • 3.3V I/O
  • Detachable Rotary Encoder/OLED card
    • SSD1306 OLED Display
      • I2C Interface
    • Controls frequencies with rotary encoder
    • 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable
  • Si5351A Oscillator
    • 3 Outputs
    • 25 or 27 MHz crystal
    • I2C Interface
  • Power
    • MINI-360 DC/DC Buck regulator
    • 7-24 VDC
  • Fits in standard extruded enclosures

Parts

Blue Pill Card

STM32F103C8T6-Blue-Pill-Pin-Layout.gif

  • 3.3V operation work without level shifters for I2C
    • OLED can run from 3.3V
    • Si5351 can only run from 3.3V
  • Used right angle headers and Dupont cables
  • Replaced BOOT 0,1 jumpers
    • Jumper on BOOT1
    • Switch on BOOT0 - easier to download code
  • Download via serial
  • Arduino IDE

OLED

128x32 OLED

OLED128x32.PNG

128x64 OLED

  • Rotated

Arduino Library for OLED

U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);   // STM32, Ebay OLED
  u8g2.setFont(u8g2_font_ncenB14_tr);
Hello World Code
U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);   // STM32, Ebay OLED

void setup(void) {
  u8g2.begin();
}

void loop(void) {
  u8g2.clearBuffer();			// clear the internal memory
  u8g2.setFont(u8g2_font_ncenB08_tr);	// choose a suitable font
  u8g2.drawStr(0,10,"Hello World!");	// write something to the internal memory
  u8g2.sendBuffer();			// transfer internal memory to the display
  delay(1000);  
}

Rotary Encoder

Si5351 Frequency Generator

  • I2C Daisy-chain connector
  • 3 outputs
    • Tx
    • Rx (may not need to use separate output)
    • BFO - could be adjusted

Mini-360 Buck Converter

  • Power from 7-23 VDC in
  • 5V out

Mini-360-power-regulator.jpg

Mini-360-Dimensions-01.PNG

Enclosure

100x76x35mm Black Aluminum Enclosure =

Box-100x76x30-Mechs.png

Schematic

Mechanicals

VFO-002 Mechanicals.PNG

Libraries/Example Code

Videos

Assembly

VFO-002 Assembly