Librem 5

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Librem 5
Librem5 Azdle 09 desktop.jpg
Brand Purism
Dimensions 153 x 75 x 15.5 mm[1]
Weight 230g[2]
Operating system PureOS/Phosh
CPU NXP i.MX 8M Quad core Cortex-A53, 64bit ARM @max 1.5GHz (auxiliary 266MHz Cortex-M4F)
GPU Vivante GC7000Lite
Memory Micron 3GB LPDDR4-3200 DRAM
Storage Kioxia 32GB eMMC flash memory
Removable storage microSD (2TB max)
Battery 3600mAh, user-replaceable, 12V fast charging
Data inputs Sensors: <templatestyles src="Plainlist/styles.css"/>

Other:

<templatestyles src="Plainlist/styles.css"/>
  • power and volume buttons,
  • 3 hardware kill switches (cellular modem, Wi-Fi/Bluetooth, cameras/mic)
Display Mantix 144mm (5.7″) 720×1440 IPS TFT
Rear camera Samsung S5K3L6XX 13.25 MP, LED flash
Front camera SK hynix YACG4D0C9SHC 8.0 MP[1]
Sound Wolfson Media WM8962 DAC
Connectivity Redpine Signals RS9116 Wi-Fi 802.11 a/b/g/n (2.4GHz/5GHz) and Bluetooth 5, 3.5mm headphone/microphone jack, USB-C USB 3.0 PD/DisplayPort, 3FF Smartcard reader
Other haptic motor, notification LED with pulse-width modulation control of RGB color

The Librem 5 is a smartphone manufactured by Purism that is part of their Librem line of products. The phone is designed with the goal of using free software whenever possible, and it runs on PureOS, a GNU/Linux operating system.

History

On August 24, 2017, Purism started a crowdfunding campaign for the Librem 5,[3][4] a smartphone aimed not only to run purely on the free software provided in PureOS, but to "[focus] on security by design and privacy protection by default". Purism claimed that the phone would become "the world's first ever IP-native mobile handset, using end-to-end encrypted decentralized communication"[5]. Purism has cooperated with GNOME in its development of the Librem 5's software. It is planned that KDE and Ubuntu Touch will also be offered as optional interfaces.[6]

The release of the Librem 5 has been delayed several times. It was originally planned to launch in January 2019. Purism announced on September 4, 2018 that the launch date of the Librem 5 would postponed until April 2019,[7] due to two power management bugs in the silicon and the Europe/North America holiday season. Development kits for software developers, which were shipped out in December 2018,[8] were unaffected by the bugs, since developers normally connect the device to a power outlet rather than rely on the phone battery. In February, the launch date was postponed again to the third quarter of 2019, because of the necessity of further CPU tests.[9]

Specifications and pre-orders, for $649, to increase to $699, were announced in July 2019.[10] On September 24, 2019, Purism announced that the first batch of Librem 5 phones had started shipping.[11][12] A video of an early phone was produced,[13] and a shipping and status update was released soon after.[14][15] However, the first batch, called Librem 5 Aspen, was shipped only to employees and developers. On November 22, 2019, it was reported that the second batch, called Birch, would consist of around 100 phones and would be in the hands of backers by the first week of December.[16] In December 2019, Jim Salter of Ars Technica reported "prototype" devices were being received; however, they were not really a "phone" yet. There was no audio when attempting to place a phone call, and cameras didn't work yet.[17] By May 2020, TechRadar reported that the call quality was fine, though the speaker mode was "a bit quiet" and the volume adjustment didn't work. The battery time, at 3-5 hours, and the inability of the phone to charge while turned on, they called "A stark reminder of the Librem 5's beta status".[2]

In December 2019, Purism announced that it will offer a "Librem 5 USA" version of the phone for the price of $1999, which is assembled in the United States for extra supply chain security.[18] According to Purism's CEO, Todd Weaver, “having a secure auditable US based supply chain including parts procurement, fabrication, testing, assembly, and fulfillment all from within the same facility is the best possible security story.”[19]

Hardware

An initial rendering of the Librem 5 phone

The Librem 5 features an i.MX 8M Quad Core processor, with an integrated GPU which supports OpenGL 3.0, OpenGL ES 3.1, Vulkan 1.0 and OpenCL 1.2 with the default drivers;[20] however, since the driver used is the open source Etnaviv driver, it at present only supports OpenGL 2.1 and OpenGL ES 2.0.[21][1] It has 3GB of RAM, 32GB of eMMC storage, a 13MP rear camera, and an 8MP front camera. The left of the phone features three hardware kill switches, which cuts power to the camera and microphone, Wi-Fi and Bluetooth modem, and the baseband modem.[22]) The device uses a USB-C connector to charge its 3600mAh lithium battery. The 144mm (5.7") IPS display has a resolution of 1440×720 pixels. It is the first phone to contain a smartcard reader and two M.2 slots for replaceable cellular modem and WiFi/Bluetooth cards. It also has a 3.5mm headphone/mic jack, a single SIM slot and a microSD.[12]

Mobile security

The hardware features three hardware kill switches that physically cut off power from both cameras and the microphone, Wi-Fi and Bluetooth, and baseband processor, respectively. Further precautionary measures can be used with Lockdown Mode, which, in addition to powering off the cameras, microphone, WiFi, Bluetooth and cellular baseband, also cuts power to the GNSS, IMU, ambient light and proximity sensor.[23] The kill switch to cut the circuit to the microphone will prevent that the 3.5mm audio jack is used for acoustic cryptanalysis.[24][25]

Librem 5 is the first phone with easily-accessible hardware kill switches to cut the electrical current to the cellular baseband, Wi-Fi/Bluetooth and GNSS. This is possible due to the fact that these components are not integrated into the System on a Chip (SoC) like in conventional smartphones. Instead, the cellular baseband and Wi-Fi/Bluetooth are located on two replaceable M.2 cards, which means that they can be changed to support different wireless standards. The Librem 5 uses six separate chips (i.MX 8M Quad, RS9116, BM818/PLS8, Teseo-LIV3F, WM8962 and bq25895)[1] in place of the integrated mobile SoC found in most smartphones. The downside is that it takes more energy to operate separate chips and the phone's circuit boards are much larger, but using separate components mean longer support from the manufacturers than mobile SoC's which have short lifespans.[26] According to Purism, the Librem 5 is designed to avoid planned obsolescence and will receive lifetime software updates.[27]

The Librem 5 is the first phone to contain a smartcard reader, where an OpenPGP card can be inserted for secure cryptographic operations. Purism plans to use OpenPGP cards to implement storage of GPG keys, disk unlocking, secure authentication, a local password vault, protection of sensitive files, user personas, and travel personas.[28]

To promote better security, all the source code in the root file system is free/open source software and can be reviewed by the user. Purism publishes the schematics of the Librem 5's printed circuit boards under the GPL 3.0+ license,[29] and publishes x-rays of the phone,[30] so that the user can verify that there hasn't been any changes to the hardware, such as inserted spy chips.[31]

Software

The Librem 5 ships with Purism's PureOS, a Debian GNU/Linux derivative. The operating system uses a new mobile user interface developed by Purism called Phosh, a portmanteau from "phone shell". It is based on Wayland, wlroots, GTK 3 and GNOME.[33] Unlike other mobile Linux interfaces, such as Ubuntu Touch and KDE Plasma Mobile, Phosh is based on tight integration with the desktop Linux software stack, which Purism developers believe will make it easier to maintain in the long-term and incorporate into existing desktop Linux distros. Phosh has been packaged in a number of desktop distros (Debian, Arch, Manjaro, Fedora and openSUSE) and is used by 8 of the 16 Linux ports for the PinePhone.[34]

The phone is a convergence device:[35][36] if connected to a keyboard, monitor, and mouse, it can run Linux applications as a desktop computer would. Many desktop Linux applications can run on the phone as well, albeit possibly without a touch-friendly UI.[12]

File:Librem5 phone convergence - screen keyboard mouse.jpg
Mobile/desktop convergence: the Librem 5 mobile, when connected to a keyboard, screen, and mouse, runs as a desktop computer.

Purism is taking a unique approach to convergence by downsizing existing desktop software to reuse it in a mobile environment. Purism has developed the libhandy library to make GTK software adaptive so its interface elements adjust to smaller mobile screens.[37] In contrast, other companies such as Microsoft and Samsung with Ubuntu (and Canonical before Unity8) tried to achieve convergence by having separate sets of software for the mobile and desktop PC environments. Most iOS apps, Android apps and Plasma Mobile's Kirigami implement convergence by upsizing existing mobile apps to use them in a desktop interface.[34]

Purism claims the "Librem 5 will be the first ever Matrix-powered smartphone, natively using end-to-end encrypted decentralised communication in its dialer and messaging app".[38][39]

Purism was unable to find a free/open source cellular modem, so the phone uses a modem with proprietary hardware, but isolates it from the rest of the components rather than having it integrated with the System on a Chip (SoC). This prevents code on the modem from being able to read or modify data going to and from the SoC.[12][40]

See also

References

  1. 1.0 1.1 1.2 1.3 Lua error in package.lua at line 80: module 'strict' not found.
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. 12.0 12.1 12.2 12.3 Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Lua error in package.lua at line 80: module 'strict' not found.
  22. Lua error in package.lua at line 80: module 'strict' not found.
  23. Lua error in package.lua at line 80: module 'strict' not found.
  24. Lua error in package.lua at line 80: module 'strict' not found.
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.
  28. Lua error in package.lua at line 80: module 'strict' not found.
  29. Lua error in package.lua at line 80: module 'strict' not found.
  30. Lua error in package.lua at line 80: module 'strict' not found.
  31. Lua error in package.lua at line 80: module 'strict' not found.
  32. Lua error in package.lua at line 80: module 'strict' not found.
  33. Lua error in package.lua at line 80: module 'strict' not found.
  34. 34.0 34.1 Lua error in package.lua at line 80: module 'strict' not found.
  35. Lua error in package.lua at line 80: module 'strict' not found.
  36. Lua error in package.lua at line 80: module 'strict' not found.
  37. Lua error in package.lua at line 80: module 'strict' not found.
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. Lua error in package.lua at line 80: module 'strict' not found.
  40. Lua error in package.lua at line 80: module 'strict' not found.

External links