From Tučňák Wiki
Jump to: navigation, search
Setup menu

Since 4.45 you don't need to save configuration. After OK button the configuration is saved to file ~/tucnak/tucnakrc

Contest defaults

Contest defaults

There is possible to set these items in this menu:

  • Callsign - your callsign in contest
  • Club - club callsign only for EDI export, not used in Tucnak
  • Your WWL - locator of your QTH (6 characters). In doubt use excellent
  • PAdr1, 2 - contest QTH in human form
  • Your EXC - your optional exchange if used
  • RS, RST - your default sent report for SSB and CW
  • DXC Hostname - hostname of your favorite DX cluster node
  • TCP Port - TCP port of DX cluster node
  • DXC Username - your user name
  • Password - DXC password
  • KST Username - your user name on [ON4KST chat]
  • Password - Chat password
  • KST Name - Your name set after connect by command /set name

Band defaults

Band defaults

This submenu contains setting of all bands. Active bands (QRV is checked) are separated from other bands. You can take away bands which are never used (as 220MHz in Europe).

You can enter single band setting by pressing ENTER key. Item `QRV on this band' is usually set for all bands where are permit transmittes.

This setting is the only one which must be set. Other items are better set here too but it isn't necessary.

QRV setting in this contest isn't effect on this place. Category can be one of Multi/Single/Check. If you select Other, you can enter arbitrary category f.e. 1L, 1H... for NAC.

TX and RX Equip settings contains description of equipments. Power is written with units. ASL and AGL means a height between antenna and sea/ground. Inserted values are in meters, delimiter is semicolon.

Fill operator's callsigns into Operators field delimitely by semicolon. It is possible to fill it by Fill operators in menu Contest.

Remark field is assigned for remarks to contest commitee.

Single/Multi categories are categories valid (probably) only in Czech republic. They are used mostly for EDI files naming.

Band boundaries are entered in kilohertz. At this time they are used for DX-cluster spot filtration.

Adif band name is band description used in ADIF format.

QRG for skeds is initial frequency entered by operator to inform other operators about clean/CQ frequency on which they should take skeds. Format is not limited, you can use any string like ".120" etc.

Transverter's LO QRG is frequency which tucnak adds to frequency read from transceiver's CAT and result shows on the screen: f_\mathrm{display}=f_\mathrm{CAT} + f_\mathrm{lo} [Hz] Note some radios support transceiver mode for example radio is tuned on 14 MHz, CAT reports also 14 MHz but transceiver's display shows 144 MHz. LO frequency must be computed by operator, you can use Fix QRG in Edit menu.

This is local frequency for one band. Normally enter 0 to use Global LO frequency.

Band switch value is value sent to some keying devices to inform your contest hardware about active band in Tucnak.

Responsible operator

Responsible operator

There are set information of responsible operator for communication with contest commitee in this dialogue. All items are in free format and don't need commentary.

CW keying

CW daemon

Since version 2.0 Tucnak does not use the external program 'cwdaemon' for keying and transmitting CW. Its functions are included in Tucnak.

Keying methods are:

  • None - no CW output is used
  • parport - Under linux it uses kernel module ppdev for keying. Under Windows it uses INPOUT32.DLL to access LPT port. Recommended device is Dávač 3.3. Pin configuration is:
    • 1 STROBE - grounded when active.
    • 14 AUTOLF - switch TRX modulation input to microphone or soundcard output. Also indicate CW CQ to allow complex device to CQ on more bands simultaneously.
    • 16 INIT - PTT
    • 17 SELECT IN - CW
  • ttys - uses control pins of serial port. Pinout for D-SUB9:
    • 4 DTR - CW
    • 5 GND - ground
    • 7 RTS - PTT
  • ttys single pin - same as ttys for PTT and CW on single pin (FT8x7 via DATA connector).
  • davac4 - USB SSB/CW keyer Davac4 by OK1ZIA. No device is required, it uses USB device A600:E110.
  • cwdaemon - controls cwdaemon by Joop PG4I. Obsolete, not fully working (CQ repeat). Please use direct access to keying device. You can also use M5 ESP32 CW keyer over TCP/IP.
  • winkey - uses Winkey by K1EL
  • winkey TCP - uses Winkey over TCP/IP. On the other side, you can use TCP to serial converter f.e. GetBlue or socat:
socat /dev/ttyUSB0,raw,echo=0 TCP-LISTEN:6789
  • Hamlib - sends CW to radio using Hamlib. Only some newer radios have support, sometimes with limitation (limited size of message, speed have to be set on radio, no CQ repeat).

Keying device f.e. /dev/parport0, /dev/ttyS0, /dev/ttyUSB0, COM1. In case of Windows LPT port write base port number in hexadecimal form f.e. 0x378. You must first run Tucnak as Administrator to allow INPOUT32.DLL to install kernel driver.

Hostname, UDP port are reserved and not used yet.

Initial speed says keying speed in WPM after program start. You can change it using PageUp or PageDown keys.

Weighting - changes ratio of mark and space in CW.

t_\mathrm{mark}=\frac{1\,200\,000}{\mathrm{speed}}+500 * \mathrm{weight}\ [\mu s]

t_\mathrm{space}=\frac{1\,200\,000}{\mathrm{speed}}-500 * \mathrm{weight}\ [\mu s]

WPM range describes the speed that can be set with PageUp/PageDown keys. Minimal WPM is also used for Winkey - it can handle only 31 speed steps. Normally minimal speed is set to 10 WPM which means winkey range 10-41 WPM. If you need for example 50 WPM, set minimal WPM to at least 19.

Use speaker - beeps using program soundwrapper. Soundwrapper must be setuid to root to access /dev/console.

PTT lead in - (experimental feature) Tucnak turns on PTT some time before CW to key on TRX and PA's to prevent "eating" of begin of code. It also allows the TX chain to stabilise before sending. Suggest 100 -> 250 ms.

Winkey options

Winkey options

Fast initialisation means that Tucnak doesn't wait for Winkey initialisation. It can be used mostly for winkey2 which is commonly supplied from USB. It has no effect for other version-depending commands (buttons), tucnak reads winkey version.

Use speed pot/use buttons - doesn't need comment. Normally is no reason to turn they off.

Curtis A/B, Ultimate, hand bug - set's paddle mode. I think optimal is Curtis B.

Paddle swap - also without comment :-)


Audio options

Since 2.0 Tucnak takes also SSB functionality for CQs and traffic recording.

Common options

Alsa, OSS, SSBD are supported "audio drivers".

Record traffic switches on/off recording band activity on receiving. If this option isn't active then all next options are irrelevant. To prevent consuming of all free space, use options Max. record duration and Minimal disk free space.

Record format option describe coding of output file. Supported options are.

  • PCM 8 and 16 bits
  • Logarithmic PCM u-law and A-law
  • IMA and MS adaptation PCM
  • GSM version 6.10 (preferred for me)

PCM coding is suitable for conversion to other formats (MP3, Ogg). GSM coding has low size. One minute of recording have size about 130 kB of disk space. That is less then 200 MB for 24 hours. This coding doesn't have to supported by your favourite player! GSM format replay for example mplayer (with codec) or sndfile-play distributed with libsndfile.

Option Channels sets number of sound channels. Set it to 1 (mono). You can set it to 2 or 4 it depends on your sound card capability.

Sample rate sets the number of sample per second. `CD' quality has value 44100. This value is needless for radio activity. It's recommended to lower value to half (22050) or quarter (11025) because some programs or sound cards can't work with other values.

Playback volume provides possibility to set playback volume for SSB CQ. Enter -1 to disable this feature. Common valid volumes are 0 to 100 but can be different if you use some special hardware with fancy cost-down.

Note in versions prior 2.26 is bug that doesn't allow to load negative value from rc file. As workaround you can try to enter invalid mixer device.

Capture volume the same for traffic recording.

Template for recorded filename is template for naming recording files. Description of possible macros you can find in section CQ macros.

Alsa options

Alsa playback device and Alsa capture device hold Alsa devices, plugs etc. Valid values are for example:

  • default - default device in your configuration
  • hw0,0 - first card, first PCM (first DAC)
  • hw0,1 - first card, second PCM (second DAC, f.e. Ensonic ES1371)
  • hw1,0 - second card ...
  • plughw0,0 - see Alsa documentation
  • dmix
  • pulse - recent versions of non-Debian linux use "PulseAudio" sound system. Tested [G1OGY](Playback ONLY) on Ubuntu 10.04LTS & Ubuntu 11.10.

Tip: run tucnak -i from terminal to see all detected Alsa soundcards

Period time is maximal amount of time for holding samples in card buffer for capture. Rasonable values are in hundreds (tenth of second).

Buffer time is maximal total size of buffer. Must be greater than Period time, f.e. 4*Buffer timer.

Alsa mixer device f.e. hw0, hw1, ...

Capture source button shows submnenu for capture. In menu are all detected sources on specified soundcard.

OSS options

OSS DSP describes path to special file which is connected with sound card kernel driver. Typically is /dev/dsp.

Max. num of fragments tells number of buffer fragment which can be holded in buffer. If you have problems with recording or witdh transition RX -> TX, try to set to 4 or similar small number. Then check recorded files for buffer underruns.

OSS mixer path to OSS mixer. typically /dev/mixer.

Record source - input for recording signal.

SSBD options

Currently unimplemented! SSBD is now obsolete. Settings is here for eventual future control of other software/devices (PowerSDR, digimodes...)

SSBD hostname and UDP port - set IP address and UDP port of ssb daemon.


Tucnak can not detect record device

Modern soundcard have shared connectors and can detect device plugged into. Connect microphone and if question is showed, answer Microphone.

If you want to record contest traffic from radio, check that plugging is detected when plugged. If not, try to do some hardware fix - maybe resistor about 10kΩ between signal and ground can be solution (untested).

Under Windows 7/Vista, right-click over the Speaker icon in system-tray (next to clock) and choose Recording Devices. This opens the Recording tab of "Sound" in the Windows Control Panel. Show then enable all the disconnected and disabled input devices.

Tucnak does not record band traffic

    1. Is Record traffic on?
    2. Is Max. record duration set enough value?
    3. Is Minimal disk free space set to higher than actual free space?
    4. Don't you use cwdaemon? In 2.33 the bi-directional communication is broken so Tucnak don't know when CW stops
    5. Isn't contest more than two days old? When is, tucnak thinks you only viewing old contest.


The list of all CW texts are showed after selecting this item. There is showed the key for running the message in brakes. Character `R' means that the message is repeated (CQ). Also is showing start of text.


There are these items in dialoque for setting CQ:

text of CQ. You can use plain text and macros

speed is normally undefined but you can define speed only for this CQ (f.e. for fast 73)

repeat CQ will be repeated until you press ESC, TAB or other CQ key

breakable CQ is interrupted when operator writes to main input line

delay determines time between CQ messages

allow if... allows to run message if there is any macro undefined. Typically you don't want to give empty string if you have no callsign entered.



filename - file which is played as CQ. You can use macros f.e. /home/user/tucnak/cq/$MC_$O.wav to have multiple files for more callsign and more operators. Some audio output devices can have limitations to the audio format - samplerate, channels.

repeat and delay has same effect as in previous chapter

breakable CQ is interrupted when operator writes to main input line

CQ macros

It's possible to define macros in texts of CW CQ and in name of SSB CQ file. Macros are case insensitive.

  • $$ - character $
  • $B - callsign of opposite station if differs from sent $C. Useful for "$B TU 73" in run mode. Does not work with Winkey and cwdaemon.
  • $C - callsign of opposite station. Warning! Callsign may contains stroke then can be problem to use macros in filename of CQ SSB. Look at $V
  • $D - date of contest (20031228)
  • $E - if contest code was entered during recording, string "code" will be added. Useful for post-contest record check, you can see important files by their filenames
  • $I - contents of inputline. Dots are replaced by question marks. Good idea is to follow $I by question mark in CQ definition.
  • $N - contest number from opposite station
  • $O - operator's callsign (for SSB CQ filenames)
  • $R - report from opposite station.
  • $S - serial number of record sample
  • $T - contest directory (/home/ok1zia/tucnak/20031004.2)
  • $V - callsign of opposite station, the stroke character is exchanged by the underline character
  • $W - locator of opposite station
  • $X - optional exchange from opposite station
  • $MC - my callsign
  • $MN - contest number to opposite station. For band or for all bands depening on Global QSO NR
  • $MR - report to opposite station
  • $MW - my locator
  • $MX - my optional exchange

You can also use case sensitive macros from strftime(3) for example:

  •  %d - day of month 01..31
  •  %H - hours 01..24
  •  %M - minutes 00..59
  •  %m - month 00..12
  •  %S - seconds 00-59
  •  %Y - year 1970-2038

For others use command:

man 3 strftime

Macros have no effect in all contexts.

Rig options

Tucnak uses hamlib for accessing rig (transceiver) via CAT interface. You can use probably any interface which is working with other programs. Good helper is HB9DRV's guide to HRD. Or you can build one of my RIG interfaces.

Rig options
  • Enable: Quick enable/disable the rig.
  • Description: Your description, will be shown in menu.
  • Device: Device where the interface is connected. Typically /dev/ttyS0, /dev/ttyUSB0. Under Windows COMx.
Note: Under Linux the user must be member of group dialout to access device. Under OpenSuse also member of lock group. Add it as root: adduser <user> <group> and relogin.
  • Rig model: Model number of rig defined by hamlib. You can obtain it by running command rigctl -l or you can use:
  • Choose: Press button to show menu. In the first level you will choose manufacturer, in second level rig model. Model number is written to the Rig model, rig name is written to Desctiption if empty.
  • Baudrate: Communication speed. Leave 0 to use default hamlib value.
  • Force handshake NONE: For rigs which have set the handshake in hamlib defaults but you don't want to use the handhake. For example TS-850S connected only using RX/TX pins.
  • CIV address: Address of rig if you have more Icom radios connected via one interface. Enter 0 for default address. Address is written in hexadecimal.
  • Freq. shift SSB->CW: Some old radios (Icom, Kenwood) shifts frequency when changing mode SSB <--> CW. If you call CQ on SSB and someone calls you in CW, you must switch to CW and tune for about 800Hz up. Tucnak can compensate this shift when you use Alt+M to switch mode.
  • Transverter's LO QRG: Is frequency which tucnak adds to frequency read from transceiver's CAT and result shows on the screen:

f_\mathrm{display}=f_\mathrm{CAT} + f_\mathrm{lo} [Hz]

Note: some radios support transceiver mode for example radio is tuned on 14 MHz, CAT reports also 14 MHz but transceiver's display shows 144 MHz.

LO frequency must be computed by operator, you can use Fix QRG in Edit menu. This is global LO freq, if you use more transceivers, you can set more frequencies in Band defaults menu.

  • Rig poll interval: Set if communication with radio produces system load or radio gets frozen (old TS-850S). Minimum is 100 ms.
  • Set band from radio: Log's band is switched automatically when radio is tuned to other band.
  • Change band on radio: Radio's band is changed when operator switches band in log.
  • Change mode on radio: Radio's mode is changed when operator changes mode.
  • Set PTT on radio: Tucnak uses PTT keying using hamlib.
  • Clear RIT on RUN's QSO save in Run mode clear RIT after QSO is stored. Depends on radio/hamlib capabilities.
  • Debug rig: An extra debugging informations are written to Log window.


Bus error on ICOM

If you use ICOM TRX, tucnak can report Error on bus or Bus Collision. It is caused by CI-V TRN option turned on. In this case TRX is broadcasting current frequency over CI-V interface which collides with Tucnak communication. Read manual how to turn it off.

  • IC-706: Press LOCK and power the rig on. Press MENU and search for menu item CI-V TRN (item 36 or 37). Rotate the main dial to set to OFF. Then turn rig off.
  • IC-7400: In menu set CI-V Transceive to OFF
  • TS-590SG: Radio requires hardware handshake when use the USB port. The Force handshake NONE must be turned off.

I/O error on new ICOMs

New ICOMs with USB connector (IC-7610) should output I/O error. To fix it, open the menu and set CI-V USB Echo Back to ON. TNX to OK1FIK.


The Yaesu USB driver creates two serial ports, enhanced and standard. First one can be used as CAT, second as CW keying. In Rig options set:

  • Rig model to 135
  • Baudrate to 4800
  • PTT on radio set to PTT MIC

Radio setup:

  • 031 CAT RATE 4800
  • 032 CAT TOT 100 msec
  • 033 CAT RTS Enable

Thanks to OK2WO and DL5ZA


  • Rig model: 373 (IC7300)
  • Baudrate to: 115200
  • CI-V Address: 94h

Radio setup:

  • CI-V Address 94h
  • CI-V Transceive ON
  • CI-V USB Echo Back ON

Thanks to OK1UGE

Linux Can't open rig /dev/ttyUSB0 ... I/O error

Check if current user has access to /dev/ttyUSB0. Simplest access is based on group:

contest ~$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Jan 12 11:40 /dev/ttyUSB0

You have to be member of dialout

contest ~$ id
uid=1000(ok1zia) gid=1000(ok1zia) groups=1000(ok1zia),8(mail),24(cdrom),25(floppy),29(audio)

Dialout is missing, use adduser:

contest ~$ sudo adduser ok1zia dialout
Adding user `ok1zia` to group `dialout' ...
Adding user ok1zia to group dialout
contest ~$ id
uid=1000(ok1zia) gid=1000(ok1zia) groups=1000(ok1zia),8(mail),20(dialout),24(cdrom),25(floppy),29(audio)

No SSB modulation on Yaesu (FT-8x7)

Try to turn off speech processor

Rotar options

Tucnak supports many antenna rotators (called rotars in tucnak). Some designed by OK1ZIA and many supported by hamlib. You can use more rotators at time so when you choose Rotar options menu item, next menu will appear:

Rotator choose

Add rotator

Show rotator option:

Rotator options
  • Description is text for operator which describes rotator device.
    • None rotator is disabled
    • OK1ZIA ttys OK1ZIA's rotator connected by serial port
    • OK1ZIA FTDI OK1ZIA's rotator connected by FT232RL device using USB bus
    • Hamlib rotator is accessed using hamlib
    • Remote rotator is physically connected to other Tucnak over network
  • Filename COM port where is rotator connected (/dev/ttyS0, /dev/ttyUSB0 or COM1). Also hostname for network-controlled hamlib rotators
  • Hostname IP address (network identification obtained in Network info for Remote rotator type
  • UDP port TCP (yes) port for remote rotator type, normally 55555
  • VID USB Vendor ID for FTDI rotator type
  • PID USB Product ID for FTDI rotator type
  • Serial # Serial number for FTDI rotator type if you need to distinguish between two devices with same VID:PID. Can be empty.
  • Timeout Time to wait for device reply
  • Poll interval Delay between QTF queries. Minimum is 300 ms.
  • Beam width value for map to show relevant antenna width. Used also for gain chart.
  • Communication address for OK1ZIA's rotator. Address allows to distinguish more rotators connected via one FTDI converter. Default value is 240, variant with 2x azimuth have 240 and 241 for second system.
  • Model hamlib model number of rotator
  • Rotator letter for remote letter which has remote rotator on remote side

Remove rotator

Remove rotator

Choose one rotator to remove from Tucnak's configuration.

Problems with hamlib rotators

How to estabilish communication with rotator using Hamlib.

First, we have to ensure if hamlib is capable to work with your rotator. Under linux open terminal window. Under Windows run cmd.exe and change directory to Tucnak program files (C:\Program Files\Tucnak).

Run rotctl -l (maybe enlarge window to see all). Program lists all supported rotators. First numer is the model number. Choose right model and type:

rotctl -m <MODEL> -r <COM> p

Example with unconnected EasycommII:

bash$ rotctl -m 202 -r /dev/ttyS0 p
get_pos: error = Communication timed out 0.000000

Detailed data is shown if you add the -vvvvv argument.

bash$ rotctl -vvvvv -m 202 -r /dev/ttyS0 p
rotctl, Hamlib 3.1~git
Report bugs to <> 

rot:rot_init called
initrots3_easycomm called
rot_register (201)
rot_register (202)
rot_register (204)
rot:rot_open called
Opened rot model 202, 'EasycommII'
Backend version: 0.4, Status: Beta
easycomm_rot_get_position called
easycomm_transaction called: AZ EL

write_block(): TX 7 bytes
0000    41 5a 20 45 4c 20 0a                                AZ EL .
read_string(): Timed out 0.300000 seconds after 0 chars
easycomm_transaction read_string failed with status -5
easycomm_rot_get_position got error: -5
get_pos: error = Communication timed out
rot:rot_close called
rot:rot_cleanup called

If rotctl is not able to work with your rotator, Tucnak will not work also, but problem is in Hamlib. Contact the hamlib development team, send detailed info with -vvvvv.

Network & trace

Network & trace options

Enable remote connect - normally, if all Tucnaks are on local network, leave this unchecked. Remote connect allows you to connect to Tucnak over internet. You can publish here informations using HTTP server. Beware of creation of loops! Tucnak does not detect loops, is uses flood routing so messages will cycle over network infinitely.

Remote host name - host or IP address of remote Tucnak.

Remote TCP port - TCP port of remote Tucnak. Normally 55555.

Remote password - Password must be same on both Tucnak over Remote link. It is not sent over network in plain text.

Ignore interfaces - list of network interfaces which would be ignored when searching for more instances of Tucnak on the network (transmit broadcasts) as connect to Internet, public IP address from provider, AX.25 interface. The delimiter between interfaces is space character. Broadcasts loads slow nets.

Ignore networks - the purpose this option is the same as Ignore interface option. You can determinate subnet address.

Announce to nets - it's an inverse function of previous options. There is specification of IP address where have been sending broadcasts in this option. The routers usually have disabled forward broadcastings.

Trace* - for debugging you can turn on trace of some kinds of events.

Miscellaneous options

Miscellaneous options
  • Font height for very-high-resolution displays and bad eyes - fonts are resized from usual 9x16. Usable are values 16 (old font), 24 (new alternative in 3.00) and 32 (doublesized 16). Other values are not very usable because resize algorithm is trivial but at IARU VHF 2008 I had nothing to do so I've imlpemented it.
  • Screen resolution - you can set resolution of tucnak's window in characters or in pixels
  • Fullscreen - Window is opened fullscreen. You can switch it using Ctrl+F11.
  • Use touch control - Click on input line does not move cursor but pop-ups On screen keyboard. Also raises tolerance for menu activation click and contest input line click.
  • Alt turns QWER... to 1234... - For devices without numeric keyboard row (HTC Desire Z). Alt press activates and deactivates translation of top row keys from QWERTYUIOP to 1234567890.
  • Starting band Band character (f.e. C=144 MHz) of band, which will be activated after contest open.
  • Log lines are last lines of tucnak's screen on which tucnak writes informations for users.
  • Slash key Slash key on some national keyboards is not easily accessible (only with shift). Here you can remap it to any other character. Use with care!
  • Disable screensaver - if you only test Tucnak at home, you probably don't want to disable screensaver. So turn these checkbox off. Works only under X11 (Linux).
  • No device locks - do not use lock files /var/lock/LCK..* . Allows to share serial port between rig and serial keying. Linux only.
  • Portrait mode (Android only) - turns screen to portrait orientation. The on-screen keyboard is showed on the bottom part of screen. Tucnak is fully visible and controllable using touch screen.
  • Inverse display - inverts colors for special devices
  • ADIF export errorneusQSO - method how to export ERRORs to ADIF (as ERROR, as CALL, Ignore QSO)
  • Subdirectory for logs - subdirectory under ~/tucnak to store logs (not configuration). Without leading/trailing (back)slashes. Allows to store logs in shared storage for more machines. Storage must support file locking otherwise more Tucnak instances can damage log!

Terminal options

Terminal options

These options come from links browser so I'm not able to tell what they exactly mean. Try to make some experiments or look at source code :-)

Aircraft scatter options

Look at RS and AS in Tucnak.

HTTPD options

HTTP server

Tucnak has internal HTTP server included. It can be configured to provide public or private informations.

  • Enable - quick enable/disable HTTP server
  • TCP port - TCP port to listen. Default is 7380. If you do not run other HTTP server on this computer, you can use default port 80. But robots can find your server easily.
  • Show private informations
    • unchecked - show only public informations (log search, shows date, time band and found call)
    • checked - show public and private informations (all QSO details, statistics etc.).

Rain Scatter Options

Is described in details on it's own page and in OK1MZM's manual RS and AS in Tucnak.


Set language of Tucnak's GUI. I think English is very good for contest log but some people like to have their mother tongue set.

Load cfg from net

It shows addresses of all Tucnaks on the local network. If one is selected you will read his complete configuration (tucnakrc).

Load C_W from net

It loads complete C_W database from selected Tucnak and saves it to ~/tucnak/tucnakcw. In database are saved two newest locators for each callsign.