Last weekend I have been updating my Firefox Peak to the Nightly version of Firefox OS, I have been doing it for some time until I got a bigger problem and I needed to spend more time than usual debugging and fixing it.

I fixed it this weekend, these were some caveats I found and how I got it working again with an unstable/nightly version of Firefox OS(currently 1.3.0prerelease).


I have noticed a problem when my device hadn’t the screen active, I lose my connection through adb because when the screen is not active the device just drops Remote Debugging and the device is not in the adb devices list anymore.

I realised of that after playing around with lsusb and udev, I plugged/unplugged the device and checked the missing row when using lsusb, but It wasn’t working because when you lose Remote Debugging or you are in fastboot mode the productId/vendorId changes, and even having that in your udev doesn’t assure you will have permissions to access the device.

lsusb output:

Bus 003 Device 004: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 004: ID 05c6:8012 Qualcomm, Inc.

This last one above is my GP Peak when I cannot access, when I can the idProduct(second number) is 8013. udev file /etc/udev/rules.d/51-android.rules:

# The line for you GP Peak
SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="8013", MODE="0666", GROUP="plugdev"

Geeksphone repos

I think you already know you can update your device using the geeksphone repositories, It’s as easy as having the above working and using the flash script to flash your device as is explained in the instructions.

Gaia update per application

After one of these updates I lost two main Gaia(Firefox OS UI) applications, email and clock, I was just getting a black screen every time I openned the app and I couldn’t use it.

I follow some good tutorials about how to update a Gaia application, they worked smoothly for me.

Instead of updating the whole Gaia you could just update the apps you need, just like I did.

# If you have a Peak
export HIDPI=1
# After that for any device
APP=email B2G_SYSTEM_APPS=1 make install-gaia
APP=clock B2G_SYSTEM_APPS=1 make install-gaia

If the above fails I find sometimes you need to do a adb remount to be able to have access to the device again.

I was using ArchLinux for this tutorial.