Agilent 34405A schematic and the infamous 635 error - Page 1
Forum section: electronics / testgear

author: jrgandara
author_rank: Contributor
timestamp: October 28, 2016, 01:33:14 am
content: I just got one Agilent 34405A in very good cosmetic condition but with the infamous 635 error. I've done everything I could find on the web known to fix but without any luck. Mine shows 635 error at startup and if you press any button it will work just ok. But is very annoying having this error every time you power the DMM up. I´m unable to try the firmware update because the USB is not recognized. Windows says it is faulty. Keysight says if I´m not able to connect to the USB, I should send the unit to service. But believe me, living in Brazil this is not an option.So I started to look for the schematics to try by myself but looks like is not easy to get one. At least I did not find anywhere. So I have some questions and I would appreciate if someone help me on this:1) Any other hints in solving this besides Keysight FAQs?2) Any suggestion on getting the 34405A schematics?3) I looked inside at the USB board and there is a two position jumper selection. Any idea about what this jumper does?There is an Atmel micro-controller in the USB circuit. I was thinking about checking the data exchange between USB and the micro-controller to see if I get any clues about what is going on.Any thoughts?JR

author: TheSteve
author_rank: Unknown
timestamp: October 28, 2016, 02:54:50 am
content: The 34405A does seem to be a problem child. I have one with the 635 error as well. The PIC controller in the front handles the meter functions, the Atmel seems to handle the remote/USB functions. I believe you may find there are some features that don't work if the Atmel isn't communicating properly. One of the reports suggests the error will pop up after the unit warms up. To me that seems to indicate the data rate might change slightly with temp or the data isn't as "clean" as it should be. A good place to start is to check the communication between the two processors, they are opto-isolated from each other. My Atmel is totally non-responsive at the moment and as soon as my jtag interface gets here I will be reflashing it.Perhaps we should start a thread in the repair forum to collect notes. I will be posting any data I find.

author: jrgandara
author_rank: Contributor
timestamp: October 28, 2016, 09:15:19 am
content: Hello VE7FM! PY2JF here.Good suggestion. I will check the communication with the central processor today and I will let you know the results. I read in another thread someone suggesting to throw away. But this is not an option to me. I want to have fun trying to fix this. I have a trusty 34401A and works flawless.You said some functions may not work with this error. Sure the ones related to external communication. But mine looks like all the front panel functions are working ok. And I like the footprint of this 05A because it will fit nicely in a small space I have in one bench here.You said you would reflash the Atmel. Where you will find the image? Reading one in working condition? If so, it will not be fuse protected?73

author: jrgandara
author_rank: Contributor
timestamp: October 28, 2016, 10:07:48 am
content: The main processor sends a byte every 2.4ms to the communication board but get no response. The power is 3.6V as specified for this Atmel ARM microntroller. The 12MHz clock is running ok. Looks like the ARM is dead or its firmware is corrupted.By any chance is possible to get this firmware or the only way would be send the unit to Keysight with I don´t think it will worth?Below a picture of the USB communication board.

author: HighVoltage
author_rank: Super Contributor
timestamp: October 29, 2016, 10:17:53 am
content: Not much I can offer...I had a Agilent 34405A a few years back with the same error and could not find the schematics at all.At the end I sold the instrument and got my first 34410A instead.

author: TheSteve
author_rank: Unknown
timestamp: October 30, 2016, 07:10:24 am
content: Here is the firmware from the Atmel - I don't know what version it is, I haven't used it yet. The Atmel can be read/written via jtag. This file is from another forum user.I will be trying this file when my jtag programmer arrives.

author: TiN
author_rank: Super Contributor
timestamp: October 30, 2016, 08:28:05 am
content: MCU not even locked? This is funNow we know the codename for 34405A to be Frodo

author: jrgandara
author_rank: Contributor
timestamp: October 31, 2016, 05:05:09 pm
content: Thank you for the firmware! I never thought I could get the firmware if even the schematic was impossible. I don´t have an ARM programmer. I will need to import and this take time and being in Brazil may take months. Let me know if you have success flashing this image when your programmer arrives.73

author: TheSteve
author_rank: Unknown
timestamp: November 09, 2016, 07:29:28 am
content: Programmer arrived yesterday, figured out the pinouts and reflashed the Atmel arm processor. The arm board came back to life but was giving error 622. I tried reflashing using the PC software update many times, it always failed during the second half. The PC software flashes the PIC first and then the Atmel arm. I then reflashed the Atmel arm a second time with the programmer and it is now working exactly as it should. I have not had any errors at all, usb interface is working, BenchVue is working with it. I guess I'll need to let it run for a few days on and off and see if any error comes back. My unit is now running 1.50/3.08 - there is technically an update but I am not touching anything if it is working fine. I get the feeling anytime the update fails(but lets you retry it) that some part of the Atmel arm becomes corrupted.I hate to say it but I did use a clone jlink programmer, for one time use it was hard to justify spending more then the 10 dollars it cost(shipped!).Programming is very simple with version 4.xx of the software:exec device = AT91SAM7S256loadbin image.bin 0

author: jrgandara
author_rank: Contributor
timestamp: November 09, 2016, 01:41:02 pm
content: Good to know you unit is working now! Let´s see if stable.In my case I will have to pay more than U$70 for a programmer which I would never have to use again. I thought this firmware was only for the Atmel. So the main processor will be updated together? Hummm... I have half of the DMM working now and thinking the odds in spending U$70 and brick the unit totally. There is any way to flash only the Atmel?73

author: TheSteve
author_rank: Unknown
timestamp: November 09, 2016, 05:11:57 pm
content: With the jtag based programmer only the Atmel arm processor gets flashed/updated.However if you use the Agilent firmware update program that updates the 34405A via USB it will update the firmware in the PIC and then the firmware in Atmel arm. The program doesn't show what it is updating but having used it I can say for certain it always updates the PIC first and then does the Atmel arm. During the update process I always had the PIC program fine but the Atmel arm portion failed 95% of the time.Also sending you a PM.Edit:Remembered one more thing - that 2 position jumper on the Atmel arm board. If you move it to the test position the Atmel arm board will be dead and will only come back to life after reflashing. At least that is what happened to mine(twice).

author: TheSteve
author_rank: Unknown
timestamp: November 11, 2016, 03:46:27 am
content: So far so good, meter is still operating 100%. I have turned it on and off countless times and had it log data with BenchVue. It has also been faultless in terms of the USB port working every time the meter is powered on. Calibration data and serial # are both fine.I have attached pictures showing the JTAG connections to the Atmel arm and the jlink programmer.

author: jrgandara
author_rank: Contributor
timestamp: November 11, 2016, 10:01:00 am
content: Steve,Great work! I ordered the programmer and God knows when I will have it in hands having the Brazilian customs in the front. These notes in the pictures will help a lot!Have been using mine every day and besides the error message in the boot, it is working good. I have some 34401A which the calibration is not expired as this one and I note some differences only in ohms and VDC scale. But this two models not being of the same resolution and precision, I think it is OK:Testing the only two 1% resistors I have in hand (56 and 10.1K) and a 1.6050 V DC voltage reference:AGILENT 34405A 55.971/10.105.0 1.604.5AGILENT 34401A 55.965/10.110.2 1.605.0AGILENT 34401A 55.964/10.110.1 1.604.9AGILENT 34401A 55.964/10.109.9 1.604.9AGILENT 34401A 55.964/10.110.1 1.604.9AGILENT 34401A 55.964/10.110.1 1.605.0All 34401A are pretty close each other. Only the 34405A is a little off.You know if is possible to calibrate only the ohms scale or the calibration is a whole process and all other references must be calibrated in the process? I read somewhere which some DMMs only will save the new calibration data if the complete set is done.73

author: pigrew
author_rank: Frequent Contributor
timestamp: December 21, 2020, 11:30:52 pm
content: I've been unsuccessfully debugging a 34405A, and in the process have reverse-engineered the PSU board.The previously posted firmware is rev 3.08 (which is paired with mainboard FW 1.39).I'm attaching my reverse-engineered schematic of the PSU board, and also a newer AT91SAM7S FW 3.14. The PSU board also contains a 256 kB serial flash IC, but I'm not sure what it's for (it holds 192 kB of data). The mainboard MCU internally has both EEPROM and flash. Configuration data (and serial number) is stored in the dsPIC30F's internal EEPROM.The firmware update package from Keysight contains the AT91SAM7S firmware, 66 kB of another something (perhaps 64 kB + 1 kB???), and a short 21 byte BLOB. I don't know what's done with these.For the unit-under-repair, the mainboard dsPIC30F MCU isn't responding (display is blank, buttons do nothing). I think it's going to need to be reprogrammed, or maybe replaced. I ordered a counterfeit PICKIT3 to try to get a better idea of its state. The USB port does not respond to the computer.Also, in the above image, I believe that nRST pin was labeled incorrectly. It should be the pin to the left of TDO. The indicated pin was nTRST.ADDENDUM: I feel cheated by the clone PicKit3, but it'll work for this project. The clone's LVP circuit is not populated, and they replaced the I/O protection polyfuses with 10 ohm series resistors. The TVS is MELF diodes...