7
{1}}The LinPsk Handbook
10
{2}}Volker Schroer \Node%
12
{3}}dl1ksv@gmx.de\endNode{}
15
{4}}Version 0.6 , Sept. 2001
19
This Handbook describes LinPsk Version 0.6
20
LinPsk is a PSK/RTTY program for Linux . The PSK part is based on the sources of WinPsk 1.0
21
by Moe Wheatly, AE4JY.
32
{8}}Introduction\Node%
42
LinPsk is a program for operating on digital modes running on Linux.\Node%
45
LinPsk supports BPSK , QPSK and RTTY at the moment. \Node%
57
{16}} the simultaneuos decoding of up to four channels.
60
{17}} The different digital modes may be mixed
64
You can define a trigger on each channel to be notified if a text of your choice is detected.
68
You can log each received channel at a file.
72
For easy qso'ing you can define macros and for larger texts to be send you can use two files.
76
You can view the signal as spectrum or in a waterfall display. Both are scalable in the frequency domain.
77
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
81
At the Moment RTTY only supports 45 baud and 1.5 stopbits.
99
Version 0.6 additionally supports receiving and transmitting of RTTY.
103
In demo mode you can 'play' wav -\/ files that are sampled at 11025 Hz, mono.
107
I only implemented a simple interface for reading wav -\/ files, but files that were sampled by
108
the linux rec command will work ( mono, 11025 Hz).
111
{30}}Now you can select the input source in the setup menu.
114
{31}}Furthermore I changed from kdevelop 1.2 to kdevelop 1.4. That means that the Makefiles have
115
changed. So I hope that some problems with configure and the resulting Makefiles disappered.
119
The distribution now contains a user documentation.
120
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
124
{33}}Installation\Node%
130
{35}}How to obtain LinPsk\Node%
133
You can download the latest version of LinPsk from
147
Istarted with LinPsk on a Pentium with 133 MHz and 32 Mb Ram. Perhaps it still
148
works on a Pentium 90 , but I have not had the chance to try. \Node%
151
Meanwhile I use a AMD Duron , 600 Mhz with 128 MB Ram for developing and testing.
164
Besides Automake and autoconf Qt 2.x has to be installed.
165
Qt 3.x will not work at the moment.
169
A soundcard and the related Opensound Driver must be installed. If you
170
only want to have a look at the demo mode ,there is no need for a soundcard.
174
LinPsk uses /dev/audio for contacting the soundcard. This special file
175
normally exists, otherwise you have to make a link.
176
\endNode{}\endNode{}\endNode{}\endNode{}
180
{48}}Compilation and installation\Node%
183
In order to compile and install LinPsk on your system, type the following in
184
the base directory of the LinPsk distribution:
200
Since LinPsk uses \Node%
202
{54}}autoconf\endNode{} you should not have any trouble
206
Should you run into problems please report them to the author
219
LinPsk supports two modes:
229
\endNode{}\endNode{}\endNode{}
232
{63}}On the first start Linpsk is in demomode.You can run the demomode even without a soundcard installed.
235
{64}}Starting LinPsk you'll get the following window:
248
\endNode{}\endNode{}\endNode{}
258
{71}}The File menu\Node%
263
The File Menu consists of following items \Node%
275
\endNode{}\endNode{}\endNode{}
279
{78}}Open DemoFile\Node%
282
You can select a file for running different demos. Depending on the type of file you choosed in your setup
283
the selection is restricted to the resulting file type.
294
\endNode{}\endNode{}\endNode{}
302
Terminates the program
309
The settings menu contains the following items \Node%
321
\endNode{}\endNode{}\endNode{}
328
Selecting Settings results in the following window
341
\endNode{}\endNode{}\endNode{}
348
Here you decide whether to use LinPsk in Demomode or not.
352
In Demomode you can choose an input file to play with in the \Node%
354
{100}} Two different modes are supported
360
{102}} Textfile\Node%
363
The distribution contains two textfiles
373
\endNode{}\endNode{}\endNode{}
375
These files contain demosample computed with the software made by w5xd.
377
Having clicked the RX -\/ button you should read \Node%
383
{108}}Hello World\endNode{}\Node%
386
in the RX-\/ window , if you selected the bpsk.out file and\Node%
392
{111}}cq cq cq de DL1KSV\endNode{}\Node%
395
if you selected the qpsk.out file.\Node%
398
At the same time the RX on the button changes to TX.
402
{114}} wav File \Node%
405
Because of the size of the files the distribution doesn't contain wav -\/files. But you can
406
download some samples from my homepage. \Node%
415
The files were sampled with the rec program and contain a short part of real qso's
417
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
419
You can try the impacts of the different buttons in the demo mode.
427
Enter your callsign. You can use it in different macros.Some \Node%
430
won't work without a callsign set.
434
{122}}Name of userdefined button\Node%
439
You can name a button named \Node%
442
you like.If you are in TX-\/ Mode pushing this button the content of the file you entered in
445
{126}} will be sent..
446
Pushing this button in RX mode will have no effect.
450
{127}}Corresponding file\Node%
455
Here you define the name of the file that should be transmitted when you press the
458
{130}} If this file doesn't reside in your home directory
459
you have to enter the filename including the absolute path.
463
{131}}Input selection\Node%
466
Select the input device (mic or line) depending on your installation.
470
{133}}Input level\Node%
473
Select the input level. Don't overdrive the soundcard input!\Node%
476
Have a close look to the spectrum display.
477
If the plot changes to red then the level is too
479
You can control the level using a common mixer program or the Input Level control.\Node%
485
{137}}Output level\Node%
490
Sselect the outputlevel carefully !\Node%
493
You should set the outputlevel as low as the ALC of your transmitter doesn't
496
Setting output level too high will cause a broadband signal with much
497
splatter instead of narrow band signal!!!!!!!!!!!.
502
{141}}Display zero as slashed zero\Node%
505
You can select whether a zero is be displayed with or without a slash.This option only influences
506
how a zero is displayed. A zero will be transmitted as character 0 in any case.
510
{143}}PTT Control\Node%
513
LinPSk tries to detect the usable com ports for switch RX/TX mode of your transmitter.
514
Select the one you use to control your transmitter.Linpsk drives the RTS/DTR pins.
519
{145}}Time offset to UTC\Node%
522
Insert the offset from UTC to the time you use for your computer clock.
526
{147}}Station File \Node%
529
Insert the name of the file that contains your station description. If the file doesn't reside in your home
530
directory enter the name including the absolute path.\Node%
533
Of course you can enter different contents in this file, too.
537
{150}}Number of RX Channels\Node%
542
Here you select ( up to to 4) the number of channels you wish to receive simultaneuosly. How many channels work properly
543
depends on your processor power. Due to a bug changing the number of rx channels leads to a wrong display.
544
Don't be confused . Save the \Node%
546
{153}} and restart LinPsk.
550
{154}}Font Settings\Node%
553
Selecting fonts settings you reach the following menu
566
\endNode{}\endNode{}\endNode{}
572
{161}}Independently you can choose the fonts for the different rx windows and the tx -\/ window.
573
For both submenus you get the same looking window.\Node%
585
\endNode{}\endNode{}\endNode{}
590
Make the selection of your choise.\Node%
597
{168}}Colour Settings\Node%
600
Selecting Colour settings you'll get a submenu where you can select a colour settings menu for
601
each rx-\/ window depending on the \Node%
604
you've choosen.\Node%
607
The colour you've choosen is used for the window heading , the display text and button text in the
613
The colour settings menu looks like the following\Node%
625
\endNode{}\endNode{}\endNode{}
630
Make the selection of your choise.\Node%
636
{180}}Edit Macros\Node%
641
To simplify qso'ing you can define macros.
645
Selecting Edit Macros you'll get the following window: \Node%
657
\endNode{}\endNode{}\endNode{}
662
Here you can define or change Macros.\Node%
665
Beside plain text you can use variables in the text. Using these variables in a macro
666
causes in replacing the variables by their actual values.
676
{192}}@CALLSIGN@\Node%
679
The callsign as defined in the setup.
685
{195}}@THEIRCALL@\Node%
688
The content of the Their Call box. You can change its content by edititing
689
the box by hand or by double clicking in front of a callsign in the receive window.
698
The name of the remote op as defined in the Name field
707
This variable will be replaced by "de @CALLSIGN@ kn" and be sent in cw.
711
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
715
Here are some examples for macro definition:
722
@THEIRCALL@ @THEIRCALL@ de @CALLSIGN@ @CALLSIGN@ @CALLSIGN@ pse k
729
So btu @NAME@ @THEIRCALL@ de @CALLSIGN@ pse k
736
cq cq cq de @CALLSIGN@ @CALLSIGN@ @CALLSIGN@ \char92{}n cq cq cq de @CALLSIGN@ @CALLSIGN@ @CALLSIGN@ \char92{}n cq cq cq de @CALLSIGN@ @CALLSIGN@ @CALLSIGN@ @CALLSIGN@ pse kkk \char92{}n
740
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
745
{212}}Save Settings\Node%
750
This will save your actual configuration to a file named LinPsk.config, which will be loaded
751
every time you start LinPsk.
757
{216}}The control elements\Node%
766
For each RX window a trigger text may be defined independently. If the trigger is activated and
767
the defined text is detected in the text just received you'll get a beep and the window will be
768
the active RX window.The trigger itself will be deactivated by this action.\Node%
771
This feature for instance gives the oportunity to read a running qso while waiting for
778
{222}}RX Frequency\Node%
783
You can select the RX -\/ frequency by directly entering the frequecny in the frequency box by
784
clicking the up and down arrows of the frequency box or by directly clicking on the signal in the
790
If you activate AFC (Automatic Frequency Control), the frequency will be adjusted to the center of the PSK
791
signal. AFC works in a range of about 50Hz around the signal.\Node%
794
At the moment AFC doesn't work for RTTY:
798
{228}}Mode Select\Node%
801
Select the mode of operation you intend to work on. The mode is set independently for each RX window.\Node%
804
In one window you can listen to an psk qso meanwhile in the other you're listening to RTTY.\Node%
810
{232}}Record QSO\Node%
813
Activating this feature, up from now the text, received in this window, will be written to a file named
814
Rx\char95{}Debug\char95{}x. x ranges form 0 to 3 and corresponds to windownumber -\/1 .
821
The squelch control is used to set a threshold to inhibit signal reception beyond a specified level.
822
The colour of the squelch bar changes from blue to yellow if the squelch opens.\Node%
825
To change the squelch level simply click into the control.\Node%
831
{238}}TX Frequency\Node%
834
You can select the TX frequency in the same way you select the \Node%
837
If you've activated NET the TX frequency will be the same as the RX frequency. The X frequency will be adjusted,
838
when you change from RX to TX mode.
845
The RX/TX button is a toggle button. It's label describes what happens if you press the button.
846
If LinPsk starts, the button is labeld with RX. This ensures that the first possible operation
847
is to listen on the band.\Node%
849
{243}}Pressing the button the label changes to TX signaling the next
850
possible operation is to transmit.
854
{244}}Selection of the active RX Window\Node%
859
This control lets you select the active RX window. If you change from RX to TX, the TX operation always
860
uses the parameters (mode of operation, etc.) of the active RX-\/ window.\Node%
866
{248}}Spectrum Display\Node%
871
The spectrum display and the included phase display are the main tuning aid. You can choose a direct
872
frequency representation or the waterfall representation.\Node%
875
You select the appropriate mode by clicking the tab bar.\Node%
878
In the waterfall a stronger amplitude results in a brighter colour.As time goes on each horizontal frequency
879
sample line shifts down and the new one is placed on top.This gives the appearance of an waterfall.
883
Normally the spectrum reaches from 100 Hz to 2200 Hz. Changing the endpoints of the spectrum zooms the display.
887
By clicking into the display you can select the frequency of the active RX window.\Node%
890
If you overdrive your soundcard the colour of the spectrum turns to red.\Node%
899
Pressing Tune you 'll send a steady carrier. With the \Node%
902
in the settings menu you can adjust the output level. Don't overdrive your transmitter.The ALC of your transmitter shouldn't
911
Pressing this button sends "de @CALLSIGN@ pse k" in CW.\Node%
917
{264}}Clear RX Window\Node%
920
Clears the content of active RX -\/ Window\Node%
926
{267}}Clear QSO Info\Node%
929
Clears the contents of the QSO -\/ Info fields\Node%
938
Here you can fill in some QSO -\/ Infos. These are used in some macros\Node%
943
{273}}Remote Call\Node%
946
The callsign of the remote station. You can enter it by clicking into this field and
947
typing the callsign on the keyboard or you doubleclick in the active RX -\/ window
948
in front of the callsign and it will be copied in this field\Node%
957
Click into this field and enter the remote op's name by the keyboard\Node%
968
The contents of the macros will be defined in the \Node%
971
section of the setup menu\Node%
976
{284}}QSO Start\Node%
979
Only works in RX mode and switches to TX mode, sends the start macro and switches back to RX mode
988
Only works in TX mode. Sends the BTU macro and switches back to RX mode.
991
{289}}QSO Final\Node%
994
Works in RX and in TX mode. If you're in RX-\/ Mode it switches into TX mode , send the Final macro and switches
996
In TX mode the Final macro text is sent and then the mode switches to RX mode.
1005
Only works in RX mode. It is switched to TX mode, the cq macro is sent and then switched back to RX mode.
1011
{295}}Send Station File\Node%
1014
This only works in TX mode. In TX mode the content of the station file is send.
1015
The macro variables won't be evaluated at the monment.\Node%
1021
{298}}undefined button\Node%
1024
If you defined this button in the setup menu, the content of the correspondig file will be
1025
sent, if you're in TX mode. In RX mode nothing happens.\Node%
1028
The macro variables won't be evaluated at the monment.\Node%
1031
Personally I use a file to introduce myself.\Node%
1087
cdisplay.moc.cpp:45: new declaration `static void
1088
CDisplay::staticMetaObject()'
1089
cdisplay.h:47: ambiguates old declaration `static class QMetaObject *
1090
CDisplay::staticMetaObject()'
1091
cdisplay.moc.cpp: In function `void
1092
\char95{}\char95{}static\char95{}initialization\char95{}and\char95{}destruction\char95{}0(int, int)':
1093
cdisplay.moc.cpp:29: no matching function for call to
1094
`QMetaObjectInit::QMetaObjectInit (QMetaObject * (*)())'
1095
/usr/lib/qt-\/2.2.4/include/qmetaobject.h:259: candidates are:
1096
QMetaObjectInit::QMetaObjectInit(void (*)())
1099
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
1111
{324}}Running ./configure results in an error message like qt-\/.... not found\Node%
1117
You need qt-\/2.2.x to be installed. If you're shure that a proper qt-\/ version
1125
rm config.cache\Node%
1128
./configure -\/-\/with-\/qt-\/dir="Where your qt is installed"\Node%
1132
Have a look that you use the correct moc version when you run make
1139
{332}}Though I ran configure with the parameter -\/-\/with-\/qt-\/dir I get an file not
1140
found error when running make\Node%
1146
Find out where the qt header files reside and try\Node%
1155
./configure -\/-\/with-\/qt-\/dir="Where your qt is installed" -\/-\/with-\/qt-\/include="where the include files reside"
1163
{339}}Though configure worked properly, running make I get an error like:\Node%
1171
cdisplay.moc.cpp:45: new declaration `static void
1172
CDisplay::staticMetaObject()'
1173
cdisplay.h:47: ambiguates old declaration `static class QMetaObject *
1174
CDisplay::staticMetaObject()'
1175
cdisplay.moc.cpp: In function `void
1176
\char95{}\char95{}static\char95{}initialization\char95{}and\char95{}destruction\char95{}0(int, int)':
1177
cdisplay.moc.cpp:29: no matching function for call to
1178
`QMetaObjectInit::QMetaObjectInit (QMetaObject * (*)())'
1179
/usr/lib/qt-\/2.2.4/include/qmetaobject.h:259: candidates are:
1180
QMetaObjectInit::QMetaObjectInit(void (*)())
1188
Be sure to have the correct version of moc, when you run make.\Node%
1191
Probably you don't use the version of moc that corresponds to your qt-\/ version.
1193
Check where your moc resides and if you have several versions installed on
1196
Sometimes there is a link in /usr/bin to "QT-\/directory/bin/moc".
1198
Set the link appropriate or adjust your PATH-\/ environment-\/ variable that the
1199
correct moc version is to be found.
1201
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}
1205
{346}}Copyright\Node%
1209
LinPsk Copyright 2001 Volker Schroer , dl1ksv@gmx.de
1212
This program is free software; you can redistribute it and/or modify
1213
it under the terms of the GNU General Public License as published by
1214
the Free Software Foundation; either version 2 of the License, or
1215
(at your option) any later version.
1217
This program is distributed in the hope that it will be useful,
1218
but WITHOUT ANY WARRANTY; without even the implied warranty of
1219
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1220
GNU General Public License for more details.
1222
You should have received a copy of the GNU General Public License
1223
along with this program; if not, write to the Free Software
1224
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
1230
\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endNode{}\endFOT{}
b'\\ No newline at end of file'