Handheld Linux Terminal Gets An A+

Are you all thumbs when it comes to Linux? If you follow [Chris]’s guide to building a handheld Linux terminal, that particular condition could work to your advantage. His pocket-sized machine is perfect for practicing command line-fu and honing your scripting skills on the go.

[Chris]’s creation is built around a Raspberry Pi A+ that he stripped to its essentials by removing the GPIO pins, HDMI and USB ports, the audio port, and the camera and display ports. It’s housed in a pair of plastic 2.5″ hard drive enclosures connected with a piano hinge, making it about the size of a Nintendo DS. The display is an Adafruit PiTFT touch screen and in order to save space, he soldered it directly to the Pi.

The 2.4GHz wireless thumb keyboard has all the special characters necessary for Linuxing, but the four USB ports from a dismantled hub provide flexibility. If [Chris] were to make another one, he might use this slightly larger screen from Tindie and add some charging ports to the case.

[Thanks for the tip, ar0cketman]

40 thoughts on “Handheld Linux Terminal Gets An A+

      1. Raspberry pi B comes with ethernet port… on USB interface with built-in USB HUB – so connecting ethernet card to USB HUB incorporated in this project would be basically the same except the port won’t waste space when not used.

    1. A serial terminal is quite useful in setting up that ethernet network in the first place, or even fixing it after a disaster.
      I’d certainly like something smaller than my work laptop while holing up in a wiring closet fixing a switch.

      1. Especially if you could get some macros configured. Some years back I was setting up a fresh new data-center and all 50 switches needed the same config (well different host-name, but everything else was the same). Would have been so handy to have a small device like this to plug into the console port, press a ‘Play Macro’ button and walk on to the next one, maybe with some scripting to change some specific settings on a per-switch basis.

      1. Where the problem? The solder blob on the left? Probably necessary for adjusting the crystal to the base needle. I’m fine with this, it’s 66 years old.
        But it’s a little bit offending to compare the first transistor to his ,in 2014, with temp.reg. iron + hq flux and solder onto golden plated contacts, messy and really ugly soldering job.

    1. It seems to work just fine and the main user of it seems happy, hence I don’t see why it should be a problem. What’s the point in learning how to solder before attempting a project when you could do it just as well while doing projects and have a hell of lot more fun!

      The thing obviously works and solder skills will improve with practice…

    2. I guess some people just find something to complain or nit pick about on a project. Not everyone is perfect at soldering. He may need to work on his soldering skills, but that will improve with time and practice. At least he’s hit the ground running. How about some encouragement instead of hitting him over the head about a couple of cold joints?

  1. It may be that removing the GPIO header was exactly the wrong thing to do with this build. The ability to hook up to spliced-up old IDE cables and remain portable would have been the one thing that it did better than anything else, and in Linux you can interact with /sys/class/gpio directly from the shell.

    1. Don’t you just love how GPIO inputs are super-duper sensitive to static electricity? Why bother frying the input on $3 arduino chip when you can destroy a custom built machine with all the associated love and hard work.

      1. For some reason I have never managed to destroy electronics with unintentional static discharge, so my emotional input to the premise is absent. If you’re dealing with unprotected inputs in a mobile environment, you will probably want to engineer that in.
        Zener diodes at 3.3V drop that I tested have a surprising amount of junction capacitance so it appears not quite trivial to engineer this, but how how hard could it be? :p

        1. Plain old zener diodes work great for pins that don’t require very high speed. For high speed pins you can get special protection diodes. You can even get them optimized for certain interfaces, like USB.

        2. Zener diodes are for power supplies, and never meant for high speed digital circuit. There are proper ESD protection devices e.g. TVS designed for the purpose.

          You can also go old school and use a gang of switching diodes e.g. BAV99 (dual) with diode capacitance of 1.5pF (max) and shunt the cathodes into a pre-biased zener diode at 2.5V. Since the capacitances of the diodes are in series, each pin would only see the 1.5pF + your usual parasitic capacitance.

          Don’t forget the series resistors at the input.

    1. Unless I’m really misunderstanding the size here, it’s less like a netbook and more like a palmtop — which is great. I’ve had several palmtops, & my only complaint is that none of them could run linux.

  2. Wow, what kind of reactions, has Vladimir Putin released it’s horde of trolls at hackaday with a different task or did that “terminal” was made in western Ukraine ?

    1.) he might not make the best soldering, but it works, so what’s the point
    – except that the “right” comment would be how to improve the soldering joints (additional flux) / solder with internal flux / not burning to much flux – working faster / and last but not least, having a place to shake of the solder and reapply fresh

    2.) No ethernet, No ethernet, No fucking ethernet
    Your cell phone has mostly also only “whyfi”, so why bother

    3.) no fucking GPIO pins
    – perhaps sometimes need to be sacrificed for size
    – sensitive GPIO – use of opto couplers is advised

    from his page (reading all the text is insightful)


    If I was to make this again, I would do a few things differently.

    Hope you enjoyed and if you end up making your own version, I’d love to see it.

    Some things up, that could be improved:

    – no raspberry pi, there are other boards that have more CPU-power, connectivity and yes, ethernet (sometimes even 1gbit) -> pcduino for example, those boards are also commonly smaller, and some even have a sata port (could be turned into esata or just )

    – except the use of the raspberry pi compute module piggy backed on a custom interface board would be more versatile

    – extend the serial port of these arm boards for external connectivity perhaps with just using a cable with a connector instead of integrating the connector into the case, sony vga pz vga & ethernet style, but integrated would really be great

    – small screen, if some could find a 720p display (perhaps from some htc smartphone) than hdmi interfacing perhaps -> bigger screen + more fps + the wanted touch interface

    But – but – but:
    And if someone had super duper hyper bga soldering skills (I except only hand soldered BGA!*)
    those could desolder the chips of those arm boards and can rearrange them on a custom board,
    some of these chips even have a pciE lane (example marvel kirkwood sits inside some synology nas)
    and pciE express could translate to expresscard (the 34mm connectors can be found on ebay for cheap)

    Also smaller ethernet ports like these from samsung netbooks or compaq mini 311 could be used, they are placed on additional boards and are mostly lower than those found on the “arm-boards”.

    *content contradicts intent

    1. Not intended as trolling… What Linux does really, really well is interfacing logic, so when one’s sole interface to the world is USB and one want to learn shell-fu one is kind of missing out. There are still cool options, such as RS232-USB adapters which can let one avoid problems with signal level shifting.

      There is an artistic style which permeates for example the Debian community and this device does fit in with that style. The idea of using 2.5-inch enclosures as a form-factor is cool too. However in the end of the day this device needs to be the best tool for some job.

  3. My take on this was a D-Link DIR-505 running Openwrt. Plugged my phone into the USB port like a phone charger, enabled USB tethering and suddenly I had a network interface over USB, as well as ethernet and wifi. I can provide Internet via the USB connection and run various utilities from the device itself. SSH in with the phone over USB to control it. Same could be done with a pocket router.

  4. It’s still a cool project, and a likely stepping stone to cooler things yet!
    If you hack something together and at the end say it’s 100% then you weren’t reaching far enough with your project.
    There should ALWAYS be a take-away to bring to the next thing you do. That’s how experience works and it’s part of the wonder of discovery.

    We are the music makers, and we are the dreamers of dreams. -Arthur O’Shaughnessy

  5. Or you could use any Android smartphone with a hardware keyboard from the last 5-6 years… It’ll have WiFi, BT, Cell Radio, tons of sensors, a decent touchscreen display, more storage and expandable storage, battery powered and more… Not to mention it’ll be far more powerful, all in a much smaller package and for less than the total cost of this…

Leave a 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.