GPIB Issues with HP 3336C - Page 1
Forum section: electronics / testgear

author: Xepherrea
author_rank: Contributor
timestamp: June 17, 2025, 02:46:49 am
content: Some time ago my work gave me a 3336C that stopped turning on, and asked me if I wanted it. I managed to repair it, which ended up just being a connector was burning due to making poor contact within the power supply. The unit works well, although it has never had a full proper verification performed on it, so I'm fairly certain it does not meet its +/-0.07 dBm option 005 spec.Anyways, I have started learning python to get into py.visa and currently am having issues when trying to talk to the 3336C using NI MAX's VISA test Panel. Some commands work, and others do not, and I am not sure where to go from here.What I am able to do is see that it interacts via GPIB, as I can send it FR and AM commands, which swaps it between frequency and amplitude functions, but it does not respond to values such as FR100HZ, or AM1DBM. I have been able to send it commands like AM1 which turns amplitude modulation on, but it takes multiple tries for AM0 to register and turn off. I continuously get ERROR 7 and 8 on the display which I am having a hard time deciphering within the User/Service guide as to what exactly the issue is.On the rear of the unit, where the addressing is, I have bits 6 & 7 set to 00, as putting the unit into 01 for talk mode makes the front display freak out, and 10 for write mode does not respond to commands like the 00 configuration does.Any help would be much appreciated as, while I have troubleshot communication issues on old equipment before, this is a first for me trying to talk directly to it as this era of equipment has been mostly phased out for my works automation.Thanks,

author: dietert1
author_rank: Super Contributor
timestamp: June 17, 2025, 07:29:12 am
content: You could try different GPIB controller configurations concerning EOI handling and the EOL characters. And as far as i remember NI GPIB has a timing configuration. There are some 10 or 20 combinations to try. And sometimes an additional delay of 10 or 20 ms in the host application helps.This is completely normal with vintage instruments. Recently i had similar problems with Advantest R6581T meters from the 90s. I got errors in a GPIB setup that had been operating successfully with instruments of various makes. The R6581T has additional requirements for bus timing. Maybe because computers are much faster nowadays.Regards, Dieter

author: bsdphk
author_rank: Regular Contributor
timestamp: June 17, 2025, 08:05:20 pm
content: The 3336x is a very early computerized instrument and the HPIB code for the "nano-processor" is very primitive.I managed to talk with mine many years ago, but it took a lot of experiments, because itisvery picky, and just goes into error, without any indication of why.My faint memory is that it insists on EOI and doesn't like white-space.Make sure you clear all errors before you send anything, repeat "IER" until you get "ER0" back.And I also think there were something about numbers have to contain a period, try if "FR100.0HZ" works ?

author: Xepherrea
author_rank: Contributor
timestamp: June 18, 2025, 11:57:18 am
content: Thank you Dieter & bsdphk, when I am home again later tonight I'll give those suggestions a go and report back results.

author: DeepLink
author_rank: Regular Contributor
timestamp: June 18, 2025, 06:47:19 pm
content: Not a 3336C, but I have a 3335A from the same periodNo problem using mine with EZGPIB software and a NI USB+ interface/Hans

author: Xepherrea
author_rank: Contributor
timestamp: June 19, 2025, 04:14:23 am
content: Unfortunately still no luck sending commands like FR100.0HZ, as it puts it into frequency mode, but does not change from the default frequency. I have been playing around with the EOI, and with the default timeout at 3 seconds, it has not changed any results. I do try IER until I get the ER0 reply, but this seems to do nothing in my case. It appears as if device only sees my first 3 characters being sent to it, as SM1 puts the unit into linear sweep mode, and SM2 puts it into Log Sweep, but any commands that require more characters, such as trying to set the amplitude or frequency either flash the front panel, as it sees the write, or causes ER7/8's. I've been trying to read through the user manuals chapter 3, but its a whole ordeal to decipher what they were explaining you needed to due because of the age difference in equipment. I am not sure if there is anything that needs to be done with HP-IB Select code, and if there are other requirements that I am not meeting before sending the aforementioned commands.I'm going to try to give it some more work tomorrow night. So far I'm running out of ideas with my level of understanding. I have a 6632A, so I might try to mess around with that and my 34401A instead, as they are closer in age, and the documentation for the 6632A is better.

