Jump to content

Addressable Rgb's


randr

Recommended Posts

  • Content Provider

I've had a bunch of people asking me for a tutorial for the addressable LED strips and matrix.. There’s just soooo much information on it, that I simply can't do a full "guide"....but I typed out a little "guide" that follows what "I" did to get my addressable LED strips up and running for me.

This is by no means complete or perfect, as no two setups are the same....but I thought this would help alot of people by having this laid out out in my own plain words. This only covers the software portion of my setup. You still need to "Read the manual" as Swisslizard says....

My setup for DOF was only an Led-wiz and a Teensy for addressable leds.

 

You will need to flash the Teensy with the custom firmware from Swisslizard:

 

https://github.com/DirectOutput/TeensyStripController/wiki/Software:-Teensy-Firmware

 

For software I recommend installing the VP 10 (X) all in one installer (get the newest version). That will setup your B2S server,etc...., and you’ll have VPX if you want to use it.

 

http://www.vpforums.org/index.php?app=downloads&showfile=11573

 

https://vpinball.com/VPBdownloads/vpx-installer-10-4-0/

 

Update your B2S Server to the latest files. Currently 1.3.0.2:

 

http://www.vpforums.org/index.php?app=downloads&showfile=12553

 

Then you need to install and setup DOF R3++. This is mjr's Grander Unified version. Highly recommended as this is now the only centralized and up to date version. You can use mjr's excellent Installer (DOF R3++ Windows Setup Installer (MSI) which makes installing DOF so easy now! Just a few clicks!

 

http://mjrnet.org/pinscape/dll-updates.html

 

...when it’s installed, you should have DOF R3++ installed in c:\DirectOutput    folder.

 

You need to install the DOF plug-in for Pinball X. (If you want addressable leds in Pinball X)

 

http://pinball.weilenmann.net/docu/DirectOutputWIP/pbx.html

 

You will need to have a “c:\DirectOutput\config”   folder.

 

DOF Config Tool:

 

http://configtool.vpuniverse.com/login.php

 

Normally you would setup your DOF devices on the DOF config tool site. This site will basically generate config files for ALL of the VP tables. It basically maps the lights and feedback, etc to work with whatever arrangement you have for your devices (my LED-Wiz is setup different than other people for example).  You would then copy those "generated" files to your “c:\DirectOuput\config”   folder.

 

In your “c:\DirectOutput\config” folder you will need the following files (I’ll explain each):

 

-----------------------------------------

 

cabinet.xml

 

-this is a file you MUST create yourself and edit for your setup.

-You configure your led strips and back matrix in here.(left side, right side and back are all considered a separate matrix)

 

http://pinball.weilenmann.net/docu/DirectOutputWIP/toy_builtin.html#use_DirectOutput_Cab_Toys_Hardware_LedStrip

 

-You also create the “Led-Wiz equivalent outputs” in here... which would match up with your WS2811 controller outputs on the DOF config tool site. This is basically mapping your LED strip MX toys to those outputs. Its confusing, but even all the other “effects” use these 3 outputs.

 

http://pinball.weilenmann.net/docu/DirectOutputWIP/toy_builtin.html#use_DirectOutput_Cab_Toys_LWEquivalent_LedWizEquivalent

 

-it also tells DOF what your addressable led config file is for VP tables,etc.. (normally directoutputconfig30.ini, created by the DOF config tool)

------------------------------------

directoutputconfig.ini

 

-this is basically all the table config / mappings for Led-Wiz, etc for VP. Created by the DOF config tool, but only if you have any of those controllers (Led-Wiz,etc) setup.

------------------------------------

directoutputconfig30.ini

 

-this is the table config / mappings for your WS2811 controller (Teensy, etc), and addressable leds. Created by DOF config tool.

------------------------------------

GlobalConfig_b2SServer.xml

 

-this tells DOF what files you are using, where they are, etc.. You MUST create this for yourself using the GlobalConfigEditor.exe

------------------------------------

GlobalConfig_PinballX.xml

 

-for me, I just made a copy of the file GlobalConfig_b2SServer.xml, and renamed it GlobalConfig_PinballX.xml. Needed for Pinball X addressable LED effects.

-------------------------------------

tablemappings.xml

 

-created by DOF config tool

--------------------------------------

DirectOutputShapes.xml

DirectOutputShapes.png

 

-Up to date versions of these two files are now supplied by DOF Config Tool.  I updated the DirectOutputShapes.xml to now include all letters, numbers, and special characters included in the DirectOutputShapes.png .

-copy both of these and the rest of the "generated" files from DOF Config Tool to your "DirectOutput\config" folder.

-you may see the older DirectOutputShapes.xml and DirectOutputShapes.png in the DirectOutput folder. You can delete these as DOF will now use the updated versions you copy into in your DirectOutput\Config folder.

------------------------------------

 

 

So in my case, I first had my Led-Wiz all configured and running for DOF, and I also used the DOF config Tool to create the directoutputconfig.ini, and tablemappings.xml files. I did NOT need a cabinet.xml file for Led-Wiz.

 

When it came to addressable LEDs, then I needed the cabinet.xml, directoutputconfig30.ini, and GlobalConfig_PinballX.xml  files in my “c:\DirectOutput\config”   folder.

 

In my case, I needed to have a cabinet.xml and directoutputconfig30.ini that sets up everything for the addressable leds.

 

My cabinet.xml was based on randr’s, but I ONLY kept his Led-Wiz equivalent Outputs” sections. The portions needed for Teensy and addressable LED strips, etc had to be configured to my particular setup.

 

http://pinball.weilenmann.net/docu/DirectOutputWIP/toy_builtin.html#use_DirectOutput_Cab_Toys_Hardware_LedStrip

 

 

After all this was done. I was good to go!

 

Here is a dropbox link to my “DirectOutput/config” files.

 

https://www.dropbox.com/sh/te4t6gtuv5flt2t/AABM-5p8qe6J2lpo8fYbeezRa?dl=0

 

These were configured for my system (I only control Led-Wiz and Teensy in DOF) , but the two main files you will need specifically for addressable leds are the cabinet.xml (you need to edit your Led strip layout) and the directoutputconfig30.ini files (this gives you the extra shapes and effects).

 

 

This is by no means a complete and perfect “guide”, but its pretty much all I can help out with in my own words.

 

Hope this helps....

Link to comment
Share on other sites

Man this is perfect Terry, TY you so much for doing this.  While doing some reading myself it was difficult to follow as every was doing there own thing and files were being flung all over the place.  It was hard to know what was the correct version of the files and what needed to be done to get this to work.  

 

Awesome job sir, very much appreciated.

Link to comment
Share on other sites

  • Content Provider

Man this is perfect Terry, TY you so much for doing this.  While doing some reading myself it was difficult to follow as every was doing there own thing and files were being flung all over the place.  It was hard to know what was the correct version of the files and what needed to be done to get this to work.  

 

Awesome job sir, very much appreciated.

 

It's good that you asked....since this is more fresh in my mind. Like you said, it was hard to follow newer setups compared to older version, etc..., and also how certain effects were working...

 

We do have to keep in mind that DOF R3 is still in beta, and not quite a public release yet, so this is still new territory.

 

Swisslizard did an amazing job on the documentation. It's just alot for someone new to DOF as a whole like myself, but people like those in this thread were very helpful....

 

 

 

 

....and please guys....if I have something wrong or missing, help me fill the gaps so this little guide will be better for newcomers.

Link to comment
Share on other sites

Hello All,

 

Here is the translated version of GECH's awesome tutorial.  I take no credit for this work, all i did was translate and post.  Great work GECH :)

 

Links

https://github.com/DirectOutput/TeensyStripController
http://vpuniverse.com/forums/topic/2180-addressable-rgbs/page-1
http://pinball.weilenmann.net/docu/DirectOutputWIP/index.html

Material

So here's the beast:

 

b0c50991c33557509a81f50e38194bbe7f08233b

and its additional card:

 

14dde1be0c9df5d7dd0a53c806bf81a27a9ab843

welding female pins on the octo map:

2abcb8ab353eccf15a3cd9242688d2649a21d9a3

I added a heater and pcb footers:

8bc870f0ddf08571e6a54785a23430e6b7347275

 

ff6c583b94f1ae717f3bc11b67df2b87cb1a040f

Once fitted
e2cfb3d0ee4e13e6dd86d68fc4a0e805a61cd61f
need to cut a cable ethernet 2 and release the internal 4 pairs of cables.
then each pair is a 1-port Octo map which has 8.


 daef0f91352954cac5fc77af3be95e89747c335e


Once connected:

801d61819a660903d86d71d7cd5963819df6cca5

Software

Now, he must inject the firmware into the teensy:
https://github.com/DirectOutput/TeensyStripController/releases

2 methods

1.
With the loader:
We downloaded the corresponding version has its pc
https://www.pjrc.com/teensy/loader.html

then we start the exe, it selected the firmware, it presses on the button's the weensy and go.

2.
With the arduino programmer

It downloads the program arduino
https://www.Arduino.cc/en/main/software


then teesyduino
https://www.pjrc.com/teensy/td_download.html

It installs everything (with at least the library octows2812 to teesyduino... (me I put everything..))
who downloaded this software the firm on github (download zip right)
https://github.com/DirectOutput/TeensyStripController

then you open the firmware which will launched the program arduino.
Select teensy 3.2



25667b35603d52cc85f6dd71778404248eef2b54


then in config panel, devices and printers there is the port of the teensy
662a0864700c1b0f805b3003b8bf393b98b5a05d
 

Link to comment
Share on other sites

port that you select in arduino

06d77ede6551e352842a1ae8f4e0bd517ef13ed0
There is more that a upload the program to the teensy.

Normally the teensy is ready  


DOF

Then to do communicate Vpinball and the teensy. The DOF as to ca...
Download and copy above the existing files (or follow the tutorial) is a beta version of the 3 DOF
Do not forget to unlocked files needed

http://Pinball.weilenmann.NET/DirectOutput_V0.9_Build_5769.25712.zip

in the config tool
http://configtool.vpuniverse.com/login.php

Select 1 newcomer (ws2811)

42a14f0a92efd41eb19d26a90c78d6398e7523c5

Select its toys (in 1 first time take the same..)

6a68b44d535a1915fdcf51c1962b0e0af140179e

Save the config and generate files.

These files will be a copy to C:\DirectOutput\config (or has the place or is the DOF) and it will delete those folders, tables, tables pm5...

via global configuration editor, create a GlobalConfig_1 file in the config folder (one click file top left and then save as.)
Then this same config folder create a new .txt (click right, new, text document) file that you backup as "Cabinet Config.xml" (via a Publisher style notepad or notepad ++) in which we copy:

Code:

<?xml version="1.0"?>
<Cabinet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>GeCh Pin</Name>
<OutputControllers>


<TeensyStripController>
<Name>LedStripController</Name>
<NumberOfLedsStrip1>30</NumberOfLedsStrip1>
<NumberOfLedsStrip2>0</NumberOfLedsStrip2>
<NumberOfLedsStrip3>0</NumberOfLedsStrip3>
<NumberOfLedsStrip4>0</NumberOfLedsStrip4>
<NumberOfLedsStrip5>0</NumberOfLedsStrip5>
<NumberOfLedsStrip6>0</NumberOfLedsStrip6>
<NumberOfLedsStrip7>0</NumberOfLedsStrip7>
<NumberOfLedsStrip8>0</NumberOfLedsStrip8>
<ComPortName>COM5</ComPortName>
</TeensyStripController>
 
</OutputControllers>

<Toys>
      
<LedStrip>
  <Name>BackBoard</Name>
  <Width>20</Width>
  <Height>1</Height>
  <LedStripArrangement>RightLeftTopDown</LedStripArrangement>
  <ColorOrder>GRB</ColorOrder>
  <FirstLedNumber>6</FirstLedNumber>
  <FadingCurveName>SwissLizardsLedCurve</FadingCurveName>
  <OutputControllerName>LedStripController</OutputControllerName>
</LedStrip>
    
<LedStrip>
  <Name>Sideboard Right</Name>
  <Width>1</Width>
  <Height>5</Height>
  <LedStripArrangement>BottomUpRightLeft</LedStripArrangement>
  <ColorOrder>GRB</ColorOrder>
  <FirstLedNumber>1</FirstLedNumber>
  <FadingCurveName>SwissLizardsLedCurve</FadingCurveName>
  <OutputControllerName>LedStripController</OutputControllerName>
</LedStrip>
      
<LedStrip>
  <Name>Sideboard Left</Name>
  <Width>1</Width>
  <Height>5</Height>
  <LedStripArrangement>TopDownLeftRight</LedStripArrangement>
  <ColorOrder>GRB</ColorOrder>
  <FirstLedNumber>26</FirstLedNumber>
  <FadingCurveName>SwissLizardsLedCurve</FadingCurveName>
  <OutputControllerName>LedStripController</OutputControllerName>
</LedStrip>

<LedWizEquivalent>

   <Name>LedWizEquivalent 30</Name>
    <Outputs>

    <LedWizEquivalentOutput>
    <OutputName>BackBoard</OutputName>
    <LedWizEquivalentOutputNumber>1</LedWizEquivalentOutputNumber>
    </LedWizEquivalentOutput>

    <LedWizEquivalentOutput>
    <OutputName>Sideboard Right</OutputName>
    <LedWizEquivalentOutputNumber>4</LedWizEquivalentOutputNumber>
    </LedWizEquivalentOutput>

    <LedWizEquivalentOutput>
    <OutputName>Sideboard Left</OutputName>
    <LedWizEquivalentOutputNumber>7</LedWizEquivalentOutputNumber>
    </LedWizEquivalentOutput>

    </Outputs>
    <LedWizNumber>30</LedWizNumber>
</LedWizEquivalent>
   
</Toys>

</Cabinet>

This file is a change based on its config.

By reading my file, we see that the important info are:

my cab is called GS pine (just for fun)
I have a tape of 30 leds on port 1
I use the COM5 port

I have 3 toys 
1 backboard wide 20 led 1 led on top (for matrices) starting a led 6 
1 sideboard 5 leds from top right 1 led of wide commencing led the 1 and bottom up
1 sideboard 5 leds from top left 1 led of wide commencing led the 26 and top down

the teensy is recognized as ledwizequivalent 30

The backboard is at 1 of the configtool
the right 4 sideboard
and the left on the 7 sideboard.

Edit: for arrays of leds

5f175ff0834f0a56fc9a3bfae2c6b6ae9501ce85

And it is not finished...

It will remain a copy the file GlobalConfig_1 from the dof config folder in the same folder config 2 times.
Rename the GlobalConfig_B2SServer 1 and... it works

Bonus

and the 2nd bonus...
rename it to GlobalConfig_PinballX
and copy the file Directoutput\r PinballX Plugin.dll to the dof file in the plugin folder of pinballx 
C:\PinballX\Plugins

run plugin manager, check and select the plugin directoutput\r in the list click on configure the path of the dof should be good in theory.

AND IT IS ALL


It is not quite everything...
To have effects in pinballx:

We copy the pinballx line
https://DL.dropboxusercontent.com/u/98865673/Ligne%20pinballx.txt


 

in "Table Config" of the configtool for table Pinballx

b3b7e5ee2df4b6303dc6a64b36cdad631dd1c907

We add the recovered line above on the right at the level of PF Back Flasher MX, it saves and regenerates the file.

9097d29cace26516fb7d1cf92386f7d1e1cdbb0b


Edit: 
New Beta release of DOF:
http://Pinball.weilenmann.NET/DirectOutput_V0.9_Build_5773.37947.zip

Ini everything ready by swisslizard to rename it to directoutputconfig30 and a match has its toys:
http://Pinball.weilenmann.NET/directoutputconfig50.zip


Edit 2: added effect line pinballx

Link to comment
Share on other sites

Hello All,

 

Not sure if anybody noticed that the side effects while browsing the menu in pinballx, only utilized 70% of the strip.  Heres how to change it so it uses the entire strip.

 

Got you your INI30 file and edit

 

Do a find and look for Menu

 

You will see a precursor of $PBXMenuUp Yellow.

 

There is a setting AH70, change that to 100, do a find next and do the same for all, should be 4 entries.

 

You will now have the side menu effect utilizing 100% of the strip.

 

AH sets the percentage of the strip used.  This was bugging me so i tinkered until i figured it out, now onto figuring out how to get table selection effects for all FP tables.

Link to comment
Share on other sites

  • Content Provider

Good job.  It would be so cool if someone could figure out a way to send out commands to DOF from Future Pinball. The gameplay effects can be so cool!

 

I've been busy sorting out my new dual DMD monitor, and VPX running in "exclusive fullscreen" issues.

 

Now that I have most of that sorted for VPX, I'll try to finally get some gameplay demos done. The really tricky part is setting up the camera in a good position to show ALL the strips.  All my previous static videos were me sitting on top of a ladder and holding the camera still while it was pointing down sideways. My tripod doesn't go that high!  :)

 

 

 

I eventually want to figure out how to do specific game effects, but that won't be for quite a while I think...

Link to comment
Share on other sites

  • Content Provider
Visual Pinball Addressable LED Matrix Gameplay Videos!

 

 

Well, after a few distractions:  my middle screen dying, creating a new bezel, getting VPX running in exclusive fullscreen issues, etc....

 

 

They are finally here! I said a while back I would get around to showing some videos of VP gameplay and effects from addressable leds through DOF....so here they are!

 

 

Unlike the rolling effects while browsing in Pinball X, these are different things that occur from various tiggers throughout gameplay. Explosions, looping effects, rocket trails, sparkles, symbols, shapes....all sorts of things. 

 

Please note: this was the best angle I could get that would still show all 3 sections of the addressable LEDS. The brightness of the LEDs can also be adjusted...so you don't need to worry about being blinded while playing!

 

I apologize if I seem to repeat myself a few times....the damn power kept going out while I was recording, so I lost track of what I said in earlier videos.

 

 

This first video shows Bride of Pinbot and Attack From Mars. Lots of different types of effects shown.... I continued to make other videos, even after the power goes out at the end of this video!

 


 

 

This second video shows off some explosion effects, trail effects, and more. Tables shown are Medieval Madness, and Monster Bash.

 


Link to comment
Share on other sites

  • Content Provider
