Category Archives: Ham Radio

Measuring the Icom IC-705 RF Power vs DC Input Voltage

Introduction

In the summer of 2024 during a Camb-Hams trip to Friedrichshafen, I was drawn into the world of SOTA (summits on the air). A key requirement for SOTA activations is a compact, lightweight and effective station.

When I got started, I was able to use Rob M0VFC‘s Elecraft KX2 portable transceiver. However, from our third SOTA activation of the holiday I was taking my own Icom IC-705. My CW is not great, and so I was activating on SSB mainly on HF (and some FM on VHF/UHF). The IC-705 was a little easier than the internal microphone on the KX2. Rob M0VFC was kind enough to loan me use of his 3S LiPo battery, but I noted that as soon as the voltage dropped a little from full (4.2V * 3S = 12.6V), the IC-705 power was reduced considerably. This was also apparent on the KX2, but isn’t usually an issue because the SOTA pro’s use CW. Anyway, a challenge to know what I needed to do was born… I needed to understand how the IC-705’s RF output power changed as a function to the DC input voltage. I set up a simple test…

The radio specification states 13.8V ± 15%, which gives us an absolute voltage range of 11.73V (13.8V-15%) to 15.87V (13.8V+15%).

Setup & Method

The test setup was simple. My IC-705 connected to a high quality lab power-supply (Rigol DP821), accurate voltage and current readings for DC input power (two Keysight 34401A multi-meters) and a way to measure RF output power (Keysight N9010B spectrum analyser & 30dB attenuator).

The input voltage and current could be measured and adjusted in real time and the input power would be calculated for each test. The RF output power was measured at the frequency of interest.

During all testing the external battery was removed from the radio so that the battery charging current did not confuse measurement. To generate RF, the radio was set into RTTY mode at 100% power (thus creating a pure tone at full power). Each test was automated, and tested quickly to avoid heating issues in the PA.

Initial Results

I measured things at both ends of HF (160m and 10m), and on 6m, 2m and 70cm. The results were consistent with the drop of output power I had noted. More importantly for the initial results, I could see that the behaviour was consistent across all bands, so I could concentrate testing on a single band, and take more detailed steps without creating extra work.

In every test, the power above 13V was very consistent, likely due to ALC on the PA. The efficiency slowly dropped as the input voltage increased. Below 13V, the power was observed to fall.

Further Testing

After the initial testing, I started digging a bit more into what happens between 11 and 13 Volts input. Working downwards from 13V there is a clear linear drop-off until around 11.8V where the software senses the falling voltage and drops to the 5W mode. At 11.6V the radio alternates between the 5W battery limit and the higher power (about 7.5W). This 11.73V threshold that the specification mentions (13.8V-15%).

For useful purposes, we need to keep the DC IN voltage above 11.8V (and below the maximum of 15.87V).

Battery Choices

Assuming we want to keep with a modern battery technology (so, excluding NiCd and NiMH), we have two obvious choices of lithium-ion battery:

  • Lithium Polymer (LiPo) battery
  • Lithium Iron Phosphate (LiFePO4) battery

For each battery pack, there are different combinations of series (S) and parallel (P) configurations, detailed using this “S” and “P” notation. For example, you may see a “3S4P”, referring to three series sets of four parallel batteries. Parallel-ing the batteries increases current handling and overall power, and the voltage is unchanged. Series-ing the batteries increases the voltage and overall power, but the current is unchanged.

Each battery technology has a different nominal voltage (the assumed cell voltage), charged voltage (the maximum cell voltage) and the discharge voltage (the minimum cell voltage). A battery will often have a BMS (battery management system) to take care of protecting the battery from over-charging, over-discharging, balancing (keeping the voltage across series cells equal), etc., but these are out of scope for this page.

LiPo

Typical Lithium Polymer (LiPo) cells have a nominal voltage of 3.7V. Fully charged, each cell is 4.2V. Fully discharged, each cell is 3.2V.

See more on LiPo cells on Wikipedia.

LiFePO4

Typical Lithium Iron Phosphate (LFP, or more commonly LiFePO4) batteries have a nominal voltage of 3.2V. Fully charged, each cell is 3.65V. Fully discharged, each cell is 2.5V.

They have a higher cycle rating than standard LiPo batteries, meaning they can be charged and discharged more many more (>60% more) times before they start to fail.

See more on LiFePO4 cells on Wikipedia.

Why not use X?

I have tried to limit my choice to batteries that are widely known and in production. I have seen AliExpress selling Sodium-Ion batteries and other similarly novel battery technologies, but without easy access and known reliability, I didn’t include them.

See more experimental battery types on Wikipedia.

Battery Comparison

From the IC-705 testing and the specification as well our two battery choices, we can see what options are available.

Extrapolating from the two battery types above, we can see that configurations in the right kind of area are as follows:

Unfortunately, there is no ideal solution with these battery technologies. It is kind of disappointing that Icom did not consider this when designing the radio – a small design tweak to take 17V would have allowed LiPo 4S battery packs to be used. Instead, the best option is LiFePO4 4S. However, as the battery discharges, the lower voltage becomes an issue.

From the tables above it is possible to see that the only real options are LiPo 3S and LiFePO4 4S since the other combinations have the ability to supply excessive voltage (>15.87V) to the radio. Of these two, the LiFePO4 4S has a higher maximum voltage (14.6V vs LiPo 3S at 12.6V). For this reason, the LiFePO4 4S is my preferred choice. LiFePO4 has the added advantage of a higher cycle count and increased safety too, so those are further marks on the LiFePO4 scorecard.

The voltage decision is made: LiFePO4 4S. Now for the capacity of the battery…

Battery Capacity

The 4S battery fixes the pack voltage to a nominal 12.8V. For the capacity, it’s just a case of estimating how much current the radio will draw and then using this to infer the battery capacity you require in “Amp-Hours”.

The IC-705 draws around 220mA (0.22A) in receive from the external power supply at 12.8V (our nominal LiFePO4 4S voltage). If we would like the radio to run on receive for an evening, say 6 hours, we’d need a battery to run 0.22A * 6h = 1.32Ah.

In reality a SOTA activation will be around 50% transmit (at ~2.1A) and 50% receive (at ~0.22A). However, the activation will probably be quite short, perhaps 30 minutes, perhaps 2 hours. By working out the average current used during an hour, an approximate runtime can be calculated for any battery or a battery capacity specified for a given desired operating period.

The final, and perhaps most important consideration for battery capacity is weight! The typical way to expand the current capability of the battery is to parallelise cells; which in effect means doubling the number of them – in our case, doubling or 4-series-connected cells, thus creating two interconnected strings of 4 cells, totalling 8 cells. This becomes a 4S2P battery pack as we discussed earlier. The capacity is doubled. But, so is the weight!

So, what did I buy?

In the end I bought a LiFePO4 4S1P battery made from 3Ah cells. This gives me a 12.8V nominal, 3Ah battery which will run the IC-705 on receive for around 13 hours, or a mix of SSB TX and receive for around 4 hours.

Feeling Brave? Try a LiPo 4S?

Shortly after writing this, I was on a discussion online and someone told me that they had run their IC-705 on a 4S LiPo pack for years and the radio had been fine. They mentioned that it stops charging the battery when the input voltage was above 16V (already out of spec) but that they had happily used 16.8V inputs (actually in excess of 17V) with no damage to the radio.

In a moment of madness, I tried 17V input and noted that (a) the IC-705 does stop charging the internal battery, (b) the HF noise floor was quieter (likely due to the battery charger powering off) and (c) that the radio didn’t explode and still delivered 10W. The radio’s voltage readout caps at 16V on the meter display and the voltage quick menu shows “Hi Voltage” instead of a number. See the two images below showing the difference at 16.9V input (from my 4S LiPo pack).

Maybe not the best thing to do long term, but it could help get you that that much needed QSO on a wet and windy SOTA…

Marconi 2955 Firmware Upgrade

At Friedrichshafen Ham Radio flea-market 2022, I bought an old tired Marconi Instruments Radio Communications Test Set 2955 which I have spent a bit of time restoring. I now have it passing all of it self test, and the functionality seems good.

During the time I spent digging through the service manuals (link here) for the unit and my time exploring the Marconi Instruments GroupsIO, I noticed there was an updated firmware for the unit. Mine shipped with the very earliest V10 firmware. I saw ROM files in the forum Files section for V16. There are some upgrades from V10 to V16, though, rumour has it that anything above V13 isn’t much of an upgrade unless you’re using some of the cellular testing accessories. The V16 firmware files can be found here inside the Marconi Instruments GroupsIO Files section (along with many other useful things). Definitely a very useful group with knowledgeable people inside!

Below, we see the original version 10 firmware, dated 1986.

The EPROMs which need upgrading are IC9, IC10, IC11 & IC12 on the processor board. These are three of 27C128 128kbit (16kByte) EPROMs [IC9-IC11] and one of 27C64 64kbit (8kByte) EPROM [IC12]. I replaced all mine with the larger 128kbit 27C128 parts, copying the 27C64 binary image into both the lower (offset 0x0000) and upper (offset 0x2000) halves of the EPROM, so irrespective of the state of pin A13, the data output would be the same.

Rather than UV erase the original EPROMs in the machine, I purchased additional ones online (I got mine from AliExpress, but eBay, etc., all sell them). Mine ended up being brand new, never used, but previous ones I’ve bought were pulled from old equipment and needed erasing beforehand.

