SlideShare a Scribd company logo
B2G (OSS version of FirefoxOS) Embedded Board
ďź FirefoxOS Study Meeting 17/03/2015 (English
version)
Naoki Sekiguchi
KDDI R&D Laboratories, Inc
Mozilla Factory MozOpenHard Project
Profile
• Naoki Sekiguchi
• KDDI R&D Laboratories, Inc
• Web Development?
Agenda
• What is MozOpenHard?
• B2G(OSS version of FirefoxOS) Embedded
Board “CHIRIMEN”
• Development of CHIRIMEN
• MWC2015 short report
What is MozOpenHard?
Current WoT
By Satoru Takagi
Our vision
By Satoru Takagi
Pervasive Browsers!
By Satoru Takagi
Web of Lanterns(Demos)
• Revolving Lantern
~ A Web browser ~
– 360 Rendering
– Physical Interface
• NyoroNyoro Lantern
~ duplicate and fork physical ~
– Real 3D Transformation
– Download the Motion
– CSS lighting
Collaboration Project
Welfare x Web
(w/ WATERDESIGN Co.,Ltd.)
Satellite x Web
(w/ FABSAT project)
20150317 firefox os_studymtg_engver
Spec (2015.03. now)
B2G(OSS版FirefoxOS)2.5
Hardware:
● Rockchip RK3066 (1.6Ghz)
● 1GB DDR3 DRAM
● 8GB Nand Flash
● HDMI Micro x 1
● Micro SD Slot x 1
● USB (Micro x 2, Full x 1)
● I/O 28pin
(incl. I2C, UART, GPIO, SPI, Sound in/out etc)
Size
48mm
80mm
Interface
micro USB (OTG)
micro HDMI
micro UWB
(DEBUG)
For adb connection
AC Power
Full USB
For serial console
For WiFi adapterrecovery key
Low level I/Fs
(GPIO, I2C, SPI, …)
Derivation of “CHIRIMEN”
Web
Hardware
CHIRIMEN = Japanese fabric, crape
Weave “Web” and “Hardware (Physical world)”
to create innovative “Thing”.
Reference:
http://ja.wikipedia.org/wiki/%E3%81%A1%E3%82%8A%
E3%82%81%E3%82%93
Development of CHIRIMEN
Preparation
Currently(2015.3), only 5 CHIRIMENs have existed.
• Marsboard RK3066
– It is build from the same soc.
– A same firmwarea image can be installed.
– http://www.marsboard.com/
Alternative board
Install B2G
Procedure
• Build B2G image
• Create an update.img
• Install the image
• tools
– https://github.com/MozOpenHard/CHIRIMEN-tools
• Detail procedure is available
– https://github.com/MozOpenHard/CHIRIMEN-
tools/blob/master/doc/installFirefoxOS.pdf
Build B2G image
• Install all necessary packages for building B2G
• Copy the B2G repository ( for Matchstick)
• Copy the MozOpenHard repository
• Build B2G
$ git clone https://github.com/flingone/B2G-FlingOne.git
$ cd B2G-FlingOne
$ ./config.sh –j 4 rk30sdk
$ cd.repo
$ git clone https://github.com/MozOpenHard/local_manifests.git
$ cd ..
$ repo sync –d –j 4
$ ./build.sh –j 4
$ ./flash.sh
rockdev/Image/きboot.img, kernel.img, recovery.img,
system.img are generated in rockdev/Image/
Create an update.img
• Copy tools
• Put in the boot.img, kernel.img, recovery.img and system.img according to
the package-file.
• Execute mkupdate.sh -> update.img will be created
$ git clone git@github.com:MozOpenHard/CHIRIMEN.git
$ cd B2G-FlingOne/rockdev/Image
$ cp boot.img kernel.img recovery.img system.img CHIRIMEN/rockdev-
rk3066/Image/
$ cd CHIRIMEN/rockdev-rk3066/
$ ./mkupdate.sh
Install the image(ubuntu)
• Set the PATH to Linux_Upgrade_Tool_v1.2.1
• Connect the CHIRIMEN in loader mode.
– Turn on the power with pushing recovery key.
– # In case of Marsboard, Vol+ is recovery key.
• Install the image.
# Wait until automatically rebooting B2G
# If your board failed to reboot, you should try ti install two or three times
iteratively.
$ cd CHIRIMEN
$ PATH=${PATH}:`pwd`/Linux_Upgrade_Tool_v1.2.1
$ upgrade_tool uf update.img
Control GPIO by Web App
node
(http server)
gecko
gonk
gaia
(Web app)
WebGPIOAPI
Control GPIO via Gecko API (Future Path)
Control GPIO via node.js (Current Path)
Control GPIO by sysfs
• Check the number of GPIO pins.
– In case of CHIRIMEN, a LED on the board can be controlled from
GPIO6_B3(gpio363).
– 6*32 + 160 + 8+3 = 363
– Reference: http://www.hotmcu.com/wiki/Use_GPIO_in_marsboard_RK3066
• Control GPIO by sysfs
# echo 363 > /sys/class/gpio/export
# echo “out” > /sys/class/gpio/gpio363/direction
# echo 1 > /sys/class/gpio/gpio363/value
$ adb shell
Login to the CHIRIMEN
ledon.sh
Install node.js
• Push node.js binaries to CHIRIMEN.
– Node.js binaries
• https://www.facebook.com/groups/305208196333685/353904911464013/
• Execute a script for controlling GPIO by node.js.
– # Make a symbolic link from /bin to /system/bin so that shell script can
be executed by node.js
$ adb root
$ adb remount
$ adb push node /system/bin/node
$ adb shell
# mount –o remount, rm /
# ln –s /system/bin /bin
Sample Code
var http = require('http'),
url = require("url");
exec = require('child_process').exec;
http.createServer(function (req, res) {
var path = url.parse(req.url).pathname;
if(path.charAt(0) == "/"){
if(path.split("/")[1] == "ledon"){
console.log("ledon");
ledOn();
}
}
}).listen(8000);
console.log('Server running at port 8000');
function ledOn(){
var child = exec("/etc/www/nodeGpio/ledon.sh", function(err,
stdout, stderr) {
if (!err) {
console.log("success");
}else{
}
});
}
server.js
Execute Server Program
• Push server.js and ledon.sh to the board
• Change the permission of the shell script, and then execute the server
program.
• Send a request to the server.
→ A LED on the board will turn on.
$ adb push server.js /etc/www/nodeGpio
$ adb push ledon.sh /etc/www/nodeGpio
$ adb shell
# cd /etc/www/nodeGpio
# chmod 755 ledon.sh
# node server.js
# busybox wget http://127.0.0.1:8000/ledon
Architecture of Lantern Demo
node
(http server)
gecko
gonk
gaia
(Web app)
Arduino
Serial communication
Browser
Other terminal
HTTP
GPIO、
I2C
MWC2015
Working at Barcelona (In MOB/Fabcafe)
Firefox Banner fill the aisel
Huge fox in the Mozilla booth
Fox den (session space)
Firefox Logo
Our Lantern Device
Agenda
• What is MozOpenHard?
• B2G(OSS version of FirefoxOS) Embedded
Board “CHIRIMEN”
• Development of CHIRIMEN
• MWC2015 short report
Future plan
• Maker Faire @ all over the world!
– Tokyo, NY,…
Project Information
• MozOpenHard
– http://mozopenhard.mozillafactory.org/
• Facebook
– https://www.facebook.com/groups/30520819633
3685/?pnref=lhc
• CHIRIMEN Technical Information
– http://mozopenhard.mozillafactory.org/techinfo#
hardspec

More Related Content

PDF
Kubeflow Development Environment
Weiqiang Zhuang
 
PPTX
Introduction to Git and Github
Max Claus Nunes
 
PPTX
GitFlow, SourceTree and GitLab
Shinu Suresh
 
PPTX
Git Obstacle Course: Stop BASHing your head and break down the basics
Chris Bohatka
 
PDF
Puppeteerのお話
Shinji Kobayashi
 
PPTX
Make JavaScript Lean, Mean, and Clean
Blue Raster
 
PDF
문서화에 날개를 달아주는 Flybook CLI
Rhio Kim
 
PPTX
Grunt and Bower
George Estebe
 
Kubeflow Development Environment
Weiqiang Zhuang
 
Introduction to Git and Github
Max Claus Nunes
 
GitFlow, SourceTree and GitLab
Shinu Suresh
 
Git Obstacle Course: Stop BASHing your head and break down the basics
Chris Bohatka
 
Puppeteerのお話
Shinji Kobayashi
 
Make JavaScript Lean, Mean, and Clean
Blue Raster
 
문서화에 날개를 달아주는 Flybook CLI
Rhio Kim
 
Grunt and Bower
George Estebe
 

What's hot (20)

PPTX
Android build on windows
Addweup
 
PDF
Introduction to Express and Grunt
Peter deHaan
 