This third video shows some cool looping effects from The Getaway, as well as the neat effects in Star Trek and Circus Voltaire!

 


 

 

This last video show ALOT more tables, and demonstrates how the various lighting toys in a pinball cabinet can be replicated by the back matrix! Also shows some other effects. Tables shown are NBA Fastbreak, Jurassic Park, Scared Stiff, Tales of the Arabian Nights, Transformers, Twilight Zone, and Star Wars.

 


 

 


I hope these videos do justice in showing off the hard work from everyone involved in making these effects possible!

 

If there is something specific you want to see, let me know and maybe I can put up more videos!

 

Link to comment
Share on other sites

  • 3 weeks later...
  • Content Provider

For anyone who didn't notice...BIG update for addressable LEDS in DOF Config Tool! Excellent stuff...and thank-you for explaining the setup with pictures! Anyone with addressable leds needs to see the above link!

Lots of new configuration options that no longer have to be done the hard way! Great work arngrim!

I haven't tested yet, but I'm hoping that this includes all the hard work randar and Gech (and others) put into the configs for the tables.

One question...it seems that "beacon MX" still isn't on any tables. Does that mean that the beacon effects are still considered a "flasher effect" for the time being?

 

If someone could explain the definition of each "MX" effect and what they are meant for, that would be great! 

 

I will test as soon as I can.

Link to comment
Share on other sites

My private config is published :D.

You can now choose what effect to use in combos and can adjust the size, shape and color for the strobe and the size and shape for the back flasher.

The beacon mx isn't used.

The strobes mx shape can be adjusted directly in the tool. It corresponds to the classic strobe effect.

The flasher can be adjusted as well and correspond to the 5 classic rgb flasher.

The effects are special effect like the launch button or special flasher (like in afm, mm, bop...)

Flipper and magna mx are the same as classic rgb but for addressable.

The back pinballx mx is the effect used during the table choice in pinballx and can now be edited table by table.

 

 

Link to comment
Share on other sites

  • Content Provider

Thanks for the answers. Can you clarify the following for me. I'm still kind of new to pinball terms.

"Flipper and magna mx are the same as classic rgb but for addressable."

Is this, like lanes that are lit up and change with the flipper? (Medieval Madness,etc) I noticed some tables have an effect on the back matrix that is triggered by a flipper.

 

Two more additions to the Config Tool that would really be nice to have for the "shapes" options.

1) Be able to chose any letter of the alphabet or numbers

2) Be able to chose from a number of "custom" shapes from predetermined spots on the shapes.PNG that are set aside specifically for custom choices.

Link to comment
Share on other sites

Link to comment
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
×
  • Create New...