Jump to content
freezy

Pro Pinball: Timeshock - Dof Support

Recommended Posts

some update on my side, i have quite the same problem than electricmagma, it seems only the directoutputconfig.ini, that is linked to the Ledwiz 1 is working (most of the users have only one controller, which is ledwiz 1).

So until that can be fixed i can't finalize the DOF config since I can't test everything myself, unfortunately, the DOF source code is out of my competency and i don't have time to investigate into that myself..

Share this post


Link to post
Share on other sites

WOHOO!   ALmost success!!!! 

 

To get it to read the cab config, i copied all of the files from C:\directoutput and then reran the global config editor, and pointed to all the xml files in the pro pinball folder instead.

 

So, realizing that its my config tester that is logging this,   the toys fire appropriately in the tester.   WHen i launch PRo-Pinball,  the DOFSlave launches and then crashes, and nothing works, and no log is generated.

 

2017.09.03 09:29:02.043    DirectOutput Logger initialized
2017.09.03 09:29:02.043    DirectOutput Version 0.9.5812.27024 as of 2015.11.30 15:00
2017.09.03 09:29:02.043    Global config loaded from: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\Global.xml
2017.09.03 09:29:02.043    Loading Pinball parts
2017.09.03 09:29:02.043    Loading cabinet
2017.09.03 09:29:02.044    Will load cabinet config file: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\Cabinet.xml
2017.09.03 09:29:02.098    1 output controller defnitions and 1 toy definitions loaded from cabinet config.
2017.09.03 09:29:02.099    Cabinet config file has AutoConfig feature enabled. Calling AutoConfig.
2017.09.03 09:29:02.099    Cabinet auto configuration started
2017.09.03 09:29:02.165    Detected and added PacLed64 Id 1 with name PacLed64 1
2017.09.03 09:29:02.166    Added LedwizEquivalent Nr. 20 with name PacLed64 1 Equivalent 1 for PacLed64 with Id 1
2017.09.03 09:29:02.182    Debug: Ledwiz devicelist content. Handles: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Num devices: 0
2017.09.03 09:29:02.182    Debug: Disposing LedWiz instance -01.
2017.09.03 09:29:02.184    Cabinet auto configuration finished
2017.09.03 09:29:02.184    Autoconfig complete.
2017.09.03 09:29:02.184    Cabinet config loaded successfully from C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\Cabinet.xml
2017.09.03 09:29:02.184    Cabinet loaded
2017.09.03 09:29:02.184    Loading table config
2017.09.03 09:29:02.185    No TableFilename specified, will use empty tableconfig
2017.09.03 09:29:02.185    Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName Timeshock
2017.09.03 09:29:02.191    Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig20.ini
2017.09.03 09:29:02.680    Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig40.ini
2017.09.03 09:29:02.725    2 directoutputconfig.ini or ledcontrol.ini files loaded.
2017.09.03 09:29:02.726    Config for RomName Timeshock exists in LedControl data. Updating cabinet and config.
2017.09.03 09:29:02.746    Table config loading finished
2017.09.03 09:29:02.746    Pinball parts loaded
2017.09.03 09:29:02.746    Starting processes
2017.09.03 09:29:02.746    Initializing cabinet
2017.09.03 09:29:02.746    Debug: Initializing output controllers
2017.09.03 09:29:02.748    FT245RBitbangController Sainsmart 1 with serial number ZBPLNGOP01 has been initialized and the updater thread has been started.
2017.09.03 09:29:02.749    PacLed64 Id:1 initialized and updater thread started.
2017.09.03 09:29:02.749    Debug: Output controllers initialized
2017.09.03 09:29:02.753    Cabinet initialized
2017.09.03 09:29:02.757    Loading shape definition file: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\DirectOutputShapes.xml
2017.09.03 09:29:02.757    Connection to FTDI chip ZBPLNGOP01 established.
2017.09.03 09:29:02.818    Framework initialized.
2017.09.03 09:29:02.818    Have fun! :)
2017.09.03 09:29:54.677    Finishing framework
2017.09.03 09:29:54.682    Finishing cabinet
2017.09.03 09:29:54.684    Debug: Finishing output controllers
2017.09.03 09:29:54.789    Connection to FTDI chip ZBPLNGOP01 closed.
2017.09.03 09:29:54.789    FT245RBitbangController Sainsmart 1 with serial number ZBPLNGOP01 has been finished and the updater thread has been terminated.
2017.09.03 09:29:55.803    PacLed64 Id:1 finished and updater thread stopped.
2017.09.03 09:29:55.803    Debug: Output controllers finished
2017.09.03 09:29:55.803    Cabinet finished
2017.09.03 09:29:55.803    DirectOutput framework finished.
2017.09.03 09:29:55.803    Bye and thanks for using!

