Motorola Droid 4

From Maemo Leste Wiki
Revision as of 16:13, 11 March 2019 by Spinal (talk | contribs) (→‎Installation using kexecboot: Optimize flashing image to sdcard command sequence)
Jump to navigationJump to search

This page or section is a stub. Ask how you can help improve by visiting #maemo-leste, look at the bugtracker ( or if you are able to contribute to the current page, then you are welcome to do so.

Motorola Droid 4
Motorola Droid 4 - Leste pre-alpha.jpg
Manufacturer Motorola
Codename Maserati
Hardware Features
Software Features



Also see:


Feature Leste supported Notes
Kernel version 5.0 Mainline + some patches not yet in mainline
Serial Yes On MicroUSB port, requires special cable
Charging Yes
Wireless Yes
Ethernet N/A
Micro USB Yes OTG
Keyboard Yes
Screen Yes
3D Acceleration Not yet Also PowerVR - see Motorola Droid 4/PowerVR
Touchscreen Yes Capacitive
Audio Yes
2G/3G data WIP Reported to work, no UI, requires extra software, ofono patches, kernel patches
SMS WIP Reported to work, no UI, requires extra software, ofono patches, kernel patches
Phone calls WIP Reported to work, no UI, requires extra software, ofono patches, kernel patches
FM Transmitter N/A?
FM Receiver ?
Accelerometer ? Available as input device, needs MCE work
Proximity sensor ?
HDMI-out WIP works, but not with hildon-desktop
TV-out N/A

Installation using kexecboot

This procedure will erase existing android and/or safestrap.


  • MicroSD card, MicroUSB cable and Droid4
  • Charged Droid4
  • fastboot, adb and git, xzcat, dd
  • Host Linux system

Download from

  3. Latest maemo-leste-1.0-armhf-droid4-*.img.xz

And clone:

briefly show kexecboot. Installation:

  1. Power off Droid4
  2. Create a working directory with above mentioned files in it
  3. unzip
    • If you have safestrap on the device, turn on the droid4, go to safestrap, reboot, reboot to bootloader
    • If you do not have safestrap, turn on the device, and issue on the host: adb reboot bootloader
  4. Run the script from the extracted android directory (VRZ_XT894_9.8.2O-72_VZW-18-8_CFC.xml), run as sudo if it does not find the device
  5. Wait for the flashing script to complete. This can take a few minutes. The droid will reboot a couple of times to the bootloader.

Then go to the droid4-kexecboot directory and run (possibly as sudo):

  1. fastboot flash mbm path/to/android/zip/allow-mbmloader-flashing-mbm.bin
  2. fastboot reboot-bootloader
  3. fastboot flash bpsw current/droid4-kexecboot.img
  4. fastboot flash utags utags-mmcblk1p13.bin

Then reboot the device (hold the power button for one or two seconds) and wait for it to get through the first boot. It will show a green android with something moving in it's stomach, as well as a progress bar. Then the device should show kexecboot for a few seconds before it boots to Android.

Now, flash the Maemo Leste image to your sdcard, this is how I did it:

  1. xzcat maemo-leste-1.0-armhf-droid4-20190227.img.xz | sudo dd of=/dev/MICROSDCARD-DEVICE
  2. sync

Wait for the sync to complete and and insert the SD card into the Droid 4. Reboot the device and select Maemo Leste from the kexecboot menu.

You will now have see Maemo Leste boot up, and show you an unaccelerated hildon-desktop after about one minute.

Safestrap+ddroid Installation (no longer recommended and outdated)

SafeStrap + ddroid from eMMC or SD card

PostmarketOS has some information how to install safestrap: in wiki

(This is the boot method currently being used but we'll probably replace this with droid4-kexecboot to aid kernel updates via deb package)

Flashing the zip file is quite confusing / tricky:

Boot options, select slot with Leste, Activate.

In main menu: Install, scroll down to select file, swipe to confirm flash. You will get error, including "ApplyParsePerms, set_metadata_recursive, Error executing updater binary, Unable to mount." Red "failed" will appear. These are normal. Proceed by selecting "Reboot System", you'll get one more warning that system is not installed, swipe to confirm reboot.

Red motorola logo will appear, press search button to continue boot, phone vibrates, then vibrates again, then green led comes on. After about a minute, console appears, then disappears and X comes to life.

Kernel development (old and outdated)

Linux 4.14 plus patches


Sources: linux-stable 4.14.y, patches