author: dietert1
author_rank: Super Contributor
timestamp: June 19, 2025, 05:02:15 am
content: In addition to the GPIB timeout there is another setting NI call "Bus Timing". In Measurement Studio it appears under the controller properties, Advanced. For our GPIB-ENET it supports values of 350 nsec, 500 nsec and 2 usec.There is another option for turning HS488 mode on or off and configure the allowable GPIB cable length. For a vintage instrument HS488 mode should be off.Regards, Dieter

author: m k
author_rank: Super Contributor
timestamp: June 19, 2025, 09:42:49 am
content: Operating and Service Manual 03336-90000Page 52/269 has table 3-2 and there amplitude is AM.Page 54/269 has Modulation and there Amplitude Modulation is MA.What transfer mode you're using?

author: Xepherrea
author_rank: Contributor
timestamp: June 20, 2025, 03:27:31 am
content: Quote from: dietert1 on June 19, 2025, 05:02:15 amUnfortunately, it looks like the NI MAX version I am using, which is 21.5.0, or the last version before NI swapped to the 20XX, QX update format, as those initial 2024 versions just broke MAX and my instruments became unreadable, does not have the Bus timing option. This may only be available in older versions. With the way they currently have the NI Package manager set-up, it makes changing versions incredibly annoying vs the old standalone NI MAX. I also have the HS488 option set to OFF.Quote from: m k on June 19, 2025, 09:42:49 amI have used both. AM0.0DB, on 3-27 puts the unit in amplitude mode, but does not change the amplitude. The command MA1 on page 3-29 works, although it takes a few attempts to do it. I am using the normal transfer mode, not the HS488. It won't even allow me to use that selection as an option.

author: m k
author_rank: Super Contributor
timestamp: June 20, 2025, 12:03:49 pm
content: Not speed mode, Transfer Mode 1 or 2 of the HP, pages 53/269 and 55/269.For mode 2 EOS can be '*', so no special-special characters needed.Page 57/269 Note.Only one interrogate instruction and it must be last.When mode 2 is on the receiving operation can be easier.You can also send set and interrogate instructions in one string.Commas and spaces can be added for clarity, end of 3-158 page 56/269.If mode 2 is better you can start checking the machine internals.I'd start counting bits from input of opto U55, page 187/269.From there you can check that input is clean and received bits as they should.Your errors are from the actual received data, so maybe one part of the receiver is too tired.If you send AM1 it can be valid as amplitude of 1 of default range.But then AM0 should be also valid, if 0 is a valid value.MA1 and MA0 are correct modulation settings, so they should be always fine.

author: Xepherrea
author_rank: Contributor
timestamp: June 21, 2025, 03:52:53 am
content: Quote from: m k on June 20, 2025, 12:03:49 pmHello m k,I tried with the unit in Transfer Mode 2, it worked slightly better, but still not repeatably. I attempted to set AM0.1DB, FR10HZ (*), I can't remember if I did, or did not have the asterisk. However, after seeing nothing happening, and using IER a bunch, I heard a click. I turned around and saw the unit in Frequency mode, with 10 as an Entry, but it was not set to HZ. It was as if it was waiting for an ENTER key press to submit the change. I swapped to amplitude and it did set it to 0.1 dBm, so something worked, but I am unsure of what, as I cannot reproduce it. Just sending AM1 or AM0 in does not change the amplitude. I can assess the U55 optocoupler to the best of my ability. Looking around there doesn't seem to be much in the way of replacements for it if it is indeed having issues. It looks like an NTE3094 is the recommended replacement for the 5082-4364 if it comes down to that.I also do notice the unit getting "stuck" in settings more when in Mode 2, so the point where I have to power-cycle as it stops taking any commands after some time.I will perform further troubleshooting tomorrow night with my scope once I get the other equipment off of it, and opened up.*About 10+ minutes after posting - I power cycled it again, and it took FR100.0HZ* after putting it into MD2, but again, only the once, and wouldn't push through any other commands correctly.

author: m k
author_rank: Super Contributor
timestamp: June 21, 2025, 10:33:27 am
content: If Mode 2 is worse I'd start checking the overall quality of HP-IB connection, maybe scoping general noise first.The actual moment of data in is short, so noisy signal can generate sort of what ever.If external signal is clean then next in line is input side of driver chips.E,one other possibility is to connect two TEs and compare how control changes between them.Use shortest possible messages, like on page 53/269, but pick those that generate visible results, like front panel LEDs.If bus is stuck the second device stay silent.If 3336 is receiving junk data the other device operates normally.

author: Xepherrea
author_rank: Contributor
timestamp: June 23, 2025, 02:49:03 am
content: Quote from: m k on June 21, 2025, 10:33:27 amAs it happens, I had a stroke of good luck, followed by even worse luck. The good news is the unit, in a brief moment of clarity worked as intended in Mode 1. I was able to send it AM0.0DB* and it worked, then FR100.0HZ* worked, then swapping to 100 kHz, then to 10 MHz, then to -40dB. Then it stopped working after I power cycled it, just throwing errors 7 & 8. I had connected my 34401 to the bus and it threw no errors when talking to the generator.I attempted to look at the serial data in & out, using U55 pins 3 and 6, but it had constant bits going through which showed it was functioning, but I was unable to use the data in any meaningful way. I had no way of seeing what was happening when commands were being sent, but at this point I am thinking the issue might not be equipment related, but some issue with NI.I was going to just update everything to the newest version, but restarting my PC brought up an old 00 coding issue which I had hoped was fixed, and appears was not as a few months had gone by without it happening. Basically my CPU fails to be detected so the PC can't even get into bios. So, until I can fix this issue again, I will be on hiatus lol.This same thing happened to me last year with updating NI causing this. Not sure if it is correlation, or causation yet, but others have had this 00 code issue too that were not NI related.

author: m k
author_rank: Super Contributor
timestamp: June 24, 2025, 08:34:55 am
content: Code 00 is not a code, it's before code.Disconnect everything, take all RAM out and turn the machine on.If it's not beeping it's not doing much.So voltages, reset, clock and so on next.I've recently moved to second hand machines.We have locally quite good recycling system for leasing returns, so with very low prices you get few years old business gears.Even better that mini-PCs are also appearing.

author: Xepherrea
author_rank: Contributor
timestamp: June 24, 2025, 03:23:27 pm
content: Quote from: m k on June 24, 2025, 08:34:55 amI ended up bringing my work laptop home, and that encountered the same issues with talking to the unit with NI MAX, only after having to fight with the NI installations and Keysight I/O for 3.5 hours. I have an Agilent 82357B so it needs the Agilent/Keysight drivers. Although, when the unit had been working I had the top off, but the fan is pulling a lot of air in, so it could potentially be some overheating issue on the board? I have a thermal camera, so I'll see if I see anything suspicious later.As for the PC, I've already been through all the hoops. New RAM, RMA'd the motherboard, that fixed it for a few months, but the only thing I haven't tried is a new CPU. Others I have seen have said it's an issue with the memory controller on the new Ryzen chips. I am hoping I do not encounter the issue with the 9800X3D I am waiting on.

author: m k
author_rank: Super Contributor
timestamp: June 25, 2025, 12:35:00 pm
content: Pretty nasty thing that NI MAX if it can set the machine so that even bios is not starting.That kind of stuff should go away by taking setup battery off.Nowadays overheating is always a thing with new stuff.Reseating parts is a good starting point, who knows how good or bad those connectors are.Changing RAMs can be a mechanical thing.Intermittent connection problem is one of the nastiest there can be and problem contact can be so on the edge that it can be anywhere.One other is intermittently hanging updated software.I have an Xbox 360 that has hanged with some games from almost beginning.

