AudioScience Hono AVB firmware

Table of Contents

Known Issues

Releases

0.1.49 (December 2016)

asi_hono_avb_debug_0.1.49

  • fpanel: show pDelay as '-' when not asCapable on gPTP info page
  • fpanel: display 'live' information on 802.1AS page
  • fpanel: fix IP address LED on Hono Mini broken during 0.1.48 development
  • AVTP: listener: mediaclk stream will work even if it isn't mono
  • gPTP: only update GM changed count if state is GPTP_STATE_HAVE_GM

0.1.48 (November 2016)

asi_hono_avb_debug_0.1.48

  • AVDECC: ACMP: should return LISTENER_EXCLUSIVE but returns LISTENER_MISBEHAVING
  • AVDECC: AEM: unconditionally send mappings to DSP on ADD_MAPPINGS command, #248
  • AVDECC: AEM: locking bugfixes
  • AVDECC: ADP: perform UCT events inside entity and interface state machines #456
  • PTP: update to support announce messages without TLV
  • 2620: fpanel: blink media clock icon if selected source is not connected
  • 2620: fpanel: lower screensaver contrast to 0x01
  • 2620: fpanel: show 'd' when address assignment mode is default (DHCP)
  • 2620: fix 96 kHz power cycle

0.1.47 (April 2016)

