As mentioned in the introductory article to this radio the digital components in this transceiver are pre-manufactured modules that have only been put together in a more or less sensible way. ;-). These modules are:
AD9850 as variable frequency oscillator (VFO), China made no-name board,
Si5351 as local oscillator (LO) produced by “Adafruit”,
Arduino Pro Mini w. ATMgea328p as Microcontroller Unit (uC, MCU), no-name
ST7735 colored LCD, no-name,
MCP4725 as digital-analog-converter to preset transmitter gain via MCU, “Sparkfun” clone from China, no-name
All units are able to run on 5V which made it easy to layout the schematic because only one 5V/1A voltage regulator had to bu used.
To watch a high resolution version (4.2MB!) of the wiring scheme, please click here!
a) The lines for ISP (MOSI, MISO, SCK, RESET and GND) have not been drawn but the location to the respective ports is mentioned in the table sited in the right top corner. Reset rquires 10kOhms to +5V and a 0.1uF cap to GND.
b) Certain clones of the MCP4725 DAC module will produce conflicts with the I²C/TWI-address of the Si5351 LO module. Original “Sparkfun” boards come with I²C/TWI-address 0x60, 0x61 or 0x62 (depending on literature/web resource you get this information from).
This address is set by the manufacturer AD inside the hardware on customer’s demand. On the other hand the Chinese made modules I am using have basic address 0xC0 which is the address of the Si5351 also. Thus this leads to conflicts on the I2C/TWI-Bus. One solution is to close a solder bridge to +VDD on the very tiny DAC-board which will set address to 0xC2.
c) For the 4(!) user switches (not 3 like in the photo above!) the pull-up resistor on PORT PC0 is set on. There are is a resistor (in the range between 560 Ohms and 2.2 kOhms) with each switch, that pulls voltage to GND when the respective key is pressed. This leads to a voltage drop at the analog input that will be detected by the ADC channel.
This voltage drop depends on the pull-up resistor and on some other factors so it must be determined for every controller setup individually. To solve this, in the respective functionthat returns the numeric value for the key pressed there is a small commented code that you have to de-comment temporarily:
Restart the software, press every key, put the indicated key value into the code (line 4) and re-comment the orange lines when fnished. Next re-upload the software to the controller.
d) Source code in C is available on my Github repository. Please note that even if an Arduino Pro Mini MCU board is used, the code is not designed for the Arduino “world”. It does not use functions of the Arduino environment and may not function with the Arduino bootloader.
To compile the C source and generate the HEX-File you need the GNU C Compiler either for Windows or Linux.
A compact SSB transmitter/receiver will be presented. This unit covers 5 bands within the amateur radio spectrum (3.5, 7, 14, 21 and 28 MHz). Receiver is a single conversion unit with an interfrequency of 9 MHz. Transmitter uses 5 stages and has got a power level of 10 watts PEP output.
Frequency generation is done by integrated ready made modules like an AD9850 as VFO, and an Si5351 as LO. Microcontroller is an Arduino Pro mini AtMega328 driving a colored TFT LCD with ST7735 chipset.
The whole device has been constructed in SMD but can also be setup by using “thru hole” techniques or mixed installations.
The unit is built into into a mounting frame of aluminum sheets of standardized width. Size of the whole radio is 17 x 12 x 5 centimeters. It is, to a certain degree, the “Little Brother” of the “Midi6“-Transceiver that had been designed mainly for experimental purposes.
Multiband QRP transceiver projects are a challenging undertaking for the radioamateur. The even more challenging matter is to build it as neat as possible.
The “Midi6” transceiver has been an interesting step which made me learn a lot of things. But it is a much too bulky for my needs (producing compact and lightweight portable gear for traveling, hiking etc. ) On the other hand I found that I don’t really need 160m installed in the radio (due to antenna problems here at my site) which defined the next multibander having a “classical” (i. e. 70s) layout with 80, 40, 20, 15 and 10 meters.
An important point was to use ready made modules or breakout boards for the major digital and analog circuits:
First I thought about using the Si5351 as VFO and LO because it contains 3 oscillators on one chip. But I gave that idea away very fast because there were to many spurious signals and the thus the receiver had to many “birdies” which I don’t accept. Having had some of the Chinese made AD9850 boards still here on the shelf I gave that one a try and was finally relatively happy with receiver performance.
The microntroller and its application also has been a challenge because for a multiband transceiver an Arduino Pro Mini might be a little bit weak because the number of ports is very limited. But it finally worked out when planning is carefully done and optimizing is brought to its limits. The port usage is as follows:
ISP leads are used for controlling the DDS and for uploading the software to the controller. This is done because the inputs of the DDS are high Z inputs that do not affect the ISP data transfer. On the other hand the programmer goes to high Z if there is no data to be sent to the controller. Thus testing the radio is possible when programming leads are connected.
LCD is an ST7735 TFT colored display because I found the OLEDs with 1306 and 1106 drivers to noisy on the higher bands where band noise is weak and therefore digital noise produced in the radio comes more into the foreground. And, above all, a colored display makes much more impression than an ordinary b/w one. 😉
Mechanical construction and transceiver units
For this radio I ordered aluminum strips holding a width of 5 centimeters via ebay. Thickness is 1.5 mm. From this material a very rugged frame has been constructed that gives the whole rig a very good mechanical stability.
Major units in this construction
The rig is very much unitized, each functional of a module section is soldered to a very small piece of veroboard that has been cut out from a larger piece of material. It is fixed to the aluminum basis by using inserted nuts with M2 screw thread. The main advantage is: If one unit fails it is easy to reconstruct it and put it to the place the predecessor has been mounted and second grounding is excellent because the small single units don’t require long grounding leads because the boards are very small in size and the 4 corners all have ground potential. Particularly for the transmitter I can say that I had never any unwanted oscillations.
The transmitter is 100% stable on all the 5 bands, which was not the way with the first “Gimme 5”-Transceiver that had severe layout problems in the transmitter having the initial BPFs very close to the final rf power stage. But in the end you should be knowing more than in the beginning pf a project. So is true here. 😉
The picture shows a close-up of the receiver section that consists of 5 single units (from the left)
Dual-gate MOSFET preamplifier (in the picture veiled by shielded cables) and rx mixer (SL6440)
interfrequency amplifier (MC1350) and product detector (dual gate MOSFET)
audio preamp (BC547) and main amp (3 transistors, the 2 finals in push-pull circuit)
AGC with OP (LM358) and bipolar transistors as voltage regulators.
The same technique has been used for the transmitter:
Starting from the left you notice an SSM2166 microphone compressor ic by Analog Device which also is the main microphone amplifier. Next is an AN612 mixer as DSB generator, followed by an NE612 serving as transmit mixer.
The second board from the right is a 3 stage unit to bring the transmit signal to a power level of about 150mW (Dual gate MOSFET, 2N2222 and 2SC2314 as active semiconductors in this order). On the right a push-pull stage equipped with 2 2SC2078 and relatively high emitter degeneration (2 Ohms for each transistor) brings the power up to 500mW.
Transmitter gain can be controlled with an MCP4725 DAC that is set for each band individually and helps much to compensate gain increase on the lower bands. This DAC is also connected to the microcontroller’s I²C-bus and data for each band is saved in EEPROM and is being recalled if a certain band is switched.
Tha main amp is centered on the center side of the mainframe:
On the left side of the tx pa unit there are 2 power transistors (2SC1969 by eleflow) mounted to a small strip of 3mm thick aluminum that is connected to another much thicker block of Al. Here a large heatsink can be mounted when the device is under test or finally fixed into the cabinet when using the aluminum cabinet as heatsink. Connected to the aluminum block there is the temperature sensor (KTY 81-110) that allows permanent check of the transistors temperature and that will lead to a warning on the LCD when excess temperature is detected.
The output transformer can be found under the two PA transistors and therefore is not visible here. This “stacked” construction saves very much space. PA transistors are connecting to 2.54 mm socket strips which makes the pair of semiconductors removable and allows access to the power transformer underneath.
On the right of the PA section there are the low pass filters for each band switched by a single relay.
Band filters are shared for transmitter and receiver and are switched to the respective branch by using relays. Left of the BPF unit there is a logical unit (HCF4028 BCD encoder and an ULN 2003 relay driver integrated circuit). This allows switching 5 relays by just using 3 binary coded controller output ports.
Software is written in C for AVR controllers using the GNU C compiler under Linux. The code will be discussed in the respective article that is going to follow this introduction.
I strongly recommend to stay tuned for the next articles covering this transceiver and giving details for each unit! 😉
This article describes the “Cigarette Pack” SSB QRP transceiver” for 14MHz that I first had mentioned some months before. Recently, when taking it from the shelf, the transceiver dropped to the floor and was severely damaged. This lead to serious defects in the front panel area, the main frame, the cabinet and so on. The interior parts were, luckily, not affected by the crash. So, I had to revise the whole radio, make a new front panel and cabinet, ply the frame straightly (as far as possible) and so on. This is the full description of the rig now to complete the files here. The good news: The radio is fine again and fully operational! And the even better news: I still have not started smoking!
During reconstruction the transceiver has been extended for about 5 mm so that overall length now is 100mm (3.9 inch). This was done because I intended to build in a loudspeaker. The other dimensions remain unchanged: Width is 52mm (2 inch.), height is 30mm (1.2inch). OK it is slightly longer now than a standard pack of cancer sticks, but who cares? Total cabinet volume is 150cm³.
The transceiver is based on the “Micro 23” rig, that I have described here. Some simplifications of that already simplified radio have been made. Here is the full schematic of this even smaller transceiver:
Very simple rigs like this one always use parts of the circuit for receive and transmit purpose. Here these parts are the 2 mixers (NE602), the SSB-filter and the interfrequency amplifier.
Signal flow schematic
The NE602 has a balanced output. With mixer 1 only one of them is used. If higher gain is desired, a broadband (or even better a tuned LC circuit) transformer could be used to connect pin 4 and 5 (the mixer outputs) in push-pull mode. I did not do that to save the transformer.
The signal flow can be derived from the design:
Receive mode signal flow
From the antenna relay (not drawn) the rf energy runs through a 2 pole LC filter for 14 MHz. The coils are wound small TOKO coil formers, all respective data is given in the schematic. Coupling is loose via a 3.3pF cap.
NExt stage is an rf preamp for 14MHz with a broadband output. The acitve element here is a dual-gate MOSFET.
After having left this stage the 14MHz signal travels through another 470pF capacitor. This one has high resistance for audio frequency and low for rf frequencies due to the equation: XC =1/(2*PI*f*C). The signal is then fed, together with the audio signal from the microphone (when on transmit), into mixer 1 input on pin 1. The 1k resistor prevents the rf energy from flowing into the microphone circuit. The two signals are separated from each other by simply exploiting reactance and resistance in a rather clever way 😉.
When receiving the Si5351A clock chip is programmed in a way that the VFO signal (23 MHz) is present on output CLK0. It is fed into mixer 1 via a small cap to prevent overloading of the mixer. The Si5351A breakout board delivers about 3 Vpp. clock signal, so this must be reduced to about 200mVpp. A 5.6pF capacitor is OK here.
The resulting signal is sent to the SSB filter (a 9MXF24D) that is terminated with 1kOhm and 20pF in parallel. The wanted SSB signal is present at the output of the filter.
Next stage is the interfrequency amplifier, equipped with a dual-gate-MOSFET semiconductor. This one is connected to the AGC chain, on receive a variable voltage is applied to gate 2 (range 0 to 6 V), on transmit the AGC is fully powered to ensure maximum gain.
Next is mixer 2 which is the product detector when receiving. The signal (9MHz +/- sideband shift) is applied to pin 6. Due to the fact that this mixer also serves as transmit mixer, the two signals are taken from the two mixer outputs on pin 4 (serving as audio output) and pin 5 (serving as rf output for transmitting).
Two audio amplifiers (preamplifier and power stage) give a sufficient signal level for an 8 ohm loudspeaker or a headphone.
For the loudspeaker I tried out the tiny ones for smartphones with good success. Only the volume was a little bit low. Then I found another speaker in an old toy of my daughter that turned out to be very much OK for this transceiver. Its diameter is about 3 cm (1.2 inch) and just fits in the housing.
Transmit signal flow
The microphone in this radio is an electret one. The advantage is that these microphones have an internal preamplifier equipped with a field-effect-transistor. The output voltage is fairly high, about 1Vpp. when normally speaking into it. Therefore an audio preamp is obsolete. The microphone signal is directly fed into pin 1 of the first mixer. On transmit the Si5351 signal generator is switched that the 9MHz (+/- sideband shift) signal is fed into pin 6. The SSB filter eliminates the unwanted sideband, the interfrequency amplifier lifts the SSB signal to an appropriate level. The TX mixer is fed with the 23MHz signal resulting in a 14 and 37 MHz signal. The TX band pass filter cleans the signal from the unwanted 37MHz component resulting from the mixer process.
RF power amplifier
The power amplifier is a 3 stage circuit. Stage 1 (preamplifier) brings the signal to about 10 mW. This is coupled into the driver stage via a cap of 0.1uF without any further impedance matching.
The subsequent driver stage shifts the signal level to about 200mW. Linear amplification is ensured her (as well as in the previous stage) by negative feedback in the collector circuit and emitter degeneration with a non-bypassed resistor to GND. An output transformer (winding rate 4:1, impedance rate thus 16:1) lowers the impedance of some 100 ohms to a few 10 ohms present on the input of the final amplifier stage.
The final amplifier brings up a signal level of 3 to 4 Watts PEP. This stage is in AB mode, the appropriate bias is achieved by the 1k resistor going to +12V TX and the current to GND via the silicon diode. This diode must be thermally connectod to the final transistor to stabilize the bias.When the transistor heats up, the silicon diode increases the current through it thus decreasing bias to the transistor.
The 68 ohm resistors serves 2 purposes: First it prevents the input signal from being shorted by the bypass caps in the bias circuit and it stabilizes the rf behavior of the stage by limiting the gain because certain amounts of the input power are led to GND. This prevents self-oscillation.
DC ad the collector is fed through a radio frequency choke to hinder rf from flowing into the DC line. Radio frequency is directly fed into the low-pass-filter. The output impedance of this stage is roughly 50 Ohms, so the filter can be a 50 ohm circuit with a cutoff frequency slightly above 14MHz.
The VFO section
The Si5351A clock chip used here has three frequency outputs that can be set individually. Only CLK0 and CLK1 are used in this radio. The Si5351A chip is programmed by software in the following manner:
Receive: CLK0 is the VFO, CLK1 is the BFO.
Transmit: CLK0 is the BFO, CLK1 is the VFO.
The microcontroller reads the tx/rx status and switches the frequencies respectively.
The radio is a full SMD design on a 0.1″ pitch double sided Veroboard:
The control panel on the left with tuning knob and volume set. The 64×32 pixel OLED between these controls. Following the microcontroller behind the fron panel (here covered). The controller is an ATmega168 on an Arduino Pro mini board.
The isolated board left of the SSB is the AGC section. The receiver and transmitter shared parts follow, the TX band pass filter is in the foreground. The power transmitter is on the right behind the shield. The shield is necessary to avoid unwanted oscillations when rf is coming back from the power transmitter to the band pass filter prior to the tx section.
On the right there is the SMA socket for connecting the antenna plus a 3 pin header for connecting a headphone. When there is no headphone in use a jumper connects the internal speaker to the speaker line. VDD is applied via a standard DC connector.
The underside of the board has only some SMD components and the wiring on it:
“On the air”
My longest distance achieved with this transceiver (after rebuilding it) has been R2DLS near Moscow who gave me a “59”-report. The antenna in use is, as always, a Deltaloop.
The challenge started some weeks ago, when John, ZL2TCA, commented to this blog
you next challange is to build a rig into a cigerette packet size case.
My problem: I don’t smoke, have never smoked and probably never will. 😉 But I have a new transceiver for 20 meters, that might come close to the dimensions of a pack of “cancer sticks”.
The transceiver is nearly the same circuit as applied with the “Micro 20-III” but uses a single ended final amplifier instead of a push-pull circuit. I hope to find time the next days to publish an article on this rig featuring full description of the radio. Currently I’m in the IOTA contest and working stations from all over Europe.