Background
The number of infra-red remote control devices on the average entertainment room coffee table today seems to be growing at an alarming rate. One solution to this confusion is the "Universal Remote"—a single remote capable of learning all the codes generated by other remotes so that many devices can be controlled from a single hand-held. The number of these is proliferating too. For instance, here in Australia, Foxtel, is our single cable TV supplier. Although they do not advertise the fact, their "IQ" set top box (STB) and integrated digital recorder controller is a universal remote.Any device capable of emiting IR that has buttons is a potential universal remote. Your average laptop would do the job, but is a bit impractical. However software exists to turn a Palm Pilot, Pocket PC, or even selected Nokia mobile 'phones in universal remotes! In the growing purpose built, high-end universal remote market, three of the major players are Marantz, Logitech, and Phillips.
The current top of the line from Phillips is the TSU9600 Pronto. This is a very sophisticated device with numerous programmable buttons and full 24 bit colour, 640x480 pixel (VGA) touch-screen. As well as learning and emitting infra-red signals with carrier frequencies up to 1MHz, it has WiFi network capability and an in-built scripting language called PrintoScript. Use of scripting is optional, but being based on JavaScript, it permits two-way communication and control via TCP/IP sockets making it one of most adaptable of the current Universal Remotes. To build customized user interfaces, Phillips has created a tool called Pronto Edit Professional (PEP).
PEP ships with a "factory database" of code sets put together by Phillips. These represent a good percentage of the very large number of devices that a custom installer might encounter and while any code set may be "learnt" by the Pronto, using a "factory set" saves the time and effort required to capture and confirm. In many cases, these factory code sets have the elusive "discrete on-off" codes rather than the single on-off toggle that is generated by most hand-helds. To keep things manageable, code sets are copied from the factory set to a personal database subset which the customizer assembles to reflect the devices that they commonly use. PEP allows the user to backup and restore this subset (called My Database by PEP), but not to merge them with other subsets, nor export and import single code sets. While not a major restriction, this is not an ideal situation.
The database used by PEP is SQLite3, an open source, transactional SQL database which is claimed to be the most widely used embedded database in the world. Its main advantage lies in setup—none is required! A SQLite3 database is just a file making it ideal for applications like this where no shared access, nor restricted access is required. In addition to interactive tools, SQLite3 has libraries available for C/C++ and Tcl/Tk bindings. Five minutes work with the command line SQLite3 tool suggested that creating a tool to perform fine-grained management of PEP databases would not be a complex task, so RDBMan (Ron's (PEP) Database Management tool) was created using Tcl/Tk for platform portability.
Download
The first link below provides the tool compiled for execution under Microsoft Windows XP SP3, with full source code, sample code set exports, and Release Notes. The second, larger download includes the ActiveState Tcl/Tk runtime environment for MS Windows for those who want to run the code inside an interpreter and experiment with the source. This Tcl/Tk package is available for free download from ActiveState. As their license permits it, the installer for ActiveTcl is included in the larger download.- RDBMan executable, source and sample exports
- RDBMan as above with ActiveTcl installer for Win32
- View Latest Release Notes
These links will always link to the latest version. Currently, this is 1.04. RDBMan is provided as-is under a Creative Commons, Attribution-Noncommercial-Share Alike 3.0 License (See http://creativecommons.org/licenses/by-nc-sa/3.0)
That is, you can do what you like with it except ask money for it,
or any modified form of it, and must acknowledge the original author. If you need to contact me, see my UQ ITEE Home Page for contact details.
