Using GNU Radio for ultrasonics 50 - 100kHz - Page 1
Forum section: electronics / rf-microwave

author: voltsandjolts
author_rank: Unknown
timestamp: September 08, 2018, 09:34:25 pm
content: Posting on this board because there might be some GNU Radio users here.I am just discovering GNU Radio and it looks like an excellent tool for communications experiments.However, I'm struggling to find suitable input/output hardware for an ultrasonic communications setup operating in the 50 - 100kHz range.Sound cards typically roll off at 20kHz even if they sample at 192ksps while the SDR hardware dongles operate down to a few MHz.Anybody got any ideas?I did consider using SPDIF soundcard I/O to get supply the raw samples at 192ksps to custom ADC (16 bit SAR) and DAC for increased bandwidth. That assumes the audio driver on the PC side doesn't do any filtering though.

author: coppercone2
author_rank: Super Contributor
timestamp: September 09, 2018, 02:02:50 am
content: this has been a pain in my ass too.I suspect everything will be really freaking expensive because no one without deep pockets is interested in this.You would just need to design a strong AA filter and PC interface (hard part).You can also try to make a mixer that down converts to the audio band, so you can use existing sound card programs. I don't know how well this would work.Odd way:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.823.1647&rep=rep1&type=pdfI think it would be easier to make some kinda analog circuit to do it then try to mess around with the computer interface personally, since there are all these nice programs that work with the sound card.But do have a peak here:https://en.wikipedia.org/wiki/List_of_software-defined_radios

author: xaxaxa
author_rank: Regular Contributor
timestamp: September 09, 2018, 04:42:25 am
content: it's not that hard to make a custom adc/dac board; just a fpga (usually xc6slx9) plus a usb3343 will get you a nice 40MB/s usb serial data pipe from/to the PC, and no custom drivers are needed (it shows up as a serial device).

author: coppercone2
author_rank: Super Contributor
timestamp: September 09, 2018, 05:08:53 am
content: that's enough for opengnu or other programs to interface with it?and fpga is alot of work unless there is a completely cookbook implementation.also if you make a audio downconverter you can listen to it with headphones. (but you would be band limited of course with 20KHz at a time, so you need a few sound cards)

author: hagster
author_rank: Frequent Contributor
timestamp: September 09, 2018, 05:58:15 am
content: How about the Red Pitaya SDR osciloscope sig gen?0 to 60MHz, but you can probably make it do 0 to 100kHz. Tx and Rx

author: voltsandjolts
author_rank: Unknown
timestamp: September 09, 2018, 07:55:21 am
content: Quote from: xaxaxa on September 09, 2018, 04:42:25 amI did consider this but as a new GNU Radio user I have never made any custom blocks for hardware interfacing. Your post prompted a google search which found this example of using an FTDI custom input block:https://github.com/digibird1/GNURadioFTDIBlockhttps://digibird1.wordpress.com/a-gnu-radio-source-block-for-the-ft232h-usb-2-0-controller/With a bit of effort a similar output block could be made. Hmmm.

author: voltsandjolts
author_rank: Unknown
timestamp: September 09, 2018, 08:02:11 am
content: Quote from: hagster on September 09, 2018, 05:58:15 amInteresting. I don't think Red Pitaya is directly supported by GNU Radio but there is some interface code for it discussed here:https://www.scivision.co/red-pitaya-gnuradio-setup/https://www.redpitaya.com/n34/red-pitaya-and-software-defined-radio

author: xaxaxa
author_rank: Regular Contributor
timestamp: September 09, 2018, 10:49:30 am
content: for 8 bit samples you don't need a custom input block; just use the "file source" with /dev/ttyACM... device file.

author: voltsandjolts
author_rank: Unknown
timestamp: September 09, 2018, 12:59:43 pm
content: Quote from: xaxaxa on September 09, 2018, 10:49:30 amThat's interesting but I will need more than 8 bit widthDo you know if the same method works for 8 bit output, i.e. point file sink to /dev/tty... ?

author: xaxaxa
author_rank: Regular Contributor
timestamp: September 09, 2018, 01:07:47 pm
content: Quote from: voltsandjolts on September 09, 2018, 12:59:43 pmYes output should work as well. For >8 bits I already have a vhdl core that will stuff 24 bit words into 3 bytes and send a sync word occasionally, plus a corresponding gnu radio source block; this is what I used for my bootleg plutosdr.

author: coppercone2
author_rank: Super Contributor
timestamp: September 09, 2018, 02:54:55 pm
content: I think I will try to throw something together with the AD734 and some filter blocks with a wein bridge oscillator.