WebSphere brand IBM WebSphere Premises Server, Version 6.1.x

Device Kit

The Device Kit is a core component of IBM® Data Capture and Delivery Toolkit for WebSphere® Premises Server. It provides a common interface for the application code to interact with RFID readers and other device sensors and actuators.

The Device Kit is an OSGi enabled technology that provides support for interfacing with hardware devices from Java™ code. The Device Kit can be used to split the serialized dependency that software development has on hardware platform development. Application code and business logic interface with the Device Kit to get information from the hardware device. It provides a layer of abstraction against which applications can be developed for devices even when hardware-specific information is unknown.

The Device Kit environment consists of the following components: an application, a runtime, and a hardware device. The runtime is divided into the adapter and profile layer, device layer, transport layer, and the connection layer.

Connection layer

The connection layer supports the reading and writing of byte streams to the hardware device. The connection does not understand the meaning of the bytes but supports the delivery of the output bytes and receiving of the input bytes.

Transport layer

The transport layer supports the sending and receiving of messages. While the transport layer understands the format of a message, it does not understand the meaning of the message. When a device requests that a message to sent, the transport formats the message into a correct bytes to be written to the connection. The transport reads input bytes from the connection and parses the bytes into received messages. The interested devices are notified of the received messages.

Device layer

The device layer provides the application with an interface to the hardware device. The device layer should shield the application from the low level details of the hardware device. The device layer understands the meaning of the messages and any parameters within a message. When an application executes a command, the command requests that the transport send the command message. Any signals listeners are notified if any received messages from the transport match the signal messages.

Adapter and profile layer

The adapter and profile layer provides the application with common interface to a set of common hardware devices. For example, the adapter and profile layer for RFID readers will provide a common interface for the application to a set of common functions provided by all RFID readers. This layer uses a publish/subscribe Service Oriented Architecture (SOA) interface. The adapter and profile should shield the application from the knowing which of the common hardware device is being used.

Data Capture and Delivery profiles

The following profiles are used in the scenarios provided in Data Capture and Delivery:
  • GPIO Profile – specifies the interface to general purpose I/O. It provides measurement values for the current states of input and output pins. It supports the ability to set the value of output pins through a command interface as well as triggering the state of an output pin with an LDAP expression.
  • RFID Inventory Profile – controls RFID tag reading, tag filtering, and aggregation reporting. This profile supports starting and stopping the reading mode, providing tag data in a common format, filtering tags as duplicates or by interest masks, collecting tags into an aggregation report, and marking tag reports with metadata called data extensions. The RFID Inventory Profile can be configured to trigger reading, filtering, and aggregating behavior based on events published by the GPIO Profile and Control Profile.
  • Control Profile – provides a set of control values, represented by bit or long values, which can be manipulated by software. In addition to bit and long values being set by a direct command, the value of the bit controls can be determined by an LDAP expression.

Resources

The Device Kit is available in the open source domain provided under the Eclipse Public License. Runtime, tooling, documentation, and source code are available at the following URL: http://www.eclipse.org/ohf/components/soda/


Library | Support | Terms of use

(c) Copyright IBM Corporation 2004, 2008. All rights reserved.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.