XJTAG 3.5 Change Log

This document lists the main changes in each minor release of XJTAG. Please see the Release Notes for a list of breaking changes and other issues for this release.

The fixes are generally sub-divided by product. Please note, however, that fixes applied to XJRunner and XJAnalyser are usually applicable to XJDeveloper and XJInvestigator also.

3.5.5

Released May 15th 2018

  • Fix a potential crash on Windows 10 with the 1803 Spring Creators Update when switching away from the Run Tests screen in XJDeveloper or closing a project in XJRunner or XJInvestigator.

3.5.4

Released 10th July 2017

  • XJDeveloper:
    • Ampersands were not being displayed correctly in test group and test function names.
    • Fix potential crash opening the find dialog on code editor screens.
    • XJLinks would not be recognised if XJDeveloper was started without any XJLinks attached when network licensing was enabled.
    • Fix potential crash after saving a project fails.
    • BOM: fix incorrect parsing of some longer values ending in R or K.
  • XJRunner:
    • Connection test errors could not be expanded in Turkish locales.
    • Allow layout viewer to be opened with an XJRunner-SP licence.
    • Clicking a hyperlink to a pin in connection test output could make the output window go blank.
  • Chain Debugger: Check Chain would report that it passed when doing a DR scan failed.
  • XJRunner Integration: full connection test output link did not work in test output.
  • Connection Test Viewer: streamline exporting the data if nothing is hidden.
  • XJEase:
    • Run post functions in the test group’s profile.
    • Parsing binary literals could sometimes yield incorrect results in x64 builds.
  • SPEA: display an error message when Panel.ini is unparsable.
  • Dynamic Chains: external hardware could not be used in the Chain Debugger, Analyser or the Debug Connection Test.
  • Netlists:
    • Extract BOM information from RINF netlists.
    • Handle new “FlatNet” variant.
  • Help: the tutorial pages were numbered out of order and navigated in the wrong order.
  • Licensing: better error if out of maintenance.
  • Installer: the maintenance list could sometimes get overwritten with an older version when installing older versions alongside newer ones.

3.5.3

Released 26th April 2017

  • XJDeveloper:
    • Fix crash when attempting to display an error or warning containing more than 32 hyperlinks.
    • Fix potential crash reloading externally modified files if both the circuit project file and the pinmap file were modified.
    • Fix potential crash if the XJLink was unplugged while the program was in the process of exiting.
    • Improve matching of resistor and capacitor values from the BOM or from netlists.
    • Add .tar as a possible file extension for ODB++ projects.
    • Don’t check out a networked XJAnalyser licence until the Analyser screen is opened.
  • XJRunner:
    • Fix potential crash after a failure to open an XJLink when starting up.
    • Fix crash running post testing after hardware error.
    • Fix potential crash when displaying very large amounts of output.
  • XJAnalyser:
    • Fix potential crash performing a hard reset.
    • Enable running SVF and STAPL files when dynamic chains are in use.
    • Fix entering frequencies with a decimal point when running an SVF or STAPL file.
  • XJRunner Integration: the link to the full connection test output was not available in formatted log files.
  • XJLink Manager: when viewing licences by application, display ‘Application’ as the column heading rather than ‘Module’.
  • When running on a display with a high DPI, opening the Layout Viewer or Waveform Viewer could cause the main application window to be resized smaller.
  • Logic: fix overzealous block combination on ground net.
  • SPEA:
    • Prevent testpoints on TAP nets from being accessed.
    • Always use PinID when name conversion required.
    • Print site number when testing multiple boards.
  • Installer: XJRunner users database could be left unconfigured.
  • XJDemo v3 example project: make pin 2 a soft ground in the pinmap.
  • Help: Various minor fixes.

3.5.2

