3.8 Reserved button numbers .... buttons that have a hard coded function.
References are to buttons and catcodes tables.
All of the following discussion is also applicable to buttonsciv and catcodesciv for Icom.
Every button (including the 24 buttons on the popup window) has a unique numeric identifier.
See Button and Slider numbering
In code module, buttons.js the button number are assigned text labels, eg:
.............
const BTN_6M = 12;
const BTN_4M = 13;
const BTN_2M = 14;
const BTN_70CM = 15;
const BTN_VFOA = 16;
const BTN_VFOB = 17;
const BTN_DNR = 18;
const BTN_NB = 19;
const BTN_NOTCH = 20;
.............
These labels refer to button usage in my initial FTdx101D configuration.
They are purely internal references in the software for design convenience.
You can configure the system without being aware of them.
Most buttons (and sliders) can be configured to a function, caption and colour of your choice.
However, some buttons have hard-coded dedicated functions. These are detailed below.
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 that a code field is also in the sliders table.
With sliders, both client and server are in a singe table, but the use of code, vx, abx is the same.)
Fixed button numbers:
VFO control buttons:
16 VFO A Use code = VFO
17 VFO B Use coded = VFO
79 Swap A/B No direct server action ... software link to VFO A and B buttons.
The intended configuration with the two receivers or two independent VFOs is as
my FTdx101d example:
Firstly, note that VFO selection is not a function of the separate VFOs
It selects the VFOs . It uses vx = X and abx = X.
We configure buttons 16 and 17 as a group of two (action = G) and use code = VFO.
The buttons each send the data for their specific VFO selection to a single catcodes record
on the server. This generates the VFO switching commands using the button data.
Button 79 action is interception in software and toggles between buttons 16 and 17 action.
Thus we have two ways of doing the same switching job, ie click the VFO A or B buttons or
toggle them with the Swap button.
For this to work, the radio's CAT controls need to have read and write VFO selector commands.
The FT920 doesn't appear to have this (contrary to what the manual says.)
I therefore just have a SWAP button .... and it cannot be button 79 with its built in toggling action.
I simply choose another button as Swap and disable buttons 16, 17 and 97.
Tx meter buttons.
These are:
61 Tx meter A eg: power code = PWRM
62 Tx meter B eg: ALC code = ALCM
63 Tx meter C eg: Compression code = CMPM
64 Tx meter D eg: IDD code = IDDM
65 Tx meter E eg: SWR code = SWRM
These buttons do not communicate with the radio,
They select which metering command shall be sent to the radios on transmit.
They all must have code = TXME.
Their captions are specified in the meter table.
The button number (61, 62 etc) is the link to the meter table (not the code)
Band buttons (not fixed in the code)
These in groups on the right of the window.
A group is defined by all its buttons having action = G and the same value for the code field.
The code field must be BAND (see below)
The buttons numbers are not actually fixed ... but it is suggested that you use my original allocation.
(but you can rearrange them if you wish)
2 = 160m |
3 = 80m |
4 = 60m |
5 = 40m |
6 = 30m |
7 = 20m |
8 = 17m |
9 = 15m |
10 - 12m |
11 = 10m |
12 = 6m |
13 = 4m |
14 = 2m |
15 = 70cm |
Mode buttons (not fixed in the code)
These in groups on the right of the window.
A group is defined by all its buttons having action = G and the same value for the code field.
The code field must be MODE (see below)
The button numbers are NOT fixed.
On a 160m - 6m rig, band buttons 13, 14 and 15 are not used and so could used for extra modes.
(Change the colour to navy to match the other other mode buttons)