2 Button Volume Control

Hey everyone! I used all of my luck for the rest of the year and acquired a Proffie V2.2 Neopixel Saber for 9 dollars (sans blade - but that is ordered), but when updating and installing ProffieOS 7, I didn’t think to make a copy of the Config file that was already on the board - unfortunately the SD Card did not have a copy (which stinks because it had some good fonts with it). However, thanks to some helpful people on Reddit, I was able to get a solid config put together except for 1 thing - I lost the ability to control the volume with the buttons. I have looked everywhere and cannot find it and following how to access the volume menu does not seem to be working for me.

Here is a pastebin of my config file (sans blade styles):

I appreciate all the help and would greatly appreciate any tips and tricks!

Read the Set Up Instructions and Controls for my prop.

So if I am understanding correctly, I just need to add the following to my config file and the volume menu should be enabled:

#define ENABLE_ALL_EDIT_OPTIONS
#define FETT263_EDIT_MODE_MENU
#define DISABLE_BASIC_PARSER_STYLES

Thank you again for the help.

If you want Edit Mode, yes.

If you want just the Volume Menu then you need to add the Voice Prompts in “common” per the Set Up Instructions and read the controls for Volume Menu.

So how did this use to work? What buttons did you use to control the volume? Was it a menu of some sort, or was it just “volume up button” and “volume down button” ?

OS5 used talkie and buttons, OS6 and later uses Voice Prompts and menu, it’s one of the reasons the Voice Prompts and common folder are required in my prop. Without it users don’t realize they are in the menu and they aren’t reading the controls.

It originally worked with holding Aux button until it beeped then I could use Aux to decrease and Power button to increase volume.

That’s either sa22c’s prop or mine in OS5. You need the Voice Prompts to be set up, then use the controls per above link.

Okie dokie! I think I have set that up correctly now - but now I am getting an error with my config file (but pretty sure that is completely on me) after adding soundfonts - posted to Reddit and the FB group to hopefully get it fixed! I am really in over my head but happy to get the learning experience!

You can post your config and the error here and we can take a look, (it’s kinda what we do) :wink:
Just use pastebin.com and post the full config and full error message and we can have a look for you.

For sure! I appreciate it! I am pretty sure that my issue is that I am trying to put too much onto it (hard to not want to have a bunch of different styles on there!). Here is the error I am getting and here is my config. I appreciate all of the help from you guys!

Yup, that’s what this means:

region `FLASH' overflowed by 23960 bytes

Looking at the config you’re wasting a lot of memory because you’re mixing a lot of syntax versions and really old styles. If you’re really wanting to fit a lot more on your board I’d recommend rebuilding your styles in my library, it will ensure everything is optimized and in the same syntax. When you mix syntaxes it uses up a lot more memory than if you have a consistent syntax version throughout the config.

Furthermore, if you use the Config Helper Tool along with the library it also allows for even more optimization and handles syntax for you. Just watch the video at the top and read the instructions provided throughout the page. Then go through all of the selections and build your presets. The tool will then generate a complete config as well as custom documentation such as Button/Controls based on the selections you made. You can probably double the number of presets (or more) if you build it efficiently.

I think, I have got a better understanding of it now - I can use the Using Function to have a bulk of the info then using the presets that coincide with the correct using function, that should save space.

I got halfway through doing the Greyscale ones and forgot to adjust the preon settings and all of that so thats fun haha. Hopefully can get this worked out completely - just need to take the time!

The benefit of the Using functions is for styles that you want to use in multiple presets, you can certainly use them in every preset but the memory savings comes from using them across multiple presets. This is most applicable when “Option” styles are built as you can have a single style with multiple “Options” and then use them in multiple presets with different options enabled to create many unique styles from a single style code or using functions. An “Option” style will save memory compared to building individual styles for the same purposes and often you can build out Option Styles with more unique combinations than you could individual styles.

The library will allow you to build many different “Options” into a style, combined with the Style Arguments this allows for 100s or 1000s of unique presets to technically be generated from a single style,

Gotcha - so the following would probably still give me the FlashMemory error:

I am mainly wanting to have it where I can switch the font/blade style with the aux button between all of the different GS fonts and then add in the already existing ones.

If they’re the versions the library generates they have significant optimization over the originals from Greyscale, if you need to fit more you can build out an Option Version as I demoed in the video at the top of the config tool.

I would just Verify in Arduino, it will tell you if it fits or not.

So I tried using the Config Helper and then only put one preset on the config to test if it would work and the volume menu would work for me. Now I have a whole new string of errors :melting_face:

Config:

Errors:

Eventually a wall has to come down once you throw yourself at it enough I suppose. All for the updated Greyscale fonts haha

You didn’t enter the complete BladeConfig section from your original prop. See the example below the input box for exactly what needs to be entered. The tool cannot verify BladeConfig info so it needs to be put in correctly.

It should begin with

BladeConfig blades[] = {

and end with

};

Welp, that fixed that. When verifying that config through Arduino, it tells me that it is 70% of program storage space - I would not imagine that is normal for 1 font. Unless it is an I’m just crazy.

I seriously appreciate all the help you’ve give me and all the time spent trying to help me troubleshoot! This community really is awesome and welcoming!

Nope, that’s correct. The barebones OS (depending on prop and features) is around 67 ~ 69% of memory.

You’re welcome, it is a great community and once you’ve done a couple of uploads successfully you’ll be able to help others as well. Pretty much all of us, except for profezzorn, started off knowing nothing about Proffieboard but as we learn we pass along the knowledge to others and help each other out.