Using an EPROM programmer, I programmed the four 16kB ROMs onto the blank chips. This took around 10 seconds each using my TL866ii+ programmer.

To change the EPROMs in the Marconi 2955, you need to remove the top cover to be greeted with the insides of the 2955. The CPU board (AB4) we need is inside the locked metal cover. These are rotate-clips, not screws, so go easy on them!

Once you’re inside the metal screening box, you’ll see some boards stacked into the main motherboard along the bottom. We need CPU board AB4, which is the 3rd board up from the bottom of the picture (closest the screen). Use the ‘ears’ on the side to help lever the board from the motherboard socket below and slide the board out.

The CPU board AB4 is shown below. You can see the manufacturer stickers on 3 of the 4 larger EPROMs and the smaller flash EEPROM. From left to right, the 4 stickered devices are IC13, IC12, IC11, IC10 and the final, rightmost is IC9 with missing sticker (it had fallen off inside the machine).

IC13 is a flash chip (Xicor X2816AP) with your unit’s calibration data stored within – don’t overwrite this one any online! You can of course read/back up your calibration data if needed. I decided to copy my flash EEPROM IC13 into a new part, so that I could keep all of my older V10 PROMS together. I was worried that if something went wrong and the V16 firmware had ‘updated’ the formatting of the data in IC13, I may not be able to go back. I used a CSI CAT28C16AP that I had in the shack as I wasn’t originally intending to touch IC13. If you decide to replace IC13 also, I would suggest getting the exact part used in case it matters. These early flash chips are a bit fussy with timings, etc., and so interoperability isn’t guaranteed. That said, mine has been fine.

The 5 devices were replaced. I used a label printer to sticker each ROM as I wrote and verified its contents. The original chips were placed inside an antistatic IC tube, and wrapped in ESD-safe bubble-wrap , which I tucked inside the machine between the screened box and the power supply cabling on the motherboard. They sit nicely there, can’t move, and will be available should anyone wish to revert the machine.

After reassembling the unit, I fired the test-set up, and to my relief it booted straight up!

I was able to confirm the firmware upgrade had worked – below we see the software version is now version 16 (dated 1992).

Pressing the self-test button confirmed the basically functional. Excellent!

Symmetricom GPSDO Enclosure

While tinkering with a homebrew GPSDO project, I spent a bit of time searching the depths of the internet for information and parts for my project. I found a PCB for a Symmetricom GPSDO (specifically the Symmetricom 089-03861-02 as per the PCB silkscreen in my case, although the firmware reports itself as 090-03861-03). The board was cheap because the OCXO was missing – I suspect it had aged beyond where the error voltage range was specified, making it unusable. But the board was around £15 GBP delivered from AliExpress, so I took a chance on it based on the fact it had a Furuno GT-8031F GPS receiver which is a GPS module specifically designed for timing applications which “delivers highly accurate GPS timing”. The module also had a CPU (Renesas F2317VTE25V-H8S/2317) with accompanying flash and RAM ICs as well as a Xilinx Spartan-3 FPGA (XC3S200).

Besides the missing OCXO module, my board worked perfectly. I was able to piece most of the information together from the following two resources:

I saw that some people had put their units into Hammond Manufacturing project boxes, and that gave me a few ideas. It would be nice to box the unit up with some ancillary electronics to share the UART (57600 baud, 8N1) over Ethernet TCP/IP. However, my experience of UART to Ethernet modules has always been poor and friends reported similar, so I opted for an FTDI-based USB interface (namely the FT232RL, as the cheapest/easiest part during the chip shortage of 2019-2022). I was tempted to use a Maxim MAX232 device to perform the necessary conversions, but, in the end opted for two NPN transistors – a bit hacky, but much cheaper. I may well come back to the Ethernet option in the future.

The carrier takes 5V at around 2A input on a 2.1mm x 5.5mm DC power socket, a USB-B connector and holds five LEDs: four main LEDs from the GPSDO (which are connected to test-points on the PCB, I can’t find the LED signals on any connector), plus one LED from the FTDI device showing USB activity.

The image below shows where the LED signals are taken from. For reference, the big IC in the centre is the Xilinx Spartan FPGA:

The LED signals are all common anode, fed from +3.3V taken from the board. The LEDs are fed through a resistor, and the individual cathodes connect back to either the CPU or FPGA through another of the wires:

  • RED: +3.3V supply used to power the LED anodes
  • BROWN: Alarm
  • WHITE: Activity
  • YELLOW: Heartbeat (DS2)
  • ORANGE: Error (DS1)

There are two other LED signals (DS3 and DS4) which aren’t connected.

From here, I created a carrier board which had the correct mounting holes for the Symmetricom module, and offered front LEDs to show status, an easy 5V interface and a USB-UART interface to the module control port. The final board looks as below:

With the module fitted, the board looks more like the following. Note, this was an earlier version of the PCB:

The project was designed to fit inside a Hammond Manufacturing 1455N1601BK case which takes a 160mm long by 100mm wide PCB, and the designed PCB fits the case nicely. By default, the Hammond case comes with either aluminum or plastic end plates, but I went to the effort to make PCB front and rear plates to enclose the case. Using PCB meant I was able to use tools I was familiar with to create the end places, and use the same order as the main carrier PCB. The copper on the PCB could be used to create a metal Faraday screen to enclose any electrical switching noise, and the silkscreen could be use to add legends, logos and decals.

I prototyped the designs as below in the PCB package and then used my laser cutter to test them out for fit. A test fit of the front panel is shown below:

The below picture shows the PCB end boards as they arrived and the cardboard cutouts. There are some small tweaks, between the two, but overall the process worked well. One thing to note is that the internal cutouts for the BNC connectors are a little bit tight – in future I need to add an extra 0.5mm or so clearance (in addition to the 0.5mm clearance I left already). However, the connectors pushed in even if a little tightly.

Final assembly went well, and I am very pleased with the results:

Laser engraving metal using zinc spray

While looking for a way to create front panels and detailing on homebrew equipment, I was pointed to a YouTube video by Mark Presling entitled Metal Finishing With Mark – Metal Engraving 101.

In the video, Mark explains how cold galvanizing zinc spray, when ‘excited’ by a laser, burns at a high temperature to permanently mark the surface of the material onto which the zinc was sprayed. Mark suggests that this only works on stainless steel, however, other videos show how it can be used on ceramics, glass and similar substrates to burn or melt the substrate. I’m not exactly sure of the process, but, it certainly does leave a controllable, visible mark on the surface, which is exactly what I was after!

The box above shows markings for the 144 MHz antenna, GPS antenna, and status LEDs for an APRS transmitter I happened to be working on at the time. The effect is to leave a darker surface on the Hammond diecast box, which (at least to my testing) is very hard wearing and does not come off with use of solvents…

Here’s how

Firstly you’ll need to coat the surface to be etched with a liberal spray of zinc cold galvanizing compound. I used MOTIP Zinc Spray because it was the cheapest I could find on eBay and it works just fine – perhaps I got lucky but I’ve seen several videos on YouTube each swearing by a different make of spray, and they all appear to work. The important thing is that it is high in zinc. It’s an epoxy based aerosol, so, spray outside using the appropriate precautions. The spray should be quite thick, I spray on about 4 heavy coats one over the other and then let it ‘dry’ for around 5 minutes, just until the main solvent has evaporated.

While the spray is drying, design your artwork. I’m making a line drawing of the car along with my callsign to put on the box, mainly to see how it comes out – I’m keen to see if the line drawing comes out well or not – so watch this space! My design looks like the following:

Next we get to put the metal into the laser cutter. I use a 60W CO2 laser cutter, with the power set to around 50%. Others have reported success using 10W diode lasers. I found that 50% was about right for my machine. Going slowly helped a lot, I reduced the machine to around 5mm/second. Where possible, vector engrave as the laser power is continuous and more controlled than raster scanning, but for large areas, such as the text, raster scanning works fine. I always reinforce text with a vector engrave around the outer.

You’ll need to focus the machine as you’d normally do in order to cut the surface.

Once focused, frame the metal on the cutter bed. My laser cutter has a spotting laser which really helps with this.

At this point, you’re ready to go! When the paint is hit with the laser, it goes a very burnt/sooty black. The process generates some very nasty fumes, which you are well advised not to breath – this includes metal vapors which are incredibly dangerous.

Once the engraving is done, leave the work in the cutter’s fume extraction for a short while to be sure that the chamber is clear of toxics, and then remove the work. Mine looks like this:

The final stage in the process is to use a paint remover to remove the paint from the metal to reveal the final design. I use cellulose thinners, which works well. Be sure to do this in a well ventilated space, otherwise you end up with a headache (like I have now, as I write this!).

I think you’ll agree that the final result looks very clean and tidy, and has retained all of the detail present in the original design.

This process is quick and easy to do if you have a laser cutter, uses a cheap-ish (around £6) can of zinc spray, and produces good, repeatable results with minimal fuss. It’s very useful for creating front panels and similar.

You may also find that spraying another colour of paint over the top, and then sanding down very lightly will further accentuate the design.

Using CW Skimmer with Hermes Lite 2 SDR (and 10-slice Receive Gateware)

As I was unable to take part in the CQWW CW Contest 2020 due to Coronavirus COVID-19 regulations, I decided to experiment with using the wideband SDR of the Hermes Lite 2 SDR (HL2).

