This section contains scenarios and debug hints. If you are facing the same problem, try the solutions here first.
Expected Results:
- Bode Plot shows enough suppression at noise signal frequency.
- Waveform shows clear HIGH and LOW signals, a good example is shown below. (Green: input noise signal, blue: output filtered signal)
- Successfully demodulated messages with a reasonable PSR at 1000 packet counts.
Characterise your design (LTSpice and Breadboard Circuit)
To characterise your design, you could make use of the following:
- Analyze the frequency response (Bode Plot):
- LTSpice: Small Signal AC Analysis (sweep)
- Waveforms: Network
- Analyse the frequency components and power level:
- LTSpice: FFT
- Waveforms: Spectrum
- Observe the signal waveform:
- LTSpice: Simulate with recorded .sig file and probe the in/output
- Waveforms: Scope
- Eye Diagram:
- Waveforms: Scope
Common Debug Hints (when no PSR value is observed)
Possible cause 1: Signal Recording Error
Solution: Double-check the recording setting and redo the following:
Setting → Device Manager → Option 2 (2x16k)
Config → Samples: 32768, Rate: 4MHz, Base: 7.5ms
Zero Offset after recording
Possible cause 2: Transmitted Signal is weak
Solution: Check the PSR count when a clean signal is being transmitted. If it is relatively low (i.e., ~0.3 or lower), adjust your antenna length, and position or consider giving the receiver side a boost. To do so, go to the RTL-SDR Source block, change the Gain method to "Manual", and RF gain to 20dB. Run the transmission again, it should boost up to a relatively high PSR (~0.9) with a clean signal.
You are suggested to record signals at a private place rather than in the lab so that other teams who are transmitting at the same time will not affect your recording.
Possible cause 3: Cut-off too early
Solution: Check the bode plot with AD2, and make sure your wanted signal is not being suppressed.
Feed a clean signal recorded into your LTSpice, if you are unable to get a PSR or the PSR is obviously lower than what you observed through direct transmission, this confirms the possible cause.
When you are using trimmers, vibration, and impact during transport may cause their resistance to vary. You might want to tune the circuit regularly and eventually replace trimmers with fixed resistors.
Sometimes, your circuit is too noisy and it is hard to determine the passband gain from the bode plot, you can also pass the clean signal without interference, to see if you can recover any PSR.
Possible cause 4: Cut-off too late
Solution: Check the bode plot with AD2, and make sure the interference signal is being suppressed enough.
Feed a clean signal recorded into your LTSpice, if you are able to get a PSR off the same level of what you observed through direct transmission, gradually increase the level of suppression. 1/10, 1/5, 1/3 ... If at a certain step, you are unable to get any PSR, this confirms the possible cause.
You are the one who should decide what is a good suppression. Higher suppression usually means more components and thus higher cost, you should weigh between various aspects while designing a product.
Sometimes, your circuit is too noisy and it is hard to determine the passband gain from the bode plot, you can also make use of the FFT response function and exam the amplitude of signals at different frequencies.
Possible cause 5: Passband signal distorted.
Solution: Check the bode plot with AD2, you might notice crazy passband gain or ringing presents.
High passband gain might be introduced when you do not tune R1 and R2 together to match the unity gain, ringing might be due to the nature of the design of the filter.
They are unavoidable sometimes, but you can choose to shift the gain hump to the right place so that it will not affect your passband signal.
Possible cause 6: Unstable DC signal overriding
or input/output signal not centered at 0.
Solution: The circuit is drawing power from your laptop USB adaptor, the DC power could be unstable, especially if you are not connecting your laptop to the power source. You might notice the signal output is rather "wavy" in LTSpice simulation and actual circuit experiments.
Hardware wise:
1. Zero offsets before exporting
2. AD2 1- GND connection
3. RTL-SDR GND connection
Software/Hardware wise:
You can always add a passive high pass filter at the output of the circuit to regulate the DC instability.
This high pass filter will not count towards your final design stage.
(HPF with cutoff ~ 160 kHz to reject lower frequencies (including DC noise))
Possible cause 7: Reception is very weak, and PSR with a clean signal is very low despite you putting the input and output very close and positioning in a clean environment.
Solution: Give a manual boost to your receiver by changing the RTS-SDR gain mode to Manual, and RF gain to 10 dB.
Notice that aiming for a high PSR is not the ultimate goal, your goal should be to get a comparable PSR after filtering out the noise. During the demo session, the teams from the same design will be using the same set of devices, so you should not panic if your friends are getting higher PSR than you during the lab sessions, it could simply be because of the difference between the computation power of your laptops.
Possible cause 8: Hardware limitation. (Laptop computation power not enough.)
Solution: Always use the laptop with better performance to transmit the signal. If you checked all the settings and brought the antennas very close, but still no PSR is shown, try to switch the transmitter and receiver laptop, and connect your laptop power supply and this usually solves the problem.
Possible cause 9: Hardware limitation. (Laptop not compatible with hardware)
Solution: This is a very rare situation but it happens. Especially with ThinkPad based on our past experience. If your bode plot, FFT, and waveform all looks promising and you have tried everything above, consider using the lab's desktop to run everything. It could be because your laptop does not work well with the devices. This could happen to both LTSpice simulation and physical circuits.
Possible cause 10: