eMBee ONE turns an Arduino and an Altoids tin into an ’80s-style pocket computer
February 9th, 2021—
Matthew Begg wanted a pocket computer that had some of the charm of his 1980s vintage Casio FX-730P, so he decided to build his own.
His prototype device uses an Arduino Nano to boot into BASIC, and features a 1.54″ OLED display as well as a PCB-based QWERTY keyboard. Power is provided via a pair of AAA batteries, along with a boost converter. Most notably, however, the entire thing is meant to fit inside of an Altoids tin.
The unit, known as the “eMBee ONE,” can run an N-queen calculator benchmarking program in seven seconds – staggering compared to the FX-730’s time of seven minutes! An optional buzzer can be added to the device for sound output, and could perhaps be used to indicate when it’s done “thinking.”
Based on Robin Edwards’ excellent Arduino BASIC, this is the software for a complete pocket computer, using an Arduino Nano, a CardKB I2C keyboard, and SPI OLED screen. The BASIC supports almost all the usual features, with float and string variables, multi-dimensional arrays, FOR-NEXT, GOSUB-RETURN, etc. Saving and loading from internal and external EEPROM is supported, as well as auto-running a program on power-up. You can also read and write from the analog and digital pins.
There’s about 1k of RAM available for your BASIC programs and variables, so its roughly equivalent to a Sinclair ZX81. The other 1k of RAM (on a Nano) is used for the keyboard and screen buffers, with a small bit of room left for the CPU stack. That works out quite well, since there’s a 1k EEPROM on the Nano so if your program fits in the basic environment, it will fit when saved to EEPROM!