The process appeared to be quite smooth, however upon completion, the CW Skimmer’s Skim Server (SkimSrv) would report that the SDR connection had timed out. This transpired to be the hardware watch dog timer (WDT) timeout inside the FPGA on the Hermes Lite 2 – a precaution to stop the SDR from being stuck in transmit should the connection to it drop:

The solution was two-fold:

  • Update the HL2 gateware to a version allowing the WDT to be adjusted/disabled
  • Update the SkimSrv DLL plugin to a version using the WDT configuration

Getting the Latest HL2 Gateware

The gateware of the HL2 is a bit like what you may consider as firmware. Only, firmware is code that runs on a CPU or microcontroller, and gateware is code that configures the internal connections of an FPGA. This difference is immaterial here, but it is useful to know.

There are many versions of gateware available for the Hermes Lite 2. You are best advised to hunt around Steve Haynal KF7O’s project repositories for the Hermes-Lite2 under the gateware\bitfiles folder and find a version that best suits your needs. It is important to note that some of the gateware files in these folders are compiled with special features and are often not recommended for general use. Here I will cover two versions that I find interesting. The first is the standard gateware that supports both transmit and receive on 4 slices. The second receive only gateware swaps the transmit logic for extra receive logic, resulting in 10 receive-only slices.

One final note, the links I provide are for Hermes-Lite 2.0 build5 and later. If you have an earlier build, then there are different files required which are also present in the variants folders.

Standard 4-slice TX/RX gateware

I started off by finding the latest “testing” version of the HL2 gateware, which can be found in the repositories mentioned above. At the time of writing the original article “testing/20201107_72p5” was the latest version that was recommended for more general use. Since the original publication of this post, this has been rolled into the stable/20201212_72p8 release.

Once you have read the readme and are happy with the notes supplied with the version of the bitfile (the actual compiled file the FPGA is sent to configure itself), then you are ready to go.

Use stable/20201212_72p8/hl2b5up_main/hl2b5up_main.rbf (direct link to download) which supports up to 4 receiver slices, but also includes transmit and is suitable for general use – again – read the notes that are supplied! They are important. Whatever you chose, you may need to rename the “.rbf” file to “hl2b5up_main.rbf” to allow it to be flashed by SparkSDR. Quisk doesn’t seem to care what the file is called.

No transmit 10-slice receive gateware

My actual reason for changing the gateware was to try the 10-slice receive gateware for use with SparkSDR as a grabber for CW Skimmer, as well as all of the other digital modes (RTTY, PSK, WSPR, FT8, JT65, etc.).

For this, stable/20201212_72p8/variants/hl2b5up_cicrx/hl2b5up_cicrx.rbf (direct link to download) which supports 10 receiver slices but does not include transmit. This is meant for multiband skimmers.

Programming the Gateware

To program the gateware there are two options. I opted to use SparkSDR2 by Alan Hopper M0NNB. The process is easy and SparkSDR2 supports Windows and Linux. Run SparkSDR, press the discovery button (the rotating arrow on the left) until your Hermes Lite 2 is discovered, and then right-click and select firmware. From there, navigate from the downloaded and renamed file “hl2b5up_main.rbf” and press program. It should take around a minute.

You are also able to use Quisk by James Ahlstrom N2ADR. From the Config dialogue, select your radio, and then select “Program from RBF file”. The update should not take long.

Once the upload is complete, you should power cycle the Hermes Lite 2 SDR, and then check in your favourite program that the update was successful. I checked that the radio still worked, and I could see that the revision gateware had changed to what I expected within SparkSDR: “Version 72 Patch 5” (now superseded by stable 72p8) and that I did indeed have 4 receivers available. If you used a different gateware version, you should see different results here:

Installing the recompiled HermesIntf.dll

Originally, the HermesIntf.dll file was provided by Vasiliy Gokoyev K3IT on the GitHub page HermesIntf. However, this DLL does not take advantage of the extra WDT options available in the HL2 gateware we just updated. To make such updates, this required the original DLL supplied by Vasiliy K3IT to be recompiled, incorporating changes from Steve KF7O’s gateware.

I was beaten to doing this by Robin Davies G7VKQ, who kindly shared the rebuilt DLL file with me on Twitter (thanks!!). This DLL file can be downloaded here: HermesIntf_G7VKQ.zip. There’s also a version by KV4TT (released Jan 2021) which I would suggest using as it has some further tweaks for handling the watchdog timer. This file is then to be copied into the SkimSrv folder, typically located within “C:\Program Files (x86)\Afreet\SkimSrv\” on a modern 64-bit version of Windows. You will of course need to install SkimSrv by Afreet Software from here. A trial version is available – you’ll need the Skim Server, not the standard CW Skimmer.

Once you’ve copied the DLL into the installation folder, you are ready to fire-up the SkimSrv. SkimSrv has a little icon in the system tray, as shown below. Click on this to open the SkimSrv settings dialogue.

From here, you can use the Skimmer tab to set up the frequencies, sample rates, radios, etc., to use. This is all as you would expect and is pretty straight forward. Above, you can see I am using the 4 receivers available in the gateware version of the HL2 I chose. The image at the top of the page shows operation during CQWW CW 2020, where there were huge numbers of signals present on the bands.

You can connect a telnet program to “localhost” on port “7300” to connect to the Skimmer Server by default. This acts like a DX Cluster with spotting information.

Uploading to PSKReporter

One of the most easy way is use CW Reporter by Philip Gladstone N1DQ. Philip runs PSKReporter, and, offers the CW Reporter application to interface between CW Skimmer Server and PSKReporter. It is easy to set up, working almost out of the box, and translates the DX Cluster style Telnet spots into reports for PSKReporter.info.

One comment to note here is that you should have calibrated your receiver’s frequency before doing this – otherwise, you may be spreading incorrect frequency information.

Finally, it is possible to see, on a map, using appropriate filters, what stations I have heard on CW over the past 24 hours:

Click any image to enlarge.

Thanks to everyone who offered help and suggestions along the way!

Watching Propagation with FT8 Spots

Recently I purchased a Hermes Lite 2 SDR receiver (HL2 for short), and I am very impressed with it. One of the very nice features is that it lets you receive several chunks of spectrum (“slices” in SDR parlance) at once.

I also found an excellent piece of software for the digital-mode enthusiast called SparkSDR. SparkSDR can make use of the multiple slices offered by HL2, and thus allows for an infinite number of digital mode receivers to be operated using the HL2 slices. SparkSDR also offers the ability to transmit these modes, but for the purposes of this article, I am only concerned with FT8 reception.

Since FT8 came about, the use of WSPR for making test transmissions and observing receiving locations has pretty much died. However, with the widespread update of FT8 (and similar modes such as FT4, etc.) these transmissions may instead be used as transmitting beacons – when a station calls ‘CQ’ (makes a general call soliciting someone to reply), the software sending the FT8 call encodes the senders location (as a QRA locator) into the sent message. A typical CQ may look something like this:

CQ M1GEO JO02

Similarly, the system of another person responding to my CQ call will also encode the distant station’s location, resulting in a response which may look something like this:

M1GEO ZL1A RF72

Here “M1GEO” is my callsign, “ZL1A” is a DX (distant) station and “JO02” (and “RF72”) is the first part of the maidenhead locator, covering a 100km square, which looks something like this:

It is possible to use a 6-digit locator, for example JO02HG, which takes the accuracy down to a 10km square (see below). Although there are higher resolution locators than this, they are not often used.

Since we know (at least to within 10km) where a transmitting station is, it becomes possible to plot the stations on a map. You’ve probably seen this done before. Websites like PSKReporter and WSPRnet have been doing this for some time now.

The image above use different coloured markers for different bands:

Marker ColourBand
Blue40m (7074 kHz)
Green30m (10136 kHz)
Yellow20m (14070 kHz)
Brown15m (21074 kHz)

I have been recently enjoying the ability to use the same untuned vertical antenna with the same radio on different bands simultaneously (the HL2 lets you remove any band-pass filtering). This allows you to see, for example, that while 40m was good for working Germany, 30m had good propagation into Australia.

PSKReporter lets you filter by mode, band, and time, so you can see what times a given band is open to a specific location. Excellent for helping to fill those missing DXCC slots you may have.

It was interesting for me to see that much of the more remote stations were received on the lower bands, 40 and 30m, and not 20m as I would have expected:

  • VK7BO at 6:06 UTC on 30m
  • VK3ZH at 6:33 UTC on 30m
  • K6SY at 5:28 UTC on 30m
  • LU1WFU at 1:50 UTC on 40m
  • YE8QR at 14:46 UTC on 40m

Although at the time of writing (August 2020), HF conditions are quite poor, not all of the lack of performance on 20m can be explained due to the band conditions, since 20m is still open to South America and into Asia.

Animating the propagation

After looking at these static images, I wanted to see how things changed with time. Could I, for example, see when the best time to work the west cost of the USA would be? I decided to make a time-lapse animation. The animation runs for approximately 3 days, and includes the following FT8 decodes:

BandDecodes
40m (7074 kHz)72,404
30m (10136 kHz)33,871
20m (14070 kHz)156,636
15m (21074 kHz)3,453

It is clear to see sudden bursts of colour when a band opens, and to watch conditions change throughout the day. The dates here were for a Friday to Monday, so, there’s plenty of weekend activity.

