Why reach for a bland, commercially available calculator when you be using a model that employs RPN (Reverse Polish Notation) in its calculations and be a custom build all at the same time? The kids may have colour TFTs and graphing functions, but your keyboard has no equals sign, and that means something.
Unfortunately for RPN enthusiasts, the RPN calculator is a little on the rare side. Since classic models from the 1970s and ’80s are rather pricey, [Anton Poluektov]’s just build his own called the OpenCalc. This glorious specimen is an open hardware RPN calculator with more than a nod to the venerable Hewlett Packard HP42 in its design.
At its heart is an STM32L476 low-power ARM processor and a Sharp Memory LCD, all on a PCB clad in a 3D-printed case you’d have been proud to own in the 1980s. It runs from a CR2032 which is more than can be said for some modern styles of calculator, and it gives the user everything you could wish for in a scientific calculator. The key legends are a set of printable stickers, which when printed on self-adhesive laser film prove durable enough to last. All the resources can be found in a GitHub repository, so if RPN is your thing there’s nothing to stop you building one for yourself.
If RPN interests you, it’s a subject we’ve looked at in greater detail in the past.
69 thoughts on “An Open-source Scientific RPN Calculator”
I love RealCalc on my Android phone.
I have been using Droid48 forever and I’m very happy with it. Back in the early 90’s, I used x48 on workstations at college and I only feel home on RPN calcs with that ley layout. It carries a lot of baggage that I don’t need anymore, so I think I’ll look into RealCalc. Thank you.
I’ve been using Go41c on my Android for several years. Works for me.
Me too. I installed it to understand what is all that hype about RPN. I didn’t switch to RPM but I could totally understand why some people still appreciate it. And maybe few times to get some more demanding result. Since I switched to iPhone I kind of miss it.
Is m48 no longer available?
Finally I could check it out and… “removed from app store”.
@Me said: “I love RealCalc on my Android phone.”
You have to pay for RealCalc Plus which unlocks all the functions. Also some say RealCalc Plus requires an internet connection to verify the license. No Internet connection, no additional paid-for functions. Try the completely free Droid48 (HP-48G/48S) and Free42 (HP-42S) Android HP calculator emulator apps instead.
Thanks for the tip. I’ve been using RealCalc for years, but the nag screen is annoying. Given I actually owned a 48SX (still do) I’m keen to give Droid48 a go!
I still have/use my 15C and 16C. Also at home, the 12C is present and used by my wife and I. Back in college I gave away to my sister the 11C when she entered college as I had bought the 15C. I do like RPN.
15C is mighty nice. I think I have replaced batteries twice in 32 years.
Someone relieved me of my 11C in 1987. Bought a 32s to replace it. Changed the batteries in that for the 3rd time this last winter. HP sure knew how to get build them back in the day. (Meanwhile the 35s thing they brought out in, idk was it 2009? Sucks batteries flat inside of 3 months. Oh well)
Swiss Micros (https://www.swissmicros.com/products) offers an excellent lineup of HP calculator clones. I bought their DM15L (clone of the HP-15C) recently and have been very happy with it. Only $129 on Amazon, though they ship from Switzerland, so it took around three weeks to receive. Not that it matters in my application, but they claim their ARM Cortex microcontroller makes the DM15L around 20 times (?) faster than the original.
Thanks Karl!!! I will look these up
I have their DM42 and the DM16L which does “logic”. Basically al the things you would do in a register like shift, roll right/left, XOR, >, etc. And does math in decimal, hex, binary, and octal. I don’t use it as much as I thought but am going to do a lot of load of low level machine stuff soon and expect to use it a lot.
Love my DM16L. Been using it a lot in the MCU course series I’m in. Absolutely worth the cost for a *nice* tool.
Not sure I understand…no make that “I don’t understand at all”.
Please explain your comment, for the benefit of a LOT of us.
This, because I’m lazy, and don’t want to write another comment:
A while back, when class was over, I left class (of at least 40 people) AND my HP 32S in the room. After overcoming mild panic, and determining that’s where I must have left the device, I found it in that classroom, one hour later.
If the machine had had an “=” key on it, I’d have never recovered it.
Liquid Chrystal Display display and Hack A Day day.
OTOH this is a perfectly valid sentence: “I cannot deny that that that they said is true”.
Someday I’d like to know where the full what-that equivalency is used because it is not part of my particular dialect and I never ran into it much before the Internet.
A lot of us?
“If the machine had had an “=” key on it, I’d have never recovered it.”
The very reason why no one wanted to borrow my HP-35 calculator in high school. They would hand it back in bewilderment due to the lack of ‘=’ key.
Wife: Can I use your calculator?
Me: You MAY use my calculator, but you CANNOT use my calculator.
Wife: Just hand it over.
Wife: I can’t use this calculator.
Me: …. …. ….
A software programmer I knew wanted to borrow a calculator from me.
He handed it back a moment later, as it HAD an = key!
That was true for me in high school with my trusty HP-15C. Then I went to engineering school and my TA asked me to lend him my calculator and I started to explain it was RPN. He cut me short with a withering stare. It was pretty much a given you’d use RPN there.
I use Free42 on my phone. On my Note 20,it’s almost lifesize.
Free42 is also what I use on my phone and computer, I also still use the real thing.
Reverse Polish Notation [def]:
The ONLY reason people refuse to learn, and use, FORTH.
RPN makes much more sense than the infix, prefix, postfix mix with random operator binding powers you never get right even between neighbours of programming languages. That usually ends with lots of parentheses just for being safe.
Pure prefix or pure postfix makes much more sense.
Lisp is a beauty and so is Forth!
Everything in between them is an ugly compromise.
Except Lisp (and Smalltalk) are unintelligible to normal humans.
There are normal humans? My experience doesn’t support that assertion… in my experience, they all have their quirks.
“Except Lisp (and Smalltalk) are unintelligible to normal humans.”
…as is APL. The only difference between choosing the power of FORTH versus that of APL? One doesn’t need a specialized keyboard in order to use FORTH.
…and since when did this venue debase itself by catering to “normal humans”?
That’s a dirty lie.
APL is fine for normal humans, if they are introduced to it early enough.
Mention of APL causing me to flash back to uni computer lab in ’81, when it seemed the only unused terminals were those that had been left in APL mode.
Lisp is the gom jabber of computer science.
(Heckn autocorrect; thou shalt not craft machines in likeness to the human mind)
And RPN is what makes Forth, and stacks in general, so darn useful and so easy to understand the internals.
RPN is one of the things I love about PostScript (and Forth).
The app versions _are_ very nice, but the buttons. RPN and buttons. I’ll be over in the corner clicking on my 41cx until the buttons fail.
This is why I am down to two 11C’s. My first (bought it as a daily carry back when) eventually succumbed to key failure a few years ago. The ENTER key is worn concave, but still quite readable (I love that two-shot molding). Still have two more, one from an employer, the other given to me in the early 1990’s by a senior engineer that had moved on to his 42S and no longer used it.
Still have (and use) the 16C I bought the first month they were out and a 12C (early 2000’s replacement. First one defunct from use and abuse), as well as my original 35 and a 35S (now my daily carry)
Never did have a 41C, though it would have come in handy for the HP-IL when I was still using a 3468A multimeter.
And 41 clones are being developed!
They already exist: https://www.swissmicros.com/product/dm41x
I love a physical calculator. I have all kinds of calculator apps on my computer and my phone, RPN and algebraic, yet it’s still faster to just grab my HP 48GX or 32S, do the calculation, and proceed.
Have you tried PhyxCalc?
I’m quicker in typing my calculations there than pulling my physical calculator from the drawer.
There are som(?) more current projects but they all seem to have died: https://duckduckgo.com/?q=phyxcalc
Same. If for no other reason, hex conversion. I keep one program in my 32s:
Voila. One tap hex/dec conversion on R/S. Hex mode on 35s was garbage (if you make me do extra key presses to indicate input is hex, how ## is that he’d mode?). So the 32s stays next to the laptop. It’s more useful than the mouse.
just so people realize, the real-deal HP 15C 16C machines can be worth some money.
keep for a rainy day or sell, just know where they are….
they are almost worthless,
send them to me for proper disposal.
hey that’s my name, not yours :p
Seriously though, you just say display. Nobody would understand what you mean with LC without adding the D, so it’s perfectly fine to say LCD display, even if appending “display” is technically redundant.
I was heartbroken when my HP11C (acquired in 1982) died, and snapped up one of the limited edition HP15C’s that became available a few years ago. Unfortunately, in translating the firmware to the new faster core, they didn’t seem to bother with debounce, and now that it has a few years on it the keyboard has become very flaky giving 333 for one press of the 3. I am eyeing up the SwissMicros products and kind of sad that they don’t seem to have any of the credit card sized versions in stock, which would be a cool upgrade.
Sweet! I started one myself not too long ago. But it’s more of a keypad that is also an RPN calculator.
My daughter was once engaged to an engineer. I asked her “is he an RPN guy?” (she is). She said “I don’t know I will ask him”. A while later I asked what you found out. She said he said “What’s that?” The engagement didn’t last.
Years ago I was taking a Pascal class. One of the homework assignments was to write a program for a 4 banger RPN calculator.
On a good infix calculator, like a TI89, if I realize I made a mistake in a complex calculation, or just want to change a number in it, I can press the up arrow and edit the calculation. I haven’t found a way to do this in an RPN calculator. Do the newer ones let you do that?
They always have. Instead of entering the calculation in immediate mode, you enter it as a program. If there’s a problem with a value or order of operations, you can edit the program and rerun.
People that use RPN calculators don’t make mistakes.
I couldn’t afford an HP so I bought a Corvus 500. Still have it and it still works.
I don’t understand why everyone reproduces the 4-layer stack XYZT. The “infinite stack” of the HP-28S was so superior. Every time one of these projects pops up I look to see if they implemented an infinite stack, and I see XYZT. But you can’t do left-to-right complex calculations without running off the top of the stack.
A valid point, though analysis of Forth algorithms shows that a 16 deep stack is very rarely exceeded. The strangest stack decision I ever saw was in the Transputer where despite all the experience of HP and the RPN based parsing modules of compilers “the Transputer had only three data registers, which behaved as a stack.” though it did have external conventional stacks. The three register choice is also odd given what HP had demonstrated so well about 4 registers.
The swiss micros DM42 is RPN and has an infinite stack now. I am a HP41 person so I don care.
There is also NumWorks https://www.numworks.com/
It’s not RPN, but its design is open and hackable. https://github.com/numworks
With the little plus of being sold already built :)
$99 is a bit steep IMHO. It looks great though.
I like stuff like that. RPN midern cakculator with ARM core… definitely a must have.
I really would love to see something like this based on a ZigBee/Bluetooth SOC.
A calculator is the perfect base for smarthome control just like phones were the perfect integration point for everything else. Simple and cheap enough to have a few laying around without worrying about charging every day or costing too much, not trying to compete with phones so they don’t need power wasting features.
There’s a lot of miscellaneous stuff that doesn’t quite belong in a phone that could be rolled into calculators. I think walkie talkies are probably one of them, imagine FRS over ZigBee with multi-week standby battery life! Or magneting one to the fridge as a dedicated kitchen timer/barbecue thermometer receiver.
Imagine if these had ZigBee and could be sold directly with smart bulb kits!
The eco footprint isn’t all THAT much worse than a real calculator, so we might as well have 10 identical multi purpose gadgets in different cases, dedicated to one use, rather than 10 separate things that aren’t much cheaper, only do one thing, and are lower quality because there’s no economy of cale, and can’t be reprogrammed.
We need the Arduino of low power handheld devices!
Everyone needs a copy of “Algorithms for RPN Calculators” by Ball. There are copies on the various online libraries. A physical copy has become quite rare and expensive.
I’m surprised no one has mentioned the “new” TI.
I bought an hp48sx back in the day. Still have it. But my daughter’s school required a TI cas nspire.
I no longer love my hp48 as much!
Never thought I’d say that.
I made a video on it : https://youtu.be/JUA7Z36RbsI
It’s so much faster to enter equations and solve multivariable equations that the hp can’t even solve (hp48 needs equations given to it like
y= blah .
Hp can’t solve 2 equations like
x * y / (x + 3) = y.
y + 6 = x/y
But the TI CAS solves them with minimal keystrokes. (On hp48, you need to create a dir, create an equation, save it in a var, repeat, enter solver menu, enter var you want to solve for, press solve.)
Ti cas has spreadsheets too!
Any Android RPN calc apps that work with physical keyboard? Like on BlackBerry Key2 or Unihertz Titan? Or?
Here’s an HP-15C that runs in a browser window: https://free15c.com/web/hp15c.html
I would live to be able to buy a kit of the beastie…
Please be kind and respectful to help make the comments section excellent. (Comment Policy)