Installing Jlime Muffinman on the Ben Nanonote

This is a simple guide for installing JLime using a Linux desktop PC. Firstly, although we can never promise anything, the nanonote is suppose to be unbrickable which in essence means that you can never make it unfixable. So if this doesnt work for you, start over.

What will you need to install JLime?

  • Ben Nanonote
  • Usb cable (included inside box)
  • A computer with any Linux distribution (you can use a LiveCD which can be run without installing it) with an free usb connection.
  • Userland, Kernel and bootloader from here
  • about 15mins (hardcore Linux geeks about 10) of spare time and some patience.

Installation

Installation on NAND

# DO IT just ONCE
apt-get install libconfuse0
wget http://projects.qi-hardware.com/media/upload/xburst-tools/files/xburst-tools_0.0+201002-1_i386.deb
dpkg -i xburst-tools_0.0+201002-1_i386.deb
# DOWNLOAD THE KERNEL AND ROOTFS FOR NAND
wget http://jlime.com/downloads/releases/muffinman/bootloaders/openwrt-xburst-qi_lb60-u-boot.bin
wget http://jlime.com/downloads/releases/muffinman/kernels/uImage-2.6.34-qi_02aug2010-for-NAND
wget http://jlime.com/downloads/releases/muffinman/userlands/beta/Jlime-muffinman-image-2010.1-ben-nanonote.rootfs_READY_beta4_01nov2010.ubi
# FLASH
# Put the Nano into usb-boot-mode. Hold the __U__ key while powering
# on the NanoNote (__POWER__ + __U__) to enter software usbboot mode.
# Note, the device screen will not power on in USB BOOT mode. 
usbboot -c "boot"
sed -i 's/NAND_FORCEERASE = .*/NAND_FORCEERASE = 1/' /etc/xburst-tools/usbboot.cfg    # <-- DO IT just ONCE
usbboot -c "nerase 0 4096 0 0"
usbboot -c "nprog 0 openwrt-xburst-qi_lb60-u-boot.bin 0 0 -n"
usbboot -c "nprog 1024 uImage-2.6.34-qi_02aug2010-for-NAND 0 0 -n"
usbboot -c "nprog 2048 Jlime-muffinman-image-2010.1-ben-nanonote.rootfs_READY_beta4_01nov2010.ubi 0 0 -n"

If you have problems with flashing, please check this page

Installation on MicroSD

For advanced users

Use the latest official Qi bootloader (16-Jun-2010+) then divide the MicroSD card into 2 partitions: ext2 and swap (at least, 32MB of swap). Unpackage the Jlime-muffinman-image-2010.1-ben-nanonote.rootfs_READY_beta4_01nov2010.tar.gz file into the first ext2 partition. Boot pressing 'M' + PowerON button.

For typical users

  • Step 1. Prepare the Micro SD Card
  • Step 2. Download the Neccesary Files
  • Step 3. Install the System
  • Step 4. Boot the System
Step 1: Prepare the Micro SD Card

Divide the MicroSD card into 2 partitions:

  • /dev/sdc1 : ext2, 128MB or more. Better more.
  • /dev/sdc2 : swap, optional how large but 32MB is usually enough

Note: the sizes are specific for the userland file mentioned below

Warning! : the name of the device files (/dev/sdc1, /dev/sdc2, ..) above are only examples. I assume that the MicroSD card is /dev/sdc, but it could be different in your PC, check that before and use the proper names of the device files. If you do not know how to split your MicroSD card then read Partitioning your Compact Flash card.

Creating the file systems:

mkfs.ext2 /dev/sdc1
mkswap /dev/sdc2
Step 2: Download the Neccesary Files
Step 3: Install the System
  • If your Nanonote does not have the latest Qi official bootloader : Install the openwrt-xburst-qi_lb60-u-boot.bin bootloader file. If you do not know how to Flash the bootloader read the Debian_intallation instructions.
  • Install the Jlime Muffinman userland on ext2 file system (extract the file as root only). Example:
mount /dev/sdc1 /mnt
cd /mnt
tar xvzf /tmp/Jlime-muffinman-image-2010.1-ben-nanonote.rootfs_READY_beta4_01nov2010.tar.gz
cd /
umount /dev/sdc1
Step 4: Boot the System

Remove the battery. Put the MicroSD card into your Ben Nanonote. Press 'M' and plug the USB cable, or put the battery again.

Read the Muffinman Manual now.

Install Xburst tools

This is a tool that enables you to reflash the nanonote. Here we describe how you download and install this tool:

wget http://downloads.qi-hardware.com/software/xburst-tools/xburst-tools_0.0+200906.orig.tar.gz
tar -xzvf xburst-tools_0.0+200906.orig.tar.gz
cd xburst-tools.git
make
su root
make install

Installing through USBOOT (OLD WAY)

READ! we dont have any ubifs images currently, so installing onto NAND is not possible. We only keep this section so that when we get an ubifs image we can easily adjust the wiki for installation instructions.

Please note that we expect that you have downloaded bootloader, kernel and userland into an folder. Below we will refer them as bootloader-image.bin, kernel-image and rootfs.jffs2 but they can of course be called anything.

Preparing (read this first!) Finding the USBBOOT pins : Remove the battery and take a look inside the nanonote. In the empty battery slot you will see a plastic piece with text on it (GND/RXD/TXD and USB Boot). We are interested in the USB Boot label. If you look closely you will see that there are 2 metal pins there (can be hard to see since the plastic covers part on of one pin). You will need to shorten(connect those points) those two pins (with whatever you see fit), I personally prefer using tin foil that I press hard against those pins. nano_behind.jpg

a) Stop your nanote and remove the battery.

b) Insert the usb cable, if the nanonote turns on, Press U and ResetButton (at the back of ben) then goto STEP_e) or just remove the cable and try again. You want it to stay off.

c) Shorten the two pins as described, when certain press the power button for about 2-3 seconds. If nanonote remains off (no lcd) then you are most likely in usbboot mode.

e) As root do this (on your laptop/pc)

usbboot -c "boot"
usbboot -c "nprog 0 bootloader-image.bin 0 0 -n"
usbboot -c "nprog 1024 kernel-image 0 0 -n"
usbboot -c "nprog 2048 rootfs.jffs2 0 0 -n"

f) You are done, remove usb cable and restart nanonote!

Updating kernel

You might want to only update the kernel while having the userland and bootloader remaining. This is almost same as the NEW WAY howto above, just that we only select parts to install.

a) remove battery and insert usb cable

b) Press U + PowerButton for 3 seconds. You should see something inside dmesg (new usb device detected)

c) write (change kernel-image to your fresh kernel name)

usbboot -c "boot"
usbboot -c "nprog 1024 kernel-image 0 0 -n"

once that is done remove cable and restart nanonote.