Monday, December 28, 2020

Scratch built uSDX from VK2BLQ

I took the easy path building the uSDX transceiver by ordering a board to build on but master home brewer, Stephen, VK2BLQ took the harder road and scratch built his. It is a thing of beauty (click to enlarge):

 He has sent a report of his experience so far.

"The progress so far with the scratch built uSDX as most of the parts were in the parts box or already existing.

The computer doesn't have Paint, sorry no labels on the PCB but I think that you can see the components.

The chassis and front panel were for a project in the works and merely redirected to the uSDX so the pots are redundant unfortunately the large LCD has no back light.

You can see the micro-controller board  that has little on it, just the chip, 20 MHz crystal and resistors.

The demodulator section uses the 74HC4053 created by Tasic YU1LM (DR3 series) and Miguel PY2OHH (#195). Since then, PY2OHH has incorporated this into his USDX Nano version.

It proves the concept, but has quite high conversion loss so would need a RF amplifier, the original FST3253 is much better and I wasn't going to waste the only one I had. 

It  seemed to me that the Class E output is used because of the hack of the original QCX and the higher efficiency so 

perhaps even Class C would still work providing there is  a tuned amplifier, linear amplifiers would work too, but defeats the purpose of the design. 

I don't comprehend  the magick that creates SSB from the 328P and the phase shifted CLK 2 of the SI5351, but it looks to be some sort of gate modulation of the three BS170 FETs. That extra FET I don't think actually worked properly anyway. You might see that there are only two FETs, as I blew up  the other three, and the filter is a simple PI.  Avoided is the tuned Class E  and band pass filter as there wasn't enough room.

Building the demodulator board was little more than a direct conversion receiver and tested OK with a couple of signal generators and a CRO.

Your eyes are better than mine so I didn't modify the SI5351 board and just plugged it in, maybe for Morse it will be fast enough.

The first sketch used was 1.02 ver e loaded into a normal older Arduino Uno displayed signs of life on the 20x4 lcd. This meant the LCD would work, thereupon it was transferred to the receiver board. There were are couple of problems due to "Murphy's whiskers" and bad solder joints but did receive in a fashion. Fixing the faults and loading ver m was a vast improvement. The added functionality with the morse keyer and demod during sending and receiving is a real plus.

It may be a factor of the 74HC4053 and the Si5351 but there are a bunch of birdies ( is that a flock ) throughout 40 m, the FST3253 could be better. Then again, the UBITX V6 is no better. 

The next version needs a bit of a rethink into layout. I would be interested if any really smart people can pare down the sketch to make it suitable for use by a 16 MHz Arduino Uno board, perhaps not SSB or elaborate display. The whole project is super clever and could be good for the current generation of homebrewers.

As you know, the project isn't over until the cabinetry is done, so it gets a wooden box, which got a bit warped before the glue dried and is out by a millimetre or two which is a pest. The spray on stain took a while to dry and dribbled a little, next time use a different stain.   

Any way, that is my adventure  with the uSDX,


Great stuff Stephen, I am in awe of your home brewing skills and persistence.

Saturday, December 26, 2020

Receiving High Altitude Balloon telemetry

Facebook might be useful for something. I noticed a post from Mark Jessop, VK5QI, to say that there was a High Altitude Balloon (HAB) heading towards Melbourne from near Adelaide so I thought I'd have a go at receiving the telemetry on 70cm with my vertical. The signal is on 434.199 Upper Side Band, 25mW.

The decode software was downloaded via here and I was happy to get a few decodes.

If you upload your position will show you on the map.

The balloon is about 230km from me and the signal is very weak but I do get decodes from time to time. Great stuff!

There's a video about this fascinating work here:

Sunday, December 13, 2020

Visiting Drew Diamond, VK3XU, prolific radio home brew author

I have long admired the writing of Drew Diamond, VK3XU, and today I had the pleasure of meeting him and touring his excellent shack.

Drew has contributed many home construction articles to magazines over many decades but is probably most famous for his "Radio projects for the amateur" book series.

The project descriptions are accurate and thorough. I complimented Drew on the quality of his line drawing that is used to show construction. I asked him if he had been to art school and he seemed touched but said that, no, he'd looked to other technical drawings that he admired and had emulated the style. Drew also said that careful drawings give constructors confidence that the project has really been built as described and will work.

Drew is active daily on 160m and other ham bands and has a good set of antennas with low noise.

Note the small mic insert being used above. The shack is well stocked and shows a lot of home brew activity.

I took out the uSDX board to show and we discussed the descent of radio into the realm of computers.

My thanks to Nigel, VK3DZ, for setting this up. It was great to hear that Drew is a reader of this blog.

Saturday, December 12, 2020

ZachTek WSPR transmitter

It seems like overkill to transmit QRPp WSPR on a rig capable of 100W so recently I purchased a WSPR Transmitter from Zachtek

I went for the luxury option and got the Desktop model which is nicely boxed up and comes with a GPS antenna on a long cable.

The GPS antenna is sitting up at a window with a pretty poor view of the sky but it does get a lock as shown here in the Windows control software.

Today, I'm transmitting 200mW on 40m and doing fairly well on an end-fed antenna. These images are from the macOS version of WSPR Watch which is now native for Apple Silicon.

200mW into about 20m of coax and then an end fed - it's doing fairly well. I'm very happy with the ZachTek transmitter and recommend it.

Saturday, December 05, 2020

uSDX QRP transceiver built

The uSDX is a fascinating new multi-mode transceiver design by Guido Ten Dolle PE1NNZ that uses an Atmel ATMega328P processor (normally seen in an Arduino) to do the digital signal processing for receive and transmit. The design comes out of an amazing hack of the QRP-Labs QCX CW transceiver.

The transmitter is a very efficient class E design and PWM modulation combined with amplitude modulation gives a passable single sideband signal. The circuit can cover many HF bands and there's a place to plug the appropriate low pass filter. (In the photo above I'm just receiving and have simply jumped the LPF).

