This proposal is the result of two years of planning to integrate a hardware concepts experience within the software oriented coursework in computer science. Too often students are given the impression that software development is associated with data handling that leads only to calculations, reports, and printouts or visual displays of one form or another, with little or no appreciation for the fact that computers must often monitor and control physical processes as well. We are therefore proposing an integration of external devices and embedded software into instruction in a range of courses rather than just those that would normally include this. The general theme is to create multiple experiences with the integration of hardware and software concepts throughout a number of the courses in the undergraduate curriculum (all of which are either required or advanced technical electives in the major). The plan is to acquire the hardware for this project, set it up and test it with respect to inclusion in our target classes, then implement and refine this infusion of conceptual/practical material into our classes with significant gains in depth and understanding as the thread is followed through the classes from one level to the next. Each of the investigators has special contributions to make to the overall project, including an enormous amount of quality instructional experience. They form an effective support component to ensure that the range of activities planned are completed. The team is compatible, enthusiastic, and motivated. The hardware systems for the project have been carefully selected for potential use in the broadest range of classes from beginning programming principles to advanced system software and real-time systems.