Chromecast Open Source Code: Linux Kernel, Toolchain, Bootloader, and More

Google has made quite a stir by introducing Chromecast, and entering the HDMI TV Stick market. We already know the device is based on Marvell 88DE3005 SoC with 512 MB, and since the product are already been shipped to customers in the US, it was just a question of time before the release of the open source code, and everything you need appears to be available at https://code.google.com/p/chromecast-mirrored-source/ Let’s have a look at what we have in the different repositories: Wiki – Empty… Kernel – Linux 3.0.8 source code Prebuilt – Binary toolchain: arm-unknown-linux-gnueabi-4.5.3-glibc Toolchain – Source code for the toolchain above. External – Source code for alsa-libs, dnsmask, libexit and nss sdk – bootloader and DirecFB 1.6.1 vendor – Looks like qt source used in some netflix app (not sure) Chromium – README explaining how you can download Chromecast Chromium source code: 1.8GB tarball + you need to contact […]

Wandboard Quad Unboxing, Getting Started with Android and Linux (via The Yocto Project)

After my review of the Wandboard Dual in February, I’ve now received Wanboard Quad development board  powered by Freescale i.MX6 Quad Cortex A9 processor, with 2 GB RAM, HDMI output, Gigabit Ethernet, and SATA. The board is available from several distributors including Mouser ($139), DigiKey ($144.38) and FutureElectronics ($125). I’ll start by showing some unboxing pictures of the board, as well as pictures of Wandboard Dual and Quad side-by-side. Then I’ll explain how to install Android and Linux on the board, build the images from source, run some benchmarks, and test different features. Wandboard Quad Unboxing Ive received the board via UPS in a large box that contained the package below. This is exactly the same as Wandboard Dual, except for the sticker. There’s just the board inside the package, and it would just look like Wandboard Dual with all connectors on the top, and the EDM module at the back, […]

Texas Instruments SensorTag Unboxing, Getting Started with Bluetooth Low Energy in Linux (with a Raspberry Pi)

Texas Instruments CC2541 SensorTag is a Bluetooth Low Energy (BLE) development kit with 6 sensors (IR temperature, humidity, pressure, accelerometer, gyroscope, magnetometer) mainly destined at mobile application developers for iOS, and soon, Android 4.3. I’m interested in BLE, as I expect most new phones with come with BT 4.0 BLE (aka Bluetooth SMART), and this technology may help bring the Internet of things to life, allowing us to interact with sensors, smart appliance (e.g. light switch)… Since it just costs $25 (including international shipping), I decided to buy it, and give it a try. Today, I’ll show some unboxing pictures, and how to communicate with the kit using the Linux command line. TI SensorTag Unboxing I ordered it at the end of May, and receive it by Fedex on the 18th of July, about 7 weeks later, in the package below. Inside we’ve got a Quick Start Guide for iOS […]

DIY Stripboard/Veroboard Enclosure for Raspberry Pi (Part 2)

Rasbperry_Pi_Stripboard_LED_Relay

Following up my previous post entitled “DIY Modular Stripboard / Perfboard Casing for Raspberry Pi (Part 1)” where I explained how I created an modular enclosure made of perfboard, or the overall concept, I’ve now designed two “smart” sides for the enclosure: a 16-LED stripboard side, and a 5V relay stripboard side. Today, I’ll detail how I’ve done this, with details about electronics, soldering, assembly, the Linux distribution (built with Yocto), as well C programs, HTML page, and (CGI) shell scripts used to light up the 16 LEDs, and control a standard 220V lamp with a relay via my phone’s web browser. 16-LED Stripboard Top Schematics, Soldering, and Testing I had decided to design the top board of the enclosure with several LEDs, 3 LEDs on both side, and a Raspberry fruit (6 red LED) and 2 leaves (4 green LED) in the middle. Before getting started, I did some […]

Freescale SABRE Lite i.MX6 Development Board Unboxing, Wandboard Quad Comparison, and Quick Start Guide

Freescale SABRE Lite is a development board powered by i.MX6 Quad processor with 1GB RAM, SATA, GbE Ethernet, and more. You can get SABRE Lite specifications in my first post about the board. I recently participated in Element14’s “brainteaser” competition for the 4th birthday of their community, where the company offered 9 SABRE Lite development kit to randomly selected participants, and I got lucky. The board can be purchased for $179 from Element14 (MCIMX6Q-SL). I’ll start by showing what in the package, followed by a side-by-side comparison with Wandboard Quad, and show how to getting started by following the Quick Start Guide provided with the board. SABRE Lite i.MX6 Development Kit Unboxing I received the board about 5 days after I provided my address in a large staple carton box with a few goodies. Beside SABRE Lite devkit, the package comes with Element14’s T-Shirt (not my size), double walled tumbler, […]

Play HEVC/H.265 Videos and Embed HEVC Streams into MP4 and TS Files with openHEVC and GPAC

I wrote an introduction to H.265 (aka HEVC) at the end of last year, including instructions showing how to encode videos to HEVC using the reference implementation. It worked but since it was not optimized for speed, it was extremely slow. Today I’ve stumbled across openHEVC, a open source compliant HEVC video decoder written in C, created as a fork of Libav. This is supposed to work pretty well as the implementation was used at Roland Garros Tennis tournament to playback an 720p50 HEVC stream transmitted over DVB-T2, IPTV, and MPEG DASH. Today I’ll mainly tried out the instructions provided on openHEVC github repo including: Build the source and playing a raw HEVC stream with hevc utility Build GPAC (open source multimedia framework), to get MP4Box, mp42ts, and MP4Client utilities. Import a raw HEVC stream into MP4 and TS containers, and play it back with GPAC tools. I’ve performed the […]

12MB Minimal Image for Raspberry Pi using the Yocto Project

Last year, I wrote instructions and provided a download link about a minimal image for Raspberry Pi based on Raspbian. The compressed image is 84MB, and the good thing about it is that you can just use apt-get to install packages. The problem is that it’s not actually that small as once it is uncompressed the rootfs is still a massive 414 MB. So today, I’ll explain how to create a smaller (and custom) image using the Yocto Project, a platform that let you build an embedded Linux distribution matching exactly your project’s requirements. Other advantages are that the build is configurable with config files, so it’s easily reproducible with a few command lines, and it might turn out to be useful to learn more about the Yocto Project as many boards and SoC are now making use of the framework, including Freescale i.MX6 (Wandboard, Olinuxino-imx233, Sabrelite, etc…), the Beagleboard, […]

DIY Modular Stripboard / Perfboard Casing for Raspberry Pi (Part 1)

I plan to play around with Bluetooth 4.0 LE in Linux using the Raspberry Pi as an hardware platform together with a small LCD display and possibly a relay board. Instead of having boards spread around, I thought it might be a good idea if I could design a case for my setup. I wanted to be able to connect small external boards and things like LEDs, it had to be easily assembled and disassembled, modular so that I could add or remove circuits easily, and about as cheap as existing “dumb” cases. So I though why not use stripboards (perfboards) for that? I searched the web to find out if other people had the same idea, and could only find one other person, but he does not appear to have completed assembly, nor actually used the stripboards to add hardware features. I decided to give it a try anyway, […]

Memfault IoT and embedded debugging platform