Nokia 770

  1. Introduction
  2. Recommended Accessories
  3. Flash Newest Image
  4. Install XTerm and Root Access
  5. Tethering to a Bluetooth Phone
  6. Installing a SSH Client and Server
  7. Booting from MMC
  8. Using GPS and Maemo Mapper
  9. Resources

Booting from MMC

Booting from MMC, if you have a large enough card, has three advantages. One, it's faster, as the filesystem won't be using a compressed and journalized filesystem (jffs2). Two, a working copy of the original system will still exist, just in case something should go wrong. Three, you'll have plenty of space for installing applications.

Note: I pretty much followed the steps here, with a few changes.

  1. Connect to the internet.

  2. Type sudo gainroot

  3. Now we'll partition the MMC card. Type

    apt-get install e2fsprogs
    

    If installation failed, you might need a different Maemo.org repository, if the mistral repository you used in "Install XTerm and Root Access" is down (as it often is):
    Web address: http://repository.maemo.org/
    Distribution: gregale
    Components: free non-free

  4. Type:

    umount /media/mmc1  
    sfdisk /dev/mmcblk0  
    

    This will prompt you to give a partition size for each partition; we'll make 2 partitions. The first will be FAT16 (type 6) - the partition we see when we connect the 770 to a computer with USB. The second will be our boot partition, where our home directory is stored. I have a 2 gig MMC and used the following layout. Note, the 15000 refers to cylinders, each of 32 KB, so 15000 cylinders is 480 MB. So the first partition goes from 1 to 15000 with a partition type 6, or VFAT. The second goes from 15001, to the end fo the disk, so it's about 1.5 gb. The third and fourth partitions are empty.

    /dev/mmcblk0p1: 1,15000,6  
    /dev/mmcblk0p2: 15001,,  
    /dev/mmcblk0p3:  
    /dev/mmcblk0p4:  
    
  5. Now we format our partitions. First the FAT partition:

    mkdosfs /dev/mmcblk0p1
    shutdown -r now
    

    When the tablet restarts, type

    sudo gainroot  
    mke2fs /dev/mmcblk0p2  
    shutdown -r now
    
  6. When the tablet restarts, connect to the internet and download this file to the documents folder.

  7. Type

    sudo gainroot  
    cd /home/user/MyDocs/.documents/  
    tar zxvf initfs_flasher.tgz  
    cd initfs_flasher  
    mv bootmenu.conf.n770.example bootmenu.conf
    
  8. Close all applications, and disconnect from internet. Then type:

    ./initfs_flash
    

    This will ask you several questions, here is what I recommend (type what's in bold):

    backup? no
    remove extra stuff? yes
    found, do you want to add it to initfs? yes
    ready for flashing this image? yes
    Press enter to reboot device

  9. Press enter. Boot from internal flash as we haven't cloned the system yet on to the MMC.

  10. Once restarted, connect to the internet, open XTerm, and type

    sudo gainroot
    

    Then

    insmod /mnt/initfs/lib/modules/current/ext2.ko  
    mount /dev/mmcblk0p2 /opt  
    mkdir /floppy  
    mount -t jffs2 /dev/mtdblock4 /floppy
    
  11. We're going to create a tar pipe that copies over everything to the MMC. First, you need a different version of tar than you have to make sure everything is copied (very important)

    apt-get -d install tar
    

    Ignore the warnings.

    mkdir /tar-temp/  
    cd /var/cache/apt/archives/  
    dpkg -x tar*.deb /tar-temp/  
    
  12. Here we start the copying. This takes a while. At least 15+ minutes:

    /tar-temp/bin/tar cf - -C /floppy . | /tar-temp/bin/tar xvf - -C /opt
    
  13. When that's finished, type the following to boot the system from MMC as the default:

    chroot /mnt/initfs cal-tool --set-root-device ask:mmc2
    
  14. Now we unmount our temporary directories restart the system (from MMC 2)

    umount /opt
    umount /floppy
    shutdown -r now
    

Once restarted, you should be running off of MMC!