Rockchip RK3288 based Android and Chromium OS Tablets and TV Boxes (Video)

After the first RK3288 Android TV boxes started to be promoted on Alibaba, and the first RK3288 board was shown, Rockchip is currently showing their quad core Cortex A17 processor in reference designs, tablets, and TV boxes running Android or Chromium OS at the Hong Kong Electronics Fair. Charbax interviewed the company, and the first demo was a development board connected to an LCD display running Chromium OS, which is said to handle 30 tabs without issues. Rockchip RK3288 is now advertised as being a quad core Cortex A17 with a Mali-T764 GPU, but when Rockchip representative was asked, he strangely denied to comment on whether it was a Cortex A12 or A17, as both are very similar. He also said the GPU was a Mali-T760MP4… If this seems all confusing that’s because it is… Some interesting things are H.265/HEVC support for 4K2K videos, and HDMI 2.0 for 4K @ […]

Google Announces Blink, a Fork of WebKit Rendering Engine for Chromium

WebKit rendering engine has been used by Chromium since the start of the project, but Chromium uses a different multi-process architecture than other WebKit-based browsers, and this has made maintenance increasingly complex, and Google intends to investigate other performance improvement strategies. Those 2 reasons explain why the company has announced it would fork WebKit and start working on its own open source rendering engine called Blink. Google tells web developers that in the short term, Blink will bring little change to them, as most of the work will focus on architectural improvements as well as code cleanup with about 7,000 files, corresponding to 4.5 millions line of code, to be deleted. One of the main changes will be “out-of-process iframes“, where the rendering engine will start a sandbox process for each individual parts of the page in order to render it faster. This has been planned for a while, but […]

Getting Started with MultiArch (armel / armhf) in Ubuntu

Until now, I used xapt and dpkg-cross to install cross libraries for armel, but since I’ve upgraded to Ubuntu 12.04, it appears to be broken. I’ve contacted Linaro about this issue, and the “cross-building” expert at Linaro (wookey) recommended me to use multiarch instead, as xapt/dpkg-cross will be eventually deprecated. He provided me an example showing how-to use multiarch to build Chromium. I’ve been looking for a “How-to multiarch”, but haven’t been able to find something really clear and simple, so I thought I would post it here. In the example, they used a chroot for cross-building, which is probably a good idea to avoid messing up with the system. It’s also possible multiarch is not 100% reliable, and I’ve read stories where people messed up their system when using multiarch with i386 (32-bit) and amd64 (64-bit). Preparing a chroot for cross-building I’ll use a 32-bit Ubuntu precise chroot, but […]

Google Releases Chrome for Android (Beta)

Google has introduced the beta version of Chrome for Android, bringing Chrome’s capabilities to smartphones and tablets running Android 4.0 (but not earlier versions). The key features of Chrome for Android: View open tabs: Access the tabs you left open on your computer (also signed into Chrome)—picking up exactly where you left off.  Swipe on your mobile device to switch between tabs. Get smarter suggestions: If you visit a site often on your computer, you’ll also get an auto-complete suggestion for it on your mobile device, so you can spend less time typing. Sync bookmarks: Access your favorite sites no matter which device you are using. You can watch the teaser video below. On the technical side, Chrome for Android brings support for many of the latest HTML5 features to the Android platform including hardware-accelerated canvas, overflow scroll support, HTML5 video. Chrome for Android also brings new capabilities such as […]

Cross-compiling Berkelium for ARMv6 with Emdebian Toolchain

Berkelium is a BSD licensed library that provides off-screen browser rendering via Google’s open source Chromium web browser. This library is used by Xibo Digital Signage Player python client and I already cross-compiled it using Ubuntu/Linaro  toolchain. Since I need it to run on ARMv6 for the Raspberry Pi, I have cross-compiled it again in Debian with Emdebian ARM cross-compiler. Here are the instructions I followed to build Berkelium and Chromium for ARMv6 in Debian. First, you’ll need to install some development libraries for ARM: sudo /usr/share/pdebuild-cross/xapt -a armel libnss3-dev libgconf2-dev libgnome-keyring-dev libgtk2.0-dev libgnome-keyring-dev libgtk2.0-dev libxtst-dev libpam-dev libxss-dev libdbus-glib-1-dev libnss3-dev libgconf2-dev libgnome-keyring-dev libxss-dev libdbus-glib-1-dev libnspr4-dev libglib2.0-dev libjpeg-dev libasound2-dev libbz2-dev libgcrypt-dev libspeex-dev libcups2-dev and some tools on the build machine: sudo apt-get install git-core subversion cmake doxygen gyp gperf flex bison On 64-bit build machines (required for debug build) also install g++-multi and possibly some 32-bit libraries with xapt:

If […]

Using Raspberry Pi as an Internet Kiosk

Following up on this morning post explaining how to get the kernel and minimal rootfs to run debian in qemu emulating an ARM1176 processor, I’ll show how to make a minimal rootfs to run Chrome browser in this platform. I tested it in QEMU, but this should also run on the Raspberry Pi hardware. First, you’ll have to complete the step I provided in Raspberry Pi Emulator in Ubuntu with Qemu. Start qemu: sudo qemu-system-arm -M versatilepb -cpu arm1176 -m 256 -hda rootfs.ext2 -kernel zImage -append “root=/dev/sda” -serial stdio Once you login to the console as root, create a new user (e.g guest): adduser guest This user will be needed to login with the graphical interface and ssh. In order to get an Internet Kiosk, we’ll need a web browser (Chromium) and a window manger. I chose fluxbox instead of gnome because of the size difference (8651 KB vs 1739 […]

Cross-compiling Berkelium (and Chromium) for ARM

Berkelium is a BSD licensed library that provides off-screen browser rendering via Google’s open source Chromium web browser. It takes advantage of Chromium’s multiprocess rendering to isolate browsers from each other and can render to any buffer in memory. The user of the library can inject input and javascript code into web pages to control them, as well as listen for events generated by the page such as navigation events, load sequence events and paint events. Berkelium provides a small API for embedding a fully functional browser into any application. This library is used by Xibo Digital Signage Player python client. I’ll give the instructions I followed to build Berkelium and Chromium for ARM. For now the build works, but I have a problem running berkelium in the emulator. First, you’ll need to install some tools and the development version of some libraries: sudo apt-get install git-core subversion cmake doxygen […]

Google Chrome Notebook Cr-48 and Chrome OS Update

After unveiling Google Nexus S and Android 2.3, Google lifted the lid on its reference notebook codenamed “Cr-48″ and provided updates about Chrome OS. This notebook features a 12.1” monitor and runs Chrome OS on an Intel platform. The Cr-48 Chrome Notebook is only designed for Chrome OS pilot program and will be distributed free of charge to selected organization and users in the United States. Here’s an excerpt from Google Chrome OS website: Each participant in the Pilot program will receive a Cr-48 Chrome notebook; in return, we’ll expect you to use it regularly and send us detailed feedback. Sound interesting? Please note: Chrome OS is for people who live on the web. It runs web-based applications, not legacy PC software. The Pilot program is not for the faint of heart. Things might not always work just right. The Pilot program is open to individuals, businesses, schools, non-profits and developers based […]

Memfault IoT and embedded debugging platform