The following warnings occurred:
Warning [2] Undefined array key 19832 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19842 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19846 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19847 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19853 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19873 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19874 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19875 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19890 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19895 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19896 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19907 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19912 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19913 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19920 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19925 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20308 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20313 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20316 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20330 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20331 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20334 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20335 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20338 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20340 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19846 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19875 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20340 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20331 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 20338 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 19925 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





HP9810 keyboard fault



#26

I've got a fault that I can't see how it could occur. A few of the keys on an HP9810 keyboard are intermittant (they work better if pressed hard). Of course this is a contactless keyboard, so it's not just dirty contacts.
I think I understand how the keyboard should work. Each key is really a transformer, with 2 windings made from PCB tracks. Pressing a key brings a 'core' close the tracks, increasing the coupling. The secondaries of all the transformers are wired in series to form the 'sense loop' that's connected to the encoder board.
The primaries of each pair of keys differing only in the LSB of the keycode are also connected in series (but one of the transformers is wired to invert the phase of the output pulse -- that's how they are distinguished). The 37 pairs of primaries are then wired (with a diode in series to prevent sneak paths) in 37 locations of a 10*4 matrix. This matrix is scanned by the encoder board electronics.
OK, the problem is that a few keys don't work. They're not all in the same row or column of the matrix. They're not even in pairs in the same matrix location (which would tell me to check the associated diode and/or the primary tracks). They're random. And it's not the key plungers or the 'cores' -- swapping those round doesn't help -- the same locations on the PCB still fail.
I've even tried cleaning the PCB surface -- no change. I don't see how it can be open-circuit connections as that would take out more than 1 key always. And, yes, it's not a firmware problem causing the machine not to recognise certain keys -- there is no key-pressed signal from the encoder board when a faulty key is pressed. I am running out of ideas, can anyone else suggest anything?


#27

Okay, so I don't know one blessed thing about a 9810. But here's my 2 coppers worth:

Stupid question:

Do you have access to a working 9810?

Answer = No: Sorry, out of ideas.

Answer = Yes: On the good 9810, get out your trusty oscilloscope. What is the frequency, pulse width and amplitude of the signal on the primary side of the keyboard trace? Compare these values to the unit that is not working. What is different? I'll bet you'll find something here. Probably the amplitude or rise time. I'm sure it will be a time domain problem since we are strictly AC here. As you say, totally random.

Since it is really a variable transformer based on your description, the faster the key comes into proximity with the traces, the faster the input to output coupling, hence the change in behavior when you press hard.

Sorry if you've already been there, done that. But I would like to know what you find wrong. Curious I am.


#28

As a follow up to my previous post, I really think this is some type of pulse width or amplitude problem. My rationalization:

If a key press is by way of coupling a pulse from one matrix line to another, the keys "transformer" must develop magnetic flux in order to pass the current. The rate at which the transformer develops this flux is affected (to a very small extent) by the speed at which the key is pressed. Ideally, when the unit is working properly, speed is not an issue as there is sufficient voltage to induce flux and perform the pulse coupling. But in the case of this unit, if the voltage supply is low, or varying, the rate at which the iron core approaches the pulse can make a difference. It is the rate of rise in the induced current that causes the flux to reach a point where coupling can occur.

I think it comes down to a case of (dv/dt). We don't have it on the (v)oltage side, but by decreasing the (t)ime side the key works. I think.

#29

Tony,

I don't have any clues at the moment to help you out but I do have a working 9810 and high-quality test equipment. Let me know what measurements I can make on mine that will help you to diagnose the problem further.

-Katie


#30

Thanks for the offer. Let me make a few more tests on mine to attempt to narrow down the area, and then I might well ask you to check a few signals on the board in your machine. Of course anything I discover will be reported here.

#31

No, I don't have a working 9810... But I do intend comparing waveforms between the defective keys on this keyboard and the good ones. I hope to see something a little marginal.
Incidentally, when I said 'press the key hard' I meant hard, not qquickly. For the good keys, I can press them as slowly as I like, and they 'make' with the key a mm or so from the PCB. For the defective keys, I can press them down the PCB with no effect, but if I _really_ press on them (from that position) then they often work. Hitting them fast has no effect.
Which is to be expected. The primaries of the 'transformers' carry a repetitive pulse waveform and it's _this_ signal that needs to couple to the secondary/sense loop. If the keys were magnets and were trying to induce a voltage in a single winding then, yes, I would expect how fast I pressed the key to have some effect.


#32

Tony, the fact that the keys work if you "_really_ press on them" makes me wonder if it couldn't be hairline cracks in the PCB traces. Does the PCB deform under pressure?

Best,

--- Les [http://www.lesbell.com.au]


#33

Yes, I thought of cracked traces. The only problem is, the 'primary' of a defective key is in series with that of a 'good' key, and _all_ the 'secondaries' are in series. So a simple open-circuit trace would not accound for the odd defective keys I have.
You'd have to have a crack that was noramlly closed, opened as soon as you started to press a 'defective' key, then closed again under hard pressure.
While not impossible (bad connections do the most amazing things!), I am hoping there's a simpler explanation.


#34

Since none of the low-level component testing indicates a problem with the keys or the circuit board, what about looking for something higher-level and subtle. How about noise on one (or more) of the power supply lines. Those old filter caps don't last forever, and that can cause all sorts of weird behavior like you’re having. Alex Knight found that to be the problem in his (and my) HP-46.


#35

A few weeks ago I was asking about a 9810 keyboard that had 3 keys that only worked if pressed hard. Today I was able to spend some more time on it. In the meantime I've read the HP journal articles on the 9820 (same design of keyboard) and discovered that the
'core' doesn't increase coupling between the 'windings' when the key is pressed. In fact it acts as a shorted turn and reduces the coupling. Normally equal-and-opposite pulses are induced in the 2 transformers at each matrix location when that location recieves a current pulse in the primary windings. These induced pulses cancel out, so nothing much gets ot the comparator. But when a key is pressed the pulse from that key is reduced, so the pulse from the other key at that location trips the comparator. Interesting, but I didn't see how it would help trace the fault.
The idea of supply line noise was certainly reasonable. But this time it wasn't the fault. The supply lines all looked 'clean' and extra decoupling didn't help.
At this point I decided to investigate the compatator. I discovered that _all_ keys provided a reasonable pulse in the sense loop, even the dead ones. There were variations between the keys, and yes, the dead ones were on the low side, but this seemed to indicate that the keyboard matrix and drivers were fine. I did notice that all the faulty keys had even-numbered keycodes, which means they all involved the same half of the LM711 dual comparator.
A few tests showed the voltages were reasonable. So I followed the advice I gave somebody else here a few weeks back and gave it a shot of freezer spray. Many more even numbered keys died also. And upon warming it up again, the keys all started working, and in fact the dead ones got better too.
The only problem is tha the LM711 seems to be unobtainable now. The fact that I need a TO100 10-lead metal can version just makes life more difficult.
However, replacing the 2 22k1 resistors near this chip with 33k ones has helped. The keys seem to work reasonably well now. I don't know how long it will last (presumably the LM711 will just get worse), but at least I now think I know what the fault is.


#36

True the LM711 is no longer made but it's easy to find the commerical temperature version ("C" suffix) in the 14 pin DIP form. The DIP form of this has the same pin ordering as the metal can, pins 1,7,8 and 14 are not used. It should be easy to extend each lead stright down into the circuit board -- there won't be any crossovers. Look for LM711CN on the internet. Here's one place that has them for $.49 each:

http://www.goldmine-elec.com/images/Pages016-019.pdf

If you the need the pin-outs on this let me know.


#37

Thanks for the info. Of course it'll probably cost me a _lot_ more than $0.49 to transfer the money, and to have the part shipped, etc. Still, it won't be too expensive in the end. But I'll explore my own junk box a bit more first, I've got all sorts of things
in there... As regards pinouts, I have 'Towers International Op-Amp Selector' (admittedly an old edition, but it doesn't matter for this). It lists just about
every op-amp and comparator ever made, with 1 line of characteristics and pinouts. All versions of the LM711 are in there (I have checked).
So yes, I'd have no problems kludging in a DIL version if I have to.


#38

Here's another (better?) option. Use an LM319H as a replacement. It's what National Semi recommends and it's still available in a TO-5-10 (like a TO-100) case. It has two separate open-drain outputs instead of a common output like the LM711, but because they're open-drain they can just be tied together and it should work identically to the LM711. What are missing on this are the strobe inputs, it has independent grounds instead, but I don't know if the 9810 is even using those. The only other issue is that you’d have to cross over two pins to math the ordering of the LM711. Digitkey has them for $3.00 is single quantities and I’m sure that there’s a vendor in the UK that has them too.


#39

I had considered using the LM319/393/339 comparators. Unfortunatelty the 9810 _does_ use the strobe inputs, which makes life a little harder. I mentioned that there were 2 keys at each matrix location, one which causes an in-phase pulse to be generated, the other which causes an antiphase pulse to be generated.
The 2 stions of the LM7111 are connected (using a pair of indentical resistor chains and a centre-tapped pulse transformer) so that one triggers on the in-phase pulse, the other on the antiphase pulse.
There is a 7 bit keyboard scan counter (I'll number the bits 0-6). Bits 1 and 2 select one of 4 rows in the matrix of keys. Bits 3-6 select one of 10 rows. Which leaves bit 0. You guessed it, the state of bit 0 determines which comparator is enaabled via the strobe inputs.
When the comparator triggers, it triggers a monostable. This stops the scan counter and tells the CPU that a key is pressed. Since the counter is stopped, the pressed key is always selected and keeps on seeing current pulses in its primary, Therefore the compaarator keeps on triggering, the monostable is retriggered, and the counter says stopped.
When you release the key, the counter starts running again.
So yes, the strobe inputs are essential. It would be possible to use a 319 or similar with external circuitry to gate the output, but I'd rather not have to.

#40

Regarding the transformer coupled keyboard, in a slightly related way, I've got an HP3480A nixie tube digital voltmeter which has BCD outputs and remote control inputs which are isolated with transformer coupling. The transformers are implemented with ordinary axial lead inductors. The hot side "windings" are all on one PCB and the other side on another PCB. The inductors are laid out so when the PCBs are in place, they are close enough together to couple. To achieve the required spacing, or for other mechanical reasons, the PCBs are so far apart that the inductors on one side have long leads holding them up off the PCB. To reduce the number of transformers required, some logic serializes several bits to one transformer, then de-serializes them on the other side.

I have another much more recent meter, HP3456A, which also uses transformer coupling between a guarded (mostly) analog chassis and a digital display and I/O chassis. HP uses the terms "inguard" and "outguard". In this case, each end has two toroidal inductors mounted on the PCB. A four wire harness goes from one PCB to the other. The two pairs of wires go onto the PCB at each end but each pair only connects to the ends of a short length of wire that passes through a toroid as a one turn winding. The signaling is like HPIL in that each channel transmits in one direction. It is like the IBM PC keyboard in that one start bit plus eight data bits are transmitted and the receiver is a 9 bit shift register, when the start bit reaches the ninth flip-flop, the output interrupts a microprocessor to read the data bits. But where the PC keyboard has a separate clock signal, this circuit recovers a receive clock from the serial stream. There is an edge for every data bit because a pulse of one polarity is transmitted for a "1", and the opposite polarity for a "0". This is similar to the "Manchester encoding" used in Ethernet where the goal is to achieve a zero DC level, which is also part of the reason for "eight-to-fourteen" encoding used in compact disk. By using 14 code bits for 8 data bits, they accomplish run length limiting and have leftover bits (or redundant codes) which are selected to bring the DC average to zero, which is important for the IR receiver.

Just thought you'd like to know!

I'm going to try making a switch from your description of the 9810 keyboard. In high school I built a project that worked on the principle of a shorted transformer secondary. It was a length of 1/4" steel rod bent into a large "U". At each end was a coil of about 100 turns of #20 wire. The "U" was attached to the top of a box with the ends pointing down. A short length of aluminum tube (I used the can of a small electrolytic capacitor) circled the steel rod, free to slide from one side to the other. A motor driven switch energized the coils alternately with about 24 VAC. When the coil under the aluminum tube was energized, the tube would fly to the other side. Another electromagnet project I have plans for, but haven't built, although I have seen one in operation, has an solenoid-type electromagnet mounted on a horizontal support, the coil vertically oriented so the pole is looking down on an open space. A photocell is mounted on a vertical support which is holding the horizontal support. The photocell controls the current to the electromagnet so that the current is in direct proportion to the light hitting the photocell. There are two control pots: one controls the overall gain, and the other controls the response time, from the photocell to the coil. You place a light source so it illuminates the photocell with light passing inder the electromagnet. Now that it's all built, you hold a light steel object, supporting it from the bottom, under the coil so that it is partially blocking the light to the photocell. The perfect object is the tiny globe that comes with a pencil sharpener. Then you adjust the gain till the electromagnet lifts the object, which reduces the light on the photocell, which lowers the drive to the electromagnet. By adjusting the controls you can make the object float. Then you can set it spinning and it will spin for quite a while. I imagine eddy current are what finally slows it down, since it is moving in a magnetic field. With the gain control you can move it up and down a little. With the delay control you can make it bounce up and down a little.


#41

Many older digital voltmeters had transformer-isolated input stages. My old Solartron has a VCO (as a frequency-to-voltage converter) in the input module, the output of which is transformer coupled to what is effetively a frequency counter (!). But my somewhat more recent Fluke (but still old enough to have a pair of 4040's to control it) had optoisolators on the 'guard crossing PCB'.
Getting back to transformers, have to seen the pulse transformers in the HP9100 ROM assembly (just to bring this back on topic). The inductive sense loops from the ROM PCB itself go via PCB pins to the sense amplifier PCBs. On those PCBs there are just tracks to complete the loop (i.e. the pins are just joined together). But round one of the pins is a little torroidal core with a secondary winding on it, the ends of which connect to the sense amplifier. Yes, the PCB pin is a
single turn primary. Neat! (but then so much of the 9100 is).
If you want to make a 9810-like keyboard, then start by reading the HP journal articles on this site (including the ones on the 9820). There is some information on how the keyboard should work there.

#42

Ellis:

Look for Popular Electronics magazines around 1974 or the "Electronics Experimenters Handbook" from the same PE editors, and you may find an example of your magnetically suspended earth globe... I am not sure about the exact issue it appeared in.

Thank you for a nice reading about electronics, coils, etc.


#43

Yes, the plans I have are from a magazine article, probably the same one - that's about when I was in high school!

#44

Tony: I don't know the 9810, but the keyboards of similar equipment of the date were capacitive-coupled instead of magnetic (transformers) as your posting implies. I am just guessing, once again, but I suggest you may check whick kind of coupling is used in this case.


#45

I've worked on plenty of capacitive keyboards (mostly Keytronics) to know how they work and what the PCB traces look like. Typically you 'scan' one plate of the 'capacitors' and look for voltages on the other plate. I've seen this done with TTL and 4000-series CMOS chips, I've seen it done with a variety of ASICs.
The HP9810 keyboard is _nothing_ like that. Under each key are 2 spiral 'windings'. One is connected between the Row and Column scan lines (I gave more details of exactly how in my original post). The other is connected to the input of a comparator (LM711) via a pulse transformer. I am _sure_ the key operation is inductive not capacitive.


#46

Tony: I knew you are very well qualified about hardware and many times I enjoyed your detailed descriptions. I was puzzled about the "inductive" coupling keyboard, but please don't take my previous suggestion as disrespectful.


#47

Tone-of-voice doesn't come across very well in this forum :-). I was not being disrespectful at all. But I am sure it's an inductive keyboard and I wanted to save other people from wasting their time by making suggestions appropriate to the capacitive type.
Anyway, I spent a little more time on it this afternoon. It _is_ certainly inductive, and the 'windings are wired in series as I suggested before. This pretty much rules out an open-circuit connection. The diodes on the keyboard PCB (09810-66533) all test fine on my meter, but that's just a forward voltage test, so it's not certain that's not the problem.
Now for the interesting bit. I reversed the phase of the sense loop by swapping over the 2 wires in the red/black twisted pair on the encoder PCB. This should swap over the 2 keys at the same matrix location (in other words, the '1' key should send 0, the '0' key should send 1, the 'sub/return' key should do sqrt(x), etc.
I wanted to see if the fault moved to the other key, Now for the _strange_ part. The faulty keys start working (both 0 and 1 work, although they send the 'other' digit, for example when '0' didn't work before), but other keys, in unrelated locations, then fail. All I can tell you is that swapping the pair back again got the original fault hack, which is good in a way. At least it's not random. Oh well, mort things to think about.


#48

Tony: Certainly tone of voice doesn't come across very well, and perhaps my case is worse because of idiomatic issues. In my previous message, I was trying to apologize, I tried to mean I may had been inadvertedly disrespectful to you without such intention.

I do respect your skills, and also know from your previous postings you have been extremely kind to others. My guess about "capacitive", while well-intended (I worked with such keyboards too, and also found some with Hall-effect switches!), was clearly wrong.


#49

Hey you, guys!

I sometimes amaze myself with posts in here. Reading Andrés' and Tony's posts brought me back to a time when men respected each other in such a manner they would feel embarrassed if misunderstood. That's the spirit that maintain this forum a place to stay all over. Good readings.

Tony, Andrés (I read some news about Argentina; are you alright?); is there anything about inductive, capacitive coupled keyboards that can be found at Internet? I am a lot curious, and all info in your posts teased me.

I have been dealing with rubber, membrane kbd solutions, and I do not know about capacitive and inductive ones.

Thanks for any info.


#50

Luiz:

Thank you for your comments. I agree one of the pleasures about this site is that most of the people here are true gentlemen and ladies (should we say gentlepersons?).

I have not detailed information about the inductive or capacitive keyboards, the latter consisted in a printed circuit board where there were islands of copper (usually covered with an antisolder mask or such). The space beneath each key formed two semicircular islands, which will become "capacitively" copuled when the key travelled down. The bottom of the key included an aluminum foil (usually attached to the plastic by means of a plece of plastic foam). When this foil approaches the PCB islands (there was no electric contact), these become coupled. I suppose specific ICs apply signals to scan the keyboard and to detect the signals from the "sense" side of each key.

About the situation here (and certainly I will not discuss anything political or controversial in this Forum), I may say usual life goes on; we look awful in international TV news, but not everything goes that bad. We have deep economic problems, and our international purchase power decreased to 25% from usual, just in a few months. There are usually peaceful protest marches and a very large underemployment. Many qualified professionals are going to work overseas. I hope things will improve in a couple of years, but only after a societal agreement which is still insufficient. There is a wrong tendency here to blame external factors (which may exist indeed); I think we should stop such blaming and start working to solve our own problems.

In the meantime, tourism is almost incredibly cheap from anybody coming from other countries, so all you are welcome!
Apart from ski centers, beaches, whale sightseeing, city life and falls (just to mention some touristic options), HP 20S, 17Bii, 48G+/GX and HP 49 are still available here. By the way, the 48 models are cheaper than a 12C (!)


Possibly Related Threads…
Thread Author Replies Views Last Post
  HP 32sii Fault Carlos Estinos 9 2,781 09-26-2013, 01:06 PM
Last Post: Csaba Tizedes (Hungary)
  Hp 71b power fault Sean Connor 1 865 09-25-2009, 11:46 AM
Last Post: Bart (UK)
  HP 41CV intermitent fault Nigel Bamber 3 1,286 04-20-2009, 01:12 PM
Last Post: Geoff Quickfall
  HP97 fault Michael Tortorella 12 2,766 09-13-2007, 04:46 PM
Last Post: Chan Tran
  Suggestions for making an HP9810/9820 printer platten Tony Duell 15 3,599 02-07-2007, 11:29 AM
Last Post: achimgermany
  HP34C Fault Mike T. 4 1,203 01-06-2006, 12:53 PM
Last Post: Mike T.
  HP33S TTF: missing character... My fault! Vieira, Luiz C. (Brazil) 0 633 09-05-2005, 01:03 PM
Last Post: Vieira, Luiz C. (Brazil) - not logged
  My greatest programming fault [OT] Tizedes Csaba [Hungary] 13 2,772 05-03-2005, 02:51 AM
Last Post: Palmer O. Hanson, Jr.
  HP9810: printer and card reader required for function? Thomas Falk 17 3,439 08-23-2004, 02:38 PM
Last Post: Tony Duell
  HP9810 schematics on museum CD? marais 3 1,120 05-07-2004, 02:18 PM
Last Post: Tony Duell

Forum Jump: