Category Archives: Beacon Blaster

Measuring Time of Flight

Time-sync Stack

Over at Turn Island Systems (TIS) and the HamSCI group, we are studying ways to measure Time Of Flight over various propagation paths and frequencies.  We can currently do this crudely with WSPR and FST4W transmissions but the Time Of Transmit is only roughly known and the modulation characteristics only allow measurement accuracy in the millisecond region.

WWV and other frequency and time standard transmitters include precise timing information in their signals, but we need more transmitter locations and frequencies for a more complete data-set.

Work on the receive end is being done with the RX-888 SDR and ka9q-radio, and I have designed some units that provide a local in-band time reference signal for these receivers — testing is underway.

For the transmitter, some work has been done using GPS-synchronized 1-second BPSK.  I am expanding this here to use not only the 1-second modulation, but also a faster PRBS data pattern that still complies with the new occupied bandwidth regulations.  This is definitely a work in progress, and my transmitter will be turned on and off while we figure out the details.  But for now, here is the signal format:

Carrier freq: 7.090 MHz

  • Minute 0: transmit morse ID message
  • Minute 1-2: transmit PPS BPSK
  • Minute 3-4: transmit PRBS DBPSK
  • Repeat

The PRBS pattern is the 1023-bit GPS CA code #1, 170.5 Hz chip rate, 10-second sequence rate.  The modulation is DBPSK (NRZI/BPSK).

The transmitter location is Occidental, California, and the antenna is an off-center-feed 40 meter dipole.  The photo shows my stack of little boxes I am using to generate these signals.  From top to bottom they are:

  • TIS-1W One-Watt amplifier – logic-level in, square wave out, 1-50 MHz, powered via  5V USB-C.  The input is provided by:
  • BeaconBox – a lightly-modified early TIS test board, designed during the early stages of the TIS WSPRSONDE.  This is connected to a GPS antenna for time and frequency synchronization.  I am also giving this board a reference clock from an external 10 MHz OCXO.
  • A TIS Filter-Combiner – this takes the output from the 1W amplifier, turns it into a clean low-harmonics sinewave, and sends it to the antenna.

Note that the PRBS modulation is technically *not* Spread Spectrum (that may come later, pending rules changes). We have chosen this particular PRBS pattern because it is well-documented, and has good characteristics permitting potential multiple transmit sources to share a common frequency.

Acronyms, etc.:

  • PPS : Pulse Per Second
  • BPSK: Binary Phase Shift Keying
  • DBPSK: Differential BPSK
  • PRBS: Pseudo-Random Bit Sequence
  • GPS CA Code: Here’s a good link that describes this:
    https://natronics.github.io/blag/2014/gps-prn/

Please contact me if you have any questions or comments!
paul (at) wb6cxc.com

 

FST4W-120 on Ten Bands Simultaneously

As you may know, over at Turn Island Systems (TIS) we have developed the WSPRSONDE-8 (WS-8), a multi-channel transmitter used in ionospheric propagation measurements.  This transmitter has eight channels, each covering 160 to 6 meters (and all frequencies in-between), each channel capable of transmitting at the same time.  Typically some or all of these outputs are combined to feed a single multi-band antenna, using one of the TIS filter-combiner boxes.  The WS-8 and earlier incarnations are currently transmitting at locations on multiple continents, in support of the HamSci ionospheric study programs.

TIS has a test site near Occidental, California where I have a number of antennas and now two WS-8 transmitters.  One antenna is the EFHW-8010 from myantennas.com, and this is being driven by one WS-8 through a prototype nine-band Filter-Combiner.  The frequencies are 80/40/30/20/17/15/12/10 meters.

The second WS-8 is driving two dipoles, one for 160 meters, and the other for 6 meters.

Here is the new setup: Two WS

The little boxes on top of the WS-8 stack are (left to right):

  • 160 meter Low Pass filter — This is a L/C/L/C filter, with a few dB of peaking.  I used T50-2 toroids for the inductors.  The input series inductor reduces the loading on the WS8 power amplifier (the strong third harmonic sees a rather high impedance).  Harmonic suppression is better than -50 dBc.
  • 6 meter Low Pass Filter.   This is a simple L/C/L TEE filter, again using toroids (T50-6).
  • 9-Band Filter-Combiner.  There is a description of this on the Turn Island Systems website.
  • Clock Distribution Buffer (a predecessor to the TIS-126).  This is taking the output of a Bodnar GPSDO and sending it to the two WS8 units.

If you care to listen to these transmitters, here are the frequencies (“tone 0″ of the FST4W 4FSK):

WS8 #1 (EFHW-8010): 
Channel 1, frequency: 3,570,135.000000 Hz 
Channel 2, frequency: 7,040,134.926829 Hz 
Channel 3, frequency: 10,140,234.959350 Hz 
Channel 4, frequency: 14,097,134.959350 Hz 
Channel 5, frequency: 18,106,134.878049 Hz 
Channel 6, frequency: 21,096,134.878049 Hz 
Channel 7, frequency: 24,926,134.869041 Hz 
Channel 8, frequency: 28,126,134.634146 Hz 
 
WS8 #2: 
Channel 1, frequency: 1,838,134.982578 Hz
Channel 2, frequency: 50,294,534.290017 Hz

A Combined Multi-Section Filter and Preamp

Many SDR receivers, especially those designed for full HF-spectrum use, have needed various filters and preamps between the antenna and the SDR.  High-power AM and FM broadcast stations can overload the receiver front-end, so these are filtered out.  The characteristics of atmospheric background noise are such that a “shelf” (or “shelving”) filter which attenuates the lower-frequency range can also be useful in optimizing the SDR dynamic range.

Finally, the SDR sensitivity / input noise-floor at  the higher end of the spectrum can be marginal.  Add the inherent losses of all these filters and a low-noise, high dynamic-range preamp becomes very useful.

So I am designing the “Swiss Army Knife” of SDR front-end modules:Filter-Preamp

No, there aren’t four SMA connectors, only one pair will be installed, giving an “in-line” version, and a “right-angle” version that can fit on a small die-cast enclosure.  There are four sections to this board:

  • AM Broadcast Band filter
  • 15dB Shelf filter
  • 13db gain preamplifier
  • FM Broadcast Band filter

Each of the filters can be bypassed using pin headers and jumpers.  The amplifier components can be omitted during assembly and a jumper used to bypass this section.

The FM band filter allows for 6-meter reception, but many SDR receivers are clocked at 66 MHz or so, and require a lower corner frequency on the low-pass filter.  This filter can optionally be built with a corner frequency at 30 MHz.

Amplifier:

Amplifier

Amplifier simulated with 2N5109

The amplifier is a simple wide-band zero-inductor design (found in the November 1984 edition of Ham Radio magazine, page 100: https://www.worldradiohistory.com/Archive-DX/Ham%20Radio/80s/Ham-Radio-198411.pdf).  It’s become difficult to find the classic 2N5109 transistor, so I am using the more modern BFU90Q, which has similar performance.  But I am simulating with the 2N5109 because that’s the model I could find.

The amplifier draws about 20 mA from a +12V power source, and my board includes a simple but effective filter that eliminates most noise and ripple on the DC source.

Here are the three filter sections:

filters 1

From left to right the first filter is the AM broadcast filter,.  This starts attenuating below 3 MHz, and is at least -50dB down at the top of the AM band.

Next is the 15 dB shelving filter.  In a previous filter I had two 10 dB shelf filters in series, with each of them bypassable.  This limited-size board requires a compromise, so there is just a single filter section.  The inclusion of the AM BCB filter should mitigate the effects of the simpler shelf filter configuration.

The right-hand filter is a elliptic low-pass design, that cuts off at 60 MHz.  The  attenuation in the FM broadcast band, and above, is approximately 80 dB.  This is also an excellent anti-aliasing filter for the SDR.

With the shelf filter bypassed the filter response from 3 to 60 MHz is essentially flat:

filters 3

With all filters and amplifier enabled, the overall gain at 60 MHz is about +10 dB.  The input (blue trace) is -60 dBm, and the output (green trace) is -50dBm :

filters+amp 1

And here is the schematic for the whole thing:

SchematicThe simulated performance shown above should be reasonably close to the actual thing.  At these frequencies the inductors are the largest source of simulation errors, but I am using Coilcraft inductors and their provided simulation models.  These have proven to be remarkably accurate in previous designs.

But this is a tight little board, and layout parasitics may be an issue.  You will see that the (unshielded solenoid) inductors have been oriented to reduce coupling, and (which you can’t see) the ground planes have been relieved underneath the most sensitive tuned circuits.  I do hope that the amplifier won’t turn into an oscillator, but the design and layout do give me some optimism.  I plan to have a working prototype in about a month.

Like the Swiss Army Knife, this design may not be the best tool for every job, but it should be useful in SDR receiver systems.

Acknowledgement: I would like to thank Clint Turner / KA7OEI for his invaluable advice on filters, amplifiers, and optimizing SDR performance.  His excellent blog: https://ka7oei.blogspot.com/2020/08/revisiting-limited-attenuation-high.html

 

HamSCI, AGU, WSPRSONDE-8

Good friend Rob Robinett (developer of wsprdaemon), along with leaders of the HamSCI Citizen Science Project, are at the American Geophysical Union (AGU) annual meeting in San Francisco, showing how WSPR is being used to study the behavior of the ionosphere.  One of the posters being exhibited features the WSPRSONDE-8   multi-channel transmitter currently in development at Turn Island Systems:

Poster

See more WSPRSONDE-8 information at TurnIslandSystems.com

Rant: WSPR and FST4W Timing — Why???

In this post I complain about the symbol-rate timing of the various FST4W rates.  I am adding WSPR and other FST4W rates to the Beacon Blaster ( which currently generates FST4W-120, see https://turnislandsystems.com/ for details) and am getting very annoyed with the timing variations.

So let’s start with WSPR.  The symbol rate is approximately 1.4648 baud (4FSK symbols per second), or exactly 12,000 Hz / 8192.  The FSK shift is the reciprocal of this, or about 0.6827 Hz.

OK, I have no complaints about this, the numbers are easy to work with and “8192″ is a nice power of two.  This makes it easy to use a timer-interrupt to run a digital filter at (say) 64x the symbol rate.  But really, any values for that 12,000 / 8192 fraction would be workable if WSPR were the only concern.

Now, look at the FST4W rates (from the wsjtx source code):

 if(mode=="FST4" or mode=="FST4W") { //FST4, FST4W
   if(trPeriod==15) txt=1.0 + 160*720/12000.0;
   if(trPeriod==30) txt=1.0 + 160*1680/12000.0;
   if(trPeriod==60) txt=1.0 + 160*3888/12000.0;
   if(trPeriod==120) txt=1.0 + 160*8200/12000.0;
   if(trPeriod==300) txt=1.0 + 160*21504/12000.0;
   if(trPeriod==900) txt=1.0 + 160*66560/12000.0;
   if(trPeriod==1800) txt=1.0 + 160*134400/12000.0;
 }

I assume “txt” means “transmit time”.  “160″ is the number of symbols in a message.  So the symbol rates are:

FST4-15:   12,000 / 720
FST4-30:   12,000 / 1,680
FST4-60:   12,000 / 3,888
FST4W-120: 12,000 / 8,200
FST4W-300: 12,000 / 21,504
FST4W-900: 12,000 / 66,530
FST4W-1800: 12,000 / 134,400

For the four FST4W rates, the divisors are 8200, 21504, 66540, and 134400.  The only common factor is 2.  And at that common rate of 12,000 / 2 there is no hope of programming the clock-generator chips, especially since the different symbol times drift past  each other.

Since the symbol-rate accuracy is critical to the kind of propagation measurements we are using FST4W for, I am stuck running different timer interrupt rates for each mode and speed, and only running one mode at a time.  Why didn’t they use something like this instead?

CXC4-15:   12,000 / 512
CXC4-30:   12,000 / 1,024
CXC4-60:   12,000 / 4,096
CXC4W-120: 12,000 / 8,192
CXC4W-300: 12,000 / 20.480
CXC4W-900: 12,000 / 61.440
CXC4W-1800: 12,000 / 122,880

Sure, in most modes the gaps between transmissions become a bit larger, but if this is an issue then pick some other numbers.  But at least have them related by a larger common factor!

*END OF RANT*