Content Provider swisslizard Posted August 30, 2013 Content Provider Share Posted August 30, 2013 After months of development, I more than happy to announce the DirectOutput framework for virtual pinball cabinets. Since I did not like the limitations (not enough outputs) and problems (stuttering) with the current ledontrol.vbs solution to control the outputs of my cabinet, I have started to implement a completely new system to control output hardware connected to virtual pinball cabinets. During the past months the project has grown quite a bit larger than expected and more and more options have been added. A lot of testing has been done by a group of alpha testers and myself as well. The result is what I call the DirectOutput framework (DOF). Since DOF has proved to be pretty stable during the alpha testing period, beta testing starts today. For this phase of the project, it would be great to have a few more people joining for beta testing. Please read the paragraphs below for more information. Keep (virtual) pinball alive and all the best! Swisslizard / Tom What you get Key features of the DirectOutput framework: Support of up to 16 LedWiz and 4 Pacled64 units (including a mix of them). Support of Art-net/DMX. Multithreaded to ensure optimal performance and avoid stuttering issues. Integration with B2S.Server. Support for EM tables. Loads of new config options. Extendable through scripting. Extendable object oriented architecture. Coded in C#. Fully documented code. More new developements: Since DOF can support more than one output controller, Degoor has extended his great LedWiz config tool with new functionality to allow the configuration of more than one output controller. Arngrim has reviewed most of the configs in the config tool. The config tool will also support a 10 contactor setup in addition already existing 8 contactor setup. Configuration DOF supports two different configuration schemes: Natively the framework uses XML files to store its configurations. The XML based configs allow you to configure every aspect and option of the framework.The config files allow for all config option, maximum flexibility, but they do also add some addition complexity. Ledcontrol.ini files like the ones used for the legacy ledcontrol.vbs solution can be used for the configuration as well. Together with the auto config features for some of the supported hardware, they will allow for a configuration with very little effort.If more than one LedWiz and/or PacLed64 is in use, several Ledcontrol.ini files can be used for the configuration.Due to the limitations of ledcontrol files, not all options and aspects of the framework can be configured. Supported hardware Currently DOF is supporting the following hardware: LEDWiz from GroovyGameGearThe use of up to 16 LedWiz units is supported by the framework. DOF can even detect and configure LedWiz units automatically. PacLed64 from UltimarcUp to 4 PacLed64 units can be used. PacLed64 units can be detected and configured automatically. Art-Net / DMXArt-Net and DMX are standards used to control light effects. On the market you can find tons of DMX controlled light effects ranging from small and cheap to very big and expensive. Planed hardware support: PacDrive from Ultimarc Driver for addressable RGB led stripes (WS2811/WS2812 based stripes). Support for other hardware (e.g. some home grown Arduino or Raspberry Pi based controller) is easy to implement. Therefore the number of supported controllers will likely grow over time. Documentation The preliminary documentation of the framework is already available on GitHub. It contains a lot of information on the installation, architecture and the configuration of the framework, as well as the fully documented object model. The pages about the installation and supported hardware might be a interesting starting point. http://directoutput.github.io/DirectOutput/index.html How it is working The DirectOutput framework is working as a plugin for Herwehs great B2S.Server. This means that every table using the B2S.Server can use the DirectOutput framework as well, usually without any changes to the table script. For more information on the B2S.Server plugin interface have a look at http://directoutput.github.io/B2SServerPluginInterface/ and for some sample plugin code you can go to http://directoutput.github.io/B2SServerSamplePlugin/ Since the outside interface of DOF is quite simple (currently only 3 methods), the implementation of interfaces to other pinball simulations should be easy. Sample code for a plugin host supporting DOF has already been developed and can be provided on request. Downloads Sorry, public downloads are not yet available. At this time the software is only accessible for the testers, but it will become available for everyone once beta testing has been completed. Support & Forum If you have questions about the framework (please read the docu first) or want to discuss something, please visit the support forum. http://vpuniverse.com/forums/forum/118-direct-output-framework/ Source Code As soon as the project is released for everyone, the source code for the framework will be published on GitHub and everybody is invited to download, change and extend the code. Testers wanted A good amount of testing has already been done by a group of very helpful enthusiasts and myself. Now, we would like to invite a few more people for the beta testing phase. If you want to participate in the testing you should at least have some basic idea how VP, Pinmame and B2S.Server interact, know a little bit about table scripting and you should be willing to read some documentation and follow the relevant discussions. If you are interested to help testing, please send my a PM. Please include your email address in the PM, so I can enable access to the Google drive containing the files for the testers. Since I can only work with a limited number of people at the same time (still need to manage the whole thing somehow), only a limited number of testers will be able to join initially. Thanks When developing software, coding is only a part of the work. Testing, doing configurations and encouraging the coder take a lot of time as well. Therefore I want to thank the following enthusiasts: Herweh for adding a plugin interface to his B2S.Server and enduringing my everlasting requests for changes and features. Arngrim for being the first to board the train and start testing, constantly finding bugs and most of all redoing and enhancing the configs in the LedControl config tool. Bent98 for testing and tryinging to help to mange the project somehow. Degoor for extending his Ledwiz config tool. Bill55, SirCheddar and Slydog for testing. Everyone else who was at some stage involved in the project for their support and interest in my work. Link to comment Share on other sites More sharing options...
slydog43 Posted August 30, 2013 Share Posted August 30, 2013 Just want to say this is another great day in VP history, as DOF make no ball stutter on my system at even during many outputs. Thanks for such an awesome project. TPA/Unity 3d/Timeshock need to incorporate this in their simulators. Swisslizard take a bow, incredible amount of work done along with great docs. Still learning how to incorportate with EM games as I want to add LedWiz to older games also. Link to comment Share on other sites More sharing options...
Content Provider bent98 Posted August 30, 2013 Content Provider Share Posted August 30, 2013 Thanks Swisslizard for your amazing plugin and thank you Stephan for your help updating B2S everytime we found a bug! I love playing my tables with all the toys, 10 contactors, beacons etc..., with no stutter. Look for some other cool things in the future!!! Link to comment Share on other sites More sharing options...
Content Provider DeeGor Posted August 30, 2013 Content Provider Share Posted August 30, 2013 This project is a huge step forward for cab owners. Part of the issue with needing such a powerhouse PC with these cabinets was due to the inefficiencies with the legacy framework we were all using. I'm wondering what the new specs will be now that all of the ledwiz functions are no longer tied to VP. It would be nice to be able to go with one of the cheaper video cards rather than having to purchase the high end GTX cards. Link to comment Share on other sites More sharing options...
Content Provider arngrim Posted August 30, 2013 Content Provider Share Posted August 30, 2013 There are so many advantages to use this framework, it will be easily considered as the replacement of ledcontrol.vbs, just like DB2S replaced UVP Here is one small video of my mod of Scarface, with DOF integration, with 10 contactors setup, to control the Ledwiz Link to comment Share on other sites More sharing options...
Content Provider Itchigo Posted August 30, 2013 Content Provider Share Posted August 30, 2013 Not that I have ledwiz, or really know anything about this... It sounds like a great leap, but what exactly does this do? (Noob asking a question). Is this a replacement for ledwiz? Link to comment Share on other sites More sharing options...
Content Provider DeeGor Posted August 30, 2013 Content Provider Share Posted August 30, 2013 It's a replacement for the legacy ledwiz framework created by manowar. ie: The software that listens for rom events and fires off ledwiz outputs according to your configuration. The old framework wasn't efficient enough to keep up with some of the more "busy" tables, and would cause stutter on occasion. The Direct Output Framework (DOF) runs independently from VP, and is MUCH faster. Link to comment Share on other sites More sharing options...
Content Provider Itchigo Posted August 31, 2013 Content Provider Share Posted August 31, 2013 Thanks Deegor! Link to comment Share on other sites More sharing options...
gamefixer Posted August 31, 2013 Share Posted August 31, 2013 REALLY looking forward to when this made available to the general public. Some of the stutter on my cab is so bad it keeps me from playing some of the games. Link to comment Share on other sites More sharing options...
SEALen Posted August 31, 2013 Share Posted August 31, 2013 Nice work. This will be used in my to be cabinet. I have planed more toys than 32 outputs can handle and was glad to see I didn't need to prioritize any away But I do wonder if this will decrease the need for high end GTX cards. Hopefully the gifted programers will move the code up the direct x ladder a few steps Link to comment Share on other sites More sharing options...
Content Provider swisslizard Posted September 1, 2013 Author Content Provider Share Posted September 1, 2013 It is quite unlikely that DOF will decrease the need for highend hardware. That problem is tied to Visual Pinball which uses the hardware very inefficiently. On the other hand, DOF takes away a bit of the work, which would normaly occur within the thread of VP, which can make a little difference. Link to comment Share on other sites More sharing options...
maxxsinner Posted September 1, 2013 Share Posted September 1, 2013 Nice work here Tom and the testers. Will be great to see this evolve. Link to comment Share on other sites More sharing options...
tttttwii Posted September 2, 2013 Share Posted September 2, 2013 I just signed up as a beta tester. I have a cab with one ledwiz installed using all 32 outputs (8 contactors, 5 RGB lights, beacon, shaker and wiper motor). Installation and deinstallation of old Ledwiz framework was quite easy following the excellent documentation provided on Toms website. It worked directly at the first shot. I have not used the XML-method and copied the latest ledwiz.ini from Ledwiz config tool in. Results: It is like having a faster processor installed. With old ledwiz software I experienced something I would call microstutter, which has completely disappeared. It seems that all my toys and contractors are reacting faster (less latency). I played >20 tables, all without any problem! Thank you Tom for this fabulous framework. I am sorry that I cannot contribute more at the moment because everything works!! I will test it with the other tables as well! Great job! Link to comment Share on other sites More sharing options...
Content Provider swisslizard Posted September 2, 2013 Author Content Provider Share Posted September 2, 2013 tttttwii: Just go on playing a lot of different tables. This is what has to work with DOF. Link to comment Share on other sites More sharing options...
Dodger1980 Posted September 2, 2013 Share Posted September 2, 2013 It's a replacement for the legacy ledwiz framework created by manowar. ie: The software that listens for rom events and fires off ledwiz outputs according to your configuration. The old framework wasn't efficient enough to keep up with some of the more "busy" tables, and would cause stutter on occasion. The Direct Output Framework (DOF) runs independently from VP, and is MUCH faster. So next dumb question... Do I "need" this when I don`t have any shackers, LED´s or whatever "features" in my cab? Only the PC, an I-Pac and the screens? Link to comment Share on other sites More sharing options...
slydog43 Posted September 2, 2013 Share Posted September 2, 2013 no, this if framework is for talking to a ledwiz or pacdrive. If you don't have leds/contactors/shakers/etc then you don't need this framework. Link to comment Share on other sites More sharing options...
Loafmeister Posted September 2, 2013 Share Posted September 2, 2013 I would volunteer to help however I m at least a week away from finally setting up my ledwiz and toys. Good luck with this project though, this is fantastic! Link to comment Share on other sites More sharing options...
Dodger1980 Posted September 2, 2013 Share Posted September 2, 2013 no, this if framework is for talking to a ledwiz or pacdrive. If you don't have leds/contactors/shakers/etc then you don't need this framework. Ok, thx man. Link to comment Share on other sites More sharing options...
vulbas Posted September 2, 2013 Share Posted September 2, 2013 hello swisslizard. it is possible you send me the soft for testing on my cab ? http://www.youtube.com/watch?v=gwxTtRJyCBQ thank you Link to comment Share on other sites More sharing options...
ViriiGuy Posted September 5, 2013 Share Posted September 5, 2013 I sent you a PM at Hyperpin, but I Would love to test this as well. Here is my cab Link to comment Share on other sites More sharing options...
Content Provider swisslizard Posted September 5, 2013 Author Content Provider Share Posted September 5, 2013 Thats a nice cab! Sent you a PM. Link to comment Share on other sites More sharing options...
ViriiGuy Posted September 5, 2013 Share Posted September 5, 2013 Thanks and Thanks Link to comment Share on other sites More sharing options...
vulbas Posted September 6, 2013 Share Posted September 6, 2013 Link to comment Share on other sites More sharing options...
ViriiGuy Posted September 6, 2013 Share Posted September 6, 2013 He probably missed your post. Pm him. Link to comment Share on other sites More sharing options...
vulbas Posted September 6, 2013 Share Posted September 6, 2013 Ho ok. I contact tom directly Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.