The following warnings occurred:
Warning [2] Undefined array key 141700 - 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 141775 - 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 141784 - 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 141793 - 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 141803 - 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 141815 - 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 141820 - 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 141831 - 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 141832 - 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 141833 - 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 141879 - 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 141906 - 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 141930 - 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 141820 - 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 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 141815 - 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 141832 - 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 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 141930 - 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





HP20B low battery warning doesn't work



#7

Greetings,

I posted most of this on comp.sys.hp48, too. I thought I'd include it here to see if anyone else can shed any light on this problem.

My original HP20B, and a replacement 20B sent by HP Calculator Tech Support, fail to give any indication that batteries are too low to sustain the calculator.

I have two sets of batteries: new ones and almost-depleted ones.

On both 20Bs, the almost depleted batteries are so low that pushing certain buttons will reset the machine, but the battery low indicator never comes on. The two almost-depleted batteries each measured 2.67V, and the new ones 3.25V. I used a Fluke model 45 bench DVM for the measurements. Both 20Bs work fine with the new batteries.

The question of firmware version came up.

I couldn't find any documented way to find the firmware version, but after a little playing around, I figured it out. Here's how to do it:

With the 20B off, hold down the PMT key. Then, press the ON/CE key. Finally, release the PMT key. This will put the 20B into test mode.

When in test mode, use the scroll up/down keys to select the mode or data field display. To enter a mode like "Test Keyboard" or "Test Screen" modes, press the INPUT key and then hit various keys to see results.

Anyway, by scrolling in these test modes, you can see various bits of information. Here's what I found for the two 20B calcs that do not display a low battery warning with known-crummy batteries:

Old 20B (original purchased 7-17-2008):
SW Version = 6 24 2008 2
Checksum = 213.213
Test Battery = 2.900

Replacement 20B (received 10-10-2008):
SW Version = 6 16 2008 1
Checksum = 34.034
Test Battery = 2.900

Also, when I put in the almost-depleted batteries, I get:
Test Battery = 2.200
but I have to make several attempts to get into this mode because the 20B keeps shutting off in the middle of these attempts.

So,

1) It looks like the replacement 20B has older firmware than my original (if I'm deciphering it properly).
2) The 20B seems to be able to read the battery level relatively accurately, and I can see the low battery indicator icon lit up when I get into "Test Screen" mode.

I'll be contacting HP, again, with this new information. The problem may simply be in the firmware.

I see, here:
http://hpwiki.fatcity.com/doku.php?id=20b:firmware_versions
that there is a "v7.21.2008" version of firmware.

Has anybody got this version, and if so, have you ever seen the low battery icon light up when it's supposed to?

Thanks,
Bob


#8

Hello,

One question, did you deplete the battery by using the calculator or outside?