While you can purchase a QCX and modify that, I've purchased a specially designed board.

There is a Wiki site about the project here. There is an active discussion group about the project on here. Within the files area is a downloadable Bill Of Materials (BOM) with the parts to build it. I was able to upload that CSV file to DigiKey and very quickly all the parts turned up. The only extra part needed was an Si5351 carrier board which I already had in the junk box.

I ordered the WB2CBA designed PCB from "too_brute" in the Netherlands via Ebay but it took ages to make it to Australia so you might check the discussion group for a source closer to your location. My board is the V1.02 revision.

Construction is fairly straightforward although you need to read about the earlier revisions of the board. There is one surface mount chip to solder to the main board. The most challenging part for me was the reworking of the Si5351 board. You have to remove some surface mount components and then add back two resisters and two zero ohm resistors as links. I used a hot air gun and needle nosed pliers to remove the components.

The software is here and can be built with the Arduino IDE.

Initially, I took the easy way out and programmed the CPU by writing the hex file to the chip which was plugged in to an Arduino UNO. I used a USBASP and the avrdude command line tool on macOS.

avrdude -c usbasp -p m328p -u -U R1.02j.hex

As you can see I've used R1.02j. One minor note is that my tuning knob goes backwards so I see there is a small change that can be made in the software to reverse it.

Now, building from the Arduino source, I commented out the QCX define and have reversed the ROT pins to read:

#define ROT_A   7         //PD6    (pin 12)
#define ROT_B   6         //PD7    (pin 13)

My uSDX didn't work on first power up... I had the power protection diode in backwards. Easy to diagnose and fix. Note that you need to adjust the display contrast otherwise you'll see nothing.

What an amazing age we live in. Guido has achieved amazing functionality in a low power CPU (slightly overclocked to 20MHz). Here's his block diagram of the hardware, and most of all, software taken from here.

(Click diagram to enlarge by the way).

Changes needed to make it work

My uSDX was working but turned out not to be on the right frequency. I'm using the Adafruit Si5351 board which is said to have a 25Mhz crystal on it, rather than the 27MHz one in the source code. Changing #define F_XTAL 25004000 still had me quite a lot lower than expected.

I measured the frequency on clock 0 of the Si5351 and instead of 7.xMHz it was 6.58Mhz.

I've now set F_XTAL to 24000000 and my frequency is close to correct. Here it is receiving a station on 40m with my terrible interference in the background.

Now I've added a rather rough low pass filter for 40m.

Transmit works but sounds terrible:

Looking around YouTube I found another user's off air recording. It's better than mine but still not great.

Update: Later software, where is "m"?

I noticed that people were talking about defines like SWAP_ROTARY that I don't see in the latest release software. The trick is to switch to the "feature-rx-improved" branch.

Update: Reset settings after changing defines in code

If all else fails, read the documentation. Even though I was changing the F_XTAL define in the source code it wasn't taking effect as I expected. It turns out that the Si5351 crystal frequency is stored in flash memory and can be displayed and adjusted in menu 8.1 where it's called "Ref freq".

At some point I had inadvertently set the frequency to 24Mhz and that value had been saved in non-volatile memory. The trick to reset stored settings is to push the rotary encoder in while powering on. The display tells you it is resetting all settings.

Update: Incorrect low pass filter!

I was probing around on the transmit side, where I get almost no power out, and have now realised that I've put the wrong sort of low pass filter on the little plug board. What is needed is a "serial resonance low pass filter". Here's a copy from that site:

Update: Decent power out now

After all the above, I was still only getting a few mW of power out. I removed a few of the BS170 FETs used in the class E output, thinking that I might have destroyed them, but they tested OK. I did break the leads on one of the FETs though.

I found this thread on the group about modifications to the WB2CBA V1.02 circuit to make it work with software revision m. Essentially:
  • Remove Q5 and short pins with solder blob.
  • Remove R28
  • Set menu item 8.2 to 20 and 8.3 to 205
This done and CW at the antenna looks like this with 2 FETS rather than 3:

34V peak to peak into 50 ohms, about 3W. Here's how me saying hello in sideband looks:

Here's how the audio is sounding:

Next step, as pointed out by John, VK2ASU, is to have a contact. I've been calling CQ a bit and can see and hear myself on a nearby SDR station. My signal is the one on 7.10. It looks a little wide but the suppression of the other sideband looks good.

Update: A contact on the Kandos net

The audio in this clip was recorded on the VK3KHZ OpenWebRX located at Croydon, Victoria about 30km away.

I came up on the tail end of the popular Kandos net on 40m and as you'll hear had a good contact with Brenton, VK3CM who gave a very generous report for my 3W into an end fed antenna here. Brenton looks to be about 300km from me so I'm very happy with that.

Here's the uSDX's built-in morse decoder working rather nicely:

Here's a bit more sideband reception on 40m: