Sergey Sanders' Rimer SBC Is an All-In-One Arm Cortex-M4 Workstation Inspired by the ZX Spectrum
40-key mechanical keyboard and integrated color display provide a better experience than Sinclair's 1983 original.
Engineer Sergey Sanders has developed an all-in-one single-board computer (SBC) with a compact keyboard and an integrated display, all powered by Microchip's ATSAMD51J20A microcontroller: the Rimer SBC.
"This is one of my hobby projects built a few years ago for fast Cortex-M4 application development, and I used it in my lab," Sanders explains of the device. "My friends suggested I make it available to the public due to its versatility and unlimited usage. Many [Arm] Cortex-M4 development platforms are available on the market, but they all need a PC to get programmed and operated. This SBC has an LCD and keyboard, making it stand-alone."
The Rimer SBC is, as you would expect, built as a single PCB β and an early revision reveals exactly where Sanders got his inspiration: the Sinclair ZX Spectrum, an eight-bit microcomputer released in 1983 and featuring integrated BASIC and an iconic "dead-flesh" rubber keyboard. While Sanders' original design was extremely Spectrum-like β to the point of running an emulator for Spectrum software and including Spectrum-specific markings on the keycaps β later revisions focused more on general-purpose operation.
At the bottom of the board is a 40-key mechanical keyboard built using Kailh low-profile switches and connected to the I2C bus over a general-purpose input/output (GPIO) expander. There's a 3.2" ST7789-based 320Γ240 color IPS LCD display, complete with framebuffer and 60Hz refresh, with everything connected to the star of the show: a Microchip ATSAMD51J20A microcontroller with 256kB of RAM and 1MB of flash storage running at 120MHz, a major upgrade over the Sinclair ZX Spectrum's specifications.
"ESD [Electro-Static Discharge] protected GPIOs [are] routed to three 2.54mm connectors (4+8+8 pins)," Sanders adds. "Three I/O connectors are wired to the SERCOM ports: one is limited to two serial lines (I2C and UART), and two others have full 4-pin ports. Two TC and two TCC channels are routed to GPIO connectors. All GPIO ports have separate power controls with the current limits: Ports 1 - 125mA, Ports 2 and 3 - 300mA."
The microcontroller runs an operation system based on the FreeRTOS real-time operating system, in addition to the Sinclair ZX Spectrum emulator, with a command-line interface and the ability to run what Sanders describes as "simple scripts and BASIC language programs."
More information on the project is available on Hackaday.io; at the time of writing Sanders had not yet shared design files or source code, beyond a simple block diagram.