Home > Software > Megumi

Megumi (めぐみ)
An IrDA testing utility by Alvin Mok

Screen Shot

Megumi on
Sony Clié PEG-NR70V

Megumi is my first Palm app targeted for testing IrDA communication. This page is intended to provide an overview of the project and a brief description of its direction. The product is for private use only. No public consumable version is planned. Please do not ask for it.

This project was started in late September, 2000 for testing the IrDA capability of those IR-enabled Nokia GSM phones. After months of development, it includes the capacity of reading the IAS database of remote devices. The software is evolving into a general infrared data sending and capturing tool.

As of the current version (1.1d6), Megumi runs on Palm OS 3.1 or later and has a size of 27 KB. The reason for choosing OS 3.1 over OS 3.0 is to avoid some annoying bugs in the latter that limit coding flexibility. Apart from those known issues, targeting an older OS makes a product more compatible. SendNames is a good example of turning the Megumi code into a stable product. Relaxing the OS requirement to 3.0 was also found easier.

Megumi has a set of hard-coded data for Nokia phones using the 6110-/6150-style protocol. User-defined data cannot be send. The restriction would be removed in the future.

Megumi is capable of sending all IrDA defined IAS queries, plus Nokia-specific and several industrial group defined ones, to remote devices. Results may be beamed as well as exported to MemoPad. On the other hand, Megumi can fool remote devices about its identity by editable nickname, hint bits, device name and selectable IAS entries. Captured data can also be exported. Due to the limited space provided by the OS-supplied IrLib, IrPnP cannot be emulated.

Added in v1.1d3 is a trivial cooked IrCOMM terminal which is able to display the result of an AT-command issued.

Future versions might include sending imported data, custom IAS entries/queries, TinyTP-based protocols support such as IrLAN or IrOBEX. IrLAP based protocols will not be supported because the IrLAP layer of IrLib is not programmable.

Projects

The core part of Megumi is a state machine taking care of the IrDA data flow and connection process. The core is known as the Megumi engine. A simplified version, the MegumiLite engine, has the debugging and experiment-oriented portion removed but the Progress Dialog support added. The following table summaries current or planned projects which based on the MegumiLite engine:

Project CodeProduct nameDescriptions
Ayanami (あやなみ)SendNames2-way biz cards and cal notes beaming between a Nokia GSM phone
Asuka (アスカ)BeamMobileSuccessor to SendNames for all IR-ready GSM phones
Ushio (うしお)BeamMobileThe BeamMobile with tasks and enhanced UI
Hikaru (ひかる)EriToneseMelody Ringtone jukebox for mobile phones
Momiji (もみじ)TBDA general IrDA IAS profiler
Naru (なる)ID-plateSystem info viewer with Sony Clié support

Related sites