Motorola Droid 4
This page or section is a stub. Ask how you can help improve leste.maemo.org by visiting #maemo-leste, look at the bugtracker (https://github.com/maemo-leste/bugtracker) or if you are able to contribute to the current page, then you are welcome to do so.
Motorola Droid 4 | |
---|---|
Manufacturer | Motorola |
Codename | Maserati |
Specifications | |
Hardware Features | |
Software Features |
Status
Feature | Leste supported | Notes |
---|---|---|
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 |
Charging | Yes | |
Wireless | Yes | |
Ethernet | N/A | |
Micro USB | Yes | OTG |
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) |
Screen | Yes | |
3D Acceleration | Not yet | PowerVR SGX540 (closed driver) - see Motorola Droid 4/PowerVR |
Touchscreen | Yes | Capacitive |
Audio | Yes | |
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 Transmitter | N/A | |
FM Receiver | Not yet | |
Accelerometer | ? | Available as input device, needs MCE work |
Proximity sensor | ? | |
HDMI-out | WIP | works, but not with hildon-desktop |
TV-out | N/A | |
Vibration Motor | Yes | |
Compass | No | Mainline supports it, so Leste needs to add config - see https://github.com/maemo-leste/bugtracker/issues/294 |
Installation
Hardware requirements:
- Droid4 with fully charged battery
- MicroUSB cable
- MicroSD card
Software requirements:
- Host Linux or Windows system
- Android Tools: fastboot
- Flashing tools:
- XZ Utils and coreutils for Linux
- Etcher[1] for Windows
Download from https://maedevu.maemo.org/images/droid4/
- VRZ_XT894_9.8.2O-72_VZW-18-8_CFC.xml.zip
- flash-droid-4-fw.sh
- 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
- utags-mmcblk1p13.bin
- droid4-kexecboot.img
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.
Installation:
- 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:
On Linux:
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
The 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
Wifi
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
Installing Bluetooth firmware in order to have working Wi-Fi is also required.
Bluetooth
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
Sound
This needs to be executed after each boot by hand ;
modprobe snd-soc-cpcap modprobe snd-soc-motmdm modprobe snd-soc-audio-graph-card
Notes
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.
Also see Motorola_Droid_4/Modem Motorola_Droid_4/PowerVR
Also see: http://elektranox.org/droid4/ and http://muru.com/linux/d4/
Serial Cable
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