Cross-compiling VMWare View for ARM Linux (in Debian/Ubuntu)

Earlier this month, I wrote an article about PCoIP Technology which shows an Android application (VMWare View) running on an OMAP4 Tablet displaying a Windows 7 desktop. This remote desktop technology relies on a powerful server to do the processing and thin clients (in that case Tablets) to display the desktop. Since only pixels are transferred any OS (supported by the server) could be displayed in the thin client. That made me wonder if there was an open source PCoIP client that could run on low end Linux client such as the Raspberry Pi. VMWare View Open Client provides just what we need, but is only available in source code so we need to cross-compile it for ARM or build it in an ARM machine. Today, I’ll show the instructions I followed to cross-compile it for ARM in Debian using Emdebian Toolchain. First download and extract VMware View Open Client […]

Raspberry Pi Linux Distribution: Raspberry Pi Fedora Remix 14

Several operating systems will be able to run on the Raspberry Pi boards.  However, the Raspberry Foundation had announced that they were working with Red Hat to deliver a Fedora release optimized for the board and Broadcom BCM2835 processor (ARMv6 + hard-float support). It appears the full name of this distribution is “Raspberry Pi Fedora Remix 14” most probably based on Fedora 14 (as the name implies), and not the latest Fedora 16 release. This Linux distribution will officially be launched on the 22nd of February 2012 at the  Seneca Centre for the Development of Open Technology in Toronto, Canada during a 2-hour event (15:00-17:00) featuring: A hands-on opportunity to use a Raspberry Pi Live demonstrations of the Raspberry Pi Fedora Remix software Examples of the educational uses of the Raspberry Pi The 60-computer build farm used to build the Fedora ARM software on which the remix is based Information […]

armStoneA8: 49 Euros ARM Cortex-A8 Single Board Computer

F&S Elektronik Systeme GmbH, a German company,  has announced the armStoneA8 , a Single Board Computer (SBC) based on an ARM Cortex A8 that will be available by the first day of the Embedded World 2012 Conference.  The great part is that for a limited period (27 February 2012 to 4 March 2012) you’ll be able to buy the board for 49 Euros on their (yet to be launched) online shop. The board, that comes in PicoITX form factor (100 x 72mm), is powered by a Cortex A8 CPU running at 1GHz and the company provides support for Linux, WinCE 6.0 and Windows Embedded Compact 7. The company says the bootloader, SDK, BSP and kernels are already available with support for DirectX, OpenGL and hardware accelerated GStreamer. The company plans to release the detailed specifications before Embedded World 2012, but in the meantime, I found some PDF about the board […]

Raspberry Pi Releases BCM2835 Datasheet for ARM Peripherals

If you have been following Raspberry Pi project, you may have noticed the dearth of documentation related to Broadcom processors. For BCM2835 (The processor used in Raspberry Pi board), Broadcom only has one laconic webpage. But the Raspberry Pi’s “super-team” has managed to get a (partial) datasheet for the SoC showing the details of BCM2835 ARM peripherals which is all that we may need. This would only be useful for people playing around with the Linux (and u-boot) drivers. The document includes details about the processor’s memory map as shown below. It also contains details (registers, implementation details, etc..) about the following ARM peripherals: Timers Interrupt controller GPIO USB PCM / I2S DMA controller I2C master I2C / SPI slave SPI0, SPI1, SPI2 PWM UART0, UART1 You can download BCM2835 datasheet to get the complete documentation. The Raspberry Pi foundation also announced that the boards will be ready on February […]

Raspberry Pi Codecs and Graphics/Video APIs

The Raspberry Pi Foundation has announced which codecs and API would be supported in the Raspberry Pi. The Raspberry Pi board will support the following Graphics and Video API via a set of closed source libraries that give access to the GPU acceleration features: OpenGL ES 2.0 –  OpenGL is a 3D Graphics API defined by the Khronos Group. OpenVG – OpenVG is a 2D vector drawing API also defined by the Khronos Group. EGL – EGL is the interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system. OpenMAX IL – OpenMAX supplies a set of API’s that provides abstractions for routines used during audio, video, and still images processing. OpenMAX defines 3 layers, Raspberry Pi library will provide an interface to the IL layer, which provides an interface between media framework such as Gstreamer and a set of multimedia components. […]

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 […]

Linux Kernel 3.1.9 for Raspberry Pi Released & Build Instructions

Raspberry Pi has just announced the release of a fork a linux kernel 3.1.9. The source code with patches is available at https://github.com/raspberrypi/linux. If you just want to download the patch, I’ve created one: r-pi_linux_3.1.9.patch.gz The code related to Broadcom BCM2835 processor is referred as bcm2708 in the kernel and I can see committed related to the watchdog timer, the framebuffer,  the VCHIQ driver (the driver sending messages to the GPU) and general commits for bcm2708. For those interested in the messages used to communicate between userspace and the GPU, the VCHIQ driver code is located at drivers/misc/vc04_services in the tree. I haven’t studied it yet, but as the platform should support graphics standards such as OpenGL and OpenMAX IL, most people should not really care about this interface as I suppose the OpenGL library (Mesa?) uses this driver. Here are the build instructions for Raspberry Pi kernel. I cross-compiled […]

Xibo Digital Signage in Raspberry Pi Emulator (Step 1)

Xibo (pronounced eX-E-bO) is an open source, multi-display, multi-zone, fully scheduled digital signage client/server solution written in Python and dotNET. If you are not familiar with Xibo you can visit http://xibo.org.uk/ or/and read my introduction XIBO: An Open Source Digital Signage Server/Client. The Raspberry Pi is a low cost board based on Broadcom BCM2835 (ARM1176 Core) that should be available for sale at the end of January / beginning of February at http://www.raspberrypi.com. There are two versions of the board: Model A: 128 MB RAM and no Ethernet Model B: 256 MB RAM with 10/100 Mbit Ethernet BCM 2835 also features a Videocore GPU supporting OpenGL and 1080p30 video decoding that makes it ideal for multimedia applications such as digital signage players. The board support both HDMI and composite video output. You should also be able to connect a LCD via the DSI interface. If we can make Xibo run […]