Hardware - K7MDL2/KEITHSDR GitHub Wiki
This SDR radio is very simple to build as far as construction projects go. Ignoring packaging here is the list of major components to get a working receiver going on the SDR_887x build. Other builds exist with different display screens and controllers. The transmit portion now exists but is in early days and still under development. This is a new project so components will change with continuous improvements made.
A very simple Teensy 4 based 5W transceiver can be made with very few parts. The simplest solution is using the RS-HFIQ 5W SDR transceiver board with the Teensy 4 and SGTL5000 audio card, with a RA8875 or Ra8876 touchscreen. A v1 or v2 Teensy/Audio motherboard is supported. Just add a USB2 cable, Line-In, and Line-Out audio cables between the Teensy and RS-HFIQ and you are on the air very quickly! As of Dec 2022 a new 7in sized V2.1 PC board has been published. See the /Hardware files folder and/or https://oshwlab.com/k7mdl/Teensy-4.1-SDR-Motherboard-for-7.
3D pic of the 7" V2.1 motherboard. Can mount both the 7" and 4.3" displays.
V2.1 Teensy SDR Motherboard
Displays: 800x480 RA8875 or 1024x600 RA8876 with capacitive touchscreens. 4.3" to as high as 10" are available. I have built 2 Teensy SDRs, one a 4.3" and the other a 7". From buydisplay.com manufactured by EastRising.com. Also found at the other usual online stores. ($45 to $70). Both of the displays I used have these options:
- 40 pin header with 4 wire SPI (Listed as Pin Header Connection-4-wire SPI on Buydisplay.com Interface Option dropdown list)
- SD card Pin header. The Teensy and sound card both have a SD card reader, we are not using it right now but will later.
- No option Font ROM
- 5V power - You can change the jumpers for any of the other options if needed. The 5V is regulated onboard to 3.3V. If you have enough 3.3V supply you can use that with the right jumper change (but may need to modify a PCB if used).
- Capacitive Touch Panel (touch screen controller)
Sample Link for 4.3" RA8875 800x480 SPI Touchscreen at BuyDisplay.com
Teensy 4.1. The code assumes a Teensy 4.1 leveraging the extra IO pins and optional ethernet for NTP time sync ($30) A Teensy 4.0 could be used but will likely be short some IO pins you might need.
Teensy SGTL5000 Audio backpack module for Teensy 4.X ($17)
Teensy 4.X ethernet jack from PJRC- optional, requires a T4.1. I use it today for NTP clock updates and I have experimental code that dumps raw FFT data out to a PC for external processing. ($10) The V2 PCBs use a USB/Enet combo jack instead of this PJRC mag jack.
12V and 5V power supply. 1A to 3A depending on your options installed, especially speaker amps if used. I found that an isolated output DC-DC converter works the best. The 7" V2.1 PCB adds a 1.5A 3.3VDC filtered supply off the 12V.
Radio hardware Options:
a. For RX only the QRP Labs RX module at https://qrp-labs.com/receiver.html is available.
b. NT7V RX/TX board if you can snag one, they are 6 years old now. It uses a 2X LO, the QRP Labs uses 4X. This means the PLL needs to supply 2 or 4 times the target RF frequency you want to operate on.
c. RS-HFIQ 5W SDR transceiver. Requires the Teensy USB Host port option and a stiff 5V power supply since the Nano in the RS-HFIQ draws 150ma over the Host USB cable. This is the most compact and easiest hardware path, works very well.
d. There are other boards you can adapt as well. Search the forum for more ideas.
High PPR encoder for VFO: I found 120ppr is fine. With higher 600ppr, 360ppr encoders you end up applying scaling factor so are not using each encoder output step but they may feel smoother and allow a smaller tune rate size. (ppr = pulses per revolution). You will need a knob for this. A 2 inch diameter spinner knob is similar to most commercial radios and can be found in several places. Look at Guitar amp knobs. Watch the encoder shaft size matches your knob of choice. I support both mechanical and i2c connected encoders (with RGB LEDs inside). Can use a mechanical hi PPR encoder for the VFO and daisy chain up several i2C encoder for simple wiring and novel colored lighting. As of April 2022 I support 6 i2c encoders, each with a push switch for 2 switch actions each, one long push, the other for regular push.
Other encoders: Various potentiometers and encoders can be added for things like volume and feature operation. I support one encoder to be used as a multi-function knob. You can use touch only, best on a 7" or larger screen. You can mix touch and encoders in any combination. Touch screen with only a big VFO knob on a 7" is decent. I support up to 4 encoders total. Extending the code for more is not difficult. Their functions are assigned in a data table (SDR_Data.h).
10 band Preselector board for SV1AFN (optional) for improved out of band strong signal rejection performance (RX or very low level TX). This board also switches an attenuator and preamp. You can use the QRP Labs 6 band filter board also with their LPF and BPF filters in any combination. I do not have working code for the QRP labs filter board yet. Could also use very compact 5W rated i2c controlled N2ADR LPF filter board which is an optional board in the Hermes Lite 2 5W SDR transceiver. Mine is a spare I removed from one of my Hermes Lite 2 SDRs. You might snag a new one without a HL2 at MakerFabs.com or a used one from someone on the HL2 forum. I have not written the code for this board but it is very simple to do. None of the above are required for RS-HFIQ since the RS-HFIQ has all the filters needed plus the PA and LNA/Attenuator sections, very easy to use, just hook up a USB cable to the Teeny along with the Line-In and Line-Out cables.
Fixed or programmable attenuator (optional). Using a PE4302 module with 31dB total attenuation in 0.5dB steps. Not required for the RS-HFIQ.
Preamplifier (optional). One example is a HF-150Mhz preamp called "LaNA HF". There are many inexpensive wideband amp modules you can try. Not required for the RS-HFIQ.
Audio amplifier. Can use a line level connection to your PC audio input jack or direct to amplifier speakers. Or add an inexpensive 1 to 3W mono or stereo amplifier module and a speaker(s). No stereo effects in use yet, but likely someday. I found that 12V stereo modules are easier to use. The 5V amps I have used require floating speakers (+ and - leads) and suck a lot of 5V power. The 12V 3W stereo modules I have used have common grounded speaker and power leads. It is best to leave the Teensy Audio set at a fixed level and use the speaker amp volume control. You will want to use a stereo audio grounded isolation transformer between the SGTL5000 headphone jack and any grounded line input on amps or headphone jacks. The Line In and Line Out are grounded but are used for the radio side I/Q audio.
As of March 30 2021 here is a condensed list with some price estimates. This is derived from looking at my desktop build which is a full working RX with a VFO pot and several I2C encoders for MF and other uses.
The 4.3" RA8875 based display with capacitive touch. (Maybe $45 shipped). More $$ for the RA8876 based 7" version.
SV1AFN BPF board (about $96 shipped I think) = optional. Low power only! Was meant for RX use.
LaNA HF preamp (maybe $15) - optional
PE4302 Digital Step Attenuator - optional (maybe $18)
RG316 SMA interconnect cables (these can add up - assume $4 to $5 each - about 7 needed)
MCP 23017 I2C port Expander to drive a BPF board and save some GPIO pins - optional ($10 maybe).
DuPPa I2C encoder boards (Optional but really nice for daisy chaining up to 128 knobs on I2C - maybe $9 each shipped). I support up to 6 of these encoders and the included shaft push switches. Length of the i2c cables is a concern being looked into.
RGD LED encoders (Optional but add glitz! - maybe $2 each)
Knobs medium and small with translucent caps or rings for the RGB LED
Misc hookup wire
16 conductor ribbon cable and connectors for display of no PCB is used, and the i2c port expander to BPF board if used.
Multiple 2, 3, 4, 5 pin JST-XH and Molex locking PCB connectors and crimp pins
QRP-Labs RX board (modified for 192KHz - so 2.2nf caps and no transformers installed) (maybe $20 shipped?)
RS-HFIQ 5W SDR transceiver from HobbyPC. $239 - Currently out of production as of Dec 2022.
Si5351A PLL clock modules = Etherkits crystal or optional TCXO, or standard online $5 crystal 25ppm module. You can use other PLL such as from Analog Devices but you will need to find the matching Arduino library and code the API to it. ($12 etherkits TCXO shipped). Not required for the RS-HFIQ.
Optional - Si5351C module and 10Mhz OCXO - (About $50 if you can find one) - As of Feb 2022 I have one of the first Si5351c boards with TCXO and features auto-switch over to a 10Mhz external reference installed into my FT-817. It is sized to fit in a FT817, FT-818, FT857 and FT897 replacing the stock TXVO board. We could only get 10 Si5351C chips last year so that may limit getting these into people's hands until the supplies come back. It can be reprogrammed for other LO frequencies with minor work. Not required for the RS-HFIQ.
Heat sinks and voltage regulators for 3.3 and 5VDC with filter caps (I use SMD 22uF or 47uF 25V tantalum and axial or SMD 0.01uF caps)
Perfboard, large for a motherboard ($10) - or use the V2.x motherboard PCBs.
Stacking pin headers and sockets to stack the Teensy Audio Card on the Teensy and protoboard. Not required for the PCB.
Teensy 4.1 and multiple sockets (~$35)
Teensy Audio card for 4.1 $16
Optional inline audio ground loop isolator for connection a PC. (~$7)
Coaxial PCB mount power jack and cord
Teensy optional Ethernet jack kit (~$9)
Case to put everything in ($0 to $80)
3W stereo speaker amp module with onboard volume control - I put 3 JST-XH connectors on it, perfect fit. ($7)
Speakers, 3W, 1 pair ($10) - 12V preferred.
Ferrite beads: Large, medium and small for good measure, such as on any audio cable. I also twist my cables. (0 up to $15)
SMA right angle connectors to help things fit in my small case ($5 each)
SMA edge mounted connectors for RX board and optional OCXO board. ($1 to $4 each)
John's Teensy 4.1 motherboards for the RA8875 and RA8876 type displays (introduced April 2022) ($priceless!) Without the motherboard PCB you would fashion a custom cable display with 2x20 pin socket housing on one end, and a 14pin or larger on the other end. If you have room you can use a standard 40 pin to 40pin cable, very common for Raspberry PI IO cables. Then pick off the desired pins on your motherboard. SPI for the display and i2C for the touch controller run on this cable. The SPI bus is running at 30Mhz or higher. Beware a ribbon cable will be a RFI transmitter! The best solution is to mount your Teensy on the back of the display. This is what the Teensy motherboards do, and bolt to the display.