mozilla

Revision 349675 of Introduction to Firefox OS

  • Revision slug: Mozilla/Firefox_OS/Introduction
  • Revision title: Introduction to Firefox OS
  • Revision id: 349675
  • Created:
  • Creator: ethertank
  • Is current revision? No
  • Comment

Revision Content

Firefox OS (also referred to by its codename "Boot to Gecko" or "B2G") is Mozilla's open source mobile operating system based on Linux and Mozilla's Gecko technology. Firefox OS is a mobile operating system that's free from proprietary technology while still a powerful platform that provides application developers an opportunity to create excellent products. In addition, it's flexible and capable enough to make the end user happy.

For Web developers, the most important part to understand is that the entire user interface is a Web app, one that is capable of displaying and launching other Web apps. Any modifications you make to the user interface and any applications you create to run on Firefox OS are Web pages, albeit with enhanced access to the mobile device's hardware and services.

You can learn how to build and install Firefox OS by following our handy guide.

Hardware requirements

It should be possible to port Firefox OS to most recent ARM-based mobile devices. This section covers the basic hardware requirements as well as the recommended hardware features.

Component Minimum Recommended
CPU ARMv6 Cortex A5 class or better
ARMv7a with NEON
GPU Adreno 200 class or better
Connectivity WiFi
3G
Sensors Accelerometer
Proximity
Ambient light
A-GPS

It's also suggested that the device offer a uniform color profile (which would be implemented by the graphics device driver) and headphone support for mute/unmute and stop/play. These are features common among modern smartphones.

Usage tips

This section provides some tips that will help you actually use Firefox OS. This is something of a placeholder until we have real usage documentation.

Unlocking the phone

If your build of Firefox OS starts up asking for a pass code to unlock the device, the default code is 0000. Some builds will do this while we develop and test the lock screen.

Capturing a screenshot

Capturing a screenshot is as simple as pressing the power and home buttons at the same time. The screenshot image will be in /sdcard/screenshots on your device.

If for some reason that doesn't work, you can also do it from the terminal on the Linux or Mac OS X computer that has a Firefox OS build system installed.

  1. Make sure you have ffmpeg installed.
    1. On Mac, if you use MacPorts, you can do this with sudo port install ffmpeg. For homebrew, do brew install ffmpeg.
    2. On Linux (Ubuntu/Debian), use sudo apt-get install ffmpeg.
  2. Connect your phone to the computer using a USB cable.
  3. Navigate your phone into whatever situation you want to screenshot.
  4. cd into the B2G/gaia directory
  5. make screenshot
  6. You now have a screenshot called screenshot.png.

Buttons and controls

A typical Firefox OS device has a small number of physical hardware buttons:

Home button
This button is generally centered below the screen. Pressing it will return you to the app launcher. Holding it down opens the card switching view; swiping up on an app in that view will terminate it.
Volume control rocker
Along the left side is the volume rocker; pressing the top half of the rocker increases the audio volume and pressing the bottom half decreases the volume.
Power button
The power button is at the top right corner of the device.

Revision Source

<p><strong>Firefox OS</strong> (also referred to by its codename "Boot to Gecko" or "B2G") is Mozilla's open source mobile operating system based on Linux and Mozilla's Gecko technology. Firefox OS is a mobile operating system that's free from proprietary technology while still a powerful platform that provides application developers an opportunity to create excellent products. In addition, it's flexible and capable enough to make the end user happy.</p>
<p>For Web developers, the most important part to understand is that the entire user interface is a Web app, one that is capable of displaying and launching other Web apps. Any modifications you make to the user interface and any applications you create to run on Firefox OS are Web pages, albeit with enhanced access to the mobile device's hardware and services.</p>
<p>You can learn how to build and install Firefox OS by <a href="/en/Mozilla/Boot_to_Gecko/Building_and_installing_Boot_to_Gecko" title="en/Mozilla/Boot_to_Gecko/Building_and_installing_Boot_to_Gecko">following our handy guide</a>.</p>
<h2 id="Hardware_requirements">Hardware requirements</h2>
<p>It should be possible to port Firefox OS to most recent ARM-based mobile devices. This section covers the basic hardware requirements as well as the recommended hardware features.</p>
<table>
  <thead>
    <tr>
      <th scope="col">Component</th>
      <th scope="col">Minimum</th>
      <th scope="col">Recommended</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th scope="row">CPU</th>
      <td>ARMv6</td>
      <td>Cortex A5 class or better<br />
        ARMv7a with NEON</td>
    </tr>
    <tr>
      <th scope="row">GPU</th>
      <td>—</td>
      <td>Adreno 200 class or better</td>
    </tr>
    <tr>
      <th scope="row">Connectivity</th>
      <td>—</td>
      <td>WiFi<br />
        3G</td>
    </tr>
    <tr>
      <th scope="row">Sensors</th>
      <td>—</td>
      <td>Accelerometer<br />
        Proximity<br />
        Ambient light<br />
        A-GPS</td>
    </tr>
  </tbody>
</table>
<p>It's also suggested that the device offer a uniform color profile (which would be implemented by the graphics device driver) and headphone support for mute/unmute and stop/play. These are features common among modern smartphones.</p>
<h2 id="Usage_tips">Usage tips</h2>
<p>This section provides some tips that will help you actually use Firefox OS. This is something of a placeholder until we have real usage documentation.</p>
<h3 id="Unlocking_the_phone">Unlocking the phone</h3>
<p>If your build of Firefox OS starts up asking for a pass code to unlock the device, the default code is 0000. Some builds will do this while we develop and test the lock screen.</p>
<h3 id="Capturing_a_screenshot">Capturing a screenshot</h3>
<p>Capturing a screenshot is as simple as pressing the power and home buttons at the same time. The screenshot image will be in <code>/sdcard/screenshots</code> on your device.</p>
<p>If for some reason that doesn't work, you can also do it from the terminal on the Linux or Mac OS X computer that has a Firefox OS build system installed.</p>
<ol>
  <li>Make sure you have ffmpeg installed.
    <ol>
      <li>On Mac, if you use MacPorts, you can do this with <code>sudo port install ffmpeg</code>. For homebrew, do <code>brew install ffmpeg</code>.</li>
      <li>On Linux (Ubuntu/Debian), use&nbsp;<code>sudo apt-get install ffmpeg</code>.</li>
    </ol>
  </li>
  <li>Connect your phone to the computer using a USB cable.</li>
  <li>Navigate your phone into whatever situation you want to screenshot.</li>
  <li><code>cd</code> into the <code>B2G/gaia</code> directory</li>
  <li><code>make screenshot</code></li>
  <li>You now have a screenshot called <code>screenshot.png</code>.</li>
</ol>
<h3 id="Buttons_and_controls">Buttons and controls</h3>
<p>A typical Firefox OS device has a small number of physical hardware buttons:</p>
<dl>
  <dt>
    Home button</dt>
  <dd>
    This button is generally centered below the screen. Pressing it will return you to the app launcher. Holding it down opens the card switching view; swiping up on an app in that view will terminate it.</dd>
  <dt>
    Volume control rocker</dt>
  <dd>
    Along the left side is the volume rocker; pressing the top half of the rocker increases the audio volume and pressing the bottom half decreases the volume.</dd>
  <dt>
    Power button</dt>
  <dd>
    The power button is at the top right corner of the device.</dd>
</dl>
Revert to this revision