Analog Devices has recently released a new text book for free called "Software-Defined Radio for Engineers, 2018". This is an advanced university level text book that covers communication systems theory as well as software defined radio theory and practice. The book uses the PlutoSDR as reference hardware and for practical examples. The PlutoSDR is Analog Devices $150 RX/TX capable SDR that was released about a year ago.
The objective of this book is to provide a hands-on learning experience using Software Defined Radio for engineering students and industry practitioners who are interested in mastering the design, implementation, and experimentation of communication systems. This book provides a fresh perspective on understanding and creating new communication systems from scratch. Communication system engineers need to understand the impact of the hardware on the performance of the communication algorithms being used and how well the overall system operates in terms of successfully recovering the intercepted signal.
This book is written for both industry practitioners who are seeking to enhance their skill set by learning about the design and implementation of communication systems using SDR technology, as well as both undergraduate and graduate students who would like to learn about and master communication systems technology in order to become the next generation of industry practitioners and academic researchers. The book contains theoretical explanations about the various elements forming a communication system, practical hands-on examples and lessons that help synthesize these concepts, and a wealth of important facts and details to take into consideration when building a real-world communication system.
The companion site for the book which contains links to complimentary online lectures, slides, and example MATLAB code can be found at https://sdrforengineers.github.io. MATLAB is a very powerful programming language and toolset used by scientists and engineers. MATLAB is not a cheap tool, but there is a home user licence available for a more reasonable price. To do some of the exercises in the book you'll probably at least require the core MATLAB plus the Communications System Toolkit which is an extra add on.
If you're interested in a similar book, there is also the free DesktopSDR book which uses RTL-SDR dongles for the practical examples.