Nexus 5/6P Flashing Factory Image fastboot error: mke2fs failed with status 1, Cannot generate image for userdata

During flashing of Nexus factory image, running flash-all.sh or simply

# fastboot -w update image-hammerhead-m4b30z.zip

fails with message

/usr/bin/mke2fs failed with status 1
fastboot: error: Cannot generate image for userdata

If you remove ‘-w’ from the fastboot command, the installation can complete without formatting (wiping) userdata partition. However that is not an ideal situation and may cause first boot to freeze or loop.

mke2fs is part of Android platform tools that also come with adb and fastboot.

The error is caused by older platform tools version where mke2fs is not compatible with the newer factory images.

Install the latest platform tools from Google Android Developer website.

Check for correct PATH where platform tools are located. Eg. /usr/bin/ and /usr/loca/bin to make sure you only have one and latest copy of adb, fastboot and mke2fs in PATH

When done correctly, mke2fs will format (wipe) the userdata partition with the fastboot -w update command.

# fastboot -w update image-hammerhead-m4b30z.zip
......
......
Erasing 'userdata' OKAY [ 10.202s]
mke2fs 1.44.4 (18-Aug-2018)
Creating filesystem with 3351034 4k blocks and 838832 inodes
Filesystem UUID: 5e6cb2b1-73ad-4645-8e75-27dddcacd9fd
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
......

However, the latest mke2fs may still cause first boot freeze or bootloop especially for Nexus 5. Wiping Dalvik and Cache will help. To do this, use third party recovery tools such as Team Win Recovery Project (twrp) for wiping partitions.

Download latest twrp recovery images from:
twrp recovery image for Nexus 5
twrp recovery image for Nexus 5X
twrp recovery image for Nexus 6P

If you have other model, just replace the model code name (hammerhead/bullhead/angler) in the url with your model. Then flash the recovery with fastboot

# fastboot flash recovery twrp-3.3.0-0-hammerhead.img

Reboot into recovery (it should start Team Win Recovery), and perform Wipe-> Format Data, then Advanced Wipe select to wipe Dalvik / Art Cache, Data, Internal Storage (optional) and Cache. (Leave System unchecked unless you want to re-flash factory image)

You may re-flash factory image and restore stock recovery. If you like, leave out the ‘-w’ option to bypass format of userdata partition.

# fastboot update image-hammerhead-m4b30z.zip

Mobile Studio for Recording and Streaming with OBS Studio

OBS Studio is an open-source broadcast quality software that you can use to create a mobile recording and streaming studio.

OBS Studio is supported on Windows, MacOS and Linux laptop. Once installed, you have a full-fledged multi-scene, multi-source, audio-visual recording studio with capability of streaming on your favorite platform such as YouTube and Twitch.

Now, you can use the microphone and webcam for sources. This would be a basic setup for recording and streaming personal messages.

Things start to get interesting once you connect external sources. It can be setup for recording/streaming live events, music recording…

External IP camera:

OBS Studio using Android Phone as IP-Camera

OBS Studio is an open-source broadcast quality software that you can use to create a mobile recording and streaming studio. This guide shows you how to connect an external IP Camera to OBS studio.

The example here use your Android phone as a wireless video camera.

Install IP Webcam app from Google Play Store (Free, or paid a few dollars for ads-free Pro version), start the app and click “Start Server” at the bottom. It is that simple. Note the URL (eg. http://192.168.1.173:8080) shown at the bottom of the screen.

In OBS Studio, add (+) a Media Source source, and select Create new and give it a name, say Camera 1, and hit OK.

Uncheck “Local”, then enter the URL that is shown on the phone, with a trailing “/video”, eg. http://192.168.1.173:8080/video and hit OK

If you setup username/password security, then enter the URL as http://username:password@192.168.1.173:8080/video

Voila, your IP camera is now connected live.

You can resize the source by dragging the red outline, to accommodate multiple sources. You may also define different sources in separate scenes, so that you can transition from one scene to another.

The phone battery probably won’t last very long, so you want to have the phone charger plugged in, especially for event functions

For live event or other reason, you may also want to mount it on a tripod with a phone attachment head.



10 simple steps to install Windows 10 IoT on Raspberry Pi 3 B+

  1. Register as a member of the Windows Insider program
  2. Download latest Technical Review Build 17661 for Raspberry Pi 3 B+
  3. Mount the iso and optionally extract Windows_10_IoT_Core_RPi3B+.msi
  4. Install Windows 10 IoT Core for Raspberry Pi 2 (it is for 3B+) on Windows
  5. Download Windows 10 IoT Core Dashboard to flash ffu image onto SD card
  6. Run Dashboard to set up a new device
  7. Insert a formatted MicroSD card to be flashed
  8. Boot the flashed MicroSD card on your Raspberry Pi 3B+
  9. Use Dashboard to list and control your Raspberry Pi
  10. Use Windows Device Portal to update RPi to latest release 17763 (as of writing)

Due to different boot structure on Raspberry Pi 3 B+, the latest release of Windows 10 IoT 17763 image for Raspberry 2 & 3 (including 17763.107.181026-1406) does not boot on RPi 3 B+. Windows latest Insider Preview 17744 will also not boot.

The last release that boot was the April 2018 release 17661. In this tutorial, I’m going to show you how to install this release and then update to latest October 2018 release 17663.

You will require:
Running Windows 10 machine with SD card reader (USB or direct), an msdos or gpt formatted MicroSD card (Class 10 preferred) 8GB or above (recommend Samsung EVO Plus 32GB or higher), and of course a Raspberry Pi 3 B+ with 2.5A power supply, and Ethernet cable connection with DHCP.

HDMI monitor, USB keyboard and mouse (combo or separate) are optional but useful.

Windows 10 IoT flashing will wipe and re-partition the MicroSD card to provide 1.4GB for MainOS, and the remaining for EFI/boot and Data.

Step 1: Join Windows Insider Program

Register as a member of the Windows Insider program at https://insider.windows.com

Membership is required to download and install flash images

Step 2: Download the right build for your RPi 3B+

Download latest Technical Review Build 17661 for Raspberry Pi 3 B+ from https://www.microsoft.com/en-us/software-download/windowsiot.

Use the link following Additional Insider Preview downloads.

The following iso file will be downloaded.
Windows10_InsiderPreview_IoTCore_RPi3B_en-us_17661.iso

Windows10_InsiderPreview_IoTCore_RPi3B_en-us_17661.iso will be downloaded

Step 3 : Install Windows IoT image on your computer

Mount the iso file (Right-Click and select Mount) and optionally extract Windows_10_IoT_Core_RPi3B+.msi

Extraction of msi is optional. You can double-click the msi file in mounted virtual disk

Step 4: Extracting Windows 10 IoT Install Image

Double-click the above msi to install Windows 10 IoT Core for Raspberry Pi 2 on your Windows machine. (It is for 3B+)

An SD card image for flashing will be installed in
C:\Program Files (x86)\Microsoft IoT\FFU\RaspberryPi2\flash.ffu

Although it says Rasberry Pi 2, the installed flash image is for RPi 3B+

Step 5: Install Windows 10 IoT Core Dashboard

Now download and install Windows 10 IoT Core Dashboard (recommended)
You may also follow this link to download https://docs.microsoft.com/en-us/windows/iot-core/downloads

Windows 10 IoT Core Dashboard is used to flash the ffu image (picture below) onto your MicroSD card and also to monitor and control Windows 10 IoT devices.

Image is installed at C:\Program Files (x86)\Microsoft IoT\FFU\RaspberryPi2\flash.ffu

Step 6: Set up a new device

Run the Dashboard. Click Set up a new device. and set up Device type: Broadcomm [Raspberry Pi 2 & 3], and OS Build: Custom , then click Browse to select C:\Program Files (x86)\Microsoft IoT\FFU\RaspberryPi2\flash.ffu, the image file installed in previous step.

Note that RPi Wi-Fi Network Connection does not work on this preview release.

Step 7: Flashing MicroSD card

Insert an msdos or gpt formatted MicroSD card in Windows 10 card reader. The MicroSD card will be over written.

Enter Device name, Admin password, click accept and Install.

Step 8: Booting WIndows 10 IoT for the first time

Once the flashing is done, remove MicroSD Card from Windows card reader, insert into Raspberry Pi 3B+.

Make sure Ethernet cable is connected and boot up RPi.

Wait a few minutes for RPI to boot up.

Release 17661 (April 2018) main screen showing Device Info.
If you have keyboard and monitor hooked up, you can select language and perform additional setup.

Step 9: Connecting to Your Raspberry Pi 3B+

Click My devices in Dashboard, you should be able to see the device listed. Right-click the device entry select Launch PowerShell to connect to your new IoT device for remote command prompt

Right-click the device entry select Launch PowerShell to connect and control your new IoT device.

Right-click the device entry select Open in Device Portal to remotely access and control your device. Especially useful if you do not have keyboard and monitor attached to RPi.

Alternatively, open a web browser and enter URL http://[ip address]:8080 to access Windows Device Portal.

Windows device portal has more control than on device display shown in step 8.

Step 10: Update Windows 10 IoT to the latest release

Upon successful start up, Windows 10 IoT should immediately run Windows Update and download the latest release.

In Windows Device Portal, select Windows Update to see the progress. The downloading and updating process should be fast (depending on your Internet download speed).

If downloading takes more than 2 hour, something went wrong. Shutdown, re-flash and try again.

If download or update failed before completion, it is likely that the MicroSD card is not of good quality.

Click Check for updates to download and install updates
Note different layout. Menu is now on the left.

Once the device is updated, the administrator password may be changed. If you cannot login with original password, try the default p@ssw0rd . To change password, login with this default password in PowerShell, and use this command to change. Replace [new password] with your own.

net user Administrator [new password]

You can also change password via Windows Device Portal. In browser, open URL http://[device_ip]:8080 and login with credential Administrator / p@ssw0rd