Released 23rd March 2017

  • XJDeveloper:
    • JTAG Chain Screen: fix potential crash changing the 1149.6 AC instruction.
    • Connections Screen: fix potential crash running tests after removing a manual device.
    • Categorise Devices Screen: suggest AC coupling capacitors on the negative half of an 1149.6 enabled net.
    • Pinmapping Screen:
      • Reloading a project with a safe pinmap configured caused the pinmap to change to be custom.
      • Always ensure that the current edited pinmap and trst sequence is used when running Check Chain.
    • DFT Screen: saved HTML reports contained absolute paths to images, meaning they could not be moved.
    • Use the term Test Group consistently on menus.
  • XJRunner:
    • Running a post-testing function could fail if tests were forcibly stopped and profiles are in use.
    • Tests skipped due to conditions evaluating to false caused Test Groups to be given a status of mixed.
    • If a test was stopped, its Test Group status could be reported as passed rather than stopped.
    • Conditions that used board names to identify device test functions were not always being evaluated correctly.
  • XJAnalyser:
    • Reload the project if files are modified outside the application.
    • Fix potential crash if an XJLink was plugged in while the application was starting up.
  • Connection Test Output Viewer:
    • Add Apply button to Edit View dialog.
    • Allow filters to be disabled without deleting them.
  • Support self monitoring output pins.
  • XJEase:
    • Hide line numbers inside XJModules in function resolution errors.
    • Errors about function argument mismatches could sometimes disappear.
  • Pinmaps: XJLink2 pinmaps should always have a compat version of 2.
  • SPEA:
    • Fix parsing of the test point list in non-UK locales.
    • Fix the handling of errors that happen during initialisation before a test setting safe values.
    • Don’t add testpoints which are inaccessible from all probes.
  • XJRunner Integration:
    • Test output was not being included in log files when running for a second time.
    • C# example project fixes.
  • Help:
    • Tutorial: fix additional code exercise.
    • XJIO Tutorial: a number of updates and fixes.
    • A number of other updates and fixes.

3.5.1

