I have an issue after upgrading to DOF R3++. I only have a SainSmart relay board triggering solenoids. When I open a VPX table, sometimes there is no DOF at all. There does seem to be one difference in the log when it works vs. when it doesn't, which I highlighted in red below (the name of the controller is different). I don't recall if I was getting that exception before, but it doesn't seem to make a difference in the first scenario because the DOF still works.
Log when it works
---------------------------------------------------------------------------------
DirectOutput Version 3.1.6623.21194, built 2018.02.18 11:46
MJR Grander Unified DOF R3++ edition feat. Djrobx, Rambo3, and Freezy
DOF created by SwissLizard | https://github.com/mjrgh/DirectOutput
2018.03.01 16:53:31.181 DirectOutput Logger initialized
2018.03.01 16:53:31.165 Global config filename is "C:\DIRECTOUTPUT\config\GlobalConfig_B2SServer.xml"
2018.03.01 16:53:31.181 Global config loaded from: C:\DIRECTOUTPUT\config\GlobalConfig_B2SServer.xml
2018.03.01 16:53:31.181 Loading Pinball parts
2018.03.01 16:53:31.181 Loading cabinet
2018.03.01 16:53:31.181 Will load cabinet config file: C:\DirectOutput\config\Cabinet.xml
2018.03.01 16:53:31.227 1 output controller defnitions and 1 toy definitions loaded from cabinet config.
2018.03.01 16:53:31.227 Cabinet config file has AutoConfig feature enabled. Calling AutoConfig.
2018.03.01 16:53:31.227 Cabinet auto configuration started
2018.03.01 16:53:31.243 PhilipsHueAutoConfigurator.AutoConfig started...note, actual connection detection will happen asynchronously, and device disabled if not succesfull (check further down in the log)
2018.03.01 16:53:31.539 FT245RBitbangControllerAutoConfigurator.AutoConfig.. Detected FT245RBitbangController[0], name=FT245RBitbangController 0, serial #12345678
2018.03.01 16:53:31.539 Detected and added FT245RBitbangController Id 0 with name FT245RBitbangController 0
2018.03.01 16:53:31.539 Cabinet auto configuration finished
2018.03.01 16:53:31.539 Autoconfig complete.
2018.03.01 16:53:31.539 Cabinet config loaded successfully from C:\DirectOutput\config\Cabinet.xml
2018.03.01 16:53:31.539 Cabinet loaded
2018.03.01 16:53:31.539 Loading table config
2018.03.01 16:53:31.539 Warning: No table config file found. Will try to load config from LedControl file(s).
2018.03.01 16:53:31.539 Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName neptune
2018.03.01 16:53:31.539 Loading LedControl file C:\DirectOutput\config\directoutputconfig40.ini
2018.03.01 16:53:31.539 Min DOF Version is 0.8 for file directoutputconfig40.ini
2018.03.01 16:53:31.654 1 directoutputconfig.ini or ledcontrol.ini files loaded.
2018.03.01 16:53:31.654 Config for RomName neptune exists in LedControl data. Updating cabinet and config.
2018.03.01 16:53:31.669 Table config loading finished: romname=neptune, tablename=Neptune (Gottlieb 1978)
2018.03.01 16:53:31.669 Pinball parts loaded
2018.03.01 16:53:31.669 Starting processes
2018.03.01 16:53:31.669 Initializing cabinet
2018.03.01 16:53:31.669 Debug: Initializing output controllers
2018.03.01 16:53:31.669 FT245RBitbangController Sainsmart 1 with serial number 12345678 has been initialized and the updater thread has been started.
2018.03.01 16:53:31.669 FT245RBitbangController FT245RBitbangController 0 with serial number 12345678 has been initialized and the updater thread has been started.
2018.03.01 16:53:31.669 Debug: Output controllers initialized
2018.03.01 16:53:31.669 Cabinet initialized
2018.03.01 16:53:31.685 Loading shape definition file: C:\DirectOutput\config\DirectOutputShapes.xml
2018.03.01 16:53:31.685 EXCEPTION: Could not open the connection to FTDI chip with serial number 12345678.
2018.03.01 16:53:31.685 EXCEPTION: Thread: FT245RBitbangController 12345678 named FT245RBitbangController 0 updater thread
2018.03.01 16:53:31.685 EXCEPTION: Message: FT_EXCEPTION --> FTDI device not opened.
2018.03.01 16:53:31.685 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FTDI.ErrorHandler(FT_STATUS ftStatus, FT_ERROR ftErrorCondition)
2018.03.01 16:53:31.685 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FTDI.ErrorHandler(FT_STATUS ftStatus)
2018.03.01 16:53:31.685 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FT245RBitbangController.Connect()
2018.03.01 16:53:31.685 EXCEPTION: Targetsite: Void ErrorHandler(FT_STATUS, FT_ERROR)
2018.03.01 16:53:31.685 Connection to FTDI chip 12345678 established.
2018.03.01 16:53:31.685 Warning: No connection to FTDI chip 12345678. Updater thread will terminate.
2018.03.01 16:53:31.716 Framework initialized.
2018.03.01 16:53:31.716 Have fun! 
2018.03.01 16:53:41.961 Finishing framework
2018.03.01 16:53:41.963 Finishing cabinet
2018.03.01 16:53:41.963 Debug: Finishing output controllers
2018.03.01 16:53:42.078 Connection to FTDI chip 12345678 closed.
2018.03.01 16:53:42.078 FT245RBitbangController Sainsmart 1 with serial number 12345678 has been finished and the updater thread has been terminated.
2018.03.01 16:53:42.078 FT245RBitbangController FT245RBitbangController 0 with serial number 12345678 has been finished and the updater thread has been terminated.
2018.03.01 16:53:42.078 Debug: Output controllers finished
2018.03.01 16:53:42.078 Cabinet finished
2018.03.01 16:53:42.078 DirectOutput framework finished.
2018.03.01 16:53:42.078 Bye and thanks for using!
Log when it doesn't work
---------------------------------------------------------------------------------
DirectOutput Version 3.1.6623.21194, built 2018.02.18 11:46
MJR Grander Unified DOF R3++ edition feat. Djrobx, Rambo3, and Freezy
DOF created by SwissLizard | https://github.com/mjrgh/DirectOutput
2018.03.01 17:05:34.555 DirectOutput Logger initialized
2018.03.01 17:05:34.539 Global config filename is "C:\DIRECTOUTPUT\config\GlobalConfig_B2SServer.xml"
2018.03.01 17:05:34.555 Global config loaded from: C:\DIRECTOUTPUT\config\GlobalConfig_B2SServer.xml
2018.03.01 17:05:34.555 Loading Pinball parts
2018.03.01 17:05:34.555 Loading cabinet
2018.03.01 17:05:34.555 Will load cabinet config file: C:\DirectOutput\config\Cabinet.xml
2018.03.01 17:05:34.602 1 output controller defnitions and 1 toy definitions loaded from cabinet config.
2018.03.01 17:05:34.602 Cabinet config file has AutoConfig feature enabled. Calling AutoConfig.
2018.03.01 17:05:34.602 Cabinet auto configuration started
2018.03.01 17:05:34.618 PhilipsHueAutoConfigurator.AutoConfig started...note, actual connection detection will happen asynchronously, and device disabled if not succesfull (check further down in the log)
2018.03.01 17:05:34.899 FT245RBitbangControllerAutoConfigurator.AutoConfig.. Detected FT245RBitbangController[0], name=FT245RBitbangController 0, serial #12345678
2018.03.01 17:05:34.899 Detected and added FT245RBitbangController Id 0 with name FT245RBitbangController 0
2018.03.01 17:05:34.899 Cabinet auto configuration finished
2018.03.01 17:05:34.899 Autoconfig complete.
2018.03.01 17:05:34.899 Cabinet config loaded successfully from C:\DirectOutput\config\Cabinet.xml
2018.03.01 17:05:34.899 Cabinet loaded
2018.03.01 17:05:34.899 Loading table config
2018.03.01 17:05:34.899 Warning: No table config file found. Will try to load config from LedControl file(s).
2018.03.01 17:05:34.899 Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName neptune
2018.03.01 17:05:34.899 Loading LedControl file C:\DirectOutput\config\directoutputconfig40.ini
2018.03.01 17:05:34.899 Min DOF Version is 0.8 for file directoutputconfig40.ini
2018.03.01 17:05:35.008 1 directoutputconfig.ini or ledcontrol.ini files loaded.
2018.03.01 17:05:35.008 Config for RomName neptune exists in LedControl data. Updating cabinet and config.
2018.03.01 17:05:35.024 Table config loading finished: romname=neptune, tablename=Neptune (Gottlieb 1978)
2018.03.01 17:05:35.024 Pinball parts loaded
2018.03.01 17:05:35.024 Starting processes
2018.03.01 17:05:35.024 Initializing cabinet
2018.03.01 17:05:35.024 Debug: Initializing output controllers
2018.03.01 17:05:35.024 FT245RBitbangController Sainsmart 1 with serial number 12345678 has been initialized and the updater thread has been started.
2018.03.01 17:05:35.024 FT245RBitbangController FT245RBitbangController 0 with serial number 12345678 has been initialized and the updater thread has been started.
2018.03.01 17:05:35.024 Debug: Output controllers initialized
2018.03.01 17:05:35.024 Cabinet initialized
2018.03.01 17:05:35.040 Loading shape definition file: C:\DirectOutput\config\DirectOutputShapes.xml
2018.03.01 17:05:35.040 EXCEPTION: Could not open the connection to FTDI chip with serial number 12345678.
2018.03.01 17:05:35.040 EXCEPTION: Thread: FT245RBitbangController 12345678 named Sainsmart 1 updater thread
2018.03.01 17:05:35.040 EXCEPTION: Message: FT_EXCEPTION --> FTDI device not opened.
2018.03.01 17:05:35.040 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FTDI.ErrorHandler(FT_STATUS ftStatus, FT_ERROR ftErrorCondition)
2018.03.01 17:05:35.040 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FTDI.ErrorHandler(FT_STATUS ftStatus)
2018.03.01 17:05:35.040 EXCEPTION: Stacktrace: at DirectOutput.Cab.Out.FTDIChip.FT245RBitbangController.Connect()
2018.03.01 17:05:35.040 EXCEPTION: Targetsite: Void ErrorHandler(FT_STATUS, FT_ERROR)
2018.03.01 17:05:35.040 Connection to FTDI chip 12345678 established.
2018.03.01 17:05:35.040 Warning: No connection to FTDI chip 12345678. Updater thread will terminate.
2018.03.01 17:05:35.071 Framework initialized.
2018.03.01 17:05:35.071 Have fun! 
2018.03.01 17:05:44.731 Finishing framework
2018.03.01 17:05:44.735 Finishing cabinet
2018.03.01 17:05:44.736 Debug: Finishing output controllers
2018.03.01 17:05:44.736 FT245RBitbangController Sainsmart 1 with serial number 12345678 has been finished and the updater thread has been terminated.
2018.03.01 17:05:44.868 Connection to FTDI chip 12345678 closed.
2018.03.01 17:05:44.868 FT245RBitbangController FT245RBitbangController 0 with serial number 12345678 has been finished and the updater thread has been terminated.
2018.03.01 17:05:44.868 Debug: Output controllers finished
2018.03.01 17:05:44.868 Cabinet finished
2018.03.01 17:05:44.868 DirectOutput framework finished.
2018.03.01 17:05:44.868 Bye and thanks for using!