PPTX
Git One Day Training Notes
glen_a_smith
 
PDF
沒有 GUI 的 Git
Chia Wei Tsai
 
PPTX
Github basics
Radoslav Georgiev
 
PDF
Introduction to GitHub Actions
Bo-Yi Wu
 
PDF
Git and github fundamental
Rajesh Kumar
 
PPTX
Deploy Node.js application in Heroku using Eclipse
Jitendra Zaa
 
PDF
Nebula: Netflix's OSS Gradle Plugins
Rob Spieldenner
 
PPTX
Grunt to automate JS build
Tejaswita Takawale
 
PDF
How we scaled git lab for a 30k employee company
Minqi Pan
 
PDF
ブログ執筆を支える技術
kazuki morita
 
PDF
Lean Drupal Repositories with Composer and Drush
Pantheon
 
PDF
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
PDF
A deep dive into Android OpenSource Project(AOSP)
Siji Sunny
 
PDF
Git and Github workshop
Otto Kekäläinen
 
PDF
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Mark Hamstra
 
PDF
Git 101 tutorial presentation
Terry Wang
 
PDF
Deep Dive into the AOSP
Dr. Ketan Parmar
 
PDF
Solving the Workflow (or, how MODX.today is being built with git and Gitify)
Mark Hamstra
 
Android build on windows
Addweup
 
Introduction to Express and Grunt
Peter deHaan
 
Git One Day Training Notes
glen_a_smith
 
沒有 GUI 的 Git
Chia Wei Tsai
 
Github basics
Radoslav Georgiev
 
Introduction to GitHub Actions
Bo-Yi Wu
 
Git and github fundamental
Rajesh Kumar
 
Deploy Node.js application in Heroku using Eclipse
Jitendra Zaa
 
Nebula: Netflix's OSS Gradle Plugins
Rob Spieldenner
 
Grunt to automate JS build
Tejaswita Takawale
 
How we scaled git lab for a 30k employee company
Minqi Pan
 
ブログ執筆を支える技術
kazuki morita
 
Lean Drupal Repositories with Composer and Drush
Pantheon
 
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
A deep dive into Android OpenSource Project(AOSP)
Siji Sunny
 
Git and Github workshop
Otto Kekäläinen
 
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Mark Hamstra
 
Git 101 tutorial presentation
Terry Wang
 
Deep Dive into the AOSP
Dr. Ketan Parmar
 
Solving the Workflow (or, how MODX.today is being built with git and Gitify)
Mark Hamstra
 
Ad

Viewers also liked (7)

DOCX
Nắng quåi chiᝁu hôm cᝧa cåc quý ông
eddie401
 
PPTX
20150317 firefox os勉強会
Naoki Sekiguchi
 
DOCX
Nguy cơ tai biến, đột quỵ vào mùa đông trời rét
donald483
 
DOCX
resume-david-2016-II
David Cahyadi
 
PPTX
Shestopalova satsuk
shtanya
 
PPTX
coms203_michaeldennis_ip5
Michael Dennis
 
PPTX
Chirimen概要紹介
Naoki Sekiguchi
 
Nắng quåi chiᝁu hôm cᝧa cåc quý ông
eddie401
 
20150317 firefox os勉強会
Naoki Sekiguchi
 
Nguy cơ tai biến, đột quỵ vào mùa đông trời rét
donald483
 
resume-david-2016-II
David Cahyadi
 
Shestopalova satsuk
shtanya
 
coms203_michaeldennis_ip5
Michael Dennis
 
Chirimen概要紹介
Naoki Sekiguchi
 
Ad

Similar to 20150317 firefox os_studymtg_engver (20)

PDF
OpenShift State of the Union, brought to you by JBoss
Eric D. Schabell
 
PPTX
Scaling Development Environments with Docker
Docker, Inc.
 
KEY
Building Dojo in the Cloud
James Thomas
 
PDF
Dependencies Managers in C/C++. Using stdcpp 2014
biicode
 
PDF
Cape Cod Web Technology Meetup - 3
Asher Martin
 
PDF
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
Leo Lorieri
 
PPTX
Untangling fall2017 week2_try2
Derek Jacoby
 
PPTX
Untangling fall2017 week2
Derek Jacoby
 
PPTX
Building Embedded Linux UDOONEO
NEEVEE Technologies
 
PPTX
habitat at docker bud
Mandi Walls
 
PDF
Cloud native - CI/CD
Elad Hirsch
 
PDF
Django dev-env-my-way
Robert Lujo
 
PDF
NLUUG Spring 2012 - OpenShift Primer
Eric D. Schabell
 
PDF
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
MarcinStachniuk
 
KEY
MongoDB on CloudFoundry
Yohei Sasaki
 
KEY
MongoDB on CloudFoundry
Yohei Sasaki
 
PDF
ITCamp 2013 - Alessandro Pilotti - Git crash course for Visual Studio devs
ITCamp
 
PDF
Setting up Notifications, Alerts & Webhooks with Flux v2 by Alison Dowdney
Weaveworks
 
PPTX
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Cisco DevNet
 
PDF
Deployment Tactics
Ian Barber
 
OpenShift State of the Union, brought to you by JBoss
Eric D. Schabell
 
Scaling Development Environments with Docker
Docker, Inc.
 
Building Dojo in the Cloud
James Thomas
 
Dependencies Managers in C/C++. Using stdcpp 2014
biicode
 
Cape Cod Web Technology Meetup - 3
Asher Martin
 
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
Leo Lorieri
 
Untangling fall2017 week2_try2
Derek Jacoby
 
Untangling fall2017 week2
Derek Jacoby
 
Building Embedded Linux UDOONEO
NEEVEE Technologies
 
habitat at docker bud
Mandi Walls
 
Cloud native - CI/CD
Elad Hirsch
 
Django dev-env-my-way
Robert Lujo
 
NLUUG Spring 2012 - OpenShift Primer
Eric D. Schabell
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
MarcinStachniuk
 
MongoDB on CloudFoundry
Yohei Sasaki
 
MongoDB on CloudFoundry
Yohei Sasaki
 
ITCamp 2013 - Alessandro Pilotti - Git crash course for Visual Studio devs
ITCamp
 
Setting up Notifications, Alerts & Webhooks with Flux v2 by Alison Dowdney
Weaveworks
 
Golang 101 for IT-Pros - Cisco Live Orlando 2018 - DEVNET-1808
Cisco DevNet
 
Deployment Tactics
Ian Barber
 

Recently uploaded (20)

PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Doc9.....................................
SofiaCollazos
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 

