Showing posts with label digimodes. Show all posts
Showing posts with label digimodes. Show all posts

Tuesday, January 29, 2008

Z100 -> P100!


After a little discussion with Jack Smith about the inner workings of his Z100 Tuning Aid (last post), one thing led to another.

The result is another little Python utility that does much of what the Z100 does, but in software under Linux.

The scoop and download are available here.

Thursday, January 24, 2008

A Z100 Arrives

This is the Z100 "Tuning Aid" from Clifton Laboratories, as described by Jack Smith K8ZOA in the January/February, 2008 issue of QEX. I bought the kit and put it together as sort of a post-Christmas present to myself.

The Z100 is a pseudo-spectrum analyzer, using a simple zero-crossing detection and averaging algorithm as I understand it. It is intended to help "zero beat" a received CW or RTTY signal so that you can respond on the same frequency within a few 10s of Hz. (It's not zero beating really. With current rigs, you want to tune to a certain offset "spot" audio frequency that corresponds to your transmitter's output.)

A few notes on the Z100 so far

  • Assembly was straightforward until it came to making the LED bar-graph indicator, which you must construct out of individual LEDs and spacers. Getting a neat result is tricky. I judge I managed it fairly well on the first try, but you need to read the instructions carefully. A number of hams have contributed handy alternative techniques that Jack includes in his write-up.
  • Assembly of the board into the case, along with a clear lens and an optical filter film is the next tricky part. All in all the mechanical work with the LEDs and the case seemed overly difficult. It would have been very helpful if the filter film could be dispensed with -- e.g., if a neutral density Lucite lens could have been used.
  • Operation (for an hour so far!): The Z100 is easy to connect and use. It does require reasonably strong CW signal (i.e. fair SNR) to make the CW note show up clearly out of the noise. I seem to work weak stations quite a lot, and the tuning aid may be difficult to use for them. A more intelligent algorithm would be able to pick a coherent signal out of the noise much better, but that would be beyond the capability of the simple PIC processor, I reckon. It would boost this kit well out of the $60 price category.
  • Jack is to be commended for producing a very "open source" project. The PIC code is available for study and modification, and the QEX article and product documentation gives full design details. (A perfectionist might say that a true open source project should also distribute Gerber-type files for the PCB design, but that would be a quibble!)
This kind of tuning aid should be very helpful to any CW or RTTY operator. (I suppose it would make a reasonable guitar tuner, too...) In an age of DSP radios, this capability should have been incorporated into the transceiver itself, but alas this is not yet true of my radio.

Saturday, October 06, 2007

Bandpass Controls for HF Digimodes

When working PSK31 or other "digimodes" on HF (high frequency) radio, we commonly use computer soundcards to analyze and transmit data. I like to use the Linux program fldigi for this, along with my Ten-Tec Orion transceiver.

The soundcard takes in the entire audio output from the Orion, typically 100 - 3,000 Hz. Fldigi (and similar software) allows you to point to a transmission of interest on a "waterfall" spectral display. This automatically sets the decoder to analyze data in a small band around the cursor using digital filtering.

This works well when the bands are relatively quiet, but when you have a band crowded with strong signals, the signal of interest can be strongly affected by "out of band" signals (but still in the 3 kHz audio region) that key the receiver's AGC (automatic gain control).

In this case, we need narrower IF (intermediate frequency) filtering than 3 kHz. Fortunately, a DSP (digital signal processing) rig like the Orion provides "infinitely" adjustable IF bandpass characteristics, so it is possible to "zoom in" on the signal of interest, largely rejecting any signals outside the small IF passband.

I have written a small Python/wxPython application "oFilter.py" that puts up a panel to allow Orion bandpass control from the same screen as fldigi. (Since fldigi communicates with the Orion via Hamlib at the same time as oFilter, there is a small potential for I/O conflict, but this is not a serious problem.)

Here are a few screenshots to show what is going on. Ultimately, it would be great to integrate the oFilter functions into fldigi or a similar program, using convenient mouse controls.


The PSK31 band at 14.070 MHz with many Europeans
coming in the 3 kHz default bandpass.


"Zooming in" the IF bandpass to 200 Hz,
more-or-less centered on the signal of interest.


Zooming in to a 100 Hz bandpass (minimum available).


The oFilter.py application.