Portable Pi Mk II

A revised Portable Pi with a Pi 5, 1280x800 touchscreen and 50% ortholinear keyboard running Ubuntu.

Similar projects worth following
It has been well over a year since I started using Portable Pi as my main portable computer. Overall, it has been a positive experience with the main shortcoming being the low screen resolution and I have missed number keys. Consequently, although Mark II has the same screen size, the resolution is now 1280x800 - 67% more pixels! Additionally, I have upgraded the processor from Pi 4 to Pi 5 and the keyboard from 40% to 50% - still ortholinear but now with number keys. The keyboard, which is a plateless build on a KPRepublic JJ50 v2 PCB, provided the greatest technical challenge after I bricked it with the wrong firmware - more details below.

The Pi 5 gets a much better performance out of its SD card than the Pi 4, so the Mark 2 does not need the SSD. To further simplify things, I have relied on an external power source as I was not sure the Pi 5 would reliably run from a powerbank - although I have subsequently found a cheap one that seems to work.


The most visible difference with Portable Pi is the new bright orange case. Unfortunately, the new display with its larger surround did not quite fit the original Casoman case. The new case (95.4 x 275 x 203mm) from Maplin was available in black or orange - I chose orange to distinguish it from the previous Portable Pi, however, I am not sure that was at all the right choice:).

Visible in the photo above is the USB C socket that provides power to the Pi 5.


This is a 50% ortholinear mechanical keyboard based on a JJ50 PCB from KPRebuplic.

I chose this PCB as firstly, it is currently the only accessible example of a 50% keyboard and secondly, it had a keyboard definition in the QMK firmware repository. The PCB is pictured below:

As you can see, it has a USB C connector not the mini USB connector pictured on the KPRepublic website. In fact this is an upgraded V2 of the JJ50 with an Atmega 32U4 processor and not the V1 with an Atmega 32a processor as advertised. I would have been pleased with this upgraded version had I not immediately flashed it with what is V1 firmware from QMK and essentially bricked the board. Luckily, in fact not completely bricked, as the bootloader showed up in QMK Toolbox.

KPRepublic pointed me to their bootmapper software, however, I could find nothing relevant to the JJ50 so after recovering from my initial despair, I resolved to create a new JJ50v2 definition for QMK. To do this I needed to find the Atmega 32U4 pins connnected to the key switch matrix. I managed to do this by a combination of visual inspection and continuity testing with a multimeter and I was very happy to reflash the board with working firmware. I subsequently found a closed pull request for JJ50v2 that had not been committed to the main QMK repository on Github - so I could have saved myself some considerable effort and anxiety! For anyone interested in the JJ50, you can find the matrix  here. For convenience,they are:

#define MATRIX_ROW_PINS { D3, D5, E6, F1, F4 }
#define MATRIX_COL_PINS { B1, B0, F7, F0, C7, C6, B6, B5, B4, D7, D6, D4 }

 I used my usual Gateron Yellow switches to populate the keyboard, however, I made the mistake of ordering 3 pin versions which are no good for soldering into a PCB with no plate to align the switches. I evetually got the right 5 pin switches from MechBoards and the result is shown below.

I did not use a plate as there was none available so there is quite a lot of flex in the PCB when you press a key. Initially this resulted in a unpleasant plastic clattering noise from the keyboard before I packed some stiff foam under the PCB which restored the dull "thwock" sound that I prefer.

Display & Raspberry Pi 5

The display is a an ELECROW 10 inch 1280 x 800 HDMI touchscreen available from Amazon. It has mounting points on the back of the display for a Raspberry Pi and it can be powered from a Raspberry Pi USB port.

I glued some perspex strips with brass spacers to the back of the display as I did not think the four mounting points for the Raspberry Pi were enough to support the display on its perspex back plate as shown below.

There is enough of a gap around the display to ensure good airflow to the Raspberry Pi cooler and in addition enough of a gap at the bottom to velcro the USB port extender to the side of the case. The foam at the back of the case provides some shock absorbing protection for the display which is held into the case with a a single bolt. You can see the stand offs that support the keyboard in the picture below. Since taking this picture I have added a layer of foam to better support the keyboard PCB.


I was unsure on whether a cheap powerbank such as the one that I used in Portable Pi would be sufficient to power a Raspberry Pi 5, so I opted for the simple solution of relying on an external power source. The new version of the Recovery Kit has found a powerbank that works with a Pi 5, however, this is very expensive ( £199 on Amazon UK`). The 27AH...

Read more »

  • Accessories

    jefmer04/25/2024 at 10:10 0 comments

    After using the Mark II for a while, I have found that there are a number of accessories that greatly increase its general utility.

    Powerbank - I noted in the details section above that this is a cheap 27AH unit from Amazon. One of its outputs is rated at 5V and 4.5A. So far, I have had no power glitches - even when using a USB SSD drive.

    Micro SD extension cable - this is available from Pimoroni and makes it much easier when changing the SD card that the Raspberry Pi boots from. This is very useful as currently Ubuntu does not have the DRM software for ARM architectures necessary to run Netflix, while Raspberry Pi OS does. The picture shows the Mark II running the latest Bookworm release of the RP OS. I velcroed both the end of the extension cable and a spare SD card holder to the inside of the case.

    USB speaker - This is a small inexpensive unit available from PiHut that gives surprisingly clear sound.

    Bluetooth Mouse - although you can get away with just using the touch screen and the keyboard mouse emulation, both Ubuntu and Raspberry Pi OS are much more usable with a mouse.

    GPS USB Unit - available from Amazon and useful with online maps when travelling.

    I carry all these accessories in another waterproof case as pictured below - it's a case that I was going to use for Pickle Pi before I decided on the tablet format.

    Ideally all these of accessories should have been built into the Mark II case, however, that would have needed a much bigger case and would have been less flexible than the current two case solution.

View project log

Enjoy this project?



Alessandro Pocaterra wrote 04/25/2024 at 08:51 point

Great project!
Something to improve: the H is turned up side down :-)

  Are you sure? yes | no

jefmer wrote 04/25/2024 at 10:06 point

Thanks - you're right - easy to fix:-)

  Are you sure? yes | no

jefmer wrote 04/20/2024 at 09:01 point

Hi Andy, Yes, that's the case and I was surprised when Maplin came up in my search.

The USB hub is not powered, its a cheap 4-port USB 3.0 hub from Amazon. There are a lot of very similar ones, mine has the brand name Oliveria.

Yes, I did drill the case for the USB-C socket - its a Duttek USB C Panel Mount Cable from Amazon and its has a rubber washer so the case is probably still at least splash proof.

  Are you sure? yes | no

Andy Piper wrote 04/20/2024 at 11:21 point

thanks for the added details! I’m thinking about doing something similar - the keyboard seems to be the main effort overall.

  Are you sure? yes | no

Andy Piper wrote 04/19/2024 at 19:51 point

Thanks for sharing! TIL that Maplin is still a thing! Case looks like this one

Curious about the USB hub, power supply, etc. Am I right in thinking there's a hole drilled for the USB-C power in?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates