RPN Running on ESP32

A project log for MK-52 Resurrect

A Programmable Calculator from the USSR!

ptravptrav 01/22/2021 at 12:510 Comments

The keyboard and ESP32 have been assembled, apart from the power transistors (still missing one BS250)

The wiring diagrams in KiCAD are posted here:

The  C++ software on ESP32 currently can does 4 arithmetic operations, Swap, Enter, negation and SIN (the rest of engineering functions is coming tomorrow):

The calculator supports Python-style typing logic: if the number is entered as integer, the logic tries to keep it as integer in the range from -9,000,000,000,000,000,000 to +9,000,000,000,000,000,000. Outside of this range, the number changes to a double-precision float between approximately -1e+300 and +1e+300. Plus and minus infinity are also supported. In the range from -1 to 1, 12 decimal points are guaranteed, with the exponent down to -300. For each computation, the calculator attempts to convert the result back to an integer. For example division 2/3 gives 0.666666666666.  Multiplication by 6 gives back 4 (as an integer). A SIN(90) in Degree mode is 1 (an integer), ArcTAN(-Infinity) = -90 (an integer), and so on. 

The next major step is to finalize the extended memory and registers simulation. The original MK-52 had only 15 memory slots (each holding one floating point number). HP35S has 26 memory slots, but each can contain a vector. The Resurrect will have 4,000 64-bit numbers.