Re: [Discuss-gnuradio] ATSC fixups
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 wrote: > 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 > 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 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 wa
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 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 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
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 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
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 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
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
Re: [Discuss-gnuradio] ATSC fixups
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 wrote: > On Sun, Jul 14, 2013 at 12:03 PM, Andrew Davis wrote: > > >> 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
On Sun, Jul 14, 2013 at 12:03 PM, Andrew Davis wrote: > 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
[Discuss-gnuradio] ATSC fixups
Hello all, 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 Thank you Andrew ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio