Fairphone 2 build


I made a Fairphone 2 build successfully but im not sure whats working and whats just a mater of B2G transition.
So what i did is to make a build on branches gecko “pine” and gaia “kanikani”.

Yesterday 11.5.2016.
Maybe this is more clear:

it succeded and i was able to flash the Fairphone 2.
After reboot it opened several nautilus File browser Windows on my Ubuntu and showed a message saying something like “not able to mount device”

So i detached the phone and unlocked it with the slider. But the result was a bit confusing:

  1. Homescreen was white empty and had a searchbar that,
  2. when pressing on it, a keyboard comes up and i can type but i can’t see what im typing because the searchbar is hidden behind a white area that comes up with the keyboard…
  3. a swipe from right to left side brought me to a second screen i know from my earlyer FXOS tests. The Pining screen.
  4. Volume brings up a Volumebar normaly
  5. Viration when pressing the vol down button several times until the bar is on minimum works.
  6. the rotation of the Display works.
  7. the camera button on the side of the device seams to work because its vibrating but nothing is happening. I think because camera app is not ready jet…?
    8.Power button makes the display go dark and wakeup after pressing again.
  8. after exactly 15 seconds the phone stops to react and after 20 seconds the display goes dark and i can not turn it on again else than press and hold the powerbutton 10 seconds to restart the device.

can somebody number me the thing that are correct (because of B2G transistion will solve it someday) and the issues i have to trace?

Regards, Novski

(Lissyx) #2

Everything looks good except the last step, I don’t get why it would stop to react. Can you collect adb logcat -v threadtime when this happens?


im not experienced with that but from what i know until now is that i have to activate developer and USB connection to allow adb on a android device… Is that different here?
i tryed it with this comand in terminal:$ adb logcat -v
it started the daemon and says - waiting for device -

even if i restart and let i die again it stays - waiting for device -

(Lissyx) #4

Since you have an eng build, you should not have to enable anything on device. Please make sure the USB VID and PID are good also. I remember atila showing me the FP2 and that getting ADB to reply was quite slow, no idea why.

We need someone with a Z3c to flash a build on his side to confirm this. I don’t really have the time for this right now :/. We fixed building devices on TaskCluster yesterday, so one should be able to download blobfree from the task linked in https://treeherder.mozilla.org/#/jobs?repo=pine&filter-tier=1&filter-tier=2&filter-tier=3&selectedJob=25137 which is https://tools.taskcluster.net/task-inspector/#OJmIr7GETHuxNJ8ydCBUCw/0 and flash this with the addon :slight_smile:

(Jovan Gerodetti) #5

points 1. and 2. seem to occour on every device but not on mulet. do you know why this happens and Is there a bug for it?

(Lissyx) #6

yes, https://bugzilla.mozilla.org/show_bug.cgi?id=1261612


how do i check that?

whats strange is that after it dies it tries to mount 5 volumes but can only mount 3 of them with different sub folders:
34 MB Volume

  • data
  • drm
  • sensors
  • svoperapps
  • usf
  • sns.reg
  • WCNSS_qcom_wlan_ns.bin

2.1GB Volume

  • app
  • b2g
  • bin
  • etc
  • fonts
  • framework
  • lib
  • media
  • priv-app
  • tts
  • usr
  • vendor
  • xbin
  • build.prop
  • sources.xml

671 MB Volume:

  • cache2

and i can say that i was able to connect and reboot to bootloader with adb befor with android…


hmm now broken…
i wrote $ ./repo sync
and now the build fails again…
and $ hg clone https://hg.mozilla.org/projects/pine/ pine
says destination ‘pine’ is not empty.
how can i update the repo if i am in pine?

(Lissyx) #9

I cannot help you more there. I don’t have a Fairphone device. Check docs about udev and VID/PID.

(Pochy) #10

I see this is for Aries device, we can do that for flame?, I see this task but is not updated from last year, we can enable?, If need help just tell me.

(Lissyx) #11

There is a bug open for flame. We cannot use buildbot infra. So if you wish to fix this then it means we have to add taskcluster flame task.

Mozilla Discourse a écrit :


May 12lissyx:

We fixed building devices on TaskCluster yesterday

I see this is for Aries device, we can do that for flame?, I see this task but is not updated from last year, we can enable?, If need help just tell me.

Visit Topic or reply to this email to respond

Previous Replies


May 12

I cannot help you more there. I don't have a Fairphone device. Check docs about udev and VID/PID.

Visit Topic or reply to this email to respond

To stop receiving notifications for this particular topic, click here. To unsubscribe from these emails, change your user preferences

Envoyé depuis Firefox OS


ok, thank you for your time lissyx!

Is there any one else with some knowledge arround?

I wold like to make a new build and wipe out all that is done in the build process.
So on a Andriod i wold do:

$ rm -rf out
$ ccach -C
$ ./build.sh

is that enough for my pine branch as well or do i have to remove some other folders?

(Lissyx) #13

To be extra cautious, you should also remove objdir-gecko/ and gaia/profile* :slight_smile:

(dattaz) #14

objdir-gecko/ also


ok, now after a second build i have succeded to build a working build!!!
It now works without blackout and so on.
I was even able to get in to the settings and search for my wifi. unfortunately i can not connect because of that bug with the white Layer (https://bugzilla.mozilla.org/show_bug.cgi?id=1261612).

The difference that makes it work is, as far as i can tell, easy to see in the build log.

in the topmost part of my first build right after the part i posted in the first post here, there is this:
Blob setup script has changed, re-running shasum: fp2-sibon-2.0.0-blobs.tgz: fp2-sibon-2.0.0-blobs.tgz: FAILED open or read shasum: WARNING: 1 listed file could not be read

I then wiped out like that:
rm -rf out
rm -rf objdir-gecko
rm -rf gaia/profile*
ccache -C

and made a new build. In that log it looks like that:
Blob setup script has changed, re-running fp2-sibon-2.0.0-blobs.tgz: OK

I recognized that beheavour befor in Firefox OS builds. It was exactly the same. I had to do it a second time and it then always states : fp2-sibon-2.0.0-blobs.tgz: OK
So ther must be a failure in the download of the blobs someware. not related to B2G transision, or transmitted with Firefox OS to B2G…?
Because its in the top of the build it doesn’t take long to see if its going right or not…
Maybe some Mozilla guy can give it a try?

(Lissyx) #16

Nobody has a Fairphone 2 outside of Juan, and he is not assigned on B2G anymore :/. If there is a bug in the download script, then you should reproduce and share the logs when it happens?

Does a subsequent build without cleaning everything works? Does another build after cleaning just out/ works ? If so, I would not spend too much time with it: you have been able to get something working well, let’s build on top of that. We have records that this is a symptom and we have a good idea of the cause, so if anybody gets the same issue we can help more easily.

Regarding the white layer issue, there are two patches with r+ ti apply on Gecko. Just apply them locally and you should be good :). If so, it would be very useful that you share a blobfree build for others!


Ok. I made a blobfree build to test. First without that patches, because you might have to explane me how to apply them…

the path B2G/out/target/product/FP2 has now two .zip files.
One is called

  • blobfree.zip
    and the other
  • FP2.blobfree-dist.zip
    wich one can i try to install over the nightly(browser) way?

(Lissyx) #18

FP2.blobfree-dist.zip, as documented on MDN …


can somebody write me the terminal code to get those patches from bugzilla in to my repsitory?
Bugzilla bug 1261612

Thanks, Novski


ok. becaus of the problem of my system to get ot in the VM i tried to get a build on OSX running.
I was quite successfull but onfortunately now i have a problem with the checksum of the blobs its downloading befor i can build…
It downloads the blobs successfuly and askes to accept the license then i get this error:
Verifying archive integrity...Error in MD5 checksums: 87626eba840dd341c6994bd20f4b0a2e is different from 14351800dc7c3896b060f1033c65aebc
both of those checksums are different to the one stored in the: “/Volumes/b2gos/B2G/device/fairphone_devices/FP2/blob-shasums”.
That confueses me.
So i tried to understand whats hapening and found this file in a folder where the blob gets stored by the download proces…: /Volumes/b2gos/B2G/download-fairphone2/fp2-sibon-2.0.0-blobs.sh
in the top of this file there is a line that says:
# This script was generated using Makeself 2.2.0

and here i find the second one of the checksum above: MD5=“14351800dc7c3896b060f1033c65aebc”

so can somebody say me where and what generates that file?

Regards, Novski