EKD500Control(1)              Linux User's Manual             EKD500Control(1)

NAME
       EKD500Control  - a program to control the RFT EKD500 receiver with look
       & feel similar to the receiver itself, with some enhancements.

SYNOPSIS
       EKD500Control

DESCRIPTION
       A full manual has been not written yet. Briefly and with apologies  for
       the bad english:

       The version 0.8 adds in the hamlib-maybe compatible TCP server the han‐
       dling  of  the  hamlib rigctld commands "get_lock_mode" and "get_power‐
       stat" required by the hamlib versions used  in  latest  WSJTX,  FLDIGI,
       GRIG, XDX, and XLOG.

       The  configuration  file has switched to the XML format using the TXML‐
       Config object available in Lazarus.  From  an  user  perspective,  that
       should  not  be of concern, since if an old-style config file is found,
       it gets loaded and automatically converter and saved in the new format.

       In version 0.7 a TCP server compatible with hamlib net rigctl has  been
       added, listening by default at the address 127.0.0.1:4538, whose imple‐
       mentation is currently only partial and approximate, a little more than
       the  bare  minimum  needed  to  make  it  work with WSJTX 2.5.4, FLDIGI
       4.1.22, GRIG 0.8.1, XDX 2.5.0 and XLOG 2.0.24.  Tests  have  been  made
       mostly under Linux. When another application connects to the EKD500Con‐
       trol  server, the NET label in the frequency display of the main window
       lights up, and then switches off when all  clients  have  disconnected.
       Please note that there are no authentication or encryption of any kind,
       as this server is designed only to connect other programs to EKD500Con‐
       trol, e.g. WSJTX, FLDIGI and XLOG, on the same machine.  Therefore, pay
       a  lot of attention if you want to use this feature for what it was not
       designed for, that is to control a  remote  EKD500  via  the  internet.
       Some  other  minor  additions have been also made. In the internal file
       manager the commnds "Move to channel" and "Move  to  state"  have  been
       added.  The  Band  Scan  Window  code  has  been ported from SkantiCon‐
       trol 0.99.

       The "EXT" button starts  program  execution  and  connection  with  the
       EKD500.  Before clicking on it, be sure to select in the "Options" menu
       the  correct  RS232 port and speed, the number of receivers and the re‐
       ceivers addresses.  If multiple receivers are to be controlled  by  the
       program,  they must be daisy-chained as per manual, with the control PC
       serial port connected to EXT connector of the first EKD500, EXP of  the
       first  EKD500 connected to EXT of the second EKD500, and so on. A maxi‐
       mum of 99 receiivers can be configured. The chosen  configuration  will
       be  saved  automatically. For serial ports other than the first two, or
       USB, select the "Custom" serial port option and write the name  of  the
       port.  The  prefix /dev/ under Linux is optional, if omitted it will be
       automatically added, as well as that \\.\ under Windows.  Don't  forget
       to  set the same parameters on the receivers and to activate the remote
       mode (LED EXT must be lit). Under Linux check also that your  user  has
       serial  port access privileges; usually it must be a member of the "di‐
       alout" group.

       To switch the control from one receiver to another, select  the  number
       of  the  wanted EKD500 with the "Receiver#" combo box. Only the config‐
       ured number of receivers can be selected. If a receiver not switched on
       or not properly configured is selected and no response comes in, an ap‐
       propriate error message is written to the message display and,  if  the
       S-meter is enabled, it will be disabled.

       When  you  start  the  program, the RX state (frequency, mode, filters,
       etc) will be read from RX itself. The state can also be  saved  to  and
       restored from a file. Default file name is <frequency>-<mode>.dat, e.g.
       10100.8-F0.dat.

       Option "Enable S-meter" starts polling the received signal level (using
       the  G  command)  every  0.5s and display a  bar-meter for the received
       signal strenght. During the command duration, other keys are  disabled,
       so  selecting this option slows down somewhat operations. This function
       can be enabled only on higher serial port speeds (1200 and 2400 baud).

       Frequency can be changed by clicking on the RX display, with the  mouse
       wheel  or  by  writing  the  desired frequency in the spinedit at lower
       right of the main window.

       Left-clicking on a figure in the RX frequency display  decrements  that
       figure  by one, right-clicking increments that figure by one. This only
       happens if the final frequency is in the range of the RX.  Clicking  on
       the  decimal  point the displayed frequency will be rewritten. Smallest
       increment/decrement available is 10 Hz.

       If the mouse wheel is rotated with the pointer over one of the  figures
       of  the  RX  frequency, that figure is incremented or decremented. This
       now works also under windows.

       If the mouse wheel is rotated  with  the  pointer  over  the  frequency
       spinedit, the frequency is incremented/decremented by 10 Hz.

       Last,  if the mouse wheel is rotated with the pointer anywhere else, RX
       frequency is incremented or decremented by the tuning step  in  effect.
       This  is  the fastest tuning way since only one character (+ or -) must
       be sent to receiver.

       There are also some keyboard shortcuts:

            +: Tune up
            -: Tune down
            /: Change tune rate
            *: Set receive frequency RETURN: same as E key

       allowing basic control of the receiver using only the numerical keypad.

       All standard EKD500 remote commands are also accepted:

           f: set RX frequency in kHz down to 10 Hz (xxxxx.xx, e.g. 10100.80)
           d: set frequency step in kHz (e.g. 100 Hz is 0.1, 10 Hz is 0.01)
           m: set RX Mode (1..9, see table on the RX front panel)
           b: set IF bandwidth (1..9, see table on the RX front panel)
           g: set AGC mode (1..9, see table on the RX front panel)
           v: Preselector off/on  (0..1, 0=off, 1=on)
           c: Memory recall (1..99)
           s: Memory store (1..99)
           ": Memory 98 fast recall
           !: Memory 99 fast recall
           l: Scan start/stop
           a: Set scan parameters
           e: Execute key
           .: Decimal separator
           ;: Arrow key (; not j as written in the user manual on page 57)

       The above commands can be issued either upper or lower case.  The  fre‐
       quency  value for commands f and d (or F and ΔF buttons) can be entered
       either with the keyboard or with the on-screen numeric keys.

OTHER COMMANDS & CONTROLS
       The message display shows informations about the command being executed
       or status/info/error messages. Double-clicking on it clears display.

       RX parameters (frequency, step, AGC, etc.) can be set also by selecting
       the desired value with the controls at the lower right of the main win‐
       dow.

       Since the "EXT FCT" key (remote interface configuration) has no equiva‐
       lent remote command, that key is used to show briefly  on  the  display
       the  actual program address and RS232 speed, in the same format used by
       the "EXT FCT" RX key. A reminder on the lack of equivalent remote  com‐
       mand is also issued.

       The  program  tries to disable illegal keys for the actual state (e. g.
       pressing the "F" key, all other function keys are  disabled  and  after
       the  5th figure the only enabled key is the "." key). If this behaviour
       is not wanted, then check the "Option -> Enable all controls" menu  en‐
       try.

       In consideration of the fact that the rendered size of the fonts, above
       all  the  small  ones, vary a lot from one operating system to another,
       starting with version 0.6 the ability to magnify fonts has been  added.
       Six  magnification  factors  are available: 100% (ie no magnification),
       110%, 125%, 150%, 175% and 200%. Because, at least according to the au‐
       thor's limited experience, large fonts are  rendered  similarly  every‐
       where,  such  fonts have been excluded from zoom by default. In case if
       you want to enlarge them too, check the "Magnify all fonts" option.

       Always starting with version 0.6 have been also  added  a  more-or-less
       Hamlib rigctld-compatible TCP server, whose implementation is only par‐
       tial,  a  little more than the bare minimum needed to make it work with
       the programs used by the author: WSJTX, FLDIGI,  GRIG,  XDX  and  XLOG,
       and,  in  the menu "File", an entry to display a window showing a graph
       of the scan of a frequency interval.  It is not known if this  will  be
       useful to anyone, but that is.

NOTE ON CONFIGURATION AND STATE FILES.
       NOTE  ON  CONFIGURATION AND STATE FILES.  All configuration files under
       Linux are kept in the .EKD500Control directory of your home  directory.
       Under Windows in the directory from which the executable was run. It is
       suggested  EKD500Control  in  your  home directory, but this is not re‐
       quired in any way. In the 0.8 version the format of  the  configuration
       file  has  changed  to  XML using the XML library in Lazarus. If no XML
       configuration file is found, and a configuration file in the old format
       is present, it gets loaded and saved in the new  format.  In  case  the
       program  configuration  has  messed up, delete (or move, or rename) the
       "Config.xml" files and the program at next start will recreate it using
       the default configuration.

       Files saved in the Channels subdirectory (using the "File -> Save Chan‐
       nel" menu entry) will be read at program startup and shown in the Chan‐
       nels menu entry and can be recalled using only one mouse click. To  al‐
       low to rename and delete the saved state files from within the program,
       a  very  minimal file manager is built in (menu entries "File -> Manage
       states" and "File -> Manage channels").

TODO.
       • Since the EKD500  interface  has the RTS and CTS handshake lines, see
         if it is possible to get rid of the fixed delays now inserted in  the
         program  code.  In  command  modes B and C, the commands must be sent
         with a 75 ms inter-character delay, otherwise a NAK or ?  error  mes‐
         sage is triggered.

       • In  command  mode  D  the  accepted  speed of the commands is notably
         higher, but the RX sends back no answer or info at  all.  Mode  D  is
         used  actually  only  to restore a saved state and to issue frequency
         and step commands. If the program recreates the EKD500 state  machine
         for each command, then will be possible to use only that mode, speed‐
         ing up things. But this is a long-term project.

       • Complete  the  hamlib rigctld-compatible TCP server adding all EKD500
         supported functions.

       • Check for bugs and/or timing/synchronization errors and/or missed de‐
         lays.

0.8                               22/08/2025                  EKD500Control(1)