Released 16th February 2017

  • XJDeveloper:
    • Remove spurious XJPack file version error with an invalid starting number when versioning is disabled.
    • Alt+F4 did not work on the start screen.
    • Fix screen navigation using keyboard shortcuts.
    • Add keyboard shortcuts for layout and schematic viewer.
    • Fix the location of the Update Definitions button on the Library Files Updated dialog.
    • Make it clearer when there are more than 250 errors or warnings and the display has been truncated.
    • XJEase Library Browser: the wrong file was previewed after selecting an additional code file from the details section.
    • Show a scrollbar on the screen explorer if necessary.
    • Fix potential crash closing the BSDL editor.
    • Don’t display board names unnecessarily.
    • Boards Screen: certain BOM files with unfitted devices were being incorrectly imported.
    • Connections Screen:
      • Display a warning the first time the user makes a connection between the board and the XJLink.
      • Redraw table correctly after editing a disconnect.
      • Handle constant pins on disconnects correctly.
    • JTAG Chain Screen: don’t unnecessarily change the Test Reset Order when editing profiles.
    • Categorise Devices Screen:
      • Prevent differential termination resistors from being suggested as series resistors.
      • Set default configuration values for a test device from the BOM when suggesting categorisations.
    • Passive Device Files Screen:
      • Deleting and then undoing the deletion of PDD files could cause a crash.
      • Incorrect error message when attempting to add an existing PDD file that does not exist.
      • Remove PDD files from the unused list if they no longer exist.
      • Newly unassigned PDD files were incorrectly still deemed to be in use and could not be removed from the project.
    • Circuit Code Files Screen:
      • Open new additional code files once they’ve been created.
      • Removing an additional code file now closes its editor window.
    • Test Device Files Screen:
      • Don’t close all editors immediately when doing a Save As or opening a new project in case the user cancels the operation.
      • Avoid reordering busses when they are edited.
      • Set initial focus to the bus name textbox when adding a new bus.
      • Add context menus to view test devices.
      • Improve the performance of saving device files – previously all device files were being recompiled – now we just recompile those that have changed.
      • Removing a test device file now closes its editor window.
    • DFT Screen:
      • Fix DFT coverage figures for pins on multicore devices.
      • Add option to exclude coverage from external hardware.
      • Include external test coverage through logic.
    • XJRunner Setup Screen:
      • Setting a bus override to automatic did not remove the existing override.
      • Persist the bus selection on the Bus Access tab of the Edit Test Function dialog.
      • Remove bus overrides from the project when a test device is removed from a circuit test function.
      • Potential access via a logic block was sometimes not displayed as an override option in the Bus Access tab of the Edit Test Function dialog.
    • Run Tests Screen:
      • Hidden columns could become visible when resizing columns in the XJEase Watch window.
      • Add Resize to Contents menu item to XJEase Watch window.
    • Explorer:
      • Focus on search box after opening a new tab.
      • Add context menu link to view pins in Analyser.
      • Improve the performance of updating Explorer in some circumstances as the project is edited.
  • XJAnalyser:
    • Optimise handling of output when running SVF and STAPL files.
    • Enable the export of SVF and STAPL output to a log file.
    • Fix potential crash after aborting running a STAPL file.
    • Aborting an SVF or STAPL file could leave the hardware in an unusable state.
    • Handle keyboard input to test reset sequences when running SVF and STAPL files.
    • Grey out ‘Ignore project disable values’ when using dynamic chains.
    • Run test reset at a safe frequency after a broken chain.
  • XJRunner:
    • Expanding the test summary with test durations enabled could cause a hang.
    • Fix potential hang if a post test function failed to start.
    • Applying a safe pinmap after finishing testing could cause glitches on PIO pins.
    • Fix crash when generating large amounts of output with very long lines.
    • Fix potential crash if an invalid log file path was entered.
    • If the serial number was generated via NEW_SERIAL_NUMBER, it was not being written into the log file header.
  • Log File Viewer: fix spurious newlines between nets in net detail output.
  • Connection Test Output Viewer:
    • Add button to freeze nets with errors.
    • Remove View All Faults context menu item.
    • Warn the user when freezing too many nets.
    • Add the ability to search for nets and pins in the grid.
    • Remember filters and settings for each data set.
    • Don’t update scrollbars whilst a data set is still loading.
    • Sort nets correctly.
    • Remove spurious empty parentheses after external pins.
    • Add Explorer menu item to context menu.
    • Merge the Frozen and Visible nets tabs.
    • F1 now opens the help.
  • Schematic Viewer: improve the performance of opening the viewer in some situations.
  • Chain Debugger: individual TAPs not always tested correctly when Check Chain fails.
  • BSDL Library:
    • Fix potential crash adding a file that contains custom cell types.
    • After cancelling adding a file, in some circumstances it was then impossible to add a file or to create a new category.
    • Don’t display design warnings when adding a file.
    • Fix potential crash when deleting a category.
  • XJRunner Integration:
    • LabVIEW example: prevent browser context menu sending Front Panel to back.
  • SPEA:
    • DFT Export:
      • Add supernet section listing connected nets.
      • Add option to exclude external hardware test coverage.
    • Allow more than eight pins to be simultaneously contactable to support bed of nails machines.
  • XJEase:
    • Always output any chain error in CHECKCHAIN.
    • Fix potential debugger startup crash caused by over-zealous AV software.
    • Sometimes phantom breakpoints could occur when starting running tests after the previous run was stopped.
    • Improve compiler performance generating the XJEase executable.
    • Fix crash when viewing the details of the XJTAG_VERSION built-in constant in the XJEase Watch.
  • Connection Test:
    • Give more information when Don’t Touch nets are encountered to make it easier for the user to identify the fault.
    • Prevent driving against uncontrolled logic in certain circumstances.
    • Nets could be duplicated in the list of terminated nets when two nets with a termination resistor are actually shorted.
    • Mark AC JTAG pins in open error reports so that the user can spot if there is 1149.6 capability on one side of a coupling capacitor but not the other.
    • Improve detection of logic defects when logic is connected to 1149.6 capable pins.
    • Don’t inadvertently use disabled external hardware pins.
  • Logic: improve error message when failing to create the safe bitstream.
  • SVF:
    • Improve performance and reduce memory usage.
    • Remove obsolete and unused PIO support.
  • STAPL:
    • Fix crash running a STAPL file on an x64 build in certain circumstances.
    • Fix potential crash with STAPL files that give incorrect data lengths.
  • XJLink2: ensure that output voltages get reset back to the correct value after the XJLink has been powered down due to hibernation or sleep.
  • Installer:
    • Don’t allow upgrades that change the platform – require a manual uninstall first.
    • Reinstate missing SPEA integration DLLs.
    • Don’t install SPEA integration executable in x64 installs.
  • XJDemo v3 example project:
    • Remove project notes.
    • Disable driving READY pin on IC3 since causing occasional spurious test failures.
    • Provide a copy of data.bin rather than generating it.
    • Use standard version of IIC.xje from the library.
  • Help:
    • Add tutorial exercise for dealing with serial numbers.
    • Improve XJDeveloper menu documentation.
    • Add help for XJDeveloper start screen.
    • Remove sources.list artifact from generated zip files.

Main features in version 3.5

Please see our blog post for more details about this release.

  • 64 bit build available alongside the existing 32 bit one. [Read more]
  • XJDeveloper/XJRunner:
    • Allow tests in the test list to be run conditionally, based on the status of previously run tests or on any other condition [Read more].
    • Allow precise control over how pins on a test device are accessed per test function [Read more].
    • Allow test functions with parameters to be added to the test list [Read more].
  • Connection Test: full output view, allowing you to see how the automatic fault diagnosis came to its conclusions and also allows you to prove more easily that a particular net took part in the test. [Read more]
  • XJEase: allow external hardware to be used from XJEase functions and in test reset sequences to read and write pins.

Smaller enhancements and bug fixes

  • XJDeveloper:
    • Make it possible to disable external hardware.
    • Make it clearer which devices need further action on the Suggest Categorisation dialog.
    • Update the list of uncategorised devices after adding a custom logic device.
    • XJEase Library Browser:
      • Show XJModule documentation.
      • Show bus disable values and test coverage.
    • Board initialisation functions that access the JTAG chain could cause Analyser and Debug Connection Test not to work.
    • Performance improvements opening projects and categorising devices.
    • Improve the performance of opening projects.
    • Code editors could remain disabled after using the Analyser, Pin Mapping or Debug Connection Test screens with dynamic chains.
    • Was possible that Connection Test could report uncategorised devices that XJDeveloper did not.
    • Boards screen: fix potential crash adding ICT information to a board without BOM.
    • Power/Ground Nets screen: fix crash categorising a power net after reloading files that had been modified outside XJDeveloper.
    • Test Device Files screen: improve how available functions are listed in the code editor.
    • XJRunner Setup screen: don’t redraw Explorer unnecessarily when editing the test list.
    • A number of improvements to remembering screen layout.
    • Various minor UI fixes, e.g. default column widths, minimum dialog sizes, etc.
  • XJAnalyser:
    • Display net names in the pin list and pin watch windows.
    • Editing the JTAG Chain on a unsaved new project caused a cannot find file error.
    • Only display a warning once when overriding a constant pin.
    • Don’t go back through SAMPLE to get to EXTEST when using dynamic chains.
    • Fix the display of write values of oscillating pins in SAMPLE.
    • Holding the mouse button down on the chain view caused the waveform view to stop capturing.
    • Fix confusion around copying BSDL files when creating a new project.
    • Newly added constant pins were not being applied once the chain had been run.
    • It was possible to add a custom cell type package file with no BSDL file selected causing a crash.
    • Don’t display pins that are not present in the BSDL file – two extra pins were being displayed for the processor on the demo board.
    • When doing a Hard Reset or Attach New Board, apply the safe pinmap as well as switching off the power.
    • Fix crash displaying device properties for a leaded device with more than 400 pins.
    • Going to a pin on a multicore device did not work from Connection Test results.
  • XJRunner:
    • Close the serial number dialog and start testing if a scanned serial number ends with a new line character.
    • Hyperlinks to devices in test output sometimes did not work.
    • Fix potential crash after an over-current.
    • Fix error writing log files if all tests are skipped and formatted log files are enabled.
  • Log Viewer:
    • A number of UI enhancements.
    • Fix crash opening a folder when the entered text is not a valid directory name.
  • XJRun: write out formatted log files if they’re enabled in the project.
  • Chain Debugger: EXIT and broken chain did not always get reported during Check Chain.
  • XJEase:
    • READABLE and WRITEABLE functions improved to be more accurate, taking profiles and logic constraints properly into account.
    • Improve driver and input selection.
    • Remove deprecated FREAD function.
    • Remove deprecated test coverage format in device files.
    • Display warning about deprecated GET_PIN_STRING_INFO function.
    • Inverting the result of concatenating constant values could yield incorrect results.
    • Raise a runtime error if STROTOINT fails.
    • Display the correct line number after a broken chain inside a test reset sequence.
    • Add DEC builtin function.
  • Connection Test:
    • Errors were not always reported when AC and DC test results conflicted.
    • 1149.6 stuck at faults were still reported with AC testing switched off.
    • Fix handling of DIFF_TERM nets that share a common control but are not grouped.
    • Fix reporting of errors on multicore devices.
    • Missing DIFF_TERM was not detected if AC testing not performed.
  • Debug Connection Test:
    • Initialise any external hardware before running.
    • In random mode, randomise the driver pin too.
    • Add option to test all driver pins on each net.
  • Logic: logic not reset correctly for use in XJEase after a SAFE or at the end of testing.
  • Dynamic chains:
    • Make it clearer what TCK frequency is being used in the Validate reset sequence step output.
    • TAP state was not remembered correctly when switching between subchains in reset sequences.
  • SPEA: issue matching pin names between TPList.txt and PinList.txt.
  • XJRunner Integration:
    • Ensure that the correct profile is used when running an individual TestFunction.
    • Tidy up LabVIEW example VIs.
  • Installer: remove links to PDFs from the Start Menu.

Older versions

3.4 | 3.3 | 3.2 | 3.1 | 3.0 | 2.7 | 2.6 | 2.5 | 2.4 | 2.3 | 2.2 | 2.1 | 2.0


We welcome any suggestions for improving our products. Please contact us with any comments you may have and we will look into incorporating your ideas into a future version.