• If you are experiencing issues logging in, we moved to a new and more secure software and older account passwords were not able to be migrated. We recommend trying to reset your password, then contacting us if there are issues.
  • Nearly done! Migration cleanup is mostly done. There are a small number of issues left that we continue to work on, but all the heavy lifting is done. We still would love to hear feedback over at this thread and also check out the new XDA app! Thanks and we hope you enjoy the new forums, and thanks for your support of XDA <3

[ROM][Unofficial]Firefox OS 2.0 Pre-Release for Kindle FIre HD 7[5/22 Alpha]

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
*** USE AT YOUR OWN RISK! I AM NOT RESPONSIBLE IF THIS SOFTWARE OR SOMETHING ELSE SUDDENLY FRIES YOUR DEVICE. ***

Firefox OS

Download Info:
Latest Build: [2014-05-22] Alpha 2.0 Pre-Release
Links:
Dev-Host: Download
Md5sum: 1b9e59c7af3ef6f481f736c207dce1df
Older Builds:

[2014-05-20]
Links:
Dev-Host: Download
Md5sum: cf1cabaa21cd4b3767449bc7300666b0
[2014-03-12]
Links:
Dev-Host: http://d-h.st/1qH
Md5sum: 8799eafb470354ad0ecc717f0fb3ad88
[2014-02-36]
Links:
Dev-Host: http://d-h.st/gkB
Md5sum: 8c1635cf11375db632b0f5f3f4897737


Ok i have been working on this for a few months and finally got around to uploading my latest build and decided to make this public. This is Firefox OS ported to Kindle Fire HD 7". It is still quite buggy but I believe alpha status sounds about right at this point. Here's some info about this OS in case people want to know the technicalities. This OS is based on AOSP 4.3 using hashcodes cm 10.2 device tree with some modifications. While it is based on AOSP Android, this OS is only based on it in the sense its core is based on android, it has no dalvik virtual machine so don't even bother flashing a gapps package with it, it wouldn't even recognize it inside the OS.

I have to give a big thanks out to Hashcode, for putting up with all my questions in the irc about building rom's considering i'm totally new to compiling an android os, much less troubleshooting the technical things. Also have to give a big thanks to the Mozilla dev's in their irc because they helped me quite a bit in figuring out how to get past the main bug i was having(especially gerard-majax). For those of you who weren't in the testing you would'nt know but the original builds of this would boot up to the firefox boot animation, flash a white screen and then blank. Managed to work around this rather than fix it for now thanks to them, along with answering alot of my questions that are more inside Firefox OS's realm rather than android's. Now that i mentioned that i have to thank all my tester that helped me get this project off the ground by testing the rom out and reporting any bugs, along with just reporting if the latest build worked. These people include but not be limited to: Jserrano56, LinearEquation, Ph0enix_216, r3pwn, viktormax3, trinaldi, south956, and Latonya1. If i left anyone out i'm sorry, i grabbed everyone's names from my sent items rather than browsing the entire thread where everyone volunteered. I will add screenshots as soon as i can.Screenshots added! Sorry for there not being any lockscreen pics, i can't take them because the shortcut for screenshot in Firefox OS is power + home button, and there are no softkeys in the lockscreen for homebutton...

Screenshots:








Now let me list some bugs it has that are currently being worked on to the best of my limited capabilities:
[Pre-2/26]
  • Battery Gauge doesn't work - Fixed sorta (see new bug below that was caused by fixing this)
[2/26]
  • Gralloc is disabled because of bug with sgx gpu's so theres some laggyish graphics < Fixed [2014-03-12] (thank you mozilla devs for patching this!)
  • "Insert SIM Card" message is displayed on drop down menu and lockscreen < I'm looking into this, all i know is i need to figure out how to disable RIL
  • Camera is broken - now compiles sucessfully but still doesn't work (mediaserv crashes and burns)
  • Video Playback wont even initiate < still not sure about this problem, trying to look into it- Fixed [2014-05-20]
  • Issue where device tends to not want to come out of sleep mode unless plugged into charger < Looking into - Fixed [2014-05-20]
  • Bluetooth isn't working yet - Fixed [2014-05-22]
  • Miscellaneous GUI glitches < These are more than likely mainstream since version 1.3 was being stabilized until recently.
  • Charging Loop on lockscreen when charged by usb low power < still looking into this
  • sdcard is a bit glitchy
  • mtp isn't working (adb works fine though)
  • usb connection restarts every so often < probably related to why mtp isn't working
  • small boot animation < not sure if i should stretch this or fill in the background with blue or see if mozilla devs have a higher res version somewhere

Note that like i mentioned in the bugs, this is based on a 1.4 Pre-Release, which isn't exactly the most stable branch. If you are wondering why i used an unstable branch the answer is simple, 1.3 is based on ICS sources, and i didn't have an ICS device tree to work with. At this point i guess you could say this OS is comparable in a sense to Ubuntu Mobile OS, simply because android is more popular, but as i like odd things i decided to go for it with this ROM, so I will say this, if all you use your Kindle for is email, browsing the web and listening to music, then this ROM would be good for that, it was designed to be Completely html driven. It should run smoother than it does now in the coming updates.

So without further ado let me post some instructions for flashing this ROM:
***Notice*** Please make sure you have at least twrp 2.6.3.1 installed or you may encounter problems.
  1. Download the ROM above and place on sdcard
  2. Boot into twrp
  3. Do a factory reset
  4. Hit Install
  5. Choose the ROM
  6. Reboot
  7. Profit!

Notice: I am looking for developers that would like to help me with this project as i don't know any C++ or C coding, so the bugs i can fix are limited to what i can find that is simple or simple enough in C++ that i can change a string here or there. So please if you aren't busy or are interested i would love some help fixing things.

Now for any developers that are interested here is a small tutorial on how to download and compile this because the process is slightly different than the android setup by a little:
First off i suggest reading the setting up the build environment herethat Mozilla made, but keep in mind some things when following their instructions, their build instructions were designed around the stable 1.3 branch which I'm not using, so certain things like the compiler versions they list are incorrect so for what they call for using as gcc and g++, install the 4.7 version. Another thing they don't mention because i stray from their path is you will in fact need Java, so make sure that's installed. i included a preset .userconfig to specify the correct version of gcc and g++ to be used, if its in a unusual path or something look in the .userconfig file to change it(its in the root folder of the build environment). I also advise setting the ccache higher than they put it at, it usually works at what they set it to but recently i couldn't get it to build until i set it to 5GB. One last thing i haven't automated yet is because this was a non Java using OS the signapk.jar file doesn't get auto-copied to the folder it needs to be in when the otapackage is made so if you ever make clobber or its your initial build remember to
Code:
cp tool/update-tools/bin/signapk.jar out/host/linux-x86/framework/signapk.jar
Ok that paragraph appears to be a bit of a mess but i think i put the core info for setting up a build environment in there. Next how to download and set everything up. First off goto the folder you want to set this up in(for me it was my home folder) and run
Code:
git clone https://github.com/stunts513/B2G.git
once that is done run this:
Code:
./config.sh tate
Now go do something for a few hours because its going to download a lot of data.

Now that it is done downloading there is something important you need to do or it will complain about missing dependencies, go into the frameworks/base/graphics/jni folder and rename Android.mk to Android.mk.disabled or just delete it. I suggest if you want to put this in another name other than your login name on Linux to "export USER=blah". Ok now things get different but simple, run this
Code:
./build.sh -jX
where X is the number of physical + logical cores your pc has. Once the build process finishes run
Code:
./build.sh otapackage
Once that is done you would think "yay my build is complete", but no it never could be that simple, lemme explain the next steps to do until someone helps me recode some python scripts.

Now that we have a signed apk we need to add some things to it to get it finished because the python scripts need some editing i don't know how to do. Go into the out/target/product/tate folder and open the zip file it created up, add the data folder into it. Now open the META-INF/com/google/android/updater-script and find this line
Code:
mount("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.1/by-name/system", "/system");
package_extract_dir("system", "/system");
right after it add these lines:
Code:
mount("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.1/by-name/userdata", "/data");
package_extract_dir("data", "/data");
and don't forget at the end to add the
Code:
unmount("/data");
before the
Code:
unmount("/system");
Now that that is over with grab the last command you see outputted in the terminal about running java -jar signapk.jar and modify it so it doesn't have the /tmp directory as the input file, and make the output filename whatever you wish. Tada theres a successful build for ya. if you want to look at it i have this info on my github wiki for b2g in case i either left something out or had extra info on there.


XDA:DevDB Information
Firefox OS, ROM for the Amazon 7" Kindle Fire HD

Contributors
stunts513
ROM OS Version: 4.4.x KitKat
ROM Kernel: Linux 3.0.x
ROM Firmware Required: 2nd bootloader and twrp 2.6.3.1 or higher
Based On: AOSP and a CM device tree

Version Information
Status: Alpha

Created 2014-02-27
Last Updated 2014-05-27
 

