V3 Chapter 23

114. Chirp ( 2006-12-05 to 2006-12-05 )

I have the chirp working now. The software was back checked against the chirp spread sheet available on the SETI League website. It appears that the average chirp at 1420.000,000 is about 0.12 Hz/sec. Because the Icom R7000 receiver minimum tuning is 100 Hz it takes about 14 minutes for the receiver to move one notch. I ran the system against the RA 18 carrier I found and I could see it change the waterfall when the frequency changed. It's not much but it does work.

113. Dead Band( 2006-11-39 to 2006-12-04 )

I have been troubled that the Paraclipse antenna will not reach the target Azimuth location with any better accuracy than about 4 degrees. After reading the Kerr documentation closely I realized that the Azimuth rotor motor was reaching the edge dead band and stopping. The dead band is the point in the pulse width modulation where the motor cannot move the antenna. For example; if the antenna moves fine at 10% PWM it may stop moving at 5% PWM. The drive has a Dead Band Compensation function that I had set to 1. Changing this to 128 made the antenna move to the target but then the motor was left 'humming' - trying to move to some new small target. I changed down to 32 but then the error returned. Now it is set at 50 and seems to solve the problem.

112. Now - An IIR filter done right( 2006-11-29 to 2006-11-30 )

Marko pointed out that I must have done the IIR filter on its side (average across the buffer rather than from the last sample) and he was right ( Bad engineer, Bad engineer - now go sit in a corner) so I turned it around and it does work much better.

This picture was done with 'a' (FIIRa in the code) set to 0.02 and that does seem to be optimum. I like the way the waterfall 'slides' into the average.

Delphi code Corrected

if WaterfallOperation then
if FIIRFilter then // IIR filter is:a * input + (1-a) * old_output Dynamic arrays start at index 0
WaterBufferLast[i - 1] := (FIIRa * FFT.Magnitude[i]) + ((1 - FIIRa) * WaterbufferLast[i - 1])
WaterBufferLast[i - 1] := FFT.Magnitude[i];
end; {waterfall Operation}

112. Integration Thoughts( 2006-11-28 to 2006-11-28 )

I have collected ten different jpgs from the output of the IIR averaging suggested. Each one is marked with the value of 'a' in the formula. Each jpg also shows the result with and without the IIR (I turned off the IIR about 1/2 through the collection). Results below.


  1. Values of 'a' below 0.01 completely loose the signal
  2. Values of 'a' above 0.08 show no effect of the average (look the same as un-averaged signal)
  3. It looks to me like values of 0.5 or 0.6 are the best and do improve over no average at all
  4. The IIR adds about 1% to the CPU load.

Argus Member Marko Cebokli made the suggestion that I start with a simple IIR filter after the FFT of:

new_output = a * input + (1-a) * old_output.

The smaller the a, the more averaging. A typical a would be 0.02 or so. I'll put this in the software and see how it affects the signal and the weight its putting on my CPU.

The integration question needs to be answered first since it seems to be the most difficult. Here is the problem:

  • I collect data from the output of a receiver using a module which gives me 20 kHz bandwidth. The audio stream is routed to a standard PC audio card in mono mode, 16 bit quantization at 44100 Hz sample rate.
  • The digitized output is fed to an FFT with a Spectrum Size selected by the user. I usually run it at 1024 points which produces 512 bins of data.
  • Each output of the FFT is fed to a waterfall display who's width is the same as the bin count. Its also recorded as raw PCM data.
  • A waterfall frame, one complete filling of the waterfall image, takes about 30 seconds to complete
  • Ten minutes of recording produces 44 Meg of raw WAV data and about 25 jpg's of the waterfall (300 Kb each)

The basic layout is shown below

A couple of Ides

If I build the Integrate Buffer after the FFT then I would only draw and save one jpg image at a time. If I build the Integrate Function after the Waterfall then I would not need the buffer.

I would like any source to fill its bins and not 'slop' over because I integrated to long and Doppler pushed its frequency up or down. It seems like a source width should be assumed to be about 10 Hz. I can (and will) put Doppler chirp on the receiver frequency.

My beam width is about 3 degrees at 1420 mHz. I can track most points for about an hour.

Questions are:

  1. Which should I build the Integrate Buffer or the Integrate Function?
  2. If I build the buffer how many lines should I integrate before I draw the result on the waterfall. What should the integration be (average, moving average, RMS, what)?
  3. If I build the Integrate Function how many waterfall jpgs should I build and integrate before I draw the result. What should the function be for the RGB triples for each pixel?

I know there are a lot of variables but some help would be appreciated. Any ides?

111. Remaining Tasks ( 2006-11-26 to 2006-11-26 )

Now that the bulk of the SETI software is working to my satisfaction its time to make a To Do list for the remainder of the development.

  1. Observation Schedule - Staring at a waterfall display for hours on end is not a proper way to spend your life. After a few hours of it you not only see lines, you see stripes, funny shapes and on one late night occasion the face of God. I need a way to collect the data automatically moving from position to position and from frequency to frequency and saving the jpgs along the way for later quick perusal for candidate lines. Since the WAV data and the jpg images are all tagged with SML if I see something I like I will know where and when it was picked up. I think I know how to proceed with this task.
  2. Doppler - I have to decided to include this in the main Control Panel software. I know how to implement it and its not that big of a job so I guess I'll write the software. It would be interesting to install Doppler and then train my system on the carrier that I found at RA 18 and see if the 'S' shape is visible to the eye
  3. Integration - I had thought about this implementation several years ago and now its time to make it work. The decision here is what to integrate and how. I could:
    • Average three or more 20 kHz chunks of the audio spectrum before passing it to the waterfall
    • Average each line of the waterfall three or more times before drawing it on the visible image
    • Average each frame of the waterfall three or more times before drawing it on the visible image.
  4. Remote Client/Server - There are a few bugs left in this software that makes it hard to select a receiver. The WiNRADiO receiver doesn't seem to come on correctly. I plan to use the Client/Server in the local mode for a couple of reasons. First; it will unload my development machine a bit since it wouldn't have to manage the receivers and antenna and second; this would allow other stations to use the system when I'm not and to listen in when I am.

I did collect data at RA 00 for SETI@Home candidate SHGb00+12a. Its in the archive but nothing interesting.

110. Five Stars ( 2006-11-26 to 2006-11-26 )

I thought I would add the five stars selected by Margaret Turnbull - Carnegie Institution, to the web site just to keep them on record. These could be a set of candidate searches as well as the SETI@Home Best Gaussians

  1. Beta CVn: a Sun-like star 26 light-years away in the constellation Canes Venatici (the hound dogs)
  2. HD 10307: has almost the same mass, temperature and iron content of the Sun
  3. HD 211 415: has about half the metal content of the Sun and is a bit cooler
  4. 18 Sco: a near match for the Sun in the constellation Scorpio
  5. 51 Pegasus: a Jupiter-like planet has been found here; may also host planets like Earth

109. Back To Work ( 2006-11-25 to 2006-11-25 )

After a lot of thrashing around I finally solved the problem (Item 108). It turned out that I had a software bug that was addressing the elevation servo and causing it to not move down. Now fixed and I am back to the study of the RA 18 line that I have found.

A quick test this morning and this carrier was discarded as ET.

108. Kerr module re-think ( 2006-11-19 to 2006-11-25 )

I had decided that I would get around the problem of new/old Kerr module on the elevation motor by simply using an old module for elevation and a new one for azimuth. That worked fine for controlling the filter but uncovered a different problem. Now I cannot set the motor servo to zero for elevation. This is because the old modules do not allow that function. So I solved one problem and created another. An old story.

So now I think I will go with another idea that I had. I will replace the elevation module with a new version - that will solve the reset to zero problem, and then add a third module, old version, to the system to control the filter. I'll work on this today.

Third Module

I have *placed* the new module in the control box, connected it up and am now testing it. It is the one on the far left in this picture. It seems to work so far.

Control Box Closed up

107. Return of the Line ( 2006-11-16 to 2006-11-17 )

Tonight I looked back at SHGb17+09a (see the RA 17 Archive) but moved the antenna into RA 18 I found the line again at the maximum azimuth and elevation of my antenna. I did collect 45 meg worth of WAV and some nice jpgs. Still looking at this line and requesting help from Argus stations in analysis.

106. Selecting an Observation Schedule( 2006-11-09 to2006-11-16 )

I will use SET@Home list of Best Gaussians, one for each hour of RA as my candidate list. This list has a lot of shortcomings:

  • Thecoordinates only shown in one hour increments but one hour DEC has 15 degrees in it. My 3 degree beam width antenna can be in any of the 5 'slots'.
  • The DEC angle is in one degree increment but since my antenna pointing accuracy isn't much better than that - it will be OK.
  • The frequency shown in Barycentric Hz for each match and there are several matches with different frequencies. I could decide that the first two are upper and lower search limits but for now I'll just take the one on the left.

The principal criteria will be that the candidate cannot be higher than 20 degrees DEC, must be inside the frequency range of my Band Pass Filter, away from local structures (my neighbor's pine tree etc) and not near a system bird.

RA Candidate ID Frequency
00 SHGb00+12a 1420577460
01 SHGb01+09b 1421189776
02 SHGb02+08c 1419502263
03 SHGb03+08e 1420526317
04 SHGb04+10a 1418987043
05 SHGb05+08d 1420292354
06 SHGb06+10a 1419852771
07 SHGb07+13j 1419103682
08 SHGb08+11b 1419523580
09 SHGb09+11b 1420173012
10 SHGb10+11b 1419568992
11 SHGb11+08a 1420287700
12 SHGb12+09a 1420591707
13 SHGb13+12f 1420088600
14 SHGb14+09b 1421121953
15 SHGb15+08a 1421043851
16 SHGb16+08c 1420517470
17 SHGb17+09a 1420645897
18 SHGb18+13a 1418913961
19 SHGb19+11a 1419368211
20 SHGb20+08a 1420475984
21 SHGb21+20e 1420005582
22 SHGb22+08a 1420694872
23 SHGb23+08b 1419988464

Because of the pointing and frequency uncertainties these candidates are really "in the vicinity of" rather than the candidate itself. Still in all you have to start somewhere.

So this is how I'll proceed:

  1. Start the system, home the Paraclipse.
  2. Open the Sky Map and find the RA best covered by the search area. Right now this is 23 hrs.
  3. Left Click on the left most point in 23 RA at 8 degrees DEC. The antenna will move to this point. Right now this is RA 23:24 and DEC 07:36
  4. Right Click on the same spot to set the Star icon and then turn on the Lock switch. The green Lock LED should come on the hold the antenna at that DEC/RA
  5. Start the Receiver and set it to the candidate frequency. Set the receiver mode to DRM
  6. Open the File Manager and set up the SML to id the resulting WAV and jpg files.
  7. Open the Spec Ana and set up the Spectrum Size (I like 2048) and the Vertical Range to get a reasonable amount of grass.
  8. Set Record and select a folder for this candidate.
  9. Set AutoSave for thirty minutes and turn on the Waterfall.
  10. Let the system run for the hour or until the antenna icon reaches the right side of the search are.
  11. Burn a CD and mark it with the SHG of the candidate, the RA and the date.
  12. Clear all but a couple of jpgs and the SML file to the archive.