I have two devices communicating at a frequency which I don't know. I want to listen to that communication so that I can replicate one of the devices and fool the other. Basically I want to reverse engineer the protocol.

So I would first need to detect the frequency, then I would need to translate the communication signals into some sort of (binary?) code so that I could start on reverse engineering the transmitted packets.

How should I go? What hardware do I need?

  • \$\begingroup\$ What devices are they? You should get all the information you need from the documentation. \$\endgroup\$ Jan 1, 2015 at 13:06
  • \$\begingroup\$ As you say, first detect the frequency. If you can look at TX or RX or their schematics you can estimate its likely range from component values, or even physical styles. Then either tune a general coverage receiver or use a spectrum analyser to cover that band. \$\endgroup\$
    – user16324
    Jan 1, 2015 at 13:25
  • 1
    \$\begingroup\$ If you don't want to drop $1000 on a spectrum analyzer, a frequency counter will help you find the frequency at much lower cost. \$\endgroup\$
    – Phil Frost
    Jan 1, 2015 at 14:03
  • \$\begingroup\$ Crystal Detector for code detection. \$\endgroup\$ Jan 1, 2015 at 14:41
  • \$\begingroup\$ Things like measuring antenna length and looking up data sheets of chips in the RF section can be a clue. If you find one of the various known SPI-connected 2.4 GHz chips for example, your best approach moves from RF to using a simple USB logic analyzer on the SPI bus. \$\endgroup\$ Jan 1, 2015 at 19:06

1 Answer 1


You don't tell us anything in your profile about your level of experience or education, so I'll give a very generic answer.

The best tool to start with would be a spectrum analyzer, which can tell you what frequency the system operates on, and also allows you to learn something about the overall patterns of activity, and can offer clues about the modulation techniques being used.

But to really dig into it and completely reverse-engineer the system, I would recommend using a software-defined radio (SDR) testbed. This is a simple hardware RF front end and digitizer that converts the signal into digital data, and all subsequent filtering, demodulating and decoding is done in software. This makes is easy to try different parameters and algorithms until you have all of the details.

  • \$\begingroup\$ All reasonably modern (i.e. later than 1980) spectrum analyzers have a mode where you can simply request I/Q data, so they can do the analysis on that data. \$\endgroup\$ Jan 1, 2015 at 15:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.