1. Thanks to Kindle I am back to reading

    I always loved to read. In 6th class in elementary school I took fourteen books from school library at once (when only 3 were allowed). In 8th class I was going there only for required readings as there were no books there which could interest me (tough timing as I read all what liked and no money for new ones).

    Basically during my school life I used several libraries and at most of them has a status of ‘frequent visitor’ which meant no need to say name during books exchange. Also booking of rare books was possible.

    After studies I moved to other city then to another then to another… My amount of books was slowly growing because I wanted not to have too many things. Interesting new books were also usually expensive so compared to my income was not helping. And I somehow skipped searching for new libraries — instead were checking friends’ bookshelves.

    Once I settled down in Poznań and then in Szczecin my collection was slowly growing. And then, in November 2011 I bought myself Kindle Classic. Life got changed…

    First I loaded it with some documents and books which I had on hard drive — technical, science fiction etc. Reading was pleasure. Then I loaded more and more…

    Recently I started making use of promotions announced on “Świat Czytników” website which resulted in more and more books in queue. Then evenings, travels, waiting in queues transformed into reading spaces ;)

    It is good to read a lot again.

    Written by Marcin Juszkiewicz on
  2. Ubuntu 12.04 ‘precise’ and cross compilation of ARM kernels

    Over year ago I wrote How to cross compile ARM kernel under Ubuntu 10.10 and this became one of most popular posts on my website. It may work still but it is terribly outdated so I decided that it is a time for update.

    Users of Ubuntu 12.04 ‘precise’ have much simpler situation when it comes to cross compilation of Linux kernels than ones who use older releases. Everything is now in distribution, we have a lot of packages converted to multiarch so instruction is much shorter.

    There are few steps to cross compile Linux kernel under Ubuntu 12.04 ‘precise’ (for “armhf” which is officially supported now):

    • Install cross compiler:

    apt-get install gcc-arm-linux-gnueabihf

    • Fetch kernel source:

    apt-get source linux-source-3.2.0

    • Install packages required to build kernel:

    apt-get build-dep linux-source-3.2.0

    • Build kernel:

    cd linux-3.2.0; dpkg-buildpackage -b -aarmhf

    And that’s all. Linaro kernels will be as easy to build as Ubuntu one on next days as we have to update packaging to recent Ubuntu version.

    Written by Marcin Juszkiewicz on
  3. I joined MOTU team in Ubuntu

    I applied for MOTU (Masters Of The Universe) membership few days ago and today during Developer Membership Board meeting my application was part of agenda.

    Becoming MOTU is more complicated than gaining PPU (Per Package Upload) permissions which I got during UDS-O in Budapest. Members of board asked me many questions — it took 45 minutes to get from introduction to voting.

    But this is how it should be done — MOTU is responsibility for quite big amount of packages in Ubuntu. Anyway, we got to voting:

    15:57 < meetingology> Voting ended on: Should Marcin Juszkiewicz become MOTU?

    15:57 < meetingology> Votes for:5 Votes against:0 Abstentions:0

    And now I am proud member of MOTU team! Looks like next thing to apply for would be Debian Membership. I planned to do it in 2004 but OpenEmbedded took my attention ;)

    Written by Marcin Juszkiewicz on
  4. Updated cross toolchain for Ubuntu

    During last two weeks I was working on updating PPA with cross toolchain for Ubuntu. Current development branch (12.04 ‘precise’) got gcc 4.6.2 and 4.5.3, binutils 2.22, eglibc 2.15 and linux 3.2 headers.

    Then I started work on getting those updates also for previous LTS (10.04 ‘lucid’) and for previous stable release (11.10 ‘oneiric’). Versions between those two (10.10 ‘maverick’ and 11.04 ‘natty’) are not supported but binaries built for ‘lucid’ should work just fine on them.

    It is time-consuming cause I had to run many builds to make sure that everything is properly patched etc. I listed all required tasks in “Toolchain update for Linaro Toolchain Backports PPA for 12.03” blueprint on Launchpad. Most time-consuming is waiting for PPA builders but at that phase I was just checking did they finished already due to working on other projects.

    So if you are stuck on one of released versions of Ubuntu and need fresh cross compiler targetting “armel” (there is no “armhf” for this PPA) consider using PPA with cross toolchain for Ubuntu.

    And do not forget to report any bugs found to armel-cross-toolchain-base and gcc-4.6-armel-cross (or gcc-4.5-armel-cross if you use older one).

    Written by Marcin Juszkiewicz on
  5. I am tired of Raspberry/Pi

    Please people… stop asking me about Raspberry/Pi. I do not want it, do not plan to buy one (when they will be finally available for normal people) and for sure do not plan to support it.

    Raspberry/Pi may look as interesting hardware to you but it does not have to mean same to others. Want to run desktop? 256MB of memory means really crippled one (last time I saw this amount of RAM in desktop computer right before opening it to add 512MB stick). Sure, for 25-35 USD it is proper range as memory is probably the most expensive part. Device may be good for using it in more embedded environment where GPIO/I²C/I²S/SPI/UART matter — expansion connector provides those signals.

    But I would rather buy BeagleBone to play with peripherials connected to such pins. Someone may ask “why? it is more expensive”. Reason is simple — it is in production, already has expansions which adds things like video output, touchscreens. And it has ARMv7 cpu which allows me to run any ARM distribution available today — so Debian ‘armel/armhf’, Ubuntu, Fedora, OpenSUSE, Ångström (which is preinstalled with great IDE to play with device already) or anything other.

    I do not need small device which can run XMBC or Quake — have private PandaBoard which can do that too and has few things more than Raspberry/Pi.

    And I do not think that companies which do software should start working on <100USD hardware like article at Techblaze suggests.

    Written by Marcin Juszkiewicz on
  6. SD cards die

    So called ‘low cost’ developer boards (like BeagleBoard xM, PandaBoard, Snowball, MX53 Quick Start) do not have NAND flash on them so people are using SD/MMC cards as boot media and storage. So we, developers, went to shops and bought SD cards. Some got class4 ones cause budget was low already, some grabbed class10 ones hoping that they will be fast, other took class6.

    I got some 4GB Transcend class10 ones. They worked, gave me 15MB/s on read and were fine. Until recently they started giving strange kernel output, MMC timeouts, I/O errors which resulted in filesystem going into read only mode. As I prefer to have working board then wondering how much time it will survive I trashed both cards. Good that I had some spare unknown 8GB microSD ones. But in last ~year I had to throw away 4 SD cards…

    One of solution for it is moving rootfs to some more reliable storage. I did that with MX53 Quick Start — it has 320GB Serial-ATA harddrive connected. So for PandaBoards I could use 8-16GB thumb drives or USB connected hard drives. I had this in past when there was no mx53 hardware at my desk. But this means extra costs, additional cables, probably even another set of power cables…

    Will have to check market for good reliable SD cards soon. 8-16GB ones so there will be space available for doing builds. Or will switch to old school NFS root which requires only 64MB cards — just to load bootloader, kernel, initrd. Other option is a network storage like NBD, AoE or iSCSI but this requires more configuration.

    Written by Marcin Juszkiewicz on
  7. Bought Archos 80 G9 Turbo tablet

    During last Linaro Connect I bought myself an Android tablet. After checking what is on market decided to buy Archos 80 G9 Turbo. According to Amazon product page it had to have 1.5GHz OMAP4460 cpu and 1GB of memory. But it did not…

    Marketing droids from Archos company should be … and … then … and again … — after that … or … and finally … (put any ways of doing deadly harm into … and repeat any amount of times). Why? There is no such thing as “Archos 80 G9 Turbo” — nevermind that I have one of them on my desk. So far there are at least three models with this name:

    • OMAP4430 1.2GHz 512MB ram
    • OMAP4460 1.5GHz 512MB ram
    • OMAP4460 1.5GHz 1GB ram

    You can easily buy first model. Best Buy has it, Adorama has it, J&R has it, Amazon sells it. Second model was expected to land on shelves in December 2011. According to XDA developers forum few of them were even sold as people have them. Last model is listed on Amazon (but first one is what you get) and according to one sources it will be released in March 2012, other says that there will not be such thing. Marketing mess is lightest description which I can write without swearing.

    So I got first one. First though was “WTF?!?!!?!?!?!!!” as I got slowest option. Even started returning procedure but as all US shops had only this version I gave up and decided that even with this technical specification it is better tablet then I had before (which was Hannspad SN10T1). Fast cpu, 4:3 screen with 1024x768 resolution, quite good build quality, video output.

    Tablet runs Android 3.2 ‘honeycomb’ and does it nicely. Upgrade to 4.0 ‘ice cream sandwich’ was announced to be done in this month. So from software perspective it is done properly. I had some problems with rooting procedure from XDA developers but once you do it in order (and take files from other thread to get 3.2.80 firmware) device will work just fine. Have to admit that system layout on device looks overcomplicated (175MB squashfs as / for example) but it works. Anyway I am waiting for developer firmware (I was told that they will be available ‘soon’ (for any definition of ‘soon’)).

    During first days of using I noticed that some applications refuse to work properly on XGA screen, some are resized/rescaled but problems usually are with games or poorly written apps (like Facebook one). But it is visible that keeping Honeycomb under stone (aka ‘closed source’) resulted in many applications not ready to be used on tablets. Even Google+ looks like it does on a phone…

    I am slowly moving to use Archos as a morning news device (Twitter, Facebook, Google+ and Google Reader) — it is perfect for it. Reading webpages in landscape or portrait modes is pleasure as device is easy to hold and screen is wide enough in any of them (which was my main complain with Hannspad).

    Had to order miniHDMI -> HDMI adapter (normal size connector would even fit but it is too big for this form factor) cause they do not add it in a box. When it will arrive I will check how good movies are played after connecting to 42” plasma capable of 1080p. OMAP4 cpu should decode any video at this resolution without problems but I wonder how device deals with 4:3 internal screen and 16:9 external one. Would be nice to watch Youtube videos fullscreen.

    Playing games is fun. Fieldrunners finally does not need scrolling, Great Little War Game is also better than on my Nexus S. From “racing” games so far I tried Asphalt6 (available at XDA developers forum), Shine Runner and Reckless Getaway — all run and look cute but accelerometr based steering is not comfortable with tablet size. Also games like Mahjongg or Solitaire are possible (I consider such games unplayable on phone).

    Battery life is better than on my Nexus S. Partially because lack of GSM and bigger battery, but I think that due to power management done better.

    I will not tell how good it is when it comes to read e-books because I have Kindle for it already.

    Back to hardware. There is USB socket for optional 3G stick. Plugged dongle from wireless keyboard/trackball combo there — not recognized due to not be USB 2.0 device. Plugged thumbdrive and got it recognized (first time I got some kernel oops and no access to storage, had to reboot tablet). Did not tried other devices.

    There is just one speaker at back of device. Definitelly too small and lonely. Nokia N800 which was released 5 years ago had stereo speakers… So for gaming I strongly suggest headphones.

    Ugly thing is that when you push back of case with left hand fingers screen will react to it — looks like something is pushing screen. It does not look professional…

    Ending summary: so far I am satisfied. Maybe one day will try one of those crazy builds like Ubuntu ;D

    Written by Marcin Juszkiewicz on
  8. Flashing U-Boot on Efika MX Smartbook

    From time to time I read posts where people wrote that their Efika MX Smartbook does not boot any more. The only thing which it does is white power led blinking about twice per second. Standard reply in such case is “send device back to Genesi”.

    Some time ago a friend of mine borrowed Efika MX Smartbook from me. During his experiments he managed to get netbook into such state. I have serial/jtag debug dongle so decided to take a look at it (and unbrick device). I managed to fix it but also somehow broke serial port so can not check why my automate way does not want to work.

    What needs to be done to get Smartbook back to live? Few things:

    Needed steps:

    1. Repartition SD card. You can use any tool for it. All what has to be done is set up first partition at 1MB offset so we have space for U-Boot.
    2. Format partition (if needed) as FAT.
    3. Run “sudo dd if=u-boot.imx of=/dev/sdd bs=1k seek=1” (replace /dev/sdd with your SD card).
    4. Put card into SD slot of Efika MX Smartbook.
    5. Take out keyboard — you need to use small screwdriver to push holes near F1, F6, F10, End keys.
    6. Change DIP switches - they are in a middle of motherboard. You need to reverse default setup.
    7. Power on your Efika. There should be U-Boot output on screen. You may even get system loaded up at this step ;)
    8. Take out SD card and copy ‘boot.scr’ to it.
    9. Power off Efika, put SD card and boot.
    10. Old U-Boot will be stored into NOR flash (output will be visible on screen).
    11. Change DIP switches - they are in a middle of motherboard. You need to reverse them to default setup.
    12. Put keyboard back.
    13. Take out SD card.
    14. Boot your Efika MX Smartbook — operating system should load.

    Some information:

    • old U-Boot got flashed because new one was not tested for NOR boot
    • finding out information for this how to took me few hours
    • this procedure can be done without Efika MX Smartbook serial/jtag dongle
    • similar procedure can be used for Efika MX Smarttop but as I do not have such I can not offer help

    Thanks goes to:

    • Genesi for giving me free Smartbook and serial/jtag dongle
    • Marek Vasut for his work on mainlining U-Boot support for Efika MX devices
    • Matt Sealey for some hints on IRC
    Written by Marcin Juszkiewicz on
Page 42 / 106