Motorola Droid 4
|Motorola Droid 4|
|Kernel version||5.4||Mainline + some patches not yet in mainline - see https://github.com/maemo-leste/droid4-linux/tree/maemo-5.4|
|Serial||Yes||On MicroUSB port, requires special cable|
|Keyboard||Yes||Slightly modified keyboard layout, see https://www.spinics.net/lists/linux-omap/msg135137.html (TLDR; Shift key produces CTRL, SYM produces ALT, and Caps lock produces SHIFT)|
|3D Acceleration||Not yet||PowerVR SGX540 (closed driver) - see Motorola Droid 4/PowerVR|
|2G/3G data||WIP||Reported to work, no UI yet - see https://github.com/maemo-leste/connui-cellular/|
|SMS||WIP||Reported to work, no UI yet|
|Phone calls||WIP||Reported to work, no UI yet|
|Bluetooth||Yes||Needs firmware - see below. See also https://github.com/maemo-leste/bugtracker/issues/290.|
|FM Receiver||Not yet|
|Accelerometer||?||Available as input device, needs MCE work|
|HDMI-out||WIP||works, but not with hildon-desktop|
|Compass||No||Mainline supports it, so Leste needs to add config - see https://github.com/maemo-leste/bugtracker/issues/294|
- Droid4 with fully charged battery
- MicroUSB cable
- MicroSD card
- Host Linux or Windows system
- Android Tools: fastboot
- Flashing tools:
- XZ Utils and coreutils for Linux
- Etcher for Windows
Download from https://maedevu.maemo.org/images/droid4/
- Latest maemo-leste-1.0-armhf-droid4-*.img.xz (NOTE: 20200112 image may have issues with WiFi)
Download from https://github.com/tmlind/droid4-kexecboot.git
Check what kernel version your Android OS runs. For this go to Settings -> About phone. Slide to the bottom, where you can see "Kernel version". If you have at least 3.0.8, you may skip "Updating Android" step below.
- Create a working directory with above mentioned files in it
- unzip VRZ_XT894_9.8.2O-72_VZW-18-8_CFC.xml.zip
- Power off Droid4 and connect it to the host machine with MicroUSB cable
- Start the device in fastboot mode. For this press power button and bottom volume key simultaneously and release them after a second.
Updating Android. This will reinstall the Android OS on your device, deleting all user data. Do a backup, if you want to save something. When everything is ready, go to the working directory mentioned above and run:
pushd VRZ_XT894_9.8.2O-72_VZW-18-8_CFC.xml sudo bash ../flash-droid-4-fw.sh popd
Now, assuming you are in the working directory, install kexecboot:
sudo fastboot flash mbm VRZ_XT894_9.8.2O-72_VZW-18-8_CFC.xml/allow-mbmloader-flashing-mbm.bin sudo fastboot reboot-bootloader sudo fastboot flash bpsw droid4-kexecboot.img sudo fastboot flash utags utags-mmcblk1p13.bin sudo fastboot reboot
If you did "Updating Android" the device should run the firstboot steps. If you didn't, the device should reboot and show kexecboot menu for a few seconds before it boots to Android.
Now, flash the Maemo Leste image to your sdcard:
xzcat maemo-leste-1.0-armhf-droid4-20190227.img.xz | sudo dd of=/dev/MICROSDCARD-DEVICE sync
On Windows: Use Etcher
Wait for sync to complete and insert MicroSD card into Droid4. Reboot the device and select Maemo Leste from the kexecboot menu.
You should now see Maemo Leste booting up, and it will show you unaccelerated hildon-desktop after a minute.
Postinstall notes for 20200112 image
Current image has some erratas which can be fixed by following the instructions found in this post: https://github.com/maemo-leste/bugtracker/issues/302#issuecomment-576277674
Requires wpasupplicant and firmware-ti-connectivity from ascii-backports (needs to get added to sources.list)
deb http://pkgmaster.devuan.org/merged ascii-backports main contrib non-free
apt install -t ascii-backports wpasupplicant apt install -t ascii-backports firmware-ti-connectivity
Requires https://github.com/TI-ECS/bt-firmware/blob/master/TIInit_10.6.15.bts to go in /lib/firmware/ti-connectivity/
$ sha256sum TIInit_10.6.15.bts 85dc6539436319fa1301277c171f9fd65b716279900bc686a76578ab24cc7793 TIInit_10.6.15.bts
Note: some users reported that Bluetooth kernel module interfere badly with the WiFi driver on their devices. Blacklisting the module may help if you have such problems:
echo "blacklist hci_uart" > /etc/modprobe.d/blacklist.conf
This needs to be executed after each boot by hand ;
modprobe snd-soc-cpcap modprobe snd-soc-motmdm modprobe snd-soc-audio-graph-card
The battery in Droid4 is not easily removable. If you got the device stuck, use this combo: power button + bottom volume key. You should hold them for about 7 seconds. Droid4 will then reboot.
If Maemo is still running, you can also hold just the power button for ~10 seconds, and the device will run poweroff.
As explained at http://muru.com/linux/d4 , the Droid 4 exposes a serial console on the USB port. You can construct the required cable easily by following the instructions there. If you have old Nokia CA-42 or DKU-5 cables, then you can use them with the Droid 4, using instructions at https://jethomson.wordpress.com/2010/02/21/diy-usb-to-serial-cable-for-3usd/
While using the serial cable, if you lose the connection, the following may help:
18:43 < tmlind> sicelo: hmm the uart debug cable multiplexing still has issues, if the uart disappears during boot it should come back with the console login propt later 18:45 < tmlind> try plugging in a pc usb cable then back to uart cable in case that might help