asi_hono_avb_debug_0.1.47

  • 2620, fix mic level and phantom power adjustment (#313)
  • 261x, make asTime transport from ARM to DSP tolerant of delays

0.1.46 (April 2016)

asi_hono_avb_debug_0.1.46

  • Add IPv4 address assignment webpage
  • Add support for remote restart from ASIControl
  • 2620, update media clock status bar layout
  • 2620, add "screensaver" by dimming display (timeout is 10 minutes). Click front panel button to make it bright again
  • AEM, add code to correctly update AVB_INTERFACE link up/down counters. Issue #276
  • AEM, rename clock source option from Xtal to Internal, issue #275
  • Add support for 16, 24 and 32 channel streams
  • Add automatic NTP sync using ntp.pool.org servers
  • Network driver now drops packets adapting to the speed at which the kernel can process the net device backlog queue
  • ACMP, reconnect, set flags to FAST_CONNECT, see issue #238

0.1.45 (January 2016)

asi_hono_avb_debug_0.1.45

  • DSP: mixer and packetize runs in HWI context
  • CPSW: driver updates (fixes loss of asCapable)
  • Hono: give priority to PTP and M*RP
  • 2620: display updates
  • 2620: fix GPIO opto inputs
  • 2620: fix AESEBU Rx status

0.1.44 (October 2015)

asi_hono_avb_debug_0.1.44

  • DSP: add code to pass HwRev to DSP
  • AVDECC: implement unsolicited notifications for set format and set sampling rate commands
  • xmlhpi: limit restore error printing
  • HPI: implement HPI_ADAPTER_PROPERTY_FIRMWARE_ID and HPI_ADAPTER_PROPERTY_SUPPORTS_FW_UPDATE
  • AVDECC: AEM (#128), fix JACK numbering for specific 2620 module combination

0.1.43 (August 2015)

asi_hono_avb_debug_0.1.43

  • ASI2620: fix message overflow when sending 64 stream mappings from AVDECC to the DSP
  • ASI2620: fix default stream mappings on module re-configuration
  • HPIUDP: add "AVDECC Auto Connect" on/off option (visible in ASIControl)
  • AVDECC: add auto connect support for listener streams

0.1.42 (August 2015)

asi_hono_avb_debug_0.1.42

  • ASI2620: fix missing JACK descriptors in AVDECC entity model
  • ASI2620: implement front panel button de-bounce
  • AVB code bugfix for wrap condition when zeroing AVB listener audio after mixing
  • AVDECC: restore default mappings on boot if restore from NV memory fails
  • AVB packet tx rewrite
  • increment HPI control save/restore version number (don't restore older versions)

0.1.41 (July 2015)

asi_hono_avb_debug_0.1.41

  • ASI2620, front panel updates
  • ASI2620, fix ASI1460 mic module input level

0.1.40 (July 2015)

asi_hono_avb_debug_0.1.40

  • ASI2620, fix matrix mixer for certain module configurations
  • AVDECC, fix AEM_LOCK_ENTITY
  • AVDECC, mappings bugfix

0.1.39 (June 2015)

asi_hono_avb_debug_0.1.39

  • 2620 working audio support
  • multi-channel format support added

0.1.38 (May 2015)

asi_hono_avb_debug_0.1.38

  • slow down ENTITY advertise to every 5 seconds
  • default media clock source is now mediaclock
  • fix stability issue with all streams active

0.1.37 (Apr 2015)

asi_hono_avb_debug_0.1.37

  • key/value store added
  • split front panel control into it's own module
  • jdksavdecc-c, resync with upstream
  • supervisor, update merge mechanism for MRP notifications
  • 4.4D audio output on @ -100 dB fixed
  • 4.4M add parametric EQ and compander
  • Updated bootloader to support ASI262X OLED
  • Firmware updater, wait for MMC device before attempting update
  • DSP logs go to syslog via IPCMUX
  • add PTP as a mediaclock source
  • 1722.1 SET_NAME support added
  • 64-bit AS timestamps are now synthesized when AVTP unpack occurs

0.1.36 (Jan 2015)

asi_hono_avb_debug_0.1.36

  • AVTP, listener, update time offset in packet unpack. Fixes decode of packets with 5 or 7 samples in them.
  • AVTP, correct talker presentation time stamp sometimes being more than 2ms in the future.
  • AVDECC, correct bug in 1722.1 GET_FORMAT response packing.
  • packet buffering, delay changed from 24 to 32 samples
  • sine generator fix, broken in build 0.1.26
  • Listener buffer delay universal control now works
  • Fix 4.4D audio input and output

0.1.35 (Nov 2014)

asi_hono_avb_debug_0.1.35

  • merge RTX AVB development branches
  • add library file for per device I/O counts
  • AVDECC, wait for TalkerAdv MT before triggering Listener LV
  • AVDECC, cleanup listeners when domain becomes empty
  • AVDECC, cleanup TalkerAdv for externally declared attributes
  • AVDECC, fill in many more COUNTER fields correctly

0.1.34 (Nov 2014)

asi_hono_avb_debug_0.1.34

  • AVDECC, in v0.1.29 Listener handling of MSRP Talker LV was changed incorrectly. Re-implement.

0.1.32 (Oct 2014)

asi_hono_avb_debug_0.1.32

  • AVDECC, correct handling of CONTROLLER_AVAILABLE response

0.1.31 (Oct 2014)

asi_hono_avb_debug_0.1.31

  • AVDECC, correct building of CONTROLLER_AVAILABLE message

0.1.30 (Oct 2014)

asi_hono_avb_debug_0.1.30

  • AVDECC, correct more issues with ACQUIRE_ENTITY command

0.1.29 (Oct 2014)

asi_hono_avb_debug_0.1.29

  • AVDECC, fix support ACQUIRE_ENTITY command
  • AVDECC, correct Talker's handling of Listener AskingFailed so that stream can restart
  • AVDECC, correct Listener's handling when it generates AskingFailed due to talker (peer) being unplugged so that ACMP database is reset

0.1.28 (Sep 2014)

asi_hono_avb_debug_0.1.28

  • AVTP, correct presentation timestamp
  • MSRP, correct stream Id in MSRP ListenerAskingFailed when priority in Domain is invalid

0.1.27 (Sep 2014)

  • mediaclkd: Decrease TM_CORR_THRESHOLD to 1/8th of a second

0.1.26 (Sep 2014)

  • mrpd, minor changes related to AVnu testing
  • AVTP, complete re-write of talker packet scheduling to use EDMA
  • AVTP, talker TU logic update
  • AVTP, correct which bit is used for TU for both listener and talker packets
  • AVDECC, add prototype GET_COUNTERS code

0.1.25 (Aug 2014)

  • mrpd, numerous changes related to AVnu testing
  • tag avb_0.1.25-rc0 is a placeholder tag prior to Open-AVB merge
  • gPTP, set PTP_TIMEBASE flag in sync,fup and pdelay req,res,fup messages
  • gPTP, announce immediately after asCapable is asserted if we are master

0.1.24 (Aug 2014)

  • mrpd, numerous changes related to AVnu testing
  • hpisystem, fix possible crashes

0.1.23 (Jul 2014)

  • mrpd, numerous changes related to AVnu testing
  • asiavbd, numerous changes related to AVnu testing
  • hpisystem, fix 4.4D support
  • gPTP, adjust sync rx timeout using the logMessagePeriod field from the peer's sync
  • gPTP, do not randomise announce rx timeout when in P2P mode
  • gPTP, run BMCA immediately when adding a new foreign master if foreign_master_threshold == 1
  • gPTP, wait for first sync message from peer before arming sync rx timeout timer

0.1.22 (Jul 2014)

  • gPTP, do not send sync messages when priority1 is 255 (keep sending announces)
  • AVDECC, supervisor, talker LV only results in a listener AskingFailed, not a listener LV

0.1.21 (Jul 2014)

  • gPTP, do not send sync and announce messages when priority1 is 255
  • gPTP, increment gmTimeBaseIndicator every time we become master

0.1.20 (Jun 2014)

  • gPTP, re-arm sync rx timeout timer when entering PS_SLAVE

0.1.19 (Jun 2014)

  • MCLK, filter incoming AVTP timestamps
  • MCLK, improve handling of timestamp uncertain condition
  • AVDECC, supervisor, declare listener AskingFailed if TalkerAdv is missing when connecting streams
  • AVTP, listener, handle local timestamp uncertain detection
  • MRP, fix two instances of access to freed memory

0.1.18 (Jun 2014)

  • ALERT default mediaclock changed to listener "Stream Input 1"
  • AVDECC, AEM CLOCK_DOMAIN bugfixes
  • AVDECC, supervisor, don't advertise talker failed before ACMP connect request.
  • AVDECC, supervisor, check domain attrib pointer exists before dereferencing it.
  • MRP - comply with note 8 of table 10-3 in IEEE802.1Q-2011

0.1.17 (Jun 2014)

  • AVDECC, AEM bugfix for cluster offset in AUDIO_MAP for many stream ports case

0.1.16 (May 2014)

  • AVDECC, AEM bugfixes for localized strings, fix control data length field for descriptor reads, use single stream port per stream, fix cluster channel count.
  • AVDECC, ACMP extract vlan_id from ACMP command.
  • MRP, minor bug fixes. Only advertize Talker after ACMP CONNECT_TX command.
  • AVTP, don't render frame with invalid version field
  • gPTP, set follow-up information TLV as per 802.1AS

0.1.15 (May 2014)

  • MRP, implement periodic timer
  • gPTP, postpone peer delay calculation until nrr is valid
  • gPTP, run BMC algorithm after receiving a single announce from a foreign master

0.1.14 (May 2014)

  • 1722.1, AEM updates to AVB_INTERFACE descriptor and code addition for AVB_GET_INFO command.
  • AEM, correct entity model name string in the entity descriptor
  • mediaclkd, major update to improve locking
  • jdksavdecc-c, update to resync against parent

0.1.13 (May 2014)

  • MSRP, MSRP New! now propogates Begin! to registrar state m/c instead of rNew!
  • 1722.1, ACMP corrections so that existing connections are queried correctly.
  • ACMP, stream_vlan_id corrections.
  • AVDECC, AQUIRE_ENTITY updates.

0.1.12 (Apr 2014)

  • MSRP, fix merging between TalkerAdv and TalkerFailed
  • ACMP, response now includes stream_vlan_id
  • gPTP, update to be master capable.
  • 1722.1, update to how Audio Maps and Stream Port Input and Output are implemented. Now have single Stream Port Input/Output with multiple mappings in the Audio Map.
  • Analog i/o, fix microphone input levels.

0.1.11 (Apr 2014)

  • 1722.1, add MAP, CLUSTER, EXTERNAL_INPUT_PORT, EXTERNAL_OUTPUT_PORT descriptors
  • MSRP, add talker failed indications
  • MSRP, fix multiple pdu with LeaveAll set (ie multiple Domain LVA was causing switch to drop the Domain)
  • gPTP, change the minimum allowed peer delay (min_neighbor_prop_delay) to -100ns
  • gPTP, fix handling of multiple sequential peer delay responses
  • gPTP, revert to default log level
  • syslogd, revert to log only locally

0.1.10 (Mar 2014)

  • gPTP, increase log level to DEBUG
  • syslogd, log both locally and via the network

0.1.9 (Mar 2014)

  • 1722.1, bugfix - ENTITY and CONFIGURATION read descriptor command should only succeed for index 0

0.1.8 (Mar 2014)

  • MAAP, small timing change to pass AVnu tests
  • 1722.1, ACMP partial fix for LISTENER_RX_CONNECT for talker that was already connected
  • 1722.1, fix reported firmware version
  • gPTP, set asCapable to false after 3rd multiple reply in a row to peer delay request.

0.1.7 (Mar 2014)

  • gPTP, implemented check for minimum allowed value for peer delay. When peer delay is below the minimum asCapable is set to false. min_neighbor_prop_delay is set to -300ns
  • gPTP, improved peer delay calculation taking into account neighborRateRatio
  • DSP, added peak meter to testsine generator node

0.1.6 (Feb 2014)

  • mrp, check mac address on rx'd PDUs
  • asiavbd, in/out stream state machines no longer require GM_PRESENT to run

0.1.5 (Feb 2014)

  • mrp, more LVA timer changes
  • mvrp, register default vlan on startup

NOTE: AScapable has been observed to never be set when gPTP neighborDelayThres is set to 800ns (using Extreme switch). Use ASIControl to set it to 4s and restart unit if issues are observed.

0.1.4 (Feb 2014)

  • mrp, changes to LVA handling
  • asiavbd, add capability to set gPTP neighborDelayThres
  • boot, power LED now flashes during boot
  • hpisystem, status LED flashes pending a control store to flash

0.1.2 (Jan 2014)

  • ACMP, correct ACMP_RX_GET_STATE return code
  • AVTP, stop talker sending packets upon detection of MSRP Listener Leave

0.1.1 (Jan 2014)

  • MRP, fix bug in rLA! processing sequence
  • updated uboot, rescue image and firmware update process

0.0.18 (Dec 2013)

  • 1722.1, AEM, add STREAM_PORT_INPUT and STREAM_PORT_OUTPUT descriptors
  • 1722.1, AEM, correctly return STREAM ID from GET_STREAM_INFO call

0.0.17 (Nov 2013)

  • 1722.1, AEM, fix LOCALE field number_of_strings

0.0.16 (Nov 2013)

  • 1722.1 AEM, many updates
  • 1722.1 ACMP, fix Sequence ID returned by DISCONNECT_RX_RESPONSE
  • handle listener AskingFailed

0.0.15 (Oct 2013)

  • update to XML format for saving controls

0.0.14 (Sept 2013)

  • MRPD updated so registrar state machine ignores rIn! event (reduces logread -f "noise")
  • bug fix for ethif send that was causing bad talker audio
  • ACMP listener connect causes listener to lookup up talker's vlan and potentially register for it
  • supervisor outstream state machine updates
  • DSP has conservative cache flushing for ethif packet
  • linuxptp updates

Known Issues:

  • AVB AVTP output seems to be missing packets occasionally. Listener input stream reports sequence errors and you can hear clicks in a sine wave.

0.0.13 (Sept 2013)

  • add DSP code profiling
  • add AEM locale and strings descriptors
  • fix size of returned AEM descriptor response PDUs
  • fix PTP issues from August plugfest (MDSyncReceive state machine issue is still outstanding)
  • update MSRP domain and MVRP vlan registration so MRP UNH test should get past go.
  • add SPI JFFS2 filesystem
  • DSP code no longer does cache operations for EDMA/McASP buffers

0.0.9

  • fix HPI Model Name
  • updated ethif driver module in DSP code