drmpeg / gr-paint

An OFDM Spectrum Painter for GNU Radio
GNU General Public License v3.0
135 stars 25 forks source link

How can my Hackrf using it #6

Open TW-OY opened 8 years ago

TW-OY commented 8 years ago

i've got a hackrf device, i want wo use the demo,how.I've changed uhd module to osmocom-sink modoule but i can't get the right answer,WHY?

drmpeg commented 8 years ago

I'm not sure what you mean by the "right answer". In general, gr-paint is used with two SDR's, one for transmit and one for receive. You can also use an SDR that is full-duplex capable, like a bladeRF or USRP.

Unfortunately, the hackRF is half-duplex only. There is no way to see your own transmitted signal with just a hackRF.

TW-OY commented 8 years ago

I've tried using 2 hackrf devices, just like the example in your repo, one for transmit and one for receive. I just simply changed the USRP-sink into osmosdr-sink and draw a flow graph on the receive device side just as you designed in the example(osmosdr connects with qt-waterfall-sink). But when i started the program, i can't get the imgae. Do you have some ideas?

drmpeg commented 8 years ago

A couple of things. First, make sure that you're enumerating the two hackRF's correctly. I don't have a hackRF here, but I believe you would put hackrf=0 in the Device Arguments of one osmocom block and hackrf=1 in the Device Arguments of the other osmocom block.

Second, you may have to adjust the TX and RX gains to get enough signal, especially if you're using antennas between each hackRF.

TW-OY commented 8 years ago

I think probably I don't adjust the gains correctly, I will try it later. Thanks~

ckuethe commented 8 years ago

@hateonion try using osmocom_fft and osmocom_siggen just to get get a simple end-to-end test. That'll also give you some idea of how much gain you'll need.

Also, consider connecting a waterfall to the output of the painter block (you can leave the osmocom sink enabled) to monitor what you're attempting to transmit. That won't tell you what actually went on the air, but at least you know what went into the radio.

Finally, the hackrf=XYZ argument takes the serial number of the device.

TW-OY commented 8 years ago

Thanks for your reply. Finally the demo passed by using gqrx. Your suggestion is very constructive. Thanks a lot