262 |
kaklik |
1 |
Installation and setup notes for sidd-0.93, 15th March 2005.
|
|
|
2 |
------------------------------------------------------------
|
|
|
3 |
|
|
|
4 |
You have unpacked the tgz file and have 3 files:-
|
|
|
5 |
|
|
|
6 |
* README - this one
|
|
|
7 |
* sidd.c - source code
|
|
|
8 |
* sidd.conf - a sample configuration file.
|
|
|
9 |
|
|
|
10 |
Installation steps
|
|
|
11 |
------------------
|
|
|
12 |
* 1/
|
|
|
13 |
You will need FFTW3 from www.fftw.org, if not already installed.
|
|
|
14 |
|
|
|
15 |
* 2/
|
|
|
16 |
Compile the sidd source with
|
|
|
17 |
|
|
|
18 |
gcc -Wall -O4 -ffast-math -DPENTIUM -Wall -o sidd sidd.c -lfftw3 -lm
|
|
|
19 |
|
|
|
20 |
which produces an executable sidd in the current directory.
|
|
|
21 |
|
|
|
22 |
* 3/
|
|
|
23 |
Edit sidd.conf to suit your requirements.
|
|
|
24 |
|
|
|
25 |
* 4/
|
|
|
26 |
Start sidd in verbose foreground mode with the command
|
|
|
27 |
|
|
|
28 |
./sidd -vf
|
|
|
29 |
|
|
|
30 |
* 5/
|
|
|
31 |
Examine the log file - it should look something like
|
|
|
32 |
|
|
|
33 |
2005/03/15 20:03:17 logfile /root/sidd.log
|
|
|
34 |
2005/03/15 20:03:17 los threshold 0.060, timeout 5 seconds
|
|
|
35 |
2005/03/15 20:03:17 band LB 18200 18400
|
|
|
36 |
2005/03/15 20:03:17 band AN 19480 19680
|
|
|
37 |
2005/03/15 20:03:17 band SK 22050 22150
|
|
|
38 |
2005/03/15 20:03:17 band BG 23300 23500
|
|
|
39 |
2005/03/15 20:03:17 band TV 20190 20340
|
|
|
40 |
2005/03/15 20:03:17 band NV 16300 16500
|
|
|
41 |
2005/03/15 20:03:17 band B1 20800 21000
|
|
|
42 |
2005/03/15 20:03:17 band B2 22650 22850
|
|
|
43 |
2005/03/15 20:03:17 requesting line input gains left=77 right=100
|
|
|
44 |
2005/03/15 20:03:17 line input gains set to: left=77 right=100
|
|
|
45 |
2005/03/15 20:03:17 taking data from [/dev/dsp]
|
|
|
46 |
2005/03/15 20:03:17 requesting rate 48000
|
|
|
47 |
2005/03/15 20:03:17 actual rate set: 48662 samples/sec
|
|
|
48 |
2005/03/15 20:03:17 soundcard channels: 1 bits: 16
|
|
|
49 |
2005/03/15 20:03:17 resolution: bins=2048 fftwid=4096 df=11.880371
|
|
|
50 |
2005/03/15 20:03:17 spectrum file: /tmp/sidspec
|
|
|
51 |
2005/03/15 20:03:17 using SCHED_FIFO priority 1
|
|
|
52 |
2005/03/15 20:03:17 sidd version 0.93: starting work
|
|
|
53 |
2005/03/15 20:03:17 using output file [./050315.dat]
|
|
|
54 |
|
|
|
55 |
* 6/
|
|
|
56 |
Now tail the output file (in my example, ./050315.dat). The first
|
|
|
57 |
three columns are the timestamp (seconds from 01/01/1970), peak signal
|
|
|
58 |
level (range 0 to 1), and rms signal level (also range 0 to 1).
|
|
|
59 |
|
|
|
60 |
Adjust your mixer gain settings so that the peak hovers around the
|
|
|
61 |
range 0.1 to 0.5 (the rms will be around 1/2 or 1/3 of the peak, depending
|
|
|
62 |
on your level of impulsive noise and sferics).
|
|
|
63 |
|
|
|
64 |
* 7/
|
|
|
65 |
Plot the spectrum file, in my case /tmp/sidspec. This file is two columns,
|
|
|
66 |
bin centre frequency in Hz, and relative power. The file is re-written by
|
|
|
67 |
sidd every 10 seconds or so, depending on your sidd.conf settings. Adjust
|
|
|
68 |
antennas, receivers, etc to obtain desired signal to noise ratios. You
|
|
|
69 |
may want to reconsider the band settings in sidd.conf at this point too.
|
|
|
70 |
|
|
|
71 |
* 8/
|
|
|
72 |
Once you're happy with the gain settings, stop sidd and run it again with
|
|
|
73 |
the command
|
|
|
74 |
|
|
|
75 |
./sidd -m
|
|
|
76 |
|
|
|
77 |
This will read and display the applicable mixer gain settings. Now edit
|
|
|
78 |
your sidd.conf, commenting in the gain commands and putting in your gain
|
|
|
79 |
settings. Then, whenever sidd starts, it will setup the mixer with these
|
|
|
80 |
settings. All mixers will have a line input gain control, but only some
|
|
|
81 |
will have an overall input gain control and/or a record level control.
|
|
|
82 |
The -m option will report what you need to put in the config file.
|
|
|
83 |
|
|
|
84 |
* 9/
|
|
|
85 |
Set your PC clock and activate your favourite time synchronisation
|
|
|
86 |
software. Make sure it slews the clock rather than stepping the time.
|
|
|
87 |
|
|
|
88 |
* 10/
|
|
|
89 |
Restart sidd in background with
|
|
|
90 |
|
|
|
91 |
./sidd -v
|
|
|
92 |
|
|
|
93 |
Inspect the log file to make sure your mixer settings have been applied.
|
|
|
94 |
|
|
|
95 |
* 11/
|
|
|
96 |
After a period of time, plot some of the data from the output file.
|
|
|
97 |
Output file columns 4 onwards correspond to the 'band' commands in the
|
|
|
98 |
order they appear in sidd.conf. Each column is a total relative power,
|
|
|
99 |
so you will need to apply a square root function during plotting if you
|
|
|
100 |
want to display relative amplitudes.
|
|
|
101 |
|
|
|
102 |
* 12/
|
|
|
103 |
After a midnight crossing, make sure sidd has switched to the next
|
|
|
104 |
output file.
|
|
|
105 |
|
|
|
106 |
Command line options
|
|
|
107 |
--------------------
|
|
|
108 |
There are just a few command line options - most controls are
|
|
|
109 |
in the config file.
|
|
|
110 |
|
|
|
111 |
-v Be a little more verbose with log messages.
|
|
|
112 |
-f Run in foreground. By default, sidd detaches from the process
|
|
|
113 |
group and terminal and becomes a daemon. In foreground mode,
|
|
|
114 |
log messages are duplicated to stderr.
|
|
|
115 |
-m Interrogate the soundcard mixer and report settings, then exit.
|
|
|
116 |
This option overrides any others.
|
|
|
117 |
|
|
|
118 |
Miscellaneous notes
|
|
|
119 |
-------------------
|
|
|
120 |
*
|
|
|
121 |
sidd will set the soundcard to the nearest available sample rate to that
|
|
|
122 |
specified in sidd.conf
|
|
|
123 |
|
|
|
124 |
*
|
|
|
125 |
Make sure you have enough disk space. The example sidd.conf with 8 bands
|
|
|
126 |
generates files of about 100Mbytes per day, which compress down to about
|
|
|
127 |
30Mbytes. Arrange scripts for plotting. Arrange scripts for compressing
|
|
|
128 |
and archiving files that are a few days old.
|
|
|
129 |
|
|
|
130 |
*
|
|
|
131 |
You can specify an ordinary file or a pipe as the input 'device' instead
|
|
|
132 |
of /dev/dsp. In this case, you must set the sample rate in sidd.conf
|
|
|
133 |
to whatever the actual sample rate is. sidd is looking for unsigned bytes
|
|
|
134 |
in 8 bit mode, or signed words in 16 bit mode.
|
|
|
135 |
|
|
|
136 |
*
|
|
|
137 |
Once sidd has started up and set the mixer gains, it no longer takes any
|
|
|
138 |
notice of the mixer. Therefore once sidd is running, a rogue user can
|
|
|
139 |
mess things up by twiddling the mixer settings with Xmixer or some other
|
|
|
140 |
utility. Kill off any mixer control panels to avoid the risk of any upset.
|
|
|
141 |
|
|
|
142 |
*
|
|
|
143 |
If your PC is set to autoboot after a power outage, you might want to put
|
|
|
144 |
a startup command for sidd into /etc/rc.d/rc.local or similar - but make
|
|
|
145 |
sure the RTC setting commands are done first.
|
|
|
146 |
|
|
|
147 |
Revisions
|
|
|
148 |
---------
|
|
|
149 |
v0.9: Original.
|
|
|
150 |
v0.91: Fixes a header file problem with some gcc.
|
|
|
151 |
No longer produces a static binary.
|
|
|
152 |
v0.93: Another bug fixed.
|
|
|
153 |
Added control of mixer input and gains.
|
|
|
154 |
Added stereo mode to make a 2 channel monitor.
|
|
|
155 |
|