Simulated training data was generated using COMSOL Multiphysics 5.4 with the Electrochemistry module (Supplemental Note SN1). All simulations were of the EC' mechanism (Scheme 1), with varied kinetics, potential windows, diffusion-coefficients, n-values, and initial species concentrations. Parameters were generated randomly in Python (Figure ). COMSOL simulations were executed through Python, using the MPh Python library (1.1.5) to interface with COMSOL. A total of 25,089 simulated CVs were generated, along with the corresponding baseline CVs in the absence of substrate. The error-based descriptor was calculated for all CVs (equation 6). The data was down sampled via interpolation to 400 points, ensuring uniform timesteps. Noise, capacitance, and tailing representative of solvent breakdown were added to all simulations using Python (Figure ). The current values of the CVs were normalized and unfolded, and the resulting 400-element vector (Figure ) was used to train the neural network model.