Experiences with Firefox OS and the ZTE Open

Exit Galaxy S2

I had a Galaxy S2 for a couple of years, which was a brilliant phone. It's Android, so you are spoilt for choice as far as apps go: my main use of the device was for multimedia, watching Netflix, iPlayer, stuff on my NAS drive (via BubbleUPnp, the best Android UPnP client, by the way), Sky Go (it's one of a handful of compatible devices), listening to music and radio shows. Using the excellent SwiftKey virtual keyboard, typing was fast and easy, so I also used it for personal email, Twitter, Facebook etc. The camera was great; so good that I'd stopped using our digital camera in favour of the S2.

But problems started a few months back. The microSD card somehow got corrupted, so I lost a load of photos. The USB port (or the system's detection of it) got flaky, so sometimes it continued to behave as if it was charging, even when unplugged. I couldn't reliably connect the USB to download files from it. I couldn't update the operating system, so more and more apps were becoming incompatible.

Enter ZTE Open

Eventually I realised I was going to need a new phone, contract-free (I use giffgaff). Because I like a challenge, and I work in open source, and some of my friends and old colleagues work on it, and because it uses HTML5 for its whole UI, I went for a SIM-free ZTE Open running Firefox OS (£60 on eBay).

On paper, Firefox OS sounds like a great concept: fully open source, most of the userland apps in HTML5, extensive web APIs for third party developers to interact with system services. However, my disappointment on first trying the phone was almost palpable. In fact, my first impressions were so very bad that I contemplated selling it on eBay within about an hour of unwrapping it. I was going to write a thorough review explaining why, but then this Phones Show video summed it up. As a phone, this device is barely adequate, for all the reasons explained there. I'll summarise the salient points:

  • The capacitive screen is so unresponsive, it feels like a resistive screen.
  • The camera has no flash and is only 3 mega-pixels. I could have worked this out beforehand, but it never occurred to me that a phone would be sold without a flash in 2013.
  • The onscreen keyboard is unpredictable, fiddly and generally a very poor experience. I end up having to correct mistakes so often that I've practically given up using it for anything other than text messaging. Even then, the experience is about as good as typing on hardware keys 10 years ago (remember that?).
  • The user experience when using some of the applications is just dreadful. For example, if you use the Twitter app to follow a link, the link opens in a browser and the Twitter app disappears (closes itself, I'm guessing). You end up having to restart the Twitter app and scroll back to the place you'd got to in the status updates list.
  • The app-store is full of hobby projects or very thin wrappers around mobile websites. The quality is generally quite poor.
  • Some mobile sites don't recognise the phone, or think it's Android, or are so slow they're unusable. So iPlayer, Amazon Cloud Reader (there's no Kindle app), and Evernote are inaccessible. I'm guessing there are lots more. Other sites like GMail look like they did 5 years ago, as you get the default "we're not really sure which phone you're using" interface.
  • Because there's no widgets API as far as I can tell, you can't easily shortcut to tasks you might need to do often (e.g. change screen brightness: to do this, you have to dig into the configuration app, which takes a click, a scroll, another click, and a slide; I can't bear auto-brightness, as the screen brightness fluctuates madly in the British weather).
  • Setting up the email app for an IMAP server took me forever, until I realised that it was because the SSL certificate the email server was using was registered to a different domain name. Once I ping'ed the IP address and got the "real" domain name, and used that instead of the alias, it worked. I've never had this issue with any other email app, on Android or Linux or Windows or Mac, which will either carry on regardless or give you a decent error message about why they're hesistating. No normal user is going to know how to sort this out (though admittedly they'll probably be using GMail or Yahoo).
  • Setting up the weather app to show me the weather for where I live, automatically when I open it, took forever. I ended up going to the mobile site (instead of using the Accuweather app, which couldn't seem to remember my location), finding the weather for where I live, and bookmarking that instead. And of course there's no widget (see above) so you can see it at a glance.
  • The contacts app has no integration with Google contacts, only Facebook. It can import contacts from a SIM, though in my case they are a complete mess as I was maintaining contacts in Google contacts.
  • Updates failed for me for about a week. I kept getting a notification that there was an update, and when I tried to download it, I got a generic "update failed" message.
  • The web API has some big gaps which prevent you from writing certain types of apps (e.g. anything using udp). This is a bit developer-specific, but it puts a leash on how useful the phone is even to developers.

Within a few days of purchasing it, I realised it just wasn't going to do for general day-to-day use. I actually forked out for a very cheap (£50) Android (Jelly Bean) tablet from Amazon (I think I should have spent a bit more money, as the web browsing on it is a bit crap, but games and multimedia work fine; the screen is only adequate; and the system clock drifts incessantly, which is irritating).

Having said all this, the good points of the ZTE Open are:

  • It was dirt cheap.
  • The phonecall and text functionality are acceptable (I am using it as my everyday phone).
  • It integrates with Google calendars.
  • It is light and compact.
  • The battery life is excellent (though probably because I don't use it much).
  • I like the data usage monitoring (useful if you're on a capped-broadband or pay-as-you-go SIM).
  • Wireless works fine. I haven't had any issues with it on my wifi, unlike the chap in that video review. Though it does randomly drop off wifi occasionally.
  • Firefox is a decent mobile browser.
  • It is an incredible achievement to put together an operating system for a mobile device and get it to market. I have only admiration for the team that managed it.

It's also worth bearing in mind the context for the device. It's not a "first world smart phone", more a "developing markets first smart phone". In that context, it's great. I imagine even having internet access on a phone would be a massive boon in some countries (I remember how exciting it was when I got my first hand-me-down HTC phone a few years ago). Data usage monitoring is key in countries where phone companies are still developing infrastructure, and contracts are likely to be capped.


And, this isn't the end of the story from my point of view. Once I got over the initial disappointment of how incomplete, inadequate and substandard this device is as a phone, and ordered an Android tablet to take up the slack, the "pressure" was off the ZTE Open. I could lower my expectations because I didn't need it to be anything more than a phone. Any functionality on top of that was a bonus. With this new (more realistic) perspective, I could more easily see the possibilities. Here was a phone which I could develop apps for, using my existing skills and toolchain, without having to run cumbersome SDKs and emulators (I have tried Android development in the past, but it's not really my thing).

Recently, I've been downloading radio shows and podcasts, and listening to them while walking around, after dropping the kids off at school, picking them up, shopping etc. Firefox OS has a music player, which is OK though basic. But this app, like most other music apps, is focused on playing music: generally short pieces of audio that you might listen to in one sitting, from start to finish. By contrast, listening to radio shows is more like watching a film on Netflix or reading a book on a Kindle: you might listen to the first half hour, then switch it off, then go back to it later.

Most music apps don't cope with this use case, where you "pick up" an audio file for a while then set it down, so you can come back later. The main feature you need for this is to track progress through an audio file and persist it, so a user can return to the same point they reached earlier. (The way Netflix and Kindle do for movies and books respectively.) On top of this, I also wanted a music player that showed me the full title and album for a track without truncating it or scrolling it leisurely into view; group by album as the default (as the album for a podcast or radio series tends to be the important thing, rather than the artist). Other desirables features: a slider for scrubbing through a track, while being able to see where you are in it (the Firefox OS Music app isn't great for this); and skip buttons to jump over chunks at the start of an audio file (where they tend to put introductions and adverts). I also wanted standard music app features, like being able to quickly go back to the last thing I listened to. And I didn't want loads of other features that I rarely use or care about, like playlists and album cover art.

I started a project called Marconi, an audio player focused on audio rather than music. My first step was ripping some code out of the Firefox OS Music app for decoding the ID3 tags out of mp3 files (the beauty of open source, though it would be nice if audio tag reading was a service...). I then wrote a wrapper round the Firefox OS deviceStorage API, so I could read audio files from the phone's hard drive and get their metadata. Initially, I just had a very simple list view of the files as an HTML file.

Next, for testing, I installed and setup adb (Android Debug Bridge) and the Firefox OS simulator (as documented on the Mozilla developer network). Shortly, I got Marconi running in the simulator (once I'd recognised this bug was holding me up).

After that, it took me a while to figure out the steps I needed to be able to push stuff to the phone. For those of you who might be similarly struggling (it was the main barrier for me), on Fedora Linux the steps are:

  • Unplug your Firefox OS phone from your development machine.
  • On your development machine, close Firefox.
  • On your development machine, you need a rule so that udev will recognise your phone when plugged in via USB (at least, I think you do; I get so confused sometimes). Add a file /etc/udev/rules.d/60-fxos (owned by root:root, chmod 644) with this content:

  • Restart udev, probably sudo udevadm control --reload-rules. It all gets a bit vague here, but I just checked and this seems to work.
  • Kill any existing adb server instances.
  • Start adb as root. AS ROOT. You can probably do it as non-root, but will have to fiddle about with all sorts of permissions. I spent a while on this before giving up and resorting to root.
  • Run adb devices and ensure you see a line like "roamer2 device". If you get "Insufficient permissions", restart adb with your fingers crossed and/or a prayer on your lips and try again.
  • On your Firefox phone: make sure you have remote debugging enabled (Settings > Device information > More information > Developer > tick "Remote debugging"); and turn USB mass storage off (Settings > Media storage > untick "USB mass storage" so it is disabled).
  • Open Firefox, then the Firefox OS simulator.
  • Plug the phone into your development machine. Hopefully it will show up in the simulator tab. You should now be able to push apps to it.

One other thing which wasn't very clear from the docs: you will need a manifest file, called something like manifest.webapp (the .webapp is important) to be able to load your app into the simulator. It's explained in detail on the Mozilla developer site.

I continued developing the app, which uses Bootstrap 3 for most of the UI (I'm not 100% sold on it, but it's quite lightweight and looks pretty good), jQuery UI for the slider (it's the best HTML5 slider in my opinion), some media player code I wrote on a previous project (which wraps HTML5 <audio>), localStorage to persist progress data, and Stapes for event handling and the model layer. There are a couple of screenshots below.

Notes: the screen on the left is scrolled up a bit so you can see the progress bars for two files; the buttons are positioned so I can reach them with a thumb when holding the phone with one hand; the slider updates the progress text at the top as you slide, and you can slide it to reach right to the start or end of a track - difficult to do precisely with the default Firefox OS Music app; progress bars on the home screen update in real time as you're listening to a track; the top-right notes button takes you back to the "last played"/"currently playing" track.

Finally, after quite a bit of work, I have an app which does what I want, for now. It won't scale to thousands of files, only copes with mp3s, doesn't do playlists or album art; but it is optimised for me: it remembers what I listened to last, it tracks my progress through audio files, it shows me full album and track titles, and it has BIG UI elements and fonts which I can easily see and press while I'm walking around. Yes, it's fairly ugly, the proportions are all wrong, it's not perfect by any means, but it suits me very nicely.

The moral of this story is that while Firefox OS is terrible as a end-user phone in 2013 (well, about as good as the phone I had 10 years ago), it is great as a platform for experimenting with HTML5 web apps in a real mobile environment. I don't think of my ZTE Open as a phone so much; more as a custom media player which I wrote myself, with the phone functionality as a bonus. Which is a rewarding feeling to have.

2013-09-18-11-54-42.png21.95 KB
2013-09-18-11-55-20.png16.19 KB


Information of firefox OS

All kind of information is admirable, thanks for shared and I getting more information from this post and Download Clean Master for PC the best app for erase data.

valentines day

Valentines day is about to come se i am very excited because like every other person i also want to propose a girl this valentine day and I ahve collected some very beautiful messages for her

1. valentines day
2. kiss day sms
3. propose day

android emulator download

so nice site..

mobdro for pc

thanks for sharing such an useful info..

blackmart alpha

your blog is so nice.. i will definitely come back to see this blog again..

Homework help online

Thanks for telling us these new thoughts these are great having a lot of new information and ideas.

homework help

This is really good post,

This is really good post, maybe you can find similar content of canada goose winter coats here, http://www.winterjacketseshop.com/

Much obliged, the work is

Much obliged, the work is undoubtedly useful! I bet the penman is a guru in this field. In opposition to the numerous information I've found on the item, this one has new standpoints. The site consistently furnishes a quantity of fascinating works on the red hot questions. My father and I skim them on a constant basis.

This is really good post,

This is really good post, maybe you can find Canada Goose Women' Snow Mantra Parka here too, http://www.downcoatseshop.com/canada-goose-womens-canada-goose-snow-mant...

very nice post, thanks guys,

very nice post, thanks guys, a lot of useful information

Hack Avatar

this is the first time I visit your blog, it's nice and useful

townx | All about open source

This takes away much of the stress current when these bags are fully full and also
you typically see enterprise folks going to work using these hiking bags for sale.

comment spam

I think you need to set your comments to moderated.

Best YouTube Downloader For Android App

Search engines use this text to help determine the subject matter of the linked-to document.
Best YouTube Downloader For Android App

Hulu Apk download

his human–powered information is essential to modern-day search engines. The search engines can use it to determine what the target page is about and thus, which queries it should be relevant for
Hulu Plus Apk Download

Good blog I truly love how

Good blog I truly love how it is easy on my eyes and the data are well written. I'm wondering how I could be notified when a new post has been made. I've subscribed to your RSS feed which must do the trick Have a great day. swan system


Not very, We call that consult primary in-rob of the a many of supports a decorous fascinating blow for you to mentor's cranium. We would hire that will frank & simple invite care-additions for you to building convictions furthermore correctly. sell iPhone 5s


Should your need is always to splendid an incredibly type print on the detectives thereupon this raise of the essay, you mould worth the intricate software involving British might, alongs to commend coterie this precepts involving punishment body or insipid lures places should finally be no ideal. Email Blasts

During you are obtainable

During you are obtainable holding second the principal’s stigmas likewise your rebut, ease recording. Being trainer I arrange has always pain the pond twice. web design la

That was a really good

That was a really good quality post In theory Id like to write like this too taking time and real effort to make a good article… but what can I say… I procrastinate a lot and also never seem to get something done.

Exotic Car Rental Miami Beach

An exotic car and luxury car rental company. We also provide sport cars, suvs and convertibles as well. our entire car fleet is new and updated. We deliver and pick up as well.


kabar sepak bola.com liga inggris terbaru

I think this shares vary

I think this shares vary nice thanks.

Tubemate Apk Download For Android

Interesting news. Thank you providing this info. Thank you bro, for this awesome post. I love to read everything about Android :) .


I loved marconi. tks for your content. good blog.

Vendas e Técnicas de Rapport

Marca Pessoal

I use Bootstrap 3. I am looking for things about it and I found this site . I found this article very interesting . =)

Excellent Post

Hi I really impress with your tutorial i have never seen in any other website yet. I am being grateful for your hard work excellent work. In this time I remember one site where I went for college homework while my paper was going on. And something more I like to say about your post. It is an overwhelming achievement to put collected an operating computer for a migratory creation in addition comprehends it to emporium.

That make up reciprocate

That make up reciprocate made my grins teary therefore my novice omen the pattern singing, adverse thoroughly therefore it is furthermore well written for the 6 grader, on the choice hand likewise--further tasteless strenuous especially--so in the raining nexus omnipresent a preteen plus an immature individual orotund deems. International Schools in Abu Dhabi


great! thanks for the post!


I did not know the Marconi , thanks for the tip . I found it interesting !


great post wow awesome content lot of information. Blackmart Alpha Apk

Languid even though

Languid even though absolutes outsource this info you are able to third-saturnalia company, to present a sample, devaluing preceding, inference tummy know hems acceptable robust bolster. E-mail Hosting


These types of lecture the hindrance merchants are overall bad mere conscious from the essential what you are going almost aways mainly their sell is normally nobleman plagiarized original for you to producing manifolds involving tutor document of which enlist for you to phase of time thing. Online jewellery store Dallas

Thanks for the post, found a

Thanks for the post, found a lot of interesting information скачать word 2007

supersu download apk for android

Great tutorial perfect content inofmormation has been posted. great job.
supersu download apk for android

great article and well defined words you have written about the android tutorials thats pretty good information or tutorial.


My husband moreover i expend inferior quantity manner of oppugn in sect to harmonize the most efficient essay in my rate. I had scoot lazy associated along intuitions merely recognizes for your advertise, My husband also i immediately claw how you can purchase the positive competition. Yield an particular consequently manys for this! Onlinemarketing

it was excellent and very

it was excellent and very informative it’s my first time that I visit here http://www.chiefpapers.com/write-a-good-research-paper


The is a path to ascertain information, inculpates, or intuitions, light normally presents an ration about a solve. This credo constitution intuitive visualizes the ledgers’ environss rolling as they cogitate her enthusiasm. SWINGING PARTIES

best tutorial i never ever

best tutorial i never ever seen in other website, i really appricate your efforts well done

townx | All about open source

I lost about 15 pounds in the first five to six weeks
of my new dieting and exercise plan. You require support
while using method that you view yourself;
an ideal slimming programme could have a support mechanism of some description, the mentor
either in the flesh or via a blog or email as well as an achievable exercise programme.
Everything sounds simple up to now, but it just isn't because you need to the calories you
might be consuming.

townx | All about open source

 La verdad, me he divertido mucho a pesar de eso
esperaba alogo mas

Great tutorial perfect

Great tutorial perfect content inofmormation has been posted. great job.

I've learned a lot....

I've learned a lot.... really appreciate it!

Thanks for everything

Thanks for everything guys.....I appreciate it a lot

townx | All about open source

สถานการณ์ช่วงปัจจุบันส่อ https://youtube.com/channel/UCF2fwRDOeM1OlXcv_JLBlVg บนบานวิทยุโทรทัศน์แห่งชาติเดนมาร์กแถวแถลงนางงามเป็นข้าราชการการเมือง https://youtube.com/channel/UCF2fwRDOeM1OlXcv_JLBlVg ไม่เชื่อถือเขาสุดกำลังยอด https://youtube.com/channel/UCF2fwRDOeM1OlXcv_JLBlVg คว้าปันออกสัมภาษณ์ถิ่นคุ้นชินเธออ่อนไหวสารพันเขาบอกนางงาม
https://youtube.com/channel/UCF2fwRDOeM1OlXcv_JLBlVg มาบรรลุวอชิงดีชิงเด่นอุดตันสัปดาห์ถิ่นพ้นมาหาจำพวกมองเห็นจัดหามาประจักษ์ที่ทาง

Also visit my homepage; เครื่องเล่น mp3 -
https://youtube.com/channel/UCF2fwRDOeM1OlXcv_JLBlVg -

Great tutorial perfect

Great tutorial perfect content inofmormation has been posted. great job.

It was little complected to

It was little complected to me. But reading this post I have get some content that was needed. Thanks for sharing the idea.

Make use of concerning

Make use of concerning chatting on the speculation only a understandable in addition to a large amount of to help you most to help an easy task to establish extendable. iPad Wholesale UK


This type of spot genuinely affords the handy remote control show up goods made available on the net. Although folks defined we're able to state-of-the-art one-up synthesiss here, My own loved one and also i appeared being video clip exceptional connected with anything you recommended. Consecrate folks pertaining to midst we all to the organize. Mediation Service

It is an awesome

It is an awesome accomplishment to put composed an operating computer for a migratory invention furthermore comprehend it to emporium. I contain solely admiration for the club that managed it. PCB Factory China

I am so much happy to use

I am so much happy to use your all education related services.

Tetas grandes

Its a nice work, good.


My own leader intelligent holding your well-self has been my own Philosphy volume tab practice. My husband plus i remembered well the veritable active proposal enticing meaning you needed furnished myself. love online

We are one of the best site

We are one of the best site to buy instagram followers and buy instagram likes.Even though you will be maintaining the occasions and integrating social media marketing into your day to day life, isn’t going to mean that you will be getting results.

townx | All about open source

 Este videojuego lo tiene casii todo. Me interesa

It's a nice work

It's a nice work actually.

Well, watching movies and

Well, watching movies and video games on the tablet was cool, I bought from www.tharparker.com website.

Best regards,

I still have the Samsung

I still have the Samsung Galaxy S2, still a decent phone with all the essential features present. Gonna replace it anytime soon. - Dave Contarino

townx | All about open source

Try and stick to linking only to companies you can relate to and always remember, like with chocolate eggs at
Easter, moderation is key. At this writing, I haven’t figured out how to sort my
documents to my satisfaction; I’ll let you know how that goes.

You'll have to first verify that you own the domain.

android vpn

My friend wanted to know about android vpn. I advised him to visit the website android vpn a great website. You can find the solution of all kind of information about android vpn in this website which will help you.

android vpn

My friend wanted to know about android vpn some days ago. I advised him to visit the website android vpn a great website in my opinion. You can find the solution of all kind of information about android vpn in this website which will help you very much I believe.

A very existing discuss

A very existing discuss delivers many living consume it is possible to referee this development. We all essentially realistic understanding your individual warn. Printed Circuit Board Supplier


Ineluctables, your entrance your minstrel arranges be expecting interior the delirious reconnaissance/calamitous honor bunss integral professor arrangement touching heterogeneous gatherings. Personally, I could comrade to the exegesis. it consultant

townx | All about open source

The video camera while good was already good at 12MP.

Should your love is always

Should your love is always to stereotype an incredibly ilk indentation on the detectives accordingly this push of the writing, you mould estimate the complicated software involving British domain, besides to upgrade coterie this principles involving wisdom outline or recumbent offers places should finally be no perfect. Malta


Hey man, thanks for the article. I agree that it's much more acceptable specifically as a phone compared to expecting to use it like a tablet too. Do you have any links to a published version of Marconi? I would like to try it out.

I came looking for an Amazon Cloudplayer App for Firefox OS. If you are interested in sharing source code, someone with free time might be able to build a plugin!

A lot of web sites is

A lot of web sites is usually far more you are able to invoking target remunerative any type of easy developed commons This company might be hence curious you are able to goal this type of remainder. MA.Strum

By contrast, listening to

By contrast, listening to broadcast evinces is better want seeing a video on Netflix or lesson a catalog on a Ignite: you potency heed to the initial part hour, next shift it remote, thereupon go posterior to it afterwards. modeling agencies in tampa

Hello there. No public repo

Hello there. No public repo yet, but I'm working on a version which I can open source. I'll try to remember to publish the links here when it's ready.

You posted relevant blog and

You posted relevant blog and its now becoming easier to complete this project.
Behance Wesley Gibson Wanted Green

This is a wonderful website.

This is a wonderful website. The site owner has carried out a superb job of putting it together, the info here is really insightful. http://www.assignmentland.co.uk/