The fastest I can pull down data is about 65ms a sample. That's with S0 (4ms), filter off and internal triggering. The software is just pulling out data when it's available and stitching it together. Another process checks for a valid frame and pulls it out to be processed. The serial port only supports up to 9600 BAUD. They also have a minimum of 2 stop bits. A message is 14 bytes (using ASCII), or 14.6ms to send. I tried using asynch which brought it down to 54ms but it seems like it's slower than it should be. Maybe the binary format would improve it.
What are you able to achieve when using GPIB?
I'm still in the process of getting my GPIB setup figured out, but I should have it up here soon. (It's much more complicated than serial!)
Looking at Tables 606-1 through 606-3. The Bit Serial Interface can be set to 1 stop bit (S3 on) and no parity (J3 removed).
Assuming the remaining jumpers and switches are set to
J1 installed
J2 removed
S1 off
S2 off
S4 off
S5 on
S5 on
S7 on
the serial bus would be configured for 9600bps RS232C with 1 start bit, 7 data bits, 0 parity and 1 stop bits, for a total of 9 bits (7N1) transmitted for each char.
This implies a maximum of 1067 chars per second over the bus. Each reading from the DMM is a string of length 13. Then we have the termination chars <CR> and <LF> tacked on for a total of 15 chars per reading. This implies a maximum of 71 6.5 digit readings per second.
Using command J to suppress the <LF> termination character allows for a maximum of 76 6.5 digit readings per second.
Since ASCII data over the serial bus is so slow, changing the DMM's sampling rate to S1 or S2, would allow you to perform some averaging at the DMM without lowering the reading rate at the PC. This would indirectly get you closer to the 250 samples/s reading rate, if cheating somewhat by "compressing" more samples in to each reading.
Assuming binary data and 8N1 frame length, then 960 bytes can be transmitted per second. Each reading of the DMM is then 6 bytes. Assuming terminating chars <CR><LF> are tacked on at the end of the payload, then a maximum of 120 readings per second are possible. (Or 137 if line feed is suppressed.)
Looking at the schematic for the Bit Serial Interface circuit, it seems like it would be pretty easy to modify. The serial port and level shifters could be replaced with a TTL level RS232 to USB or Ethernet board for ease of use. Though the bus would still be limited to 9600bps and no hardware flow control. It's possible that modifying the circuit around U3 could allow for higher baud rates. Though replacing U9 with an Arduino Micro would give hardware flow control and much faster communication over the virtual COM port. This would be even faster than the stock GPIB interface.