Posts Tagged ‘mozilla’
Orange Pi Development Boards

Geolocation on ESP8266 without GPS Module, only WiFi

October 3rd, 2017 8 comments

When I think about geolocation in I normally think about global navigation satellite systems such as GPS, GLONASS, Galileo, or Beidou, as well as IP geolocation, but the latter is highly inaccurate, and often only good for find out about the country, region, or city.

But if you’ve ever been into your phone location settings, you’d know GPS is only one option, as it can also leverage cellular base stations and WiFi SSIDs, where the former working where there’s coverage, and the later in area with a high enough density of access points. Somehow, I had never thought about using such technology to find location with WiFi modules until Espressif Systems released an application note entitled “Geolocating with ESP8266“.

This document describes how the ESP8266 module may be used to scan for nearby Wi-Fi access points and, then, use their SSID, RSSI and MAC address to obtain a potential fix on the device’s geolocation, using Google geolocation API.

That’s basically a two step process with an AT command returning the list of available APs, SSID, RSSI, and MAC Address:

and after setting up a secure SSL connection, you can then feed that data to Google Geolocation API to get the location with a command that looks like (wifiAccessPoint data not filled here):

Further research led me to m0xpd experimentation with Geolocation on ESP8266 last year, using both IP geolocation (found to be very inaccurate), and Google or Mozilla APIs, and posted his Arduino source code on Github. The Google API found his actual home in Manchester with just the information retrieved from the list of access points.

That also means that unsecured devices on the public Internet can easily be located, as an hacker logins to a router or IoT device, he just needs to run a command to find out the information required by his preferred geolocation API.

KDDI Unveils Tiny BLE/Zigbee Development Board Running Mozilla Firefox OS

October 6th, 2014 3 comments

KDDI has recently announced Open Web Board, an HDMI TV stick powered by Rockchip RK3066, and running Firefox OS, just like the recently announced MatchStick. The board is however aimed at embedded and web developers who want to create apps for Firefox OS, and interface with external devices over Bluetooth Low Energy or Zigbee (optional module) communication, optionally using Gluin, a web based graphical “application development tool that enables simple linking programming between electronic devices”.

Open Web Board (Click to Enlarge)

Open Web Board (Click to Enlarge)

Open Web Board specifications:

  • SoC – Rockchip RK3066 dual core Cortex A9 processor @ 1.6 Ghz with Mali-400 MP4 GPU
  • System Memory – 1 GB RAM
  • Storage – 8 GB flash
  • Video Output – HDMI
  • USB – 1x USB 2.0 host port, 1x micro USB for power
  • Connectivity – 802.11 b/g/n Wi-Fi (AP6210 module), Bluetooth 2.1 (HFP/A2DP/AVRCP)/4.0 GATT. and optional Zigbee via external module
  • Dimensions – Small

This dongle runs Firefox OS 1.4. KDDI showcased the board at Mozilla Open Web Day in Tokyo yesterday (05/10/2014), with ToCoStick wireless (Zigbee?) dongle as shown in the picture above.

Screenshot of Gluin Graphical Development Tool

Screenshot of Gluin Graphical Development Tool

KDDI launched a developer website called “au Firefox OS Portal Site” (Japanese), although it appears mostly under constructions at this stage with limited information. I could not find price information, and it will probably only be available in Japan. However, somebody already ported MatchStick Firefox OS firmware to MK808. so you may be still be able to play with KDDI solution as long as they release the full source code, if you own another Rockchip RK3066 mini PC.

Via Liliputing and Mini PCs Community.

$18 Matchstick is an HDMI TV Stick Running Firefox OS (Crowdfunding)

October 1st, 2014 13 comments

A few month ago, a Firefox OS HDMI streaming stick (codenamed netcast) by Mozilla that would compete with Google Chromecast was previewed. It is now called Matchstick, based on Rockchip RK3066 and has just been launched on Kickstarter.

MatchStickMatchStick technical specifications:

  • SoC – Rockchip RK3066 dual core Cortex A9 processor @ 1.2 GHz with Mali-400 MP4 GPU
  • System Memory – 1GB DDR3 (micron)
  • Storage – 4 GB flash.  (FORSEE, NCEFES86 eMMC)
  • Video Output – HDMI
  • Connectivity – 802.11 b/g/n Wi-Fi (AP6181?), but the board supports other Wi-Fi modules include AP6210 and AP6330, and many people are asking for dual band Wi-Fi in comments, so maybe a stretch goal…
  • USB – 1x micro USB port for power
  • Power – 5V via micro USB port. TPS659102 PMIC.
  • Dimensions – 110 x 40 x 11 mm

The Firefox OS dongle will come with an HDMI extension Cable, a micro USB Cable, and a 5V power adapter. The company claims MatchStick is an open source hardware device, but the schematics are only available in PDF format, at least at this stage. The board is called netcast-RK3066 in the schematics. The software however will be completely open source, except the parts that can’t be.

Based on these hardware specs, MatchStick will be more like a Chromecast, than a fully-fledged Android TV stick. It will let you stream online videos and music from services like Netflix, Youtube, Hulu, Spotify, etc… installable from MatchStick appstore, and since the platform is open to developer, more so than Chromecast, more apps should come online over time. You’ll be able to control the stick from a PC using Firefox or Chrome (mirroring or streaming), as well as Android and iOS devices.

MatchStick/Sender/Cloud Software and Network Block Diagram

MatchStick/Sender/Cloud Software and Network Block Diagram

The company has almost reached it $100,000 funding target in less than a day. The first 500 units were available for $12, but they’ll all been taken away, and you can still get a MatchStick for $18, plus $5 shipping if you live outside of the US, with delivery scheduled for February 2015. If you are not a big fan of crowdfunding platforms, the device will retail for $25. If you are a developer, you can apply for one of the 250 units the company will sent for app development. More information can also be found on website, especially with regards to software development with the API details, and SDK download link.

Thanks to Appelboor for the tip.

Mozilla Working on $25 Firefox OS Smartphones With Spreadtrum SC6821 SoC

February 24th, 2014 5 comments

The cheapest Android smartphones cost about $50, and this price is still a barrier to entry to many, as about 46.4% of phones sold worldwide in 2013 were feature phones according to Gartner, which still corresponds to about 838 million units per year. Mozilla and Spreadtrum are currently working together to bring $25 smartphones to market, and that’s retail price, running Firefox OS and powered by the latest Spreadtrum SC6821 SoC.


$25 Firefox OS Smartphone – Source: Twitter

The $25 smartphone will come with 128 MB RAM, 256 MB NAND flash, and feature a 3.5″ HVGA touchscreen, built-in Wi-Fi and Bluetooth, FM radio, and run Firefox OS with HTML5 apps such as Twitter and Facebook, and access to a full web browser, according to Spreadtrum representatives. You would certainly not trade this phone with your existing Android phone, but if all you could afford until now was a feature phone, these upcoming ultra low cost Firefox OS smartphones could be appealing.

Spreatrum also put out a press release about their new SC6821 SoC with WCDMA support, but gave very little details, preferring to mention Mozilla partnership. I could not even find out if it is ARM based or not.

The $25 phone prototype is now being showcased in Mozilla booth at Mobile World Congress 2014.

Via EETimes

Building eLinks Text-based Web Browser with (Some Sort of) JavaScript Support

February 9th, 2014 9 comments

Yesterday, I’ve spend some time trying to find a text-based web browser with support for JavaScript. Although I doubt many people would need that, I’ll post my findings, and show how to build and enable Javascript in eLinks web browser to access the web from a terminal in Linux (Ubuntu/Debian). Bear in mind that the implementation is far from complete, and most pages won’t work, at least for now.

Initial research pointed me to three potential candidates: links2, w3m + w3m-js extension, and elinks. Links2 used to have JavaScript, but support was poor, so they decided to remove it. w3m-js is an experimental patch to add JavaScript to w3m, but the link is broken, so we are left with elinks.

If you just want a text based web-browser, and do not care about JavaScript, you can just install links2, w3m, or elinks with apt-get. The versions I’ve tried in Ubuntu 12.04 LTS, and 13.10 do not support JavaScript.

So I’ve had to build elinks development code. Elinks uses Mozilla SpiderMonkey JavaScript engine, so the first step is to install the development library, as well as pkg-config if it is not already installed on your system:

Now let’s download a tarball of the experimental code snapshot (Mine was on 20140208), extract the code and configure the build:

Now scroll up a bit, and make sure SpiderMonkey has been enabled in configure log:

In case it has not been enabled, check config.log to miss which library or package is missing.

Time to build and install elinks:

By default, JavaScript is not enabled. We’ll need to start elinks, press “Esc” twice to access to the top menu, and go to Setup->Options Manager. Expand ECMAScript menu, select Enable, and Edit to set the value to 1.

elinks_JavaScriptSelect Save to update the settings, and create a configuration file in ~/.elinks/elinks.conf. If you want to understand why some JavaScript does not work, you may want to enable Script error reporting which will pop a window for each JavaScript error.

I’ve tried it by running elinks, but the page just says JavaScript is not supported. Other pages with JavaScript will have errors due to missing features, so it may only be usable in few cases.

If you want elinks to be the default text-based browser (www-browser), you may have to remove elinks package (apt-get remove elinks), and add it back to alternatives:

Now make sure it selected by default:

You can also set the default Desktop browser (Chromium, Firefox..) using the command line by replacing www-browser, by x-www-browser.

VIA APC Rock and Paper Boards Now Officially Support Firefox OS

January 6th, 2014 2 comments

VIA has just announced a partnership with Mozilla for support and development of Firefox OS for APC Rock and APC Paper platforms based on WonderMedia WM8950 single core ARM Cortex A9 SoC.


$59 APC Rock Now Runs Firefox OS

Firefox OS source code and documentation for the APC boards are available on the company’s apc-firefox-os github repository. To motivate the developer’s community, the company is also offering free APCs to developers that fix specific bugs.

A first version was released on the 22nd of November 2013, with the following fixes:

  1. Updated firmware package to support HDMI hotplug as the solution from VIA
  2. Switched to latest base from Mozilla and using master branch for all Mozilla repos
  3. Support multiple hardware keyboard hot plug
  4. Fixed so that Mozilla soft home button can be enabled via settings
  5. Supports Ethernet cable hot plug
  6. Enabled SNTP with Ethernet network
  7. Set default display timeout to never
  8. Fixed some orientation bug due to migration to master
  9. Fixed WiFi connection bug due to migration to master
  10. Supports Mouse wheel event

But I can’t find a way to download this version via a tarball, a branch, or tag on github, nevertheless it’s probably better to use the latest code as several commits have been done since that release, although there appears to have been no activity in the last three weeks.

Mozilla Unveils Firefox OS Developer Preview Phones

January 22nd, 2013 No comments

Mozilla has just announced an entry level developer phone for Firefox OS based on a Qualcomm Snapdragon S1 processor, 512 MB RAM, and 4GB Flash. You may think the specs are quite poor, but this actually makes sense since Firefox OS is initially destined at emerging markets.


Here are the full specifications of  this smartphone (Codenamed Keon):

  • CPU – Qualcomm Snapdragon S1 1Ghz
  • System Memory – 512 MB RAM
  • Storage – 4GB Flash + microSD slot
  • Display – 3.5″ HVGA Multitouch
  • Network – UMTS 2100/1900/900 (3G HSPA), GSM 850/900/1800/1900 (2G EDGE)
  • Camera – 3 MP rear camera
  • Misc – Wifi N, Light and proxmity Sensor, G-Sensor, GPS, MicroUSB
  • Battery – 1580 mAh

The phone supports over the air updates, and comes unlocked, so you can simply add your own SIM card. These developer phones are being developed by Geeksphone in partnership with Telefonica.

If you don’t have the developer phone yet, you can still get started by running Firefox OS Simulator in your desktop web browser, or install Firefox OS on your own Android 4.0 or greater smartphone.

A faster smartphone is also in the work as Liliputing also reports that:

Geeksphone says there’s also a second model called the Peak which will feature a 4.3 inch, 960 x 540 pixel display, a more powerful 1.2 GHz Qualcomm Snapdragon S4 dual-core processor, an 8MB rear camera, 512MB of RAM, and an 1800 mAh battery.

Both Keon and Peak preview phones should be available to developers from February. Mozilla also announced Firefox OS App Days that take place in over 20 locations around the world to promote the platform and help developers getting started with Firefox OS.

B2G (Boot to Gecko) Video Demo at MWC 2012

March 1st, 2012 No comments

B2G (Boot to Gecko) is an open source HTML5-based operating system targeting mobile devices by the Mozilla Foundation. This OS runs on top of Linux and uses Firefox as the web browser. You can get further details on my previous post “Mozilla Boot to Gecko (B2G) OS Is Coming to Your Smartphone“.

Mozilla Mobile Operating System User Interface

B2G Gaia User Interface (Home Screen)

As previously announced, Mozilla showcased B2G on a Samsung Galaxy S2 at Mobile World Congress 2012. Every apps are written in HTML5 including the camera application that uses HTML5 Media Capture and Canvas for real-time effects. Engadget was there and shot the video demo below.

If you have a Samsung Galaxy S2, you can build and try it on your device. This is experimental, so there is always the risk of bricking your phone.