Trying to understand what's going on, i've played with realterm.
First of all, if before doing anything i do a read (at poweron or after a "clr 1" - that reset the gpib device at address 1) i get
send:
rd #100,1<cr>
72 64 20 23 31 30 30 2C 31 0D
receive:
37 31 35 30 2B 20 56 41 43 2E 41 43 0D 0A * 2B 2E 30 30 30 30 33 34 30 20
20 56 20 44 43 0D 0A 2B 2E 30 30 30 30 33 34 30 20 20 56 20 44 43 0D 0A
2B 2E 30 30 30 30 33 34 30 20 20 56 20 44 43 0D 0A 2B 2E 30 30 30 30 33
34 30 20 20 56 20 44 43 0D 0A 2B 2E 30 30 30 30 33 34 30 20 20 56 20 44
43 0D 0A 2B 31 30 30 0D 0A
7150+ VAC.AC<cr><lf>
+.0000340 V DC<cr><lf>
+.0000340 V DC<cr><lf>
+.0000340 V DC<cr><lf>
+.0000340 V DC<cr><lf>
+.0000340 V DC<cr><lf>
+100<cr><lf>
Where is an * means that there was a little pause.
Here i can see that the solartron after every command send a <cr><lf>.
Maybe we can use a parameter like #gpibReadCount, eventually #gpibReadStopChar to stop the read also if the buffer isn't all received, but i've received the "end of data"? So we don't read any garbage.
It can be also seen that at the first read the meter output the model name, can this be useful?
It send the model name only if i not send anything before.
If for example i send an M? for asking the actual mode, it return the mode followed by cr lf
Other thing that can be noticed is that at the end of the 100byte buffer the gpib interface send the total bytes received, followed by <cr><lf>
Maybe this can be useful?