The key to being flexible with your hardware and being able to replace keyboards without having to change your songs is abstraction - making sure that the controls you use are independent of the actual hardware connected.
Unfortunately, this requires quite a bit of groundwork, both in creating the mechanisms in the background rack and in your songs, using abstracted input racks instead of using the environment ports directly.
There are a couple of detailed posts on this in this thread: Designing New Virtual Rack- best way?
I have my setup configured this way, and adding a new controller or a new keyboard is now pretty simple and just depends on how I want to map its physical controllers and their outputs to my standardized abstract controllers and buttons.
Give it a read - it may be a bit too much to change your setup to something like this in one go, but maybe some of the ideas in the approach can help you here!
Cheers,
Torsten