Hello everyone! This post will be about frequency modulation, because why not. So, how does frequency modulation work? Its fairly simple. Lets say, you have to transmit a 20KHz sine wave over 1MHz wave, or that you have to transmit multiple signals combined into 1. So, lets do it! First, we will create our signals, like this: signal1 = sin(x * 20e3) signal2 = cos(x * 40e3) Now, we have one signal thats 20KHz, and another one thats 40KHz. How do we combine them? By simply adding them to eachother. combined_signal = signal1(x) + signal2(x) Our combined signal now consists of both signals at the same time, and contains all the information. Now, how do we decode it? We can decode it trough non-perfect process called fft transform, which separates all the signals, and represents the result as frequency base, where the we have a 3D graph, X being time, Y being amplitude, Z being frequency. For this process, a nice fftw3 library exists, which I already cover in previous post. Now, what are the limitations of this method? Well, they are the imperfection of the fft transform, and the fact that the combined signal is always higher frequency than the original ones. We also have to lose amplitude of each of the frequency, to fit all of them inside the original amplitude. We can also very easily filter out 1 of the frequencies, by guess what ... subtracting it from the original signal. That will be all for today, see you next time!