_____________________________________________ ADAM MCII-e Master Controller - Version 1.2.2 _____________________________________________ Code image CRC: 0xbcb5 Files: MCII-e.hex - Motorola S-record file for downloading to the MCII-e board flash via an AZedit connection to the MCII-e board. The MCII-e board must already be running a version of either the single frame MCII-e Master Controller or the multi-frame MCII-e Peripheral Controller firmware. MCII-e.srec - Motorola S-record file for downloading to MCII-e RAM using the Altera GERMs monitor and the Altera "nios-run" utility. (used for installing on a new MCII-e card without any existing firmware). _____________ Compatibility _____________ MCII-e Master Controller Requires MCII-e version 1.2.x as the standby controller. Master Controller: The standard Master Controller may not be used in the same frame as the MCII-e Master Controller. AZedit: Version 3.0.0 or later is required for full support of all features, including authentication. AIO-8 Card: Requires AIO-8 version 10.3.0 or later. AIO-16 Card: Requires AIO-16 version 1.0.0 or later. Version 1.1.0 is required for VOX support. KP-32: Will work with any version of KP-32. Access to assignment groups requires KP-32 v2.0.1 or later. Snoop tallies require KP-32 v2.0.2 or later. Single Bus Expanders: Not supported. Dual Bus Expanders: Not compatible with this version. UIO-256: Requires version 2.0 (checksum 78b5), with the UIO-256 configured in multi-drop mode (DIP switch S1 position 2 closed, and with the RS-485 data going to J2 of each unit). PAP-940/951/952: Requires version 7.3.x or later. PAP-32: Will work with any version. Requires v0.0.3 or later in order to be able to configure the PAP-32 from AZedit. Trunk Master: Requires version 7.3.0 or later. Version 7.5.0 required for full support of auto-table across intercoms. TM-2000 version 8.2.0 required for support of multiple alpha sizes across intercoms. TM-2000 version 8.2.1 required for support of TIF dial-out across trunking. TM-2000 version 8.6.0 required for support of Special Lists across trunking. ______________________ Ethernet Configuration ______________________ This version of MCII-e firmware supports AZedit connections using UDP (over Ethernet). To configure a working connection: 1. The MCII-e card must be programmed with a valid unique hardware Ethernet address. This is handled by the MCII-e board test software. The Ethernet address will be displayed on the debug serial port (via J100) at startup. If no address has been configured, the message "ERROR: Ethernet MAC address not configured!" will be displayed. 2. The MCII-e card must be programmed with valid IP Network settings matching the network it will be connected to. These consist of an IP address, IP subnet mask, and an optional IP gateway address (which may be left as 0.0.0.0 if there is no gateway). These are configured using AZedit's "Options|Ethernet Setup ..." menu command. In order change the network settings you must have a connection to AZedit via the J1 serial port (other AZedit connections only allow viewing the current settings). The current IP network settings are displayed via the debug serial port (J100) at startup. If no IP address has be configured, the message "No IP address configured. Network Interface Disabled" is displayed instead. Note: The Master Controller and Peripheral Controller firmware for the MCII-e System Controller board both use the same area of flash memory to store network settings. Thus, the network settings are retained if an MCII-e board is converted from running single frame Master Controller firmware to Peripheral Controller firmware (or vice versa). NOTE: This version of MCII-e Master Controller firmware does not allow AZedit to establish an AZedit session via UDP to the card acting as the standby card. It should be used with AZedit version 2.08.01 or later, which will automatically switch its UDP network connection to whichever controller is active. Earlier versions of AZedit can establish a network connection with the controller, but the connection will be lost if the other controller card becomes the active controller. ___________________ DIP Switch Settings ___________________ Position Description -------- ----------- 1 Must be open (closed => boot to GERMS monitor) 2 AZedit (J1) baud rate: open=9600, closed=38400 3 Should be open (reserved) 4 Should be open (reserved) 5 Should be open (reserved) 6 Must be open (closed => don't reprogram flash after download) 7 Should be open (reserved) 8 Must be open (closed => run diagnostics) ____________ Installation ____________ If the MCII-e board is already running MCII-e firmware, the "MCII-e.hex" file can be downloaded to the card via AZedit. Otherwise, the Nios_Loader utility can be used to download a new image and copy it to flash. ______________ Change History ______________ New in version 1.2.2 -------------------- * Prevent reset when extremely busy When the MCII-e becomes extremely busy (i.e. at startup, or when multiple AZedit sessions were active), the card could conceivably reset because the Idle task might get starved, allowing the Watchdog timer to trip. Fixed. * Hot swapping cards with same IP address but different MAC address If an MCII-e card is hot-swapped with another card that has the same IP address but a different MAC address, it could take a long time for other devices on the network to discover the new card. Fixed. * Automatic recovery from possible Ethernet interface lockup It may be possible for the Ethernet interface chip to lock up and stop transmitting. There is now automatic error recovery for this situation. If this condition occurs, it is automatically detected and the Ethernet interface is reset. * Networked AZedits can set the IP parameters of the standby controller In v1.2.1 and earlier, only the main AZedit (serial connection via J1) could set the IP parameters of the active and standby controllers. Now, any session can set the IP parameters of the standby controller; however, only the main (J1) session can set the IP parameters of the active controller. New in version 1.2.1 -------------------- * When certain changes were made via AZedit (e.g. making ports permanent talkers and/or listeners on a party line), the audio was sometimes not being switched properly. Fixed. * If the intercom name was changed (in the Trunk Master), the name was not being forwarded to the standby. Fixed. New in version 1.2.0 -------------------- * Added support for Authentication Can be configured via AZedit V3.x.x with a table of user names and passwords. Users can be flagged as administrators, and/or requiring restrictions files. Authentication can be enabled/disabled globally, and individually on J9, J10 USB, and Ethernet sessions. The J1 session never needs authentication. Only administrators (or users on unauthenticated sessions) can change the authentication table. AZedit can query a list of connected users. * Standby might not be kept up to date In version 1.0.0, some or all of the configuration data might not be transferred from the active controller to the standby. Fixed. * Fixed problem of possible spurious interrupts A spurious interrupt could potentially occur, causing the controller card to reset. Fixed. New in version 1.1.0 -------------------- * Added VOX support UPL can test for audio present on an input. If VOX is enabled on a port, and that port is a 4-wire port (i.e. audio only), then talk key #1 for that port will be turned on whenever incoming audio is detected on that port. VOX only works with ports that are driven by AIO-16 cards. AIO-16 version 1.1.0 is required for support of VOX. * New UPL condition: Any talk key closed? UPL can now test to see if any of the talk keys for a port are currently on. * Improved control bus handling Some improvements were made to control bus handling, so there should be significantly fewer errors in communicating with AIO-8 cards. New in version 1.0.0 -------------------- * Always send local GPI messages. Local GPI messages are always sent to a port, even if no keypanel is currently talking on that port. This allows the local GPI functions to use the GPI of an RVON-IO without having to connect a keypanel to the corresponding port. * Added Snoop Tallies An intercom can now be configured to enable Snoop Tallies. A panel displays a snoop tally if all of the following conditions hold: - The keypanel has a hot mic - None of the keypanel's keys are on - Another keypanel is listening to the panel via a point-to-point or a special list, but is not talking to the panel The snoop tally is indicated by turning the Mic Mute LED amber. In a trunked environment, snoop tallies may not always be displayed. If a panel displays a snoop tally, then someone is listening to that panel; however, depending on how trunks are allocated, it is possible for a keypanel in one intercom to snoop on a keypanel in a different intercom, without a snoop tally being displayed. * Added Do Not Interrupt feature Associated with each port is a Do Not Interrupt flag. If this flag is set, only one point-to-point call at a time is permitted to that port. If panel A is talking to panel B, and B has Do Not Interrupt set, panel C will get a busy tally if it tries to call B. In a trunked environment, trunk calls ignore Do Not Interrupt, i.e. trunk calls always go through. * Improvements to Keypanel Privacy Listening to a Special List respects keypanel privacy. A port can now listen to itself, via a Point-to-Point or a Special List, even if that port has keypanel privacy set. * Support for Key Labels Normally, a keypanel displays the alpha for the function assigned to talk level 1. This version supports arbitrary key labels. If a key has a label associated with it, the keypanel displays the key label, rather than the alpha for the talk level 1 assignment. If the key is reprogrammed, either from the panel or via AZedit, any associated label is deleted. Because key labels can potentially use a lot of memory, by default a single-frame 272-squared system allows up to 68 ports to have labels associated with them, and up to 64 keys on a given port can have labels (this latter restriction is limiting only if the system is reconfigured to have more than 4 setup pages per port). These defaults can be changed via AZedit as part of the intercom reconfiguration procedure. No changes to keypanel firmware are required to support key labels. * UPL testing of local GPI inputs didn't work properly. Fixed. * Port logging now uses serial port (J10) rather than the debug port (J100). * The startup code verifies the CRC of the code image stored in flash. If there is no suitable code image, or if the code image appears corrupt (calculated CRC doesn't match CRC stored with image) then a warning message is displayed on the debug port (J100). The results of this test are displayed as part of the version information displayed by AZedit. Displayed CRC Interpretation ------------- ------------------------------------------ xxxx No code stored in flash ???? Code in flash inconsistent with stored CRC 4 hex digits The CRC of the code stored in flash * In debug only mode, the MCII-e now releases the RS-232 relay, so its active/standby partner can drive the serial ports on the breakout panel. (Each MCII-e board has its own dedicated serial port (J100) for the debugger, whereas the MC cards share a single port (J10) on the breakout panel.) * Buttons 1 and 2 were interchanged. Now top button (button 1) bypasses debug-only mode at startup if DIP switch 8 is closed. * Added support for accessing I/O card memory from the MCII-e debugger. * Some occurrences of "MC-IIe" have been changed to "MCII-e". New in version 0.1.3 Beta ------------------------- * The Ethernet port can now be disconnected and reconnected while the MCII-e is running. It is no longer necessary to reboot the MCII-e to establish a proper Ethernet connection. The serial debug port (J100) displays the Ethernet link type (10 or 100 Mbps, full or half duplex) when the link is established, and also displays a message when the link is lost. * If the MCII-e detects that another device on the network is using the the same IP address as it is configured with a diagnostic message will be displayed on the serial debug port (J100). * Scroll lists are now sorted correctly. * Changed IP settings take effect immediately, rather than after next time the MCII-e card is booted. * The MCII-e could crash when downloading new firmware to a keypanel. Fixed. * In Trim mode, the LCP-102 could only increase gains, not decrease them. Fixed. * Fixed a problem with local GPIO outputs. New in version 0.1.2 Alpha -------------------------- * Some Active/Standby arbitration problems have been fixed. In particular, there was a problem that caused neither controller to become active when an ADAM frame is just powered up and there is no backplane clock for a while. * The firmware now reports the network settings for the standby controller, and includes support for changing the network settings of the standby controller via AZedit. In order to edit the network settings, AZedit must be connected via the primary serial port (J1). Other AZedit connections are permitted to view the network settings but not change them. * The standby controller now refuses to allow AZedit to establish a session with the standby controller. It does permit AZedit to query the IP addresses of both controllers. * Various features from the ADAM Master Controller were added to the MCII-e, to bring it up to date. New in version 0.1.1 Alpha -------------------------- * The auxiliary PC ports (J9 and J10) are now supported (AZedit and/or CLP). Note: Unlike the existing MC card, the internal debugger always communicates using the main serial port on the J100 header (and not J10). * Some DIP switches were changed to be more compatible with other MC cards. New in version 0.1.0 Alpha -------------------------- * Initial release