________________________________________________________

RP-1000 / RP-1932 Motherboard Firmware
________________________________________________________

These are the release notes for the RP-1000 (2RU keypanel) firmware.

The same firmware image is also used for the RP-1932 (2RU expansion panel).

________________________________________

Relocator, Boot Loader, and Client Image
________________________________________

The firmware consists of two types of image files:

  - The rp-1000.hex file is used when downloading the keypanel from AZedit

  - The rp-1000.flash file is used when programming with a device programmer

The firmware is structured in three parts: The Relocator, the Boot Loader, and
the Client Image.  The Relocator occupies the first flash sector, followed by 
the Boot Loader, and the Client Image.  The .hex file contains only the Client 
Image, while the .flash file contains all three parts.

On power-up, the Relocator checks for a valid Client Image. If present,
control is passed to it; otherwise control is passed to the Boot Loader.  The
Boot Loader is only ever invoked automatically if the Client Image is corrupt
or not present.

When upgrading the keypanel firmware, you will typically only ever need to 
download the new Client Image (.hex) file from AZedit.	While a new Client
Image is being downloaded, a Firmware Download icon is displayed, and the
keypanel remains fully functional.  Only after the complete new image has been
received and validated does the keypanel reprogram the flash and restart.

You can force the keypanel into the Boot Loader by pressing the recessed
pushbutton (labelled BLR) on the back of the keypanel while it is being powered 
on. This causes the Relocator to ignore the Client Image (even if valid) and 
pass control directly to the Boot Loader.

While in the Boot Loader, 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 encoders will all be non-functional.

You can download a new Boot Loader image (boot_ldr.hex file) while the 
keypanel is running the existing Boot Loader.  Once the download has begun, you 
must press and hold the BLR button as the first downloaded Chunk reaches 100%.  
If the download continues on to the second Chunk, the keypanel has recognized 
your request to download a new Boot Loader image.

You can also enable downloading of a new Boot Loader image while the keypanel 
is running the Client Image.  Press and hold both shaft encoders, then
enter the Menus by pressing the Menu key, and then release the shaft encoders.  
The Service menu will now have a new menu item called Boot Code.  This menu 
shows the current Boot Loader version, and offers a checkable menu item called 
Allow Download.  Check this option and you can then download a new Boot Loader 
image from AZedit without having to press the BLR button.

If an RP-1932 is connected, and it contains a different Client Image than
the RP-1000, then the RP-1000's Client Image is automatically transferred 
to the RP-1932. The RP-1932 will display a Firmware Download icon, but will 
otherwise  remain fully functional.  The transfer takes a couple of minutes, 
after which the RP-1932 will reprogram its flash and restart.

A new Boot Loader is also transferred from the RP-1000 to the RP-1932
automatically, if necessary. 

If an RP-1932 ends up with a Client Image that is corrupt or not present, it will
enter the Boot Loader, which behaves the same as on the RP-1000, except that
it expects to communicate with a RP-1000, and not the matrix.
							       
___________________

Saved Configuration
___________________

The keypanel saves various settings to configuration flash. On start-up, it 
looks for a valid configuration; if it finds one, it uses this to determine the 
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 Config is selected.

The keypanel can be restored to the factory default configuration by selecting
Reset Config from the Service menu.

______________

Change History
______________


Version 2.0.7 (CRC=0xbe17)
==========================

* Various improvements and bug fixes

  - If connected via OMNEO and communications interrupted, key volume adjustments may stop working.  Fixed.
  - If connected via RVON or OMNEO, adjusting rear speaker volume affected panel output volume.  Fixed.
  - Headset detection did not work immediately after a Reset Config. Fixed.
  - Screensaver Display Off menu item did not show as checked when selected.  Fixed.



Version 2.0.6 (CRC=0x3967)
==========================

* Various improvements and bug fixes

  - Downloading new boot loader image did not work for RP-1000
  - Downloading fonts did not work if boot loader download enabled via menu
  - LCD backlight brightness now adjusted in 1% increments
  - Support for new LCD backlight PWM controller
  - Improved display update response time when keys pressed
  - LCP adjustment of front headset volume only adjust left channel
    (plus right channel of rear speaker, instead of right channel of front headset)

Version 2.0.3 (CRC=0x656c)
==========================

* Various improvements and bug fixes

  - Display of key volumes did not work when operating in Unicode mode and using 
    new keypanel protocol with systems (intercom and I/O cards) supporting 
    trunking of more than 31 intercoms.

  - With Japanese intercoms, lowest crosspoint volume should be displayed as 
    "-21dB" not "Mute". Fixed.


Version 2.0.2 (CRC=0x146c)
==========================

* New Footswitch option

  A new option for Footswitch operation has been added that causes talk keys 
  latched for footswitch operation to be unlatched when the footswitch is released.
  To enable this mode, use the Service | Footswitch | Latched Keys menu.  The
  options are "Retain" (talk keys stay latched for footswitch operation, which is 
  the default mode) and "Unlatch" (which causes talk keys latched for footswitch
  operation to become unlatched when the footswitch is released).

* New Local GPIO Input option

  A new option for Local GPIO Inputs has been added that causes the local GPIO
  input state to track the corresponding local GPIO output state.  This option
  can be enbled independently for each local GPIO input by using the Service |
  Local GPIO | GPIO Inputs | Mode menu.  The options are "Normal" (the local GPIO
  input state reflects the actual state of the opto input, which is the default 
  mode) and "Track Output" (which causes the keypanel to report the local GPIO 
  output state as the local GPIO input state for the selected input, instead of
  reporting the actual state of the opto input).

  This feature allows GPIO Outputs to control Talk Key or Key Group activation.

* New Local GPIO Input Key Group mode

  A new mode for Key Groups triggered by local GPIO inputs has been added that
  causes the keys in the key group to be toggled on or off on the GPIO input 
  state transition (Edge) instead of being held on or off by the GPIO input
  state (Level).  This option can be enabled indpendently for each Key Group
  on each local GPIO input by using the Service | Local GPIO | GPIO Inputs |
  Key Group | <Group #> | menu.  The options are "Level" (the default), or
  "Edge". Selecting either mode then prompts to "Save and Restart" or "Cancel".
  Changing modes requires a reboot of the keypanel.

* Various improvements and bug fixes:

  - It was possible to see display artifacts when drawing and erasing icons. Fixed.

  - For AL and AM listen assignments, listen key state should only show as on 
    if talk key is actually on (not just in the footswitch ready state).  Fixed.

  - Serial communcations could be disrupted while writing to flash.  Fixed.

  - Further improved serial communications with Option Card (RVON or OMNEO).


Version 2.0.1 (CRC=0x3f90)
==========================

* Various improvements and bug fixes

  - New splash and screen saver bitmaps

  - Display black screen at startup

  - Detect board revision for keypad backlight support

  - Fix: Disabling rear speaker (for matrix input) also muted other sources

  - Factory test code included in flash image (but not downloadable image)

 
Version 2.0.0 (CRC=0x59bc)
==========================

* Initial Release

  - The new LCD supports 576x172 pixel high resolution display in up to 65K colors.

* Supports RP-1932 or EKP 32 CLD panels as expansion panels.

  - Mixing of expansion panel types is supported.

  - Firmware and fonts for either type may be downloaded to the RP-1000
    and are automatically forwarded to the intended panel types.

  - RP-1932 expansion panels may also be used with KP 32 CLD main panels,
    but a firmware upgrade is required on the KP 32 CLD (V1.8.0 or later)
    in order to support downloading of new firmware/fonts to the RP-1932.

* Contains a single Unicode font with support for display of alphas 
  in many character sets, including:

  - English and most European (Latin-1) based character sets
  - Greek
  - Cyrillic
  - Japanese (Kanji, Katakana and Hiragana)
  - Traditional and Simplified Chinese
  - Korean

