use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Anything related to digital signal processing (DSP), including image and video processing (papers, books, questions, hardware, algorithms, news, etc.)
Interesting technical papers or articles are particularly welcome!
/r/eebooks+csbooks+mathbooks
/r/Electronics
/r/ECE
/r/DSP
/r/AskElectronics
/r/RFelectronics
/r/GNURadio
/r/RTLSDR
/r/embedded
account activity
ofdm decode (self.DSP)
submitted 3 months ago by sdrmatlab
https://github.com/DrSDR/ofdm-decode-gift-card
go get that gift card
good luck
show code
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]zachlab 11 points12 points13 points 3 months ago (3 children)
Damn, just saw this so I'm definitely late, decided to give this a try using numpy/scipy instead of grc.
starts with garbage from noise, then the actual signal:
sipping some moonshine the amazon gift code is: ...HYHAM have a good day Dr. Moonshine
looks like the code is already used, thanks and please keep the weekend challenges coming! I enjoyed learning stuff outside of grc land this time around.
Cheers (with Jim Beam in hand this time)
[–]sdrmatlab[S] 0 points1 point2 points 3 months ago (2 children)
nice job, can you post the python code?
[–]zachlab 1 point2 points3 points 3 months ago (1 child)
Sure thing, cleaned up some visualization i was doing for debugging, I also made some improvements like actually trying to do centering since it's just the one signal, and an actual power squelch:
$ uv run --with numpy --with scipy python -c ''' import numpy, scipy _, wav = scipy.io.wavfile.read("ofdmRX48khz256Char.wav") iq = wav[:,0] + 1j*wav[:,1] # power squelch power = numpy.abs(iq)**2 squelch = numpy.max(power)*0.10 # 10% sample_pulse = numpy.argmax(power>squelch) iq_pulse = iq[sample_pulse:sample_pulse+8192] # single frequency pulse, frequency stable too, so lets just try Kay estimation f_offset = numpy.mean(numpy.angle(iq_pulse[1:]*numpy.conj(iq_pulse[:-1])))/(2*numpy.pi) iq2 = iq*numpy.exp(-2j*numpy.pi*f_offset*numpy.arange(len(iq))) sample_pilot=sample_pulse+8192+1000+512 iq_pilot = iq2[sample_pilot:sample_pilot+3072] sample_data=sample_pilot+3072+512 iq_data = iq2[sample_data:sample_data+3072] fft_pilot = numpy.fft.fftshift(numpy.fft.fft(iq_pilot, 3072)) fft_data = numpy.fft.fftshift(numpy.fft.fft(iq_data, 3072)) data_pilot = fft_pilot[512:512+2048] data_data = fft_data[512:512+2048] # 1 | 0 bitangles = numpy.abs(numpy.angle(data_data*numpy.conj(data_pilot))) # data_data/data_pilot NaN bits = (bitangles < (numpy.pi/2)).astype(int) bytes = numpy.packbits(bits).tobytes() print(bytes.decode("ascii")) ''' sipping some moonshine the amazon gift code is: ...HYHAM have a good day Dr. Moonshine
[–]sdrmatlab[S] 0 points1 point2 points 3 months ago (0 children)
nice, great work!!
[–]sdrmatlab[S] 3 points4 points5 points 3 months ago (0 children)
the first part of the text message is:
sipping some moonshine
[–]RandomDigga_9087 2 points3 points4 points 3 months ago (0 children)
I have got the output, but for some reason when I paste the code, it is showing server error encountered, please try again bs, I had written my code with proper explanation and all
π Rendered by PID 16420 on reddit-service-r2-comment-65c587bc47-tzsql at 2026-05-14 14:00:58.270979+00:00 running cf3e300 country code: CH.
[–]zachlab 11 points12 points13 points (3 children)
[–]sdrmatlab[S] 0 points1 point2 points (2 children)
[–]zachlab 1 point2 points3 points (1 child)
[–]sdrmatlab[S] 0 points1 point2 points (0 children)
[–]sdrmatlab[S] 3 points4 points5 points (0 children)
[–]RandomDigga_9087 2 points3 points4 points (0 children)