Re: [Discuss-gnuradio] ATSC fixups

2013-08-07 Thread Andrew Davis
Yeah, That doesn't seem to be anything I messed with, anyway I pushed
another commit that if compiles for everyone could be merged into the
Gnuradio master. I found that the Magic coupling constant isn't so magic
and can be complexly removed and replaced with an AGC block set to a
reference level of 4 ( the mean value of the pseudo-random 1 3 5 7 levels
of the ATSC PAM signal ). So I separated that out of the fpll block. For
some reason I simply cannot make a complex PLL that works the same way the
old PLL works, I get close but i'm still missing something, once I get that
figured out it will shave off approximately 12% from the decoding time (
thanks to the new performance counters I can now easily track what my
fix-ups are doing and whats left before real-time decoding ).

Thanks you,
Andrew


On Wed, Aug 7, 2013 at 4:11 PM, Souryal, Michael
michael.sour...@nist.govwrote:

  I tried building this later push and this is as far as I got.

 ** **

 [ 70%] Building CXX object
 gr-qtgui/lib/CMakeFiles/gnuradio-qtgui.dir/TimeDomainDisplayPlot.cc.o

 /raid/souryal/gnuradio-atscfixup/gr-qtgui/lib/TimeDomainDisplayPlot.cc: In
 member function ‘void TimeDomainDisplayPlot::setSemilogy(bool)’:

 /raid/souryal/gnuradio-atscfixup/gr-qtgui/lib/TimeDomainDisplayPlot.cc:358:
 error: ‘class QwtScaleDiv’ has no member named ‘upperBound’

 make[2]: ***
 [gr-qtgui/lib/CMakeFiles/gnuradio-qtgui.dir/TimeDomainDisplayPlot.cc.o]
 Error 1

 make[1]: *** [gr-qtgui/lib/CMakeFiles/gnuradio-qtgui.dir/all] Error 2

 make: *** [all] Error 2

 ** **

 It doesn’t look related to ATSC, though.

 ** **

 *From:* discuss-gnuradio-bounces+souryal=nist@gnu.org [mailto:
 discuss-gnuradio-bounces+souryal=nist@gnu.org] *On Behalf Of *Andrew
 Davis
 *Sent:* Monday, August 05, 2013 3:37 PM
 *To:* M. Ranganathan
 *Cc:* GNURadio Discussion List
 *Subject:* Re: [Discuss-gnuradio] ATSC fixups

 ** **

 OK, pushed, could you see if that works better?

 ** **

 Thank you

 Andrew

 ** **

 On Mon, Aug 5, 2013 at 2:50 PM, Andrew Davis glneolistm...@gmail.com
 wrote:

 It was removed and left in fpll.h, i'll push a fix in just a bit, in
 the meantime you could just remove the include line from fpll.h

 ** **

 Thank you

 Andrew

 ** **

 On Mon, Aug 5, 2013 at 1:46 PM, M. Ranganathan mra...@gmail.com wrote:**
 **

 Hello,

 I git cloned the atscfixup branch and tried building it. Here's as far as
 I got:


 In file included from
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/lib/receiver/atsc_fpll.cc:27:
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/include/gnuradio/atsc/fpll.h:32:44:
 error: gnuradio/atsc/diag_output_impl.h: No such file or directory

 Perhaps this file was accidentally left out of the repository (?)

 Ranga



 

 ** **

 On Mon, Jul 15, 2013 at 10:56 PM, Johnathan Corgan 
 johnat...@corganlabs.com wrote:

   On 07/15/2013 07:01 PM, Andrew Davis wrote:

  After this stuff and the reorganization a simple diff would not have
  saved much, also i'm working on 'atsc_tx.py',so 'all_atsc.py' would
  be confusing, hence the name change.

 First, let me say that I'm very happy this code is getting some
 attention. It was originally written to use the low-IF output of a TV
 tuner and ADC, and also when GNU Radio only had a single-threaded
 scheduler.  Later, it was only minimally modified to use the USRP
 complex baseband IQ output. (I wasn't around GNU Radio at the time and
 the above is only what I surmise by looking at the code history.)

 The changes you describe are more like it would have been written had
 the USRP existed at the time.

 The all_atsc.py file was a work-in-progress effort by Ben Reynwar that I
 merged in, but he and I never finished what we were going to do with it.**
 **


  Also the other scripts seem unnecessary with the new
  thread-per-block sceduler, the also seem to cause a lot of beginners
  confusion. So I felt they needed to go.

 Agree.


  I have also built a ( semi ) working complex fpll for gr-atsc, this
  removes the need for up-converting and the filtering after the
  current fpll, my next atsc_rx will need the new script style. After I
  finish updating the bit timing loop we will be almost real time I
  believe!

 The upconversion and filtering is a large CPU waste when it could be
 done at baseband, but it seems this was just a quick-and-dirty way to
 get the baseband IQ from a USRP to look like a low-IF output instead in
 order to re-use what was already written and working.

 Real-time execution would be a welcome accomplishment!


  P.S. I could still just do the diff to the old all_atsc.py and rename
  if you want.

 No need.

 By the way, before any of this can be merged, we'll need a copyright
 assignment from you.  I'll email you off-list about how this works.

 Thanks again for working on this.


 --
 Johnathan Corgan
 Corgan Labs - SDR Training and Development Services

Re: [Discuss-gnuradio] ATSC fixups

2013-08-05 Thread M. Ranganathan
Hello,

I git cloned the atscfixup branch and tried building it. Here's as far as I
got:

In file included from
/users/mranga/gr-atscfixup/gnuradio/gr-atsc/lib/receiver/atsc_fpll.cc:27:
/users/mranga/gr-atscfixup/gnuradio/gr-atsc/include/gnuradio/atsc/fpll.h:32:44:
error: gnuradio/atsc/diag_output_impl.h: No such file or directory

Perhaps this file was accidentally left out of the repository (?)

Ranga





On Mon, Jul 15, 2013 at 10:56 PM, Johnathan Corgan johnat...@corganlabs.com
 wrote:

 On 07/15/2013 07:01 PM, Andrew Davis wrote:

  After this stuff and the reorganization a simple diff would not have
  saved much, also i'm working on 'atsc_tx.py',so 'all_atsc.py' would
  be confusing, hence the name change.

 First, let me say that I'm very happy this code is getting some
 attention. It was originally written to use the low-IF output of a TV
 tuner and ADC, and also when GNU Radio only had a single-threaded
 scheduler.  Later, it was only minimally modified to use the USRP
 complex baseband IQ output. (I wasn't around GNU Radio at the time and
 the above is only what I surmise by looking at the code history.)

 The changes you describe are more like it would have been written had
 the USRP existed at the time.

 The all_atsc.py file was a work-in-progress effort by Ben Reynwar that I
 merged in, but he and I never finished what we were going to do with it.

  Also the other scripts seem unnecessary with the new
  thread-per-block sceduler, the also seem to cause a lot of beginners
  confusion. So I felt they needed to go.

 Agree.

  I have also built a ( semi ) working complex fpll for gr-atsc, this
  removes the need for up-converting and the filtering after the
  current fpll, my next atsc_rx will need the new script style. After I
  finish updating the bit timing loop we will be almost real time I
  believe!

 The upconversion and filtering is a large CPU waste when it could be
 done at baseband, but it seems this was just a quick-and-dirty way to
 get the baseband IQ from a USRP to look like a low-IF output instead in
 order to re-use what was already written and working.

 Real-time execution would be a welcome accomplishment!

  P.S. I could still just do the diff to the old all_atsc.py and rename
  if you want.

 No need.

 By the way, before any of this can be merged, we'll need a copyright
 assignment from you.  I'll email you off-list about how this works.

 Thanks again for working on this.

 --
 Johnathan Corgan
 Corgan Labs - SDR Training and Development Services
 http://corganlabs.com


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




-- 
M. Ranganathan
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] ATSC fixups

2013-08-05 Thread Andrew Davis
It was removed and left in fpll.h, i'll push a fix in just a bit, in
the meantime you could just remove the include line from fpll.h

Thank you
Andrew


On Mon, Aug 5, 2013 at 1:46 PM, M. Ranganathan mra...@gmail.com wrote:

 Hello,

 I git cloned the atscfixup branch and tried building it. Here's as far as
 I got:

 In file included from
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/lib/receiver/atsc_fpll.cc:27:
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/include/gnuradio/atsc/fpll.h:32:44:
 error: gnuradio/atsc/diag_output_impl.h: No such file or directory

 Perhaps this file was accidentally left out of the repository (?)

 Ranga





 On Mon, Jul 15, 2013 at 10:56 PM, Johnathan Corgan 
 johnat...@corganlabs.com wrote:

 On 07/15/2013 07:01 PM, Andrew Davis wrote:

  After this stuff and the reorganization a simple diff would not have
  saved much, also i'm working on 'atsc_tx.py',so 'all_atsc.py' would
  be confusing, hence the name change.

 First, let me say that I'm very happy this code is getting some
 attention. It was originally written to use the low-IF output of a TV
 tuner and ADC, and also when GNU Radio only had a single-threaded
 scheduler.  Later, it was only minimally modified to use the USRP
 complex baseband IQ output. (I wasn't around GNU Radio at the time and
 the above is only what I surmise by looking at the code history.)

 The changes you describe are more like it would have been written had
 the USRP existed at the time.

 The all_atsc.py file was a work-in-progress effort by Ben Reynwar that I
 merged in, but he and I never finished what we were going to do with it.

  Also the other scripts seem unnecessary with the new
  thread-per-block sceduler, the also seem to cause a lot of beginners
  confusion. So I felt they needed to go.

 Agree.

  I have also built a ( semi ) working complex fpll for gr-atsc, this
  removes the need for up-converting and the filtering after the
  current fpll, my next atsc_rx will need the new script style. After I
  finish updating the bit timing loop we will be almost real time I
  believe!

 The upconversion and filtering is a large CPU waste when it could be
 done at baseband, but it seems this was just a quick-and-dirty way to
 get the baseband IQ from a USRP to look like a low-IF output instead in
 order to re-use what was already written and working.

 Real-time execution would be a welcome accomplishment!

  P.S. I could still just do the diff to the old all_atsc.py and rename
  if you want.

 No need.

 By the way, before any of this can be merged, we'll need a copyright
 assignment from you.  I'll email you off-list about how this works.

 Thanks again for working on this.

 --
 Johnathan Corgan
 Corgan Labs - SDR Training and Development Services
 http://corganlabs.com


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




 --
 M. Ranganathan

 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] ATSC fixups

2013-08-05 Thread Andrew Davis
OK, pushed, could you see if that works better?

Thank you
Andrew


On Mon, Aug 5, 2013 at 2:50 PM, Andrew Davis glneolistm...@gmail.comwrote:

 It was removed and left in fpll.h, i'll push a fix in just a bit, in
 the meantime you could just remove the include line from fpll.h

 Thank you
 Andrew


 On Mon, Aug 5, 2013 at 1:46 PM, M. Ranganathan mra...@gmail.com wrote:

 Hello,

 I git cloned the atscfixup branch and tried building it. Here's as far as
 I got:

 In file included from
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/lib/receiver/atsc_fpll.cc:27:
 /users/mranga/gr-atscfixup/gnuradio/gr-atsc/include/gnuradio/atsc/fpll.h:32:44:
 error: gnuradio/atsc/diag_output_impl.h: No such file or directory

 Perhaps this file was accidentally left out of the repository (?)

 Ranga





 On Mon, Jul 15, 2013 at 10:56 PM, Johnathan Corgan 
 johnat...@corganlabs.com wrote:

 On 07/15/2013 07:01 PM, Andrew Davis wrote:

  After this stuff and the reorganization a simple diff would not have
  saved much, also i'm working on 'atsc_tx.py',so 'all_atsc.py' would
  be confusing, hence the name change.

 First, let me say that I'm very happy this code is getting some
 attention. It was originally written to use the low-IF output of a TV
 tuner and ADC, and also when GNU Radio only had a single-threaded
 scheduler.  Later, it was only minimally modified to use the USRP
 complex baseband IQ output. (I wasn't around GNU Radio at the time and
 the above is only what I surmise by looking at the code history.)

 The changes you describe are more like it would have been written had
 the USRP existed at the time.

 The all_atsc.py file was a work-in-progress effort by Ben Reynwar that I
 merged in, but he and I never finished what we were going to do with it.

  Also the other scripts seem unnecessary with the new
  thread-per-block sceduler, the also seem to cause a lot of beginners
  confusion. So I felt they needed to go.

 Agree.

  I have also built a ( semi ) working complex fpll for gr-atsc, this
  removes the need for up-converting and the filtering after the
  current fpll, my next atsc_rx will need the new script style. After I
  finish updating the bit timing loop we will be almost real time I
  believe!

 The upconversion and filtering is a large CPU waste when it could be
 done at baseband, but it seems this was just a quick-and-dirty way to
 get the baseband IQ from a USRP to look like a low-IF output instead in
 order to re-use what was already written and working.

 Real-time execution would be a welcome accomplishment!

  P.S. I could still just do the diff to the old all_atsc.py and rename
  if you want.

 No need.

 By the way, before any of this can be merged, we'll need a copyright
 assignment from you.  I'll email you off-list about how this works.

 Thanks again for working on this.

 --
 Johnathan Corgan
 Corgan Labs - SDR Training and Development Services
 http://corganlabs.com


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




 --
 M. Ranganathan

 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] ATSC fixups