Share this post


Link to post
Share on other sites

Just a bit more of an update

If i clean out the dll files that i copied over to the steam folder,  the DOFSlave.exe doesn't crash,   that being said,  it goes back to the same issue again:

 

Is there something in the .exe where you can specify a global config file?  If you can do that,  then we can copy that file over with the same naming convention. I think that would likely solve the issue.  Quite possibly add a call the pacdrive.dll as well?

 

---------------------------------------------------------------------------------
2017.09.06 08:02:03.028    DirectOutput Logger initialized
2017.09.06 08:02:03.029    DirectOutput Version 0.9.6436.40795 as of 2017.08.15 22:39
2017.09.06 08:02:03.029    Global config loaded from: 
2017.09.06 08:02:03.030    Loading Pinball parts
2017.09.06 08:02:03.030    Loading cabinet
2017.09.06 08:02:03.030    No cabinet config file loaded. Will use AutoConfig.
2017.09.06 08:02:03.031    Cabinet auto configuration started
2017.09.06 08:02:03.134    EXCEPTION: A exception occured during auto configuration for output controller(s) of type PacLed64AutoConfigurator.
2017.09.06 08:02:03.134    EXCEPTION: Thread: 
2017.09.06 08:02:03.135    EXCEPTION: Message: ArgumentNullException --> Value cannot be null.
2017.09.06 08:02:03.135    
2017.09.06 08:02:03.135    Parameter name: key
2017.09.06 08:02:03.150    EXCEPTION: Stacktrace:    at System.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
2017.09.06 08:02:03.150    EXCEPTION: Stacktrace:    at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
2017.09.06 08:02:03.150    EXCEPTION: Stacktrace:    at DirectOutput.Cab.Out.Pac.PacLed64AutoConfigurator.AutoConfig(Cabinet Cabinet) in C:\Development\DirectOutput\DirectOutput\Cab\Out\Pac\PacLed64AutoConfigurator.cs:line 29
2017.09.06 08:02:03.150    EXCEPTION: Stacktrace:    at DirectOutput.Cab.Cabinet.AutoConfig() in C:\Development\DirectOutput\DirectOutput\Cab\Cabinet.cs:line 32
2017.09.06 08:02:03.151    EXCEPTION: Targetsite: Void ThrowArgumentNullException(System.ExceptionArgument)
2017.09.06 08:02:03.156    Opening 64-bit LedWiz driver...
2017.09.06 08:02:03.165    Debug: Ledwiz devicelist content. Handles: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Num devices: 0
2017.09.06 08:02:03.165    Debug: Disposing LedWiz instance -01.
2017.09.06 08:02:03.171    Cabinet auto configuration finished
2017.09.06 08:02:03.171    Cabinet loaded
2017.09.06 08:02:03.171    Loading table config
2017.09.06 08:02:03.173    Warning: No table config file found. Will try to load config from LedControl file(s).
2017.09.06 08:02:03.173    Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName Timeshock
2017.09.06 08:02:03.178    Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig20.ini
2017.09.06 08:02:03.190    Min DOF Version is 0.8 for file directoutputconfig20.ini
2017.09.06 08:02:03.542    Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig40.ini
2017.09.06 08:02:03.546    Min DOF Version is 0.8 for file directoutputconfig40.ini
2017.09.06 08:02:03.581    2 directoutputconfig.ini or ledcontrol.ini files loaded.
2017.09.06 08:02:03.583    Config for RomName Timeshock exists in LedControl data. Updating cabinet and config.
2017.09.06 08:02:03.640    Table config loading finished
2017.09.06 08:02:03.641    Pinball parts loaded
2017.09.06 08:02:03.641    Starting processes
2017.09.06 08:02:03.641    Initializing cabinet
2017.09.06 08:02:03.642    Debug: Initializing output controllers
2017.09.06 08:02:03.642    Debug: Output controllers initialized
2017.09.06 08:02:03.642    Cabinet initialized
2017.09.06 08:02:03.651    Loading shape definition file: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\DirectOutputShapes.xml
2017.09.06 08:02:03.745    Framework initialized.
2017.09.06 08:02:03.745    Have fun! :)
2017.09.06 08:02:43.733    Finishing framework
2017.09.06 08:02:43.735    Finishing cabinet
2017.09.06 08:02:43.735    Debug: Finishing output controllers
2017.09.06 08:02:43.735    Debug: Output controllers finished
2017.09.06 08:02:43.735    Cabinet finished
2017.09.06 08:02:43.735    DirectOutput framework finished.
2017.09.06 08:02:43.735    Bye and thanks for using!
 

