Announcement (May 11, 2006)
The Context Watcher has been completely re-designed and moved to a new home. Please go to the central portal to get more information.
You may download the new version, and don't forget to browse through the new manual!
The Context Watcher is a mobile application developed in Python, and running on Nokia Series 60 phones. Its aim is to make it easy for an end-user to automatically record, store, and use context information, e.g. for personalization purposes, as input parameter to information services, or to share with family, friends, colleagues or other relations, or just to log them for future use or to perform statistics on your own life.
The context watcher application is able to record information about the user's
Download and install Python for Series 60 from Nokia. Choose the 1.2 version, and install PythonForSeries60.sis on your phone. There are two options: install the sis file from the download section or install the Python script from the BSCW server (MobiLife partners only). For the sis file: Install contextwatcher.sis on your phone (send via BlueTooth, and choose 'install' from Messages > Inbox) and run it from the menu. For the python script: Install contextwatcher.py on your phone (send via BlueTooth, and choose 'install as script' from Messages > Inbox) and run Python from the menu, choose options > run script > contextwatcher.py.
Make sure your GPRS connection is configured correctly. To avoid GPRS pop-up menus, you can choose to go to Settings > Connection > GPRS > GPRS connection > When available. When you start the Context Watcher, it will ask you to provide a personal code. Pick one that is easy to remember but difficult to guess for others, e.g. 8356. The mobile application will set up an account for you on the server. If asked, pick the appropriate GPRS connection to use for communication. Choose 'set your email' from the options menu, as this will identify you in a more meaningful way than IMEI only.
Every night, the remote location provider scans the location data per user and tries to identify new clusters.
This is done based on cell-id only, taking into account the transitions between cells, the time a users stays in a cell, and the distances between neighbour cells. We are also working on other types of algorithms.
The found clusters are added to a personal cluster list in the remote location provider.
Each clusters get a number. How you can name this clusters is described in the following section.
Every time the user updates his location data on the location provider, it checks if the cell belongs to a cluster and if so, returns the number and/or the name of that cluster. When the cluster only has a number, the Context Watcher allows the user to name that cluster. If the cluster has a name already, that information is shown under the Activities tab with the appropriate time stamps for begin and end times. The name of the current cluster is also revealed to the buddies of the user.
There are 3 options. 1) When you are in an unnamed cluster (identified by a number only) you can choose options > name current cluster from the MyCell tab 2) You can change the names of all your cluster via options > set remote profile in the MyCell tab. 3) You can go to the profiler page of the location CP from a desktop PC.
Start the Context Watcher, and choose 'Connect to GPRS' from the menu.
Simply move around, and on cell change the first tab page will be refreshed with latitude-longitude and address information when available.
You can request maps of your current location on the MAP tab page
You can request nearby points of interest on the POI tab page
When you have friends with the same application, you can add them as buddy in the BUDDY tab page, and after approval see each other's location real time.
You may use a BlueTooth enabled GPS device to obtain more accurate positioning, but you can also use it to add newly spotted cells to the cell-id database. This works more or less automatic. You only need to make sure that you connect both to GPRS and to GPS. So: start the Context Watcher, and choose 'Connect to GPRS' from the menu. Go to the GPS tab page and choose 'Connect GPS' from the menu. It will now show the number of cell changes and newly spotted cells in the MyCell tab. Move around to spot new cells. When you choose not to connect to GPRS it will log all data locally. First time you connect to GPRS, it will upload the logged data first. A weekly overview of all cells in the cell-id database is published here.
More information in the email that is send to you when you choose 'set your email' from the menu. You can browse through your location history via the web interface of the location CP. Login with your IMEI and CODE as provided on the user tab of the application.
Each user has friends. Initially, none of these friends are known to the Context Watcher and the buddy list is empty.
Via options > add buddy, the user can add new buddies, that can be identified by email address or IMEI number.
The IMEI number can be typed quite fast when you choose for 'number mode' input (by pressing the pencil button, at the bottom right of your keyboard). IMEI numbers can be obtained from the advertisement of the location provider, via the getAdvertisement operation. When a buddy is added, an approval request is sent to the buddy. This buddy has to approve by updating his buddy list, selecting you and choosing approve. When you update your buddy list after his approval, you will see the context data of this buddy, coming from different context providers.
Context information, and location data in particular, can be used as automatic input parameter for services.
Because the Context Watcher is already aware of your location, it can send that data automatically to value-added services to obtain maps, nearby points of interest of some kind, or local weather information. The map and poi services require you to have a location information in terms of latitude and longitude (does not matter if this is GPS or cell-id based), whereas the weather service requires you to have location information in terms of city and country.
Via options -> get local weather, the actual weather information together with the forecast for the next few days can be requested based on the users current location. If currently no location information in terms of city and country is available,
weather information for almost any place in the world can be retrieved using options -> get weather in ... and providing a location in the form "
The Context Watcher is capable of collecting data from a Suunto T6 watch
equipped with an additional footpod (which measures walking speed and distance) and a heart rate belt
(which measures heart rate). These three devices communicate via the low-energy protocol ANT.
To connect these devices with a phone via a BlueTooth connection, you need a BT2ANT module that receives
the ANT messages and exposes this information via a BT interface that implements the SSI protocol.
Go to the sport tab, choose options > connect to ANT, and select your BT2ANT module from the list of discovered devices.
When GPRS is connected the application will send your data to the remote Wellness Provider.
From there it will be distributed to the persons that you selected as buddies.
Check the buddy tab to be informed about the body data of your buddies.
The Wellness Provider also provides statistics over the historic data, and will provide performance graphs (speed vs heart rate) soon.
It is now easy to share context-enriched pictures with your friends:
A new feature is that also maps and context graphs can be sumbitted in the same way as picture. Choose the 'send' option in the 'map' or 'graph' tab. The maps and graphs will be submitted as public pictures.
A Google Earth Network Link to the PersonalLocationCP and
InstantMessagingCP (IMCP). Using this, you can see all MobiLife Buddies
(name, image) at their current position and their current state in the
Google Earth client.
You need to have Google Earth installed (it's freely available at
Google) and then open the KML file on the BSCW
to start the Network Link.
You may need to turn the globe, because the client starts USA-centric ;-) to see the buddies.
Double-clicks on the buddies will zoom to them and show more info (mood etc).
If you do not see any maps it might help to switch from OpenGL to DirectX under the options menu.
Each buddy has his/her own icon. This icon can be created by taking a picture in the photo tab and then submit this picture 'as icon' in the options menu. The submitted picture will be used to show your face in Google Earth.
You may also use this this express your mood ;-)
The tab 'graph' allows you to show graphical representations of historic contextual information.
The number of context samples is set in the local settings menu, and is equal to 20 by default.
This way you can show your heart rate or walking speed over the last minutes, as well
as performance graphs of heart rate versus walking speed. And you location show your position (latitude,longitude) and
altitude graphs as well.
The heart rate example on the right is just during a presentation: about 70 in listening mode, up to 130 in presentation mode. Presenting is top sport!
If you are using the context watcher, and you want your family to know where you are from the home PC, you could follow these steps:
The most frequently visited locations from the Location Context Provider are also automatically logged in the Agenda Context Provider, resulting in an automatic activity log as in this example. To view your own calendar, open Mozilla Calendar, and add a new calendar with this remote location URL: ftp://YourIMEI:YourCode@212.119.9.182/CalendarDataFile.ics
The location CP can write daily reports of your activities automatically and send these reports to your blog. An example is Johan's blog. To realize this yourself, follow these steps:
The location CP can send updates of your location and/or activity to one of the popular IM servers, namely the MSN server. If you have a MSN account, the location CP will change your MSN nick name when your location changes (on city level), or when your activity changes. Your nickname will look like 'Johan Koolwaaij at Office since 07-12 08:52', and all your MSN friends will be able to check your whereabouts before they try to contact you.
Choose options > local settings from the MyCell tab to see the settings. Choosing options > edit will allow you to edit these settings. Don't forget to save your changes. The settings menu offers the following options:
Remember to download Python 1.2 for Series 60 from Nokia first.
Download the contextwatcher.sis (v3.08) file and install it on the phone via the Nokia PC suite or via BlueTooth. The sis file installs the Context Watcher with the MobiLife logo instead of the standard Python logo. If you have comments or questions, please contact the developers.
The Context Watcher is developed in the MobiLife project. The core development team consists of:
| Date | Version | Description |
|---|---|---|
| 02-02-2005 | 0.1 | First ideas in Berlin |
| 01-03-2005 | 1.0 | First prototype for the Cebit fair in Hannover, that reads the cell-id and provides enriched information, including an estimated latitude-longitude pair, an address and a map. |
| 07-03-2005 | 1.1 | Add GPS BT connection to add data on unknown cells |
| 10-03-2005 | 1.2 | Added the BT integration with the calendar CP and location clustering |
| 01-04-2005 | 1.3 | Added the deduced personal activities and some BT connect bug fixes |
| 01-05-2005 | 1.4 | New option to set your personal profile, and new send SMS functionality for buddies |
| 13-05-2005 | 1.5 | Extended location update mechanism from onCellChange to onCellChange plus time interval if GPS connected |
| 01-06-2005 | 1.6 | Add a sports tab that integrates with Suunto BT-ANT module to read heart rate, walking speed etc from HR belt and foot pod |
| 01-07-2005 | 1.7 | Added integration with a new WellnessProvider, a CP that talks CRF v0.3 |
| 04-07-2005 | 1.8 | Added integration with a new WeatherProvider |
| 07-07-2005 | 2.0 | Move to Python 1.1, including signal strength, and IMEI. |
| 10-08-2005 | 2.1 | Integration with FOKUS CPs, including presence and preferences. |
| 04-09-2005 | 2.2 | Improved performance, removed annoying BT discovery bugs, redone the configparams and improved preferences in the weather tab |
| 09-09-2005 | 2.3 | Added a local settings form |
| 17-09-2005 | 2.4 | Added photo functionality |
| 26-09-2005 | 2.5 | Added Flickr integration, image options in local setting, and image preview |
| 03-10-2005 | 2.6 | Added graphical context representations |
| 07-10-2005 | 2.7 | Automatic script update over GPRS, bug fixes in photo tab for Nokia 6630, easy icon images for users, usage logging, and much more |
| 09-10-2005 | 2.8 | Map integration to canvas, improved feedback while sending photos, added graphs for signal strength and battery |
| 26-10-2005 | 3.0 | Auto blogging, python 1.2 check, and start with trust engine integration |
| 09-10-2005 | 3.03 | New weather provider, integration with the usage record provider |
| 19-01-2006 | 3.07 | Custom categories in the mood tab, improved weather tab, and many small bug fixes |
| 01-02-2006 | 3.08 | Bug fixes |
Announcement (May 11, 2006)
The Context Watcher has been completely re-designed and moved to a new home. Please go to the central portal to get more information.
You may download the new version, and don't forget to browse through the new manual!