Data Record AD, PEF Failed to Start. Add PEs.vi : There Is No Connection to the PEF Engine

Updated Nov 1, 2023

Reported In

Software

  • Data Record AD

Issue Details

After updating my configuration in the Data Record AD Configuration Editor, I get the following message when running the Data Record Application. 
PEF Failed to Start
PEF Interface - Add PEs.vi : There is no connection to the PEF Engine. Use the PEF Interface - Connect to Engine.vi to establish a connection to the PEF Engine.
Invoke Node
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
Inner Exception: 
Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: <. Path ", line0, position0. 
<append><b>Newtonsoft.Json.JsonReaderExceptoin</b> in ADAS Utilities.lvlib:Read Configuration from File.vi->ADAS Utilities.lvlib:Create Plugin Instances from Config File.vi->Root Service.lvclass:Root Service.lvclass:Root Service Initialize PEF.vi:3630001->Root Service.lvclass:Handle Message.vi:1970001->Service Host.lvclass:Service Message Callback.vi:2450002->SystemLink Service Comms.lvclass:Event


Data Record - use wrong config file error
 

Solution

The PEF engine not starting can come from a variety of issues, most often from it being in an error state. For general steps check the following: 
  • Make sure you are pointing to a Data Record AD .json configuration file and not the Data Record AD System Configuration Editor's project file with extension .adconfig.
  • Try deploying an empty configuration with no plugins to isolate if a specific plugin is causing the error.
  • Restart the software and the PC.
  • Check the PEF Engine is installed and a compatible version with your Data Record AD application
    • Attempt a repair on this software package.
PEFPackage.png
  • In the Data Record AD Application window, review the error message in red and contact NI if there is no online information available.

The Data Record AD Application and underlying PEF Engine require a valid configuration file to start. This is in the form of a JSON file.
In the error message on this Knowledgebase article, there was no .json file created. The following line of the error message details an error parsing the 1st character of the .json, because there is not one to process. 
Unexpected character encountered while parsing value: <. Path ", line0, position0.

Ensure there is a valid configuration file present for the NI Data Record AD software to run. If you have used an incompatible character in the title of your .json file, the arguments line and position will identify the character to change.

To generate the JSON file, make sure you export the configuration from the Data Record AD System Configuration Editor using the Export Configuration button.
Pointing to the .adconfig file used by the configuration editor instead of an exported JSON will result in the error message above.

Data REcord AD Generate Configuration
 

Additional Information

The .adconfig file is a valid only for the configuration editor and acts as a reference file to keep track of your settings and setup for the Data Record AD System Configuration Editor program. 

A configuration project (.adproj) can contain multiple configuration files (.adconfig) to keep them all together in one place and make it quicker to export different variants of Json file to the Generate Configuration default file path shown in the pictures above.

For example, you may have one .adproj for a specific vehicle or rig and then multiple .adconfig files that generate a JSON with or without logging, single camera or multi-camera or different options for settings like monochrome/colour or pixel depths of images etc.