Minimal Computer and Operating System: One Button, One LED

DUO BINARY is a very, very small computer system in every possible sense. It runs on an ATtiny84, which has even got “tiny” in its name. The user interface is a single button for data entry and a single LED for feedback, making this binary keyboard look frivolously over-complicated. It uses a devilish chimera of Morse code and a truncated ASCII to enter data, and the LED blinks the same back at you.

We’re guessing that [Jack Eisenmann] is the only person in the world who can control this thing, and you can watch him doing so in the video embedded below.

But just because this system is minimalistic doesn’t mean that it isn’t powerful. It’s got 128 K of SRAM and 2 MB (!) of flash onboard that the “operating system” can make use of. (We can’t imagine entering 2 MB of data in Morse code, so we presume that’s why the flash is socketed.) With so much flash memory, it’s no surprise that [Jack] implemented a file system.

It runs an incredibly stripped down bytecode that’s put together with a custom assembler, naturally. Example programs are also provided for the curious (zip file) or the brave.

15 thoughts on “Minimal Computer and Operating System: One Button, One LED

  1. Mouse: The woman in the red dress? I designed her. She, um…well she doesn’t talk very much, but…but if you’d like to meet her, I can arrange a much more personalized meeting.

    1. that video is interesting for 2 reasons: 1st: the speed seems pretty fast to me, so that’s impressive, for a skill hardly needed these days. 2nd: the hand of the morse-code operator moves quite a bit up and down, and I was wondering… if he was to be doing this all day his arm must be very tired.

  2. Scale it up, for the interface this thing has a ridiculous amount of memory and processing power.
    I designed a [mostly] sixteen bit, some 32,64 and 8 asynchronous computer a while back. Far too much soldering for my busy schedule and too expensive to have someone assemble badly. It was indeed a strange beast. Did most of it’s calculations via a cube of logic and mud/demux chips. I thought that thing would have been a nightmare to program until I saw what’s been created here. (:

  3. personally i would have added a POTS jack/circuit and controlled with an ancient rotary pulse-dial phone, or at least put a jack for the dialing mechanism itself (low-voltage contact)

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.