I’m keen to further explore the possibilities of this.

180W PA Kit Construction

This page is about the Chinese RF_PA_250_3_HV_V201 by ZGJ 2018-01-25, version 201, commonly for sale on eBay, AliExpress, etc.

Sellers, you are welcome to link to this page in your listings.

This page is a mix of information from my own investigation as well as information found online (from several sources). It is useful for those purchasing kits for such amplifiers.

Bill of Materials

ReferenceQuantityPart
C1, C2, C8, C11, C19, C20, C21, C22, C24, C25, C261110nF (103)
C3, C9, C10, C13, C15, C16, C18, C468100nF (104)
R29110KΩ
R9, R10, R11, R1245.6Ω
C5, C122680pF Mica capacitor
C471100uF 25V
C7, C1421000uF 16V
L4, L52220uH Color ring inductance 
D91Red 2.54mm LED
D1019.1V Zener diode
(use with 24V power supply)
R301560Ω 3W
(use with 24V power supply) 
R7, R82220Ω 3W Power resistance
 120Ω 3W Power resistance
RV1, RV225KΩ or 10KΩ preset pot
L1113mm NXO100 magnetism ring (2 cores)
T1113×5 NXO magnetism ring
T21Copper pipe 2pcs, 0.75 square mm wire (60cm long), 18mm NXO magnetism rings (14 cores)
Q1, Q32IRFP250
U11LM78L06 or LM78L09
Insulating spacers2 
0.8mm enameled wire1 
0.75mm high temperature cable1 

PCB Dimensions

Schematic

Click image to enlarge. For transformer winding information, see below.

Build Information

Version History

  • V100 – First edition
  • V101 – Second edition: Output transformer cores reduced to 14.
  • V201 – Third edition: Power supply voltage is raised to 24V.

What you will need

  • 13.8V/24V 40A (or higher) power supply. It is better to have the function of current‐limiting protection. 6 square-mm (or more) wires for connecting the power to the amplifier board.
  • A signal source that is capable of outputting a 7 or 14 MHz signal at 10W.
  • A 50Ω dummy load rated for 200W (must be able to withstand continuous dissipation).
  • A heatsink suitable to dissipate the power of Q1 and Q3. (Recommended size: no less than 150x100x60mm).
  • A multi-meter that includes a 10A scale.
  • An oscilloscope capable of at least 20 MHz (or a spectrum analyser).

Before you start soldering

  • Wind the inductor (L1) and transformers (T1 and T2) in accordance with the information further on in this page.
  • Bend the legs on Q1 and Q3 (TO247 package) upwards, see the illustration below. Do not mount it to the top side of the board. Do not shorten the leads.
  • Tap the holes for Q1 and Q3. Screw should be M3 (3mm screw). Clean the heatsink, and remove any metal chips to avoid a short circuit.

Soldering

  • Start with smaller components first, working up towards larger components and finally plugs.
  • SMT parts can be easily soldered with an iron by adding a small amount of solder to one pad, and using tweezers to push the SMT part into the molten solder on the pad. Once cooled, add a small amount of solder to the other pads.
  • L1 and C5/C12 are not fitted at this stage.

Preparation for Powering

  • Check for any solder splashes, and poor or missing solder joints.
  • Check the DC power supply resistance to ground – no short circuits. If you have not fitted L1 yet, test from the other side of L1 pad.
(Note: in the V201 version, there are 14 cores in the output transformer, not 16 as shown here)
  • Check the LM78L06 regulator output resistance to ground – no short circuits.
  • Check the bias-set variable resistors. Rotate them as shown in the following diagram. Be careful, to rotate them to the correct end-stop. If you get this wrong, you will destroy the IRFP250N power MOSFETs. You are aiming for an initial bias voltage of 0V.
  • Mount the input transformer secondary load resistor (10Ω, 3W).
  • Solder in Q1 and Q3 and affix to the heatsink. Flow solder on the PCB trace between the MOSFET and the output transformer. This increases the current capacity of the track. See below.
  • Mount L1 as shown below.

Set bias currents

The aim of this section is to adjust the bias current to 100mA for each of the two transistors. When making adjustments, you must act slowly, and with great care – the current will do nothing for much of the adjustment range and then rise sharply. The transistors must be bolted to a heatsink during adjustment.

  • Double-check that the variable resistors are ‘zeroed’ as described above, such that when power is initially applied, there is no bias voltage present.
  • Connect a current meter in series with the positive power supply cable of the amplifier. Apply power.
  • Adjust the upper MOSFET quiescent (static) current using the upper variable resistor to cause an increase in current of 100mA (0.1A).
  • As before, now adjust the quiescent current of the lower MOSFET to further increase the current another 100mA. (A total increase of 200mA between both transistors.)
  • Solder in choke inductor L1 and mica capacitor C5/C12 if you have not already done so – the bias adjustment is complete.

Signal test

  • Connect a 50Ω dummy load to J2. The load must be capable of handling 200W.
  • Use an oscilloscope on a suitable range (or spectrum analyser with suitable attenuation) to monitor the signal at the load.
  • Connect the power supply and monitor the supply current for a moment. If the current is gradually increasing, the power must be cut immediately and check for suitable thermal connection between the power transistors Q1 and Q3 and the heatsink.
  • With the amplifier powered and no input, check the oscilloscope for signals. If there signals, immediately power off and debug the cause of self oscillation.
  • Input a small signal, gradually increasing the input signal power.
  • Observe the output waveform and the DC input current. In general, 100Vpp output across the output load corresponds to a power output of 25W into 50Ω. A load voltage of 141Vpp is 50W output, 180Vpp load voltage gives an output power of 80W, and 200Vpp at the load is a power output of 100W. Using an efficiency of 55% as an approximation, the expected DC power input can be calculated.
  • Check the temperature of the heatsink. If it is too hot to hold, then you will need to use a fan to cool the amplifier.
  • Check the output power is stable over time, and that there are no large fluctuations in output power for a fixed input power.

Finishing

  • Use a flux remover to clean any solder flux residue and tidy any poor solder joints.
  • Mount the amplifier into a box or case with suitable TX/RX switching.
  • Accompany the amplifier with a suitable low-pass filter board.

Transformer & Coil Winding

In the following diagrams process, please note:

  • To avoid scraping the enamelled wire, use needle nose pliers to smooth the edge of the ferrites. Hole edges may be sharp.
  • A “turn” on the coil is regarded as wire passing through the centre.

Winding T1

Transformer T1 primary should be 6 turns (black lines). The secondary of T1 should be 2 turns (red lines). The turns ratio is important, since if there are too many turns, the voltage on the gates of the MOSFETs will exceed the breakdown voltage and the parts will be destroyed.

Winding T2

Transformer T2 primary should be 1 turn made from the two end PCBs and copper pipe. The secondary of T2 should be 5 turns of high temperature wire.

In version 201 of the kit, the number of ferrite rings is reduced from 16 to 14. You will also need 2 ferrites for winding L1 (see below).

Winding L1

L1 is a high frequency RFC choke. The 7-10 turns should be wound around two ferrite rings as used in T2. I chose 10 turns as this provides the largest choke inductance.

Getting the best bit error rate (BER) from your Pi-star MMDVM

I noticed after a while, that my BER percentage of my MMDVM_HS_Hat and Pi-Star setup was significantly higher than other users, at around 3.5%. I know from setting up GB7KH that getting this correct takes patience. I also happen to know that the design of the MMDVM_HS_Hat uses inexpensive TCXOs to provide frequency and timing references. As such, some calibration can do wonders for the BER on DMR.

For this mini-guide, I shall use my TYT MD-380 handheld DMR radio. My hotspot is set to use a nominal frequency of 434.250 MHz as the carrier frequency.

Using the DMR handheld as a transmitter on low power, it should be possible to better match the frequency of the receiver to the transmitter – this process isn’t ideal, because it could equally be the handheld frequency which is incorrect – but at least they’ll match.

We’ll need to get SSH access to the underlying Linux system on the Pi-Star. You can either use the “SSH Access” tab from the Pi-Star Expert menu, as below:

Pi-Star SSH Access via Expert menu

Or you may prefer to SSH into the Pi-Star with your preferred SSH client – I use PuTTY. Either option will work here.

The program we need is called MMDVMCal. Fortunately, there’s a version compiled for us already in Pi-Star. From the Pi-Star console terminal, the following command will start the MMDVMCal program where we’ll do our testing:

$ sudo pistar-mmdvmcal

Using MMDVMCal

When the program starts, you’re greeted with the following command line instructions. You may also see some debug/warnings about

Starting Calibration…
Version: 1, description: MMDVM_HS_Hat-v1.4.17 20190529 14.7456MHz ADF7021 FW by CA6JAU GitID #cc451c4
The commands are:
H/h Display help
Q/q Quit
W/w Enable/disable modem debug messages
E/e Enter frequency (current: 433000000 Hz)
F Increase frequency
f Decrease frequency
Z/z Enter frequency step
T Increase deviation
t Decrease deviation
P Increase RF power
p Decrease RF power
C/c Carrier Only Mode
K/k Set FM Deviation Modes
D/d DMR Deviation Mode (Adjust for 2.75Khz Deviation)
M/m DMR Simplex 1031 Hz Test Pattern (CC1 ID1 TG9)
K/k BER Test Mode (FEC) for D-Star
b BER Test Mode (FEC) for DMR Simplex (CC1)
B BER Test Mode (1031 Hz Test Pattern) for DMR Simplex (CC1 ID1 TG9)
J BER Test Mode (FEC) for YSF
j BER Test Mode (FEC) for P25
n BER Test Mode (FEC) for NXDN
g POCSAG 600Hz Test Pattern
S/s RSSI Mode
I/i Interrupt Counter Mode
V/v Display version of MMDVMCal
<space> Toggle transmit

