The following warnings occurred:
Warning [2] Undefined array key 244044 - 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 244045 - 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 244048 - 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 244049 - 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 244052 - 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 244053 - 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 244064 - 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 244073 - 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 244074 - 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 244076 - 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 244082 - 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 244111 - 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 244125 - 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 244162 - 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 244165 - 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 244211 - 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 244414 - 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 244515 - 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 244045 - 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 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 244053 - 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 244082 - 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 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 244165 - 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 244211 - 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 244515 - 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 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





How much would making a one-off calculator cost?



#7

I've been wondering: is it possible to build an RPN calculator, with a keyboard which is as good as - or even better - than the HP keyboards of old?
Yes, but the cost would be prohibitive. A quick "back of the envelope" calculation how much a one-off calculator would cost, under the following assumptions:

- The hp41 managed with 35 keys. 35 keys has to be enough for everybody.

- Use off-the-shelf components only. Restrict hardware development to a single pcb which simply connects existing components.

- Use existing software projects only. Restrict software development to porting existing software.

The estimated component cost would then be:

- Arduino due, $59 + $15 shipping, http://arduino.cc/en/Main/ArduinoBoardDue

- 35 Cherry MX tactile keys, $32 + $30 shipping, http://www.mouser.com/access/?pn=540-MX1A-E1NW

- 1 wireframe for enter key, $1, http://www.mouser.com/access/?pn=540-G99-0224

- 1 FSTN LCD display, 128x32 pixels, $12, http://eu.mouser.com/access/?pn=763-C12832A1ZFSWFBW3

- 1 micro SD connector, $2.50 , http://www.mouser.com/access/?pn=538-104031-0811

- 39 custom keycaps, $26, http://www.wasdkeyboards.com/index.php/39-key-cherry-mx-keycap-set.html

- 1 pcb, dual layer, 160mm x 100 mm, $100+$25 shipping, http://www.pcb-pool.com

Estimated total component cost: $300. Compare this to the cost of a HP41 at introduction: $295. You still would need to solder everything, and port WP34S or Free42.

Calculator size would be approx. 160mm wide, 100 mm deep, 25 mm high. But the keys would be rated at >50 million keystrokes, each.


#8

Case? 3D printing might be up to a reasonable case, otherwise you'll be machining or injection moulding one.

Battery? How long will a battery last with that CPU and display? Will a rechargeable batter be required? If so, you'd better include the charging circuits.

Regulators? Passive components?


There is a lot more to building a calculator than specifying the major hardware components. The mechanicals seem to be more difficult than the hardware and software.


- Pauli

#9

From the projects I've seen coming and going in the last decade, I concur with Pauli: nowadays, the mechanics is (are?) the crucial point. You find lots of gifted and willing SW engineers, still many EEs for pcb design - mechanical design (! Not design! Did I tell you I love English for its unambiguity? ;-)) engineers, however, are way more difficult to find. And you're not done with designing: getting the mechanical parts for more than just one prototype is a greater challenge than the other stuff and will cost you real money for tooling.

Just my 20m€, of course.

d:-)


#10

They're all still out there in large quantities but just don't want to do engineering projects. This is because they're now quite happy with their cosy much better paid, more secure job with many hours less and work from home policy counting beans in the financial sector (where they also conveniently can't get outsourced en-mass due to government legislation on data handling :).

Well I know I am.

We've got at least 3 burned out ex-industry EE's, an ME and a couple of math overlords. I doubt any would take an engineering sector job again.


#11

I wasn't thinking of shirt-pocket applications.

Arduino Due has a dozen ADC inputs, two DAC outputs, PWM outputs, and lots of digital I/O. Combined with RPN it would make an interesting piece of Test & Measurement equipment.


#12

Two off the shelf options instead:

1. Agilent 34450A[1] has a serial port and open documentation - plug into 50g via bodged RS232 cable and snag data off it.

2. HP StreamSmart 410[2] plugs into 50g and has built in native app and a pile of sensors you can just whack in it.

I really wouldn't want any RPN devices actually controlling anything. I'd rather have a self contained PLC or something doing that which has some isolation guarantees. Whacking any old chunk of circuitry onto something is a risky bet. Best case dead Arduino. Worst case dead human.

Proper kit every time.

[1] http://www.home.agilent.com/en/pd-2193855-pn-34450A/digital-multimeter-5-1-2-digit

[2] http://www8.hp.com/uk/en/products/calculators/product-detail.html?oid=5097846

Edit: to add proper links.


Edited: 22 May 2013, 9:55 a.m.

#13

Those cherry keys would be way too big, they are for PC keyboards!

-Typed from a keyboard with cherry keys :)


#14

You could do rows of four keys just fine, if you used low profile caps, and mounted them on a PCB at the bottom of the case. Then, have all the electronics under the LCD, with the battery between the LCD and PCB.


#15

The keys are really the main issue, or so it seems to me. I wonder if there are 3D printers that could do multiple colors just in the last 0.010"-0.020" of the fabrication to imbed the key functions? Maybe this will be a capability in the not-too-distant future.


#16

So, there's four ways to legend a key, and HP's used two of them AFAIK.

The hardest, but most durable and best looking way is double-shot (or triple, or even quadruple-shot, if multiple legend colors are required). This involves molding the legend, and molding the rest of the key around it in a different color. This is what HP's used for most of their calculators, although only double-shot as far as I know. Upsides are durability, color flexibility, definition of legends, and smoothness of transition (because the legend and key body are melted together), downsides are cost and the fact that it's most commonly used on ABS keys (which go smooth more easily under finger wear).

The cheapest way in mass production is pad printing. Pad printing done right can be plenty durable, with adequate coatings over the keys (a lot of older Apple keyboards were, AFAIK, pad printed, and the legends are fine 30 years later), but those coatings make it more expensive. Or, without any coating at all, or a partially applied coating (like most laptops), it can be destroyed easily. Pad printing has low cost, color flexibility, and decent definition of legends, but durability is its weak point. As I understand, HP's pad printed the faces of keys that rarely get touched, as well as lower end calculators.

Another method, and it's what WASD does, is laser engraving. There's a couple ways to do this, and it depends on what color key you're starting with. If it's a white key, engraving it will leave a "burned" legend behind. If it's a dark key, some plastics will engrave white, whereas others need paint infill to get a colored legend. Lasering is cheap, but it makes the key feel "rough", if it's infill-based it has wear issues, if it's burn color based it's completely inflexible on color (and the color can be brownish), and text definition can be mediocre.

IBM/Lexmark/Unicomp and Topre use dye sublimation. This injects some dye deep into the key. I think cost is an issue here, but you get smooth, durable caps with moderate color flexibility. Downside is, dye sublimation can only make something darker, not lighter, so you can't do it to dark color keys and get an acceptable result. It's also not as durable as double-shots, but if you've worn the legends off of an IBM key, you've probably used it as your main keyboard for 30 years, and you're a typist.

Edited: 22 May 2013, 10:08 p.m.


#17

For sake of completeness, there is another method BRAUN used in the Nineties on Oral Care products on a large scale basis. It's kind of a laser-induced color change in the plastic. It was done to produce dark grey text in white plastic using an excimer laser. Advantages: absolutely smooth surface, superior durability, more text flexibility and finer lines than double shot. Drawbacks: presumably little choice of colors, presumably less durable than double shot. I'm afraid I don't remember how the tooling / equipment costs compared.

d:-)

#18

I have the same thoughts since I found the WP 34S project. But I would prefer a calculator not bigger than my 48SX ;-)

If you need a PCB for the switches you could place also the best fitting CPU and other nice things like USB, SD Card, IR, serial, etc. on it.

Finding the right tact switch is very important. All parameters like travel, force and operating live has to be balanced out and tested before. Price is not important here because it's not a high volume product. It should be an open hardware project!

I would try with one of this kind of ALPS switches:

ALPS SKRB

ALPS

As a display a black & white OLED would be my first choice.

3-4 AAA Accus or 'standard' LiIon Akku for long running times.

All things screwed together for easy repair.

Producing an HP like key cap grid could be the biggest challenge. I am hopefully wrong. ;-)


#19

Looks like multiple color 3D printers are already here:

http://cubify.com/cubex/ (for one example)

So now it's just down to resolution. Some single color parts I had made recently were generally within 0.001" of spec, exceeding the 0.002" promised. Durable too.

I'm sure this would be more expensive than most of us could afford/justify anytime soon (maybe group buy from someone with the equipment?) but it would be pretty cool for the ultimate DIY calc!


#20

Prices will continue to fall safely due to the competitive situation. But today the quality I know is only goodenough for raw prototypes. This one looks from the choice of materials and the technical possibilities very interesting to me: Ponoko

Maybe a smart mechanical design combining 3d printed and laser cut parts would be a choice.


Edited: 24 May 2013, 4:18 a.m.


#21

The cheap way to go for very low-volume production is probably three pieces of laser-cut acrylic - one to make the frame, one to make the face, one to make the back - bolted together.

Sure, it'll look homemade, but it'll look far better than some of what comes out of a 3D printer, and it'll be far more durable, and be quite a bit cheaper I suspect (purchase price of a good laser cutter is quite a bit higher than the hobby-level 3D printers, though, and laser cutters have ventilation requirements that 3D printers don't).

Then come up with something for buttons, and laser-engrave them.

#22

This is probably getting a little silly but I just had the thought of creating key caps with crude embedded color areas just below the final surface coat which could then be exposed by an appropriate laser etching process. All sorts of complications I suppose including the laser changing the color of the embedded areas. Anyway, just brainstorming on chemo.

#23

I found an interesting HP35 clone with "big" keys and LED Display.

You have to scroll down a bit to the
HP-35 emulator.

Add a dot matrix display like this
dot matrix board.

With this
6x7 dot matrix display you need 7 to 8 pieces.
It depends if you could live with little gaps each 7th column.
To keep things easy you should rebuild the WP display resolution 1:1.

If you use a similar Atmel type like build into the WP 34S it should not to difficult. Create a PCB for the keys. A second PCB for the Atmel, the display, the USB, ...
Power and program it via USB. Search a nice desktop housing and you're done. The WP34SD ;-)

But if you have to dig into the firmware to modify the display driver you could also build a dot matrix display with better resolution or maybe a two line dot matrix display...


#24

With a bit more development of the hardware emulating the HP35 on that web site one could have a steam-punk Victorian style version. The additional LED rows to display the YZT levels of the stack are a nice feature.

Nick

Edited: 3 June 2013, 5:36 a.m.


Possibly Related Threads…
Thread Author Replies Views Last Post
  WP-34S Overlay - making it a bit more permanent? Marcel Samek 1 1,081 07-05-2013, 09:02 PM
Last Post: htom trites jr
  Sell, Cost, Margin for HP41 Alberto Fenini 22 4,542 11-04-2012, 07:36 PM
Last Post: Bruce Larrabee
  19BII replacement recommendations/decision making help needed Timo Labrenz 20 4,791 03-28-2012, 12:24 PM
Last Post: Timo Labrenz
  WP34S - Worth The Time and Cost? Les Wright 13 3,604 03-07-2012, 06:01 PM
Last Post: Richard Wagoner
  Making the wp-34s label glossy Jose Poyan 5 1,760 02-12-2012, 12:15 PM
Last Post: Walter B
  Cost Central shipping HP15C LE? M. Joury 8 2,406 09-15-2011, 08:21 PM
Last Post: Namir
  New hp-01 in the making? PeterP 2 1,119 03-20-2011, 03:10 PM
Last Post: Thomas Radtke
  "Why Rechargeable Batteries Are Rarely Cost Effective" Egan Ford 11 2,810 09-22-2009, 10:15 PM
Last Post: Chan Tran
  the cost of memory juan demin 19 4,197 08-15-2009, 07:06 PM
Last Post: Thomas Radtke
  evolution of computer power/cost db (martinez, ca.) 8 2,091 04-04-2009, 01:02 AM
Last Post: PeterP

Forum Jump: