Update SDF Parameters

Sometimes PolySync Core updates include updates to existing drivers by adding functionality to the SDF, when that is the case SDFs that throw an error will need to be updated to work with updated versions of PolySync Core.

This can occur when you see errors like this:

$ polysync-core-dynamic-driver -n 1
ERROR  [delphi-esr-2.5-1688855652620715] - param : (1145) -- failed to get parameter ID 2004 from SDF node configuration - check SDF configuration or run dynamic driver with '-u' option to update the SDF

Updating the SDF can be done in three ways:

  1. Update one or more SDFs through the command line.
  2. Update a single SDF with SDF Configurator.
  3. Update individual nodes by using polysync-core-dynamic-driver

Update with the command line

To update multiple sdf files you can call update on a directory and the tool will find all psync.sdf files in that path. core-config update <path>

$ core-config update ~/.local/share/polysync/rnr_logs/
Updating /home/ubuntu/.local/share/polysync/rnr_logs/1000/psync.sdf...
Updating /home/ubuntu/.local/share/polysync/rnr_logs/70802/psync.sdf...

To update one sdf file you can call update on a specific file or folder.

$ core-config update ~/.local/share/polysync/rnr_logs/1000/
Updating /home/ubuntu/.local/share/polysync/rnr_logs/1000/psync.sdf...

Update with SDF Configurator

SDF Configurator should detect if the current host’s configuration SDF is out of date and open the Host Configuration Wizard automatically. When working with an SDF from a log file or other location you’ll need to open the Host Configuration Wizard from the menu:

System -> Host Configuration Wizard.

Follow the wizard to Parameter Validation which walks you through setting:

  • The PolySync Core Manager host IP address
  • A host defined in the SDF with a matching IP address

The wizard will list the nodes to be updated, make sure Add Missing Parameters is selected and select Finish.

Update with polysync-core-dynamic-driver

To update individual nodes they can be updated from the command line with polysync-core-dynamic-driver where n is the node number to update.

$ polysync-core-dynamic-driver -n <N> -U -s <PATH>