"Modded" encoders are standard incremental encoders with two extra button numbers available by holding the modButton. Lets say your encoders produces button numbers 14 and 15 on CW and CCW rotation. Holding the modButton will change the numbers to 16 and 17.
This is just free extra buttons, which could be useful for settings/adjustments that you don't do that often. You could have a rotary with brake balance adjustment, and ABS adjustment when holding modButton. Or a rotary to control your dash pages, and change dash template on holding modButton.
If you have a backlit encoder, you could use the triggerLED() function to change colors when holding modbutton:
The first line will color the LEDs 9 to 12 red (0xFF0000) if modButton is not pressed. The second line will color LEDs 9 to 12 green (0x00FF00) if modButton is pressed. Brightness is set to 25% on both, clearing LEDs is set to TRUE and blinking is set to FALSE.
void rotary2Mod(int row, int column, bool reverse)
Lets say our encoder is on row 3, columns 2+3,
rotary2Mod(3,2,false);
The button numbers used is determined by the number written in the block for the A pin. B pin block will not be read. If button number was set to 15, the switch will use buttons 15 and 16 when modButton is NOT pressed, and then 17+18 if the modButton is pressed. The reverse part of the function will switch the button numbers if set to true.
void rotary4Mod(int row, int column, bool reverse)
Lets say our encoder is on row 3, columns 2+3,
rotary4Mod(3,2,false);
The button numbers used is determined by the number written in the block for the A pin. B pin block will not be read. If button number was set to 15, the switch will use buttons 15 and 16 when modButton is NOT pressed, and then 17+18 if the modButton is pressed. The reverse part of the function will switch the button numbers if set to true.
The button numbers used is determined by the number written in the block for the A pin. B pin block will not be read. If button number was set to 15, the switch will use buttons 15 and 16 when modButton is NOT pressed, and then 17+18 if the modButton is pressed. The reverse part of the function will switch the button numbers if set to true.
4 button numbers
modButton
funkyRotaryMod()
Modded encoder in the funkyRotary category. This is for using a regular pushbutton to change layer, not the funky pushbutton.
void funkyRotaryMod(int row, int aCol, int bCol, bool reverse)
Lets say our encoder is on row 3, columns 2+3,
funkyRotaryMod(3,2,3,false);
The button numbers used is determined by the number written in the block for the A pin. B pin block will not be read. If button number was set to 15, the switch will use buttons 15 and 16 when modButton is NOT pressed, and then 17+18 if the modButton is pressed. The reverse part of the function will switch the button numbers if set to true.