A visualization tool has been proven to be useful for enhancing novice programmer's learning. Despite the large number of studies performed on visualization tools, it appears to be very few using it to assist student's understanding of the fundamental concept in hardware software interfacing programming. In this study, we developed a Program Visualization (PV) with the main objective as a practical hands-on learning kit for novice in exploring and gaining basic skills of hardware software interfacing in visual environment. The ADDIE instructional design model has been used in the design of the visualization tool. Usability and user's satisfaction also have been conducted to evaluate the success of a PV in regard to the learning objectives. A total of 25 Polytechnic students were asked to complete a questionnaire adapted from Post-Study System Usability Questionnaire (PSSUQ). The questionnaire consists of the following six dimensions of usability characteristics: design/layout, functionality, ease of use, satisfaction, outcome/future use and errors/reliability. Based on the questionnaire feedback, the developed tool seems very useful and helpful for the students in understanding hardware-software interfacing programming better.