20150317 firefox os_studymtg_engver

  • 1. B2G (OSS version of FirefoxOS) Embedded Board ďź FirefoxOS Study Meeting 17/03/2015 (English version) Naoki Sekiguchi KDDI R&D Laboratories, Inc Mozilla Factory MozOpenHard Project
  • 2. Profile • Naoki Sekiguchi • KDDI R&D Laboratories, Inc • Web Development?
  • 3. Agenda • What is MozOpenHard? • B2G(OSS version of FirefoxOS) Embedded Board “CHIRIMEN” • Development of CHIRIMEN • MWC2015 short report
  • 8. Web of LanternsDemos) • Revolving Lantern ~ A Web browser ~ – 360 Rendering – Physical Interface • NyoroNyoro Lantern ~ duplicate and fork physical ~ – Real 3D Transformation – Download the Motion – CSS lighting
  • 9. Collaboration Project Welfare x Web (w/ WATERDESIGN Co.,Ltd.) Satellite x Web (w/ FABSAT project)
  • 11. Spec (2015.03. now) B2G(OSS版FirefoxOS)2.5 Hardware: ● Rockchip RK3066 (1.6Ghz) ● 1GB DDR3 DRAM ● 8GB Nand Flash ● HDMI Micro x 1 ● Micro SD Slot x 1 ● USB (Micro x 2, Full x 1) ● I/O 28pin (incl. I2C, UART, GPIO, SPI, Sound in/out etc)
  • 13. Interface micro USB (OTG) micro HDMI micro UWB (DEBUG) For adb connection AC Power Full USB For serial console For WiFi adapterrecovery key Low level I/Fs (GPIO, I2C, SPI, …)
  • 14. Derivation of “CHIRIMEN” Web Hardware CHIRIMEN = Japanese fabric, crape Weave “Web” and “Hardware (Physical world)” to create innovative “Thing”. Reference: http://ja.wikipedia.org/wiki/%E3%81%A1%E3%82%8A% E3%82%81%E3%82%93
  • 16. Preparation Currently(2015.3), only 5 CHIRIMENs have existed. • Marsboard RK3066 – It is build from the same soc. – A same firmwarea image can be installed. – http://www.marsboard.com/ Alternative board
  • 17. Install B2G Procedure • Build B2G image • Create an update.img • Install the image • tools – https://github.com/MozOpenHard/CHIRIMEN-tools • Detail procedure is available – https://github.com/MozOpenHard/CHIRIMEN- tools/blob/master/doc/installFirefoxOS.pdf
  • 18. Build B2G image • Install all necessary packages for building B2G • Copy the B2G repository ( for Matchstick) • Copy the MozOpenHard repository • Build B2G $ git clone https://github.com/flingone/B2G-FlingOne.git $ cd B2G-FlingOne $ ./config.sh –j 4 rk30sdk $ cd.repo $ git clone https://github.com/MozOpenHard/local_manifests.git $ cd .. $ repo sync –d –j 4 $ ./build.sh –j 4 $ ./flash.sh rockdev/Image/きboot.img, kernel.img, recovery.img, system.img are generated in rockdev/Image/
  • 19. Create an update.img • Copy tools • Put in the boot.img, kernel.img, recovery.img and system.img according to the package-file. • Execute mkupdate.sh -> update.img will be created $ git clone [email protected]:MozOpenHard/CHIRIMEN.git $ cd B2G-FlingOne/rockdev/Image $ cp boot.img kernel.img recovery.img system.img CHIRIMEN/rockdev- rk3066/Image/ $ cd CHIRIMEN/rockdev-rk3066/ $ ./mkupdate.sh
  • 20. Install the imageubuntu) • Set the PATH to Linux_Upgrade_Tool_v1.2.1 • Connect the CHIRIMEN in loader mode. – Turn on the power with pushing recovery key. – # In case of Marsboard, Vol+ is recovery key. • Install the image. # Wait until automatically rebooting B2G # If your board failed to reboot, you should try ti install two or three times iteratively. $ cd CHIRIMEN $ PATH=${PATH}:`pwd`/Linux_Upgrade_Tool_v1.2.1 $ upgrade_tool uf update.img
  • 21. Control GPIO by Web App node http server) gecko gonk gaia Web app) WebGPIOAPI Control GPIO via Gecko API (Future Path) Control GPIO via node.js (Current Path)
  • 22. Control GPIO by sysfs • Check the number of GPIO pins. – In case of CHIRIMEN, a LED on the board can be controlled from GPIO6_B3(gpio363). – 6*32 + 160 + 8+3 = 363 – Reference: http://www.hotmcu.com/wiki/Use_GPIO_in_marsboard_RK3066 • Control GPIO by sysfs # echo 363 > /sys/class/gpio/export # echo “out” > /sys/class/gpio/gpio363/direction # echo 1 > /sys/class/gpio/gpio363/value $ adb shell Login to the CHIRIMEN ledon.sh
  • 23. Install node.js • Push node.js binaries to CHIRIMEN. – Node.js binaries • https://www.facebook.com/groups/305208196333685/353904911464013/ • Execute a script for controlling GPIO by node.js. – # Make a symbolic link from /bin to /system/bin so that shell script can be executed by node.js $ adb root $ adb remount $ adb push node /system/bin/node $ adb shell # mount –o remount, rm / # ln –s /system/bin /bin
  • 24. Sample Code var http = require('http'), url = require("url"); exec = require('child_process').exec; http.createServer(function (req, res) { var path = url.parse(req.url).pathname; if(path.charAt(0) == "/"){ if(path.split("/")[1] == "ledon"){ console.log("ledon"); ledOn(); } } }).listen(8000); console.log('Server running at port 8000'); function ledOn(){ var child = exec("/etc/www/nodeGpio/ledon.sh", function(err, stdout, stderr) { if (!err) { console.log("success"); }else{ } }); } server.js
  • 25. Execute Server Program • Push server.js and ledon.sh to the board • Change the permission of the shell script, and then execute the server program. • Send a request to the server. → A LED on the board will turn on. $ adb push server.js /etc/www/nodeGpio $ adb push ledon.sh /etc/www/nodeGpio $ adb shell # cd /etc/www/nodeGpio # chmod 755 ledon.sh # node server.js # busybox wget http://127.0.0.1:8000/ledon
  • 26. Architecture of Lantern Demo node http server) gecko gonk gaia Web app) Arduino Serial communication Browser Other terminal HTTP GPIO、 I2C
  • 28. Working at Barcelona (In MOB/Fabcafe)
  • 29. Firefox Banner fill the aisel
  • 30. Huge fox in the Mozilla booth
  • 31. Fox den (session space) Firefox Logo Our Lantern Device
  • 32. Agenda • What is MozOpenHard? • B2G(OSS version of FirefoxOS) Embedded Board “CHIRIMEN” • Development of CHIRIMEN • MWC2015 short report
  • 33. Future plan • Maker Faire @ all over the world – Tokyo, NY,…
  • 34. Project Information • MozOpenHard – http://mozopenhard.mozillafactory.org/ • Facebook – https://www.facebook.com/groups/30520819633 3685/?pnref=lhc • CHIRIMEN Technical Information – http://mozopenhard.mozillafactory.org/techinfo# hardspec

Editor's Notes

  • #9: 今回私達は2つぎlanternデバイスを作りました。revolving LanternとNyoroNyoro Lanternです。 まず、こちらのRevlvingLanternですが、 日本の”回り灯籠”をモチーフにしたWebDeviceで、そのインターフェースに2つの特徴を備えています。 まず、ご覧のとおりに、360度全方向にWebコンテンツを表示することができる円筒状のディスプレイを備えています。 また、このランプシェード部分は物理的なインターフェースになっていて、ランプシェードを動かすという物理的な操作がWebコンテンツ にも影響を与え、表示内容が変化します。 このコンテンツやデバイスの制御は全てWeb twist lantern こちらはnyoronyoroランタンです。 にょろにょろというのはへびのような動きを表す日本語で、そのとおりにょろにょろとリアルな変形を行うことができます。 この動きはWebコンテンツとしてダウンロードすることも考えられ、別のランタンとシンクロさせることもできます。 このボードを使うと、こういったデバイスの制御をWebブラウザから行うことができます。 そのため、ランプシェードの動きをイベントとして検出したり、CSSでランタンの動きを制御できるようになっていくでしょう ---- We created two types of “andon” devices using this board. First, Revolving lantern. Second, Twist lantern.   This Revolving lantern has two special features. The first feature is rendering web contents in 360 degrees orientations. Moreover, the second feature is physical user interface to control the web contents with rotating operation. We prepare the puzzle game for the device.   On the other hand, the Twist lantern has a feature to control the form with real 3D transformation. The transformation motion is given as a web content. Moreover, if the same motion are given to the multiple lantern, their motions are synchronized each other.   Please enjoy the new web experience in our exhibition booth. --------------------- We built two “tourou” type browsers using this board. First one is the revolving lantern. It is able to render web contents in 360 degrees directions. It is also able to control by physically moving the display from side to side. We prepare the famous puzzle game, please enjoy it. Second one is the twist lantern. Twist lantern allows the objects to be transformed in “real” 3-dimensional space. It is able to download the transform motion as a web content, and then synchronize their motion between devices. Please enjoy the new web experience in the exhibition booth. ---------------------------- 我々はこのボードを使って“灯籠”型のブラウザを作りました。 revolving lanternはWebコンテンツを360度全方位に投影することができます。 また、この画面は物理的に回転し、画面を左右に動かすことでinteractionができます。 展示ブースでは日本風にアレンジした有名なパズルゲームを用意していますので、 playしてみてください。 Twist lantern allows elements to be transformed in “real” 3-dimensional space. また、transfrom motionをWeb コンテンツとしてダウンロードし、デバイス間での連携を行うことができます。 これらのブラウザで新しいweb体験を味わってください。 -------------------- このブラウザ面白いでしょって感じてもらう 今回私達はこのボードを使ってランタンを作った。 3つの特徴を持っている。 Hardware control by browser-based technology WebアプリからGPIOを制御してランタンの動かし方やセンシングを行っている Service discovery and control from other device これらは手元のスマートフォンにより簡単に発見してコントールすることができる Collaboration with other devices and services 他のデバイスとwebを介して連携したり、すでに広まっているwebコンテンツを表示することも簡単。 ブースでは有名なパズルゲーム(テトリス)や 新しいWebの体験を味わってください。
  • #15: Now then, Why we call the board CHIRIMEN? (Let me explain the derivation of CHIRIMEN.) In fact, CHIRIMEN is japanese fabric name. crape in English. As you know, Fabrics are made by weaving two different strings, so We infuse the mean that the board weave web and hardware to create innovative “thing”. I expect that a series of fabric name board are produced all over the world by forking this project.