
Building a Raspberry Pi 3B+ full keyboard handheld - 0x0f0f0f
https://0x0f0f0f.github.io/posts/2019/08/building-a-raspberry-pi-3b-full-keyboard-handheld.-part-1/
======
borgel
A similar build is arturo182's Handheld Feather Wing, which uses a Blackberry
Q10 keyboard [2] Though it doesn't have a processor of its own it can be
plugged into Feather compatible boards that do (like @groguard's Giant Board,
which runs Linux [3]). Makes quite a nice package!

I ended up going the other way and building a (split) 60% keyboard with a
screen and a Pi in the middle [1]. It's long enough that you can sling it over
your shoulder on a guitar strap, so it somewhat fails the pocketability test.

[1] [https://github.com/borgel/commute-
deck](https://github.com/borgel/commute-deck) [2]
[https://hackaday.io/project/165450-keyboard-
featherwing](https://hackaday.io/project/165450-keyboard-featherwing) [3]
[https://www.crowdsupply.com/groboards/giant-
board](https://www.crowdsupply.com/groboards/giant-board)

~~~
Phillipharryt
Another interesting build currently being polished up is SnapOnAir's
Blaspberry v2. It's deemed a "communication tool". They've made a modern day
pager as well, but the new one is like a linux blackberry that is entirely
open source. The developer has been in talks with arturo about working
together on it (based on their tweets at least) using that q10 keyboard. It's
pretty damn impressive and I've seen doom running on it (though that's not the
highest benchmark).

~~~
hauget
Here's a video of the latest iteration:
[https://www.youtube.com/watch?v=wvxloZ2Ox60](https://www.youtube.com/watch?v=wvxloZ2Ox60)

The guy running the project (Philippe) is quite the genius!

~~~
ccadic
I still have a lot of corrections to make on the prototype to finish it. I
want a f.... opensource tool..

------
stamps
Excited to see the final build.

The author provided a list of _obscure_ handhelds that you could try and get
your hands on.

On that list there is the Pyra[0] which is very near completion. It has some
interesting features such as a replaceable CPU board (nonstandard) for future
upgrades.

[0][https://pyra-handheld.com/boards/pages/pyra/](https://pyra-
handheld.com/boards/pages/pyra/)

~~~
pergadad
Hmm I don't understand this. Why pay 600€ for a handheld with a 1.6ghz dual
core if I can buy a netbook/13" with better specs for less? What is the use
case for this device?

~~~
floren
In 2011, it was a pretty good deal.

Edit: apparently it was presented in 2014... when, yes, dual core ARM would
have already been pretty sub-par.

~~~
Grumbledour
It's the same story with the predecessor, the Pandora. It took forever to come
out, while the preorder price steadily increased. It turned out to be pretty
great when it finally arrived, but the specs did not look good anymore at that
point.

And it seems to be even worse for the Pyra, especially since gpd has finally
understood the need and is now manufacturing similar devices.

I think the concept is good but maybe it would be better to design a solid
handheld with a slot in option for a pi or some similar form factor sbc. That
way, users could actually upgrade the device and keep it current. The hard
part these days seems not be the actual computing, but the quality and
usability of the screen, keyboard and game controls.

------
thesuperbigfrog
It is exciting to see cool handhelds like this! I really want to have a
handheld / phone that can handle all of my on-the-go computing and connect to
my servers if I need more compute power.

As a tangent, if you have an Android phone and need to do some Linux-style
computing on the go, consider Termux
([https://termux.com/](https://termux.com/)).

Termux enables your Android phone to run command-line utilities, text editors
(vim and emacs), several programming languages (C, C++, Perl, Python, Ruby,
Rust, Scheme, and more), web servers, and lots of other tools.

It is one of my favorite Android apps by far.

~~~
ZoomZoomZoom
What I'd really wanted to see, and not sure why it's still not a thing, is
some standardized laptop that would allow upgrading it's core SoC. Latest Pis
are quite capable for basic tasks and will only get more powerful.

~~~
LeoPanthera
What I want more than anything in the world is a Psion-sized portable computer
where the brains are provided by the Rasperry Pi compute module:
[https://www.raspberrypi.org/products/compute-
module-3-plus/?...](https://www.raspberrypi.org/products/compute-
module-3-plus/?variant=compute-module-3plus-32gb)

I’m genuinely surprised that this isn’t already a thing, since it would make
upgrades trivial.

~~~
thesuperbigfrog
I had a Series 5mx back in the day and it was glorious.

Android has all of the capabilities software-wise, but I have yet to find a
device that matches the Psion Series 5mx form factor, specifically the folding
clamshell and nicely-sized hardware keyboard.

Most external foldable Bluetooth keyboards are too big, rather finicky, and
always running out of battery on me.

~~~
sympodius
I'd say the Gemini and the Cosmo are spiritual successors (same industrial
designer as the Psion Series 5/5mx I believe):
[https://www.planetcom.co.uk/](https://www.planetcom.co.uk/)

------
5-
To go on a tangent, even though my personal search for the ultimate handheld
computer shall never be concluded, I feel like I found a lot of the things
I've been looking for (specifcally in Zaurus and the Psions) in my 7" GPD
Pocket 2, which incidentally (paired with a keyboard and screen) is my main
machine these days, yet I do carry it in my jacket's inner pocket to do some
programming on the go.

It runs Linux, is run-of-the-mill Intel-based ultrabook somewhat on the lower
end (Core i3, 8GB ram, 128GB disk), with indeed its only non-boring feature
being its size. Build quality, battery life, etc. is all on par with big-brand
ultrabooks.

~~~
badtuple
I have a GPD Pocket 2 and I want to like it _so much_, but I just can't get
used to the keyboard layout. Everything about it is perfect except for that,
but since I just program directly from the framebuffer a keyboard that I can't
get used to and use intuitively is pretty much a deal breaker :(

~~~
5-
By "program directly from the framebuffer" do you mean that you can't use X11
key remapping facilities?

In that case, _loadkeys(1)_ will help (on linux).

------
jokoon
I'm less and less convinced that a handheld keyboard can really be justified
if you want to do some linux or programming stuff on such a device.

Touch screens can be simple enough if you get used to them, they save a lot of
space on the device and I think they are cheaper than a keyboard.

Touch-swipe features will also make things much, much easier on a touch
keyboard, and I'm sure it's totally possible to add linux commands or
programming keywords to a swipe dictionary.

Touch keyboards can also have their layouts changed.

Other thing to consider if you're typing code, it would be nice to introduce
more autocomplete to make things easier.

In the end if you really want to type, just get a real keyboard and sit down
at a table. I'd also rather buy a well-made handheld keyboard that you attach
to a device, but sadly I can't find one that is worth it.

~~~
dvdkon
"Soft" keyboards on a touchscreen have a number of disadvantages, the biggest
for me is that they take up a large part of the screen. I could use the
terminal or edit source code just fine on my phone's screen, but only if at
least 40% of it wasn't taken up by a keyboard. Secondly, I think you're
underestimating the number of "weird" sequences of characters programmers and
terminal users regularly type.

Sure, a proper keyboard and a table is always better, but there are often
situations where such a comfort isn't available.

~~~
olivil
But a hardware keyboard takes up a lot of potential screen space, even when
it's not in use.

~~~
dvdkon
This doesn't apply to devices which have slide-out keyboards or a clamshell
design. The linked design is more "Blackberry-style" as far as I can tell, but
those are not the devices I primarily had in mind.

~~~
AnIdiotOnTheNet
There's also stuff like this:
[https://en.wikipedia.org/wiki/Projection_keyboard](https://en.wikipedia.org/wiki/Projection_keyboard)

~~~
yjftsjthsd-h
Those are _sweet_ , but suffer from many of the issues of touchscreen
keyboards (no tactile feedback, no ability to feel the keys blindly).

EDIT: But to be clear, they are great at having a full-size keyboard that
takes up no screen space. Tradeoffs.

------
groundlogic
Nice project. The stumble block for these kinds of projects is often the
keyboard. It seems tricky to get something nice to use without using keyboards
from other products - and then being a slave to that mini keyboard's
dimensions and availability.

This project made something that seemed like it _could_ be nice (the page was
missing a final photo of the project all put together), on a custom PCB with
off-the-shelf switches.

~~~
0x0f0f0f
The keyboard is working fine and since it's powered by a Teensy 3.2/LC it can
be plugged into any USB host, I'm still waiting to get the keys printed in
order to put the working build in the case. The CardKB project is also
interesting if you want a keyboard with soldered keys, only "downside" is I2C
bus.

~~~
groundlogic
CardKB is a chinese project, right? I can't seem to find the single original
source for this thing, just lots of pages talking about it, like:

[https://m5stack.com/products/cardkb-mini-
keyboard](https://m5stack.com/products/cardkb-mini-keyboard)

------
seanwalker08
I built a Raspberry Pi handheld, just a little different type of handheld:
[https://www.simplecove.com/597/wooden-handheld-game-
console/](https://www.simplecove.com/597/wooden-handheld-game-console/)

Not as interesting as the OP though.

------
unixhero
I'd like to build a keyboard computer akin to the Amiga 1200 with a RPI4. Any
one else thinks that would be cool?

~~~
replete
Pi4 Amiga project YES. I'm in. Custom floppy driver required for authenticity.

Checkout the ARMiga Kickstarter project.

~~~
unixhero
Nice project. It's out of production and out of stock as so many of these
projects almost always are.

Maybe I'll just make some clasps and instructions on how to tape it to a
proper keyboard such as the king of all keyboards for all time: Keytronic
KT-2001.

------
ethanpil
This is really inspiring I have been dreaming of building my own little
portable notebook, powered by PI4 and a hefty USB-C battery. With the
beautiful, small HDMI LCD panels available today and a 3D printer, its within
reach!

100% inspired by
[https://habr.com/en/post/437912/](https://habr.com/en/post/437912/) which I
first saw here on HN

~~~
borgel
Depending on your goals, there's the GPD Micro PC [1]. Quite the odd duckling,
but it includes an RJ-45 and an honest-to-god DB9 for RS232! Not nearly as fun
as building it yourself though!

[1] [https://liliputing.com/2019/02/gpd-micropc-handheld-
computer...](https://liliputing.com/2019/02/gpd-micropc-handheld-computer-
preview.html)

------
bayesian_horse
A Raspberry Pi 4 based tablet/laptop may be interesting.

Though I don't know if the RPi4 is actually competitive, in terms of battery
life, with intel-based netbooks and the like.

If I were to do that, I would probably arrive at a ridiculously thick tablet
with a couple of 18650 cells for power and it would need a good fan to try and
save the screen from the heat.

------
ge96
What is that thing called that shows the "distro"? design, I see it all the
the time in /r/unixporn

Also I'm looking forward to when phones get cheaper that have more ram so can
run dex or something similar, not quite "dual boot" but something where you
have a full os working somehow(maybe virtualized though maybe poor
performance)

~~~
lukeholder
screenfetch or neofetch

------
Jaruzel
Anthony DiGirolamo's full project log/design of his 'Raspberry Pi Handheld'
(which is the inspiration/source for 0x0f0f0f's build) is here:

[https://hackaday.io/project/162281/logs](https://hackaday.io/project/162281/logs)

------
girvo
I've been looking for a screen like the one shown in this article for years
now. I've been trying to build something like the "Freewrite", a mechanical
keyboard with barely a computer built into it, with long battery life. This
gets me closer!

------
kwhitefoot
> Use USB devices like ... full size keyboards,

My Moto G5+ and my Lebnovo 10" tablet work perfectly with a USB on the go
adaptor and a full sized Lenovo keyboard with built in hub and a mouse.

Edit: It also works well with memory sticks.

------
cr0sh
Definitely going to be following this, as it's something I've thought of doing
for my "next" phone - for basically all the reasons you've stated.

I'm sick and tired of not being in total control of my current phone.

I've thought about rooting it, but even if I did (it's a Samsung S7 from
T-Mobile - which has a different processor and other stuff than the S7 that is
easily rootable - and there are other "games" Samsung and probably T-Mobile
play cat-n-mouse with the guys figuring out ways to root - which means a new
update, etc - ugh all around ultimately), there's still the whole Google Store
thing, walled gardens, etc.

Then there's the crap that happens with apps you like; I had this great file
manager app that I loved, that also had numerous other tools - had used it for
years, paid for the "ad-free" version, etc. Then one day, via HN or something,
I don't recall exactly, someone noted that the app (and the company behind it)
had been sold, and that the new version was doing dirty things behind the
scenes, introducing bloatware and who knows what else - and people were
abandoning it left and right. I recoiled - did some more research - and that
night took it off my phone; I paid something like $15.00 for it - not a huge
amount of money, but still - money lost. I ended up getting a different file
manager, which is ok, but nothing like what I had - paid for the ad-free
version - but who knows if the same thing will happen down the line?

Then there's the whole "file management", copying, sharing, etc angle - the
whole BS about how in Android, if an app didn't create a directory, you can't
put files in it (this apparently is conditional in some fashion - but it isn't
very clear). This makes moving and managing files very difficult at times. Or
the whole "let's not let users treat the device as a USB block device to
copy/move/delete files from - and instead put in place another crappy layer
that prevents all that - for some hand-wavy reason that didn't seem to be a
problem when I first got my G1"...

There are other things, too - but you get the picture. I'm tired of it.
Totally. My next phone will (hopefully) be one that I build, will run Linux,
and will be under my complete control. I'm kinda hoping that by the time I get
around to it, that there'll be an equivalent to the RasPi 4 in the Zero W's
footprint. Add on a few other modules (IMU+GPS and 4G mainly) - and you have
everything for a full phone. I might even not implement voice call features,
as virtually everything I do tends to be texting-based anyway.

Don't want a keyboard, either - if I can get a decent capacitive touchscreen
that'll connect to the Pi, I'll be fine; if I need a keyboard, bluetooth will
work. Which also means I could use it as a "portable desktop" \- all the
convenience of a handheld, with the ability to become something more like a
laptop on the occasion I need it (plus, if I need a big monitor, plugging that
in would be easy too).

It's nice to see someone else blazing this trail - one that other's have gone
down too (I know of other projects like this - some Arduino based, which is
another route I have considered - but using an ESP32 as the core). You've
already made a ton of progress, but I look forward to your future efforts.
Good luck with it!

~~~
zxcvbn4038
Agree! One of the features I've always wanted is a whitelist - instead of
blocking hundreds of numbers I don't want calling me and/or having to turn off
all notices (Do Not Disturb Mode) to stop the phone from ringing. I had always
wondered why nobody offers this and it turns out its because the phone
producers aren't clear if whitelisting calls violates FCC regulations. I
believe that the FCC has recently clarified that it does not, however I've not
seen anyone adding the feature. I would also like to not have voicemail on my
phone - I tried to turn it off ten years ago and found that it was reactivated
each month by an automated process. Eventually I gave up and now people just
get the "mailbox has not been set up" message which I'm pretty sure still lets
them leave a message but I don't get any notice which is what I want.

~~~
andai
I recently had a data-only sim card. It was meant to go in a router, but it
worked in the phone too, except you couldn't get any calls. For me, this was a
huge plus. It's not available in my current country though.

My current phone (cheap Samsung A3 from 2015) has Call Rejection in call
settings, and can reject all or use a blacklist. No whitelist though.

I recently tried to disable my voicemail, too. But the only option available
is to disable "forward to voicemail" so it just ends up ringing forever, and
if my phone's in airplane mode, it just goes _directly_ to voicemail. There is
no escape!

------
techstrategist
What is the most useful handheld keyboard you’ve seen or used?

~~~
andrey_utkin
Twiddler 3

~~~
techstrategist
Now that’s the kind of thing I’m looking for! How’s the learning curve?

Edit: too bad about the $199 price tag. Way out of my impulse purchase range.

~~~
andrey_utkin
Takes few hours to start, few evenings to be able to type with pleasure.

I use CoolHand layout which is good for Unix command line.

------
mirimir
It'd be cool to have an integrated mobile version of Tinfoil Chat.[0]
Basically, three computers routed via Tor, with one that's effectively
isolated using optocouplers.

You'd probably want at least that one to be EMF shielded, as well. And you
could generalize for web browsing etc. Maybe also use ideas from Qubes Air.

0) [https://github.com/maqp/tfc](https://github.com/maqp/tfc)

------
qwerty456127
I'd love to have an eInk one. AFAIK there are eInk displays available for rPi,
but they probably need a different set-up.

~~~
jsjohnst
> AFAIK there are eInk displays available for rPi

There are hundreds in all shapes, sizes, and levels of color support. Quick
search of Adafruit, Amazon, Digikey, or similar will turn up a lot of them.

------
beilabs
My first system was a ZX-Spectrum 128k; I would love to get one of those
keyboards; change out the cassette by to stick in the raspberry pi and use
that as a dedicated system hooked up to a monitor. That was a really nice
keyboard from memory; granted 30+ years have made the mind fog up a bit.

------
whsheet
Guess I am the only one but I heavily depend on my smartphone's ssh client and
a fast and close VPS. I use it all the time and a phone's keyboard is actually
the perfect interface for console apps like vim.

------
8bitsrule
Soooo ... pocket-sized CPU, works with standard-sized KB and monitor ...
sweet.

Soooo ... where do I reach to unplug the optional hand-held phoneset with all
the baseband HW/SIM/snoopy-shit built into it?

------
kristianp
I wouldn't use the word "full" for the keyboard. It's 60 keys and looks the
size of half a keyboard. I think they meant that it is going to have all the
qwerty alphabet.

------
replete
Great start. That low resolution is challenging for desktop UI, but maybe
great if you're a devop hacker. We need a real open source phone platform. I'm
curious about IBMs new hardware ..

------
ausjke
or you can run termux on android with a bluetooth portable keyboard
[https://termux.com/](https://termux.com/)

------
etatoby
What would be cool is putting a RPI-like mainboard and modern screen in an old
PSION 5 case. Those things were built like bricks and had a great keyboard.

