Fxos on RaspberryPi

From MozillaWiki
Jump to: navigation, search
Fxpi.png

Firefox OS is now on Raspberry Pi

We are looking to demonstrate that Firefox OS can be a viable and valuable operating system for a range of hardware, and for a wide variety of use cases that are being imagined for connected devices.

Our initial goal was to release a downloadable or flashable version of Firefox OS for Raspberry Pi boards in conjunction with the Mozilla Festival (October 24-26 2014), which we did. Now we're looking to extend the functionality and practicality.

How to Get Firefox OS onto Your Raspberry Pi device

Get started FxOS on rpi.png


1. Check out this outstanding how-to video from our good friends at Bunny & Boar [1]

2. To flash an early demo version of Firefox OS for your Raspberry Pi device, follow the Foxberry Pi Demo instructions.

3. To stay informed of the project's progress, please join the mailing list. Some developers hang out in the #raspberrypi channel on irc.mozilla.org and are happy to answer any questions you have.

4. To get involved in the main bring-up project (it needs your participation!), see Hacking b2g on Raspberry Pi.


What We'd Like To See Happen in 2015

Following MozFest, we are looking for the amazing ideas and physical applications that creative or practical people have developed on FxOS enabled Raspberry Pi platforms. More details to follow about a 2015 Challenge!

We are actively seeking - and would welcome - the development contributions that can extend FxOS functionality on Raspberry Pi devices to

  • be at parity with Raspbian/RPi as a hobbyist environment. Users will be able to read from sensors & control motors, LEDs, solenoids, slave boards, etc. A modified FxOS for Raspberry Pi will be able to fly a drone.
  • be competitive with other media player OSes available for RPi.
  • be competitive with other IDEs for FxOS on Raspberry Pi targeted at beginning programmers, like IDLE and Scratch.
  • enable programmers (via DOM/CSS) to develop robotics etc. by building a declarative model of a reactive system. With one type of output device, the actual electronics could be interfaced with. With another type of output device, the model could be simulated on a client computer.

2015 Development Sprints / Challenges for FxOS on Raspberry Pi (and other boards)

Development Sprint A

After this appendix, PiFxOS will be at parity with Raspbian/RPi as a hobbyist environment. Users will be able to read from sensors and control motors, LEDs, solenoids, slave boards, etc. PiFxOS will be able to fly a drone.)

  • develop web API for general-purpose analog/digital IO pins (GPIOs) bug 1087955
  • develop web API for SPI
  • develop web API for i2c (optional)
  • develop web API for RS-232 (optional)

Development Sprint B

After this appendix, the custom PiFxOS media player UI will be competitive with other media player OSes available for RPi.

  • develop custom UI for PiFxOS, media player, appliance

Development Sprint C

After this appendix, PiFxOS will be competitive with other PiFxOS IDEs targeted at beginning programmers, like IDLE and Scratch.

  • develop custom development environment UI for PiFxOS

Development Sprint D

After this appendix, DOM/CSS would enable programmers to develop robotics etc. by building a declarative model of a reactive system. With one type of output device, the actual electronics could be interfaced with. With another type of output device, the model could be simulated on a client computer. This is a very large and open-ended project. This is a research programming-languages project.

  • create a new CSS output class for micro electrical systems
  • create a new CSS output class for simulating micro electrical systems

flamebot is a reactive self-modifying hierarchical state machine for FxOS. The flamebot experiment might be useful in modeling something for RPi.

Platform projects

These are smaller-scale projects that require some gecko expertise in getting some cool new hardware or software working on the Raspberry Pi (or other boards).

Get touch events on PiTFT touchscreen working reliably/smoothly

Write a gonk camera HAL for RPi's camera

Get audio working

Investigate importing OpenH264 decoder backend

Start the switch to mesa/gallium upstream gfx stack

New API for low level file system access (think of interacting with the GPIO ports)