3.9  Reserved code field values

References here are to the buttons and catcodes tables.

All of the following discussion is also applicable to tables buttonsciv and catcodesciv for Icom CI-V
and to tables buttonshl and slidershl for Hamlib configuration.

The buttons table data is loaded to the client at startup.

The catcodes table data is read from the data  'on the fly' by PHP server code.
The primary link between the buttons record and the catcodes record is the code field.

Most code field items can be your choice. However some are fixed for use by the software.

The other important links is the buttons vx and the catcodes abx field ...
See next section:  vx and abx         

(Note than a code field is also in the sliders table.
WIth sliders, both client and server date are in a singe table, but the use of code, vx, abx is the same.)

List of reserved code field values:

  • TXME        Used on Tx meter buttons - see above  
                   These buttons do not communicate with server. They specify which meter to present on transmit.
  • VFO        Used on VFO A and VFO B buttons (grouped) - communicates with single catcodes record.
  • SPLT        Use on split buttons - Allows piWebCAT to detect split frequency working
  • BAND        Use on all the band selector buttons ... single catcodes record .. only acts on current VFO.
  • MODE        Use on all mode selector buttons  
                   ... and in catcodes records (may have separate VFO A and B records)
  • MORE        Launches the 24 extra button popup.
  • MPAD        Launches the memory keypad popup.
  • MECH        Use this for memory channel selection.
                   Not actually essential for individual memory buttons ... but the memory keypad uses MECH
                   and so must be supported by a catcodes memory selector with code = MECH.
                      (.... No point in having a separate  catcodes record for keypad and individual buttons!!)        
  • MTOV        On my FTdx101D and FT920, MECH commands select the memory AND load it to the VFO.
                   On my IC7000, a separate 'load to VFO' command needs to follow memory channel selection.
                   piWebCAT will look for a catcodesciv MTOV command after MECH. If found, will automatically
                   issue your configured MTOV command.
                   Works well on my IC7000. I don't know if it's needed on more modern Icom rigs.
  • MOX        Must be used for MOX button.
  • FREQ        Must be used for VFO A/B frequency read and write.
                   Generated by piWebCAT tuner  - so no buttons nor sliders record.
                   Just server catcodes records
                   However, for the FT920, I could find no band switching command  
                   - so the band buttons use code = FREQ and send a start frequency for each band.
                   (piWebCAT then follows the radio's band change and displays the new tuning scale) .
  • FRUP        Sends a code = FREQ command to the server to step the frequency up.
  • FRDN        Send a code = FREQ to the server to step the frequency down.
  • DBUG        A buttons with code = DBUG launches a debug popup window (draggable).
                   It can be configured on any spare button using active = Y and action = S.  
                   The window displays nine debug items.
                    An item is set using: pwcDebug(itemno, label, data); 
                   See debug window