This paper lists some of the specifics of the Newton IrDA subsystem, for those curious to see.
Fortunately, the IrDA standard requires that any device capable of FIR also be capable of SIR. This means that new devices coming out should be able to operate with the Newton; however, the possibility exists that some new not-quite-standard device might be introduced that could only communicate with the faster FIR. The Newton would not be able to communicate with this device.
Earlier Newton devices (OMP, MP100, MP110, MP120, and MP130) are all capable of infrared beaming; but their hardware and software is aligned around the Sharp ASK protocol, which is not compatible with IrDA. For compatibility, the later Newtons (MP2000, MP2100, and eMate) can also transmit and receive over Sharp ASK, but most non-Newton devices cannot (although there are still some devices out there that use Sharp ASK, none are IrDA-compliant).
IAS in theory allows a server implementation to specify a number of provided IrDA services; each service is identified by a classname and an arbitrary set of attributes. Typically, every service includes at least one well-defined attribute that indicates the IrLMP connection address for that service. A client connecting to the server should be able to query for the list of services, and select the one most appropriate or capable.
The Newton IAS implementation allows a server to specify only one service, with a single classname and a single attribute. This works fine for a simple transport service, but makes more capable servers difficult.
Further, a Newton client is similarly limited; a client must know in advance the name and associated attribute of the service with which it will connect. It cannot query the list of available services (and hence cannot arrange to choose one from the list). Again, for a simple transport, this is no problem; but for more sophisticated clients, this can be a strong constraint.
This means that higher-level protocols that cannot determine packet boundaries from the data stream itself will be difficult or impossible to implement.
This can require considerable research to resolve, as there are very few resources available to the Newton IrDA programmer to decipher such codes.
[an error occurred while processing this directive]
This page was last modified on April 24, 2001.