Cross compiling Berkeley DB for ARM and MIPS

Following my blog entry about Databases for Linux Embedded Systems, here are the instructions to cross-compile Oracle Berkeley DB. First download the source code of the latest version of Berkeley DB (version 11gR2 – 11.2.5.1.25). You’ll need to register on Oracle website first on the download page http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html to download http://download.oracle.com/otn/berkeley-db/db-5.1.25.tar.gz (with AES encryption) or  http://download.oracle.com/otn/berkeley-db/db-5.1.25.NC.tar.gz (if you don’t need encryption). Extract the source code: tar xzvf ../Downloads/db-5.1.25.tar.gz Configure and build the source code. I’ll use mipsel-linux-gcc, but any other cross-compiler could be used. cd db-5.1.25/build_unix ../dist/configure –host=mipsel-linux CC=mipsel-linux-gcc RANLIB=mipsel-linux-ranlib STRIP=mipsel-linux-strip AR=mipsel-linux-ar –prefix=/home/jaufranc/edev/lib/db-11g make make install The full berkeley DB package is 79MB: [email protected]:~/edev/lib/db-11g$ du –max-depth=1 -h 6.6M    ./lib 308K    ./bin 72M    ./docs 176K    ./include 79M    . However, you won’t need the include and docs directory in your embedded target. So you do not need to copy those. You may or may need the utilities in the bin file. The lib diirectory contains two versions of the static library (why?) …

AMD G-Series SDK and Development Boards

Earlier this year, AMD announced its new Embedded processors G-Series aimed at set-top boxes, smart tv, digital signage, point of sales, media servers and more in order to compete with Intel Atom solutions as well as ARM based processors. Please refer to the link above for an overview and details about the 5 processors of the AMD G-series: T56N – Dual core @ 1.6GHz with Radeon HD 6310 GPU T48N – Dual core @ 1.4 GHz with Radeon HD 6310 GPU T40N – Dual core @ 1.0 GHz with Radeon HD 6250 GPU T52R – Single core @ 1.5 GHz with Radeon HD 6310 GPU Today, I’ll discuss about the development boards and software development kits available for this platform. AMD G-Series Development Boards and Reference Designs AMD Provide two reference designs and one development board: AMD Embedded G-Series Platform Mini-ITX Reference Design. No details are publicly available as this mini-ITX reference design requires you to sign an NDA for …

Texas Instruments MSP430 Devkit Facebook Promotion

Texas Instruments is currently offering 50% discount on selected development kits for its Facebook Fans for purchase on TI eStore until stocks last. The two development kits are sold at 50% discount: EZ430-Chronos-433 – eZ430-Chronos Wireless Watch Development Tool, a highly integrated, wireless development system based for the CC430 in a sports watch. It may be used as a reference platform for watch systems, a personal display for personal area networks, or as a wireless sensor node for remote data collection. The original price is 49 USD, but it can be ordered for 24.50 USD (including shipping) with the promo code: FCB-sfVwiUYe EZ430-F2013 – MSP430 USB Stick Development Tool, a complete development system with detachable target board and USB emulator. Ideal for new users. The original price is 20 USD, but it can be ordered for 10 USD (including shipping) with the promo code: FCB-ZC7Y86yQ I’ve ordered the Wireless Watch Development Tool and it’s supposed to include: eZ430-Chronos wireless watch …

Netgem’s IPTV 2.0 Home Cloud SDK

Netgem announced the release of its “Home Cloud” SDK based on IPTV 2.0 open architecture. Here’s an excerpt from the press release: Paris, France  March 15 , 2011  Netgem, an IPTV technology leader, has announced it has made its Home Cloud software development kit (SDK) available to application developers, Internet service providers and operator partners. Netgem is further developing its partner ecosystem to enable third parties to take advantage of its IPTV 2.0 open architecture. This application framework is designed for the development of  live and on-demand TV and multimedia applications. Using the open and fully documented APIs telecom operators and their partners can develop their local ecosystem of applications and services to differentiate their offering from competitors. Since Netgem is a pure technology vendor it does not interfere with the economics of the relationship between operators and developers, who are able to share 100% of the revenue. The full press release is available in English or French. Demos using …

Qemu Linaro Versatile Express Image on Ubuntu 10.10

