__________________________ AIO-16 Card, version 1.1.5 __________________________ Code image CRC: Standard: add5 Japanese: Not yet released Files: aio-16.hex - Motorola S-record file for downloading to AIO-16 flash via an AZedit connection to the ADAM master controller. aio-16.srec - Motorola S-record file for downloading to AIO-16 RAM using the Altera GERMs monitor. _____________ Compatibility _____________ Hardware: This code image is intended to run on the AIO-16 rev. 5 board, loaded with the APEX FPGA image whose GERMs monitor prompt is #A72A3038 AIO-101404 It should be used in combination with the ADAM single frame master version 9.22.0 (or later), or in a multiframe system with DBX version 1.13.0 (or later) and Peripheral Controller version 10.13.0 (or later). ___________________ DIP Switch Settings ___________________ Position Description -------- ----------- 1 Must be open (closed => boot to GERMS monitor) 2-7 Reserved, should be open 8 Must be open (closed => run diagnostics) ____________ Installation ____________ If the AIO-16 board is already running AIO-16 firmware, the "aio-16.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.1.5 -------------------- * In some systems, when the frame was powered on, certain AIO-16 cards might not pass audio until the cards were reset. Fixed. New in version 1.1.4 -------------------- * Improved control bus communications This version contains the control bus improvements that were implemented in v1.1.1B New in version 1.1.3 -------------------- * Improved control bus communications Note: This version does not have all of the control bus improvements that were implemented in v1.1.1B New in version 1.1.2 -------------------- * Internal version, for testing purposes only New in version 1.1.1B --------------------- * Improved control bus communications Even with v1.1.1A, certain control bus problems could cause the MCII-e to briefly lose communications with the AIO-16, and generate an alarm (in Japanese systems). Fixed. New in version 1.1.1A --------------------- * Fixed some control bus communications problems The MCII-e would occasionally have problems when sending a message to the AIO-16, which could cause an alarm (in Japanese systems). Fixed. New in version 1.1.1 -------------------- * First version which supports Katakana and Unicode * If a keypanel stops communicating, any queued messages for that panel are now discarded, rather than being transmitted. New in version 1.1.0 -------------------- * Added support for VOX VOX support allows UPL to test for "audio present" on any audio input. Also, if VOX is enabled on a specific port, if no device is connected to that port (i.e. it is a 4-wire audio-only port), then talk key #1 is automatically turned on whenever audio is detected. VOX support requires the following minimum versions: - AZedit v2.09.00 - ADAM MC v9.25.0 - ADAM MCII-e v1.1.0 - ADAM Periph Ctlr v10.15.0 - ADAM PeriphII-e v1.15.0 - DBX v1.15.0 * Support ISDN 2005 and PAM-32 Devices The ISDN 2005 (ISDN TIF) and the PAM-32 (in split-panel mode) respond at 2 consecutive polling IDs. These are now fully supported by the AIO-16. Previously, they could only be used if the AIO-16 was used in the multi-drop mode. New in version 1.0.0 -------------------- * Fix problem that prevented the AIO-16 from correctly responding to a command to force a keypanel to reboot if connected using the backcard for separate data channels for each port (bug case #22). New in version 0.1.2 -------------------- * Fix problem with startup code that caused OK LED to turn on even though it wasn't being used (bug case #12). * Fix problem in ASIC driver initialization that was responsible for unexpected audio in 4 frame DBX system (bug case #13). New in version 0.1.1 -------------------- * Change CODEC attenuation for nominal 0 dB output trim from 14 dB to 11.5 dB (attenuation register setting from 0x1C to 0x17). * Disable use of OK LED (lower of two LEDs at top of card edge). * Fix problem that could prevent AIO-16 from starting to poll keypanels after a reset when in a multiple frame system. New in version 0.1.0 -------------------- * Change the location of the buffer for assert messages: they are now preserved when the AIO-16 card resets. * Fix bug: wrong alpha size message didn't appear properly on ports 9-16 with shared data port backcard. * Panels displaying the wrong alpha size message will now power up without being disconnected if the conflicting panels are removed from the port group. * Add symbol lookup function to internal debugger and removed some obsolete temporary commands used during development. * Extended timeout for response to keypanel download message to allow slower keypanels to respond in time. * Changed the method used to work around the off-by one submix problem in the Nucleus ASIC (old method didn't work under all circumstances). Now, the first submix is never empty: it always includes at least one dummy term with zero gain. * Limit number to submixes according to the number of TDM clock cycles per sample period, rather than size of the Nucleus RAM tables. * Fixed bug: AIO-16 no longer resets because the idle task isn't running if a large number of crosspoints (several hundred) all change at the same time. * Fixed bug: Nucleus ASIC driver was failing after a large number of discrete sources had been used. * Added handler for spurious interrupts 19, 24, and 27. (These seem to be caused by a hardware problem in the Nios processor block). New in version 0.0.7 -------------------- * Changed UART ISR to keep characters even if received with a framing error (otherwise get problems with KP-12). * Charge UART receive errors (framing and overrun) to the appropriate port. * Don't send alpha broadcasts as directed messages to old protocol panels when using individual UART per port (was causing TIF-951 to disconnect). * In multidrop (shared data port mode), clear the alpha size for each group of ports (1-8 and 9-16) when there are no panels connected (in previous versions, it was necessary to reset the AIO-16). New in version 0.0.6 -------------------- * Output trim gain change. The CS4224 CODECs can only attenuate the output, so when the ADAM controller requests 0 dB output trim, the CS4224 CODEC is actually set to attenuate by 14 dB (and +14 dB output trim gives the maximum output level - no attenuation). The gain of the analog output stage will have to be increased by a further +14 dB to compensate. * Fixed some timeout problems in the keypanel polling code (this prevented the KP-32 from powering up when connected to multi-drop backcard, with shared data port for ports 1-8 and 9-16). * Fixed a problem that prevented the AIO-16 from polling keypanels after reset under some conditions. New in version 0.0.5 -------------------- * Fix bug: input trim value was used for both input and output trims. * Scroll lists now working. * Added code to detect TDM clock glitches and reset the CS4224 CODEC chips once the TDM clock reappears. * Crosspoint gain changes. The Nucleus ASIC only supports gain values of unity or less, while the ADAM intercom allows crosspoint gains up to +6dB. Changed the mapping of intercom gain values to Nucleus fader values so that the maximum intercom gain (+6dB) is mapped to the maximum fader value (+0dB). The gain of the analog output stage will have to be increased by +6dB to compensate. New in version 0.0.4 -------------------- * Fix bug: watchdog tripped if started in slot 8 and there was no clock. * Change usage of status LEDs on daughtercard: - Activity of first 24 tasks on red LEDs. - Link status of 16 ports on bottom 16 green LEDs - General status in top 8 green LEDs 23 - ISR Active 22 - Driving clock 21 - Tx to MC 20 - Rx from MC 19 - MC Slot 1 18 - MC Slot 2 17 - unused 16 - unused * Added some additional debug messages (reason for reboot, type of backcard, etc.). * Fix some problems with keypanel polling using multidrop backcard.