Radio frequency based Identication (RFID) is expected to be deployed in a major way in the near future. The major issues for such a deployment are in the design of a robust and exible software system to interface various applications to the RFID readers. There are few existing RFID software systems, most of which are proprietary and the others are under development. The proprietary RFID software solutions are costly, bulky, non-portable and heavily dependent on the support software.In this work, we present SmartRF, an open-source RFID middleware which is exible, simple and scalable. SmartRF allows us to interface RFID tags and readers to multiple applications in a technology-neutral (protocols, air-interface, etc.) manner. The object-oriented and layered design of SmartRF allows development and integration of new features with little eort. The middleware provides the application a exibility to interact with one or more readers or even part of a reader.SmartRF provides the application developer with a simple and hardware-independent set of APIs to access and congure the hardware. It supports dynamic joining and dis-joining of applications and hardware thus, providing exibility to the system. Two RFID systems electronic le tracking and postal bag tracking, were developed with the help of SmartRF and a supporting application framework.