1747 Scenicview Court San Leandro, California 94577




VersaClock (2001-2010)


Project Summary




VersaClock has been distributed to IDT customers worldwide and allows them to configure and program the MicroClock line of programmable clock chips for testing and evaluation purposes. It is a 4-tier system, comprising the usual DBMS, web server and client tiers, but also drives a desktop programmer connected to the client PC that burns configurations into the chips. It is completely data driven, meaning that it accommodates new products, new models of existing products and new product features with minimal code change. Today, four product generations and dozens of variations are all supported on the original architecture.


Developing this product included the embedded code for the MCU in the desktop programming box, as well as involvement in the design of the device itself. The embedded code takes the form of a P-code style interpreter that gets its instructions from the central database. This allows the programming of new parts having entirely new designs without updating and shipping - or even flashing - the programmer boxes. In addition to the programmer box, the software handles serial and I2C interfaces.


VersaClock has an authoring mode for the creation of new programming schemes and other features without writing new code.


Threading: Three threads. One for UI, one for initialization, one for background calculations.


This Software and its documentation can be downloaded at


Tutorials describing the software can be seen at


Google: IDT VersaClock






Hardware: Intel x86; Motorola MC68HC908


Platforms: Windows XP, NT, 2000


Programming & Assembly Languages: MFC, C++, Motorola MC68 ALC


Data Management: MS SQL Server, MS Access


Development Tools: Microsoft Visual Studio .NET, Microsoft Visual Studio 6.0, Microsoft Visual C++, Windows MSI, Windows SDK, XML, MSXML4, HTML, ODBC, Metrowerks Code Warrior; NetBeans, DOS (Batch, Shell)


Source Control: Accurev, Visual SourceSafe


Other Tools: MS Office



Embedded Programming



Screen Shots