Thanks for your help. I've adapted the sample rate of the result coming out of the low-pass filter now. However, if I decimate much further, my signal becomes a bit too weak I think.
New chart:
http://imgur.com/mbt288s,etHbYLT#0
New result:
http://imgur.com/mbt288s,etHbYLT#1
Is this a better approach?
The initial error still persists though.
Regards
From: miboe60@hotmail.com
To: tom@trondeau.com
Date: Thu, 20 Aug 2015 09:09:42 +0200
CC: discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] GnuRadio: Clock Recovery MM: imu out of bounds
Thanks for your answer. That's indeed something that I need to think about more. However, as I understand it, the samples per symbol rate is equal to (samp_rate / data_rate). My sample rate is 500k, and my data rate (i think) is only around 100 or 200. See this figure of my (cleaned) signal:
http://imgur.com/8pNqCop
You see that it takes approximately 10 ms to transmit one symbol. This means 100 symbols per second. As I have 500k samples per second, this means 5k samples per symbol, right?
However, I have tried setting the samples per symbol to 4, just to try, and the 'out of bounds' error still persists.
Regards,
Michael
From: tom@trondeau.com
Date: Wed, 19 Aug 2015 09:41:19 -0400
Subject: Re: [Discuss-gnuradio] GnuRadio: Clock Recovery MM: imu out of bounds
To: miboe60@hotmail.com
CC: discuss-gnuradio@gnu.org
I have created a flowgraph, based on an example of Michael Ossmann, which takes in a signal, and should output bits.
I need to use the clock recovery MM block, which I do not fully understand yet. However, after reading some blogposts, I am quite sure that I can leave most of the settings default, except for the Omega one. Here's my flowgraph:
http://imgur.com/pHRXnZu
When running this flowgraph, it gives me the following error:thread[thread-per-block[5]:<block clock_recovery_mm_ff (9)>]: mmse_fir_interpolator_ff: imu out of bounds.
While searching, I stumbled upon this piece of code in the source of GnuRadio:
int imu = (int)rint(mu * NSTEPS);
if((imu < 0) || (imu > NSTEPS)) {
throw std::runtime_error("mmse_fir_interpolator_ff: imu out of bounds.\n");
}So, I suspect it is not due to my Omega setting (which might be wrong, I have to play with that setting), but that it is due to my Mu setting, which is just the default (0.5). However, I understand that Mu needs to be between 0 and 1, so I do not really understand what the problem is. Anyone who does?
Environment details:
- GNU Radio Companion 3.7.7.1
- Running a GNU Radio live DVD in a virtual machine (VirtualBox 4.2.12) on Windows 7.
- Using Volk machine: ssse3_64
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
No comments:
Post a Comment