Motorola Moto G 2013 (motorola-falcon)
![]() Moto G 2013 is successfully running SXMO-DE-DWM | |
Manufacturer | Motorola |
---|---|
Name | Moto G (1st gen) |
Codename | motorola-falcon |
Released | 2013 |
Type | handset |
Hardware | |
Chipset | Qualcomm Snapdragon 400 (MSM8226) |
CPU | Quad-core 1.2 GHz Cortex-A7 |
GPU | Adreno 305 |
Display | 720x1280 IPS LCD |
Storage | 8 GB |
Memory | 1 GB |
Architecture | armv7 |
Software | |
Original software The software and version the device was shipped with. |
Android 4.3 |
Extended version The most recent supported version from the manufacturer. |
Android 5.1 (Linux 3.4.42) |
postmarketOS | |
Category | testing |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
yes |
pmOS kernel The kernel version that runs on the device's port. |
3.4.113 |
Unixbench score Unixbench Whetstone/Dhrystone score. See Unixbench. |
877.9 |
Device package |
![]() |
Kernel package |
![]() |
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). |
Broken
|
Battery Charging and battery level reporting works |
Partial
|
Screen Display works. Ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Broken
|
Multimedia | |
3D Acceleration |
Untested
|
Audio Audio playback, microphone, headset and buttons. |
Untested
|
Camera |
Untested
|
Connectivity | |
WiFi |
Works
|
Bluetooth |
Broken
|
GPS |
Untested
|
Modem | |
Calls |
Untested
|
SMS |
Untested
|
Mobile data |
Untested
|
Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
USB OTG USB On-The-Go or USB-C Role switching |
Untested
|
Sensors | |
Accelerometer Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile |
Works
|
Magnetometer Sensor to measure magnetism |
Works
|
Hall Effect Also known as flip cover sensor |
Works
|
Haptics |
Works
|
Contributors
Users owning this device
- AAT596 (Notes: LineageOS 17.1)
- Alexdmrk (Notes: Tested SXMO-DE-DWM: runs normally. eMMC storage banks died after third flashinf pmOS)
- Cark
- Dzeimis (Notes: 2 devices. Unlocked on 2024-04-05. One with pmOS built from source, another with stock android 5.1)
- Egbert (Notes: currently used as remote control)
- LaermWirke (Notes: XT1032)
- Little-miss-synth (Notes: bootloader unlocked, running a stripped down instance of lineageOS and used as a digital audio player)
- Living
- Marshift
- Maxnet (Notes: cannot unlock bootloader anymore in the official way)
- Mjack3k (Notes: PMOS with SXMO UI.)
- Roboe (Notes: (lended) hwrev: 0x83C0, cpu: MSM8226 CS, emmc: 16GB; unreliable eMMC; running debloated Lineage OS 14.1 as a portable FM radio)
- StandaSK (Notes: Running mainline)
- Thewiseguyshivam (Notes: Touchscreen not working on this, currently running stock Android with unlocked bootloader)
- UltrasonicMadness (Notes: Screen doesn't work and the battery lid is missing)
Installing
There appears to be no special process to flashing the device, as long as the bootloader is unlocked first.
Motorola stopped providing bootloader unlock codes for some of their devices. The unlock page may or may not work for you. If it doesn't - there is no official, easy or free way to unlock the bootloader completely. |
Once you're in fastboot by holding down Volume Down+Power, flashing it is as follows:
$ pmbootstrap init
$ pmbootstrap install
$ pmbootstrap flasher flash_rootfs
$ pmbootstrap flasher boot
$ pmbootstrap flasher flash_kernel
It's highly recommended to flash kernel, otherwise the device won't boot PM: it will boot in Android firmware. Note: charger screen will be broken!
Installation from recovery zip via TWRP doesn't work
Hardware Status (downstream)
CURRENTLY BROKEN!
$ sudo hwtest
gives:
Category | Model | Path | Status | Value |
---|---|---|---|---|
framebuffer | mdssfb_80000 | /sys/class/graphics/fb0 | Working | U:720x1280p-54 |
input | gpio-keys | /dev/input/event5 | Working | |
input | qpnp_pon | /dev/input/event4 | Working | |
input | light-prox | /dev/input/event3 | Working | |
input | synaptics_dsx_i2c | /dev/input/event2 | Working | |
input | accelerometer | /dev/input/event1 | Working | |
input | compass | /dev/input/event0 | Working |
Note: XT1031 shows as MSM8x26 in /proc/cpuinfo
:
Hardware : Qualcomm MSM8626 Revision : 83c0 Device : falcon Radio : 3 MSM Hardware : MSM8626 CS
Battery
charging-sdl
is not supported, but charging works during usb networking. Battery/charging properties are exposed at /sys/class/power_supply/battery/
.
Charger versus power key boot shows these differences in /proc/cmdline
:
androidboot.mode=mot-charger | androidboot.mode=normal androidboot.powerup_reason=0x00000100 | androidboot.powerup_reason=0x00000080 bootreason=charger | bootreason=power_key_press
USB-OTG
Based on dmesg content (only), usb-otg connect/disconnect is recognized.
LED
Similar to the Moto G 2014, the LED can be controlled:
$ echo 255 > /sys/devices/leds-qpnp-rgb-e1dba000/leds/white/brightness
Hardware Status (mainline)
Component | Part number / Driver | Works? | Notes |
---|---|---|---|
eMMC | Y | ||
Touchscreen | N | ||
Button | pm8226_resin | Y | Volume Down |
Button | gpio-keys | Y | Volume Up |
Button | pm8226_pwrkey | Y | Power |
WiFi, Bluetooth | N | ||
Display (SimpleFB) | Y | ||
Display (DRM panel) | ? | N | |
Backlight | pm8226? | P | Setup by bootloader, not currently configurable. |
Front camera | onsemi MT9M114 | N | |
Rear camera | onsemi AR0543 | N | |
Rear camera flash | pm8226? | N | |
Notification LED | pm8226 | N | Connected to MPP 6, can be controlled with gpio-led, but should support LPG (PWM) as well. |
Hall effect sensor | ROHM BU52017HFV | Y | Controlled with gpio-keys |
Vibrator | pm8226_vib | Y | |
Accelerometer | ST LIS3DH | Y | |
Magnetometer | Asahi Kasei AK8963 | Y | |
Temperature sensor | TI TMP108 | P | Works and DTS is complete, but the mainline driver doesn't support the ALERT interrupt signal. |
Proximity / Ambient light sensor | AMS/TAOS CT406 | N | Seems similar to AMS/TAOS TSL277x series, which is already supported in mainline. |
UART
On phone schematics, there is a block called UART OVER HEADSET
, that includes the chips u4950, u4951 and u4952, but they are very likely missing in production boards (DNI means Do Not Include?), as found on a picture of the board available on the web.
Therefore the remaining option is try to get serial output from MSM_UART_TX/RX
on JTAG:MINI
, which was reported elsewhere on this wiki for Motorola devices.
lk2nd
lk2nd supports falcon starting with version 0.15.0 from September 2023. Follow the installation instructions in the git repo.
Links
- Close to mainline kernel repository
- android_kernel_motorola_msm8226 (downstream kernel)
- falcon_defconfig (downstream defconfig)
device-motorola-falcon
linux-motorola-falcon (downstream)
linux-postmarketos-qcom-msm8226 (near-mainline)
- pmaports!5087 Merge request adding initial near-mainline support
- Mainline device tree