2013-07-15 Thread Johnathan Corgan
On Sun, Jul 14, 2013 at 12:03 PM, Andrew Davis glneolistm...@gmail.comwrote:


 I have been working on getting gr-atsc running again, I have found a few
 speedups and some bugs that prevented ATSC decoding from working with new
 versions of GNURadio. I have put these fixes into a branch that can now
 decode signals from my local TV station. The changes are in commit in this
 branch: https://github.com/glneo/gnuradio/tree/atscfixup


Andrew, can you detail the difference in implementation between the
atsc_rx.py file you added and the all_atsc.py file that was there already?

-- 
Johnathan Corgan
Corgan Labs - SDR Training and Development Services
http://corganlabs.com
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] ATSC fixups

2013-07-15 Thread Andrew Davis
Sure:

- first the description is correct and not just copied from interp_short.py
- removed the writing to 'atsc_complex.data' as this uses a lot of space
and seems to have no meaning outside of debugging
- I use interleave_short_to_complex instead of s2s - s2f - f2c chain
- lp_coeffs and duc_coeffs uses input_rate instead of just the number,
should make changing it easier
- lp_coeffs no longer arbitrarily adds 3 gain
- duc now shifts the frequency in the correct direction
- the root raised cosine filter taps no longer need to be heterodyned into
place as I just use it at baseband
- the root raised cosine filer gets used now ( for some reason it was not
in the chain before and this was severely causing ISI )
- lower_edge and upper_edge seemed arbitrary and were not in the right spot
anyway

After this stuff and the reorganization a simple diff would not have saved
much,
also i'm working on 'atsc_tx.py',so 'all_atsc.py' would be confusing, hence
the name change.

Also the other scripts seem unnecessary with the new thread-per-block
sceduler, the also seem to cause
a lot of beginners confusion. So I felt they needed to go.

I have also built a ( semi ) working complex fpll for gr-atsc, this removes
the need for up-converting and the filtering
after the current fpll, my next atsc_rx will need the new script style.
After I finish updating the bit timing loop
we will be almost real time I believe!

P.S. I could still just do the diff to the old all_atsc.py and rename if
you want.

Thank you
Andrew


On Mon, Jul 15, 2013 at 6:52 PM, Johnathan Corgan
johnat...@corganlabs.comwrote:

 On Sun, Jul 14, 2013 at 12:03 PM, Andrew Davis glneolistm...@gmail.comwrote:


 I have been working on getting gr-atsc running again, I have found a few
 speedups and some bugs that prevented ATSC decoding from working with new
 versions of GNURadio. I have put these fixes into a branch that can now
 decode signals from my local TV station. The changes are in commit in this
 branch: https://github.com/glneo/gnuradio/tree/atscfixup


 Andrew, can you detail the difference in implementation between the
 atsc_rx.py file you added and the all_atsc.py file that was there already?

 --
 Johnathan Corgan
 Corgan Labs - SDR Training and Development Services
 http://corganlabs.com
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] ATSC fixups

2013-07-15 Thread Johnathan Corgan
On 07/15/2013 07:01 PM, Andrew Davis wrote:

 After this stuff and the reorganization a simple diff would not have 
 saved much, also i'm working on 'atsc_tx.py',so 'all_atsc.py' would
 be confusing, hence the name change.

First, let me say that I'm very happy this code is getting some
attention. It was originally written to use the low-IF output of a TV
tuner and ADC, and also when GNU Radio only had a single-threaded
scheduler.  Later, it was only minimally modified to use the USRP
complex baseband IQ output. (I wasn't around GNU Radio at the time and
the above is only what I surmise by looking at the code history.)

The changes you describe are more like it would have been written had
the USRP existed at the time.

The all_atsc.py file was a work-in-progress effort by Ben Reynwar that I
merged in, but he and I never finished what we were going to do with it.

 Also the other scripts seem unnecessary with the new
 thread-per-block sceduler, the also seem to cause a lot of beginners
 confusion. So I felt they needed to go.

Agree.

 I have also built a ( semi ) working complex fpll for gr-atsc, this 
 removes the need for up-converting and the filtering after the
 current fpll, my next atsc_rx will need the new script style. After I
 finish updating the bit timing loop we will be almost real time I
 believe!

The upconversion and filtering is a large CPU waste when it could be
done at baseband, but it seems this was just a quick-and-dirty way to
get the baseband IQ from a USRP to look like a low-IF output instead in
order to re-use what was already written and working.

Real-time execution would be a welcome accomplishment!

 P.S. I could still just do the diff to the old all_atsc.py and rename
 if you want.

No need.

By the way, before any of this can be merged, we'll need a copyright
assignment from you.  I'll email you off-list about how this works.

Thanks again for working on this.

-- 
Johnathan Corgan
Corgan Labs - SDR Training and Development Services
http://corganlabs.com



signature.asc
Description: OpenPGP digital signature
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio