Ipaq Setup

From MoDe

Table of contents


It is very important that you know how to install Familiar Linux on your Ipaq since you will more than likely have to do this at least a couple of times throughout the semester, so learn it well. As such, be sure to always have a backup of whatever code you write for you ipaq, cellphone, etc.

Installing Familiar Linux

UPDATE: Everyone is advised to upgrade to v0.8.3. I know Singapore has already done this. Instructions for installation are still the same except for the sections on Python installation (see below). Just grab this image file (http://familiar.handhelds.org/snapshots/v0.8.3/RC2/unsorted/gpe-image-v0.8.3-h3900.rootfs.jffs2) instead of the .jffs file mentioned below.


We will be installing Familiar Linux v0.8.2, the current stable release from Familiar Linux (http://familiar.handhelds.org), part of Handhelds.org (http://handhelds.org), which contains a lot of information regarding Linux on handhelds. There is also a wiki that contains more up-to-date information Handhelds.org wiki (http://www.handhelds.org/moin/moin.cgi/FrontPage).

  • Go to the link under the News! section and click on the link for Familiar v.0.8.2 released. Place the ipaq in the cradle and connect it to the serial port on your PC. Make sure you have either Hyperterminal on Windows or Minicom on Linux (I don't know the program for Max OSX).

Open HyperTerminal or Minicom on the PC, and create a new connection using the proper serial COM port. Here are the settings to use:

   Bits per second:	115200
   Data bits:		8
   Parity:		None
   Stop bits:		1
   Flow Control:	None

If hardware handshaking can be also configured, make sure hardware handshaking is disabled. After connecting, a 'boot>' prompt should appear. If it doesn't, hit "Enter" to make it appear.

  • Under Download, select stable v0.8.2, h5500 (our Ipaqs are actually H5550), GPE. Then click download.
  • Untar the package. It should include BootBlaster.exe, a bootldr.bin.gz file, and a .jffs2 file.
  • All of the IPAQs should already have their bootloaders upgraded to the latest version, so you can skip to step 5 of the installation (http://familiar.handhelds.org/releases/v0.8.2/install/install-serial.html) on the page - under install via Serial Port
  • Remember in this step to follow the instructions for the H5xxx models. This entire process should take around 30 min. After the image has been flashed, issue the following command at the prompt:
   boot> boot
  • You should see the GPE splash screen after a bit, and eventually will be taken to calibration and user setup screens. If for some reason the gpe splash screen doesn't go away after a while (say 5 min), remove the ipaq from it's cradle and hit the reset button (located on the bottom right of the ipaq) with your stylus. If you still have issues, let me know and we'll get you another ipaq.
  • After setup is complete, login to your ipaq and make sure you have wireless access. Check this with ifconfig:
    root@h3900:~# ifconfig
    wlan0     Link encap:Ethernet  HWaddr 00:02:8A:B7:CB:3C
    inet addr:128.30.7.71  Bcast:128.30.255.255  Mask:255.255.254.0
    inet6 addr: fe80::202:8aff:feb7:cb3c/64 Scope:Link
    UP BROADCAST RUNNING  MTU:1500  Metric:1
    RX packets:16833 errors:0 dropped:0 overruns:0 frame:0
    TX packets:1304 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:100
    RX bytes:3937140 (3.7 MiB)  TX bytes:142224 (138.8 KiB)

Check that you can ssh into your ipaq by doing: ssh root@<your ipaq's ip>.

  • If you don't get an ip, do the following:
    root@h3900:~# ifdown wlan0
    root@h3900:~# ifup wlan0

Otherwise, try rebooting the ipaq as familiar sometimes has difficulty detecting the wireless card after first install. NOTE: For those trying to connect to MIT Wireless, some of the ipaqs might not be registered yet, in which case you will have to register it either by using the minimo web browser that comes with familiar or registering the mac address manually via your pc's ethernet or wireless card (you can change the mac address using ifconfig under Linux and MacOSX. I don't know if there's a way to do it under Windows).

  • The ipaq uses the ipkg system for downloading and installing software. The system is very similar to apt and yum. The repository (known as a feed) for packages is located at Familiar Feed (http://familiar.handhelds.org/releases/v0.8.2/feed/). Familiar should already be setup to download from that feed, so you shouldn't have to change anything. The configuration file is located in /etc/ipkg.conf. Run the following commands:
    root@h3900:~# ipkg update
    root@h3900:~# ipkg upgrade

This will update your ipaq with the latest packages.

  • Next, check that bluetooth is working correctly on your ipaq. Do this by first turning on the bluetooth receiver using the bluetooth manager located at the bottom panel (if it's not there, add it by selecting a blank area in the panel, then Add->Bluetooth Control). You should see a blue LED start flashing at the upper left corner. Check that the receiver is working by issuing the following command:
    root@h3900:~# hciconfig -a
    
    hci0:   Type: UART
    BD Address: 08:00:17:1B:0A:21 ACL MTU: 339:4 SCO MTU: 60:9
    UP RUNNING PSCAN ISCAN
    RX bytes:363 acl:0 sco:0 events:13 errors:0
    TX bytes:310 acl:0 sco:0 commands:13 errors:0
    Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    Packet type: DM1 DH1 HV1
    Link policy: RSWITCH HOLD SNIFF PARK
    Link mode: SLAVE ACCEPT
    Name: 'h3900'
    Class: 0x120112
    Service Classes: Networking
    Device Class: Computer, Handheld
    HCI Ver: 1.1 (0x1) HCI Rev: 0x180 LMP Ver: 1.1 (0x1) LMP Subver: 0x180
    Manufacturer: RTX Telecom A/S (21)

If you get an error message saying "Connection Timed Out", then the receiver was not recognized, in which case try turning the radio off and on again or rebooting the ipaq. All of the ipaqs given out should have a working bluetooth antenna. If you have another bluetooth device around, try running:

    root@h3900:~# hcitool scan

This should find any nearby bluetooth devices - displaying their bluetooth address and name.

Installing Python

  • The current release of Python on Familiar is 2.4.1. Install it by running:
   download python core here python-core (http://familiar.handhelds.org/releases/v0.8.2/feed/world/python-core_2.4.1-ml2_arm.ipk)
   root@h3900:~# ipkg install python-core_2.4.1-ml2_arm.ipk

This installs a bare-bones version of python on your ipaq. Many of the standard libraries are missing, so you probably won't be able to do much with it. Check that python is installed correctly by issuing:

   root@h3900:~# python
   Python 2.4 (#2, Apr  8 2005, 00:01:41)
   [GCC 3.4.3] on linux2
   Type "help", "copyright", "credits" or "license" for more information.
   >>>

At this point, you have minimal python working on your ipaq. If you want to install more packages, please check this page (http://www.vanille.de/projects/python.spy) as Familiar uses the python packages built from this project. I would recommend installing the "python-lang" package as well since it contains many libraries found in standard python, and you'll need it if you want gtk to work (see the next step). As of right now, you can only browse the individual packages to see what modules they contain.

  • UPDATE In Familiar v.0.8.3, pygtk has been added back into the feed, so you can simply do "ipkg install -force-depends python-pygtk". The same applies for python-lang and python-io (i.e., "ipkg install python-lang" and "ipkg install python-io"). Also, there is updated version of python gtk called "python-pygtk2" which does have the correct dependencies. Initial tests seem to show that it works fine.
  • Next, install GTK bindings for python. Unforutnately, this package is not available in any feeds from handhelds.org for some reason, so we'll have to install it manually. Perform the following commands:
   root@h3900:~# wget http://familiar.handhelds.org/releases/v0.8.2/feed/world/python-pygtk_2.4.1-r0_arm.ipk
   root@h3900:~# ipkg install -force-depends python-pygtk_2.4.1-r0_arm.ipk

The -force-depends is needed as there is a bogus dependency on glib-dev, which is actually called libglib-dev.

Check that you have gtk working by doing:

   root@h3900:~# python
   Python 2.4 (#2, Apr  8 2005, 00:01:41)
   [GCC 3.4.3] on linux2
   Type "help", "copyright", "credits" or "license" for more information.
   >>> import gtk
   >>>

Make sure to do this either directly on the ipaq or via an ssh session with x11-forwarding enabled, or else you'll get an error.

GTK is a toolkit for creating GUI's on Linux - more info can be found here (http://www.gtk.org) and here (http://www.pygtk.org/). We'll be using Glade along with GTK to build interfaces in python. Glade is a tool for visually creating GUI's for GTK, and makes rapid-prototyping extremely easy. There are links to tutorials and references regarding python gtk and glade on the PyGtk homepage that you can go through on your own.

  • In case you get an error message which says "ImportError: No module named linecache" download the lang (http://familiar.handhelds.org/releases/v0.8.2/feed/world/python-lang_2.4.1-ml3_arm.ipk) package and install it in the same way you installed the gtk package. Try the import command again with gtk and it should work now!
   >>> import gtk
   >>>
  • Where to find the socket module?

You may find initially that import socket doesn't really work. All you have to do is download the io (http://familiar.handhelds.org/releases/v0.8.2/feed/world/python-io_2.4.1-ml2_arm.ipk) package and install it as before and you are done!

Misc Packages and Customizations

  • Familiar by default includes the browser minimo (mini version of mozilla). To save space, I recommend removing it ("ipkg remove minimo") since you shouldn't need it for the course unless you want to use it in your final projects for whatever reason.
  • Familiar comes with vi by default. If you prefer emacs, install the micro-emacs package ("ipkg install micro-emacs"). The command to start microemacs is "mec".
  • If you want the "less" utility, you'll have to install that separately as well ("ipkg install less").
  • If you don't want to have to login everytime you reboot your ipaq, edit the file /etc/sysconfig/gpelogin and set AUTOLOGIN="true".
  • If you don't like having to ifconfig everytime you want to ssh into your ipaq, you can use the noip dynamic dns service to bind your ipaq's ip to a hostname. I've compiled a version for ARM which you can obtain from the 6.883 feed below ("ipkg install noip"). For info on setting up a no-ip account and how to use no-ip, visit their homepage (http://www.no-ip.com/). The ipkg you downloaded will install noip2 to /usr/bin, so you can start it with just "noip2 -C" (you will need to manually create the /usr/local/etc/ directory first as that's where the configuration file is expected by default).

6.883 Ipkg Feed

  • The 6.883 ipkg feed is now live on Athena. It is located at http://web.mit.edu/6.883/feed. Please update your /etc/ipkg.conf file with this location and then run "ipkg update". All ipkg that we provide for this class will be available here. If you would like to submit an ipkg to this for everyone to use that you believe would be useful and is not available from the familiar feeds, please let us know and we can add it.


--Ning Song (mailto:nsong@csail.mit.edu)

Last Edit: 2/21/06











[We are delicate. We do not delete your content.] [l_sp2006] http://top20man.in.ua/black-eyed-peas-mp3 black eyed peas mp3] madonna mp3 (http://top20man.in.ua/madonna-mp3) eminem mp3 (http://top20man.in.ua/eminem-mp3) ringtone maker (http://ringtonemaker.blogs.eurosport.com/) godsmack awake (http://top20man.in.ua/godsmack-awake) godsmack voodoo (http://top20man.in.ua/godsmack-voodoo) sean paul temperature (http://top20man.in.ua/sean-paul-temperature) sean paul we be burnin (http://top20man.in.ua/sean-paul-we-be-burnin) bad day daniel powter (http://top20man.in.ua/bad-day-daniel-powter) system of a down mp3 (http://top20man.in.ua/system-of-a-down-mp3) sean paul mp3 (http://top20man.in.ua/sean-paul-mp3) metallica mp3 (http://top20man.in.ua/metallica-mp3) shakira mp3 (http://top20man.in.ua/shakira-mp3) rascal flatts what hurts the most (http://top20man.in.ua/rascal-flatts-what-hurts-the-most) rascal flatts bless the broken road (http://top20man.in.ua/rascal-flatts-bless-the-broken-road) red hot chili peppers under the bridge (http://top20man.in.ua/red-hot-chili-peppers-under-the-bridge) james blunt wisemen (http://top20man.in.ua/james-blunt-wisemen) bad day daniel powter (http://top20man.in.ua/bad-day-daniel-powter) godsmack mp3 (http://top20man.in.ua/godsmack-mp3) Godsmack Awake (http://blog.yukonho.com/index.php?blog=44) godsmack voodoo (http://blog.yukonho.com/index.php?blog=45) sean paul temperature (http://blog.yukonho.com/index.php?blog=46) Sean Paul We Be Burnin (http://blog.yukonho.com/index.php?blog=47) natasha bedingfield unwritten (http://blog.yukonho.com/index.php?blog=48) 50 cent mp3 (http://blog.yukonho.com/index.php?blog=49) Bad Day Daniel Powter (http://blog.yukonho.com/index.php?blog=50) Daniel Powter mp3 (http://blog.yukonho.com/index.php?blog=51) Goodbye My Lover James Blunt (http://blog.yukonho.com/index.php?blog=52) System Of A Down mp3 (http://blog.yukonho.com/index.php?blog=53) Sean Paul mp3 (http://blog.yukonho.com/index.php?blog=54) Metallica mp3 (http://blog.yukonho.com/index.php?blog=55) Shakira mp3 (http://blog.yukonho.com/index.php?blog=56) Black Eyed Peas mp3 (http://blog.yukonho.com/index.php?blog=57) Madonna mp3 (http://blog.yukonho.com/index.php?blog=58) eminem mp3 (http://blog.yukonho.com/index.php?blog=59) Fall Out Boy Grand Theft Autumn (http://blog.yukonho.com/index.php?blog=60) Jack Johnson mp3 (http://blog.yukonho.com/index.php?blog=61) oscar dresses (http://blog.yukonho.com/index.php?blog=62) mother of the bride dresses (http://blog.yukonho.com/index.php?blog=63) cocktail dresses (http://blog.yukonho.com/index.php?blog=64) Flower Girl Dresses (http://blog.yukonho.com/index.php?blog=65) Formal prom Dresses (http://blog.yukonho.com/index.php?blog=66) Plus Size Prom Dresses (http://blog.yukonho.com/index.php?blog=67) Free Verizon Ringtone (http://blog.yukonho.com/index.php?blog=68) godsmack i stand alone (http://top20man.in.ua/godsmack-i-stand-alone) goodbye my lover james blunt (http://top20man.in.ua/goodbye-my-lover-james-blunt) [fall out boy grand theft autumn (http://top20man.in.ua/fall-out-boy-grand-theft-autumn) jack johnson mp3 (http://top20man.in.ua/jack-johnson-mp3) natasha bedingfield unwritten (http://top20man.in.ua/natasha-bedingfield-unwritten) 50 cent mp3 (http://top20man.in.ua/50-cent-mp3) nextel ringtone (http://blogs.wwwcoder.com/cleo/) bad day daniel powter (http://top20man.in.ua/bad-day-daniel-powter) daniel powter mp3 (http://top20man.in.ua/daniel-powter-mp3) verizon ringtone (http://verizonringtone.forumco.com/) US Cellular Ringtone (http://uscellularringtone.forumco.com) free sprint ringtone (http://novogate.com/board/5907/222695-1.html) verizon ringtone (http://4898.rapidforum.com) verizon ringtone (http://blogs.heraldextra.com/verizonringtone/) bcbg shoes (http://blog.investing.com/bcbgshoes/) free sprint ringtones (http://blog.yukonho.com/index.php?blog=40) cheap prom dresses (http://blog.yukonho.com/index.php?blog=41) sexy prom dresses (http://blog.yukonho.com/index.php?blog=42) waterford crystal (http://www.buddyprofile.com/viewprofile.php?username=waterfordcrystal) swarovski crystal bead (http://www.buddyprofile.com/viewprofile.php?username=swarovskicrystal) mesothelioma lawsuits (http://www.buddyprofile.com/viewprofile.php?username=mesotheliomalawsuits) mesothelioma symptoms (http://www.buddyprofile.com/viewprofile.php?username=mesotheliomasymptoms) mesothelioma diagnosis (http://www.buddyprofile.com/viewprofile.php?username=mesotheliomadiag) Cingular Ringtone (http://blog.yukonho.com/index.php?blog=69) free kyocera ringtones (http://blog.yukonho.com/index.php?blog=70) Free Nextel Ringtone (http://blog.yukonho.com/index.php?blog=71) informal wedding dresses (http://blog.yukonho.com/index.php?blog=73) bridal gowns (http://blog.yukonho.com/index.php?blog=74) Discount Bridal Gowns (http://blog.yukonho.com/index.php?blog=75) Plus Size Swimwear (http://blog.yukonho.com/index.php?blog=76) no fax payday loans (http://blog.yukonho.com/index.php?blog=77) countrywide home loans (http://blog.yukonho.com/index.php?blog=78) fast cash loan guaranteed (http://blog.yukonho.com/index.php?blog=79)