送袋春畀你

之前去日本玩喺AEON見到包咁嘅薯片:

成包「春」袋!

我同朋友當場笑到翻肚,我估其它人肯定唔知我哋笑緊啲乜。買咗包返嚟美國畀香港人朋友當手信。

 

11 total views, no views today

Tektronix TDS 500~800 series Color CRT adjustments

For TDS 500~800 series, a batch of CRT driver boards, color and mono, regardless of how heavily they are used, have bad flyback transformers. After turning the unit on continuously for half a day, the screen might stretch and disappear.

If you have a matching CRT driver board with a CRT tube, I recommend instead of swapping the CRT driver (seemed more straightforward), extract the flyback transformer from the donor board instead. The reason is that the adjustments needed from replacing the flyback transformer is far less than re-tuning a different CRT driver board to match the tube.

It’s impossible to tune the CRT driver board while it is in the case, since the processor board covers it during operation (unless you have special cables for the Acq/Proc interface to replace the interconnect PCB card), it’s done ex-vivo like this:

I bought a ribbon cable extender and built a 2-pin jumper extender by salvaging them from CRT driver boards with toasted flyback transformers:

The first thing to check for is the +21V which is used to generate many voltages across the board (pun intended here): it affects brightness, scale, offset and linearity everywhere. If there’s any adjustments to be made, this need to be done first.

This voltage can be tapped by hooking the positive (red) lead to the center (output) pin of LM317 (3-pin linear regulator) at U90. If you have an alligator clip instead of a grabber, you can also hook it up to ‘pin 4’, which is the body of the regulator.

You can pick many spots for the ground pin. Since I’m using a grabber, I’d pick another big 3-pin IC sitting on a heatsink for the ground lead. In this case, it’s Q10, the transistor that drives the flyback transformer. It’s the pin nearest to the short edge of the board (behind the red lead, sorry):

Here’s a picture of blank board showing how many trimpots are there:

Only the brightness and contrast dials are documented in the service manual. The rest, I had to locate them in the schematic one by one.  Before that, I kind of figured out most of them by trial-and-error but had a few of them wrong, especially the voltages (there are three: +21V, screen and HV adj.): they all have the same effect. There are also some more obscure trims like center focus and horizontal focus (variable inductor). Now I know exactly what each dial does.

It’s hell of a lot of work to figure this out. I have some new old stock CRT straight from Tektronix at Beaverton, and it’s the reserve to support customers who bought color TDS 500~800 units from me. Almost all used units out there have problems (or going to have problems soon), and so far I’m the only one selling units with 1 year warranty (extendable to 3 years for extra).

If your unit is not under warranty included when you bought from me, and want one of these new color CRT tubes with shutter, I’ll almost require you to send your unit to me for installation unless you can guarantee that you can figure it out without my help. It’s $500 full-service with the tube included. Call me at 949-682-8145.

 

6 total views, no views today

Switching oscilloscope attenuator relays with H-bridge driver IC

One day I was working on an old first generation Agilent Infiniium oscilloscope (namely 54810A) while I was too tired and rushed, I accidentally short-circuited the main acquisition board because I forgot to reconnect the probe-compensation port pin back to the acquisition board after taking out the front-panel and putting it back: the jumper with exposed metal (the heat-shrink over it was a little short the way Agilent manufactured them) swiped over something and I heard a loud bang, the scope shuts off, and I smelled the magic smoke.

My heart sank. Just saving a few extra minutes being careful checking everything (despite I opened and closed those front panel a ten dozen times) I thought I lost an expensive PCB that’s almost the cost of the whole oscilloscope, and even if I can fix it, it might drain me at least a week.

Given that I know a short fried something (there’s smell). I didn’t even bother to turn the unit on again until I’ve located what fried. Turning something that you know it’s fried on again just risks further damage as it can load other parts of circuits.

Following the smell, I found a burnt IC on the other side of the board (needs to be painfully disassembled as the front panel /w BNC nuts needs to be taken out all over again), and I looked up the part number: ST L6201. It’s sitting on Channel 1’s front end section between the attenuator relay block and the ADC hybrid and there are 2 of them per channel.

Given the location of the component, it’s clearly the L6201 populated at Ch3’s slot is not used since it’s a 2 channel oscilloscope. So I transferred the chips to replace the broken ones at Ch1:

What is an H-bridge driver (L6201), that’s supposed to control motors, doing in an oscilloscope, especially the front-end section? I googled “H-bridge driver in oscilloscope” and nothing relevant turned up. Then I went back and read a little more on how an H-bridge driver is really used. L6201 is a DMOS Full Bridge Driver with four power MOSFETs (switches) that basically sends current through an inductive load (typically motor) that might have stored energy (momentum) that might need to be drained (brake) to stop faster.

Turns out it’s a slick way to drive mechanical relays in the input attenuator given the amount of due care needed to accurately manage the current demand and switch transitions. There are 3 relays in the attenuator module. I suspect up to two relays can be switched with each L6201 by placing a diode in serial with with a relay coil, and repeat it (in parallel) with the diode reversed in the other branch. Is it an overkill? Let me know in the comments section.

I also noticed, while dealing with the main acquisition board for 54615B/54616B, there is a L293D chip under the attenuator block shield for each channel. It’s a 4 channel driver with half-bridge, also intended to drive inductive loads. This one is more explicit about being used to drive relay solenoids as well as motors. So this is nothing new; It’s just not too many people talked about using it on oscilloscope architectures.

 

25 total views, no views today

MSI-based installer silent install summary

Recently I need to reorder the pre-req installation for a InstallShield installer package that has pre-reqs and MSI inside it. That means I’ll have to extract all the pre-req EXE and MSI files and write batch files to call them, then the installer again for the core software, all done silently.

I learned:

  • Administrative install (/a switch) only extracts the core firmware, not the pre-req files
  • /b”<target-folder>” extracts the pre-reqs as .prq files
  • Need to steal the extracted .exe files by monitoring temporary folder as they go
  • /s doesn’t always silent installs. Some with MSI packed inside the .exe files requires the ‘silent’ request passed to the MSI by adding /v/qn (/v passes the switch to the MSI, which is /qn, which means silent in this case)
  • .NET before v2.0 requires different switches to install without prompting for license agreement, namely
    /q:a /c:"install /q"

     

 

15 total views, no views today

Remove McAfee Enterprise Antivirus from Windows

I was asked to install McAfee Enterprise Antivirus v8.8 as a favor to somebody else’s client, turns out this piece of 5h1t is a nightmare.

After I installed the agent, the main software won’t proceed to install. I looked up error code 1603 in the MSI log and upgraded a fresh Windows XP to SP3 and updated Windows Installer to 4.5, set the time back (somebody suggested potential certificate problem) and it still fails.

Without being compensated for my time, I gave up and tried to uninstall it through Add/Remove programs. Now the uninstaller complained that the program cannot be uninstalled in managed mode. Normally, I’m quite understanding towards programmers since their job is wrestling complexities, but this time there is no excuse: if you add an item in Add/Remove programs, people are expected to be able to uninstall it directly from there by definition!

After some digging, being unable to uninstall McAfee is a known common problem. The IT-crowd at University of Oregon has written an article with the solution. It boils down to running:

C:\Program Files (x86)\McAfee\Common Framework\frminst.exe /remove=agent

I bet even stoners are more competent packaging the software for release! How much productivity across the world they have drained by shipping out an incompetent software bad as malware!

Stay away from McAfee. Won’t install it even if they pay me $8k. Refuse to service anything McAfee without charging an exorbitant sum, or you won’t make your lost time back.

 

19 total views, no views today

Python 3 Scientific Installation To-do List

Although I am a big fan of MATLAB, it’s time for me to really try out Python so I can fairly compare the pros and cons of both languages.

The first tiny hurdle for Python is its scattered installation process for Windows. I thought Python(x,y) will give me everything in one place, but turns out the Spyder is stuck in Python 2.7. To install Python 3.7, I’ll need to do it from scratch. Here are the steps:

  1. Download official Python 3 (https://www.python.org/downloads/windows/). You will need that for the “pip” package manager
  2. In command prompt anywhere,
    pip install scipy
    It might complain that {python37}/scripts is not in PATH variable, but I checked and the folder is already in PATH. Can safely ignore it.
  3. I took the advice to upgrade PIP. Can run it anywhere in command prompt
    python -m pip install –upgrade pip
  4. Now I’ll need Spyder3, a MATLAB-like IDE. Qt5 is one of the pre-req:
    pip3 install PyQt5
  5. And finally Spyder3
    pip install Sypder
  6. PyVISA is the analog of “Instrument Control Toolbox” in MATLAB.
    pip install pyvisa
  7. Turns out that only NumPy and IPython is installed with SciPy, not the entire ecosystem.
    pip3 install pandas
    pip3 install matplotlib
    If you know the power of dataset/table objects in MATLAB like I do, you’ll jump for dataframes in panadas.
  8. SymPy, the analog of MATLAB’s symoblic math toolbox, needs to be installed separately
    pip3 install sympy
  9. IPython gives the ‘notebook’ feel in Mathematica, MathCAD and Maple, where the returned results are directly pasted in the same area where your command/syntax is. I rarely cared for it because I usually want the max visual real estate for my plots.

pip does not install icons in your start menu. So I’ll need to manually create a shortcut
“{Python37}/Scripts/spyder3.exe”

.py files are not associated with Spyder3 (normally it’ll just directly run the python script with python3). I usually manually change the association in Windows to Sypder3.

26 total views, no views today

What is calibration? Hint: It is not adjustment!

Very often people doing R&D ask me if they need to have their oscilloscope calibrated. And for most of the time, my answer is no unless they need to have the NIST traceability or the calibration sticker to keep the regulatory bodies happy. They often thought it’s adjusting the calibration coefficients (or knobs) to make the unit more accurate. This is COMPLETELY WRONG.

In EEVBlog, they showed a video interview with Agilent Metrologist explaining what calibration actually does: it gives you the sample data points against trusted references about how your test instruments’ references has drifted between calibrations. Actually it’s preferable to not adjust the instruments if it’s already within specs.

 

189 total views, no views today