Some potentially useful information that cannot be found with a single Google search.
VK3HN Arduino and si5351 sketch
My sketches for implementing a VFO, BFO, carrier oscillator for CW, rig control, S meter, RF power meter and CW keyer on a Raduino is here. If you want to try this, all the instructions are in the read.me file.
Specifications of some commonly used varactors:
- Motorola MVAM108 25-500pF; –pF@9v; 30pF@8v; 40pF@7v
- Motorola MVAM109 30-460pF; 30pF@9v; 35pF@8v; 50pF@7v
- Motorola MV209 5-40pF; 12pF@9v; 14pF@8v; 16pF@7v
- Toshiba 1SV149: 25-500pF; 20pF@8.5v; 25pF@8v; 30pF@7v
Power across 50 ohm loads
7dBm (drive required by SBL-1) is 1.4V peak-peak. The full table is here.
Displaying an s-meter (or other meter) on a LCD screen with Arduino code can be done with the following method. Define 5 custom chars with 1, 2, 3, 4 and 5 vertical lines filled using this page:
Copy the byte definitions into the script. Determine how many LCD characters the s-meter will be (a full width meter would be 16 but you might want to make it smaller, say 8). Using a sequence of partial and full block chars you can render a line of 0 to n*5 segments where n is the number of allocated characters. So for an 8 char meter you have 40 segments to play with. Scale the analogue value read from the s-meter pin (0-1024) by n, and experimentally weight it as a crude form of calibration.
The Arduino lcd library allows a cursor to be set under a VFO frequency digit for emphasis, such as to illustrate the current step size. Use
SA630D solid state RF switch
The SA630D is a SPDT 50 ohm RF switch suitable for small signal switching in homebrew rigs and projects. It is ideal as a relay replacement, for switching BPFs (not LPFs) in a multiband rig, switching between IF filters, and small signal T/R switching. Summary from SA630D NXP datasheet:
1. General description
The SA630 is a wideband RF switch fabricated in BiCMOS technology and incorporating on-chip CMOS/TTL compatible drivers. Its primary function is to switch signals in the frequency range DC to 1 GHz from one 50 ohm channel to another. The switch is activated by a CMOS/TTL compatible signal applied to the enable channel 1 pin (ENCH1). The extremely low current consumption makes the SA630 ideal for portable applications. The excellent isolation and low loss makes this device a suitable replacement for PIN diodes. The SA630 is available in an 8-pin SO (surface-mounted miniature) package.
2. Features and benefits
Wideband (DC to 1 GHz)
Low through loss (1 dB typical at 200 MHz)
Unused input is terminated internally in 50 ohms
Excellent overload capability (1 dB gain compression point +18 dBm at 300 MHz)
Low DC power (170 uA from 5 V supply)
Fast switching (20 ns typical)
Good isolation (off channel isolation 60 dB at 100 MHz)
Low distortion (IP3 intercept +33 dBm)
Good 50 ohm match (return loss 18 dB at 400 MHz)
Full ESD protection
Digital transceiver front-end switch
SA630 RF switch for bandpass filter selection vk3hnMay 26 9:07 AM
I have sketched out a PCB for switching a bunch of band-specific BPFs for a homebrew receiver project. I am intending to put a decent quality Omron surface mount relay at each end of each BPF. Conventional stuff. No DC wetting but I don’t think I will use this receiver long enough for that to be a problem.
Last night I remembered I had a strip of SA630Ds and wondered if anyone has used these RF switches in amateur homebrew projects instead of solid state or relay switching. The datasheet is here:
They seem like a good option for small signal switching around receiver RF and IF stages. And they are dirt cheap at 10c a piece. Any opinions or experience?
Looks like those should work well. On the BPF board that I sell, I use the 74FST3251 analog mux. I see about 0.5 dB of loss through the switch. The surface mount inductors add 3 to 5dB more. Each board holds 6 filters and use 2 of the 74FST3251 chips.
Dave – WB6DHW
Arduino C: convert float/double to string for display
snprintf(destinationBuffer, bufferSize, formatString, data…)
destinationBuffer is a character string to hold the formatted data, bufferSize is the size of the destination buffer (using sizeof() is very useful for this variable), formatString is the normal “printf” style format string, and “data…” is the data to format and place in the buffer.
Can replace sprintf() to avoid risk of overwriting the destination buffer resulting in memory corruption.
Controlling a relay with a transistor. Variations include: high side (one side of relay earthed), low side (one side of relay on +ve rail), relay closes on low input, relay closes on high input.
For a high side switch use a BC547 and BD140 pair.
For a low side switch use a 2n7000.
Multiplexing switches on Arduino analog input
To save Arduino digital inputs, turn a string of switches into a voltage divider chain on an analog input and map the value read to a logical switch number.
Reading or controlling up to 8 lines with PCF8574
I/O expansion via I2C with a PCF8574. http://www.picmicrolab.com/pcf8574-i2c-8-bit-io-expander/
si5351 clock output levels
Minicircuits DBM LO ports require +7dBm drive, which is 1.4 to 1.5v P-P, 0.5V RMS.
Square wave amplitude measured from an si5351 as follows:
2ma setting: 190 mv rms. 0.6v P-P. -1dBm
4ma setting: 380 mv rms. 1.0v P-P. 5dBm
6ma setting: 560 mv rms. 1.6v P-P. 8dBm
8ma setting: 735 mv rms. 2.2v P-P. 10dBm
Based on these readings, the 4mA or 6mA output setting should be close enough to drive the L7 DBM LO port at 14MHz (claims G0UPL). A single stage buffer could be inserted between si5351 clock and the DBM for isolation and impedance transformation.
From emrfd Yahoo group: ‘On another note, I have used for years a BFG591 as 2N5109 replacement. Much cheaper than the 2N5109 and a bit more sturdy that the 2SC5551AF-TD-E. The BFG591 is now obsolete and the BFU590 is a good replacement. 73, Roelof, PA0RDT’.
Here is a table to compare some old and new RF devices.
|Device||Type||VCE (V)||fT (GHz)||p||Ic (mA)||hFE|
Clifton Labs broadband low-IMD RF amplifier
Clifton Labs Z10043A Norton Amplifier kit. The manual for kit has much info on performance and detailed schematic. https://www.okdxf.eu/files/Z10043A%20Broadband%20Norton%20Amplifier.pdf
Arduino digital pin values
For D2..D13 used as output… The output transistors on Arduino pins have about 40 ohms resistance – however they have an absolute max rating of 40mA current, so any safe use of the output pin will produce 1.6V or less for LOW and 3.4V or more for HIGH.
Capacitors for LPFs
Voltage ratings for capacitors in a high/low pass filter to handle 50 watts. 50 watts into 50 ohms should be 50 volts RMS. However, the P-P voltage is about 141 volts. Voltage is dependent on SWR.
Thomas LA3PNA> 100V capacitors is cutting it a bit close in my opinion, I would have used 500V capacitors, there are C0G capacitors around that are cheap and have low lead inductance that would be great at VHF.
See ATC capacitors: https://www.minikits.com.au/ATC-series
si5351 90 degree phased clocks
Available on CLK#0 and 1 to 110MHz at http://py2ohh.w2c.com.br/trx/si5351quadra/si5351quadra.html
ssm2167 limiter/compressor/noise gate
toggle – attach/release (fast/slow)
potentiometer – gain (may be preset)
potentiometer – limit threshold
potentiometer – compression ratio
potentiometer – noise gate.
Discussion on Bitx20 groups.io: https://groups.io/g/BITX20/topic/ubitx_ssm2167_mic_compressor/16775725?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,16775725
160m inverted L dimensions
There is a lot of inverted-L wisdom on the various forums. KH6AQ, Jul 8, 2016, writes — the formula for this inverted-L is 256/F. I would cut it long – like 270/F and trim it to resonance.
For 1.825Mhz L section length is 140′ 3″ (42.75m), cut wire to 147′ (44.8m) and trim down.
Semiconductor equivalent catalogue
Use this site to map odd components (eg. power mosfets) to alternatives. Try it out on the STW20NM50 used by VK3XU’s AM class E transmitter. http://www.hotenda.com/reference/cross/part/STW20NM50.html
For use in VK3XU’s 100 watt class E AM transmitters — SPW20N60C3 (Rockby #37523).
Winding another secondary onto a 500VA toroidal transformer
Reference: Looking at the specifications of the Altronics M5730C 500VA toroidal transformer ($155) as a basis for determining how to wind onan additional 110V secondary.
M5730C 500 VA Toroid has diameter 127mm.
240V primary is 574 turns, using 0.96mm ECW (AWG#18 shows as 1.024mm dia).
240V primary current is 500/240 = 2.08 amps. recommended fuse 3.5A slo.
30V secondary is 75T of 1.8mm ECW (AWG#12 shows as 2.053mm dia).
75/574 * 240 = 31.4V
1 turn = 30/75 = 0.42V
30V secondary current is 8A.
Therefore 110V secondary = 110/0.42 = 262 turns.
262/574 = 0.45 (cross check: 110/240 = 0.45)
Secondary current rating: 500VA / 110V = 4.5A
Determine secondary wire size (by inference), using 8A <-> AWG12 and 2A <-> AWG18;
Current AWG# AWGmm Approx
2A AWG18 (1.024) 1.0 mm
4A AWG16 (1.291) 1.2 mm **
6A AWG14 (1.628) 1.6 mm **
8A AWG12 (2.053) 1.8 mm.
Length of one turn on intended repurposed toroidal transformer: 21.5cm, therefore 262*21.5 = 5633cm = 56.5m.
Some calculations for alternative inductors in the PuWMa PWM module. RM10 refers to winding the inductors on RM10 ferrite cores. Also T106-26 toroids.
About RM10 cores: RM10 ferrite core, N87 material, Al 4200nH. In the case of a ready-made core, the manufacturer gives you directly the AL, in nanohenry/turn². All you have to do is to multiply this figure by the number of turns squared to get your inductance.
|turns||L (nH)||L (uH)|
A circuit for a mic preamp, with balanced input and phantom power, using SSM2017. The power supply using 7815/7915 and a multiplier for the 48v phantom supply is also n this page.
Looking for a better PLL/DDS than the si5351, which is fine for simple rigs but places some annoying spurs around the bands. The AD9951 has a 14 bit DAC. The AD9959 has four channels, is readily available from Chinese sources, but its channels are 10-bit DAC. AD9959 prices, now under $AUD40.
See DK7IH’s post on the AD9951, clocked at 120MHz. This appears to be a safe path but involves building up a DDS board and hand coding as I cannot find a reliable library so would need to get my head around Peter’s code.