You Can’t Be Too Rich Or Too Thin — A 2mm Thick Computer

We’ve seen credit card-sized computers before, but [Kn/vD] shows us a PIC18-based computer with 9 components that is only 2 mm thick! With 13 K of RAM and 128 K of flash, you can’t do much with it, but a built-in BASIC interpreter can use half the flash like a disk drive and operate with the 20×4 LCD display and the PCB touch-panel keyboard.

The whole thing only has eleven parts, but that’s only because it needed ancillary components like decoupling capacitors and the battery along with a physical reset switch. All the real functions are in the CPU and the LCD display. The schematic is online, but we didn’t see the files for the PCB or the interpreter yet, but it sounds like they are forthcoming. Meanwhile, we wonder if anyone is up to the challenge of going even thinner.

[Kn/Vd] loves small computers. There are plans for a few other versions of the board with AVR and PIC24 processors. The last time we saw a tiny module from [Kn/vD] it ran C. If you check out other Hackaday.io projects on the account, there are several tiny computers there. If you want a business card that can run Linux, you might need to go a little bit thicker.

19 thoughts on “You Can’t Be Too Rich Or Too Thin — A 2mm Thick Computer

  1. That’s not a keyboard I would want to use. However, given the design parameters, I can’t think of anything better at that thickness.
    Kudos for making a design decision, and seeing it through.

    1. Dome switches. You can buy just the metal domes, and stick them on PCB using piece of self adhesive vinyl or something. I believe pocket chip handheld had keyboard like that and it wasn’t that bad.

    2. I think the keyboard is a real win over the micro-tactile switches that are more commonly used. I wonder if it would be possible to sense key presses ok with. TPU overlay to provide a bit of feedback? Definitely worth an experiment! And kudos to the builder for a great build.

    3. In terms of pure keyfeel the arrangements that use a thin stamped metal buckling contact(the usual mechanism in cellphones from the T9/blackberry era) would probably be worth the slight increase in thickness; but I say that purely as someone who doesn’t have to fabricate the thing by hand in small quantities. Under the constraints provided the capacitive pads absolutely seem more elegant and practical; and substantially thinner than the arrays of discrete switches you sometimes see in mini-computers of similar footprints.

      I’m not sure how much wholesale swapping of the main ICs this would require; but it’d be neat to see the array of capacitive sensors pressed into service for a secondary mode: if the microcontroller is up to acting as even a USB 1.1 device you could get bare-minimum USB mouse/keyboard capabilities out of it: there should be just enough of a sensor array that you could treat it as a frustrating but not useless touchpad if you focused on interpreting the movement of the user’s finger as revealed by the sequence of key presses; while straightforward interpretation of the key presses as key presses would handle the keyboard side.

      Extra crash-cart credit if there’s just enough onboard to allow the internal display to do serial terminal duty.

      I’m not saying that I’d be rushing to make that my go-to for the job; but seeing the capability crammed into such a minimal package would be undeniably compelling; and this project is all about compelling demonstration of capability rather than necessarily being the computer you want to use.

      1. Discrete keys would make it pretty painful as a normal touchpad, but you could definitely use it for swipe gestures. Especially if the whole area between the keys was a sensor, so that you could tell the difference between typing “AQ” and swiping up from “A” (e.g. to bring up a menu of accented or secondary characters). Of course, that leads to the question of why the whole thing isn’t just a touch screen.

        I actually dig this more limited brutalist style; I just don’t get why the keyboard layout isn’t staggered.

      2. I personally think that capacitive pads are not that good at all. They often already register a keypress if you’re only hovering over the pad. I really think it’s better to have a foil or thin stamped metal plate stuck over those keys. Some thin plastic plate with cutouts for the contacts, and a plastic layer (with legends etc.) glued over it. It would also protect the electronics.

        Still no touch-typing. ;) But I expect that it would register the keypresses much more deterministically.

    1. +1… At first I thought, “nah, that would take the fun out of it.” But I really enjoyed the entries for the cyberdeck contest and that hasn’t ruined my enthusiasm to build my own cyberdeck one day.

  2. I wish people would stop using BASIC interpreters for these kinds of things. I would say that it would be ok to use a tiny basic interpreter (maybe extended with floating point) if you have limited rom space. But if you have rom space enough, why not implement a C interpreter?

    Or maybe build an interactive editer/interpreter shell around BOB? I like BOB. But I’m not sure if it’s suitable for small systems, mainly because of the way it manages memory.

    http://www.txbobsc.com/misc/bob-article/bob-article.html
    https://github.com/dbetz/bob

Leave a Reply to ArtenzCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

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