Changing a DNP Master from UDP to TCP in System Configurator

A frustrating situation that may occur from time to time when programming SCD5200's is creating a DNP master and adding it to a UDP Master Group, only to discover that the device doesn't support UDP, only TCP. Normally one would have to detach the device, reattach it to a TCP Master Group, and remap any points to slaves. This can be a monumental time waster, so I will share how we can cut some corners and move it with a bit of database back door banter.

  1. Navigate to your cygwin directory and start bash. (set your window width buffer to 2000 to make things look nice)syscfgtcpudp1
  2. Login to the SYSFG database
    psql -d SYSCFG
  3. Enumerate your dnp protocol masters
    select * from protocol_master_dnp;

    Note the protocol_type_oid column. For me, tcp devices show up as 115, and udp masters are 552 (for dnp slaves udp is 553 and tcp 99). Your version of System Configurator may have different numbers here.

  4. Enumerate your dnp protocol master groups
    select * from protocol_master_grp_dnp;

    Note the prot_grp_type_oid column. Mine shows 551 for UDP, and 64 for TCP.

  5. Change the DNP Master type, and change its protocol group. Write down the oid for the UDP Master Group and the oid for the UDP Master that you want to change to TCP. For me those numbers are 201506300351335920 and 201505120209572450. Now:
     update protocol_master_dnp set protocol_type_oid = 115, protocol_grp_oid = 201506300351335920 where oid = 201505120209572450;

And that's it!

| August 16th, 2015 | Posted in Foxboro, SCADA |

Leave a Reply