Document toolboxDocument toolbox

(8.D.2.6) AWE Designer

AWE Designer 8.D.2.6

2024-AUGUST-15

New Features

  • Designer will now show error messages for invalid layouts when pressing Propagate Changes

Enhancements

  • Improved license authentication robustness for users who cannot access DSPC web license server

  • Updated AWD/AWJ formats to no longer require prebuilding layouts while loading

  • Made various internal improvements to improve layout build and load times

  • Updated JSON engine used internally for processing .json data for speed improvement

  • Added a warning for users when saving layout with newer AWD/AWJ version

  • Improved error reporting when attempting to generate a ModuleList.h file with an invalid layout name

  • Improved module I/O information included in profiling data

Bug Fixes

  • StatusSet execution order now behaves correctly for subsystem target module

  • Now preventing excessive get_module_state messages when using subsystem inspectors

  • No longer listing duplicate module classes in the missing module list dialog

  • Updated CRUS generation to throw error if using a ChangeThread module

  • Fixing build of some layouts using feedback wires across multiple subsystems

  • Deleting a module will no longer throw cryptic error messages if unrelated modules are not configured correctly

  • Corrected issue with stale clockDividers in Source modules when switching between single and multi-instance targets

  • Fixed issue in Native target where sample rate info from audio device was not being propagated to layouts

  • Improved robustness of renaming user inspector panels

  • Corrected handling of empty schema versions in CRUSs, and excluded pointer variable types from CRUS manifests

  • Fixed deleting CRUS/RUS from the module browser in the Standard edition

AWE Designer 8.D.2.5

2024-JUNE-29

New Features

  • Reduced load and save times for AWJ files, and updated AWJ version to 3.0

  • Added option in Layout Properties menu to force bind_wire commands to happen before other wire allocations

  • Added options in Generate Target Files menu to select target instanceID and to include a Lookup Table in the generated .awb/.aws

  • Added support for Multi-Instance in Module Tests tool

  • Added support for Multi-Instance and Multi-Canvas in the Tuning Interface Test tool

  • The minimum MATLAB version required for using Pro editions of Designer has been updated from R2017b to R2021b

    • Designer is no longer tested with MATLAB R2017b, so using this version may result in inconsistent or faulty behavior

Enhancements

  • Improved the validation of AWJ files against a custom JSON schemas

  • BuildFlash.exe tool now warns user when filenames are truncated due to length limitations

Bug Fixes

  • Fixed issue with building Multi-Canvas layouts when different instances have different block sizes

  • Improved error detection and message clarity for invalid subsystems with only a virtual module between input and output

  • Ensuring that correct target information is available in profiling after doing attach to running target

  • Fixed issue that was preventing layouts saved with invalid paths in ParamSet module from being loaded

  • Execution order for Param Set and Status Set style modules can now target modules in subsystems

  • Fixed issue where the 'controlled by' field for modules on the canvas was not always being updated

  • Removed support in Designer for module argument inputs beginning with '0b'

  • Fixed issue where module argument strings starting with '0x' were being improperly converted to decimal values

  • Fixed issue in Designer when running on Multi-Instance target with more than 16 instances

  • Updated AWE Server Flash Manager to be able to access different Flash File Systems on Multi-Instance or Multi-Canvas target

  • Loading and saving module arrays from file now maintains full precision

  • Fixing corruption in layout file after running process files

  • Fixing user inspector operability after running manual profiling

  • Fixed a number of issues that could cause Tuning Interface Test to hang, and improved flexibility of modules required to run the test

  • Fixed issue where copying an invalid subsystem to a new layout could corrupt the layout

  • Convert to Subsystem will now retain custom objectIDs for modules

  • Failed attempts of Convert to Subsystem now correctly restores original subsystem

  • Designer now throws a warning if the output HW pin is not fract32

  • Restored the right click Help option for RUS/CRUS on the canvas

  • Improved robustness of test_start_audio MATLAB function in the case of Multi-Instance targets

  • Fixed issue when loading layouts with out-of-sync module control information

AWE Designer 8.D.2.4

2024-MARCH-15

New Features

  • Updated AWJ version to 2.1 to reduce overall file size

Enhancements

Bug Fixes

  • Updated peak profiling tool to always plot last value and to support clockDividers >= 10

  • Fixed support for CRUS that include MATLAB subsystem modules

  • Copy pasting a RUS will now always control the correct User Inspector

  • ObjectID's can now be updated for modules even if layout can't be built

  • Prevented users from updating module arguments while a layout is running

  • Fixed Example module pack's VS project

  • Corrected AWJ saving of any font size used in Annotation modules

  • Fixed canvas labels for all subsystem types for User Inspector values

  • Subsystem canvas labels are no longer shown in raw double precision

  • Prevented unnecessary ModuleList.h files from being generated for multi-canvas targets

AWE Designer 8.D.2.3

2024-JANUARY-26

New Features

  • Created a Feedback Settings module that enables setting feedback wire properties using Layout Variables

Enhancements

  • Added 'Hierarchy Level' column in exported profiling reports

  • Allow RUS to be loaded from folders that contain a comma in the name

  • Improvements to layout build times:

    • Removed module runtime status from Subsystem canvas text

    • Improved build time progress bar redraw performance

    • Removed unnecessary redraw when building

    • Removed extraneous target reads when redrawing canvas after completed builds

    • Removed obsolete functionality in generate_version. Function now always returns -1

    • Removed extraneous target queries messages when building layouts

Bug Fixes

  • Fixed Attach to Running Target for Multi-Canvas applications

  • Fixed profiling percentage calculations in Multi-Rate, Multi-Instance systems

  • Fixed Push Button User Inspector for Multi-Instance systems

  • Made update to avoid unnecessary target queries for read-only Checkbox User Inspectors

  • Removed test-only code that could cause system to become unstable in case of a test failure

  • Added 'extern "C"' to generated InitAWB.h files to improve C++ application support

  • Improved the canvas text for Reusable Subsystems

  • Removed newline from canvas text when module status is not Active

  • Fixed peak profiling not working with multi-instance targets when active instances are not consecutive

  • Fixed using a semi-colon separated list of variables to be controlled via one user inspector

    • Note that you cannot use variables in different instances with one user inspector, they must all be on the same instance

    • An error notifying the user of this will only show if you open the user inspector after building and running the layout

  • Fixed creation of layouts using subLayoutIds for non-multi-instance targets

AWE Designer 8.D.2.2

2023-NOVEMBER-8

New Features

  • Module documentation and Designer User's Guides are now hosted on DSP Concepts website

Enhancements

  • CPU load per core is now displayed in AWE_Server if target has defined core affinities

  • CPU overflows in AWE_Server now calculated correctly for layouts running across multiple cores (SMP)

Bug Fixes

  • Module properties window will no longer close when a layout is run

  • Matlab will now force values to be within min/max range set by the module variable or array

  • Fixed failure with virtual modules in feedback wire path

  • Fixed issue with module compatibility with previously saved AWJs

  • Fixed loading of AWD's that contain subsystems with no input or output pin

  • Fixed propagation of accumulated delay through subsystems

  • Update AWE_Server to do deferred processing on all Native instances, not just instance 0

AWE Designer 8.D.2.1

2023-SEPTEMBER-18

New Features

  • (BETA) New Multi-Instance feature allows processing of audio across multiple AWE Core instances on different cores in a single layout

    • Native target now defaults to 4 instances, editable in AWE_Server

    • Relies on a new sharedHeap buffer allocated in shared memory on the target

    • Performs all IPC of audio using new IPC Buffer module

    • Released as a beta feature, with known limitations:

      • IPC Buffer module will be updated in compatibility breaking ways in future releases. Will need to update AWE Core and Designer to align

      • (Native target only) deferred processing only works on Instance 0. Use Instant updates for Param Set and other modules when on other instances

      • Module regressions can only be run on Instance 0

      • RUS and CRUS with User Inspectors can not be run on instance 0

Enhancements

  • Redesigned and improved the Profile Block by Block and Manual Profiling menus

    • Manual Profiling moved to Profile Running Layout menu and layout must now be running to use

  • Redesigned and improved the Peak Profiling menu in Designer - summarize

  • Improved AWJ loading to allow hierarchical module names to exceed 63 chars

  • Added default RUS path to default Designer installer search paths

Bug Fixes

  • Fixed issue where AWJs weren't storing output pin properties, causing spurious diffs in AWJ files

  • Fixed issue with saving AWJ where default values of clockDivider were not being stored, even if required

  • Saving updated RUS's that have User Inspectors will now store module variables correctly

  • Fixed bug when deleting feedback wires that was causing build failures

  • Cleared feedback wire status from modules when copy / pasting to avoid build errors

  • Fixed system test errors for modules connected to feedback wires

  • Updated to correctly fail builds if output pin does not have a clockDivider of 1

  • Fixed issue with layout variables where module arguments were being overwritten with defaults

  • Fixed syntax error in scripts generated from generate_mfile.m

  • Removed an unnecessary error message when clicking on module classes in Layout Properties menu

  • Removed obsolete SMP module from Designer

AWE Designer 8.D.1.3

2023-JULY-21

Enhancements

  • Improved functionality of the Advanced menu in Sink inspectors

Bug Fixes

  • Fixed issue in User Inspector Controls not honoring array element accesses

  • Interpreted modules now support passing multiple input arguments to preBuild and postBuild functions

  • Fixed problem where custom functions assigned in Interpreted Modules were not being correctly assigned if they did not have spaces around equal sign

  • Fixed system test failure for ParamSet

  • Fixed issue with reverting RUS to subsystem not restoring canvas size

  • Renaming a CRUS that contains custom ObjectID's no longer causes layout build failures

  • Added missing module names to missing module error message when using AWJ

  • Fixed file validation logic in get_gsys to allow passing in AWJ files

  • Fixed issue where Debug modules could be excluded from AWS file when generated in Debug mode

  • Corrected manual profiling tool to use the layout's instance ID instead of 0

  • Fixed issue loading arrays from .csv's with an extra trailing comma

  • Designer Layout Properties menu now includes virtual modules in total module count

  • Ensuring that Peak Profiling tool does not plot extraneous zeros at the end of profiling

  • Fixed an issue with using SPI tuning interface with multi-instance target

  • Fixed AWE Server crash if switching instances but the target is disconnected

  • Removing unnecessary redraws when scrolling horizontally

  • Setting Debug Status is now disabled in protected subsystems

  • Improved error message clarity for frequency response computation with no markers

  • Fixed issue with propagating channel names across subsystems

AWE Designer 8.D.1.2

2023-JUNE-2

Enhancements

  • Will now detect if an input WAV file is missing before building the layout

  • Improved robustness and usability of layout variables

  • Updated taskbar icons for Designer and AWE_Server applications

  • Now allowed to replace a RUS that has the same name as an existing module

  • Improved notification to user when overwriting a CRUS

  • Removed 'subsystem' tag from default module search list for new RUS/CRUS

  • Removed unneeded information from AWJ files to make file size smaller

  • Column names for arrays in the module properties panel will now show associated channel names when appropriate

  • Added multiple sections and improved clarity to DocHub Designer documentation

Bug Fixes

  • Source modules will now correctly inherit clockDivider from subsystem pins

  • ModuleList.h files for layouts with CRUS will now include all necessary module classes

  • Fixed issue with clashing objectId's and unsaved inspector values when using multiple of the same CRUS

  • Sharing a CRUS with a user inspector will now work on any machine

  • Deleting a CRUS will now delete all relevant files

  • Added missing header files to installer to allow custom module creators to successfully compile

  • Fixed issue where modules would lose debug status if a module argument was changed

  • Changing arguments of a module will now result in the proper default values for new variables and arrays

  • Corrected how module variable steps are handled if they are beyond the allowable variable range

  • Now safely handling NaNs when entered in module variable values in the module properties window

  • Inspector values will no longer be corrupted if they are opened multiple times

  • Copying modules beyond the size of the canvas will no longer corrupt the canvas size

  • Corrected position of layout name on the canvas

  • Fixed awe_designer script so it no longer opens an unresponsive window if passing in an AWD

AWE Designer 8.D.1.1

2023-FEBRUARY-15

Enhancements

  • Improved error message clarity when modules are not found in an AWD

  • The Instance drop-down list on the canvas now correctly populates based on the connected multi-instance target when an AWD is opened

