___________________________________________________

PAM-32 / PAM632-24 / PAM832-20 Motherboard Firmware
___________________________________________________

Version 1.1.3
-------------

File type:   Motorola
File offset: 0
EPROM type:  AMD 29F010
Checksums:
    PAM-32:    U2 = 04cc, U3 = 5a34
    PAM632-24: not yet released
    PAM832-20: not yet released

Note: These releases consist of two types of image files:

  - The *.hex files are only to be used when downloading the keypanel from
    ADAMedit

  - The u2_*.mot and u3_*.mot files are only to be used when programming
    EPROMs in a programmer

The firmware is structured in 2 parts: A boot loader occupies the first
EPROM sector, and the "real" code image occupies the remaining sectors.
The .hex file does not contain the boot loader; the separate U2 and U3
files do.

On power-up, the boot loader checks for a valid code image. If present,
control is passed to it; otherwise, the boot loader will wait for
a power-up. In this mode, the panel will display a message that it
needs a download. The panel will communicate with the matrix, and
will accept downloads; nothing else will work. There will be no audio;
the talk and listen keys, the keypad, and the shaft encoder will all
be non-functional.


_____________

Compatibility
_____________

The PAM-32 should work with any version of ADAM, ZEUS, or Cronus
firmware. However, the following versions of firmware are required
for proper handling of keypanel templates:

- AZedit v2.06.05 or later

- AIO-8 card v10.3.1, or later

- ZEUS version 3.2.0 or later


___________________

Saved Configuration
___________________

The PAM-32 saves various settings to configuration flash. On start-up,
it looks for a valid configuration; if it finds it, it uses this to
determine its initial configuration. If there is no (valid) saved
configuration, it starts up with the factory default configuration.

The current configuration is only written to flash when the menu
item Save Cfg is selected.

NOTE: The PAM-32 will lose any saved settings and reset to the factory
      defaults when upgrading from v1.0.1 or earlier.


___________________

DIP Switch Settings
___________________

A 16-position rotary switch is used to select the polling ID. Valid
IDs are 1-8 for ADAM / ZEUS / Cronus, 1-10 for CS9x00.

The panel automatically detects the baud rate in use (9600 or 76,800
baud). If required, the baud rate can be forced to 9600 or 76,800 baud
via the menus (Service / Baud Rate). This would typically be used
if the keypanel is being connected via a keypanel remoter.

The 8-position DIP switch is used as follows:

	Position	Meaning
	--------	-------
	   8		Open = normal operation, closed = force download
	   7		Reserved for diagnostics, must be open
	   6		Closed = select alternate keypad sequences
	   5		Closed = split panel operation
	   4		Incoming call tally: open = 15 sec, closed = indefinite
	   3		Closed = disable screen saver
	   2		Closed = disallow adjustment of gain controls
	   1		Closed = disable latching on all talk keys

Normally, switch 8 is open. If it is closed when the panel powers up,
the boot loader ignores any code image in the rest of the EPROM, and
retains control, awaiting a code download from the intercom. This would
not normally be used: it might be used if new firmware is downloaded,
and the new firmware has a problem which prevents the panel from
operating normally.


_____________

PAM Operation
_____________

The PAM panel is a listen-only keypanel, used for monitoring various
audio sources. The PAM supports 2 modes of operation: "one" and "many".

In "one" mode, only one key can be turned on at a time. Turning on one
key turns off the previous key.

In "many" mode, multiple keys can be turned on.

The panel mode ("one" vs. "many") is selected via a new top-level menu
item, "PAM Mode". The current operating mode is shown in the display for
the headset transfer window.

The PAM can also be put into a split mode of operation, by turning on
DIP switch position 5. In this mode, the panel replies to the intercom
at 2 separate polling IDs. For example, if the polling ID is set to 6,
in split mode the PAM will respond at IDs 6 and 7. Keys on the left side
of the panel correspond to the lower polling ID; keys on the right side
correspond to the higher polling ID. Keys on the two sides of the panel
operate independently. With this mode, the audio for the second intercom
port could feed the Aux In of the keypanel, and the audio for the two
ports could be routed separately to the left and right headset channels.


___________

LED Colours
___________

For standard keypad sequences (DIP 6 open):
-------------------------------------------

Listen key on - solid green LED

In-use tally (e.g. IFB being interrupted) - solid red LED on talk key
Busy tally (e.g. no trunks available) - flashing red LED on talk key

Tallies (in use; busy) also tally on the alpha displays, the same
as the KP-96 series of panels.

For the headset key (key 32), the upper LED is solid green if the
headset is selected.


For alternate keypad sequences (DIP 6 closed):
----------------------------------------------

Listen key on - solid green LED

Tallies (in use; busy) tally on the alpha displays, the same as the
KP-96 series of panels; the LEDs are not used for tallies.

For the headset key (key 32), the upper LED is solid red if the
headset is selected.


_____________________________

6- and 8- Character Operation
_____________________________

The latest versions of intercom firmware allow keypanels with
4-, 6-, and 8-character alphas to be intermixed within the same
intercom. However, all panels connected to a single AIO card must
be of the same size.

The minimum required software versions that support 6- and 8-character
alphas are:

- ADAM Master Controller, v9.15.0

- ADAM AIO card, v10.1.0

- ADAMedit, v1.9.0

For DBX systems, the minimum required software versions are v1.7.0 (DBX)
and v10.7.0 (Peripheral Controller).


___________________

Display Module Code
___________________

The keypanel code image contains a copy of the display module code. When
the keypanel powers up, it automatically compares each display module's
code image with its stored image. If any display module has a different
version of firmware, the keypanel automatically downloads its copy to
that display module. This happens right away, whether or not the
panel is communicating with the matrix.


______________

Change History
______________


New in version 1.1.3
--------------------

* Added option to have GPIO input #4 force the Headset Transfer state on
  and to have GPIO output OC #1 track the Headset Transfer state

  Enable or disable this feature using Service | Local GPIO | HDST Xfer


New in version 1.1.2
--------------------

* Increased default "From Matrix" audio level

  The default audio level from the intercom has been changed
  from -10dB to 0dB. Note that this only has an effect when performing
  a "Reset Config", or if the keypanel loses its configuration
  (e.g. upgrading from v1.0.x to v1.1.2).


New in version 1.1.1
--------------------

* In "Many" mode: Pressing and holding a key does not cause the keypanel
  to enter ISO mode

* In "One" mode: Pressing and holding a key does not lock it on

* Vol Select skips over Aux Inputs which don't feed anything

  Menu / Service / Aux Inputs can be used to select which items appear
  in the list when Vol Select is pressed. However, an Aux Input item
  is always suppressed unless its audio is routed to at least one
  destination (via the Service / DSP Func / Mixing menu items).

* "Save Config" now appears both as a top-level menu item and in the
   Service menu

* A keypress which cancels the screen saver is discarded (i.e. if the
  screen saver is active, tapping a listen key cancels the screen saver,
  but the key does not turn on).

* The delay before the screen saver kicks in can now be set as high
  as 12 hours. Note that DIP switch #3 can still be used to disable
  the screen saver.

* Changes made to factory default configuration

  - DSP Mixing: Audio from the matrix is now fed back to the matrix
  - Volume Select: "Intercom" is disabled by default

  Note that these changes do not occur if you are upgrading from v1.1.0.
  They only occur if the keypanel loses its configuration (e.g. by upgrading
  from v1.0.0) or if you select Menu / Service / Reset Cfg.


New in version 1.1.0
--------------------

* Added "To Matrix" menu option to the Service / DSP / Mixing menu

* Added support for RVON-1 daughtercard for VOIP connections

  With an RVON-1 daughercard installed, the keypanel can be connected to an
  Ethernet LAN via the RJ45 jack, OR to an AIO card using the standard RJ12
  or DB9 jacks, but not both simultaneously.

  Please see the RVON-8 and RVON-1 user manuals for configuration information.

* Menu item "Save Config" moved to be a top-level item, rather than
  being a part of the Service menu

* Implemented a configurable delay before the screen saver kicks in

  There is a new menu item, "Scr Saver", under the service menu. The
  "Timeout" option allows the user to set the delay before the screen
  saver engages (range is 30 minutes to 4 hours). Note that DIP
  switch 3 can still be used to disable the screen saver.

  Also, the menu items to temporarily turn off the displays or to
  manually invoke the screen saver have been moved from
  Service / Disply Dim to Service / Scr Saver.

* Timeout for Vol Adj can be disabled

  When the Vol Adj button is used to switch to adjusting the volume of
  an Aux input or the volume from the matrix, it normally times out after
  30 seconds, and reverts to adjusting the speaker or headset volume.
  A new menu item, Service / Aux Inputs / Timeout, can be used to
  disable this timeout.

* Added support for Assignment Groups

  An Assignment Group is a list of arbitrary key assignments (both local and 
  remote) of any function type that can be created in AZedit and which are then 
  available in a single scroll list to any keypanel.  You can use Assignment 
  Groups to logically combine related key assignments into a single scroll list.  
  For instance, you might combine the ports, PLs, and IFBs associated with a 
  particular studio into one Assignment Group (scroll list) that then be called 
  up by a keypanel.  An Assignment Group has an alpha, a description, and a 
  local scroll restriction flag.  Assignment Groups are not available to remote 
  intercoms, although an Assignment Group can contain remote key assignments.  
  Assignment Groups can contain key assignments that are themselves scroll 
  restricted. 

  At the keypanel, pressing PGM/SEL in an idle state (CWW is empty) brings up a 
  list of Assignment Groups (sorted by alpha).  You can scroll through the list 
  of available Assignment Groups and then press PGM/SEL again to select a 
  specific group.  The keypanel will then display a list of the key assignments 
  contained in the selected Assignment Group (or N/A if the group is empty).  
  You can then scroll through the members of the group and talk to them by 
  pressing the CWW key, or copy them to another key using the standard copy-key 
  sequence.  You cannot copy a key assignment if it is scroll restricted (even 
  though it appears in the Assignment Group).

* Fixed up handling of local GPI outputs

  The local GPI outputs were not mapped correctly when activated by
  the intercom (as the output action of a UPL statement). Fixed. Now,
  local GPI outputs work as follows:

	Local GPI Output	Drives
	----------------	------
		#1		Relays 1 & 2
		#2		Relays 3 & 4
		#3		Open Collector #1
		#4		Open Collector #2

  ** NOTE ** Upgrading a PAM-32 to v1.1.0 will cause it to lose any saved
             configuration and reset to the factory defaults.


New in version 1.0.1
--------------------

* Menu item "Outp[ut] Level" renamed to "Ref[erence] Level"

* Eliminated GPI outputs from menus

* PAM wouldn't power up in certain instances. Fixed.


New in version 1.0.0
--------------------

* Initial release of PAM firmware

  This version corresponds to standard KP-32 version 1.3.1.
