A Real-World Notebook Battery Test

Thumper II is platform-independent: If a portable can be programmed and it has a serial port, it can be thumped

Howard Eglowstein, December 1992

BYTE's laptop battery tests used to be simple--turn on the laptop, wait until the battery dies, and record the elapsed time. Although BYTE was among the first to begin a formal battery-testing program as part of its portable-system review process, we realized that the battery test just didn't reflect the way people actually used the systems. For example, while sitting in an airplane, people may type for a bit on a machine, turn it off when they're served that sumptuous airline food, and then turn the power back on afterward.

Along Came Thumper II

The prototype for Thumper II, BYTE's automated battery tester, was finished in early 1991. Self-contained closed-loop servo motors, attached to multijointed flexible wooden arms, press on the laptop's keys via flexible cables. The control circuitry provided the pulse-width modulation the motors required and support for an optical-sensor head to read screen status. The Thumper II prototype could handle four motors at the same time and was designed to test two machines simultaneously. (Thumper II first appeared in the text box "Testing Battery Life" on page 252 of the December 1991 BYTE.)

For the production version, I replaced the prototype's dedicated pulse hardware with a microprocessor and increased Thumper's capacity from two machines to eight. The controller cabinet is a rack-mountable box with 33 front-panel connectors and an LCD (see the photo). Thumper II's heart and soul is an 8-MHz 6809 processor with nine serial ports and interface circuitry to control 16 servo motors and read from eight optical sensors. The muscle to press the keys comes from 16 redesigned arms.

During testing, one arm handles the notebook's Enter key, and one or two more arms use the standby/power function to reactivate the notebook if it shuts itself off. The system determines the notebook status by watching the screen with one of the optical sensors. Power for the arm's mechanical finger comes from a closed-loop servo motor linked through a flexible cable.

The notebook being tested runs a control program that simulates the load a word processor puts on a computer during normal use. Thumper II is fully platform-independent; if you can program a portable and it has a serial port, it can be thumped.

Getting There

Thumper's new controller is a full-blown microcomputer, and putting it together required some special tools. Once I had designed the 6809 system board, I called Huntsville Microsystems, Inc. (Huntsville, AL, (205) 881-6005), and borrowed a 6809 emulator. Its system uses a PC for interface and control and connects to the target system with a ribbon cable. One critical feature of the HMI emulator is the 6809's MRDY line. MRDY is a processor input that allows a slow peripheral to extend the system clock--similar to the way IBM PCs use wait states. I needed this input to handle Thumper's slow LCD. The HMI emulator also provides multiple hardware breakpoints, symbolic debugging, and a user interface.

Universal Cross Assemblers (Saint John, New Brunswick, Canada, fax (506) 847-0681) makes a great table-driven cross assembler (Cross-32) that supports oodles of different processors. The processor support is a series of ASCII files with the processor instruction sets. If they don't support the processor you need, it's an easy matter to write your own table.

Thumper's controller cabinet is a modified version of the DataPad cabinet from Interface Systems (Williamsville, NY, (716) 634-0492). Building data acquisition hardware (like Thumper) can be tricky, so I brought Interface Systems onto the design team. I contracted the system board layout and mechanical development to the company's engineers.

I uncovered only one serious problem during Thumper's shakeout testing. The original design used a self-clocking circuit to mimic the function of the dedicated pulse generators I used in the Thumper II prototype. The idea was to have the processor load up a memory array with the pulse-width information and then let dedicated hardware take over. It was obvious there was a timing glitch in the system, but I didn't have a clue where to look first. I turned to BYTE's HP 16550 Logic Analyzer. I connected 60 of its logic probes to key parts of the system board and told the analyzer to look for problems. Five minutes later, the HP 16550 stopped and displayed the culprit.

A Design for the Future

Thumper II is about as close as anyone has been able to get to a real-world battery-life test. It allows for notebooks of any size and shape and for efficient use of standby mode on 386SL processors. It does all this with a single control computer for eight notebooks.

As pen-based computers become available, I'll design new battery-life tests for these machines. I've got an actuator design on the drawing board with three motors for x, y, and z control, and Thumper's firmware already supports it. You won't see effective pen-based testing from any solenoid-based designs. We also plan to use Thumper's optical sensors for further automating Windows and other GUI-applications testing in the Lab.

Howard Eglowstein is a BYTE Lab testing editor who has developed microprocessor systems and firmware since the 1970s. You can contact him on BIX as "heglowstein."