Controlling multiple CereStims is done by creating more than one stimulator object in the workspace, by running the command cerestim96() multiple times:
stim1 = cerestim96();
stim2 = cerestim96();
From here, commands will be issued to the two objects separately. While it isn’t exactly simultaneous, this method is much faster than Stim Manager, which would require manually disconnecting/reconnecting whenever commands need to be sent to a different CereStim.
The next step is to verify that the CereStims are connected. This is done with a single line:
Next is assigning each stim object an actual CereStim. This step is going to diverge from the manual’s explanation, as the .selectDevice() command takes an index value starting from zero as it’s input (not serial numbers like the manual says, this will be corrected in official documentation later). Delineating which object points to each CereStim will look like this:
stim2.selectDevice(1);
Now that the MATLAB objects have been correlated to physical devices, commands can be issued to the CereStims. Below is a short piece of code that will connect to each device and output its identification info to a variable:

stim1.connect
x = stim1.deviceInfo()
stim1.disconnect
% Connects to stim1, outputs it's device information, then disconnects
stim2.connect
y = stim2.deviceInfo()
stim2.disconnect
% Connects to stim2, outputs it's device information, then disconnects
To verify that both stimulators can be connected at the same time, the below code executes the same commands, but with a shuffled order to connect to both simultaneously.

stim1.connect
stim2.connect
a = stim1.deviceInfo()
b = stim2.deviceInfo()
stim1.disconnect
stim2.disconnect
The code demonstrated above should allow control of multiple CereStims from the same PC. More information on commands and possible applications of stimMEX can be found in the API manual here, and in this set of older example files here.