Jump to content

OnePlus One (oneplus-bacon)

From postmarketOS Wiki
OnePlus One
OnePlus One running Weston
OnePlus One running Weston
Manufacturer OnePlus
Name One
Codename oneplus-bacon
Released 2014
Type handset
Hardware
Chipset Qualcomm Snapdragon 801 (MSM8974AC)
CPU Quad-core 2.5 GHz Krait 400
GPU Adreno 330
Display 1080x1920 IPS
Storage 16/64 GB
Memory 3 GB
Architecture armv7
Software
Original software
The software and version the device was shipped with.
Android 4.4.2 on Linux 3.4
postmarketOS
Category testing
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
yes
Device package device-oneplus-bacon
Kernel package linux-postmarketos-qcom-msm8974
Features
Flashing
It is possible to flash the device with pmbootstrap flasher.
Works
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Works
Battery
Charging and battery level reporting works
Works
Screen
Display works. Ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Partial
Audio
Audio playback, microphone, headset and buttons.
Broken
Camera
Broken
Connectivity
WiFi
Works
Bluetooth
Works
GPS
Broken
Modem
Calls
Broken
SMS
Works
Mobile data
Works
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Broken
USB OTG
USB On-The-Go or USB-C Role switching
Broken
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Broken

Contributors

Users owning this device

  • Bdju (Notes: water damaged and doesn't boot)
  • Blackwell
  • Double-hash (Notes: damaged screen & touchscreen, running pmOS)
  • Eloy (Notes: Broken touchscreen)
  • Fizzo
  • Hastalavista (Notes: PMOS edge w/ mainline kernel, WiFi intermittently failing)
  • IonAgorria (Notes: PMOS - Damaged)
  • Jrg (Notes: Broken touchscreen)
  • KenOokamiHoro (Notes: SIM Card slot was broken. Running LineageOS 15.1)
  • Ksqeib (Notes: Using as Minecraft Server)
  • MasterPlexus (Notes: with PMO as small server, Mainline)
  • Maufl
  • Noocsharp
  • Nspire
  • Poipa
  • Toastal (Notes: tried pmOS running XMPP server, but plagued with hard drive issues after a few days running that make it go read-only every time I reinstalled the OS)
  • Val (Notes: PmOS for Docker server)
  • Vipaol (Notes: LOS)
  • Z3ntu


Installation

Flashing the standart way (boot + rootfs) works fine under mainline kernel.

$ pmbootstrap flasher boot
$ pmbootstrap flasher flash_rootfs --partition userdata

Be aware, the boot partition has a size of 16mb. the newer Kernels are bigger.

including deviceinfo_create_initfs_extra=true brings it back to a stable way.

Release 6 of the mainline kernel is established, and updates should work properly now for the boot size.

Entering fastboot mode

From a power off state, hold the volume up and power buttons until the device vibrates. The display should then light up and say "Fastboot Mode".

WiFi and Bluetooth

WiFi and Bluetooth are working, but aren't well-tested. The firmware isn't packaged yet, so you will need to get it from the partitions on your device. For Bluetooth, you will need to install bluez and enable the bluetooth service.

Cell usage

oFono support shouldn't take too much to get up and running. Adding the remoteproc node, using qmictl (possibly more utilities), and using a patched oFono should get basic support up and running.

Troubleshooting

Fastboot unknown chunk type

Nimayer received the message "FAILED (remote: Unknown chunk type)" when trying to flash the rootfs to userdata.

It may be possible to fix the issue by flashing a new OxygenOS image. If that doesn't work, try flashing postmarketOS using a recovery zip.

wlan0 interface is available but WiFi is not working

Check that wlan0 device MAC address is not 00:00:00:00:00:00. If it is, change it to any other available one like this:

# ip link set dev wlan0 address 70:85:c2:d9:2b:e0

If the Mac is not 00:00:00:00:00:00 try to restart NetworkManager by executing:

# service networkmanager restart

Most likely you want create Initscript for working network when boot.

Create /etc/init.d/wlanhwaddr:

#!/sbin/openrc-run
command=/sbin/ip
command_args="link set dev wlan0 address 70:85:c2:d9:2b:e0"

description="WLAN hw-addr setter"

depend() {
  before networkmanager
}

Install:

# chmod 755 /etc/init.d/wlanhwaddr
# rc-update add wlanhwaddr

Backlight is not completley going to off

interims as a workaround, in mainline kernel a patch is included, to switch the Baclight to off. This is a workaround, only helpfull under the usage as a mini Server with no need of display:

# sh -c 'echo 0 > /sys/class/backlight/lcd-backlight/brightness'

or

# echo 0 > /sys/devices/platform/soc/f9924000.i2c/i2c-1/1-0036/backlight/lcd-backlight/brightness

rootfs is on the wrong (too small) partition

this happens if you flash by mistake without --userpartition (which is on bacon /dev/mmcblk0p28p2 with 55 gb). standart system-partition has only 1,4 GB, wich initially let it flash and use, but fast it run out of space.

after mistaken, you have to reflash rootfs to --userdata, and to clean the system partition to let it boot correctly: <synyaxhighlight lang="shell-session"> $ fastboot format system $ pmbootstrap flasher flash_rootfs --userdata </syntaxhighlight>

Links

OSZAR »