Netex-G Library Revision History

This page contains revision history for the NETEX-G library which is used by OEM partners who wish to tightly integrate NETEX-G functionality into their applications.

Version 1.17 4/13/2021

Dropped data with respect to isolated vias.

This condition caused all nets but the one(s) containing non-connected vias to appear. This has now been fixed.

Fixed interpretation of X multiplication in Gerber Macro

The 'x' multiplication operator was being supported but not the 'X'. This has now been fixed.

Scaling large files over 2GB

Scaling would fail and report error when some of the intermediate files were over 2GB. This has now been fixed.

Version 1.16 3/18/2021

Added a net information output file with GDSII export

When a GDSII output file is generated, a net information file is generated (base_name_netinfo.txt

NetexG Windows Library ODB++ Scan

The bin folder contains odbscan_exec64.exe executable.

The odbscan_sample folder contains the odbscan_exec64.exe sample code.

The lib folder contains odbscan64.lib library. The DLL, odbscan64.dll, is currently loaded dynamically, but the .lib file is provided for static builds.
Remove _ODBSCAN_LIB_RUNTIME_LOAD_ preprocessor define and include odbscan64.lib for static build.

The artwork folder contains odbscan64.dll.

The examples/odb_input folder has odb_test_scan64.bat batch file and 220_array.tgz ODB++ example file.

NetexG Linux Library ODB++ Scan

The bin folder contains odbscan_exec64.exe executable and a odbscan_exec script for setting up environment.

The odbscan_source folder contains the odbscan_exec64.exe sample code.

The lib64 folder contains shared object.

The artwork folder also contains shared object.

The examples/odb_input folder has script file and 220_array.tgz ODB++ example file.

Version 1.15h 3/3/2021

Software Updates

Boolean and Gerber validation components have been updated.
This version was compiled with VS2015. VS2008 is discontinued.

Version 1.15g 2/9/2021

Software Updates

Boolean components were updated.

Gerber validation components were updated.

Merging stage (gdsfilt64.exe) input/output synchronization was fixed on Windows.

V1.15f Windows 1/28/2021

Software Updates

Suppress output of component pin vias in ANF output. These vias (entries starting w/ V) are not needed since component pins (entries starting w/ X) are already provided.

Updated boolean modules and Gerber validation modules.

V1.15e Windows 10/20/2020

Software updates

Layer names in 3d output now appear as basenames of Gerber files created from OBB++ importing or from a user instead of the designations found in the 2nd column of B_LAYERS or B_AUX_PROPS sections of .njb file.

This version includes updated boolean engine and library to fix several bugs involving crashes and dropped data.

Updated ODB++ import executables and libraries.

Updated 3Di, XT, and Step output engines and libraries .

V1.15d Windows 9/16/2020

Software Updates

This version includes an updated boolean engine and library which addresses several bugs involving crashes and dropped data.

Updated ODB++ import executables and libraries.

Updated 3Di, XT, and STEP output engines and libraries.

V1.15c Windows 8/5/2020

Fixed incorrect associations of node text to nets with wires

This occurred when multiple identical net labels on separate physical nets were employed. This caused the associations of nets to net numbers to be misaligned by the number of physically merged nets found in GDSII and DXF output. This has now been fixed.

Misc updates

odbgui64.dll and odbgui_main64.dll are used instead of odb2gbr64.dll

V1.15b Windows 1/10/2020

Fixed Padstack Generation

Padstack generation finds, for each via, the largest Gerber flash on each metal layer the via traverses. If the flash size is greater than the via size filter, smaller than the via drill size, or it's on a scratch layer, the flash is ignored.
The via drill size is the default size to use when no Gerber flash can be found. To obtain the correct flashes, the fix was done as follows :

  • Changed flash database ordering and scanning for padstack creations.
  • Reduced via center approximation from 10 to 5 grid.

  • v1.15a 12/2/2019

    This version includes enhancements to boolean engine with respect to Gerber validation.
    This version includes an improved unionization which is now nearly thread independent (polygon order is consistent and independent of thread count).

    v1.15 07/30/2019

    This new version supports ODB++ scanning features. The usage is illustrated in the sample program and ODB++ example batch file.

    v1.14b 07/16/2019

    Revised STEP and PARASOLID argument check. If "-unionize or "-arc" argument is encountered with "-fea" option, a warning is displayed for their unsuitability to FEA.

    The job file now generates a log file if the NetexG program terminates before creating it.

    This version includes a fix to a memory corruption problem during critical section of multi threading license check.

    This version has a more robust ordering of via and flashes. All relevant fields for definition and reference entries are now considered in comparing and ordering entries.

    v1.14a 05/16/2019

    Includes support for STEP and Parasolid outputs.
    Updated example scripts to be more informative and helpful.
    Library provides mechanism to fine tune ODB++ imports and controls for STEP and Parasolid output.
    Includes a bug fix for the GDSFILT module which manifested as a program crash when "blending" intermediate files together.

    v1.14 04/08/2019

    A number of new arguments that enable direct output of STEP and parasolids formats (using new libraries previously part of 3DVU's STEP and parasolid export) have been added. See the page Library for details.

    v1.13 9/19/2017

    New version for Windows 64 and Linux 64

    This version only supports 64 bit on Windows and Linux. 32 bit components were removed. It also includes support for MS VS 2015.

    v1.12 5/25/2017

    ODB Import Layer Groups

    The sNETEXGLIB_IMPORT struture has a new field, "omitGroups", which is an array of integers where each element is a flag for a layer group. The constants in the "eImportGroup" set are defined in "ntxg_lib_const.h". Currently, only soldermask, silkscreen, components, and rout, are recognized.

    This was implemented for a user who wanted to import the copper stackup only without having to enumerate the copper stackup layers.

    Added Incremental Extractions Capability

    The "extractions" field of type sNETEXGLIB_EXTRACTIONS was added to the sNETEXGLIB_OPTIONS structure. It contains the following data fields:

      fileInput       Name of file containing extraction requests
      keepIncrInfo    Tells library to keep incremental files for subsequent runs.
      useIncrInfo     Tells library to use incremental files for actual runs
      count           Reserved for internal use
      list            Reserved for internal use

    The format of the extraction file is as follows:


    Where each set has the following format

      [BASE_NAME <name>]

    The <name> after BASE_NAME is the name of the file to use to generate output filenames. In its absence, the main output filename is used to that end.

    [<NET_NAMES>] is in the following form:


    Each <NM_M> is either a literal net name or a regular expression depicting one or more nets to be included. In the absence of this sub section, all nets are included.

    [<WINDOW(S>] is in the following form:


    Each <W_N> is either in the form of




    Extractions may specify net names and or windows. The net name extractions has yet to fully completed.

    v1.11 4/25/2017

    New Argument to Library

    The sNETEXGLIB_OPTIONS structure has a new field,"mgrArgs", which supports this. It is NULL by default, but if it points to a character buffer, whatever is in that buffer, is appended to the "netexgmgr" comand line.

    Update to Sample Program

    The sameple program now has added "-mgrargs [arg(s)]" argument

    The [arg(s)] are all the arguments that follow "-mgrargs". those arguments are collected and passed into the library's new "mgrArg" option field as one string. This string is then appended to the end of the "netexgmgr" comand line.

    v1.10 4/5/2017

    Daisy chain licensing

    The required output and import license(s) will be acquired and retained and will not be released until closing time.

    Rounded Thermal Draws

    The ODB++ importer was revised with respect to rounded thermal draws.

    The new behavior interprets the gap region in the same way as does Valor's Genesis which measures where the arc, computed from the average of outer and inner diameters, intersects with round ends. The previous behavior computed the gap as the space between round ends.

    v1.09 10/11/2017

    Error and Warning File Formatting

    Added missing newline characters to error and warning messages.

    ODB++ Import Progress Display

    By setting

    pOptions -> preferences.advStgs.execDisplayMethod
    to one of two modes


    the progress of ODB++ importing is displayed. The default mode is NETEXGLIB_EXECDISPLAY_MULTIPLE. To prevent displaying this progress, the mode to use is NETEXGLIB_EXECDISPLAY_NONE.

    Licensing Library Update

    The flexlm licensing library was updated to v11.13.1.2 from v11.3.

    Revised Sample Code
    1. Update usage to display correct executable name.

    2. Add "@<CMD_FILE>" argument to read command line arguments from <CMD_FILE>.

    3. Add "-snglnjbprg" argument to display NJB processing with a single dialog when "-silent" is not invoked.

    4. Corrected spelling of -usetatwin" to "-usestatwin" argument in usage display.

    5. Made usage display available to Linux.

    v1.08 06/01/2016

    Initialize Error Return Structure

    No details provided by programmer.

    Added "-usestatwin" argument to the Example Program

    This is a windows argument invoking the use of a built in Windowss dialog box rather than the use of the newly added status3f32 program.

    v1.08 05/09/2016

    Added arguments to extraArgs sNETEXGLIB_OPTIONS Field

    Error info structure return controls were added to this field:

    -logerr2errinfo         Excludes log errors + respective header and command
                            lines in error info structure returns.
    -maxerr2errinfo:<val>   Specify maximum <val> errors in error info
                            structure returns. This is used in absence of -logerr2errinfo 
                            argument. Default is 100.
    -logwrg2errinfo         Excludes log warnings + respective header and command
                            lines in error info structure returns.
    -maxwrg2errinfo:<val>   Specify maximum <val> warnings in error info
                            structure returns. This is used in absence of -logwrg2errinfo 
                            argument. Default is 100.
    -add_errlog_hdrcmdln    Adds respective header and command lines
                            from log errors in error info structure returns.
    Fix Handling of Extract Section

    The library was adding a duplicate of this section each time it was run. This has been fixed.

    Error Log File Generation has been revised

    The detail log token, <START_OF_NETEX-G>, is used to jump to the first program operation in the log file.

    The detail log token, <END_OF_OPERATION>, is output upon encountering <END_OF_OPERATION> or <END_OF_PROGRAM_LOG> tokens

    ODB++ Import Updated to support SIGNALLYR TYPE instead OF SIGNAL

    No details provided by programmer

    Added NetexGLib_GetFileName Function

    This function, when passed a <file_type> constant will return a desired file name. The constant can be one of the following:

      cFileType_NJB      Netex-G Job File   Contains input information to
                                            execute Netex-G
      cFileType_ERRLOG   Error Log File     Contains brief summary of errors
                                            and warnings detected in Netex-G
      cFileType_PGMLOG   Program Log File   Contains General information about
                                            Netex-G execution
      cFileType_DETLOG   Detail Log File    Contains General information about
                                            Netex-G execution

    v1.07 10/06/2015

    Silent Mode is no Longer the Default

    No details provided by the programmer.

    Added options for DXF and GDSII Output

    (1) commponentLibraries

    (2) disableNameFix (GDSII only)

    (3) flatten

    (4) padMetalFilter

    (5) threeDExtrusions (DXF only)

    Added "-errlog:<file> AND "-wrgtoerrlog" ARGS TO "extraArgs" OPTIONS

    No details provided by programmer

    Added NETSPECIFICPLUS mode TO "import | autoLayerSelect" Options Mode

    This mode allows adding other layers to the netspecific set through the use of "import | layerList" and "import | layerListCount" options.

    v1.05 08/14/2015


    This section currently includes all nets but will later be used to specify a subnet of nets selected.

    Fixed "LoadNetexgLibrary" Error Messages

    No details provided by programmer

    v1.04 07/20/2015

    Force ODB IMPORT output to all be in working directory

    v1.04 03/12/2015

    Remove Short Filename Execution Calls

    No Details provided

    Bug Fix for OEM Key File Path with spaces ...

    programmer'r notes: The argument "-acsp:<oemkeyfile>" was passed to netexgmgr executable without having been quoted. This has now been fixed.

    NETEX-G Page

    Library Download