GPL Source code and SDE for Archos Gen8 Devices

Right at the end of November, Archos released the first version of their Android 2.2 firmware (2.0.54). They now have also released the GPL code for this firmware. http://www.archos.com/support/download/software/sources/gen8-gpl-froyo.tgz In this package, you’ll find the following: Linux Kernel 2.6.29 buildroot – Set of tools to generate the cross-compilation toolchain, the kernel and the root file system A directory called “external”  with the following libraries, tools and drivers: alsa-lib – Audio library blktrace – Driver debugging tool elfcopy –  Tool to generate executable binaries grub – Bootloader iptables – Firewall Tool liblzo  – LZO Compression Library webkit – Web Browser Engine alsa-utils – Audio Tools BlueZ – Bluetooth Protocol Stack elfutils – Tool to manipulate executable binaries hostapd – For Wifi Authentication jdiff – Java Code Analyzer openvpn – VPN Client/Server wpa_supplicant – Wifi tools for WPA/WPA2 bison – Parser Generator dbus – Libray and daemon for IPC (InterProcess Communication) genext2fs […]

Unusual USB Devices in Linux Kernel

Some USB devices (especially cheap ones) are not fully compatible with the USB Stack and when you connect such devices to your target board, the kernel may output errors similar to the one below even though most other devices work perfectly. sd 3:0:0:0: SCSI error: return code = 0x10070000 end_request: I/O error, dev sda, sector 0 Buffer I/O error on device sda, logical block 0 sd 3:0:0:0: SCSI error: return code = 0x10070000 end_request: I/O error, dev sda, sector 8 Buffer I/O error on device sda, logical block 1 sd 3:0:0:0: SCSI error: return code = 0x10070000 end_request: I/O error, dev sda, sector 16 sd 3:0:0:0: SCSI error: return code = 0x10070000 end_request: I/O error, dev sda, sector 24 sd 3:0:0:0: SCSI error: return code = 0x10070000 It previously happened to us with a IDE to USB adapter based on Super Top Bridge ( VID: 0x14CD / PID: 0x6600). The […]

Installing Chrome OS with CD or USB

Chrome OS is a lightweight Linux distribution build around the Google Chrome Browser, it is not related to Google Chrome OS. I suppose they may have to change the name sometimes in the future. To install it, simply download Chrome OS Live CD to try it out on your hardware. Bear in mind this is a Release Candidate version (Chrome OS 0.9.576 RC released on 7th of December 2010) at this time so it should be relatively stable, but expect a few bugs. Here are the main software packages installed in Chrome OS: GNOME 2.30 desktop environment Google Chrome 9.0.576 web browser Google Picasa 2.7 photo manager OpenOffice.org 3.2 office suite GIMP 2.6 image editor Flash Player 10.1 plugin Wine Windows emulator 1.2 Pidgin 2.6 instant messenger Dashboard in browser (See screenshot below) Here are the system requirements of Chrome OS: Processor: Intel Pentium, Xeon or newer; AMD Duron, Athlon, […]

In-Home Displays for Smart Grid – Atmel – Mentor Embedded

I’ve just attended a webinar organized by Mentor Graphics entitled “In-Home Displays: Enabling Smart Grid into every home” with Atmel and Mentor Embedded. This webinar is now available on-demand at http://go.mentor.com/hAz8 This webinar is divided into 2 parts: Frederic Gaillard – Product Marketing Manager at ATMEL – gave an overview of Smart Grid and its different components and presented Atmel Solutions: MCU/MPU, wireless chips (Zigbee/Wi-Fi) and touch screen chipset. Gordon Cameron – Business Development Manager at Mentor Embedded – focused on the difficulties in developing a user interface for In-Home Displays within a short time frame and how Mentor Embedded UI design solution Inflexion could help greatly reduce the development schedule. There was no external files for this webinar, so I created 2 PDF with the most relevant slides for your reference: Atmel Smart Grid and In-Home Displays Mentor Embedded In-Home Displays UI Development Tools Frederic Gaillard shortly explained the […]

Sharing Thunderbird Emails between Windows and Linux

I’ve used Windows XP with Linux in a virtual machine (VirtualBox) for a while. But since this proved to be very slow,  I’ve just installed Ubuntu (dual boot mode) in my PC. However, I wanted to be able to use the same Thunderbird profile in both OS. So here’s how to do: After installating Ubuntu, open a terminal window and: 1. Install Thunderbird: sudo apt-get install thunderbird 2. Start Thunderbird in Profile Manager mode: thunderbird -profilemanager Then create a new profile (any name) and click on “Change folder” and point it to your Thunderbird profile in Windows (Something like: Documents and Settings\username\Application Data\Thunderbird\Profiles\abcdef.default). You may delete the default profile and start Thunderbird. You should then see all your emails and RSS feeds in Thunderbird and receive and send emails in Linux as you used to in Windows XP. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, […]

Linux Scripts to find Public IP Address

In some cases, you may need to know your public IP or the public IP of a server behind a NAT (e.g. for remote SSH login) if the IP is assigned dynamically as is the case for PPPoE connections. Here are several ways to find your public IP in Linux using the shell. 1. Using curl (almost too simple) curl -s http://www.whatismyip.org 2. Using wget wget -q -O – checkip.dyndns.org|sed -e ‘s/.*Current IP Address: //’ -e ‘s/<.*$//’ 3. Using lynx lynx -dump checkip.dyndns.org If you have access to a web browser, you can simply use http://www.whatismyip.org, http://checkip.dyndns.org or http://www.moanmyip.com. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011. www.cnx-software.com

Linaro: Embedded Linux for ARM

Linaro is a Not For Profit (NFP) engineering organisation that works on Linux based open source software and tools. The organisation focuses on the ARM platform, mainly ARM v7A architecture, for example ARM Cortex-A8 or dual-core Cortex-A9 processors and is sponsored by ARM, Freescale, IBM, Samsung, ST-Ericsson, and Texas Instruments. The purpose of Linaro is to reduce the number of different Linux kernel for the ARM platform. They plan on releasing tools and Linux kernel every 6 months. And after about 6 months of existence, with around  80 engineering staff, they managed to release their first public version:  Linaro-10.11 on the 10th of November for TI OMAP4 Panda Board, IGEPv2, Freescale iMX51 and ST-E U8500 platforms. This release is based on Linux 2.6.35 kernel, GCC 4.4 toolchain and uBoot 2010.09. They released Linux 10.11 source code and tools, the hardware packs and the build instructions. Linaro also planned several technical […]

USB Hotplug Parameters and A Simple Linux USB Hotplug Script

USB Hotplug allows your system to detect a USB device has been inserted or removed and perform certain actions upon the USB device detection. The article below is largely inspired by http://linux-hotplug.sourceforge.net/?selected=hotplug which does not seem to work anymore. USB hotplugging involves: MODULE_DEVICE_TABLE support in the USB Device Driver API, so that a driver’s probe() routine is called only when it’s very likely to want to bind to a particular interface. USB always uses this. Support for invoking the hotplug helper (/sbin/hotplug by default) when devices are added or removed. This functionality is enabled only by CONFIG_HOTPLUG. That hotplug helper usually contacts a policy agent which handles the USB-level configuration or activation tasks appropriate to this device and the current system configuration. Boot-time configuration (“cold-plugging”) can be managed by the /etc/rc.d/init.d/hotplug startup script, if the “usbmodules” command line utility is available. (There is also a “diet hotplug” tool for use […]

EmbeddedTS embedded systems design