DIY Portable Mini 7-Inch Linux Laptop
by reza.rosy2000 in Circuits > Computers
58 Views, 0 Favorites, 0 Comments
DIY Portable Mini 7-Inch Linux Laptop
I needed a dedicated Linux system for penetration testing, learning Linux more deeply, and running software that is developed exclusively for Linux. I did not want to install Linux on my main personal laptop, so I started looking for an alternative solution.
Since I have a strong interest in DIY projects and hybrid builds, I decided to build my own portable Linux system instead of buying a ready-made device. I wanted to experience the real challenges of designing, assembling, and troubleshooting a custom device rather than just using a finished product.
Commercial mini laptops, such as GPD devices, were also an option, but their prices were relatively high for my needs. This made the DIY approach both more practical and more educational for me.
This project is not about creating a perfect or commercial-grade laptop. It is about learning, experimenting, and building a functional tool that fits my personal use cases.
Inspiration & Credits:
While researching similar projects, I discovered that many people had already built portable Linux-based mini laptops before me. During my Google searches, I repeatedly came across a project on Thingiverse that immediately caught my attention.
The design stood out because of its modular structure and the flexibility it offered for customization. This made it a perfect starting point for my own modifications and ideas.
Original Thingiverse project:
https://www.thingiverse.com/thing:3410107
I want to be clear that this project is inspired by that design, and I do not claim it as an original concept. My work is a personal modification and adaptation based on my own needs, preferences, and learning goals.
Design Philosophy – Transparency and Open Hardware
Since childhood, I have been fascinated by open systems and devices where internal components are visible. I still remember transparent Swatch watches, where you could see the internal mechanism working in real time. That design philosophy left a lasting impression on me.
Because of this, I wanted to modify the original design to make parts of the laptop’s internal electronics and structure visible. For me, seeing the hardware while it is operating creates a stronger connection to the device and reflects the spirit of open-source and DIY culture.
This project embraces that idea by prioritizing accessibility, visibility, and modifiability over aesthetics alone.
Hardware Platform – Why Raspberry Pi 4 (4GB)
For this project, I chose the Raspberry Pi 4 with 4GB of RAM mainly because of its good price-to-performance ratio and wide availability.
To further reduce the overall cost, I purchased a used Raspberry Pi 4 from a second-hand marketplace instead of buying a brand-new board.
I had previous experience building DIY devices based on Raspberry Pi Zero W and Raspberry Pi 3 Model B, including a retro gaming console and a pocket-sized computer. While those projects were successful, I consistently noticed performance limitations, especially when running a full Linux desktop environment.
Based on those experiences, I decided to use the Raspberry Pi 4 Model B for this build. Compared to earlier Raspberry Pi models, it offers significantly better CPU performance, improved memory bandwidth, and more suitable I/O options for a portable Linux laptop.
Display Selection – Why a 7-Inch Touchscreen
Choosing the display was one of the most important design decisions in this project. For a long time, I was undecided between using a 5-inch or a 7-inch screen.
After researching similar builds and considering real-world usability, I realized that a 7-inch display offers much better readability for text, terminal output, and desktop applications. This is especially important for Linux usage, where working with terminals and configuration files is common.
I also wanted the device to remain usable even if the physical keyboard failed or was temporarily unavailable. For that reason, I chose a 7-inch capacitive touchscreen (Type H) from Waveshare.
This display provides a good balance between price and performance and uses an HDMI input, which ensures better responsiveness and display performance compared to some GPIO-based display solutions. The capacitive touch functionality also adds flexibility for future use cases.
Project Direction – Mini Laptop or Cyberdeck?
Although this project functions as a portable mini laptop, I intentionally designed it with future expansion in mind.
I plan to use the Raspberry Pi’s GPIO pins in future upgrades, which makes this project closer to a cyberdeck than a traditional closed laptop. The goal is not just portability, but also accessibility to hardware interfaces for experimentation, hacking, and learning.
Because of this, the design prioritizes modularity and hardware visibility rather than a sealed, consumer-style product.
Supplies
Parts List
Core Components
Raspberry Pi 4 Model B (4GB RAM)
Main computing platform for running Linux and desktop applications.
32GB microSD Card
Used for the operating system and software storage.
7-Inch Capacitive Touch Display (Type H – Waveshare)
HDMI-based touchscreen display for better performance and readability.
Rii X1 Mini Wireless Keyboard (Bluetooth / 2.4GHz)
Compact keyboard with touchpad for portable use.
Power System
Two 10,000mAh Li-Po Batteries (2S configuration)
Main power source for portable operation.
2-Cell Battery Protection Board (Charge / Discharge Protection)
Protects the batteries from overcharge, over-discharge, and short circuits.
2-Cell Fast Charging Module with Balance Charging
Allows safe and balanced charging of both cells.
2-Cell Battery Charge Indicator Module
Displays battery charge status.
5V Voltage Regulator Module (2S–6S input, 3A output)
Steps down battery voltage to a stable 5V for the Raspberry Pi and peripherals.
DC Barrel Jack (Female)
External power input for charging or bench power.
Two DC Voltage Display Modules
Used to monitor battery and system voltage.
Cooling
5V 30×30 mm Cooling Fan
Active cooling for Raspberry Pi 4.
Heatsinks for Raspberry Pi
Improves thermal performance during sustained workloads.
Audio
PAM8403 Audio Amplifier Module
Compact Class-D amplifier for driving speakers.
Two 4Ω Mini Speakers
Built-in audio output.
Headphone Jack (Female)
Audio output for headphones.
Display & Interface Cables
Micro HDMI Male Adapter (Flat Cable Compatible)
Micro HDMI to Standard HDMI Adapter Cable
90-Degree HDMI to Flat Cable Adapter
50 cm HDMI Flat Cable
Used to route the display signal inside the enclosure efficiently.
Two Micro USB Male Connectors
Used for power and auxiliary connections.
Flat Cables and Wires (as needed)
General internal wiring.
User Interface & Indicators
OLED Display (SSD1306, I2C)
Used for system or battery information display.
Two-Position Push Button Switch
Used for power or control functions.
Enclosure & Materials
PETG Filament (Transparent)
Used for 3D printing the enclosure.
I chose PETG mainly for its transparency, but any filament type or color can be used based on personal preference.
Transparent Acrylic Sheet (Plexiglass)
Used to expose internal components.
Black Acrylic Sheet
Used for contrast and structural elements.
Design Decisions & Technical Challenges
Why Transparent PETG?
I chose transparent PETG filament for several reasons. First, PETG offers good mechanical strength and significantly less brittleness compared to ABS. Second, its transparency aligned perfectly with my goal of making parts of the internal hardware visible.
I wanted the enclosure to allow partial visibility of the electronics, reinforcing the idea of an open and accessible device rather than a sealed black box.
However, printing PETG introduced several challenges. I was using a modified Da Vinci 1.0A printer that I had previously converted to an open-source setup, and this was my first time printing with PETG.
PETG has a higher melting temperature than PLA, and if it remains inside the hot nozzle for too long, it can burn and lose its mechanical properties. This often leads to filament degradation and nozzle clogging. Because of this, print speed and temperature control became critical factors.
Another major issue with PETG is moisture absorption. PETG absorbs humidity relatively quickly, which negatively affects print quality. This forced me to build a DIY filament dryer to ensure consistent results. I may document that filament dryer as a separate Instructables project in the future.
Why HDMI Flat Cables?
Internal space inside the enclosure was extremely limited, which made standard HDMI cables impractical.
Traditional HDMI cables are relatively thick, difficult to bend sharply, and occupy too much space. In contrast, HDMI flat cables are flexible, thin, and much easier to route in tight enclosures.
In several areas, I had to fold the HDMI flat cable sharply to fit the internal layout. Despite this, the flat cable performed reliably without signal issues. This would not have been possible with a standard HDMI cable.
Why a 2-Cell (2S) Li-Po Battery Configuration?
The power system is based on a 2-cell (2S) lithium polymer battery configuration connected in series. This setup provides excellent battery life, reaching up to approximately 8 hours of usage with Wi-Fi enabled and moderate CPU load.
Lithium polymer batteries were chosen primarily because of their slim profile. Their low thickness allowed them to fit inside the enclosure without compromising internal cable routing. In some areas, I even had to route HDMI cables underneath the batteries, which would not have been possible with thicker battery types.
Using a 2S battery configuration significantly increases system complexity. Charging, discharging, and balancing require additional modules and careful design. However, the extended battery life made this added complexity worthwhile for this project.
Power Architecture & Operating Modes
This mini laptop can be powered in two different ways:
Battery-powered mode
External power adapter mode (9V–26V)
At the center of the entire power system is a Hobbywing 5V 3A switching regulator, which acts as the main power hub for all components, including the Raspberry Pi and peripherals.
Core Power Regulation
A 5V switching regulator rated at 3A is used to supply stable power to the entire system.
This regulator accepts a wide input voltage range, which allows the laptop to operate both from batteries and from an external adapter without modification.
Battery Power Path (2S Li-Po Configuration)
The battery system consists of two lithium polymer cells connected in series (2S), combined with a protection and charging system.
Battery wiring:
Positive terminal of Battery 1 → Positive input of the battery protection board
Negative terminal of Battery 2 → Negative input of the battery protection board
The connection point between the two batteries → BM terminal of the protection board
Protection board outputs:
P+ and P− from the battery protection board → Input of the 5V regulator
A push-button switch is installed between P+ and the positive input of the regulator to control system power when running on battery
Charging module connection:
Positive and negative outputs of the charging module → P+ and P− of the protection board
BM of the charging module → Battery midpoint (same connection between the two cells)
This configuration provides protection against overcharge, over-discharge, and short circuits while allowing safe balance charging.
External Adapter Power Path (9V–26V)
The laptop can also operate directly from an external power adapter with an input voltage range of 9V to 26V.
Adapter wiring:
Positive and negative terminals of the DC barrel jack → Directly connected to the input of the 5V regulator
Important behavior:
When using an external adapter, the push-button switch must remain in the OFF position
As soon as the adapter plug is connected, the laptop powers on automatically
This allows the device to be used even when the batteries are fully discharged, without requiring any internal changes.
Why This Design?
This dual-power design allows the laptop to function reliably in multiple scenarios:
Fully portable operation on battery power
Continuous use on a bench power supply or wall adapter
While the 2S battery system increases wiring complexity, it provides significantly better runtime and flexibility compared to single-cell solutions.
Case Design & Fabrication
For the enclosure, I used a hybrid fabrication approach combining:
3D printing
CNC milling
Laser cutting
All design and fabrication files will be uploaded with this project.
Step 1: Display Frame and Acrylic Integration
My 3D printer is controlled using OctoPrint, which allows cutting a printed object at a specific height.
Because the acrylic sheet thickness was 2 mm, I needed to remove exactly 2 mm from the display frame.
I sliced the display frame STL and removed a 2 mm section at the correct height
The removed section was exported and converted into a CNC toolpath using FreeCAD
Using my DIY 25×18 cm CNC machine, I milled the corresponding shape into the acrylic sheet
After machining:
The display was mounted to the acrylic using four M3 screws
Hole positions were manually marked with a marker
Holes were drilled using a standard drill bit
This method ensured accurate alignment between the printed frame and the acrylic panel.
Step 2: Keyboard Cutout – Laser + CNC Workflow
The keyboard mounting area required more precision and multiple fabrication methods.
The STL file for the keyboard mounting area was modified in FreeCAD
The updated design was converted into a laser cutting toolpath
The laser was used to cut the keyboard opening in acrylic
Step 3: Keyboard Fitment Challenge
The main mechanical challenge of this project was keyboard placement.
The keyboard could not be installed with its original plastic enclosure:
From below, it interfered with the batteries
From above, it conflicted with the display
To solve this:
I downloaded a 3D model of the keyboard from GrabCAD
Using FreeCAD, I designed a laser-cut acrylic plate to hold:
The keyboard PCB
The silicone button membrane
The downloaded model was not dimensionally accurate, and the button cutouts were too tight.
To fix this:
I used parametric scaling (macro resizing) to slightly enlarge all key openings
The final result allowed the keys to fit snugly but without binding
The keyboard was then fully disassembled:
Plastic housing removed
Only the PCB and silicone key layer were retained
The PCB was fixed to the acrylic plate using adhesive
Step 4: Acrylic Bonding (Black + Transparent)
For bonding the black acrylic to the transparent acrylic, I used chloroform.
Chloroform chemically welds acrylic, creating a clean, strong, and nearly invisible joint.
This method:
Produced a professional-looking finish
Created a rigid structural bond
Avoided visible glue residue
Step 5: Internal Electronics Compartment
All sections of the enclosure that house electronic modules were manufactured using 3D printing only.
This allowed:
Fast iteration
Easy modification
Precise mounting points for modules and wiring
Step 6: Hinge Design and Final Assembly
Two long M3 screws were used as hinges between the screen and base
The hinge design was fully functional and structurally stable
Additionally:
A custom 3D-printed cover was designed for the 90-degree HDMI connector
This cover was glued directly onto the acrylic for mechanical protection and a cleaner appearance
Result
The combination of 3D printing, CNC milling, and laser cutting worked exactly as intended.
Despite the complexity, the final enclosure design proved functional, modular, and visually clean.
download main stl files from given thingiverse link in intro section.
Design Adjustments & Compromises
In the initial design, I planned to use the Raspberry logo on the enclosure as a speaker grille. Unfortunately, due to severe internal space limitations, this idea had to be abandoned.
The main issue was internal wiring and the high number of installed modules. Speaker placement became increasingly difficult as the project progressed, and keeping the internal layout clean took priority over this visual feature.
Because I used transparent acrylic, I had the freedom to place modules based on both functionality and visual preference. Many modules were mounted directly onto the battery surface using transparent double-sided tape.
Mounted modules include:
SSD1306 OLED display
DC voltage indicator for battery voltage
DC voltage indicator for adapter voltage
This approach allowed flexible placement without adding extra brackets or printed mounts.
Thermal Performance & System Monitoring
System temperature is continuously monitored using the OLED display.
Based on real-world usage:
Idle / low CPU load: approximately 50°C
Video streaming or sustained load: approximately 60°C
These temperatures are within safe operating limits for the Raspberry Pi 4 and indicate that the cooling solution is adequate for daily use.
Physical Characteristics & External Access
The final assembled device weighs approximately 1 kilogram, which is acceptable for a mini laptop of this size and construction style.
The system includes:
One external USB port for peripherals
One HDMI output for external displays
Since these ports were not fully planned during the initial enclosure design, I manually created the required openings using a rotary tool (grinder) to modify the 3d printed enclosure.
Current Limitations
Due to design constraints and late-stage modifications:
Speaker placement could not be implemented as originally planned
Some external ports required manual enclosure modification
Internal layout is dense, which limits further expansion without redesign
Despite these limitations, the system remains fully functional and stable.
Future Improvements
This project is designed with future upgrades in mind.
Planned improvements include:
Bringing Raspberry Pi GPIO pins to the enclosure exterior using 90-degree pin headers
Cleaner port integration in a revised enclosure design
Potential redesign of the speaker system
These changes would push the project further toward a true cyberdeck-style platform.