jarr3 Posted February 1 Author Posted February 1 7 hours ago, clemon79 said: Okay, so now that we've all moved to the new DOF version with caching and it doesn't matter where the color lands in the string anymore, I'm trying to make the new template work above for translating analog strobe commands to an addressable LED bar. As a reminder, here's my template: {{ Strobe }} White AL0 AT0 AW15 AH100 / {{ Strobe }} White AL85 AT0 AW15 AH100 This works great for the left half (the AL0... part) and does nothing for the right half (the AL85... part). If I divide that up into separate Custom Outputs, as in: Custon Output 6: {{ Strobe }} White AL0 AT0 AW15 AH100 Custom Output 7: {{ Strobe }} White AL85 AT0 AW15 AH100 and recombine them together in the Custom RGB template: Custom RGB 2: {{ Custom Output 1 }} / {{ Custom Output 2 }} / {{ Custom Output 3 }} / {{ Custom Output 4 }} / {{ Custom Output 5 }} / {{ Custom Output 6 }} / {{ Custom Output 7 }} / {{ PF Back Beacon MX }} ...same issue. I can't think of any reason this SHOULDN'T be working. Basically I want the left and right 15% of the bar to act as my strobe. Any ideas? What happens with the config files once you generate them? Does it look ok then? And is there any information in the DOF log file? Does it tell that something cannot be parsed?
clemon79 Posted February 1 Posted February 1 (edited) 5 hours ago, jarr3 said: What happens with the config files once you generate them? Does it look ok then? And is there any information in the DOF log file? Does it tell that something cannot be parsed? This is after I generate them; the left LED strobe is the proper width (I still have the strobe circles flashing on my matrix so I know when they are firing), but the right one doesn't appear at all. Remind me how and where to check the DOF log file and I will have a look. EDIT (gah, I thought I saved this easier): I found the log. It has absolutely no issues. All of this is after I generate config files, which generate completely without issue. Log is attached in case I'm wrong; there's no PII in it that I can see. DirectOutput.log Edited February 1 by clemon79
jarr3 Posted February 2 Author Posted February 2 ok, then try checking the line for mm_109c in the config. When you open the config, it is "almost" excel compatible. which means you should see the toy name has a header line and the configurations below. Only problem is that the RGB and MX toys is saved as three columns sometimes... so it isn't that easy to read. I want to know if your toy config now look correct.
clemon79 Posted February 3 Posted February 3 17 hours ago, jarr3 said: I want to know if your toy config now look correct. As in, you changed something and I should regenerate them? I'll regenerate and have a look.
clemon79 Posted February 3 Posted February 3 Okay, checked. The DOF tool is not generating the {{ Strobe }} White AL85 AT0 AW15 AH100 half of the command, and it doesn't appear to matter if I'm including it in its own slot or if I'm generating both the left and right commands together with a slash in between. The takeaway from that is that Custom Effect 6 *is* getting picked up from the templates and *is* making it into Custom RGB 3. It just *isn't* getting processed. I'm wondering at this point if there is an upper limit on how many effects can be combined into a single template command, and if that limit is six, because if I reorder things so that the AL85 command comes first, then it gets processed and the other one does not. So maybe I need to process these two separately in the templates and then build them into a combo effect.
clemon79 Posted February 3 Posted February 3 Hmmm, no. If I divide up Custom RGB 1 as the five Flasher Bar "lamps", and then Custom RGB 2 as the two-part left/right Strobe command plus MX Back Beacon, and then build an RGB Combo effect with just those two, it still doesn't generate the second half of the Strobe. (And Back Beacon MX is unused in MM so that doesn't get produced at all, of course.) Looking at the Google sheet on templates, the other possibility is that I am coding this completely wrong because there is no reference to this use case, where a toy gets converted twice. Maybe it just takes the first submitted conversion and throws the rest out? The problem there is that there is no good written documentation (that I know of...someone PLEASE correct me if I am wrong) on the syntax of writing DOF commands in the DOF tool. (I simply do not learn well from YouTube videos. I need to read something. Seriously. Something like this needs to be documented.) There's a pipe command for sending the same command for multiple triggers; is there a pipe command for multiple actions for the same trigger? Would something like S1 300 AL0 AT0 AW15 AH100 | AL85 AT0 AW15 AH100 in the form of {{Strobe}} AL0 AT0 AW15 AH100 | AL85 AT0 AW15 AH100 walk if I wanted to simultaneously light the first and last 15% of a strip?
clemon79 Posted February 4 Posted February 4 And would any part of a command not rendering have anything to do with either the "Replace only if field empty" or "Replace only if all template vars are not empty" flags? I do notice, looking at the Google spreadsheet, that this specific use case (where the same toy is referenced twice in a template) isn't specifically addressed, but in line 3 it does imply that it processes the first half (since the trigger is unique) and ignores the second one, which seems like it's killing this exact situation where you need to assign multiple actions because that's how it works with the digital version of an analog toy. The RGB Fire Button example is fine with amending settings, but I don't think the template system has taken into account the potential to need to amend them twice, separately.
clemon79 Posted February 4 Posted February 4 1 hour ago, clemon79 said: I do notice, looking at the Google spreadsheet, that this specific use case (where the same toy is referenced twice in a template) isn't specifically addressed, but in line 3 it does imply that it processes the first half (since the trigger is unique) and ignores the second one, which seems like it's killing this exact situation where you need to assign multiple actions because that's how it works with the digital version of an analog toy. The RGB Fire Button example is fine with amending settings, but I don't think the template system has taken into account the potential to need to amend them twice, separately. This was exactly the problem. I proved it by taking it out of the templating system's hands. Since I'm already splitting this whole set up into two groups (one for the 5 Flasher Bar, one for the two-part strobe and PF Back Beacon MX) it occurred to me that as long as I don't ask the template system to resolve the left and right strobe in one template (at any point), then Combine Toys should take care of of it. So I put the 5 Flasher Bar and the left strobe command in one group, and the right strobe command and beacon in the other, and then let the combination toy handle smashing them together. This finally worked. That said, there's really no reason what I was trying to do *shouldn't* have worked, so I would encourage looking at that scenario (appending twice to the same toy) and maybe letting it through if the append is specifically LED strip or matrix data.
jarr3 Posted February 4 Author Posted February 4 10 hours ago, clemon79 said: This was exactly the problem. I proved it by taking it out of the templating system's hands. Since I'm already splitting this whole set up into two groups (one for the 5 Flasher Bar, one for the two-part strobe and PF Back Beacon MX) it occurred to me that as long as I don't ask the template system to resolve the left and right strobe in one template (at any point), then Combine Toys should take care of of it. So I put the 5 Flasher Bar and the left strobe command in one group, and the right strobe command and beacon in the other, and then let the combination toy handle smashing them together. This finally worked. That said, there's really no reason what I was trying to do *shouldn't* have worked, so I would encourage looking at that scenario (appending twice to the same toy) and maybe letting it through if the append is specifically LED strip or matrix data. I now see what you are saying. We should check that with @mberneis if he can make it work. @clemon79 fill in, if I missed something here. you have a template: {{ Strobe }} White AL0 AT0 AW15 AH100 / {{ Strobe }} White AL85 AT0 AW15 AH100 And it only replaces the {{ Strobe }} in the left part, meaning the {{ Strobe }} as text (in the right part) comes out in the generated file. And you want it to be replaced as many times as they are in the template.
clemon79 Posted February 4 Posted February 4 (edited) Very close. Nothing past the slash comes out at all. It's like it's being intentionally pruned as a second firing of the same trigger. Which it is, but in this case it's warranted. If, as in the Google sheet, you tried to assign "Blue" to something in one place and "Red" in another, yeah, that's gonna be redundant. But when it's an AL AT AW AH sequence, that isn't necessarily redundant at all. But yes, for each trigger (and duration and whatever that third occasional argument is) if it's in the template more than once, it should render both commands. Edited February 4 by clemon79
jedimasta Posted April 7 Posted April 7 Question about templates and when they are applied. I'm not completely wrapping my head around Toy Assignment not empty and Template Variables not empty. So for example - I have a Start MX button (Arcade button with a single addressable LED in it). If the public table has a Start Button effect applied, then naturally I want to use {{Start Button}}... in the template. BUT, if it's blank, I want to use my own def - ON Blue AT0 AW0. Do I need to create two templates for the Start MX toy with different flagged options, or does a single template do this already based on the switches in the config (the two replace only options)?
jarr3 Posted April 8 Author Posted April 8 6 hours ago, jedimasta said: Question about templates and when they are applied. I'm not completely wrapping my head around Toy Assignment not empty and Template Variables not empty. So for example - I have a Start MX button (Arcade button with a single addressable LED in it). If the public table has a Start Button effect applied, then naturally I want to use {{Start Button}}... in the template. BUT, if it's blank, I want to use my own def - ON Blue AT0 AW0. Do I need to create two templates for the Start MX toy with different flagged options, or does a single template do this already based on the switches in the config (the two replace only options)? This is exactly what you use templates for. But start with the "Start Button" (there is no RGB for it) This will set it to "ON" in case there is nothing in the Config tool So now your start button should always shine red
jedimasta Posted April 8 Posted April 8 Aaaah okay. I see now. The name in braces isn't specifically referencing the toy in each table's config, but rather it's calling back to another template. Many thanks!
woedge01 Posted April 30 Posted April 30 I'm not sure if I'm right in this chat. But maybe you can help. In my cabinet the colours green and red are swapped at my LEDWiz. port 18: green port 19 :red prt20: blue So if I'm using now RGB Cabinet in my configuration, the colours are shown incorrect for red and green. Can this problem be solved by creating a template? And if so how should this look like? Sorry, I'm really a beginner. So maybe my questions are stupid. Thanks for all the help in advance.
digitalarts Posted April 30 Posted April 30 In your cabinet.xml, you can add/modify this Line to the [...toy] sections <ColorOrder>GRB</ColorOrder>
woedge01 Posted April 30 Posted April 30 1 hour ago, digitalarts said: In your cabinet.xml, you can add/modify this Line to the [...toy] sections <ColorOrder>GRB</ColorOrder> Thanks for the help. Where can I find the cabinet.xml file ? Could it be that it does not exist for my cabinet?
ejvfx Posted April 30 Posted April 30 1 hour ago, woedge01 said: Thanks for the help. Where can I find the cabinet.xml file ? Could it be that it does not exist for my cabinet? I believe the Cabinet.xml file has been removed from the critical path of DOF. I often see this file referred to in tutorials but the file isn't created by the Online DOF Config 3.0. Maybe someone can clarify where we're supposed to get that file in the current online workflow.
ejvfx Posted April 30 Posted April 30 11 hours ago, woedge01 said: I'm not sure if I'm right in this chat. But maybe you can help. In my cabinet the colours green and red are swapped at my LEDWiz. port 18: green port 19 :red prt20: blue So if I'm using now RGB Cabinet in my configuration, the colours are shown incorrect for red and green. Can this problem be solved by creating a template? And if so how should this look like? Sorry, I'm really a beginner. So maybe my questions are stupid. Thanks for all the help in advance. The DOF Config tool 3.0 wants RGB toys in the R-G-B order. When I ran into this, I rewired the ports at the LEDWiz. Just switch the port 18 & port 19 wires. At least that's how I resolved a similar issue.
digitalarts Posted April 30 Posted April 30 Take a Look Here: https://pinball-docs.clevelandsoftwaredesign.com/docs/AddressableLED/cabinetGenerator/
jarr3 Posted May 1 Author Posted May 1 And here is the official documentation site https://directoutput.github.io/DirectOutput/configexamples.html
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now