The low battery indicator comes up if the battery are detected low for 100 keystrokes (this is on order to avoid the indicator turning on and off all the time when it's 'on the limit' between too low and good enough).... Are you just putting the low battery in and then trying to use the calculator for a bit, or are you leaving them in for a while...
Obviously, if all you are doing is placing already bad battery in the calc and doing a quick test, the low battery warning will not come up because you are not 'pressing enough keys'...

basically, what it boils down to is: if the battery deplete in the calculator from use, you should see the low battery sign coming up (and if it does not, then I am verry interested in trying to figure out why), if you are just placing already bad battery in the calc, and it does not come up after a short test, then it's 'normal'...

cyrille


#9

Cyrille:

Thanks for your ever-interesting answers. While I don't have a 20B yet, the open platform approach is most attractive!

With regard to the low-battery issue: Why (just curiosity) did you take the 100-keystroke approach, instead of some kind of software-based hysteresis or filtering? For instance, reading the voltage and adding it to right-shifted previous value, works as a low-pass or integrator filter. And; are also 100 keystrokes needed to reset the low-battery condition after changing the batteries?

Final question: When you use a SDK to put new firmware in the 20B, could you invoke the built-in functions from your firmware; or are you working just with the calculator hardware and without the original firmware?


#10

Regarding the last question:

You get basic routines for some housekeeping functions, but there is no 20b "rom" included.

If you want a natural log function, you build it yourself.

It really is a develop what you want from scratch approach. No source code for the 20b rom.


#11

I expected for documented entry points to call ROM routines (it is not needed to publish source code), but it seems it's not so.

Could you just simulate keypresses while keeping 20B ROM?

Thanks!!

#12

Quote:
Hello,

One question, did you deplete the battery by using the calculator or outside?

The low battery indicator comes up if the battery are detected low for 100 keystrokes (this is on order to avoid the indicator turning on and off all the time when it's 'on the limit' between too low and good enough).... Are you just putting the low battery in and then trying to use the calculator for a bit, or are you leaving them in for a while...
Obviously, if all you are doing is placing already bad battery in the calc and doing a quick test, the low battery warning will not come up because you are not 'pressing enough keys'...

basically, what it boils down to is: if the battery deplete in the calculator from use, you should see the low battery sign coming up (and if it does not, then I am verry interested in trying to figure out why), if you are just placing already bad battery in the calc, and it does not come up after a short test, then it's 'normal'...

cyrille


Cyrille,

Your response is truly appreciated. It has inspired me to do some testing. Here are my results.

I hooked up an external power supply to my original 20B ( firmware version 6 24 2008 2).

When the voltage was set to 2.35V, no matter how many keystrokes I typed, the low battery icon never lit.

When the voltage was set to 2.16V, after about 100 keystrokes, the low battery icon did turn on. When I hit OFF and then ON/CE, the icon remained on.

When the voltage was set to 2.00V, the 20B would not turn on.

I also measured the current drain:
20B off - about 100uA.
20B on but no keystrokes - about 244uA.
20B on with rapid keystrokes - about 4600uA.

Per two separate CR2032 battery datasheets, the expected life (down to 2.0V), with 100uA load, would be about 2000 hours. Since there are two CR2032 batteries in parallel, on the 20B, the expected shelf life would be about 4000 hours (not quite 6 months).

So, yes, the 20B low battery icon will come on under the right conditions (in the lab). However, I truly believe that in the real world, the low battery icon will never get a chance to work. This is because of two factors:
1) the increasing output resistance of the batteries as they deplete.
2) the large difference in idle vs operating current (during keystrokes) on the 20B.

The 20B's detection circuitry/algorithm will never get a chance to activate the low battery icon because when the batteries are getting low, the large delta V caused by the large delta I, due to high battery source impedance, will cause the 20B to completely reset.

It seems that, with a little work, the algorithm can be changed to allow the 20B low battery icon to work properly.

Bob


#13

Quote:

------------------
Hello,

One question, did you deplete the battery by using the calculator or outside?

The low battery indicator comes up if the battery are detected low for 100 keystrokes (this is on order to avoid the indicator turning on and off all the time when it's 'on the limit' between too low and good enough).... Are you just putting the low battery in and then trying to use the calculator for a bit, or are you leaving them in for a while... Obviously, if all you are doing is placing already bad battery in the calc and doing a quick test, the low battery warning will not come up because you are not 'pressing enough keys'...

basically, what it boils down to is: if the battery deplete in the calculator from use, you should see the low battery sign coming up (and if it does not, then I am verry interested in trying to figure out why), if you are just placing already bad battery in the calc, and it does not come up after a short test, then it's 'normal'...

cyrille

------------------

Cyrille,

Your response is truly appreciated. It has inspired me to do some testing. Here are my results.

I hooked up an external power supply to my original 20B ( firmware version 6 24 2008 2).

When the voltage was set to 2.35V, no matter how many keystrokes I typed, the low battery icon never lit.

When the voltage was set to 2.16V, after about 100 keystrokes, the low battery icon did turn on. When I hit OFF and then ON/CE, the icon remained on.

When the voltage was set to 2.00V, the 20B would not turn on.

I also measured the current drain:
20B off - about 100uA.
20B on but no keystrokes - about 244uA.
20B on with rapid keystrokes - about 4600uA.

Per two separate CR2032 battery datasheets, the expected life (down to 2.0V), with 100uA load, would be about 2000 hours. Since there are two CR2032 batteries in parallel, on the 20B, the expected shelf life would be about 4000 hours (not quite 6 months).

So, yes, the 20B low battery icon will come on under the right conditions (in the lab). However, I truly believe that in the real world, the low battery icon will never get a chance to work. This is because of two factors:
1) the increasing output resistance of the batteries as they deplete.
2) the large difference in idle vs operating current (during keystrokes) on the 20B.

The 20B's detection circuitry/algorithm will never get a chance to activate the low battery icon because when the batteries are getting low, the large delta V caused by the large delta I, due to high battery source impedance, will cause the 20B to completely reset.

It seems that, with a little work, the algorithm can be changed to allow the 20B low battery icon to work properly.

Bob


After thinking about this issue some more, I believe that there are couple of factors that will limit a 20B user from knowing that either his/her work in progress will be lost, or having a calculator that goes dead without proper warning, with the current battery-low-detection algorithm.

One factor is the relatively high "off" current drawn by the 20B that depletes these poor little CR2032 quickly. Another factor is the rapid decrease in battery voltage and its associated rapid increase in source resistance as the batteries near the end of their life.

As I recall, the 20B is shipped with the batteries installed. So, the user will most likely receive their 20B with the batteries somewhat, if not very, depleted. Even after installing fresh batteries, however, there will be a very limited time window when the batteries are high enough for the 20B to collect its 100 "below threshold" keystrokes and yet have a low enough source resistance so as not to dip below the processor reset voltage (2.1V?) during high current events (i.e. during keystrokes).

In my case (to answer Cyrille's original question), I bought the 20B new in the middle of July. I've used it sparingly since then. My first indication that something was wrong was that it had lost my RPN mode setting. So, between the time that the batteries were okay (i.e. no low battery warning) and the time it got reset, the HP-installed batteries had gone low enough to allow the high-current keystroke events to reset the 20B.

It's going to take some work to come up with an algorithm that takes into consideration the decreasing battery voltage and its associated increase of source resistance. I think that it's necessary to do because, I suspect, that you will get a lot of complaints as more 20B's are sold and used.

One good thing is that I see that the user manual has been updated so as to inform users to replace the batteries one-at-a-time (so internal memory is not lost).

If you (HP) would like me to do some more testing, I would be glad to help out.

Best regards,
Bob

#14

hello,

you should recheck your mesurements (use a multimetter), in OFF mode, I get around 4µA of current and in ON mode, with no battery pressed, around 150µA...

cyrille


#15

Quote:
... in ON mode, with no battery pressed, around 150µA ...

Cyrille:

I knew modern batteries can be "pushed" to obtain higher performances, but this is the first time I see batteries "pressed" to reduce their current output (which seems to be low enough, even without such "pressure")...

:-)

Andrés

#16

Quote:
hello,

you should recheck your mesurements (use a multimetter), in OFF mode, I get around 4µA of current and in ON mode, with no battery pressed, around 150µA...

cyrille


Cyrille,

I rechecked the measurements and included the "replacement" 20B, too. The results are interesting. I used a Fluke 87. It has a direct microamp, milliamp, and amp mode. I switched to milliamp mode when measuring current during keystrokes.

"Original 20B" CNG82300642, firmware 6 24 2008 2:
Reset current (reset button depressed) = 80uA (it drifted upwards with time).
Off current = 80uA (it drifted upwards with time).
On current = 230uA.
Keys depressed = about 9mA peak.

"Replacment 20B" CNG82600547, firmware 6 16 2008 1:
Reset current (reset button depressed) = 4uA.
Off current = 4uA.
On current = 150uA.
Keys depressed = about 10mA peak.

So, the original 20B may have about 76uA of extra leakage. I can't imagine this is firmware related since the reading doesn't change even when the reset button is being pushed. It's probably a leaky supply capacitor.

Also, on the "replacement 20B", the low battery icon did come on (after 100 keystrokes) with the supply set at 2.3V. Then, I increased the supply to 2.9V. The icon turned off after an additional 100 keystrokes were pushed.

I still maintain, however, that the low battery detect algorithm won't work reliably with real batteries. When a CR2032 is outputting in the range of 2.3-2.6V, it's on its last breath. Its source impedance is very high (per the Energizer data sheet), so the output voltage (under load) will be very shaky and it will be susceptable to causing a calculator reset before it even gets a chance to count 100 keystrokes.

Thanks for listening,
Bob

Edited: 13 Oct 2008, 12:54 p.m.


#17

hello,

