jarr3 Posted April 20, 2025 Posted April 20, 2025 I came with a proposal to the DOF Admin @mberneis of the new config tool to allow Templates inside it. The templates we are thinking of look like this: https://docs.google.com/spreadsheets/d/147a6mgPNB7aDsxOsWAWyZTTwRdtyu9-Rym2uQ31jaq0/edit?gid=0#gid=0 The sheet contains working and templates which might be possible in the future... it should be possible to reference from one toy to another using a special syntax. I am specifically thinking of many of the Config entries which actually do the same thing: Fire Button W16 Blink fu500 fd650 Fire Button RGB W16 Blink fu500 fd650 Cyan Fire MX W16 Blink fu500 fd650 Cyan AT0 AL0 AW100 AH100 To me it should possible to at least go from RGB to MX semi automatically, normally going from RGB to MX means adding "AT0 AL0 AW100 AH100" to the RGB value. I was thinking of adding a templating system to the config tool? Fire Button W16 Blink fu500 fd650 Fire Button RGB W16 Blink fu500 fd650 Cyan Fire MX {{Fire Button RGB}} AT0 AL0 AW100 AH100 This means when adding new config entries "Fire MX" would be automatically filled from the "Fire Button RGB", the "Magnasave Left MX" from "RGB Left Magnasave" and so on. Reason for doing this? Well, looking at the config's you will see a lot of MX entries are missing and manually going through them in the WEB GUI you get sort of bored. Rather I would "fix" it in the backend...
jarr3 Posted April 20, 2025 Author Posted April 20, 2025 (edited) When the template feature is activated, you can see the new menu item: And when you press it, you can now add your own templates: When you mark one or more template, you can export and delete them. I have included the templates above in a file here: config_templates_examples.json Edited May 2, 2025 by jarr3
jarr3 Posted April 20, 2025 Author Posted April 20, 2025 (edited) Here are the examples from above with their activated templates: Start MX: {{Start Button}} Red RGB Fire Button {{Fire Button}} White Fire MX {{RGB Fire Button}} AT0 AL0 AW100 AH100 RGB Flippers ON White Flipper Button MX {{RGB Flippers}} AT0 AL0 AW100 AH100 RGB Undercab Complex MX {{RGB Undercab Complex}} AT0 AL0 AW100 AH100 Magnasave Left MX {{RGB Left Magnasave}} AT0 AL0 AW100 AH100 Magnasave Right MX {{RGB Right Magnasave}} AT0 AL0 AW100 AH100 PF Back Beacon MX S15 Red AT0 AH100 AL0 AW100 ASDR ASS200 BLINK 490 BPW15 F100 Among these examples, there are different kinds of templates: Adding color to the non color configurations (only if not already set): Start MX, RGB Fire Button, RGB Flippers -> RGB Flippers having Template Variables not empty unchecked. This because it isn't derived, rather it is hardcoded, if the RGB Flippers isn't set. Add MX settings to derived RGB configurations (only if not already set): Fire MX, Flipper Button MX, RGB Undercab Complex MX, Magnasave Left MX, Magnasave Right MX -> All MX configurations which are not already set derive their trigger from the RGB counterpart. Personal definition of Beacon MX configuration only active for one table: PF Back Beacon MX -> In my cabinet, I have a MX led strip which is put into a round container, so this simulates a beacon hardcoded for one table. And since there is no modded configurations, any updates coming is still available to me Edited May 2, 2025 by jarr3
jarr3 Posted April 20, 2025 Author Posted April 20, 2025 (edited) The DOF Configurations contain "Trigger" + "Color" + "Additional settings" A led only need the trigger A RGB led need trigger + color A MX led need trigger + color + additional settings (like animations) Edited May 9, 2025 by jarr3
Abhcoide Posted June 25, 2025 Posted June 25, 2025 I think this is a really cool idea in circumstances where the fields are not already set. This really would save a lot of hassle and be beneficial for future toys.
jarr3 Posted July 2, 2025 Author Posted July 2, 2025 I am working with MJR (The Mr VPIN Bible author) on his DOF fork, to make our templates work even better. I intend to write what has changed as soon as he adds a new release.
jarr3 Posted July 7, 2025 Author Posted July 7, 2025 My change is merged, but there is no new version available. I guess there will be one when more changes are coming. My change is about the DOF Configurations. If you have a configuration like this "ON" it means that the led is just turned on. If I want to turn this non MX led into a MX led using the template feature, I need to add a color + "AT0 AL0" to the string, so that DOF understand it: "ON Red AT0 AL0", will now turn the MX led on in red. But when the led is definded as "ON Blink", the current DOF release does not like a color to be appended to the string, rather it only understand colors in position 2. My change is that it now doesn't matter in which position a color comes. So in the upcoming version "ON Blink Red AT0 AL0" will become a valid configuration. Even something like "ON Blink Blue Red AT0 AL0" will be possible -> it means we force a color change from Blue to Red...
clemon79 Posted August 29, 2025 Posted August 29, 2025 So what I was trying to do was to convert a Beacon into an ARGB event so I could have more control over the width than I am provided by just using PF Back Beacon MX. In this case I think I need to assign a color ("White") as well as the set of ARGB arguments for the light strip (so like "AL0 AT0 AW15 AH100" and "AL85 AT0 AW15 AH100" to have it at the outer 15% of the strip. Didn't expect it to work, and it didn't. Is there a way to make this happen that doesn't involve having to constantly update something?
jarr3 Posted August 29, 2025 Author Posted August 29, 2025 3 hours ago, clemon79 said: So what I was trying to do was to convert a Beacon into an ARGB event so I could have more control over the width than I am provided by just using PF Back Beacon MX. In this case I think I need to assign a color ("White") as well as the set of ARGB arguments for the light strip (so like "AL0 AT0 AW15 AH100" and "AL85 AT0 AW15 AH100" to have it at the outer 15% of the strip. Didn't expect it to work, and it didn't. Is there a way to make this happen that doesn't involve having to constantly update something? If I understand you correctly, it should work with the next dof release where it doesn't matter where the color is placed in the string.
clemon79 Posted August 29, 2025 Posted August 29, 2025 16 hours ago, jarr3 said: If I understand you correctly, it should work with the next dof release where it doesn't matter where the color is placed in the string. I think you are. For example, here's the Strobe code for 24: S2 300/S3 300/S24 300/W14 500 10/W58 500 10 So if my template is {{ Strobe }} White AL0 AT0 AW15 AH100 / {{ Strobe }} White AL85 AT0 AW15 AH100 then what it's returning is S2 300 White AL0 AT0 AW15 AH100 / S2 300 White AL85 AT0 AW15 AH100 / S3.... ...which right now doesn't work because the color MUST be in position 2 right after the event code, and the template system isn't savvy enough to parse that out and put it there, but with the next DOF revision location won't matter and it'll work. And I believe I HAVE to have a color there of some kind or else it won't work either, I'm not lucky enough for White to be a default. Any idea of the timeframe for the next DOF release? (I can be patient, just curiosity.)
jarr3 Posted August 30, 2025 Author Posted August 30, 2025 Sorry, currently no timeframe, as the repository looks today it is all manual. I intend to work on getting it also auto build on each push. It will take some time though.
jarr3 Posted September 14, 2025 Author Posted September 14, 2025 On 8/30/2025 at 4:28 PM, jarr3 said: Sorry, currently no timeframe, as the repository looks today it is all manual. I intend to work on getting it also auto build on each push. It will take some time though. But if you use a dudes cab, and install the latest DLL from there, you will have the new features already now...
clemon79 Posted September 25, 2025 Posted September 25, 2025 On 9/14/2025 at 12:03 PM, jarr3 said: But if you use a dudes cab, and install the latest DLL from there, you will have the new features already now... Sadly I do not, I'm on a CSD Pinscape board (although for LED strips it's a Teensy with a WS2811), but it's really a pretty minor thing and I'm sure my patience will be rewarded eventually.
ejvfx Posted September 25, 2025 Posted September 25, 2025 This seems like a handy feature. Since it's beta, are we saying it should work at all currently or not? Is the idea that if a template is active it automatically applies upon generate config? I can't get mine to do anything. Feature request-wise, it would be cool if whatever fields are impacted by a template were displayed in the user config on the table configs page (perhaps with a different highlight color to indicate it's from a template?)
jarr3 Posted September 28, 2025 Author Posted September 28, 2025 On 9/25/2025 at 11:24 PM, ejvfx said: This seems like a handy feature. Since it's beta, are we saying it should work at all currently or not? Is the idea that if a template is active it automatically applies upon generate config? I can't get mine to do anything. Feature request-wise, it would be cool if whatever fields are impacted by a template were displayed in the user config on the table configs page (perhaps with a different highlight color to indicate it's from a template?) Yes, it does work. But it is a pure text replacement feature meaning you the template author has to make sure the outcome stays within the boundaries. One place where it is a little shaky, is where DOF says a color has to be in second place of the table string, otherwise it will throw an error for that one toy. DOF is already updated, but I have to make the automated builds going for this new feature to be included. If you use a Arnoz Dude's board with latest firmware, the change is already included.
jarr3 Posted September 28, 2025 Author Posted September 28, 2025 On 9/25/2025 at 9:11 PM, clemon79 said: Sadly I do not, I'm on a CSD Pinscape board (although for LED strips it's a Teensy with a WS2811), but it's really a pretty minor thing and I'm sure my patience will be rewarded eventually. You can actually install the dude configurator, to get access to the latest DOF files while you wait for it.
Rappelbox Posted September 28, 2025 Posted September 28, 2025 2 hours ago, jarr3 said: You can actually install the dude configurator, to get access to the latest DOF files while you wait for it. i'd like to have a look at the source code for that dof version... where can i find it? Not interested in the configurator
jarr3 Posted September 28, 2025 Author Posted September 28, 2025 3 minutes ago, Rappelbox said: i'd like to have a look at the source code for that dof version... where can i find it? Not interested in the configurator It's in the official repo https://github.com/DirectOutput/DirectOutput/commits/master/
clemon79 Posted September 29, 2025 Posted September 29, 2025 On 9/28/2025 at 12:11 AM, jarr3 said: You can actually install the dude configurator, to get access to the latest DOF files while you wait for it. Oh, I think I see. The DOF installer link in the corner of Dude's is for the updated version, where color position doesn't matter, so if I use that to upgrade my current DOF (always make a backup) then I should be able to give this a shot?
jarr3 Posted September 29, 2025 Author Posted September 29, 2025 1 hour ago, clemon79 said: Oh, I think I see. The DOF installer link in the corner of Dude's is for the updated version, where color position doesn't matter, so if I use that to upgrade my current DOF (always make a backup) then I should be able to give this a shot? You are 100% right. It includes the latest Dude's drivers but also all the rest plus the color change I did.
jarr3 Posted October 1, 2025 Author Posted October 1, 2025 (edited) I have now pushed a Github action workflow to the offiicial DirectOutput repo. From now on, each commit will get it's own build created. @clemon79 if you want, you can test the new feature directly from here https://github.com/DirectOutput/DirectOutput/actions I checked the files and the installer includes the right files but does not seem to install them. Will do another check tonight after work Edited October 1, 2025 by jarr3
clemon79 Posted February 1 Posted February 1 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?
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