Author Topic: HP 3421A CAL RAM  (Read 4571 times)

0 Members and 1 Guest are viewing this topic.

Offline dfredericksonTopic starter

  • Contributor
  • Posts: 13
  • Country: us
HP 3421A CAL RAM
« on: March 30, 2017, 04:16:51 pm »
I have an HP 3421A with a CAL RAM checksum error.  I've replaced the CAL RAM battery per this procedure:
https://www.eevblog.com/forum/repair/owon-100mhz-sds7102v-repair/?prev_next=prev#new

Now I need to write new calibration factors to the CAL RAM to clear the error.

In the Feb 83 issue of the HP Journal in the article on the 3421A, under Advanced Instruction Set on p.15 it lists:

CAL Calibration RAM (1 if read, 2 if write)

It also states:
The calibration constants can also be read or written to by an HP-IL controller through the instrument's I/O interface.

This could be interesting, but this is the only reference to this command I can find.

If the method for doing so can be determined then it might be possible to clear a CAL RAM error without a costly calibration service.  The best I've been able to figure out is that issuing the CAL write with the CAL Enable switch off generates an error.  With the switch on no error occurs.  Any attempt to read data just gives the reading from the front terminals.

It does say "by an HP-IL controller" so maybe it requires low-level commands.  Anybody know how to do this?

The HP 3468 seems to accept this command as well.

Thanks, Dave
 

Offline Le_Bassiste

  • Frequent Contributor
  • **
  • Posts: 293
  • Country: de
Re: HP 3421A CAL RAM
« Reply #1 on: April 02, 2017, 02:22:26 pm »
An assertion ending with a question mark is a brain fart.
 

Offline dfredericksonTopic starter

  • Contributor
  • Posts: 13
  • Country: us
Re: HP 3421A CAL RAM
« Reply #2 on: April 02, 2017, 03:59:42 pm »
I saw that thread.

I'm also looking into the same CAL RAM issue with my 3468, which is similar to the 3478.  Though it's not in the manuals, the commands are on the 3468's bottom label.

B2  BINARY CAL CONSTANT OUT
B3  BINARY CAL CONSTANT IN

The data needs to be read as a string.  Here's the 255 character cal data from my 3468.
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@


So maybe the 3421A's cal data needs to be read as a string.  Sure enough.

Here's the 256 character cal data from the 3421 with a CAL RAM error.
JJ@@@@A@LA@@@@EM
JIIIIIIAA@@@@O@C
MMJIIII@@@@EOLOM
@@@@@AA@@@@ENDGK
@@@@@@A@@@@@OAGO
@@@@@@@@@@@@@@@@
@@@@F@@@@@CBIAOI
@@@@@FA@@@CBI@GK
@@@@@@D@@@@@ODGO
@@@@@@@@@@@@O@OO
IIIIIIH@@@@@OHGO
@@@@@@@@@@@@O@OO
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@


And here's the cal data from a 3421 with valid data.
O@@@@@@@@@@@@@@@
IIIIIHHOMCADNCED
IIIIIIIOMDMBOOLC
@@@@@AAONADDNNDG
@@@@@@AONB@OOBDL
@@@CEDE@AMLDMNLO
IIIIIIA@@EMLOJGG
IIIIIII@AKAOOBLD
IIIIIII@ALNAODM@
IIIIIII@ALMCOEMG
IIIIIII@AKDOOGLD
IIIIIII@@ANLOENG
@@ABAIH@@@@@DGDG
IIGIDHG@@@@@MHEC
IIGHDIG@@@@@MHDG
OOOOOOOOOOOOOOOO


Now I need to calibrate one parameter at a time and see which data changes, then figure out how the constants and parity/checksum  are encoded.

Unfortunately the 3478 responds to the B2 command with the B1 command status.

Dave
 
The following users thanked this post: Le_Bassiste, l3VGV

Offline MarkL

  • Supporter
  • ****
  • Posts: 2226
  • Country: us
Re: HP 3421A CAL RAM
« Reply #3 on: April 02, 2017, 10:04:03 pm »
Hmmm... Hidden GPIB commands.  Interesting.

Using the infinite monkeys method, I've discovered a way to read out the cal RAM on a 3478A.  (Sorry if this was already known, but I was not aware.)

There is an undocumented GPIB command called "W" on the 3478A.  The format is as follows:

  W<addr>

Where <addr> is a one byte address to be read from the calibration RAM.  <addr> is in binary, thus allowing you to read all 256 locations.

The value returned is the nibble at <addr>, but the value is offset by 0x40 so the result is printable.  (Note that the 3478A cal RAM is only 4 bits wide.)

For each "W<addr>" command issued, you will receive one byte in range of 0x40 to 0x4f ("@" to "O").  You don't get the whole RAM dumped like on the 3421A/3468 as shown in the previous post.


I double checked the values returned by "W" with values previously captured via a logic analyzer (method referenced in post #2 above).

I haven't experimented yet on how to write the values back to the 3478A.


EDIT:  Write command found.  Continue 3478A related discussion here:
  https://www.eevblog.com/forum/repair/hp-3478a-how-to-readwrite-cal-sram/
« Last Edit: April 03, 2017, 02:49:34 pm by MarkL »
 

Offline dfredericksonTopic starter

  • Contributor
  • Posts: 13
  • Country: us
Re: HP 3421A CAL RAM
« Reply #4 on: April 12, 2017, 03:23:05 pm »
Procedures for reading/writing the CAL RAM for the HP 3421A and HP 3468 can be found here:
http://www.hpmuseum.org/forum/thread-8061.html
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf