Help DOF working but DOFLinx and Pineventv2 not working (for LEDs)

uptown47

Pinball Nudger
Joined
Jul 22, 2024
Messages
18
Reaction score
1
Points
4
Favorite Pinball Machine
The Addams Family
I've been struggling with this for 2 weekends now so thought I would put the white flag up and ask for help.

I've got VPX and FP working great. I have an arcade cabinet I built that I've installed some contactors on a Sainsmart relay board and also some LEDs using the Teensy driver (via an Arduino board).

All is working amazing with VPX - all the lights work great and the contactors etc.

So I've been trying to set up DOFlinx so that I can play the Iron Man version that is on FP (that Terry made) because that seems like a cracking table.

So... I've set everything up and I've got it working with my contactors (via my Sainsmart relay board) but my LEDs aren't doing anything.

I've just tried the Star Wars DSA Galactic Edition (Pinevent v2) and it's the same (i.e. contactors work great but no LEDs).

So... this is my set up...

1722710545398.png


1722710617822.png


This the start of my cabinet.xml file...

1722710593688.png

Paths in my DOFLinx.ini (I noticed on Terrys video it was just pointing to "directoutputconfig.ini" - but I don't have that file so I've seen elsewhare you point to "directoutputconfig30.ini" (or whatever your DOFConfig files are) ?? Is that correct??

1722710700963.png

My GlobalConfig_B2SServer.xml is...

1722710748552.png

I have a DOFLinx.vbs and a OpenGL32.dll in the root of Future Pinball folder? Do I need the DOFLinx.vbs in here??

1722710822302.png


In my Future Pinball/Scripts I've got these files...

1722710850650.png


And finally these are my tables.... I've been trying both "Iron Man (Ultimate 1.06) (p2.7) (DOFLinx).fpt" and "Star Wars DSA - Galactic Edition (PinEvent V2 - FizX - 1.7).fpt" and "Star Wars DSA (ULTIMATE 1.04) (p2.7) (DOFLinx).fpt" - none of them do anything with my LEDs but I'm assuming that one of them (or all of them) should do ??


1722710932860.png


I have the exact same files in my DirectOutput64 folder - apart from the paths are adjusted slightly in DOFlinx.ini (because it's "DirectOutput64" instead of "DirectOutput"). I've mainly been running the DirectOutput exe from the x86 folder... do I need to run the 64 bit one??

This is the output if I switch DOFLinx to debug mode in the ini file and then run the PinEvent V2 DSA Galactic Edition table...

1722711267566.png



If you would like any other files or screenshots please let me know.

My DirectOutput/Config - DOF Config Tool files are all up to date.

And, as I say, it all works great in VPX and in FP the contactors work great.

I feel that I'm one "true to false" or "1 to 0" away from cracking this... but I need bigger brains to help get me over the line.

Your help or advice will be hugely appreciated.

Thank you
 
You need to understand DOF and its various incarnations, and the difference between a table modded for DOFLinx and everything else that supports DOF directly.

DOFLinx = used on some older DOFLinx modded FP tables and FX3 (which uses 32 bit DOF), and Pinball FX (which uses 64 bit DOF)
32 bit DOF = VP tables and FP PinEvent tables
64 DOF = newer VP tables (that require 64 bit VPX)

DOFLinx was created originally to allow "key to DOF output" functions, so you could simply press a key / button and have a contactor / light react. This method is NOT controlled by the table / game at all. So when some tables are run, if DOFLinx is running and kicks in, this method may be used, and it's not actually reacting to table events at all (just key/button presses), which would only give you contactors working from your flipper buttons.

DOFLinx also can react to game / table events. This is only from FP tables modded for DOFLinx support (DOFLinx events are sent from table script), Pinball FX3 and Pinball FX and MAME (DOFLinx reads areas of ram for triggered events).

Some old FP tables were modded for DOFLinx, because at that time it was the only option to allow the table to output to DOF and PUP with FP. Today, we don't need DOFLinx for FP, as FP can use DOF and PUP directly.


Since newer FP tables (mostly PinEvent tables and some others) directly access DOF and PUP... this means that DOFLinx must NOT be running at all when using newer FP tables with DOF, as DOFLinx will actually interfere with the table's DOF, and it won't work correctly! You may just get DOFLinx "key to output" which fires your flipper contactors when the buttons are pressed. This is NOT what you want.


There are also additional problems with how some people incorrectly install 64 bit DOF, which can mess up your 32 bit DOF for FP, Popper, PBX, PBY, etc (even though VP 32 bit DOF will still work). This fix for that is describes in my FP and BAM "FAQ and Help Guide".


My recommendation.

Remove older FP tables modded for DOFLinx that have newer PinEvent versions (Star Wars DSA, Jaws, Robocop, Aliens, BvP, JYC, RetroFlair). The older DOFLinx modded tables are VERY outdated for physics, lighting, no SSF, and lack many modern features. The newer PinEvent V2 and Lite tables are completely updated, modernized, have newer features, and look and play better in every way. They use DOF and PUP directly.

Completely close DOFLinx (be sure its not running).

Then try to get "all" of DOF working with FP PinEvent tables, and VP tables. This MUST be done with DOFLinx not running (because DOFLinx may have the "key to output" triggering contactors or interfere with the table's DOF) to be sure they are actually working correctly and completely.

Once this is done and you have verified DOF works completely for VP and FP... THEN you can try to focus on DOFLinx for older FP tables, and FX, etc.


Again.... DOFLinx must NOT be running / active at all when using FP Pinevent tables or other newer FP tables modded for DOF!
 
Last edited:
Thank you for the reply Terry - yep I knew about not having DOFLinx running as it was in your guide. And thanks for the explanation around DOF(Linx) x86/x64 and their place within the ecosystem. Much appreciated.

I've done some more fault finding on it today as per your recommendations and my findings are as follows...

Visual Pinball tables all work perfectly with DOF (in my case that is an LED strip and my contactors)
Future Pinball Pinevent V2 tables work fine with contactors but NOT LED strip (I've disabled DOFLinx for now to concentrate on PinEvent V2 tables)

Looking at my DirectOutput log file in the Future Pinball/Tables folder and it looks like there's an issue with how it is communicating.

Code:
DirectOutput Version 3.1.8543.26742, built 2023.05.23 14:51
MJR Grander Unified DOF R3++ edition feat. Djrobx, Rambo3, and Freezy
DOF created by SwissLizard | https://github.com/mjrgh/DirectOutput
2024.08.04 12:47:54.970    DirectOutput Logger initialized
2024.08.04 12:47:54.820    Global config filename is "D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\config\GlobalConfig_B2SServer.xml"
2024.08.04 12:47:54.970    Global config loaded from: D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\config\GlobalConfig_B2SServer.xml
2024.08.04 12:47:54.970    Loading Pinball parts
2024.08.04 12:47:54.970    Loading cabinet
2024.08.04 12:47:54.971    Will load cabinet config file: D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\Config\Cabinet.xml
2024.08.04 12:47:55.097    1 output controller defnitions and 6 toy definitions loaded from cabinet config.
2024.08.04 12:47:55.622    Cabinet config file has AutoConfig feature enabled. Calling AutoConfig.
2024.08.04 12:47:55.623    Cabinet auto configuration started
2024.08.04 12:47:56.229    Detected and added PacLed64 Id 2 with name PacLed64 2
2024.08.04 12:47:56.293    Added LedwizEquivalent Nr. 21 with name PacLed64 2 Equivalent 1 for PacLed64 with Id 2
2024.08.04 12:47:56.294    PacDriveSingleton.PacUIOGetIdList: i=0, numdevices=3, DeviceType=PacLED64
2024.08.04 12:47:56.834    PacDriveSingleton.PacUIOGetIdList: i=1, numdevices=3, DeviceType=ServoStik
2024.08.04 12:47:56.834    PacDriveSingleton.PacUIOGetIdList: i=2, numdevices=3, DeviceType=IPACIO
2024.08.04 12:47:57.160    PacUIOAutoConfigurator.AutoConfig.. Detected Ultimarc[0], name=PacUIO 0
2024.08.04 12:47:57.160    Detected and added PacUIO Id 0 with name PacUIO 0
2024.08.04 12:47:57.676    Added LedwizEquivalent Nr. 27 with name PacUIO 0 Equivalent 1 for PacUIO with Id 0
2024.08.04 12:47:57.677    PhilipsHueAutoConfigurator.AutoConfig started...note, actual connection detection will happen asynchronously, and device disabled if not succesfull (check further down in the log)
2024.08.04 12:47:57.873    LedWiz-like device at VID=1133, PID=49948, product string=USB Keyboard, manufacturer string=Logitech
2024.08.04 12:47:58.323    LedWiz-like device at VID=1118, PID=654, product string=Controller (XBOX 360 For Windows), manufacturer string=<not available>
2024.08.04 12:47:58.449    LedWiz-like device at VID=1133, PID=49948, product string=USB Keyboard, manufacturer string=Logitech
2024.08.04 12:47:58.450    LedWiz-like device at VID=2821, PID=6575, product string=AURA LED Controller, manufacturer string=AsusTek Computer Inc.
2024.08.04 12:47:58.980    LedWiz-like device at VID=6790, PID=57382, product string=<not available>, manufacturer string=<not available>
2024.08.04 12:47:58.982    LedWiz-like device at VID=1133, PID=49948, product string=USB Keyboard, manufacturer string=Logitech
2024.08.04 12:47:58.987    LedWiz-like device at VID=1133, PID=49948, product string=USB Keyboard, manufacturer string=Logitech
2024.08.04 12:47:59.514    LedWiz-like device at VID=53769, PID=1040, product string=I-PAC Ultimate I/O, manufacturer string=Ultimarc
2024.08.04 12:47:59.515    LedWiz-like device at VID=53769, PID=1040, product string=I-PAC Ultimate I/O, manufacturer string=Ultimarc
2024.08.04 12:47:59.530    LedWiz-like device at VID=53769, PID=1040, product string=I-PAC Ultimate I/O, manufacturer string=Ultimarc
2024.08.04 12:47:59.531    LedWiz-like device at VID=53769, PID=1040, product string=I-PAC Ultimate I/O, manufacturer string=Ultimarc
2024.08.04 12:48:00.053    LedWiz-like device at VID=6790, PID=57382, product string=<not available>, manufacturer string=<not available>
2024.08.04 12:48:00.544    LedWiz-like device at VID=6790, PID=57382, product string=<not available>, manufacturer string=<not available>
2024.08.04 12:48:00.547    LedWiz-like device at VID=53769, PID=5888, product string=Universal Human Interface Device, manufacturer string=Universal Human Interface Device
2024.08.04 12:48:01.069    LedWiz-like device at VID=53769, PID=5122, product string=Ultimarc, manufacturer string=Ultimarc
2024.08.04 12:48:01.272    FT245RBitbangControllerAutoConfigurator.AutoConfig.. Detected FT245RBitbangController[0], name=FT245RBitbangController 0, description: FT245R USB FIFO, serial #AC01WPIX
2024.08.04 12:48:02.299    Detected and added FT245RBitbangController Id 0 with name FT245RBitbangController 0
2024.08.04 12:48:02.379    Added LedwizEquivalent Nr. 40 with name FT245RBitbangController 0 Equivalent 1 for PacUIO with Id 0
2024.08.04 12:48:02.379    Cabinet auto configuration finished
2024.08.04 12:48:02.379    Autoconfig complete.
2024.08.04 12:48:02.379    Cabinet config loaded successfully from D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\Config\Cabinet.xml
2024.08.04 12:48:02.902    Cabinet loaded
2024.08.04 12:48:02.926    Loading table config
2024.08.04 12:48:02.927    No TableFilename specified, will use empty tableconfig
2024.08.04 12:48:03.450    Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName FP_PE_SW_DSA_GE
2024.08.04 12:48:03.452    Loading LedControl file D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\Config\directoutputconfig30.ini
2024.08.04 12:48:08.439    Min DOF Version is 0.8 for file directoutputconfig30.ini
2024.08.04 12:48:08.439    Resolving Tables Variables
2024.08.04 12:48:08.440    Resolving Global Variables
2024.08.04 12:48:10.717    Failed: SE114
2024.08.04 12:48:10.717    Warning: Cant parse the trigger part SE114 of the ledcontrol table config setting SE114 Blue AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250.
2024.08.04 12:48:11.242    EXCEPTION: Could not parse setting SE114 Blue AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250 in column data E106 Orange AH100 AL80 AT0 AW19 SHPCircle3 L13/E117 Red AL0 AT40 AW100 AH8 L3/E134 Red AL0 AT80 AW100 AH8 L3/E141 Red 50 AT60 AH40 ADU AS300/E142 Red AT72 AH15 F200 ADU AS200 BLINK 1000 BPW20/E142 Red AT72 AH15 F200 ADD AS200 BLINK 1000 BPW20 W500/E142 Dark_violet L0 APCRed AL0 AW100 AT85 AH15/E312 Orange_red 100 W300 AH80 ADD AS300 L25/E135 Deep_pink 700 AT85 AH20 AFDEN40 AFMIN100 AFMAX160/E120 Dark_red 800 L13 AT0 AFDEN15 AFMIN10 AFMAX20/E124 Red MAX200 AH100 ADU AS400 Blink 50/E131 Dark_red 100 W300 AH60 ADU AS300 L25/E115 Red M1000 L11 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E115 Red M1000 L12 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E113 Deep_pink 100 W300 AH80 ADU AS300 L100/E114 Blue AH10 AL0 AT0 FD300 AFDEN30 AFMIN100 AFMAX140 200 W500/E114 Blue AH10 AL0 AT10 FD300 AFDEN30 AFMIN100 AFMAX140 200 W450/E114 Blue AH10 AL0 AT20 FD300 AFDEN30 AFMIN100 AFMAX140 200 W400/E114 BlueAH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E114 Blue AH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E114 Blue AH10 AL0 AT40 FD300 AFDEN30 AFMIN100 AFMAX140 200 W300/SE114 Blue AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250/E114 Blue AH10 AL0 AT60 FD300 AFDEN30 AFMIN100 AFMAX140 200 W200/E114 Blue AH10 AL0 AT70 FD300 AFDEN30 AFMIN100 AFMAX140 200 W150/E114 BlueAH10 AL0 AT80 FD300 AFDEN30 AFMIN100 AFMAX140 200 W100/E114 Blue AH10 AL0 AT90 FD300 AFDEN30 AFMIN100 AFMAX140 200 W50/E323 Red L13 AT0 AFDEN20 AFMIN500 AFMAX1000 AFFADE1000.
2024.08.04 12:48:11.248    EXCEPTION: Thread:
2024.08.04 12:48:11.248    EXCEPTION: Message: Exception --> Cant parse the part SE114 of the ledcontrol table config setting SE114 Blue AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250.
2024.08.04 12:48:11.789    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigSetting.ParseSettingData(String SettingData)
2024.08.04 12:48:11.789    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigSetting..ctor(String SettingData)
2024.08.04 12:48:11.789    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigColumn.ParseColumnData(String ColumnData, Boolean ThrowExceptions)
2024.08.04 12:48:11.953    EXCEPTION: Targetsite: Void ParseSettingData(System.String)
2024.08.04 12:48:11.953    Warning: Previous exceptions occured in the line KillerInstinct,E105 Green AH100 AL0 AT0 AW19 SHPCircle3 L3/E133 Red AL0 AT80 AW100 AH8 L3/E128 Red AL0 AT10 AW100 AH8 L3/E129 Red AL0 AT10 AW100 AH8 L3/E116 Golden_rod AL0 AT40 AW100 AH8 L3/E311 Dark_violet 100 W300 AH80 ADD AS300 L25/E132 Deep_pink 700 AT85 AH20 AFDEN40 AFMIN100 AFMAX160/E120 Dark_red 800 L13 AT0 AFDEN15 AFMIN10 AFMAX20/E136 Red MAX200 AH100 ADU AS400 Blink 50/E130 Dark_red 100 W300 AH60 ADD AS300 L25/E115 Red M1000 L11 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E115 Red M1000 L12 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E113 Deep_pink 100 W300 AH80 ADU AS300 L100/E112 Red AH10 AL0 AT0 FD300 AFDEN30 AFMIN100 AFMAX140 200 W500/E112 Red AH10 AL0 AT0 FD300 AFDEN30 AFMIN100 AFMAX140 200 W500/E112 Red AH10 AL0 AT10 FD300 AFDEN30 AFMIN100 AFMAX140 200 W450/E112 Red AH10 AL0 AT20 FD300 AFDEN30 AFMIN100 AFMAX140 200 W400/E112 Red AH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E112 Red AH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E112 Red AH10 AL0 AT40 FD300 AFDEN30 AFMIN100 AFMAX140 200 W300/E112 Red AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250/E112 Red AH10 AL0 AT60 FD300 AFDEN30 AFMIN100 AFMAX140 200 W200/E112 Red AH10 AL0 AT70 FD300 AFDEN30 AFMIN100 AFMAX140 200 W150/E112 Red AH10 AL0 AT80 FD300 AFDEN30 AFMIN100 AFMAX140 200 W100/E112 Red AH10 AL0 AT90 FD300 AFDEN30 AFMIN100 AFMAX140 200 W50/E323 Red L13 AT0 AFDEN20 AFMIN500 AFMAX1000 AFFADE1000,E106 Orange AH100 AL80 AT0 AW19 SHPCircle3 L13/E117 Red AL0 AT40 AW100 AH8 L3/E134 Red AL0 AT80 AW100 AH8 L3/E141 Red 50 AT60 AH40 ADU AS300/E142 Red AT72 AH15 F200 ADU AS200 BLINK 1000 BPW20/E142 Red AT72 AH15 F200 ADD AS200 BLINK 1000 BPW20 W500/E142 Dark_violet L0 APCRed AL0 AW100 AT85 AH15/E312 Orange_red 100 W300 AH80 ADD AS300 L25/E135 Deep_pink 700 AT85 AH20 AFDEN40 AFMIN100 AFMAX160/E120 Dark_red 800 L13 AT0 AFDEN15 AFMIN10 AFMAX20/E124 Red MAX200 AH100 ADU AS400 Blink 50/E131 Dark_red 100 W300 AH60 ADU AS300 L25/E115 Red M1000 L11 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E115 Red M1000 L12 AT0 AH100 F50 BLINK 500 BPW10 ASDD AS200/E113 Deep_pink 100 W300 AH80 ADU AS300 L100/E114 Blue AH10 AL0 AT0 FD300 AFDEN30 AFMIN100 AFMAX140 200 W500/E114 Blue AH10 AL0 AT10 FD300 AFDEN30 AFMIN100 AFMAX140 200 W450/E114 Blue AH10 AL0 AT20 FD300 AFDEN30 AFMIN100 AFMAX140 200 W400/E114 BlueAH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E114 Blue AH10 AL0 AT30 FD300 AFDEN30 AFMIN100 AFMAX140 200 W350/E114 Blue AH10 AL0 AT40 FD300 AFDEN30 AFMIN100 AFMAX140 200 W300/SE114 Blue AH10 AL0 AT50 FD300 AFDEN30 AFMIN100 AFMAX140 200 W250/E114 Blue AH10 AL0 AT60 FD300 AFDEN30 AFMIN100 AFMAX140 200 W200/E114 Blue AH10 AL0 AT70 FD300 AFDEN30 AFMIN100 AFMAX140 200 W150/E114 BlueAH10 AL0 AT80 FD300 AFDEN30 AFMIN100 AFMAX140 200 W100/E114 Blue AH10 AL0 AT90 FD300 AFDEN30 AFMIN100 AFMAX140 200 W50/E323 Red L13 AT0 AFDEN20 AFMIN500 AFMAX1000 AFFADE1000,0,0,0,0,0,0,0,0,0 of the ledcontrol file
2024.08.04 12:48:13.001    Loading LedControl file D:\LaunchBox Arcade\Emulators\vPinball\DirectOutput\Config\directoutputconfig40.ini
2024.08.04 12:48:13.003    Min DOF Version is 0.8 for file directoutputconfig40.ini
2024.08.04 12:48:13.109    Resolving Tables Variables
2024.08.04 12:48:13.715    Resolving Global Variables
2024.08.04 12:48:13.769    Failed: 117
2024.08.04 12:48:14.125    Warning: Cant parse the trigger part 117 of the ledcontrol table config setting 117.
2024.08.04 12:48:14.446    EXCEPTION: Could not parse setting 117 in column data E102/E123/E104/117.
2024.08.04 12:48:14.446    EXCEPTION: Thread:
2024.08.04 12:48:14.446    EXCEPTION: Message: Exception --> Cant parse the part 117 of the ledcontrol table config setting 117.
2024.08.04 12:48:14.717    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigSetting.ParseSettingData(String SettingData)
2024.08.04 12:48:14.717    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigSetting..ctor(String SettingData)
2024.08.04 12:48:14.717    EXCEPTION: Stacktrace:    at DirectOutput.LedControl.Loader.TableConfigColumn.ParseColumnData(String ColumnData, Boolean ThrowExceptions)
2024.08.04 12:48:14.717    EXCEPTION: Targetsite: Void ParseSettingData(System.String)
2024.08.04 12:48:14.717    Warning: Previous exceptions occured in the line men_in_black,E109,E110,E119,0,E101/E103,E102/E123/E104/117,E107,0 of the ledcontrol file
2024.08.04 12:48:14.793    2 directoutputconfig.ini or ledcontrol.ini files loaded.
2024.08.04 12:48:14.794    Config for RomName FP_PE_SW_DSA_GE exists in LedControl data. Updating cabinet and config.
2024.08.04 12:48:14.807    Debug: Setting up shape effect for area. L: 0, T: 0, W: 9, H: 30, Name: CIRCLE3
2024.08.04 12:48:14.807    Debug: Setting up shape effect for area. L: 91, T: 0, W: 9, H: 30, Name: CIRCLE3
2024.08.04 12:48:14.807    Debug: Setting up shape effect for area. L: 42, T: 0, W: 16, H: 100, Name: CIRCLE3

... LOTS OF SETTING UP SHAPE LINES HERE NOTHING PERTINENT TO MY PROBLEM I'M SURE....

2024.08.04 12:48:15.857    Debug: MatrixBase for RGBAMatrixFlickerEffect. Calculated area size: AreaDef(L:0, T:0, W:100, H:100), Matrix(W:73, H:1), ResultArea(Left: 0, Top:0, Right:0, Bottom:72, Width:1, Height:73)
2024.08.04 12:48:15.862    Framework initialized.
2024.08.04 12:48:15.862    Have fun! :)
2024.08.04 12:48:34.826    Finishing framework
2024.08.04 12:48:34.828    Finishing cabinet
2024.08.04 12:48:34.828    Debug: Finishing output controllers
2024.08.04 12:48:34.857    EXCEPTION: A exception occured in TeensyStripController LEDStripController updater thread  while trying to turn of all outputs for TeensyStripController LEDStripController
2024.08.04 12:48:34.857    EXCEPTION: Thread: TeensyStripController LEDStripController updater thread
2024.08.04 12:48:34.857    EXCEPTION: Message: Exception --> Received no answer or a unexpected answer while waiting for the ACK after sending the data for channel 1 of the DirectOutput.Cab.Out.AdressableLedStrip.TeensyStripController.
2024.08.04 12:48:34.857    EXCEPTION: Stacktrace:    at DirectOutput.Cab.Out.AdressableLedStrip.TeensyStripController.UpdateOutputs(Byte[] OutputValues)
2024.08.04 12:48:34.857    EXCEPTION: Stacktrace:    at DirectOutput.Cab.Out.OutputControllerCompleteBase.UpdaterThreadDoIt()
2024.08.04 12:48:34.857    EXCEPTION: Targetsite: Void UpdateOutputs(Byte[])
2024.08.04 12:48:34.861    TeensyStripController LEDStripController updater thread  has disconnected from TeensyStripController LEDStripController and will terminate.
2024.08.04 12:48:34.861    TeensyStripController LEDStripController finished and updater thread stopped.
2024.08.04 12:48:36.086    PacLed64 Id:2 finished and updater thread stopped.
2024.08.04 12:48:37.098    PacUIO.ShutdownLighting
2024.08.04 12:48:37.106    PacUIO.ShutdownLighting
2024.08.04 12:48:37.106    PacUIO Id:0 finished and updater thread stopped.
2024.08.04 12:48:37.122    Connection to FTDI chip AC01WPIX closed.
2024.08.04 12:48:37.183    FT245RBitbangController FT245RBitbangController 0 with serial number AC01WPIX has been finished and the updater thread has been terminated.
2024.08.04 12:48:37.183    Debug: Output controllers finished
2024.08.04 12:48:37.183    Cabinet finished
2024.08.04 12:48:37.183    DirectOutput framework finished.
2024.08.04 12:48:37.185    Bye and thanks for using!


My set up is an Arduino that is running a library that talks to my LED strips - the pertinent excerpt of my arduino code is here:

Code:
/********************************************************************************************************
 **
 ** DOF COLOUR FUNCTIONS
 **
/********************************************************************************************************
*/
void runDOFcomms(){

  if (Serial.available()) {
    // DOF SENDING INFORMATION
    byte receivedByte = Serial.read();

    // LET'S START TIMER
    startDOFMillis = millis();
    dofWantsToTalk = true;

    // INITIATE FADE OUT/IN SEQUENCE
    newLEDPattern = 1;

    switch (receivedByte) {
    case 'L':
      //Set length of strips
      SetLedStripLength();
      break;
    case 'T':
      //Test
      Serial.println("Testing. \n");
      Test();
      break;
    case 'F':
      //Fill strip area with color
      Fill();
      break;
    case 'R':
      //receive data for strips
      ReceiveData();
      break;
    case 'O':
      //output data on strip
      OutputData();
      break;  
    case 'C':
      //Clears all previously received led data
      ClearAllLEDs();
      break;
    case 'V':
      //Send the firmware version
      SendVersion();
      break;
    case 'M':
      //Get max number of leds per strip
      SendMaxNumberOfLeds();
      break;
    default:
      // no unknown commands allowed. Send NACK (N)
      Nack();
    break;
    }
    SetBlinkMode(1);
  }
  Blink();
}

Just to reiterate - this is working perfectly with VPX but I wondered if FP sends different commands? Or utilises DOF in a different way?

I realise we are really digging under the hood here but it would be great if anyone could point me in the right direction?

As always - a huge thank you for any help you can give.
 
FP (PinEvent tables) works with DOF exactly the same as VP does (but FP must use 32 bit DOF). It simply sends DOF events from table script, and then DOF does the rest from there. From VP or FP, a DOF event is the same for a contactor, a flasher, MX Leds, or anything. FP just says "trigger this DOF event using this number, and set it to on or off".

Be sure you have the latest DOF R3++ installed and working correctly. It's needed for DOF to fully work correctly for everything that is 32 bit.


As long as a FP PinEvent table is starting a DOF session and able to trigger DOF events (making sure DOFLinx is COMPLETELY closed... not just disabled), then there is nothing left to do on the FP end. The problem lies with your DOF install / setup.
 
That's strange then - I did install DOF R3++ from that same page but I'll go through it all again.

One thing I haven't done is installed ledwiz.dll ? Does that need putting somewhere? Just tried putting it in the Future Pinball and /BAM folders but didn't make a difference? (and DOFLinx is completely closed)

Thanks for confirming about the DOF commands... it's another clue to the mystery. :-)
 
You can enable debugger options in any PinEvent table in the table script near the top (for DOF, etc), and then run FP in Debugger mode using F9 from the FP editor. Also, all testing should be done with no front end at all to eliminate another possible layer of problems.

Then you may see that at least from the FP side, DOF is being started with the correct config, and triggering all events, etc.
 
Yep I did do that - I've been through your guide for Star Wars - DSA Galactic Edition and saw that as an option.

My results in the fpDebugTestLog.txt file were:
Code:
BAM Version: 373
FizX v3.30
FizX Profile 1 : JLou Flippers
PinEvent_V2_Settings.txt file found
PinEvent V2 Global Settings applied
Start DOF with config: FP_PE_SW_DSA_GE
DOF E10 0
DOF E17 1
DOF E10 0
DOF E425 2
DOF E52 2
DOF E72 2
DOF E32 2
DOF E62 2
PinEvent: Desktop settings applied
PUP SSF enabled: False
FP Mech Sounds enabled: True
PUP DMD enabled: False
PUP Stream enabled: False
DOF enabled: True
Night Mode Key enabled: False
Tilt Bob Key enabled: False
Ball Rolling Sound enabled: True
DOF E560 0
DOF E561 0
DOF E562 0
DOF E563 0
DOF E564 0
DOF E558 0
BAM_Settings_Delay_Timer
 
Do you know if I need ledwiz.dll put anywhere in my folders?
 
Do you know if I need ledwiz.dll put anywhere in my folders?

I've never installed that file anywhere. I only installed DOF 32 bit, and nothing else. I have an actual Ledwiz and Teensy in my cabinet.

Base on your FP debug... the FP side is working fine... so something else on your system is the issue. It could be something with your Arduino... as I know some people had issues with them not working correctly for MX Leds for "all" apps for whatever reason.
 
Thanks for confirming - yep it certainly looks like it's an issue on the Arduino side. That's why I thought that FP may communicate slightly differently but it doesn't so I'm not sure what's going on (the fact that it's working for VPX is throwing me....).

Hmmm... right I'll keep going with it but thanks again for all your great help. Was laughing earlier at the 'attract' mode on DSA with C3PO busting shapes !! You've made some amazing tables.

I'll post back in this thread if I do manage to get it fixed so that it may help others in the same boat. :)
 
I've had some success today... yay!!!
So - I've been in the weeds all day with this and tried many things (disabling PC LEDs via BIOS / disabling Windows Lighting / checking the registry for duplicate x86 / x64 DOF entries / putting my Arduino in a different COM port direct to the PC / running serial sniffers to detect what packets are being sent from Future Pinball - basically - you name it and I've done it).

The upshot of it all was that I decided to just drop back to my "working" DirectOutput folders (before the install of DOFLinx). And I found that the LEDs were working on DSA Galactic PinEvent v2 table BUT the ball wouldn't appear when I started a game (I redownloaded the table etc but to no avail)?!

So, I thought I'd try the Halloween PinEvent v2 table instead and that worked perfectly. So I rebooted and went back to the DSA table and that's working too now.

So... currently I now have VPX working fully and Future Pinball PinEvent v2 tables working fully (by 'fully' I mean pup packs / LEDs and contactors).

I've no idea what the problem was and I'm now considering just sticking as I am.... but I know that curiosity will get the better of me and I'll start tinkering with DOFLinx as I'd really like to get the FP Iron Man table working with LEDs etc....

But, the main thing is, it's working for now so I'll make a copy of these DirectOutput folders before I do any more tinkering and then at least I've got a 'saved state'.

Once again, thanks for all the help. I was hoping to be able to post a single solution to help others in the future but I'm not able to do that.
 
Just looking in the latest (I think - v8.10) DOFLinx folder - there are folders called 32 bit and 64 bit - but there are folders called Starter 32 bit and Starter 64 bit. There seems to be a few extra files in the "Starter x bit" folders - so does anyone know if they are the files I need to copy into my DirectOutput folder?

1722876525418.png
 
General chit-chat
Help Users
You can interact with the ChatGPT Bot in any Chat Room and there is a dedicated room. The command is /ai followed by a space and then your ? or inquiry.
ie: /ai What is a EM Pinball Machine?
  • No one is chatting at the moment.
  • Chat Bot Mibs Chat Bot Mibs:
    Deeznutsnmuth has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    mbr has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Ylliem has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Rui3 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    baliw has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    losthighway76 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Totevski72 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    joeuro has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    oettmane has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    charly_ey has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    j24sailr has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    dwood has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    gregonitov has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Drogo has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    SmashXD has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    mrdarc has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    butterface5000 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Pinheads has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    helptv has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    joeboxer has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Auleric has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    vizzone has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Develop has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    Krusty104 has left the room.
  • Chat Bot Mibs Chat Bot Mibs:
    grh450 has left the room.
      Chat Bot Mibs Chat Bot Mibs: grh450 has left the room.
      Back
      Top