Hackaday Prize Entry: DIY ARM Scientific Calculator

What does a hacker do when he or she wants something but can’t afford it? They hack one together, of course. Or, in the case of [Ramón Calvo], they thoughtfully plan and prototype. [Ramón Calvo] wanted a scientific calculator, but couldn’t afford one, so he designed and built one himself.

[Ramón] started off with Arduino but upgraded initially to Freescale’s Freedom KL25Z development board upgraded to an ARM Cortex-M0+ programmed using mbed. The display is an Electronic Assembly DOGL-128 128×64 pixel LCD. [Ramón] did a couple of iterations on the PCB, going from a large DIY one in order for the Arduino version to work, to the current, smaller version for the ARM chip with hand soldered SMD components. After that, [Ramón] looked into the algorithms needed to parse mathematical input. He settled on the shunting-yard algorithm, which converts the input into Reverse Polish Notation (RPN), which is easier for the software to work with.

[Ramón] has a ton of features working, including your standard add, subtract, multiply and divide operations, square root, nth root and exponentiation, trigonometry, log and log10, and factorial(!) There are a few things still on the to-do list, such as low power and a graphing mode, and there are a couple of bugs still in the system, but the overall system is up and running. [Ramón] has put up the schematic and KiCAD files up on his Hackaday.io project page along with the bill of materials.

We’ve had a few Hackaday prize entries in the form of calculators, such as this one with Nixie tubes and this one that emulates 70’s HP calculators.

Hackaday Prize Entry: A Programmable Calculator With Nixie Tubes

For [Robert]’s entry into The Hackaday Prize, he’s starting off with some basic questions. What’s better than a Nixie tube? More Nixies. What’s better than a calculator? An RPN calculator. What do you get when you combine the two? A calculator that is absurdly large, even by 1970s desk calculator standards, uses a lot of power, and takes up too much space. Sounds good to us.

Nixies, at least when there are a lot of them, are tricky devices. They only draw about 50mA of current, but they only light up when above 150V. That’s only about seven watts, and it’s easy enough for the Arduino-heads out there to build a circuit to drive a few Nixies for a clock. Driving dozens of Nixies is a bit harder. For [Robert]’s RPN calculator, he’s estimating a little under 50W of power being dumped into this calculator.

With the considerable power considerations taken care of, [Robert] turned his attention to the display board. This is going to be a very impressive build, with 80 IN-12B tubes organized in four stack levels of twenty tubes each. The tubes will be controlled with the Maxim MAX6922 VFD driver. This chip has a serial interface, which means it’s relatively easy to have any microcontroller blink these tubes. And of course, it does double-duty as a clock.

The HackadayPrize2016 is Sponsored by: