1. A method for communicating with one of a plurality of neurostimulation devices respectively of different models, the method comprising: caching a plurality of plug-in software drivers from a hard drive into memory, the plurality of plug-in software drivers respectively corresponding to the different models; selecting one of the plug-in software drivers from the memory; and communicating with the one neurostimulation device using the selected plug-in software driver.