An example of a neurostimulation system may include a storage device to store a stimulation waveform, a programming control circuit to generate a plurality of stimulation parameters controlling delivery of neurostimulation pulses according to the stimulation waveform, and waveform definition circuit configured to create and adjust the stimulation waveform. The waveform definition circuit includes a charge recovery module that may include a stimulation to receive the stimulation waveform including charge injection phases, a charge recovery scheme input to receive a charge recovery scheme, and a waveform adjuster configured to identify a need for recovering charges injected during the charge injection phases and adjust the received stimulation waveform by automatically inserting charge recovery phases into the received stimulation waveform based on the identified need for recovering the injected charges and the received charge recovery scheme.Un exemple d'un système de neurostimulation peut comprendre un dispositif de stockage pour stocker une forme d'onde de stimulation, un circuit de commande de programmation pour générer une pluralité de paramètres de stimulation commandant la distribution d'impulsions de neurostimulation en fonction de la forme d'onde de stimulation, et un circuit de définition de forme d'onde configuré pour créer et régler la forme d'onde de stimulation. Le circuit de définition de forme d'onde comprend un module de récupération de charge qui peut comprendre une stimulation pour recevoir la forme d'onde de stimulation comprenant des phases d'injection de charge, une entrée de schéma de récupération de charge pour recevoir un schéma de récupération de charge, et un dispositif de réglage de forme d'onde configuré pour identifier un besoin de récupération de charges injectées pendant les phases d'injection de charge et régler la forme d'onde de stimulation reçue par insertion automatique de phases de récupération de charge dans la forme d'onde de st