Share this post


Link to post
Share on other sites

I hope you guys can figure it out. It would be awesome for Timeshock to have DOF support working....

 

Myself, I'm like a kid in a candy store right now!

DOFLinx will soon support triggering "any" DOF device and command.

This means that finally.... addressable leds (MX), will work with Future Pinball and Pinball FX2!

 

Here's a coming soon "reveal" video I made....   "Let there be light!"

 

Share this post


Link to post
Share on other sites

@electricmagma: I think it crashed because it tried to load all the DLLs you put in the folder, which are 32 bit, while Pro Pinball runs at 64 bit.

In general all the DLLs necessary are bundled in DOFSLave.exe, so no need for additional DLLs. 

I've attached a new version. If anyone with 2 LedWizes could test that, it would be appreciated. Those with a global config, try putting a GlobalConfig_ProPinball.xml into the Pro Pinball folder. Disclaimer I have no clue what global config does, but for those who do that's how it needs to be named.

Be aware that this is all still very beta. My primary goal is someone providing a good Timeshock table config for DOF Config tool so we can validate this with more people. But this is still pending due to Arngrim not getting his second LedWiz to work. Once that's done we can talk configuration and what not (the general goal is of course to get people to keep their DOF config stuff at one place), and of course more hardware.

DOFSlave.zip

Share this post


Link to post
Share on other sites

Almost there!!!!

when using sainsmart boards,  you need to have a cabinet file to specify the serial number of the board, so that it works.   The global file just specifies where that file lives and what its called.  

I've attached both so you can see them.   I don't think the new exe called the GlobalConfig_ProPinball.xml according the logs.

Almost success though.   My PACLED works!!! I have some bumpers firing solioids and some lights working!!!!!

my flippers are on the sainsmart,  and since it wasn't loaded, they didn't work

 

 

 

 

 

Cabinet.xml

DirectOutput.log

GlobalConfig_ProPinball.xml

Share this post


Link to post
Share on other sites

i just tried the new version, my second ledwiz kinda works, but for example i put a constant green on the rgb undercab on my 2nd ledwiz and the light keeps on going on and off, it's better but there's still need improvement

maybe ddh69 or rambo3 can help, they work on enhancing DOF source code

Share this post


Link to post
Share on other sites

I'll attach mine

you can see one is ledwiz and one is ftdi sainsmart   

I'll show you how it's laid out in comparison to other tables as well .   If you have any tables that you may be familiar with,  I'll do a side by side of my settings for the machines and how they both work   

Ill likely have that tomorrow for you 

 

Share this post


Link to post
Share on other sites

this is my line of timeshock in ledwiz2 ini

timeshock,0,0,0,0,0,0,S18,0,0,0,ON Red,ON Green