Quote:
I still maintain, however, that the low battery detect algorithm won't work reliably with real batteries. When a CR2032 is outputting in the range of 2.3-2.6V, it's on its last breath. Its source impedance is very high (per the Energizer data sheet), so the output voltage (under load) will be very shaky and it will be susceptable to causing a calculator reset before it even gets a chance to count 100 keystrokes.

so, what do you propose we (I) should do? I can increase the threshold, I could also put the battery detection at the end of the execution of the keypresses (when it has run at 30Mhz for a while), I could change the threshold, change the number of keypresses...

regards, cyrille


#18

Quote:
hello,

so, what do you propose we (I) should do? I can increase the threshold, I could also put the battery detection at the end of the execution of the keypresses (when it has run at 30Mhz for a while), I could change the threshold, change the number of keypresses...

regards, cyrille


Cyrille,

I'll reference the Energizer datasheet for a CR2032 battery:

http://data.energizer.com/PDFs/cr2032.pdf

If you look at the lower right chart, at a pulse current (red curve) of 6.8mA (per cell) the voltage starts to decrease rapidly and the internal resistance starts to increase rapidly at 2.5V. This corresponds to a used capacity of about 215mAh. The shape of these curves will be similar for two parallel batteries, too.

So, what I would do (as you implied) is to take the measurement at the last possible moment during the high current event. This will insure that the contribution of the power supply capacitors to the net supply current is minimal, and so you'll be reading the worst-case supply voltage. I would include POWER ON as one of these detection events (if possible).

Then, I would declare LOW BATTERY after only a couple of readings below the threshold. Perhaps 2.5V is a good number. I would clear the LOW BATTERY flag after a couple of successive readings above, let's say, 2.8V.

Also, it would be interesting to see what other HP calculators do. I've always had ample warning on my 32SII. Never a problem on my 48GX. Same with my 50G, 42S, 41CX, 67, 35, 12C, 9825T (oops, it's only line powered), and at least six other models.

Again, thank you for your interest in the matter. All of us here, and many others around the world, have come to rely on HP for a quality product. I think that your responses have shown us that you want to continue this tradition, too.

Regards,
Bob


#19

Just for the record:

In the 1980s, in addition to trying to interface my HP41C, so to output some data in the form of pulse trains via the buzzer and TONE instructions; I also tried to get one bit in, in the form of the LO BAT flag. To that end, I wired a silicon series diode with the power pack. The idea was that a contact closure shorting the diode will allow for full battery voltage to enter the calculator, while opening the contact will reduce the voltage in some 0.6V, and that may turn LO BAT. I did just some unsuccessful trials, and abandoned the idea.


Possibly Related Threads…
Thread Author Replies Views Last Post
  [HP-Prime CAS] "Warning, ^ (Command) Is ambiguous on non square matrices"?? CompSystems 1 2,138 12-07-2013, 07:15 PM
Last Post: CompSystems
  emu48 - copy stack doesn't work (as expected) Thomas Radtke 2 1,923 11-11-2013, 02:19 PM
Last Post: Thomas Radtke
  Another Prime mystery - templates don't work anymore Michael de Estrada 2 1,306 11-02-2013, 11:34 AM
Last Post: Michael de Estrada
  Does the HP Prime software only work with Win 7/ 8 ? Michael de Estrada 3 1,612 10-12-2013, 02:52 PM
Last Post: John Ioannidis
  Very low Price of HP Prime? Harold A Climer 14 3,896 10-10-2013, 01:51 PM
Last Post: Frank Boehm (Germany)
  Low battery slow mode Marcel Samek 4 1,560 09-18-2013, 02:02 PM
Last Post: Harald
  Flash Flood Warning: 9/16/2013 (One Week from HHC13) Eddie W. Shore 8 2,793 09-17-2013, 09:20 PM
Last Post: Craig Ruff
  Low power warning for HP-15C LE and batteries Nick_S 1 1,380 09-16-2013, 09:34 AM
Last Post: Hans Brueggemann
  Back to School/Work/Other Calculator Poll Eddie W. Shore 63 16,065 09-12-2013, 06:03 AM
Last Post: bhtooefr
  Anyone got a 39gII and doesn't mind memory loss? bhtooefr 4 1,709 05-19-2013, 03:57 PM
Last Post: bhtooefr

Forum Jump: