Quick follow-up and initial notes regarding the driver:
This driver is designed to be used with the Generic preset (#25). I believe that #24 may be identical, but I am not 100% sure. . I believe that they are largely identical. I initially started out using preset 1, which is named LiveLite. It seemed a little cleaner for certain purposes, such as the knob and fader mapping. However, when I started working on the pads, it became clear quickly that the way that the LiveLite preset handled the pads was going to be way harder to work with than the way that the generic preset did.
I did my best to make sure that the driver would work with a preset in the default state. However, I got stuck on the Loop button. The Generic preset defaults to MMC/MIDI for the transport buttons (which is how it classifies the Loop button) and it seems not to emit any signal that I could pick up. For that reason, I changed the preset to use MIDI CC for transport buttons. The driver itself will handle the signals either way. So, someone using the driver without adjusting their preset will have full use of all buttons EXCEPT the loop button. It felt like the best compromise to me.
I did what I assume are standard things, mapping the faders and knobs on Control Bank A to the first 7 chains and master channel volumes and balance (though I honestly don’t think I’ll ever use balance IRL in this context). I used Control Bank B knobs to control the Sends and Return on a Reverb chain (which the user has to create, of course). I set the toggle buttons on Control Bank A to mutes, solos on B, On B, I mapped the 8th button to a fade out, since I don’t need a solo for the master chain (and I’ve always wanted a button for that to use live). 
The loop button will initially take you to the ZynPad screen. If you are already on the ZynPad screen, it will take you into the selected loop.
Stop, Play and Record should behave as you would expect them to (though how do I know what you expect).
I decided that I would map the rewind button to clear the current loop, and the fast-forward button to duplicate the loop pattern to the next channel.
The drum pads are addressed in an 8x8 grid, so that I can address up to 8 loop slots on 8 chains. I think it probably makes sense to have buttons mapped to the Main loop button for each row, since I would think it would be used heavily. However, I was having a very hard time coming up with a logical way to do that with only a 4x4 grid to work from. I could do the first 3 chains and the main buttons on Banks A and B, leaving chains 4-7 for Banks C & D. That would make them the most accessible, and it aught to work great for a simple loop with no more than 3 chains. But, as soon as you get to a 4th chain in the loop, it would start being a negative. Thoughts are welcome on how this aught to behave.
I’m still trying to think of ideas for how to logically use the faders on Banks B and C, and the knobs and buttons on C. So, I’d love some input from MPK249 users, other driver developers and anyone who’s done enough looping to have had way more thoughts than I’ve had.
I hope that this driver enables others to have as much fun as I am having with it, but it is still a work in progress.