Bug Fixes

  • Fixed forward compatibility issue with loading AWJs

  • Fixed an issue with loading AWD's with subsystem modules set to Debug runtime status

  • Loading an AWD now restores all Subsystem module variable values

  • Fixed a possible crash related to the module alignment feature on canvas

  • Fixed a possible crash when using an .ini file with invalid characters or sections

  • Enabled the Permissions -> Allow Tuning feature on the right-click menu for Subsystems

  • When in tuning mode, the Paste Settings option now sends updated values to the target

  • Fixed invalid heap memory values for profiling results on multi-instance targets

  • Audio Start/Stop commands sent from AWE Server now support multi-instance targets

  • Deleting paramSet will now remove the "controlled by" variable element on the canvas

  • Router module now allows adjustments to the number of output channels

  • Fixed an issue with the BufferSourceInt32 array input being inappropriately rounded for large numbers

  • Image Inspector now correctly loads file paths that have been manually entered

  • Added header file to Pro installer to allow users to compile a subsystem module with flattenOnBuild=0

  • Corrected the default handling of complex data for modules while in Bypass mode

  • The Update Property feature now works for subsystem modules

  • Fixed VS projects included for the Example module pack

  • Fixed a bug that was ignoring case of module names and preventing wiring of modules

  • Fixed a problem with Postbuild ignoring modules marked for debug when built for release

  • The channel name defined inside a subsystem is no longer overwritten by the input channel name

AWE Designer 8.C.2.7

2022-DECEMBER-05

New Feature

Enhancements

  • New DSP Concepts logos implemented in the AWE Designer platform

  • Native target's fundamental block size can now be set by the user in AWE_Server.ini

  • Improvements to the Creating a User Inspector and Reusable Subsystems (RUS) sections of the AWE Designer User Guide

  • Module size is automatically reduced when the number of input pins is reduced

  • Module pin information is now saved in AWD files

Bug Fixes

  • Fixed an issue in the Designer canvas instance dropdown that prevented using more than 7 instances

  • Fixed an intermittent crash in Table module inspectors

  • Convert to Subsystem feature now creates pins in the order of the module positions on the canvas

  • Removed spurious error message from MATLAB console while using Convert to Subsystem feature

  • Fixed an issue with renaming subsystem pins

  • User Inspector Panels no longer change to a debug state when the subsystem is changed to debug

  • Updated AWJ's to save subsystem canvas size

  • Corrected the order in which coefficients are loaded from AWD's to fix an issue with Hilbert module and other subsystems

  • Corrected a problem with source modules not inheriting clockDividers correctly when copied from other layouts

  • Fixed a problem preventing the creation of feedback wires from arbitrary wires

  • Error dialogs no longer cut off text underneath the scroll bar

  • Fixed an issue with deleting or showing help for RUS in Standard and STMicro editions of Designer

  • Fixed an issue while creating RUS with object ID's assigned to subsystem modules

  • Corrected the implementation and usage of complex range input pins

  • Fixed generate_mfile MATLAB script script to support subsystems with layout variables

  • Fixed set_feedback_pinType MATLAB script to actually set the feedback type of the pin

AWE Designer 8.C.2.6

2022-SEPTEMBER-21

New Feature

  • Reusable Subsystems (RUS) can now be deleted using the right-click menu from within the module browser

Enhancements

  • Layout loading times have been improved by avoiding redundant operations

  • Flash File System maximum filename length increased to 56 chars

  • Invalid variable mask values (greater than 24) are no longer generated in ControlInterface.h files

  • Sink Properties modules have been updated to avoid warnings when rounding the sample rate

Bug Fixes

  • Fixed an issue that prevented some wav files from being fully processed

  • Fixed frequency domain plotting resolution of log x-axis in Sink Inspector

AWE Designer 8.C.2.5.A

2022-JULY-21

Bug Fixes

  • Fixed issue with coefficients not loading if array size is larger than default

  • Improved robustness of startup code to avoid crashes with corrupted persisted settings

  • Fixed custom inspectors so that they properly save and load settings

  • Fixed problem with missing modules in a layout not being fully deleted

AWE Designer 8.C.2.5

2022-JULY-05

New Features

  • New Reusable Subsystem (RUS) feature can be used to generate shareable and portable subsystems using native Audio Weaver modules

  • New Interpreted Modules can be used to share custom made Audio Weaver modules with users of Standard Designer

Enhancements

  • Extended AWE Server USB proxy supports targets with more than one USB HID endpoint

  • Updated Module User's Guide to explain building of custom modules in Visual Studio in x86 mode

  • Improved error message when using Layout Variables with module variables instead of module arguments

  • Extended layout compile timeout to support very large layouts

  • Added more .awd example files to Examples/Module Usage

  • Results in Designer's profiling window are now cleared between RT and Manual Profiling runs
    AWD Example folder is now the default initial path when opening AWDs from the File menu

  • Feedback wire error now highlights module causing error

  • Profiling results now show the channel count of each module

Bug Fixes

  • Fixed issue where updated module paths were not persisting in Standard edition of Designer

  • Extended default timeout for flash erase commands sent to target to allow for long erase times

  • Fixed issue loading .awj files that contain measurement plots

  • Fixed issue where subsystems with Release modules were improperly marked as Debug and failed to build

  • Open All option on subsystems tab menu now works fully in runtime mode

  • Improved the robustness of AWE Server's audio device detection and loading to avoid crashes at startup

  • The search bar in Designer no longer searches through subsystem modules

  • Fixed possible audio glitch when using multi-rate modules and the buffer pool wire memory algorithm (beta)

  • Prevented users from changing protected subsystems and layouts by using keyboard shortcuts

  • Updated MATLAB scripts to more robustly detect if the target has floating point or fixed point modules

AWE Designer 8.C.2.4

2022-MAY-12

Enhancements

  • Native target updated to prevent audio processing from being interrupted by lower priority AWE tasks

  • Improved error reporting when surpassing the maximum number of channels on a wire

  • Updated profile_all_modulelibsto accept arbitrary block size (RT685 & Hexagon)

  • Changed default .csv names for module testing outputs for clarity

  • Improved formatting and clarity of saved .csv for peak profiling tool

  • Improved presentation of the Native audio preferences GUI

  • Improved module spacing and distribution capabilities in Designer

  • Validated Windows 11 compatibility

Bug Fixes (Modules)

  • Corrected build error when ParamSet modules are set to debug

  • All source modules now have empty clock divider when first created

  • Fixed error checking for modules to prevent building with input pins of differing sizes

Bug Fixes (Canvas)

  • Module variable values shown on canvas will now update when modified by User Inspectors

  • Feedback wire with inherited properties now succeeds without subsystem input pins

  • Changes to Layout Properties now prompt user to save layout

Bug Fixes (General)

  • AWJ files with empty subsystems now load successfully

  • Fixed failure for PFID_GetExtendedInfo when using SPI Tuning Interface

  • Fixed capitalization typo for AWECore header file in generated ModuleList.h files

  • Addressed issue with "Record File Name" textbox field in Layout Properties menu not always being editable

AWE Designer 8.C.2.3.A

2022-APRIL-15

New Feature

  • Removed Reusable Subsystem feature to allow for future incompatible improvements

AWE Designer 8.C.2.3

2022-APRIL-6

New Features

  • AWE_Server Preferences menu added to expose common settings and options

  • Comm timeouts can now be specified in the Connect to Target menu in AWE_Server

  • Created Fract32 version of test_comm_speed

  • Added ability to select individual modules in system test menu

  • Added Version field to AWJ file

Enhancements

  • Improved speed of accessing module variables, resulting in faster layout build times

  • Improved and fixed issues with precision of floating-point numbers in Designer

  • Improved documentation of help file generation for reusable subsystems

  • Improved error message when two module libraries have a duplicate ClassName

  • Improved error message for non-existent layout variables

  • Improved error messages for User Inspector Controls with invalid modVar values

Bug Fixes (General)

  • The AWD file name no longer overwrites the record file path in the Designer Layout Properties menu

  • Ctrl-S shortcut functions properly while module inspector window is focused

  • Tuning Interface Test tool no longer causes Designer to freeze on failure

  • Fixed bug in feedback wires preventing previously saved AWD's from loading

  • Enabled renaming unconnected subsystem pins

  • Fixed issue with loading newly saved AWD's with subsystem modules in older versions of Designer

  • No longer calling prebuild when a variable is changed while the layout is running

  • Designer no longer freezes when running layout while module array has unapplied changes

  • AWJ files properly store measurement values

  • AWJ files with corrupted or invalid format display a useful error dialog

  • Multiline error windows will now have a scroll bar

  • Corrected baud rate setting for SPI proxies in AWE_Server

Bug Fixes (Interface)

  • "Edit accumulated delay" value is no longer obscured by vertical scroll bar

  • Disabled the "Use Audio file input" Manual Profiling option on embedded targets without a filesystem

  • Designer properly filters module browser on Multi-Instance targets

  • User Inspector Control correctly displays "controlled by" on canvas

  • Fixed flickering behavior of User Inspector Controls

  • Property view populated for User Inspector Control after navigating into subsystem

  • Opening a module inspector no longer closes the module property window

  • Help file is accessible in right click menu for reusable subsystem modules (RUS)

  • Dragging and dropping of a RUS onto an existing module in the module palette other than a RUS is no longer permitted

  • Enabled modifying values in "Array" tab of "Module Properties" when layout is protected

  • Space before = in String Annotations no longer gets deleted

  • Sink inspector successfully draws when in a subsystem and a member of an inspector group

Bug Fixes (Modules)

  • "Convert to Subsystem" on a subsystem with feedback wire completes without Designer freezing

  • Feedback wires propagate new thread ID info

  • Fixed buffer pool error for isolated modules with feedback wires

  • Feedback wire initial values propagate properly

  • Edit box User Inspector Control is usable with Wave File Sink modules

  • Fixed Meter User Inspector Control mapping property

  • Fixed User Inspector Controls attached to debug modules in release build causing Matlab errors

  • Creating User Inspector Control from a Sink module functions properly

  • Knob User Inspector Control properly handles step size with respect to max/min values

  • Sink inspector no longer displays signal at fixed sample rate of 48 kHz

  • Fixed and improved TableInterp and TableInterpXY modules

  • Designer no longer displays clockDivider in Wire Info box

  • Fixed issue preventing use of MeasurementV2 module inspector

AWE Designer 8.C.2.2

2022-JANUARY-7

New Features

  • New support for multiple sublayouts with the same clock divider to be generated in Designer, using BufferUp/Down V2 modules

  • Memory usage for each module and subsystem now shown on the canvas

  • New AWJ text based (json) file format can now be used to save Audio Weaver layouts

  • clockDivider is now a string instead of an integer in the Property Sheet

  • Modules controlled by a User Inspector Controls are now shown with dashed outlines

  • HTML doc files for reusable subsystems now have some fields automatically filled in

Enhancements

  • Internal updates significantly improve layout build times

  • Search bar in Designer will now return results for all subsystems in layout, not just opened subsystems

  • Closing MATLAB dialog now always returns topmost window back to Designer

  • The module property view is no longer closed when Running or Halting a layout

  • Module Tests results now show full hierarchical names for subsystems

  • Allowed Ctrl-S shortcut to work while modifying inspector dialogs

  • Improved help documentation for awe_module/process.m

Bug Fixes

  • Fixed an issue where array variables could be truncated when opening unbuildable system

  • Fixed bug in installer scripts that was preventing VS2010 redistributables from installing correctly

  • Corrected CPU overflow detection for the Native target

  • Fixed behavior where second instance of Designer was blocked after closing modal MATLAB window in first instance

  • Fixed issue with "Record File Name" text box not updating when auto-increment/specify is changed

  • Disabled custom module creator wizard menu in unsupportable Standard edition

  • profile_all_modulelibs script will now run even if Profiling folder does not already exist

  • Corrected display of grouping containers in Layout Properties dialog

  • Fixed bug where some modifications to the layout did not mark the system as 'dirty'

  • Sink inspector in subsystem now properly persists settings

  • Now properly persisting channel checkboxes in Sink Inspector

  • Control module count now correctly accounts for Subsystem Inspectors

  • Inspector groups now respect a module's "Allow Tuning" setting

  • Fixed undo and redo behavior for Convert to Subsystem feature

  • Fixed issue with Convert to Subsystem failing in MATLAB 2017b only

  • Accumulated delay now updates correctly in empty_subsystem module

  • Show Channel Names option no longer resets when navigating into subsystems

  • Fixed bug with channel names not fully propagating through subsystems

  • No longer rounding integer array values to 7 digits. Full 32 resolution now supported

  • Default clockDivider for source modules is now correctly

  • Fixed bug that did not allow module arguments to be the empty string

  • Fixed Vertical Alignment and Multiline options combo in canvas text box