so ON Green is bound to my rgb undercab, this is the most basic effect, since it doesn't care about what happens on the playfield, it just turn the toy ON constantly, with color Green here, and in the case here, the green is constantly fading up and down every 0.5 sec

i'll do more tests tonight, i didn't pay attention to the ON Red, which is bound to my rgb flippers

Share this post


Link to post
Share on other sites

Attached is my INI files.

I've tried to cover off everything I can think of

 

directoutputconfig20.ini refers to my pacled, and in my config tool, it allows me to setup 64 outputs
directoutputconfig40.ini refers to the FTDI Chip and has 8 outputs.

 

Also attached is a screen shot of my config tool config for timeshock.  

 

 

directoutputconfig.zip

Config tool.PNG

Share this post


Link to post
Share on other sites

good news, i tried again today and mystery, the ON Green stays green as it should, yesterday never and today, it works like a charm, i don't understand but it seems my second ledwiz is okay now!

i have an artnet, bound to directouptutconfig100.ini, for which i needed to create my cabinet.xml and this one is not working, i can put mine here if needed

does it seem that all controllers that need a cabinet.xml are not working?

Share this post


Link to post
Share on other sites

Okay here's a build that should read the global config correctly.

However I'm wondering which values DOF expects, specially from the flashers. Currently I'm sending 0 and 1. But for flashers I get in-between values from Pro Pinball, should I send all of them to DOF, or only when it's 0 or 1? DOF takes an int, maybe it expects values between 0 and 100?

pro-pinball-dof-r3.zip

Share this post


Link to post
Share on other sites

SUCCESS!!!!!!!!!

THANK YOU FREEZY!

 

this works fantastic,  minus the crash on exit.   

DirectOutput Logger initialized
2017.09.12 20:52:57.076 DirectOutput Version 0.9.6464.42771 as of 2017.09.12 23:45
2017.09.12 20:52:57.076 Global config loaded from: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\GlobalConfig_ProPinball.xml
2017.09.12 20:52:57.077 Loading Pinball parts
2017.09.12 20:52:57.077 Loading cabinet
2017.09.12 20:52:57.079 Will load cabinet config file: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\Cabinet.xml
2017.09.12 20:52:57.334 1 output controller defnitions and 1 toy definitions loaded from cabinet config.
2017.09.12 20:52:57.334 Cabinet config file has AutoConfig feature enabled. Calling AutoConfig.
2017.09.12 20:52:57.334 Cabinet auto configuration started
2017.09.12 20:52:57.384 Detected and added PacLed64 Id 1 with name PacLed64 1
2017.09.12 20:52:57.384 Added LedwizEquivalent Nr. 20 with name PacLed64 1 Equivalent 1 for PacLed64 with Id 1
2017.09.12 20:52:57.387 Opening 64-bit LedWiz driver...
2017.09.12 20:52:57.391 Debug: Ledwiz devicelist content. Handles: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Num devices: 0
2017.09.12 20:52:57.392 Debug: Disposing LedWiz instance -01.
2017.09.12 20:52:57.396 Cabinet auto configuration finished
2017.09.12 20:52:57.396 Autoconfig complete.
2017.09.12 20:52:57.396 Cabinet config loaded successfully from C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\Cabinet.xml
2017.09.12 20:52:57.396 Cabinet loaded
2017.09.12 20:52:57.396 Loading table config
2017.09.12 20:52:57.396 Warning: No table config file found. Will try to load config from LedControl file(s).
2017.09.12 20:52:57.396 Will try to load configs from DirectOutput.ini or LedControl.ini file(s) for RomName Timeshock
2017.09.12 20:52:57.401 Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig20.ini
2017.09.12 20:52:57.412 Min DOF Version is 0.8 for file directoutputconfig20.ini
2017.09.12 20:52:57.764 Loading LedControl file C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\directoutputconfig40.ini
2017.09.12 20:52:57.768 Min DOF Version is 0.8 for file directoutputconfig40.ini
2017.09.12 20:52:57.812 2 directoutputconfig.ini or ledcontrol.ini files loaded.
2017.09.12 20:52:57.814 Config for RomName Timeshock exists in LedControl data. Updating cabinet and config.
2017.09.12 20:52:57.881 Table config loading finished
2017.09.12 20:52:57.881 Pinball parts loaded
2017.09.12 20:52:57.881 Starting processes
2017.09.12 20:52:57.881 Initializing cabinet
2017.09.12 20:52:57.882 Debug: Initializing output controllers
2017.09.12 20:52:57.884 FT245RBitbangController Sainsmart 1 with serial number ZBPLNGOP01 has been initialized and the updater thread has been started.
2017.09.12 20:52:57.886 PacLed64 Id:1 initialized and updater thread started.
2017.09.12 20:52:57.886 Debug: Output controllers initialized
2017.09.12 20:52:57.893 Cabinet initialized
2017.09.12 20:52:57.900 Loading shape definition file: C:\Program Files (x86)\Steam\steamapps\common\Pro Pinball Ultra\DirectOutputShapes.xml
2017.09.12 20:52:57.902 Connection to FTDI chip ZBPLNGOP01 established.
2017.09.12 20:52:57.966 Framework initialized.
2017.09.12 20:52:57.966 Have fun! :)
2017.09.12 20:53:35.257 Finishing framework
2017.09.12 20:53:35.259 Finishing cabinet
2017.09.12 20:53:35.261 Debug: Finishing output controllers
2017.09.12 20:53:35.367 Connection to FTDI chip ZBPLNGOP01 closed.
2017.09.12 20:53:35.367 FT245RBitbangController Sainsmart 1 with serial number ZBPLNGOP01 has been finished and the updater thread has been terminated.
2017.09.12 20:53:36.380 PacLed64 Id:1 finished and updater thread stopped.
2017.09.12 20:53:36.380 Debug: Output controllers finished
2017.09.12 20:53:36.380 Cabinet finished

 

