# Digital Communication using GNU Radio

- Institution: IIT Bombay
- Department: Electrical Engineering
- Teacher: Prof. Kumar Appaiah
- Level: Undergraduate
- Language: English
- Subjects: Engineering
- Source: [NPTEL](https://nptel.ac.in/courses/108101373)
- Licence: [CC BY-NC-SA](https://nptel.ac.in/faq) (Non-commercial use only.)
- Syllabus: [at the source](https://nptel.ac.in/courses/108101373)
- Who can watch: Tweens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

## Lectures

1. [Lecture 1 - Introduction to Digital Communication](https://invisiblenetwork.ai/learn/nptel/108101373/e9fabb52aa50) (Video)
2. [Lecture 2 - Understanding GNU Radio features for Digital Communication: Basic blocks, input and output](https://invisiblenetwork.ai/learn/nptel/108101373/ad1abd5c4273) (Video)
3. [Lecture 3 - Understanding GNU Radio features for Digital Communication: Advanced blocks, hardware interfacing](https://invisiblenetwork.ai/learn/nptel/108101373/e2d18e9cac11) (Video)
4. [Lecture 4 - Fundamentals of Digital Communication: Signal Processing methods, vectors, and relevant GNU Radio Examples - Part 1](https://invisiblenetwork.ai/learn/nptel/108101373/e856aa7e0dbf) (Video)
5. [Lecture 5 - Fundamentals of Digital Communication: Signal Processing methods, vectors, and relevant GNU Radio Examples - Part 2](https://invisiblenetwork.ai/learn/nptel/108101373/c2dad65fb7b8) (Video)
6. [Lecture 6 - Complex Baseband Signal Representation](https://invisiblenetwork.ai/learn/nptel/108101373/eb826c5e96ae) (Video)
7. [Lecture 7 - Real Passband Signal Representation, Up and Down Conversion of Complex Baseband Signals](https://invisiblenetwork.ai/learn/nptel/108101373/d130e93ec506) (Video)
8. [Lecture 8 - Random Variables and Random Processes](https://invisiblenetwork.ai/learn/nptel/108101373/d6ac78d1f220) (Video)
9. [Lecture 9 - Fundamentals of Digital Modulation](https://invisiblenetwork.ai/learn/nptel/108101373/ac4af6ae5558) (Video)
10. [Lecture 10 - Linear Modulation Methods: Amplitude Shift Keying (ASK)](https://invisiblenetwork.ai/learn/nptel/108101373/805f6ac842fa) (Video)
11. [Lecture 11 - Linear Modulation Methods: Phase Shift Keying (PSK)](https://invisiblenetwork.ai/learn/nptel/108101373/a38c6b65d947) (Video)
12. [Lecture 12 - Linear Modulation Methods: Quadrature Amplitude Modulation (QAM) and Frequency Shift Keying (FSK)](https://invisiblenetwork.ai/learn/nptel/108101373/8fd9af43ddca) (Video)
13. [Lecture 13 - Pulse Shaping for ISI Free Signaling](https://invisiblenetwork.ai/learn/nptel/108101373/2246e84cb4ba) (Video)
14. [Lecture 14 - ASK using Raised Cosine (RC) and Root-Raised Cosine (RRC) Pulse Shaping](https://invisiblenetwork.ai/learn/nptel/108101373/a272daee057b) (Video)
15. [Lecture 15 - Basics of Detection: Properties of Gaussian Random Variables](https://invisiblenetwork.ai/learn/nptel/108101373/860b1e757398) (Video)
16. [Lecture 16 - Basics of Detection: Gaussian Random Vectors and Hypothesis Testing](https://invisiblenetwork.ai/learn/nptel/108101373/1a83de5612fe) (Video)
17. [Lecture 17 - Optimal Receivers for M-ary Signaling](https://invisiblenetwork.ai/learn/nptel/108101373/4abb66569e08) (Video)
18. [Lecture 18 - Gram-Schmidt Orthogonalisation](https://invisiblenetwork.ai/learn/nptel/108101373/fd72c9444025) (Video)
19. [Lecture 19 - Optimal Reception of M-ary Signals in AWGN](https://invisiblenetwork.ai/learn/nptel/108101373/d1fda82fbe96) (Video)
20. [Lecture 20 - Detection and Optimal Decision for On-Off Signaling in AWGN Channel](https://invisiblenetwork.ai/learn/nptel/108101373/b41db0d7499d) (Video)
21. [Lecture 21 - Detection and Optimal Decision for M-ary Signaling](https://invisiblenetwork.ai/learn/nptel/108101373/7b872ec53eff) (Video)
22. [Lecture 22 - Python for GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/9cc0f85a6810) (Video)
23. [Lecture 23 - Extending GNU Radio Features using Python](https://invisiblenetwork.ai/learn/nptel/108101373/56bff57960b3) (Video)
24. [Lecture 24 - Constructing and Visualising Constellations using GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/7aced8a6ca4b) (Video)
25. [Lecture 25 - Understanding matched filtering using GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/af0ffda078e7) (Video)
26. [Lecture 26 - Histograms in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/089c54193813) (Video)
27. [Lecture 27 - Visualising Symbol Error Rate in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/1558cf5b4baf) (Video)
28. [Lecture 28 - Signal-to-Noise Ratio and Symbol Error Probability - Part 1](https://invisiblenetwork.ai/learn/nptel/108101373/8fd4646947cd) (Video)
29. [Lecture 29 - Signal-to-Noise Ratio and Symbol Error Probability - Part 2](https://invisiblenetwork.ai/learn/nptel/108101373/5daabc0941af) (Video)
30. [Lecture 30 - Symbol error rate and Bit error rate](https://invisiblenetwork.ai/learn/nptel/108101373/adcc8686b07c) (Video)
31. [Lecture 31 - Computing bit error rates in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/106395a64044) (Video)
32. [Lecture 32 - End-to-end Digital Communication System Simulation in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/bfe4223520ba) (Video)
33. [Lecture 33 - Parameter Estimation for Practical Receivers - Part 1](https://invisiblenetwork.ai/learn/nptel/108101373/e568d6aea9a6) (Video)
34. [Lecture 34 - Parameter Estimation for Practical Receivers - Part 2](https://invisiblenetwork.ai/learn/nptel/108101373/ddde3a4b84ee) (Video)
35. [Lecture 35 - Phase Locked Loop and Differential Modulation](https://invisiblenetwork.ai/learn/nptel/108101373/cdaf372d29b5) (Video)
36. [Lecture 36 - Maximum Likelihood delay estimate for a single symbol in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/942e1dfe2323) (Video)
37. [Lecture 37 - Maximum Likelihood delay estimate for multiple symbols in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/0b13bbcfffb5) (Video)
38. [Lecture 38 - Phase offse estimation in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/cf6a3e4e551a) (Video)
39. [Lecture 39 - Phase Locked Loop in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/316974f08421) (Video)
40. [Lecture 40 - Costas Loop and Differential PSK in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/fed40e7f6d8d) (Video)
41. [Lecture 41 - Channel Equalisation](https://invisiblenetwork.ai/learn/nptel/108101373/ab8c694226c7) (Video)
42. [Lecture 42 - Detection Strategy for Dispersive Channels](https://invisiblenetwork.ai/learn/nptel/108101373/c7e8f8fbfd02) (Video)
43. [Lecture 43 - Maximum Likelihood sequence estimation: Viterbi Algorithm](https://invisiblenetwork.ai/learn/nptel/108101373/9b892129b6ce) (Video)
44. [Lecture 44 - Suboptimal Channel Equalisation: Zero-forcing Receiver](https://invisiblenetwork.ai/learn/nptel/108101373/26b8cf768911) (Video)
45. [Lecture 45 - Zero forcing Receiver in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/fd3f630ac0a7) (Video)
46. [Lecture 46 - Suboptimal Channel Equalisation: Linear Minimum mean-square error receiver](https://invisiblenetwork.ai/learn/nptel/108101373/d0aa7e5eb4f7) (Video)
47. [Lecture 47 - LMMSE Receiver in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/fcc2173aff5b) (Video)
48. [Lecture 48 - Parallelising Frequency Selective Channels](https://invisiblenetwork.ai/learn/nptel/108101373/dbafaf8330fd) (Video)
49. [Lecture 49 - Orthogonal Frequency Division Multiplexing (OFDM)](https://invisiblenetwork.ai/learn/nptel/108101373/35ba1019d5bb) (Video)
50. [Lecture 50 - OFDM in the prescence of dispersive channels](https://invisiblenetwork.ai/learn/nptel/108101373/812dc5301c8e) (Video)
51. [Lecture 51 - Equalisation using OFDM in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/d17dc307c3ac) (Video)
52. [Lecture 52 - Error Control Coding: Parity Check Codes](https://invisiblenetwork.ai/learn/nptel/108101373/af455871d65c) (Video)
53. [Lecture 53 - Error Control Coding: Repetition Codes](https://invisiblenetwork.ai/learn/nptel/108101373/0e41c7d85ec9) (Video)
54. [Lecture 54 - Error Control Coding: Linear Block Codes](https://invisiblenetwork.ai/learn/nptel/108101373/c5049eca02bb) (Video)
55. [Lecture 55 - Repetition Codes in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/e8ceb2adae11) (Video)
56. [Lecture 56 - Error Control Coding: Perfect Codes](https://invisiblenetwork.ai/learn/nptel/108101373/8d10ebeeab25) (Video)
57. [Lecture 57 - Error Control Coding: Hamming Codes](https://invisiblenetwork.ai/learn/nptel/108101373/d8197be35bf7) (Video)
58. [Lecture 58 - (7,4) Hamming Code in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/cce5e2232cdf) (Video)
59. [Lecture 59 - Rate and error-free Communication](https://invisiblenetwork.ai/learn/nptel/108101373/c3fdbbecb9b6) (Video)
60. [Lecture 60 - Quantisation](https://invisiblenetwork.ai/learn/nptel/108101373/3f23b4709951) (Video)
61. [Lecture 61 - Visualising Quantisation in GNU Radio](https://invisiblenetwork.ai/learn/nptel/108101373/42e6e58b578e) (Video)
62. [Lecture 62 - Course Summary](https://invisiblenetwork.ai/learn/nptel/108101373/6e55bd351ad6) (Video)
63. [Live Session 07-02-2024](https://invisiblenetwork.ai/learn/nptel/108101373/e9fabb52aa50-2) (Video)
