tl;dr ;-)
What an informative thread. Thank you Bravo and all the others who contributed here. Im the happy owner a 2465A CT and I wanted to follow the advice of many here and recap the PS. Especially get those RIFAs out before they pop. Not sure if I should replace any other caps besides those. All my J119 DC voltages are within spec. I also have no error messages and scope appears to be working pretty good. My calibration waveform seems a bit noisy at certain timebases since the trace is not a thin line but a thick fuzzy line. Maybe that’s normal.
Also wanted to replace the Keeper II battery. Its reading 3.3v but dont want to risk losing my data. What’s the best method for attaching a backup battery while doing the replacement? I found these two online:
https://jestineyong.com/tektronix-2465a-dv-oscilloscope-memory-backup-battery-replacement/
https://cdn.hackaday.io/files/1638907011869760/Piggyback%20batt.JPG
Also I would be using my grounded soldering iron. Could that be a problem if the A5 board is out of the scope? Would it be possible that the iron would ground the battery and the EAROM would lose its data?
Lastly as a backup plan I was thinking of backing up my data with the a GBIP adapter which was mentioned in this thread. Maybe using the NI USB model. Has it been confirmed that it can be used to backup and fully restore the EAROM data in case I accidentally delete it during the battery replacement?
There are plenty of varying opinions on this, but mine is "if it ain't broke, don't fix it". If your voltages and ripple are in spec, then leave well enough alone. You can find plenty of posts from people looking for help after "recapping" because they've destroyed their equipment. The only exception in these scopes is the RIFA caps, as they are a well-known and frequent point of failure.
Also wanted to replace the Keeper II battery. Its reading 3.3v but dont want to risk losing my data. What’s the best method for attaching a backup battery while doing the replacement? I found these two online:
https://jestineyong.com/tektronix-2465a-dv-oscilloscope-memory-backup-battery-replacement/
https://cdn.hackaday.io/files/1638907011869760/Piggyback%20batt.JPGQuoteOf those two, I like the Jestine approach since he is replacing the dead battery and not stacking a new one on a dead one. Leaving a dead battery in there is asking for leaks, and there's no guarantee it wouldn't reduce the life of the new battery.
The EAROM is used on 2445 and 2465. On later A and B scopes, it was replaced with battery backed SRAM , either combined in a single package or as two separate devices. As long as the board is isolated, soldering should be ok. Just don't short any pins by accident.
Yes. I can attest the data can be saved and successfully restored with this method. I have done it about a half dozen times.
Before trying anything with either GPIB or the battery, I would suggest you take a video of flipping through the NVRAM using EXER 02 and record all the values. While the methods to get that data back in the NVRAM in case of failure will vary depending on what equipment you have at your disposal, at least you have the data.
QuoteBeen there done that on my 2465B. If I remember correctly the usual leaking caps where the two (blue) 180uF 40V, and the (also blue) 250uF 20V ones, all to be replaced with 330uF 50V. Thing is sometimes you won't see the leakage pooled up under the cap until the cap itself has been pulled, but if the case make sure to clean well before installing the replacement. The green caps are usually still good, but while you are in there...
Also keep in mind the orientation error for one of the caps on the PCB silkscreen, which is reversed. Best to replace only one cap at a time without using the silkscreen as a guide, and making sure to take notes of each cap's orientation before pulling it so as to install it exactly the same way the original was. Also when taking notes don't confuse the 10uF 100V with 100uF 10V (I think it was) as both will look almost identical in size. I did that mistake when I followed my own bad notes and ended up getting a loud POP which was the only thing that finally revealed the mistake, as I was still checking everything against my notes and could not figure out what was wrong. Not sure the silk screen error applies in your case with an earlier 2465ACT, but certainly it does in the 2465B. You can find plenty more information on this error here on this thread, plus recommended capacitor shopping lists, etc.tl;dr ;-)
Those two 290uF 200V high quality SPRAGE brand caps are usually almost always still in perfect condition, but you could also replace them if desired with 330uF 250V. But it will be hard to find those in axial type, so usually a bit of conversion needs to be done to more conventional radial types by extending and insulating one of the leads and bending it upwards over the body of the cap towards the other end to create a quasi-axial cap.
The worst offenders were the larger radial Sprague caps with the resin bung, these were often found cracked and/or peeing electrolyte. I would give a list of what I used, but most of the caps I used are now discontinued.
Also if you don't have much experience replacing parts on double sided boards, I would suggest practising on something of no value first.
And as your scope has options, take note or pictures of where all the extra connectors are fitted, before removal.
David
The worst offenders were the larger radial Sprague caps with the resin bung, these were often found cracked and/or peeing electrolyte. I would give a list of what I used, but most of the caps I used are now discontinued.
Also if you don't have much experience replacing parts on double sided boards, I would suggest practising on something of no value first.
And as your scope has options, take note or pictures of where all the extra connectors are fitted, before removal.
DavidThanks David. Found a list by CondorAudio in the Tek group. Unfortunately some caps are not available. Any recommendations for substitutes?
Part# Value Watts Mouser Part#
C1021 290 µF 200 ELCTLT 647-UPW2E331MRD
C1022 290 µF 200 ELCTLT 647-UPW2E331MRD
C1066 4.7 µF 35 ELCTLT 647-UPW1H4R7MDD
C1112 4.7 µF 35 ELCTLT 647-UPW1H4R7MDD
C1120 10 µF 100 ELCTLT 647-UPW2A100MED
C1130 10 µF 100 ELCTLT 647-UPW2A100MED
C1220 10 µF 100 ELCTLT 647-UPW2A100MED
C1240 10 µF 100 ELCTLT 647-UPW2A100MED
C1400 47 µF 25 ELCTLT 647-UHE1E470MDD
C1402 47 µF 25 ELCTLT 647-UHE1E470MDD
RT1010 7.0 ohm NTC Thermistor 995-SG210
Yes. I can attest the data can be saved and successfully restored with this method. I have done it about a half dozen times.
Before trying anything with either GPIB or the battery, I would suggest you take a video of flipping through the NVRAM using EXER 02 and record all the values. While the methods to get that data back in the NVRAM in case of failure will vary depending on what equipment you have at your disposal, at least you have the data.Excellent thanks. I will follow your advice. What software do I use to send commands to the scope?
$ ibtest
Do you wish to open a (d)evice or an interface (b)oard?
(you probably want to open a device): d
enter primary gpib address for device you wish to open [0-30]: 8
trying to open pad = 8 on /dev/gpib0 ...
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: id?
sending string: id?
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 4
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received string: 'ID TEK/2445A,V81.1,SYS:FV08,BB:FV02,CTT:FV05,DMM:FV01,GPIB:FV02;'
Number of bytes read: 64
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 64
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: key 0
sending string: key 0
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 6
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: earom? f
sending string: earom? f
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 9
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]: 2048
trying to read 2048 bytes from device...
received string: 'EAR 0:215,1908,1921,1921,1927,10204,10088,1917,10118,1970,10304,506,522,8715,8712,548,8647,8671,481,8668,508,8318,32,32,8221,28,15534,16052,7414,15560,16299,8099,16299,16292,16309,566,566,8756,8756,7450,7934,7699,4096,16304,16295,8105,16280,8105,743,744,740,740,10078,10334,2140,2133,10304,10340,2120,104,2133,10319,10322,2108,10321,2102,8297,835,820,817,1646,9814,9842,1630,722,752,14501,3762,3781,1840,1878,560,569,8545,314,1377,10238,1015,8970,1'
Number of bytes read: 448
gpib status is:
ibsta = 0xc100 < ERR TIMO CMPL >
iberr= 6
EABO 6: Operation aborted
ibcntl = 448
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received string: '261,1948,9614,1975,1586,1349,1832,9242,9710,9014,710,9000,1362,9158,1187,1029,9109,1015,8928,8387,203,8361,20735,57054,57054,57054,57054,199,252,254,4,58,57054,57054,5543,5290,5366,5323,532,5500,5460,5517,5470,5386,8279,8286,8323,8292,8205,8,6359,6382,6484,7034,7110,6649,6612,6741,7291,7354,5525,5537,5509,5181,5535,5570,5575,5549,5221,5608,8292,65246,280,57054,57054,15764,37288,56338,24767,57054,57054,9480,57054,38308,9781,35954,25263,57054,5705'
Number of bytes read: 449
gpib status is:
ibsta = 0xc100 < ERR TIMO CMPL >
iberr= 6
EABO 6: Operation aborted
ibcntl = 449
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received string: '4,57054,57054,12168,13935,20320,30175,57054,57054,57054,57054,30465,23778,44986,9647,57054,57054,57054,57054,48387,47423,41792,57871,57054,57054,57054,57054,64452,24830,31824,27670,57054,57054,57054,57054,41740,12751,16266,5113,57054,57054,57054,57054,50098,2404,34593,63623,57054,57054,57054,57054,63304,2170,65206,18463,57054,57054,57054,57054,54824,8886,63400,47442,57054,57054,57054,57054,38880,2266,60688,13813,57054,57054,57054,57054,48872,16499,14;'
Number of bytes read: 455
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 455
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received binary data (hex): ffffffff
Number of bytes read: 1
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 1
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
:
$ ibtest
Do you wish to open a (d)evice or an interface (b)oard?
(you probably want to open a device): d
enter primary gpib address for device you wish to open [0-30]: 8
trying to open pad = 8 on /dev/gpib0 ...
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: t
enter the desired timeout:
(0) none
(1) 10 microsec
(2) 30 microsec
(3) 100 microsec
(4) 300 microsec
(5) 1 millisec
(6) 3 millisec
(7) 10 millisec
(8) 30 millisec
(9) 100 millisec
(10) 300 millisec
(11) 1 sec
(12) 3 sec
(13) 10 sec
(14) 30 sec
(15) 100 sec
(16) 300 sec
(17) 1000 sec
13
gpib status is:
ibsta = 0x100 < CMPL >
iberr= 0
ibcntl = 0
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: id?
sending string: id?
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 4
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received string: 'ID TEK/2445A,V81.1,SYS:FV08,BB:FV02,CTT:FV05,DMM:FV01,GPIB:FV02;'
Number of bytes read: 64
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 64
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: key 0
sending string: key 0
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 6
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: earom? f
sending string: earom? f
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 9
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]: 2048
trying to read 2048 bytes from device...
received string: 'EAR 0:215,1908,1921,1921,1927,10204,10088,1917,10118,1970,10304,506,522,8715,8712,548,8647,8671,481,8668,508,8318,32,32,8221,28,15534,16052,7414,15560,16299,8099,16299,16292,16309,566,566,8756,8756,7450,7934,7699,4096,16304,16295,8105,16280,8105,743,744,740,740,10078,10334,2140,2133,10304,10340,2120,104,2133,10319,10322,2108,10321,2102,8297,835,820,817,1646,9814,9842,1630,722,752,14501,3762,3781,1840,1878,560,569,8545,314,1377,10238,1015,8970,1261,1948,9614,1975,1586,1349,1832,9242,9710,9014,710,9000,1362,9158,1187,1029,9109,1015,8928,8387,203,8361,20735,57054,57054,57054,57054,199,252,254,4,58,57054,57054,5543,5290,5366,5323,532,5500,5460,5517,5470,5386,8279,8286,8323,8292,8205,8,6359,6382,6484,7034,7110,6649,6612,6741,7291,7354,5525,5537,5509,5181,5535,5570,5575,5549,5221,5608,8292,65246,280,57054,57054,15764,37288,56338,24767,57054,57054,9480,57054,38308,9781,35954,25263,57054,57054,57054,57054,12168,13935,20320,30175,57054,57054,57054,57054,30465,23778,44986,9647,57054,57054,57054,57054,48387,47423,41792,57871,57054,57054,57054,57054,64452,24830,31824,27670,57054,57054,57054,57054,41740,12751,16266,5113,57054,57054,57054,57054,50098,2404,34593,63623,57054,57054,57054,57054,63304,2170,65206,18463,57054,57054,57054,57054,54824,8886,63400,47442,57054,57054,57054,57054,38880,2266,60688,13813,57054,57054,57054,57054,48872,16499,14;'
Number of bytes read: 1352
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 1352
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
:
The worst offenders were the larger radial Sprague caps with the resin bung, these were often found cracked and/or peeing electrolyte. I would give a list of what I used, but most of the caps I used are now discontinued.
Also if you don't have much experience replacing parts on double sided boards, I would suggest practising on something of no value first.
And as your scope has options, take note or pictures of where all the extra connectors are fitted, before removal.
DavidThanks David. Found a list by CondorAudio in the Tek group. Unfortunately some caps are not available. Any recommendations for substitutes?
Part# Value Watts Mouser Part#
C1021 290 µF 200 ELCTLT 647-UPW2E331MRD
C1022 290 µF 200 ELCTLT 647-UPW2E331MRD
C1066 4.7 µF 35 ELCTLT 647-UPW1H4R7MDD
C1112 4.7 µF 35 ELCTLT 647-UPW1H4R7MDD
C1120 10 µF 100 ELCTLT 647-UPW2A100MED
C1130 10 µF 100 ELCTLT 647-UPW2A100MED
C1220 10 µF 100 ELCTLT 647-UPW2A100MED
C1240 10 µF 100 ELCTLT 647-UPW2A100MED
C1400 47 µF 25 ELCTLT 647-UHE1E470MDD
C1402 47 µF 25 ELCTLT 647-UHE1E470MDD
RT1010 7.0 ohm NTC Thermistor 995-SG210
For the 647-UPW2A100MED, I used 647-UCA2C100MPD for all of them, it's obsolete, but there are still a few thousand in stock.
For the 647-UHE1E470MDD, my choice of UPW1V470MED is no longer available, alternates I would choose from are; 667-EEU-FC1V470, 661-ELE-350ELL470MF1, or 232-35YXM47MEFR63X11, these are all 35V, but you could go with 25V as per the originals, I stocked up on the 35V version for various projects.
For the 647-UPW1H4R7MDD, there are some still available under numbers 647-UPW1H4R7MDD1TD (straight leads) and 647-UPW1H4R7MDD1TA (formed leads to 5mm pitch), all are obsolete.
The other parts I didn't replace.
David
Here's a better example of using ibtest to capture the NVRAM data. Previously I didn't notice that the reason multiple reads were needed was because ibtest does not use the default timeout from the GPIB configuration file (gpib.conf). Each read got some of the data but then timed out because the scope is so slow.
Here it is again, explicitly setting the timeout to 10 seconds in ibtest so the response is read in one shot. Also note the larger buffer of 2048 bytes specified for the "r" (read command).
Sorry for the re-do. I don't usually use ibtest.Code: [Select]$ ibtest
Do you wish to open a (d)evice or an interface (b)oard?
(you probably want to open a device): d
enter primary gpib address for device you wish to open [0-30]: 8
trying to open pad = 8 on /dev/gpib0 ...
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: t
enter the desired timeout:
(0) none
(1) 10 microsec
(2) 30 microsec
(3) 100 microsec
(4) 300 microsec
(5) 1 millisec
(6) 3 millisec
(7) 10 millisec
(8) 30 millisec
(9) 100 millisec
(10) 300 millisec
(11) 1 sec
(12) 3 sec
(13) 10 sec
(14) 30 sec
(15) 100 sec
(16) 300 sec
(17) 1000 sec
13
gpib status is:
ibsta = 0x100 < CMPL >
iberr= 0
ibcntl = 0
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: id?
sending string: id?
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 4
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]:
trying to read 1024 bytes from device...
received string: 'ID TEK/2445A,V81.1,SYS:FV08,BB:FV02,CTT:FV05,DMM:FV01,GPIB:FV02;'
Number of bytes read: 64
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 64
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: key 0
sending string: key 0
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 6
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: w
enter a string to send to your device: earom? f
sending string: earom? f
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 9
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
: r
enter maximum number of bytes to read [1024]: 2048
trying to read 2048 bytes from device...
received string: 'EAR 0:215,1908,1921,1921,1927,10204,10088,1917,10118,1970,10304,506,522,8715,8712,548,8647,8671,481,8668,508,8318,32,32,8221,28,15534,16052,7414,15560,16299,8099,16299,16292,16309,566,566,8756,8756,7450,7934,7699,4096,16304,16295,8105,16280,8105,743,744,740,740,10078,10334,2140,2133,10304,10340,2120,104,2133,10319,10322,2108,10321,2102,8297,835,820,817,1646,9814,9842,1630,722,752,14501,3762,3781,1840,1878,560,569,8545,314,1377,10238,1015,8970,1261,1948,9614,1975,1586,1349,1832,9242,9710,9014,710,9000,1362,9158,1187,1029,9109,1015,8928,8387,203,8361,20735,57054,57054,57054,57054,199,252,254,4,58,57054,57054,5543,5290,5366,5323,532,5500,5460,5517,5470,5386,8279,8286,8323,8292,8205,8,6359,6382,6484,7034,7110,6649,6612,6741,7291,7354,5525,5537,5509,5181,5535,5570,5575,5549,5221,5608,8292,65246,280,57054,57054,15764,37288,56338,24767,57054,57054,9480,57054,38308,9781,35954,25263,57054,57054,57054,57054,12168,13935,20320,30175,57054,57054,57054,57054,30465,23778,44986,9647,57054,57054,57054,57054,48387,47423,41792,57871,57054,57054,57054,57054,64452,24830,31824,27670,57054,57054,57054,57054,41740,12751,16266,5113,57054,57054,57054,57054,50098,2404,34593,63623,57054,57054,57054,57054,63304,2170,65206,18463,57054,57054,57054,57054,54824,8886,63400,47442,57054,57054,57054,57054,38880,2266,60688,13813,57054,57054,57054,57054,48872,16499,14;'
Number of bytes read: 1352
gpib status is:
ibsta = 0x2100 < END CMPL >
iberr= 0
ibcntl = 1352
You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
send group e(x)ecute trigger (device only)
:
Thanks for helping with substitutes. I'm confused on the importance of brand (i.e Nichicon) and ripple. (Nichicon UPW vs UCA). Do these factors matter? I'm reading some mixed information.
Thanks for helping with substitutes. I'm confused on the importance of brand (i.e Nichicon) and ripple. (Nichicon UPW vs UCA). Do these factors matter? I'm reading some mixed information.
hi all. I was trying to understand how to measure the ripple for chart 5-1 in the service manual. Can someone please explain the difference between total p-p ripple and 2x the line frequency p-p ripple and how each is measured. I have a 20MHz analog scope I was going to use with a 1x probe grounded to the chassis set to the settings in the manual below Table 5-1. Also I'm a bit worried about the Tek scope overheating, especially U800. I've read warnings against running the scope with the cover off for extended periods, but this check requires that you let the scope warm up for 20mins plus the time needed to perform the checks.
For a temporary battery attachment point, any ground on the card will do for the battery negative, and the battery positive should go to any point connected to the SRAM Vcc. The link you posted before from Jestine shows two possible points that would work.
For a temporary battery attachment point, any ground on the card will do for the battery negative, and the battery positive should go to any point connected to the SRAM Vcc. The link you posted before from Jestine shows two possible points that would work.
Don't forget to put a small 1N4148 diode in series with the temporary battery, just in case to avoid any current going into that battery while the main lithium battery is still connected, or the power of the instrument is still turned on.
hi all. I was trying to understand how to measure the ripple for chart 5-1 in the service manual. Can someone please explain the difference between total p-p ripple and 2x the line frequency p-p ripple and how each is measured. I have a 20MHz analog scope I was going to use with a 1x probe grounded to the chassis set to the settings in the manual below Table 5-1. Also I'm a bit worried about the Tek scope overheating, especially U800. I've read warnings against running the scope with the cover off for extended periods, but this check requires that you let the scope warm up for 20mins plus the time needed to perform the checks.Total p-p ripple is letting the measuring scope trigger on whatever it finds and you can measure the p-p on the resulting waveform. To measure twice the line frequency, you need to synchronize the scope triggering to the incoming AC line by selecting LINE trigger. Basically you're looking for variation of two peaks spaced 120Hz apart to make sure there's no major imbalance between the positive and negative peak of the incoming AC after it's been rectified.
About keeper battery replacement.
I was worrying about this 37 year old battery (dated 1987). So have bought new chinese one, manufactured 2023.
But when measured the voltage, both old and new battery measured 3,5V (within few of 1/1000 tolerance).
Who knows which battery will fail first or maybe last for the next 30 years?
This chemistry lasts 100 years in theory, but manufacture culture makes difference in practice.
So, the solution:
Attached new battery without detaching the old one. Each battery is connected via own diode and resistor, so these are isolated from each other.
No need to take the board off and de-solder, no risk of loosing calibration. Double reliability.