Projects and publicly available tools


Whisper The Whisper project seeks to support easy-to-use, secure, difficult to monitor and censor communication among family members and friends.
Team members: Yue Liu, David Bild, Robert P. Dick, Z. Morley Mao, and Dan Wallach.

The Absynth web compiler allows use of our wireless sensor network programming languages.
Authors: Many (see The Absynth Project Website).


PowerTutor PowerTutor is on-line smartphone power estimation software. It uses smartphone component power management and activity state introspection to estimate the power consumption of each component, and determine the energy use of software applications.
Authors: Mark Gordon, Birjodh Tiwana, Lide Zhang, Robert Dick, Zhuoqing Morley Mao, and Lei Yang.

The Sonar Power Manager uses ultrasound produced by your computer's speakers and measured by your computer's microphone to determine whether you are nearby. It can assist in power management. BatPhone identifies the user's location based on audio environment.
Authors: Stephen P. Tarzia, Robert P. Dick, Peter A. Dinda, Gokhan Memik.


simics console CETA is a fully-automated tool for extracting run-time communication graphs from multithreaded applications.
Authors: Ai-Hsin Liu and Robert P. Dick with additional documentation by Ciprian Radu.

MEMMU logo MEMMU is an automated runtime memory compression technique for MMU-less embedded systems. It provides application developers with access to more usable RAM and requires no or minor changes to application code and no changes to hardware. MEMMU is composed of a runtime library and LLVM passes for compile-time transformation.
Authors: Lan Bai, Lei Yang, and Robert P. Dick.

CRAMES CRAMES is an operating system controlled memory compression technique to double usable memory in embedded systems without changing applications or hardware, and with little or no performance or power penalty.
Authors: Lei Yang, Robert P. Dick, Haris Lekatsas, and Srimat Chakradhar.

ISAC ISAC is adaptive steady-state and dynamic thermal analysis software.
Authors: Nicholas Allec, Xi Chen, Zyad Hassan, Yonghong Yang, Zhenyu Gu, Changyun Zhu, Li Shang, and Robert P. Dick.

Embedded system synthesis software This software, described in the MOGAC, CORDS, COWLS, and MOCSYN papers (above) has been licensed to PDV Software of Allentown, Pennsylvania. However, I can provide academic access to interested parties on my group server. If you would like to use this synthesis software, please send me an email describing the intended use.
Author: Robert P. Dick

E3S The Embedded Systems Synthesis Benchmarks Suite is a collection of benchmarks based on embedded processor and task information from the Embedded Microprocessor Benchmark Consortium (EEMBC). E3S was developed for use in system-level allocation, assignment, and scheduling research. The current version, 0.9, contains contains 17 processors, e.g., the AMD ElanSC520, Analog Devices 21065L, the Motorola MPC555, and the Texas Instruments TMS320C6203. These processors are characterized based on the measured execution times of 47 tasks, power numbers derived from processor datasheets, and additional information, e.g., die sizes, some of which were necessarily estimated, and prices gathered by emailing and calling numerous processor vendors. In addition, E3S contains communication resources modeling a number of different busses, e.g., CAN, IEEE1394, PCI, USB 2.0, and VME.
Author: Robert P. Dick


TGFF creates problem instances for use in allocation and scheduling research. It has the ability to generate independent tasks as well as task sets which are composed of partially ordered task graphs. A complete description of a scheduling problem instance is created, including attributes for processors, communication resources, tasks, and inter-task communication.
Authors: Keith Vallerio, David Rhodes, and Robert P. Dick.


Python modules for graph algorithms, class delegation, and logic minimization.
Authors: Robert P. Dick and Kosta Gaitanis.

Page maintained by Robert Dick.