The first thing to do is to set the MMDVMCal frequency. I did this by pressing “E” followed by the frequency of my radio (434.250 MHz) in Hz.

e

434250000

You should see this frequency echoed back in brackets once the menu is reprinted to the screen. If you look at the example above, you’ll see that the frequency is 433000000 Hz (or 433.000 MHz). Pressing “b” will enter “BER Test Mode (FEC) for DMR Simplex” mode:

b

At this point, a quick transmission will show the exact BER:

DMR voice header received
DMR voice header received
DMR voice header received
DMR audio seq. 0, FEC BER % (errs): 2.837% (4/141)
DMR audio seq. 1, FEC BER % (errs): 2.837% (4/141)
DMR audio seq. 2, FEC BER % (errs): 3.546% (5/141)
DMR audio seq. 3, FEC BER % (errs): 1.418% (2/141)
DMR audio seq. 4, FEC BER % (errs): 0.709% (1/141)
DMR audio seq. 5, FEC BER % (errs): 2.128% (3/141)
DMR voice end received, total frames: 6, bits: 846, errors: 19, BER: 2.2459%

My BER is showing as 2.5%. Not awful, but with some room for improvement.

The process of finding the ‘perfect’ value is twofold. The first is to find the approximate frequency, and then dial in the exact value. Here, we’re trying to find out the difference between the nominal frequency (in my case 434.250 MHz) and the optimal working frequency.

From the menu above, you’ll note that both “F” and “f” (both upper and lower case) increase and decrease the frequency respectively. By holding your radio in transmit, repeatedly press the F key until you the MMDVM_HS_Hat looses the transmission from your handheld. You’ll see the TX frequency announced with each change of frequency – allow time between each step (around 10 seconds on each frequency).

DMR audio seq. 3, FEC BER % (errs): 1.418% (2/141)
DMR audio seq. 4, FEC BER % (errs): 0.709% (1/141)
DMR audio seq. 5, FEC BER % (errs): 4.255% (6/141)
TX frequency: 434250050
DMR audio seq. 0, FEC BER % (errs): 4.965% (7/141)
DMR audio seq. 1, FEC BER % (errs): 0.709% (1/141)
DMR audio seq. 2, FEC BER % (errs): 0.709% (1/141)
DMR audio seq. 3, FEC BER % (errs): 1.418% (2/141)
DMR audio seq. 4, FEC BER % (errs): 2.837% (4/141)
DMR audio seq. 5, FEC BER % (errs): 1.418% (2/141)
TX frequency: 434250100
DMR audio seq. 0, FEC BER % (errs): 2.837% (4/141)
DMR audio seq. 1, FEC BER % (errs): 0.000% (0/141)

Keep going in one direction until the software reports “Transmission Lost” – note the final frequency down. You can see this by pressing “H” or “h” to reprint the menu. For me, the first limit I reached was 434249800 Hz by repeatedly pressing “f” to lower the frequency.

TX frequency: 434249800
DMR audio seq. 0, FEC BER % (errs): 7.092% (10/141)
Transmission lost, total frames: 61, bits: 8601, errors: 743, BER: 8.63853%

Once you find one limiting frequency, travel though the other direction until you find the other limiting frequency.

TX frequency: 434250800
DMR audio seq. 0, FEC BER % (errs): 9.220% (13/141)
DMR audio seq. 1, FEC BER % (errs): 7.801% (11/141)
DMR audio seq. 2, FEC BER % (errs): 7.801% (11/141)
DMR audio seq. 3, FEC BER % (errs): 7.801% (11/141)
Transmission lost, total frames: 248, bits: 34968, errors: 2602, BER: 7.44109%

From here, you can find the mean (centre) frequency: (434249800 + 434250800)/2 = 434250300‬ Hz (300Hz higher than the nominal).

Use the “E” command once again and enter your new mean frequency – for me, this was 434250300‬ Hz.

e

434250300‬

You can then either enter frequencies yourself stepping 10 Hz at a time until you find the frequency yielding the best BER, or you can use the “Z” and “z” commands to increase or decrease the steps, and continue using the “F” and “f” commands to ‘home in’ on the value. I tabulated my results to give me a clear understanding of what was going on. I first went with 25 Hz steps (half the default 50 Hz steps) and found the following values for a 15 second transmission on each frequency. At the end of each transmission, status (including BER) are reported. You can see that the optimum value was very close to my mean value.

434250225‬, BER: 0.3208%
434250250‬, BER: 0.1470%
434250275, BER: 0.0887% (optimum value)
434250300‬, BER: 0.2175% (my mean calculated)
434250350‬, BER: 0.4816%

You can see that the optimum value was very close to my mean value. I experimented with even smaller steps, but didn’t really improve much on the 0.1% BER. This value is definitely good enough, and is an order of magnitude better than what I had previously!

Since I also use D-STAR, I quickly pressed “K” to enter D-STAR BER test mode, and, with the best settings from DMR, I keyed my Kenwood TH-D74 handheld – everything was fine here, too:

D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star audio FEC BER % (errs): 0.000% (0/48)
D-Star voice end received, total frames: 214, bits: 10272, errors: 0, BER: 0.00000%

Taking the frequency for your lowest BER (in my case 434250275 Hz), the offset is easy to calculate: Simply subtract the best BER frequency from the nominal frequency to find the offset: 434250275 – 434250000 = 275 Hz (note, this can be negative).

Applying the Offset

We next need to apply our offset (in my case +275 Hz) to the main MMDVMHost application running on the Pi-Star. This is done through the expert configuration.

Inside the Pi-Star configuration, head to the Admin Expert menu once again and select MMDVMHost.

Inserting our calculated offset (in Hertz) from the above.

It’s then just a case of applying the changes!

2.4 GHz TX with LimeSDR & EDUP WiFi PA

Following on from my Receiving Es’Hail-2 GeoSat article, the obvious next thing to write something about transmitting. I created a draft of this article, but it seemed to mix heavily with the specifics of my station and was less generic. So I felt it better to create this page first, detailing my 2.4 GHz transmitting station, which I have just cobbled together in the time since writing the original article.

About the LimeSDR

Let me first start by saying that I’ll be using a LimeSDR USB which has a continuous frequency range of 100 kHz to 3.8 GHz. Clearly acceptable for our requirements of 2.4 GHz. The bandwidth the SDR can support is staggering 61.44 MHz. The SDR is based around an Altera Cyclone IV FPGA with 256 MB of DDR2 RAM and a Rakon RPT7050A reference clock at 30.72 MHz. It has 6 inputs and 4 outputs, and boasts a CW transmitter power of up to +10 dBm (10 mW).

Clearly the LimeSDR is nothing without some fancy software to drive it; and there are plenty of good offerings. I decided to opt for SDRConsole V3 by Simon Brown G4ELI, which at the time of writing was version 3.0.5 (Feb 2019).

SDRConsole with the LimeSDR

The process of setting the LimeSDR up was easy. I had to collect the LimeSDR drivers for Windows and install those. That process is nicely described on the Miriad RF LimeSDR USB Driver Install page, but the crux of it is: (a) download the drivers from their GitHub page [direct link to master here], (b) use Device Manager to find the LimeSDR, and replace the driver with that in the zip.

Once the driver is installed, you’re ready to set up SDRConsole. When the program starts, it will state that you do not have any radios defined, and give you the opportunity to define one. Simply select “Search” and then “LimeSDR” and it will find your radio. Accept the changes you’ve made.

Radio Definitions: Define your LimeSDR

Once you have defined your radio, you should select it from the box that pops up following the definition (and subsequently each time you start SDRConsole). Select the LimeSDR you have just defined, make sure you select a bandwidth that supports transmitting “(TX)” in the “Bandwidth” option, and “Start” will become clickable in the bottom left. You should see the console spring to life.

Select Radio: Make sure you select a bandwidth what supports TX.

From the Receiving Es’Hail-2 GeoSat article, you will recall that the narrowband transponder input is 2400.050 MHz to 2400.300 MHz. Taking the middle of this band to be 2400.175 MHz. The screenshot below shows the radio on this frequency. I have put boxes and tails on some of the important settings.

From the figure above, you can see the receive frequency on the top left box, with the transmit frequency on the top right box. The “Sync RX” options for frequency and mode show that the TX frequency and more are locked to that of the receiver.

The “Drive” control on the top right box controls the RF power on the output and we shall try to characterise that later. Just above it is a “TX” button which causes the transmitter system to be engaged, and the receiver to be muted.

Finally, in the bottom left there are controls which select which of the LimeSDR’s 6 receive sockets and 4 transmit sockets are in use.

LimeSDR Output Power

The next thing to do is measure the LimeSDR’s TX power on the frequency of interest: 2400.175 MHz, the centre of the NB transponder uplink. A CW signal is used to generate a constant power level.

To achieve this, I have used a known calibrated R&S NRP18A, which will measure power from 100 pW to 200 mW. We are expecting a maximum of 10 mW, so we should be easily safe to use this.

The drive level is a percentage, ranging from 0 to 100. My basic plan was to take a reading every 10%, and if there is a large non-linearity, I’ll take further measurements in those areas. At this point, the LimeSDR is only powered via the USB bus, and has no external power source. With drive levels below 50%, the reading was noisy, so I concentrated on the linear part of the curve.

Drive Level (%)Power (dBm)Power (mW)
50-41.620.000069
60-34.350.000367
70-26.50.002239
80-18.310.014757
90-9.690.107399
100-1.620.688652
Graph of LimeSDR output power vs drive level at 2400.175 MHz

EDUP 8W WiFi Power Amplifier

I purchased an EDUP 8W WiFi power amplifier for £35 in February 2019 for use with the LimeSDR and Es’Hail-2 uplink. There had been talk on Twitter of these amplifiers being suitable, so I decided to give one a go.

EDUP 8W WiFi Amplifier cost around £35 delivered

Without getting into details, the amplifier has a system which detects if the WiFi radio is transmitting, and enables the PA’s TX path, or if the radio is receiving, and enables a separate RX path. This is exactly like “VOX” on an amateur radio amplifier. However, since the packets are very short on WiFi, with guard times in the order of 400 nanoseconds, the hang time is very short, and thus not suitable for SSB. We thus need to modify this behaviour, so that the amplifier is in TX all of the time, or, even better, when the LimeSDR is transmitting – perhaps using a GPIO pin to drive the amplifier – but that’s unimportant for now.

PTT Modification: EDUP 8W Amplifier

Here’s a snap of the insides of the amplifier. It’s clear that there is some room for improvement in gain with this amplifier, such as removing the (likely lossy) TX/RX switching, etc., as we don’t need these parts. However, for now, we’ll leave it. Swapping the RF-OUT RP-SMA connector for a standard SMA connector is probably a wise decision for the radio amateur.

Inside the EDUP 8W WiFi Amplifier

The mod, in its basic form, is just a solder bridge across pins 4 (VS) and 5 (+IN2) of the ADA4851-4 quad rail-to-rail op-amp on the opposite corner of the board to the DC power socket. The mod makes it appear that the diode detector is detecting a huge signal (5.787 V, the supply rail). The reference voltage (-IN2) is set at 0.189 V. When the voltage at +IN2 exceeds -IN2, the device enters transmit mode.

If the amplifier is in receive mode, the status LED illuminates red. Conversely, if the amplifier is in transmit mode, the status LED illuminates green.

Measurements with the EDUP Amplifier

In terms of the experiment, the EDUP amplifier input is connected with an SMA barrel to the LimeSDR output, and the EDUP amplifier output is connected (via RP-SMA on the included short RG174 patch cable) to a 20 dB attenuator which in turn connects to the power meter.

Using this configuration, I do not expect that the output power will be come very high, since their is not enough drive level from the LimeSDR at −1.62 dBm. I see about 13 dB of gain, with an output of around +11dB (~10mW) of RF output power.

At this point the EDUP amplifier is drive limited. Working backwards, to achieve a theoretical +39 dBm (8 W) output, we would need to input +26 dBm (0.4 W) input.

The amplifier draws around 170 mA in receive, and about 380 mA in transmit with no RF (just quiescent bias).

More Gain!

Clearly connecting the EDUP directly to the LimeSDR does not provide enough power. There is a need for some more gain. Looking around what options are available cheaply, you quickly come across some options.

Qorvo SPF5189Z

SPF5189Z breakout module available from eBay, AliExpress, etc.

The Qorvo SPF5189Z has a small signal gain of 11.9 dB at 2.2 GHz (the closest listed frequency to the required 2.4 GHz) and an output P1dB of 22.7 dBm. This output power is close to the 26 dBm input required for the EDUP, although it is not recommended to run the system close to the 1 dB compression point (P1dB). With the SPF5189Z in line, we see approximately 20 dBm output (100 mW) from the EDUP.

Adding another SPF5189Z following the first gives around 30 dBm (1 W). Adding another 10 dB of gain early on in the drive chain will get us closer to the goal of 8 W output, but the system was becoming unwieldy and would probably not be suitable for use on air without inter-stage filtering as the parts used are wide-band.

Analog Devices CN0417 Evaluation Board

Analog Devices CN0417 Evaluation Board (bottom side) [source]

Another part brought to my attention by @Manawyrm on Twitter is the Analog Devices CN0417 evaluation board (EVAL-CN0417-EBZ). It is a USB Powered 2.4 GHz RF Power Amplifier, and can be purchased for around £26 ($35 USD).

I have not used this part yet, but I know that others have with some success. The EVAL-CN0417-EBZ is based on the ADL5606 is a broadband, two-stage, 1 W RF driver amplifier which operates over a frequency range of 1800 MHz to 2700 MHz.

Nearly there…

With some tidying of the interconnects, I was able to get to 32.98 dBm (1.95 W). More filtering will be required before letting this loose on air.

Screenshot of SDRConsole with RF Power Meter inset. +32.89 dBm = 1.95 W

Getting it on air!

At this point I was pretty keen to see if I could make it to the Es’Hail-2 satellite. The day I tried, 2 March 2019, followed an announcement by AMSAT that the narrowband transponder gain had been reduced, so I was keen to

AMSAT-DL reduced the transponder gain by several decibels on 28/02/2019

Using a WA5VJB quad-patch antenna purchased from Sam G4DDK, I was able to get going sooner than if I had held out to wait for the dual-feed solution that Mike G0MJW and others had been working on. The patch can be seen connected to the amplifier with a simple SMA barrel connector.

Patch antenna and EDUP PA

Balancing the amplifier and patch antenna on the back of a large reclining chair in the garden, I was able to align the patch antenna to the satellite’s location. Setting the TX frequency of the LimeSDR to the centre of the transponder band (2400.175 MHz), with an output power of around 1W of I was able to hear a single tone through the Es’Hail-2 narrowband transponder, I quickly added a CW paddle and was able to confirm my signal by sending “M1GEO TEST” several times, listening via the BATC NB WebSDR as discussed in my Receiving Es’Hail-2 GeoSat article.

I took a short recording using the BATC WebSDR:

“M1GEO TEST” received at BATC Goonhilly Web SDR

Some filtering?

W1GHZ has a nice study on pipe-cap filters and there are other articles that describe their construction such as KO4BB Pipe Cap Filters construction page. Other options include inter-digital filters and similar.

Not much to report here… I still have some experimentation to do.

Where next?

The next article in this set describes making a dual-band feed. It is still being written…

Receiving Es’Hail-2 GeoSat

First of all, let me say that I am in no way an expert with regard to satellites, microwave operations, or anything else. This is meant to be more of a crude beginners guide. Experts will probably cringe – that’s fine!

A little bit about Es’Hail-2

Es’Hail-2 (QO-100) is a geostationary satellite at 25.5° East which carries transponders (devices for receiving and re-transmitting signals) usable by radio amateurs. These two transponders are the first amateur radio transponders to be put into geostationary orbit and are expected to link radio amateurs from Brazil to Thailand.

Es’hail-2 will carry two such transponders, operating from the 2400 MHz band into the 10450 MHz band. A 250 kHz bandwidth linear transponder intended for conventional analogue operations (SSB, CW, etc.) and an 8 MHz bandwidth transponder for experimental digital modulation schemes and DVB amateur television. The operating guide provided by AMSAT-DL asks that users refrain from using FM on the narrowband transponder.

Narrowband Linear transponder
2400.050 - 2400.300 MHz Uplink
10489.550 - 10489.800 MHz Downlink (Vertical Polarisation)
Wideband digital transponder
2401.500 - 2409.500 MHz Uplink
10491.000 - 10499.000 MHz Downlink (Horizontal Polarisation)
Image taken without permission from Amsat-UK/DL [source]

With these linear transponders, any signal that the satellite receives in the input frequency range will be linearly translated to the output frequency range. As a signal power increases, so will the signal at the output; as the signal frequency increases, so will the output signal. And so it goes.

You can find out lots more information about the Es’Hail-2 satellite (and others) from the AMSAT-UK Es’Hail-2 website.

Why this page?

Following Noel G8GTZ‘s talk on Es’Hail-2 at the RSGB Convention 2018, I started collecting the parts required to put together a receive system. At the time of Noel’s talk, I remember thinking how he’d made the process sound simple. It wasn’t until I started playing with the setup that I actually found how simple the process was. More on this later…

Yesterday, I stumbled across a link to the BATC’s Es’hail-2 Ground Station website which has links to their wideband (think HD TV) and their narrowband (think SSB, CW) web receivers. The hardware is located at the Goonhilly Earth Station in Cornwall (IO70JB). More details can be found on the Es’Hail-2 BATC website.

If you have used a WebSDR online before, then the narrowband SDR will be familiar to you. The wideband monitor will probably not be familiar, but it is very useful if you are looking to experiment with digital amateur television (DATV) transmissions – more on this later. Since we’re interested in doing the receiving ourselves, we just note is that such web SDRs and monitors are a fantastically useful resource. There are of course many other similar resources.

Ultimately, this is the page that I wish I had found when I started out on this path a couple of days ago… You are welcome to contact me if you spot errors, etc.

Antenna talk: Dishes, LNBs & Feeder

A satellite dish is a type of parabolic antenna that is highly directive and therefore has a high gain. In simple terms, the dish collects incoming radio-waves over a large area and focuses them towards a central point.
This point is usually the front of an low-noise block (LNB). The larger the dish diameter the more gain the dish will have – but – the sharper the beam, and so the more critical the alignment. Common dish sizes for receiving Es’Hail-2 are in the range 80 centimetres to 1.2 metres diameter. My dish, pictured below, is 1.2 metres diameter. Because the dish is highly directive (i.e., it’s beam is very sharp, like a laser pointer is with light), it requires careful adjustment.

Where do I aim the dish?

The AMSAT-UK Es’Hail-2 website tells us that the satellite is at 25.5° East. This means that the satellite is at 25.5° East of the meridian line. You will need to find the azimuth and elevation, i.e., the direction and tilt of the dish, yourself, since this depends on your longitude (distance from the meridian line) and latitude (distance from the equator). I have used the SatLex tool (below image), but many other online tools exist (DishPointer, SatSig) to help you. When using such tools, if they don’t have Es’Hail-2 in their index, BADR4/5/6 or EutelSat25B are close enough for now.

Satellite location calculated by SatLex for Es’Hail-2 from Norwich, UK.

As you can see, the top half of the above image shows you a view due south, and the satellite location in your field of view. You’ll see the elevation angle of 25.88°, which I’ve rounded to 25.9°. You’ll have to tweak a little for maximum signal, regardless of how well you do this step, but it really helps to get the alignment as good as you can before you start. You will also see the ‘true’ azimuth angle, here 150.50°, which is the angle your dish should point to, and corresponds to a simple calculation between your longitude, the satellite’s position in space, and the meridian line.

The only other point to note in the above figure is the “LNB Tilt” of −17.4° (note, minus). Without proper knowledge, it is tricky to set the LNB skew without the LNB receiving a signal, so for now, lets press on with getting the dish mounted. We’ll come back to LNBs later.

Getting the dish pointed at the satellite is, without doubt, the hardest part of the entire undertaking. On the right, you see Chris G8OCV helping to align the dish holding a spirit level. Since it is my policy to only ever do antenna work in the dark, on a cold evening, preferably in rain, he’s very enthusiastic! But he always helps!

For my QTH in Norfolk UK, the elevation worked out to be 25.9°. This is the elevation, i.e., the angle of the dish’s beam to the horizon. The dish’s beam points upwards 25.9°. We also know the azimuth of the satellite is 25.5° East, which corresponds to a true heading of 150.5°. These are the two coordinates we need to know to aim the dish.

Once the dish support pole was absolutely vertical, the elevation adjustment on the satellite dish can be done using the angle markers on the dish bracket. The azimuth 25.5° East is translated to 150.5° as taken from the satellite pointer website. I used a compass to initially align the dish. Some warning/disclaimer about the difference between ‘true’ North and ‘magnetic’ North belongs here. It didn’t cause me any trouble, but your experiences may be different. If you’re using a temporary post in the ground/umbrella stand, make sure it is heavy enough not to blow around in the wind. Mine wasn’t until we added some concrete weights.

Satellite dish mounted on an aluminium pole in an umbrella stand. Scrap metal was slid under the stand to help achieve the optimal angle.

Some words on LNBs

This section may sound a little scary, but I have tried to explain some of what is going on inside the LNB – don’t be put off! The low-noise block (LNB) is something that sits at the focus point of many commercial satellite dishes. The dish focuses the radio signals to a point – usually into the LNB. The LNB has a low noise amplifier to increase the level of the weak signals received by the dish. Since satellite downlink frequencies are well over 10 GHz, that would require some very fancy coax to get the signal into your house. So the LNB also mixes the received signal with a local oscillator (LO) frequency that it generates itself, in order to reduce the frequency of the received signal – this LO frequency is switchable to allow different frequency ranges to be received. Finally, the LNB has a polarisation switch, changing between horizontal and vertical polarisation. This is, of course, a gross simplification of what is going on, but is enough for now.

Without going into too much detail beyond what feels strictly necessary, the switching of LO frequency and polarisation are controlled by signals fed to the LNB from the shack-end of the coax. The LO frequency defaults to 9.75 GHz, but is switched to 10.6 GHz when the LNB receives a 22 kHz tone on the feeder. Since the LO is outside in the cold, the frequency reference is prone to thermal drift. You are strongly recommended to find an LNB that has it’s LO frequencies derived from a phase locked loop (PLL) as opposed to an dielectric resonator oscillator (DRO). A more advanced configuration is to purchase a dual-port LNB, and use one port for the feeder return to the shack, and ‘hack’ the LNB such that the second port serves to accept a frequency reference that can be provided. You do not need to do this, an off the shelf LNB will work, but a PLL variant is strongly recommended. If you hear very garbled or warbling sounding sideband or it is unresolvable altogether, it may be that your LNB is using a DRO as the frequency reference.

The polarisation is either vertical when the LNB is powered at 12V DC, or horizontal when powered at 18V DC. Often hams will only use the 9.75 GHz LO frequency, since then no 22 kHz tone is required. Some ham’s rotate the LNB physically to change polarisation, while others set the LNB between vertical and horizontal, thus receiving both simultaneously but with losses. I opted for supplying either 12V or 18V to the LNB and switching polarisation electronically from inside the shack. I have not, as yet, needed to change the LO frequency.

Goobay 67269 Single Universal LNB – retails at under £6 with free postage

Everything on this page was done with a Goobay 67269 Single Universal LNB. There is lots and lots of information on LNBs if you search around online. The BATC has some information on LNBs, as does UHF-SatCom Ku Band PLL LNB’s page. The key point is get a PLL based LNB, as recommended by others. Some of the recommended ones carry a heavy price tag as at the time of writing there is a huge demand, and relatively small supply. A few years ago I bought an Octagon PLL-based LNB for less than £10 delivered; now they cost over £130! I would have used that, but it was in boxes packed for moving! Unfortunately for radio hams, sellers have realised that PLL based LNBs are more valuable to us, and so their price is gradually increasing.

Feeder

I had a bit of discussion with friends online about what feeders were being used. Most people have, I guess obviously, opted for satellite coax. This is RG6 coax, and has a solid centre pin suitable for use in F-connectors. This is also available cheaply on eBay, often kitted with ten F-connectors. I paid around £9 for 50 metres. In an early instance, I got away with using RG213 (which is 50 Ohm, not 75 Ohm) and some F-connector adaptors, but the LNB gain makes up for a lot of small misdemeanours. RG6 satellite coax is the way to go! The image below shows my mash of connectors and adapters to overcome my lack of a solid centred feeder such as required by F-connectors.

How not to do it. My first attempt worked perfectly but isn’t best practice!

Connecting it all up

Terminate the LNB end of the feeder with an F-connector, and seal it up to keep the rain out. Mount the LNB in the dish’s LNB mount. You need to be able to twist the LNB to adjust the LNB tilt, but don’t want anything to move of it’s own accord.

The next obstacle is to power the LNB. I did this by hacking about with an RTL-SDR dongle and building in a bias tee inside – details in the “LNB Bias inside an RTL-SDR Dongle” section, below. If you have a bias tee already, you may be able to use that provided it is suitable for use at around 740 MHz. Power the LNB with 12V to select vertical polarisation with 9.75 GHz LO, ideal for the narrowband transponder of Es’Hail-2.

The centre of the Es’Hail-2 narrowband transverter downlink is 10.489675 GHz. If we use the 9.75 GHz LO, we expect to see an intermediate frequency (IF) of 10.489675 − 9.75 = 0.739675 GHz = 739.675 MHz.

We are expecting to see signals in the 250 kHz bandwidth centred on 739.675 MHz. On an RTL-SDR dongle waterfall, you should see an increase in the noise floor between when the LNB is powered and when it is unpowered. If you do not, check your wiring. My LNB draws around 100 mA.

Tweaking the dish

As we alluded to earlier on in the dish section, we need to tweak the dish’s alignment. But to do this, we need to be receiving signals, and then take an opticians approach, of ‘better or worse’ with very tiny adjustments each time.

If you have followed these notes so far, you will have a receiver, or spectrum analyser or similar centred on 739.675 MHz, with your LNB in horizontal polarisation and a 9.75 GHz LO frequency.

The Es’Hail-2 narrowband transponder has will appear as a wide lump of raised noise floor, similar to what you see below. The raised bump is the transponder bandwidth, and the two signals present are the upper and lower band markers. They send CW and binary data, too. The transponder bandplan is outside the scope of these notes, but you can find it on the
AMSAT-UK Es’Hail-2 website. It roughly follows the usual bandplans for all-modes, with CW at the lower end, then digital modes, then SSB at the top.

Es’Hail-2 Narrowband Transponder Downlink

When tweaking the satellite dish, adjust for the largest (highest) bump above the noise floor. You equally want the two beacons to be high above the transponder noise floor. Very slowly, in small steps, adjust the azimuth (rotation) of the dish stopping at the point that maximises the signal. Then adjust the elevation (tilt) of the dish to further maximise the signal. If you do not see anything on the waterfall, then you may need to make larger sweeps of the dish to find the satellite in the first place. This is where your care previously helps. As mentioned before, this is the trickiest step.

LNB Tilt/Skew

Once you have a good signal-to-noise (high bump above the noise with large beacon signals), you should adjust the LNB within the dish mount.

If you can electrically switch polarisation to horizontal (by feeding the LNB with 18V) then you should do this. With the antenna now ‘cross-polarised’ to the narrowband transverter, rotate the LNB to receive the minimum signal you can. What you are doing is looking for the maximum amount of cross-polarisation. It is easier to adjust for the null than for the signal itself, and you will achieve a better adjustment this way. If you cannot switch the LNB polarisation electronically, then you should adjust for the maximum signal with rotating. Rotate the LNB towards the LNB tilt angle (for me this was −17.4°), going past that angle to ensure you find the minimum or maximum as appropriate.

You may also like to adjust your LNB backward and forward in the mount to try and find the optimum focal point, although this point is usually specified pretty clearly on the dish’s paperwork. Either way, with the LNB now in the correct polarisation (12V feed, vertical for the NB transponder), move the LNB backd and forth looking for the largest signal.

These steps may be difficult to do, as your body will cast an ‘shadow’ on the dish – either hide out of the way as you adjust, or, tweak and step back. You get the idea.

Once you’ve done that, bolt everything up tight and you’re good to go!

Receiving Narrrowband Modes

If we zoom in a little from the spectrum display we saw when aligning the dish; such that the markers are now on the outsides of the waterfall, we see more of a ‘band view’, and the transponder frequency response looks relatively flat. This screen-grab was also taken with several signals visible.

Es’Hail-2 NB transponder, showing 2 beacon signals, 4 SSB signals and a CW signal

As with any other SDR you may have used, clicking on the signals will allow you to demodulate them.

G4EML calls CQ and OZ2OE answers – signal variability caused by my error

Below, OH1ZAA calling CQ:

OH1ZAA calling CQ

OH1ZAA calling CQ and UN6PD returning

Receiving Digital Video Amateur TV

The Es’Hail-2’s wideband DVB-S2 beacon on 10.492,500 GHz is always transmitting video. This beacon was my very first reception of DATV. I am still finding out about this, so my experience here is minimal, but perhaps it is of some use. You should defer to the BATC’s Receiving DATV guide for detailed information.

Digital television has many different standards, as you might expect. The key factors are the modulation type (how data is encoded onto the RF carrier), sample rate (in samples per second), picture mode (DVB-S, DVB-S2, etc) and FEC (or forward error-correction). As well as this, streams have a PID (packet identifier) which identifies the program – all we need to do is set this correctly. The standard is set out in the ETSI EN300-468 specification if you want to learn more. You don’t need to.

Most amateur signals vary in the above listed parameters to what is used commercially. While a standard digital TV multiplex may be 8 MHz wide, radio amateurs typically use much smaller bandwidths, and what is called Reduced Bandwidth TV (RB-TV). Commercial receivers usually do not support these configurations, so a special receiver (the MiniTiouner by F6DZP and others) was developed from modules and allows fine control over all of the parameters associated with digital video transmission.

This remainder of this section concentrates on the MiniTiouner. However, there are two SDR based options available. I cannot offer any words on these, except to highlight their existence:

  • Lean SDR: A lightweight, portable software-defined radio (C++)
  • SDRAngel: SDR Rx/Tx software for Airspy, Airspy HF+, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube (C/C++)
  • DATV Express: Software and (discontinued?) hardware

The ‘MiniTiouner’ Receiver

The MiniTiouner by F6DZP and others is a USB tuner designed specifically for Amateur TV use which natively covers 143 MHz to 2450 MHz and is suitable to receive Es’Hail-2 and a number of other amateur bands with no modifications or additional up-converter. It is available from the BATC and other sources. See the BATC MiniTioune page for more details.

As a short note, the term ‘MiniTiouner’ with an ‘R’ at the end refers to the hardware PCB; the term ‘MiniTioune’ (no ‘R’) refers to the software.

Most amateur TV transmissions are made using Reduced Bandwidth DATV (RB-TV) with a bandwidth below 1 MHz. To date, 90% of the DATV transmissions on Es’Hail-2 (QO-100) have used RB-TV.
The MiniTiouner comes as a kit from BATC, and took me roughly an hour to build. Follow the build notes on the BATC website.

I then had to register on the VivaDATV forum to obtain F6DZP’s MiniTioune software (post link here) – I’m not sure why I had to register, but, I did. At the time of writing, this is software version 0.8s. For instructions on how to install this, visit the BATC’s MiniTiouner Software page. Don’t forget to install the accompanying USRC and LAVFilters packages, too. I did; you get no video! 🙁

An issue that I faced is that the USB connection between my computer would drop randomly causing the MiniTioune software to crash. This is supposedly solved by using a Lindy Cromo Lindy cable USB 2.0 type A/mini-B 1m long, but after spending £10, the issue still persists.

Before you fire up the software, open the minitioune.ini file and edit the following fields: OM_ID (callsign), ForumPassword (forum password), Locator (QRA locator), Ville (location) and anything else you see fit. You’ll probably want to come back to this file from time-to-time.

The ‘MiniTioune’ Software

When the software first starts, you’ll see something like the image below – just wait a few seconds:

MiniTiouner Splash Screen

After a few seconds, you will see the main MiniTioune program window:

MiniTiouner in ‘Expert’ mode receiving Es’Hail-2’s main beacon.

My advice would be to make sure you can receive the beacon before you move on to anything else, since the beacon has known parameters.

Receiving the Es’Hail-2 DVB Beacon

The first thing to note is that the wideband transponder is horizontally polarised, so you will need to supply 18V to your LNB to switch polarisation, or, rotate the LNB 90° in either direction. The MiniTiouner hardware has two jumpers which allow you to feed the input DC supply voltage into the LNB F-connectors via the Serit module. These are labelled LNB_A1 and LNB_A2 on the PCB, and can be found between by the DC input power jack. Then the whole MiniTiouner receiver is powered from either 12V or 18V as required.

Next look to the top-left of the main MiniTioune window; you’ll see a place to enter the sample rate (SR) and a frequency (in kHz). The beacon frequency is centred on 10.492,500 GHz, and transmits DVB-S2 with 2 MS/s QPSK modulation using 2/3 FEC forward error correction.

If we enter 10492500 kHz into the frequency box, we also need to tell the MiniTioune software to accommodate for the frequency translation the LNB is performing. It is enough to say that the LNB provides a frequency offset of −9.75 GHz, so we indicate −9750000 kHz (note, minuses).

We’re told the sample rate is 2 MS/s, so we can enter this as 2000 KS/s in the SR box at the top left. Make sure you have selected either AUTO or DVB-S2 for the mode, and that you have the checkbox for 2/3 FEC enabled.

Looking at the BATC’s Wideband Transponder Monitor, it is possible to see the beacon transmission on the left at 10.492,500 GHz. You may also see other transmissions besides the beacons and we’ll look at that those in the next section.

Es’Hail-2 wideband transponder monitor with beacon clearly visible on the left

As you enter the sample-rate and frequency, you should start to see some of the indicators at the bottom left of the MiniTioune window turn from red to green. Once the Viterbi decoder error goes to 0% (bottom centre-right), you should see video and hear sound! If you do not, then toggle the Auto PID button in the top right. This makes MiniTioune decode the incoming stream to find the video and audio transport streams and understand their codecs.

The clip below is a short section of the Es’Hail-2 DATV beacon:

Clip from Es’Hail-2 DATV beacon from wideband transponder

Receiving the Es’Hail-2 DVB Beacon

The process of receiving an amateur transmission is very similar to receiving the beacon. The only difference is that you may not know the properties of the signal being transmitted. In this case, I have found that using the BATC’s Wideband Transponder Monitor to look at the signals can be very useful to help guess. You can see from the spectrum that the signal is much narrower than the beacon, so we can take a guess at the sample rate by knowing a few commonly used values. 125, 333, and 500 kS/s seem to be common, while some use 1000 kS/s in the simplex DATV window.

BATC wideband transponder monitor

If you leave the common FEC options ticked and use AUTO mode selection, the MiniTioune software will magically recognise things after a few seconds, if you have chosen the right combination of options. There is, of course, another way:

BATC wideband transponder monitor also includes a chat window

The BATC wideband transponder monitor page also includes a simple chat system, where users can advertise their settings. Above you can see F8CED and M0DTS advertising their settings.

Using a mixture of trial and error, as well as watching others talk in the chat, I have been able to observe a considerable amount of amateur test transmissions via Es’Hail-2.

LNB Bias inside an RTL-SDR Dongle

In order to tweak the dish alignment and also to receive narrowband transponder signals, I needed to power the LNB for use with an RTL-SDR Dongle. I had heard that some dongles have a bias tee included, and I was hoping to repurpose some of this since clearly it would only supply 5V.

I opened the New Gen RTL2832 SDR I had to look inside and noticed a DC bypass inductor to ground for static discharge, with capacitors leading to a DC blocking capacitor, limiting diodes and on into the receiver.

By standing the DC bypass inductor on end, and adding a decoupling capacitor on the now unused pad, I could create a very crude bias tee. I used a 1000pF and a 47nF capacitor to create some further blocking and add mechanical stability, and then I soldered on two power wires.

RTL-SDR Dongle modified to have a bias tee for LNB power

It doesn’t look pretty at all, but it does work, and is small!

Where next?

The next step is to get a transmitting station put together for 2.4 GHz. You may be interested in how I did this: 2.4 GHz TX with LimeSDR & EDUP WiFi PA.