Share this post


Link to post
Share on other sites

I peeked into global config and there you can set your cabinet.xml. So @arngrim can you check if with the posted build above, a GlobalConfig_ProPinball.xml pointing to your cabinet.xml, your artnet whatever thingie works?

Then we still need to figure out the values. @electricmagma does 0/1 as currently implemented work with your flashers?

Share this post


Link to post
Share on other sites
1 hour ago, freezy said:

I peeked into global config and there you can set your cabinet.xml. So @arngrim can you check if with the posted build above, a GlobalConfig_ProPinball.xml pointing to your cabinet.xml, your artnet whatever thingie works?

Then we still need to figure out the values. @electricmagma does 0/1 as currently implemented work with your flashers?

It actually does.  My flasher setup is pretty basic, as i am just learning how to make it all work, but yes.  i have had my flashers working as i was expecting them to.   I was trying to figure out in my brain what 2-100 could possibly do.    Maybe intensity?   That being said,  it seems my flashers are full intensity at 1

The global config is absolutely where the cabinet.xml goes,  and i am assuming that will do the trick for Arngrim.    You can also specify in that global file your INI files directly, but auto detecting them seems to work fine in this case.

Share this post


Link to post
Share on other sites

i hope to try tomorrow, my job is taking me a lot of time lately

flashers with value 0 and 1 only is enough, or we would need a conversion from 0 to 100 to 0 255 to use nobool  functionlaity of the mapping, just like we do thanks to djrobx changes into vpm for WPC and Stern SAM tables, i'm even not sure of the result that timeshock would give, if it is often lower than 50 for example.

for completing the mapping, i would need the schematics to know the solenoid are located, also are there values that are bound for the switches like W1 for letoutlane rollover? the switches mapping is essential for a good force feedback of a table

Share this post


Link to post
Share on other sites

I can also do 0-255, no problem! And also emit the intermediate values Pro Pinball is sending. Would that be better?

I'll try to get a schema where's what located. I'm not a Timeshock pro though, so if someone else with more in-depth knowledge wants to give it a shot, please do!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×