Attachments

Last edited:

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Thanks! Hopefully this will attract some dev's and some people might get interested in this os. I find this is very interesting in the sense that all the apps are literally coded in JavaScript and html5, so practically anyone could learn simple languages and make apps, I already have been learning a bit of JavaScript myself so I can understand what's going on in Gaia a bit better (Gaia is what the ui is called for those not informed). Learning JavaScript is kinda interesting because its the first object oriented language I've learned I believe. Anyways things I'm going to need a dev's help with more than likely are the camera, the Bluetooth, and the video playback issue. I have some leads with video playback but haven't had very much luck with figuring it out. Anyways I hope to see more people posting in and their thoughts plus any bugs they found/I forgot to mention. By the way I recommend trying the games out, they run quite smoothly considering I have gralloc disabled, I was surprised that games like solitaire actually had dragging and such, I'm kinda new to html5 so it actually surprised me.

Sent from my Amazon Kindle Fire HD using Tapatalk
 

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Thanks, BTW I did upload pics, because this is a devdb thread it has a screenshots button up at the top so I didn't think I really needed to put pics in the main post but I guess I can because they aren't exactly in your race the way it is. I'll link them into the post when I get on my PC.

Sent from my Amazon Kindle Fire HD using Tapatalk

Edit: ok i put linked the screenshots that were there already so they show up on the main post, if you think i put too many or they are too big or somethign please feel free to tell me so.
 
Last edited:

persano

Elite Member
Nov 25, 2012
1,612
263
0
22
Buenos Aires
Thanks, BTW I did upload pics, because this is a devdb thread it has a screenshots button up at the top so I didn't think I really needed to put pics in the main post but I guess I can because they aren't exactly in your race the way it is. I'll link them into the post when I get on my PC.

Sent from my Amazon Kindle Fire HD using Tapatalk

Edit: ok i put linked the screenshots that were there already so they show up on the main post, if you think i put too many or they are too big or somethign please feel free to tell me so.
exellent work. keep like this !
 

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Thanks for the support! I have been looking into disabling ril so that annoying insert sim message will go away, I kinda made some progress on it but its kinda half and half progress, I'm twiddling around with gaia's innards, and someone mentioned there's a way to build Gaia that's meant for a tablet so I tried it, here's the upside so far about it, it took the annoying sim message away, and has a slightly different layout with only 2 pages on home screen and I think the search box was disabled. This is the downside, it took away the games collections and such, the icon for insert sim is still on the status bar and the lock screen still says no sim. Even worse than that was the fact I believe the only way I can put it into practical flashing use is to make a production build rather than a user debug build, in order for me to even test it I had to wipe data, and then run a make file that pushed the needed files via adb. Even weirder to me is I found out as it is right now I was thinking I need to edit hashcode's python scripts for building the otapackage to include /data to be auto included in the packaging process, and after seeing how a production build is made I see why it's unnecessary, a production build actually puts them on the system partition. Might still add a command line option to the scripts for if its a user debug build to do so. Sorry if this seems like confusing ramblings, I find it fun talking about technical things.

Sent from my Amazon Kindle Fire HD using Tapatalk
 
Last edited:

dmroeder

Senior Member
Oct 14, 2012
196
169
0
Portland, OR
Haha stunts, the beauty of having your own rom thread is you can ramble all you want! Thanks for your efforts, I'll be checking it out!

Sent from my MB865 using xda app-developers app
 
V

vegetajin8

Guest
Looks promising. Be keeping an eye one this. Once it turns beta I'll give it a try. Keep up the good work.

I checked this out I really like it. Hope you keep up with this.
Sent from my Kindle Fire HD 7 using XDA Premium 4 mobile app
 
Last edited:

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Update!

Ok, here's an update, have a major bugged fixed in this release as well as minor graphical bugs.

Update: [2014-03-12] Alpha 1.4 Pre-Release
Links:
Dev-Host: Download
Md5sum: 8799eafb470354ad0ecc717f0fb3ad88


Whats fixed in this update:
-gralloc works now (thank you mozilla devs for fixing this)
-misc gaia(the homescreen/gui) fixes.

What these fixes mean:
With gralloc functioning now, the graphics are much much less laggy, and i can also start troubleshooting the video playback issues a bit more than previously. You will now notice a nice artifacting loading logo on videos in youtube, and on games like safecracker it will be a nice big fullscreen artifact on the screen while sound is playing.
Gaia misc fixes from upstream, they are nice little things that needed fixing that now work correctly, like that little bar of bleed through from the homescreen on certain apps and games is gone, things like that. I will update my screenshot now so that actually looks nicer.

Thanks to this update some things were brought out that i now can start throwing some guesses around as to whats up with video playback and the games and such that are artifacting. It probably has to do something with a buffer, but i have said this before i need a dev that will help patch this kinda stuff, i have no clue how to myself. All i know is most of the problems i'm having with video playback issues and artifacting and such are probably caused by the fact Mozilla has their own custom framework/av folder, which in turn i believe has its own custom libstagefright, this also i think had something to do with why i couldn't get the camera's hal module to compile. So if any dev is willing to take a look at this please help me.
 
Last edited:

Ph0enix_216

Senior Member
Aug 23, 2013
689
374
0
/system/xbin/su
Finally had a good time to test this out (if you call Argumentative Writing class a good time). Flashed well, booted without a hitch, and the setup wizard or whatever it's called went smooth. I've gotta say, nice job :D Other than the bugs you've already addressed, my only complaint was that the music app went into a scrolling loop when in the album art view, then crashed.
@stunts513, be proud of yourself - this is quite the accomplishment :) I only wish I could do something as awesome as this.
 

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Thanks, I'm thinking about trying to build it for the other devices as well sometime this week to test it out and commit any tweaks I may need to make to compile for those devices. I've been doing other things lately so I haven't been booted into Linux much this week and my debugging hit a bit of a standstill, I'll try debugging it again soon and see if I can fix anything else.

Sent from my Amazon Kindle Fire HD using Tapatalk
 

xWolf13

Elite Member
Jul 6, 2012
1,380
834
113
Can't wait till this reaches its beta stages. Would definitely use it!

Sent from my Amazon Tate running CyanogenMod 11
 

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
Funny it would get bumped today. I've been upgrading to a cm 11 device tree kitkat based build for about 4 or 5 days. Been having to debug a error for the past few days that was driving me nuts and I finally got passed it. Even more surprising is the fact I didn't have to disable the camera and I think it compiled its module successfully. I just finished a build a while ago and plan on testing it tomorrow once I make a nandroid backup. My main issue is as it turns out from multiple devs telling me(hashcode and gerard-majax) I added some unneeded stuff to the manifest back in the jb builds. Apparently just because the compilation process requests it and errors out without it doesn't mean its required(this really surprised me). Long story short some llvm and clang related stuff was being compiled thanks to some librs related stuff and erroring out for some reason and it turns out I had to kill it at the source. Let's hope my build works, I'll try to post the results depending on if I go shopping for parts for my microwave or not.

Edit: oh and as to the video, I have not heard of b2g having chromecast. I don't know if they would support it or not considering its based on googles work but forked in a different direction. And no as of that last build no video was working. I think it was something with ducatti not working right so none of the video would even decode and there was some kinda buffer error with I think open on related animations so even of the decoder worked I think it would a been artifacting like the YouTube play button and such. Hopefully the cm 11 builds will work better. I still don't have a dev to help me with this so progress is kinda slow seeing as I don't know c++ I can't do too much. I'm just glad all the devs have put up with my questions up until now as I know how annoying I can get. It's not often I find tech savy people that know more than me about PC's as i come from a small town so I tend to have a million questions when I find someone smarter than me.

Sent from my Amazon Tate using Tapatalk
 
Last edited:
  • Like
Reactions: xWolf13

stunts513

Senior Member
Feb 8, 2013
2,238
635
0
New Braunfels, TX
UPDATE!

Download Info:
Latest Build: [2014-05-20] Alpha 1.4 Pre-Release
Links:
Dev-Host: Download
Md5sum: cf1cabaa21cd4b3767449bc7300666b0

Update info:

-updated to a kitkat build with the cm 11 device tree

Fixes:
-Fixed video playback - (actually hashcode did, i just pulled in changes from his repo and it worked)
-Camera doesn't work but the module is compiling now so camera *may* work soon, don't hold me to it.

On another note, i noticed while atleast video playback is working not all video files are openable, but i haven't tried much outside of a random file left over from a android game that it found so i don't know the extent of what can and can't be played. The file i played had audio and no video.

Oh and something important you need to do when you first boot into it, enable soft home from settings>developer options, for some reason the previous method i used involving a build.prop property didn't work this time around. Kinda annoying...

Todo:
- In the next few days i'm going to sync up my sources with hashcodes again becasue he said he's got some camera fixes he's working on that might help.
- See if the hwc will build and load on cm11 builds as it may fix the artifacting on certain games
 
Last edited: