Posts Tagged ‘open source’

$249 Jolla Tablet Runs Sailfish OS 2.0 on a Quad Core Intel Processor (Crowdfunding)

November 20th, 2014 No comments

After launching the Jolla phone last year,  Jolla has now unveiled the Jolla Tablet running the company’s Sailfish OS, and just like Nokia N1, powered by a quad core Intel processor. Instead of directly using a pre-order system like with the Jolla smartphone, they’ve decided to launch an Indiegogo campaign, and price the tablet much more aggressively than the phone, as perks started at just $189 for early backers.

Jolla_TabletJolla tablet specifications:

  • SoC – Unnamed Intel 64-bit quad core processor @ 1.8 GHz, which should be Z3740(D), Z3745(D) or Z3560 processor.
  • System Memory – 2GB DDR3L-RS
  • Storage – 32GB eMMC + micro SD slot up to 32GB
  • Display – 7.85″ IPS display, 2048 x 1536 resolution, 5-point capacitive touch
  • Camera – 5.0MP rear camera, 2.0MP front-facing camera
  • Audio – 3.5mm audio jack + speaker(s)?
  • Connectivity – Dual band 802.11 a/b/g/n Wi-Fi, GPS
  • Sensors – Accelerometer, light sensor, and proximity sensor.
  • Battery – 4,300 mAh
  • Dimensions – 203 x 137 x 8.3 mm
  • Weight – 384 grams

The tablet will run a new version of the open source operating systems simply called Sailfish OS 2.0, which adds “Ambiances” and “Events” that respectively allow you to easily personalize your tablet, and show all your messages, calendar events, and other info in a single view. Jolla also made a comparison table including the iPad Mini 3, Nexus 9, and Nokia N1, to make it clear which recently announced tablet offers the best value.

Jolla_Tablet_vs_Nexus_9_vs_Nokia_N1_Ipad_Mini_3The lowest price is listed at $189, but it was only offered as an early bird in the crowdfunding campaign, so to make the comparison fair, they should probably have listed the expected retail price ($249), which makes it the same price as Nokia N1, and both Finnish tablets have very similar specs, with a slight advantage to Nokia N1, except for the micro SD slot that’s only found in the Jolla tablet.

There are native apps for Sailfish OS, and more will be added, but the OS can also handle Android apps, which can be downloaded from the Google Play store, probably with a slight performance hit, but it should not be noticeable on apps like Twitter, Facebook, and Instagram.

The company also encourages backers and interested users to be involved in the development of the tablet, and invites people to get their voice heard in their community forum.

To say the least, the campaign has been very successful so far, having raised over $850,000 from over 5,000 backers in less than 24 hours. The lowest pledges ($189 and $199) are now all sold out, but you can still pledge $204 + $20 shipping to hopefully get the tablet in May 2015. VAT is not included either, so it might be added before shipping. The crowdfunding campaign is also not 100% international, as the tablet will only ship to countries part of the European Union, Norway, Switzerland, the USA, India, China, Hong Kong, and Russia. If your country is not listed, you can ask or vote for it to be added. Further information may also be found on Jolla Tablet’s product page.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Radxa Rock Pro / Lite Development Boards are Now Open Source Hardware

October 24th, 2014 17 comments

Many projects claim to be “open source hardware” (OSHW) after they’ve released the schematics in PDF format, and source code. But the definition of OSHW has a few more requirements, which is practise means you’ve got to release schematics and PCB layout in the native format, not only in PDF, as well as the gerber files, and the bills of materials. Open Source Hardware can also truly be useful, if you can source the components. and for example, Broadcom BCM2835 processor might be impossible to procure, especially in small quantities, and that makes the Raspberry Pi unsuitable as an open source hardware platform. Existing companies / associations dedicated to OSHW include Arduino,, Olimex, etc.., and today Radxa has joined the club by releasing all hardware designs files for Rockchip RK3188 based Radxa Rock Pro and Lite development boards (2014 version) under a Creative Commons Attribution 4.0 International License. This could be the very first Chinese company to do so, at least for ARM development boards.


You can get the hardware design files on Radxa’s oshw repository in github. Let’s see what’s they’ve released:

  1. Schematics in Orcad 16.5 and PDF formats
  2. PCB layout (.dsn) to be open with PADS 9.5
  3. Manufacturing files including the Gerber files, Bill of material (BOM), components placement, etc…
  4. Mechanical drawings in DXF format

It looks good to me, did they forget anything?

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

USB Armory is an Open Source Hardware Freescale i.MX53 Dongle for Security Applications

October 22nd, 2014 4 comments

Most computers-on-a-stick come with an HDMI port, and a few USB ports, but Inverse Path’s dongle is quite different. USB Armory is a flash drive sized computer powered by Freescale i.MX53 Cortex A8 processor with only a USB port and a micro SD slot, that targets security applications such as mass storage devices with automatic encryption, virus scanning, host authentication and data self-destruct, VPN routers, electronic wallets, password managers, portable penetration testing platforms, and so on.

Inverse_path_USB_armoryUSB Armory specifications:

  • SoC – Freescale i.MX53 ARM Cortex-A8 @ 800Mhz with ARM TrustZone
  • System Memory – 512MB DDR3 RAM
  • Storage – microSD card slot
  • USB – 1x USB host port. USB device emulation: CDC Ethernet, mass storage, HID, etc.
  • Expansion Header – 5-pin breakout header with GPIOs and UART
  • Misc – customizable LED, including secure mode detection
  • Power – 5V via USB  (<500 mA power consumption)
  • Dimensions – 65 x 19 x 6 mm

The board is said to run Android, Debian, Ubuntu, and FreeBSD. USB Armory is open source hardware and software, and you can already find the Kicad schematics and PCB layout files for the alpha version, distributed under a GPL v2 license, on github. Some software documentation can be found on the project’s Wiki, with firmware images coming later. Security features are achieved through ARM Trustzone which allows for secure and normal zones, and you may want to read a Trustzone on i.MX53 article on Genode OS framework project for more technical details.

USB armory is still under development, but you can register your interest on Crowdsupply where it should sell for less than 100 Euros later this year. Some more information is also available on Inverse Path’s USB Armory page.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

HydraBus is an Open Source Hardware STM32 Devkit with Support for NFC via HydraNFC Shield

October 1st, 2014 No comments

Recently, I wrote about public availability of Micro Python board based on STMicro STM32F4 Cortex M4 support that can easily be programmed with Python. It turns out there’s another STM32 board called HydraBus, also supporting Micro Python firmware, or another embedded firmware based on ChibiOS, together with an optional HydraNFC shield capable of sniffing, reading/writing or emulating any 13.56MHz NFC tags.



HydraBus Specifications:

  • MCU – STMicro TM32F405RG micro-controller @ 168 MHz with 1MB flash, 192KB SRAM, and an FPU.
  • External Storage – Micro SD card slot up to 48MHz (~24MB/s)
  • Expansion Headers – 4 headers with access to 44 I/Os (some already used by micro SD and USB 1 & 2).
  • USB – 2x micro USB connector including 1x OTG port, and 1x device/host port, both with ESD protection.
  • Misc – Reset and user button, user LED,
  • Power – 5V via micro USB port.
  • Dimensions – 60mm x 37mm (compliant with a Dangerous Prototype DP6037 PCB size)

As mentioned in the introduction, there are two available firmware for the board, both with source code available on github: Micro Python and a HydraFW based on ChibiOS. The board is also open source hardware with CadSoft Eagle 6.x schematics & PCB layout, BoM, and Gerber files available on Github too, and licensed under Creative Commons BY NC.



If you’d like to “play” with NFC, Benjamin Vernoux, HydraBus’ developer, has also designed HydraNFC shield for HydraBus board with the following hardware specs:

  • Autonomous mode with 4 User buttons and 4 User LEDs.
  • Use HydraBus microSD card to save or load data – Support of microSD (FAT16/FAT32) card up to 32GB (tested with SanDisk Extreme 32GB).
  • Use Texas Instrument TRF7970A NFC chipset with full access to all pins and all modes of TRF7970A through connectors J1/J2/J3.
  • HydraBus Antenna (external) with U.FL connector(cable included) or SMA (optional) and can read Mifare card at up to 8cm (with 20cm cable).

Firmware support is achieved via HydraFW running on STM32 MCU. HydraNFC is also open source hardware, and you’ll find the hardware design files in hydranfc repository.

More details are available on You can purchase the boards directly on the website, or via Seeed Studio for $49 and $79 for respectively HydraBus and HydraNFC boards.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Mediatek Releases Android SDK with APIs for HotKnot, Video & Image Processing, Multi-SIM, etc…

September 22nd, 2014 3 comments

Mediatek seems motivated in getting involved with maker and open source communities. Thanks to its works on Android One with Google, the company recently released the Linux kernel source for MT6582 processor, and with a separate endeavour, launched Mediatek Labs bringing LinkIt ONE platform for IoT and wearables to market, as well as a preview release of an Android SDK for its mobile processors.

Features of the SDK includes:

  • Set of libraries for MediaTek feature APIs with full API documentation.
  • x86 MediaTek emulator based on a reference implementation of an Android 4.4.2 (KitKat) device powered by a MediaTek chip, adding capabilities to test and debug telephony and multi-SIM features, a vibrator indicator and a hot-swappable SD card.
  • Customized version of the DDMS (Dalvik Debug Monitor Server), which adds support for testing telephony features, such as plugging and unplugging a headset, sending telephony commands to test call and SMS features, etc…

Mediatek_Android_SDKYou can download the Android SDK after registration, on Mediatek Labs’ Android SDK page.

The SDK contains two zipped files:

  • including several folders:
    • emulator – Linux and Windows executables.
    • images – Images needed by emulator.
    • libs – API libraries.
    • samples – API sample applications.
    • skins – 720p / 1080p skin for emulator.
    • doc – SDK documentation
  • with two folders:
    • ddms-linux-x86_64 – MediaTek customized DDMS (Linux version)
    • ddms-win – MediaTek customized DDMS (Windows version)

The current APIs have three levels, and allow app developer to access:

  • Multi-SIM Telephony
  • Audio / Video
  • Camera MAV (Multiple Angle View) to create 3D and other effects
  • HotKnot (Mediatek’s alternative to NFC)
  • Portrait Enhancements using features such as skin smoothing and eye enlargement
  • Image Transformation such as flip, rotate, and sharpen (hardware accelerated)
  • Gesture, for instance, detection of open palm and victory (V) hand gestures
  • API Level Version Check

You can also consult the API documentation online, and to get started download MediaTek SDK for Android Developer’s Guide. Although many of the API features can be tested on the emulator, you’ll probably want to do some testing on actual phones, and Mediatek will soon provide a list of reference Android phones.

If you happen to live in the United Kingdom, Mediatek will showcase both LinkIt platform and their Android SDK in Manchester at XDA:devcon on September 26-28, 2014.

Via Steve Jones

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Getting Started with WRTnode OpenWRT Development Board

September 18th, 2014 No comments

Seeed Studio sent me two nice little boards that can be used for IoT development: WRTNode and LinkIt ONE. Today, I’ll show pictures of WRTNode and accessories, and go through the “starting guide“, and will test LinkIt ONE board a few days later.

WRTnode Unboxing

I’ve received WRTnode by Fedex, and the board is stored in a plastic box.
Inside the box, you’ll find the board, a “special” USB used to power the board and as an OTG adapter, a piece of paper with useful links (Wiki), and some WRTnode stickers.

WRTnode, "special" USB cable, and Quick Start Card (Click to Enlarge)

WRTnode, “special” USB cable, and Quick Start Card (Click to Enlarge)

Any micro USB to USB cable can be used to power the board, but this cable is useless to connect USB devices such as flash drives, webcams (OpenCV is supported), Bluetooth dongles, and so on. You could even connect a USB hub to connect multiple USB devices as shown below.


I’ve also taken a picture of both sides of the board shown the antenna on-board antennas, Mediatek MT7620n WiSoC, Elixir N2TU51216DG-AC DDR2 chip (64MB @ 400 MHz), the 16 MB SPI flash, as well as the headers for connecting various peripherals via I2C, SPI, UART, USB, etc…

WRTnode Board (Click to Enlarge)

WRTnode Board (Click to Enlarge)

You can also add Ethernet easily by making your own Ethernet cable using T568B wiring standard. I’m not 100% sure it’s safe though, as there are usually some extra components for Ethernet. I’ve included the board pinout chart for your reference.


WRTnode Quick Start Guide

To start the board simply connect the USB cable to a power adapter or a USB port on your computer. After about 10 seconds, you should see a blue LED lit up, and shortly after, you should see WRTnodeXXXX ESSID, where XXXX are the last 4 digit of the board MAC address. Connect it with your computer, and input the password: 12345678.
WRTNode_Access_PointNormally the board will resolve as several URL, but at first none of them worked.

$ ping
ping: unknown host
$ ping openwrt.lan
ping: unknown host openwrt.lan
$ ping wrtnode.lan
ping: unknown host wrtnode.lan

But you can check the route to see which subnet is used by your Wi-Fi connection:

$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default UG 0 0 0 eth0 * U 1 0 0 eth0 * U 9 0 0 wlan0

I could finally ping the board with:

$ ping
PING ( 56(84) bytes of data.
64 bytes from icmp_seq=1 ttl=64 time=12.4 ms
64 bytes from icmp_seq=2 ttl=64 time=2.37 ms
64 bytes from icmp_seq=3 ttl=64 time=12.1 ms

Interestingly, ping openwrt.lan, and the other two URL also work afterwards, so maybe I was a little to impatient during my testing…

The first time you need to connect to the board via telnet in order to set the root password:

$ telnet


Now change the root password using passwd as you would do in any other Linux machine, and exit the connection, in order to connect via SSH instead:

$ ssh [email protected]
The authenticity of host ' (' can't be established.
RSA key fingerprint is bc:00:71:ac:b1:56:e7:7b:c7:7a:9b:6a:59:8e:da:82.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '' (RSA) to the list of known hosts.
[email protected]'s password:
BusyBox v1.22.1 (2014-08-13 19:31:12 UTC) built-in shell (ash)

At this point, you’ve got another Wi-Fi access point on your network, but it’s not connected to Internet, so let’s start by locating the Wi-Fi routers with aps command:

root@OpenWrt:~# aps
WRTnode AP scaner.
Begin scaning APs, pls wait...
APs available are...
ra0 get_site_survey:
Ch SSID BSSID Security Siganl(%)W-Mode ExtCH NT WPS DPID

I only have one ESSID here, but this will list all ESSID in your environment. With that data, you can configure WRTnode to connect to your Wi-Fi router using vw command (vi wireless?):

root@OpenWrt:~# vw
config wifi-device 'ra0'
 option type 'ralink'
 option mode '9'
 option channel '1'
 option txpower '100'
 option ht '20+40'
 option country 'US'
 option disabled '0'
config wifi-iface
 option device 'ra0'
 option network 'lan'
 option mode 'ap'
 option encryption 'psk2'
 option key '12345678'
 option ApCliEnable '1'
 option ApCliSsid 'CNX-TRANSLATION'
 option ApCliAuthMode 'WPA2PSK'
 option ApCliEncrypType 'AES'
 option ApCliPassWord 'router_password'
 option ssid 'WRTnode9A60'

You need to change the lines in bold above using the data from aps. The first line is the Channel (Ch) , and the four lines in the wifi-iface section are pretty much self-explanatory. Save the file with Esc + “:wq”.

aps and vw do not report security features in the same way. Here’s the conversion table in case you don’t use WPA2PSK/AES:

aps:Security           vw:ApCliAuthMode/ApCliEncrypType

Finally, restart the network:

root@OpenWrt:~# nr

and verify WRTnode got an IP address from the Wi-Fi router using DHCP:

root@OpenWrt:~# ia
apcli0 Link encap:Ethernet HWaddr 66:51:7E:32:9A:60
inet addr: Bcast: Mask:
inet6 addr: fe80::6451:7eff:fe32:9a60/64 Scope:Link
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

Good is an IP adress from local network. Let’s also check we can ping a site on the Internet:

root@OpenWrt:~# ping
PING ( 56 data bytes
64 bytes from seq=0 ttl=53 time=81.999 ms
64 bytes from seq=1 ttl=53 time=87.759 ms
64 bytes from seq=2 ttl=53 time=81.381 ms
--- ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 81.381/83.713/87.759 ms

All good!

Once I had a problem connecting to my Wi-Fi router, and it turned out my router was configured to automatically select the channel, and it had switched to Channel 4. Running vw again to change the configuration withoption channel ‘4’” made the connection work again. There’s probably an option in OpenWRT to automatically detect the channel, but I haven’t investigated.

You can also install packages for okpg. I tried to install luci, but it was pre-installed, so I added openvpn support instead:

root@OpenWrt:~# opkg update
Updated list of available packages in /var/opkg-lists/barrier_breaker.
root@OpenWrt:~# opkg install luci
Package luci (svn-r10457-1) installed in root is up to date.
root@OpenWrt:~# opkg install openvpn-easy-rsa
Installing openvpn-easy-rsa (2013-01-30-2) to root...
Installing openssl-util (1.0.1h-1) to root...
Configuring openssl-util.
Configuring openvpn-easy-rsa.

That’s it the quick start guide is completed.

I’ve also run some command to show memory and storage usage:

root@OpenWrt:~# df -h
Filesystem Size Used Available Use% Mounted on
rootfs 7.3M 348.0K 7.0M 5% /
/dev/root 7.5M 7.5M 0 100% /rom
tmpfs 30.2M 80.0K 30.1M 0% /tmp
/dev/mtdblock5 7.3M 348.0K 7.0M 5% /overlay
overlayfs:/overlay 7.3M 348.0K 7.0M 5% /
tmpfs 512.0K 0 512.0K 0% /dev

root@OpenWrt:~# free -m
total used free shared buffers
Mem: 61852 29084 32768 0 3536
-/+ buffers: 25548 36304
Swap: 0 0 0

Out of the 16Mb SPI flash, only 7.3M available are available for OpenWRT, the  rest is probably used by the bootloader. There’s nearly 64MB RAM available, and 29MB free.

If you are interested in the board, you can purchase it from Seeed Studio ($25), which provided the board for this review, but it’s also available on other shops such as DFRobot or Eleduino for the same price, although shipping fees may vary. To go beyond this Quick Start Guide, visit WRTnode WiKi to access the source code, schematics, and various documentation including tutorials.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Mediatek Releases Linux Source Code for Android One Smartphones

September 18th, 2014 6 comments

Android One is a program by Google aiming at bringing low cost smartphones to the emerging markets with firmware updates to the latest Android version guaranteed for two years. Three phones part of Android One program have recently been announced for the Indian market: Micromax Canvas A1, Karbonn Sparkle V, and Spice Dream Uno, and Android One phones will be available in Indonesia, the Philippines and South Asia (Bangladesh, Nepal, Pakistan, and Sri Lanka) by the year of the year. The three phones currently available sell for $100, which based on the specs (quad core processor, 1GB RAM, 4GB flash, 4.5″ display) is not exactly an aggressive pricing compared to what is already available from Aliexpress, but the main advantage here is clearly Google support with promised firmware updates, and currently Android 4.4.4. All these phones appear to be powered by Mediatek MT6582, and company decided to release the Linux 3.4.67 source code on Google servers. Please note it’s not the first time Mediatek Linux source code has been released, but at the time, the code was pretty messy, and not standard, so hopefully working with Google may have improved things.


Here’s how you can get it:

git clone -b android-mediatek-sprout-3.4-kitkat-mr2

Before building the kernel, you may want to install Android gcc toolchain (in Ubuntu 14.04):

sudo apt-get install gcc-arm-linux-androideabi

Then the build should start with a script::


But it fails looking for an existing external script… Oh well. So I located a config file for MT6582, and completed the build the usual way:

make ARCH=arm sprout_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-androideabi- -j8

and it could generate zImage successfully.

I’ve also checked the Kernel Configuration, and it seems the “Mediatek Properitary Configuration” (sic) section found in the older 3.4.5 source code has now disappeared, and the company is using a standard method to define the kernel configuration (see screenshot above).

Via XDA Developers Blog

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter