I've just been updating the project details to reflect my change of plan towards multiple sound modules firnthis project.
Following this decision I have realised it has opened up the possibility of more feature in the software.
The first is individual mapping for the pads: rather than dictating a sound bank number across all of lads i could allow the user to assign different numbers to each pad. I could also allow the player to edit the routing of the pads, and chose which DFplayer module is triggered by the pad.
In order to achieve this I am going to create an array for each analog pin which will be saved to EEPROM. The pad will have the analog pin number, the dfplayer's tx pin number, file number.
I can add to the screen menu to allow the encoder button to cycle through the pads when clicked, and pressing and holding would enter 'edit mode'. I'd also like to write a function to allow for updating of the settings via serial, so I can write a companion python app with a GUI for easy editing.
If anyone has any good examples or experience with arrays and EEPROM stiff please leave a comment :)