In recent years, it has become imperative to teach digital communications to Electronics and Communications engineering majors. In this paper, we present a four-month undergraduate course on digital communications in which students design and implement a full, real-time interactive communications system that transmits data in digital form between two computers. The only prerequisite is a course on the basics of signals and systems, Matlab, digital filters and analog modulation. This complex objective becomes achievable by using Matlab as a prototyping language, and the computers’ sound cards as analog front-ends. Although Matlab is widely regarded as a simulation tool not suitable for implementing real-time, on-line systems, we show that it is in fact able to do so, by using a rate-control and formatting tool between the program and the sound card.