Jump to content

Motorola Moto E 2015 (motorola-surnia): Difference between revisions

From postmarketOS Wiki
No edit summary
S0p0st (talk | contribs)
m fix pmaports issue #1877 reference (recovery zip fail)
 
(29 intermediate revisions by 17 users not shown)
Line 1: Line 1:
{{note| This device is still running on armhf, although the processor supports aarch64. If you own it, change it and test it [https://wiki.postmarketos.org/wiki/Tips_and_tricks#Update_the_architecture_of_your_device that] way.}}
{{Infobox device
{{Infobox device
| manufacturer = Motorola
| manufacturer = Motorola
Line 7: Line 6:
| imagecaption = Motorola Moto E (2nd Gen)
| imagecaption = Motorola Moto E (2nd Gen)
| releaseyear = 2015
| releaseyear = 2015
| originalsoftware = Android 5.0.2 Lollipop
| originalsoftware = Android
| originalversion = 5.0.2
| pmoskernel = 3.10.49
| pmoskernel = 3.10.49
| chipset = Qualcomm MSM8916 Snapdragon 410
| chipset = Qualcomm Snapdragon 410 (MSM8916)
| cpu = Quad-core 1.2 GHz Cortex-A53
| cpu = Quad-core 1.2 GHz Cortex-A53
| gpu = Adreno 306
| gpu = Adreno 306
Line 16: Line 16:
| memory = 1 GB
| memory = 1 GB
| architecture = aarch64
| architecture = aarch64
| type = handset
| status_usbnet = Y
| status_usbnet = Y
| status_flashing = Y
| status_flashing = Y
| status_touch =  
| status_touch = Y
| status_screen = Y
| status_screen = P
| status_wifi = Y
| status_wifi = Y
| status_xwayland = Y
| status_emmc = Y
| status_fde =  
| status_fde =
| status_mainline = Y
| status_mainline = Y
| status_battery = P
| status_battery = P
| status_3d = Y
| status_3d = Y
| status_accel =
| status_audio = Y
| status_audio =
| status_bluetooth = Y
| status_bluetooth = P
| status_camera = N
| status_camera =
| status_gps =
| status_gps =  
| status_mobiledata = P
| status_mobiledata =  
| status_sms = P
| status_sms = P
| status_calls =
| status_calls = P
| booting = Y
| status_otg = P
}}
| status_nfc = -
| status_accel = N
| status_magnet = -
| status_light = N
| status_proximity = N
| status_hall = -
| status_barometer = -
| status_powersensor = N
| status_dvb = -
| status_cameraflash = -
| status_keyboard = -
| status_touchpad = -
| status_usba = -
| status_sdcard = Y
| status_hdmidp = -
| status_irtx = -
| status_irrx = -
| status_stylus = -
| status_haptics = Y
| status_ethernet = -
| status_fossbootloader =
| booting = yes
| genericdevice=Generic MSM8916 (qcom-msm8916)
| optionalgenericdevice = yes
}}{{Based on SoC|Qualcomm_Snapdragon_410/412_(MSM8916)|Snapdragon 410}}


== Contributors ==
== Contributors ==
Line 46: Line 70:


== Unlocking the bootloader ==
== Unlocking the bootloader ==
Please visit the [https://motorola-global-portal.custhelp.com/app/standalone/bootloader/unlock-your-device-a Motorola website] for instructions. You will need a valid email address and working fastboot (driver installation needed for Windows and macOS, works out of the box on Linux). The Windows instructions works as written on Linux.
Please visit the [https://motorola-global-portal.custhelp.com/app/standalone/bootloader/unlock-your-device-a Motorola website] for instructions. You will need a email address for only receiving email (disposable email is enough) and working fastboot (driver installation needed for Windows and macOS, works out of the box on Linux).


== How to enter flash mode ==
== How to enter flash mode ==
Line 52: Line 76:


== Installation ==
== Installation ==
I have tested flashing boot.img with an sdcard rootfs and this seems to work fine.


== See also ==
First, flash lk2nd-msm8916.img to the boot partition.
* As of 2020-03-01, unrznbl is starting to work on mainline with the help of the work on motorola-harpia. Referring to https://wiki.postmarketos.org/wiki/MSM8916_Mainlining
 
* {{MR|29|pmaports}} Initial merge request, status: merged.
Boot that, press volume down during that booting to get to the lk2nd boot menu.
* {{Device package|motorola-surnia}}
* {{Kernel package|motorola-surnia}}
* {{Firmware package|motorola-surnia}}


== Modem Setup (same as for motorola-harpia so far) ==
See [https://github.com/msm8916-mainline/lk2nd#usage Usage] for lk2nd.
Content below copied from https://wiki.postmarketos.org/wiki/Moto_G4_Play_(motorola-harpia).  


I used these steps to configure and test SMS. It sort of worked I think. Need to do more testing.
After that, use the normal [[Installation_guide]]


== Wifi ==
Installation to directly to device and sdcard have both been tested to work.
Configure your kernel and enable the prima wifi staging driver


<source lang="shell-session">
Note: A recent (edge, alpine-release 3.19_alpha20230901, kernel 6.5.2) attempt to install using a recovery zip image on an SD card fails ({{issue|1877|pmaports}}, not specific to surnia, but rather to MSM8916).  The end of pmos.log file shows:
$ pmbootstrap menuconfig motorola-harpia
<pre>
$ pmbootstrap build linux-motorola-harpia
+ chroot /tmp/postmarketos/chroot /bin/busybox --install /bin
</source>
chroot: can't execute '/bin/busybox': No such file or directory
</pre>


On the device
== Display ==


<source lang="shell-session">
The display panel works fine, but backlight control doesn't due to missing driver for BD65B60 IC.
# apk add wcnss-wlan
# /etc/init.d/wcnss-wlan start
</source>


== Bluetooth (Mainline) ==
== Battery ==


Using unrznbl's [https://gitlab.com/unrznbl/pmaports/-/tree/surnia-mainline tree].
Battery fuel gauge is supported, but fan54046 charging chip isn't. It does still charge but it doesn't indicate that it is charging.
bluetoothctl detects controller and pairing works.
Still needs some testing to see if it is stable.


== Battery (Mainline ==
== USB OTG ==


Battery fuel gauge is supported, but charging chip isn't. It does still charge but it dosen't indicate that it is charging.
Device cannot supply its own power, so you must use a powered otg adapter for usb otg to work.


== Firmware {Wifi/Modem} ==
== Firmware {Wifi/Modem} ==
The firmware is now properly packaged since {{MR|1947|pmaports}}
The firmware is now properly packaged since {{MR|1947|pmaports}}
== Modem ==
== Modem ==
Make the necesary links for rmtfs
Modem may not work on some variants due to lack of support for compressed firmware images in [https://github.com/andersson/rmtfs/issues/13 rmtfs]. This will also break sound on affected devices. To get sound working, you can choose the <code>no-modem</code> remote processor provider in pmbootstrap init. Alternatively you can apply [https://github.com/msm8916-mainline/linux/pull/187#issuecomment-818983411 this workaround] to get modem working.


<source lang="shell-session">
== Hardware / sensors detail ==
# cd /boot
For reference, sensor information from sensorsandbox (f-droid) on xt1526; note that in addition to hardware-based sensors, it presumably includes software-based / derived sensors:
# ln -s /dev/disk/by-partlabel/modemst1 modem_fs1
<div class="toccolours mw-collapsible mw-collapsed" style="width:600px; overflow:auto;">
# ln -s /dev/disk/by-partlabel/modemst2 modem_fs2
sensor details (sensorssandbox)
# ln -s /dev/disk/by-partlabel/fsg modem_fsg
<div class="mw-collapsible-content">
</source>
{| class="wikitable feature-colors"
! style="text-align:left;"| name
! style="text-align:left;"| vendor
! style="text-align:left;"| version
! style="text-align:left;"| type
|-
|3-axis accelerometer
|Kionix
|1
|1
|-
|Ambient light sensor
|TAOS
|1
|5
|-
|Proximity sensor
|TAOS
|1
|8
|-
|Display rotation sensor
|Motorola
|1
|65536
|-
|Flat up
|
|
|
|-
|Flat down
|
|
|
|-
|Stowed
|
|
|
|-
|Camera activation sensor
|
|
|
|}
</div>
</div>
Sensors appear to be handled by [https://ristovski.github.io/posts/moto-sensorhub/ Motorola Sensorhub]


Install necessary software
== See also ==
<source lang="shell-session"># apk add msm-modem-downstream rmtfs libsmdpkt_wrapper libqipcrtr4msmipc ofono</source>
* {{issue|1425|pmaports}} Display issue
 
* [https://github.com/Ristovski/motosh-fw Sensorhub RE git repository]
Start the wcnss-wlan service to initialize the wifi card (helps the modem?)
* {{MR|3329|pmaports}} Switch from downstream to mainline. 2022-09-14.
<source lang="shell-session"># /etc/init.d/wcnss-wlan start</source>
* {{Device package|motorola-surnia}}
 
* {{Kernel package|motorola-surnia}}
Start a tmux for multiple windows
* {{Firmware package|motorola-surnia}}
<code>tmux</code>
* {{issue|1877|pmaports}} Recovery zip can be generated, but installation will fail
 
Start rmtfs on a terminal
 
<source>
export LD_PRELOAD=/usr/lib/preload/libqipcrtr4msmipc.so
rmtfs -v
</source>
 
Start ofonod on another terminal
 
<source lang="shell-session">
$ export LD_PRELOAD=/usr/lib/preload/libsmdpkt_wrapper.so
$ ofonod -d -n
</source>
 
Send an SMS!
 
<source lang="shell-session">
$ export PHONE_NUMBER="<number to send sms to ex: 1234567890>"
$ sudo dbus-send --print-reply --system --dest=org.ofono /gobi_0 org.ofono.Modem.SetProperty string:"Powered" variant:boolean:"true"
$ sudo dbus-send --print-reply --system --dest=org.ofono /gobi_0 org.ofono.Modem.GetProperties
$ sudo dbus-send --print-reply --system --dest=org.ofono /gobi_0 org.ofono.Modem.SetProperty string:"Online" variant:boolean:"true"
$ sudo dbus-send --system --print-reply --dest=org.ofono /gobi_0 org.ofono.MessageManager.SendMessage string:"$PHONE_NUMBER" string:"Hello world! -postmarketOS"
</source>
 
Receive SMS like this (might be spammy if you have other DBus apps):
<source lang="shell-session">$ sudo dbus-monitor</source>

Latest revision as of 17:39, 1 December 2024

Note This page is about the dedicated port of this device. There is also an optional generic port available for this device - see Generic MSM8916 (qcom-msm8916).
Motorola Moto E (2nd Gen)
Motorola Moto E (2nd Gen)
Motorola Moto E (2nd Gen)
Manufacturer Motorola
Name Moto E (2nd Gen)
Codename motorola-surnia
Released 2015
Type handset
Hardware
Chipset Qualcomm Snapdragon 410 (MSM8916)
CPU Quad-core 1.2 GHz Cortex-A53
GPU Adreno 306
Display 540x960 IPS LCD
Storage 8 GB Flash
Memory 1 GB
Architecture aarch64
Software
Original software Android
Original version 5.0.2
postmarketOS
Category testing
Pre-built images no
Mainline yes
postmarketOS kernel 3.10.49
Optional Generic Port Generic MSM8916 (qcom-msm8916)
Features
Flashing
Works
USB Networking
Works
Internal storage
Works
SD card
Works
Battery
Partial
Screen
Partial
Touchscreen
Works
Multimedia
3D Acceleration
Works
Audio
Works
Camera
Broken
Connectivity
WiFi
Works
Bluetooth
Works
GPS
No data
Modem
Calls
Partial
SMS
Partial
Mobile data
Partial
Miscellaneous
FDE
No data
USB OTG
Partial
Sensors
Accelerometer
Broken
Ambient Light
Broken
Proximity
Broken
Haptics
Works
Power Sensor
Broken

Contributors

Users owning this device


Unlocking the bootloader

Please visit the Motorola website for instructions. You will need a email address for only receiving email (disposable email is enough) and working fastboot (driver installation needed for Windows and macOS, works out of the box on Linux).

How to enter flash mode

Hold down Power + Volume Down while booting to enter Flash Mode.

Installation

First, flash lk2nd-msm8916.img to the boot partition.

Boot that, press volume down during that booting to get to the lk2nd boot menu.

See Usage for lk2nd.

After that, use the normal Installation_guide

Installation to directly to device and sdcard have both been tested to work.

Note: A recent (edge, alpine-release 3.19_alpha20230901, kernel 6.5.2) attempt to install using a recovery zip image on an SD card fails (pmaports#1877, not specific to surnia, but rather to MSM8916). The end of pmos.log file shows:

+ chroot /tmp/postmarketos/chroot /bin/busybox --install /bin
chroot: can't execute '/bin/busybox': No such file or directory

Display

The display panel works fine, but backlight control doesn't due to missing driver for BD65B60 IC.

Battery

Battery fuel gauge is supported, but fan54046 charging chip isn't. It does still charge but it doesn't indicate that it is charging.

USB OTG

Device cannot supply its own power, so you must use a powered otg adapter for usb otg to work.

Firmware {Wifi/Modem}

The firmware is now properly packaged since pmaports!1947

Modem

Modem may not work on some variants due to lack of support for compressed firmware images in rmtfs. This will also break sound on affected devices. To get sound working, you can choose the no-modem remote processor provider in pmbootstrap init. Alternatively you can apply this workaround to get modem working.

Hardware / sensors detail

For reference, sensor information from sensorsandbox (f-droid) on xt1526; note that in addition to hardware-based sensors, it presumably includes software-based / derived sensors:

sensor details (sensorssandbox)

Sensors appear to be handled by Motorola Sensorhub

See also