Repository navigation
Releases
Nightly build
Note
The nightly build of 9b945b3 (2026-11-12), not a version: the changes since v0.1.0, as the next version's note will list them. Tried less than a version.
💡 Key highlights
Installing on the phone from the microSD card
Installing on the phone's storage used to take a computer twice: Tow-Boot's installer on a card first, then the firmware written over the USB cable. Now the firmware running from a microSD card installs itself there, with what you did while trying it: contacts, messages, photos, settings and installed apps. It also installs Tow-Boot when the phone has none.
Open Settings › Storage and tap Install on the phone: https://eliandoran.github.io/PinePhone/install/#installing-it-on-the-phone. The phone then starts from its own storage, with the card in or not; to use the card for something else, erase it from the same page.
Videos
The phone could not play a video. The new Videos app (in the menu, under Internet & media) plays the videos in its folder, which a computer sees over USB file transfer as Videos. The phone's video engine decodes H.264, H.265 and VP8 pictures up to 1080p, so the processor does not have to. Turn the phone sideways to watch on the whole screen: https://eliandoran.github.io/PinePhone/apps/videos/.
🐞 Bugfixes
Installing and updating (1)
- Updating over the air a phone running from a microSD card reported the update as rolled back, though the new version had started and been kept.
Lock screen (1)
- On waking, the lock screen's clock showed the time the phone went to sleep for up to a second before changing to the current time.
General (1)
- The clocks (home screen, lock screen, status bar, quick settings, Clock) changed minute up to a second after it turned, each at its own moment.
Status bar (1)
- After switching between the light and dark themes, the status bar's USB and Bluetooth symbols kept the previous theme's color.
✨ Improvements
Settings (1)
- Settings tells the phone's storage (eMMC) and a microSD card apart: About phone says which one the system started from, under Started from, and the Boot slot as A or B; Storage has a section per disk, the one the system runs from first; the microSD card's shows its capacity, or that no card is plugged in, and follows a card put in or taken out; the system's area shows how big it is and that it is read-only, without free space, as nothing is ever stored there.
Mobile network (2)
- Calls go over 4G (VoLTE) where the operator takes them there, keeping 4G and mobile data during a call; elsewhere they fall back to 2G or 3G as before. It works on Vodafone (Romania); with a Digi (Romania) SIM, whose calls over 4G the modem refused, it starts off. Settings › Network › Calls over 4G (VoLTE) turns it on or off: https://eliandoran.github.io/PinePhone/mobile/#calls-over-4g-volte.
- Text messages go over 4G where the network takes them, and the modem no longer restarts after a new SIM to send them the older way, so it is ready about 30 seconds sooner.
Keyboard (1)
- The keyboard offers what was copied with a Paste button above the keys, in any field, passwords included; the phone forgets it after an hour (typing).
Telegram (3)
- Telegram asks for your API credentials on the phone: type the api_id and api_hash of your app from my.telegram.org instead of putting them in a file, and type them again if Telegram refuses them. See Signing in.
- A message held down is copied, to paste anywhere (copying a message).
- Signing in to Telegram shows number keys: a dial pad for the phone number, a number pad for the code.
Installing and updating (1)
- The firmware is built every night it changed, as the nightly build on the releases page, which lists what changed since the last version; the builds of single changes are no longer kept for download.
Browser (2)
- Browser's pages can be typed in: tapping a login, a search box or a form opens the keyboard, with the number pad for numbers (typing in a page).
- Browser's pages scroll and animate smoother: about 50 frames a second where they got 33.
Boot (1)
- The home screen appears about 4 seconds sooner after switching the phone on, and the modem is ready for calls about 4 seconds sooner.
Status bar (1)
- While the modem starts or looks for a network, the signal bars light up one after another instead of staying dim.
General (1)
- The interface's log is kept across restarts, the last five, and tells each call's course (how it started, what you did, how it ended and the network's reason), so a problem can still be looked into after the phone restarted. USB file transfer shows them in a read-only Logs folder, as does Files, and Settings › Developer mode › Log modem commands adds everything the phone and the modem say to each other: https://eliandoran.github.io/PinePhone/debugging/#what-to-look-at.
Files (1)
- Files shows a whole text file, not only its start: Show the whole file under it. A log opens at its end and follows what the phone adds to it: https://eliandoran.github.io/PinePhone/apps/files/#reading-a-whole-text-file.
Terminal (2)
- Terminal is part of the firmware: every phone has it in the menu, under Tools, for reading logs and running commands without a computer; an earlier Terminal installed separately is left out (Terminal).
- Terminal shows colors, bold, underlined and reversed text as programs print them (
ls --color,htop,vi), also in the lines scrolled away (Terminal).
v0.1.0
The first release of a feature phone firmware for the original PinePhone: Buildroot, mainline
Linux and a single LVGL program as the whole interface, with no desktop stack underneath. It
starts in a few seconds and its interface runs at the display's full 66 FPS.
Try it in your browser first: it is the same
interface compiled to WebAssembly, with pretend hardware.
Which file to download
| File | For |
|---|---|
pinephone-v0.1.0-sd.img.xz |
Trying it from a microSD card. The phone's own system is left as it is. |
pinephone-v0.1.0.img.xz |
Installing it on the phone's storage (eMMC). Needs Tow-Boot, and erases what is there. |
pinephone-v0.1.0-rootfs.ext4.xz |
Updating a phone that already runs this firmware, over the USB cable. |
.bmap, SHA256SUMS |
Writing with bmaptool, and checking the downloads. |
The steps for each are in Installing.
balenaEtcher writes the .xz files as they are.
A card is slower than the eMMC: the phone starts a little slower and large apps take longer to
open the first time.
What is in it
- Calls, text messages, operator codes (USSD) and mobile data up to 4G. A call or a message
wakes the phone from sleep. - Apps: Phone, Messages, Contacts, Clock, Calendar, Calculator, Notes, Tasks, Recorder,
Files, Compass, Camera (reads QR codes), Gallery, Music, Books (ePub), Maps, Weather, Web Lite
and Snake. - Wi-Fi and Bluetooth: speakers, headsets for calls, game controllers.
- File transfer with a computer over USB (MTP).
- Updates over the cable into a second slot, which the phone undoes by itself when the new
version does not reach its home screen. - An on-screen keyboard with autocorrection, in English and Romanian.
- Tap to wake, a dark and a light theme, the display mirrored on a monitor over USB-C.
Known limitations
- Original PinePhone only, not the PinePhone Pro.
- Calls go over 2G or 3G. Calls over 4G (VoLTE) are turned off, so calls do not work where
those networks are gone. Text messages and data work on 4G. - The mobile network has been tried with one operator (Digi, Romania).
- The external apps (Telegram, Email,
GitHub, Assistant, Browser, Terminal, Doom, Genesis) are not in this release: for now they are
installed withjust appfrom a computer that built the firmware. - File transfer has only been tried with a Linux computer.
This is a personal project, shared as it is. Issues are welcome.