I’ve installed qemu-linaro and run an ARM image based on the instructions on https://wiki.linaro.org/PeterMaydell/QemuVersatileExpress. I used Ubuntu 10.10 desktop edition. First, install the Linaro images tools: sudo apt-get install linaro-image-tools Download the Linaro release and versatile hardware pack: wget http://releases.linaro.org/platform/linaro-n/nano/alpha-3/linaro-natty-nano-tar-20110302-0.tar.gz wget http://releases.linaro.org/platform/linaro-n/hwpacks/alpha-3/hwpack_linaro-vexpress_20110302-0_armel_supported.tar.gz You can download another hwpack for omap3, i.mx51, pandaboard, beagleboard, ST U8500, etc.. if needed at http://releases.linaro.org/platform/linaro-n/hwpacks/alpha-3/ Download the source, extract it, then configure, build and install qemu linaro: wget http://launchpad.net/qemu-linaro/trunk/2011.03-1/+download/qemu-linaro-0.14.50-2011.03-1.tar.gz tar xzvf qemu-linaro-0.14.50-2011.03-1.tar.gz cd qemu-linaro-0.14.50-2011.03-1 ./configure –prefix=/usr make sudo make install Make sure the prefix is set to /usr in order to overwrite any previous version of Qemu (It installed qemu linaro in /usr/local/ instead in my case). Failure to do so may generate the following error during linaro-media-create: qemu: fatal: cp15 insn ee1d6f70 Instead of compiling qemu, you can install qemu-linaro with apt-get (this will avoid possible version issues between linaro-media-create and qemu): sudo add-apt-repository ppa:linaro-maintainers/tools sudo apt-get update sudo apt-get install qemu-user-static qemu-system Create a …

Cross compiling SQLite for ARM and MIPS

Following my blog entry about Databases for Linux Embedded Systems, here are the instructions to cross-compile SQlite. First download the latest version of SQLite amalgamation with autoconf script (version 3.75): wget http://www.sqlite.org/sqlite-autoconf-3070500.tar.gz Extract the source code: tar xzvf sqlite-autoconf-3070500.tar.gz Configure and build the source code. I’ll use mipsel-linux-gcc, but any other cross-compiler could be used. cd sqlite-autoconf-3070500 ./configure –host=mipsel-linux –target=mipsel-linux –prefix=/home/jaufranc/edev/sqlite-mips make make install At this point the library is correctly configured and installed, so you’d just need to copy the relevant files to your target board (skip include and share directories and  libsqlite3.a) . Let’s check the size of the required files: ls -l ../sqlite-mips/bin/ -rwxr-xr-x 1 jaufranc jaufranc 125513 2011-03-14 14:21 sqlite ls -l ../sqlite-mips/lib/libsqlite3.so.0.8.6 -rwxr-xr-x 1 jaufranc jaufranc 2087584 2011-03-14 14:21 ../sqlite-mips/lib/libsqlite3.so.0.8.6 sqlite binary is 122.57KB and the dynamic library 2038.65KB. Let’s see if we can optimize the binary size with compilation flags and by disabling some unnecessary features. The first thing to add is CFLAGS=”-Os” to …

HbbTV: Hybrid Broadcast Broadband TV

HbbTV (Hybrid Broadcast Broadband TV) is a new European standard for web-based smart TV applications for TVs and set-top boxes.  Services and applications delivered via HbbTV include traditional broadcast TV channels, catch-up services, video-on-demand, EPG, interactive advertising, personalisation, voting, games, social networking and other multimedia applications. The latest version of the HbbTV specification is 1.1.1 and can normally be downloaded after registering on ETSI website. The official nomenclature of the specification is ETSI TS 102 796. It is also directly available at the following link – http://www.etsi.org/deliver/etsi_ts/102700_102799/102796/01.01.01_60/ts_102796v010101p.pdf The HbbTV specification is based on existing standards and web technologies including OIPF (Open IPTV Forum), CEA, DVB and W3C. HbbTV Specifications specifically makes use of the following standards: CEA-2014 – Web-based Protocol and Framework for Remote User Interface on UPnP Networks and the Internet (Web4CE), also known as CE-HTML. Open IPTV Forum Release 1 Volume 5 – Declarative Application Environment of the Open IPTV Forum. TS 102 809 (aka DVB Blue Book …

QSeven Form Factor Embedded Boards by Seco

QSeven is a new standard (QSeven Specifications 1.20) that provides pinout, electromechanical description and implementation guidelines so that the main boards (with the MPU) be easily exchanged. So that you can a larger board with all connectors and a QSeven boards based on Intel icore, Atom or other processors based on ARM that simply fits into that larger board. The QSeven concept is defined as follows: Qseven Concept The Qseven concept is an off-the-shelf, multi vendor, Single-Board-Computer that integrates all the core components of a common PC and is mounted onto an application specific carrier board. Qseven modules have a standardized form factor of 70mm x 70mm and have specified pinouts based on the high speed MXM system connector that has a standardized pinout regardless of the vendor. The Qseven module provides the functional requirements for an embedded application. These functions include, but are not limited to, graphics, sound, mass storage, network and multiple USB ports. A single ruggedized MXM …