author: kmoonwalker
author_rank: Frequent Contributor
timestamp: June 25, 2025, 04:16:47 pm
content: Quote from: Xepherrea on June 24, 2025, 03:23:27 pmI can provide a small hint after my experiences with various devicesCheck and double check if first of all those USB ports are not native USB 3 (and not all are marked as blue plastic inside) then even if not usb 3 go to bios and disable all usb 3 functions (if possible keeping only 2.0 speeds/compatibility)Also AMD platform is not best choice for such experiments from my personal experiences as all past drivers were written for standard mobos intel chipset based and whatever works is usually some compatibility mode and thus it results in no operation, incorrect operation aka intermittent etc or bigger problemsI would take some older computer for example Precision T1650, downgrade bios to some version like 24 or less and disable in bios usb 3. then you have only two ports working on front and also two ports in line with 4 of them are disabled but rest works with nasty industrial controller I am fixing rn.Usually some systems win 7/xp based on intel Core 2 Duo/Quad are best match for such older parts.USB 3 is backward compable for flashdrives but even older scanners can give a serious headache and a doctorate to make them running (if they eventually accept to work)Sometimes it was necessary to use 32 bit system version and some older drivers toowith GPIB you need to be certain that your problem is with given device and rest is operational (usally there is more problems and they come out on some specific unit you are trying to run)

author: Xepherrea
author_rank: Contributor
timestamp: June 28, 2025, 11:53:07 pm
content: Quote from: kmoonwalker on June 25, 2025, 04:16:47 pmI got the new CPU installed. Fixed the issue, but the equipment issues are still persistent throughout all the troubleshooting I have. The 3336C yet again allowed me to send some commands, then just stopped working, so I have a feeling the equipment is fine, and all the issue lie in the system. Potentially it is just the age difference with so many factors contributing to everything fighting me every step of the way. I decided to try talking to the 6632A, and its the same thing, I can talk to it in NI MAX, at least this one is a bit more consistent, but now going into python its all just communication error and VISA errors which lead to the same thing even with the recommended fixes. I'm ready to basically just sell the HP equipment, apart from the 34401, which works perfectly fine in KeysightI/O, but can't even be seen by py.visa, and just get newer equipment. I've talked to the guys at my work who use python for talking to the equipment and they don't run into nearly as many issues as I do. I don't have the bench space to be able to keep these, and I also have a 6651A, but again, if I can't get anything talking, I will not keep it around.I have no clue what to troubleshoot for python from here as there is so much software and file paths that it could be any number of reasons. Unfortunately I have 0 time at work to be messing with python due to the nature of what I do, so I'm not sure what I'm going to do from here....

author: kmoonwalker
author_rank: Frequent Contributor
timestamp: June 29, 2025, 01:58:23 am
content: 3336C is very old and even GPIB was never on it working as it should - I had similar issues with ancient HP audio analyzer years ago that took 3 evenings to late night to make it work on win xp with Labview but it was giving so many errors along the way that we evaluated it as no go for production environment cause I was only person from all that tried that actually managed it to work (a bit) with computer...and it was pretty similar to your case - it was working with labview (NI stuff) but not working with anything else or randomly hanging up on error after few commandsI think you can either try working other way than Python or you will need to spend a lot of time to evaluate if some upgrade to py.visa did not made this one obsoletealso as someone mentioned before such old units have various timing issues with modern computers that never ones had resolved (more or less)with older things a lot depends from adapter you are using and cablesI had three adapters at that time and that analyzer was working only on PIII computer with ISA card (and I spent a lot of time searching for that mobo to have leagacy ISA mode and IRQ settings to set up the adapter)both USB and PCI were no go (but worked like a charm with Agilent DMMs even on that old computer)I would use it manually or leave it be for some time - perhaps some older computer or adapter will do the trick for youLast time I was fighting with such "wonder" I simply took it home with their PC for few days and then I sold them my cables and last adapter cause what they had was incompatible

author: m k
author_rank: Super Contributor
timestamp: June 29, 2025, 04:10:27 pm
content: Earlier testing is sort of indicating that there is a timing issue.You can give 3336 more time by adding spaces between the instruction and its end marker.One other possibility is to scope a single sweep from somewhere of 3336 where incoming data is serial and put EOI to other channel.Trigger can be the data.Send something short and you should be able to figure out how that instruction is received.If EOI is too early last byte or so can be left out.Page 70/269 of the manual has how signaling goes, if you like to go there.Page 74/269 has some instruction timings, GPIB should be receiver based, but maybe NI is too hasty.

author: kmoonwalker
author_rank: Frequent Contributor
timestamp: June 29, 2025, 04:19:51 pm
content: worth checking but keep in mind that appliance is from times when there was no overall GPIB but all manufacturers used their modifications:HP had HPIBAudio Precision APIBetc