# Gr-ais fails?

**URL:** <https://www.ruby-forum.com/t/gr-ais-fails/241323>\
**Category:** GNU Radio\
**Created:** [March 29, 2015, 5:54pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323 "2015-03-29T17:54:49Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [March 29, 2015, 5:54pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/1 "2015-03-29T17:54:49Z")

</div>

Hi,

with latest UHD and Gnuradio built from sources, gr-ais throws this  
error  
when callin ais\_rx:

ras@ubuntu:~$ ais\_rx

linux; GNU C++ version 4.8.2; Boost\_105400;  
UHD\_003.008.002-143-g8c20712d

– Operating over USB 3.

– Initialize CODEC control…

– Initialize Radio control…

– Performing register loopback test… pass

– Performing register loopback test… pass

– Performing CODEC loopback test… pass

– Performing CODEC loopback test… pass

– Asking for clock rate 32.000000 MHz…

– Actually got clock rate 32.000000 MHz.

– Performing timer loopback test… pass

– Performing timer loopback test… pass

– Setting master clock rate selection to ‘automatic’.

– Tune Request: 162.000000 MHz

– The RF LO does not support the requested frequency:

– Requested LO Frequency: 162.000000 MHz

– RF LO Result: 162.000000 MHz

– Attempted to use the DSP to reach the requested frequency:

– Desired DSP Frequency: -0.000000 MHz

– DSP Result: -0.000000 MHz

– Successfully tuned to 162.000000 MHz

–

Tuned to 162.000MHz

Setting gain to 38

Gain is 38

Rate is 250000

Using Volk machine: avx\_64\_mmx\_orc

Traceback (most recent call last):

File “/usr/local/bin/ais\_rx”, line 23, in

```
main()

```

File “/usr/local/bin/ais\_rx”, line 18, in main

```
tb = ais.radio.ais_radio(options)

```

File “/usr/local/lib/python2.7/dist-packages/ais/radio.py”, line 88,  
in  
**init**

```
self._rx_paths = (ais_rx(161.975e6 - 162.0e6, options.rate, "A"),

```

File “/usr/local/lib/python2.7/dist-packages/ais/radio.py”, line 63,  
in  
**init**

```
self.demod = ais.ais_demod(options) #ais_demod takes in complex 

```

baseband  
and spits out 1-bit unpacked bitstream

File “/usr/local/lib/python2.7/dist-packages/ais/ais\_demod.py”, line  
37,  
in **init**

```
self.preamble_detect = digital.msk_correlate_cc(self.preamble, 0.4,

```

self.\_samples\_per\_symbol)

AttributeError: ‘module’ object has no attribute ‘msk\_correlate\_cc’

ras@ubuntu:~$

Any ideas what is wrong?

Ralph.

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [March 30, 2015, 6:21pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/2 "2015-03-30T18:21:25Z")

</div>

Did you also clean and rebuild gr-ais?

M

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [March 31, 2015, 3:31am UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/3 "2015-03-31T03:31:01Z")

</div>

On Mar 30, 2015, at 9:19, Martin B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Did you also clean and rebuild gr-ais?
> 
> On 29.03.2015 08:53, Ralph A. Schmid, dk5ras wrote:  
> […]
> 
> > ```
> > self.preamble_detect = digital.msk_correlate_cc(self.preamble, 0.4,
> > 
> > ```
> > 
> > self.\_samples\_per\_symbol)
> > 
> > AttributeError: ‘module’ object has no attribute ‘msk\_correlate\_cc’

I hit this myself just recently.

Apparently, trunk gr-ais is too new: it requires a block  
gnuradio.digital.msk\_correlate\_cc, which was proposed but not yet  
merged:

> <https://github.com/gnuradio/gnuradio/pull/376>
>
> This branch separates out my and Andy Walls's work on modifying the correlate an…d sync block from the MSK branch on which it was based, and rebases the work on master.
> 
> My work allows the user to modulate a candidate (preamble) vector with the modulator of their choice using the modulate\_vector block, allowing the correlate\_and\_sync block to therefore be modulation independent. I've updated the test\_corr\_and\_sync example in gr-digital/examples to show the operation of the new block.
> 
> Andy's work fixed a lot of bugs in the block, adjusted phase\_est and time\_est calculations, Volkified the work function, and generally cleaned things up.

I, too, would like to use gr-ais and hope this problem gets resolved  
soon (either by gnuradio accepting the patch or gr-ais offering a stable  
branch).

–  
Kevin R. [http://switchb.org/kpreid/](http://switchb.org/kpreid/)

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [March 31, 2015, 3:33am UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/4 "2015-03-31T03:33:52Z")

</div>

Yes, this is my fault. I’ve been catastrophically lazy about removing  
the  
commits to gr-ais’s trunk in order to make it work with mainline GR,  
because I’ve been hoping things would have been integrated sooner. Tell  
you  
what, I’ll create a branch of gr-ais which just includes the required  
blocks, in-tree, and push that to the trunk until we get all the GR work  
sorted out. It’s going to take me some time though.

–n

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [March 31, 2015, 3:59pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/5 "2015-03-31T15:59:41Z")

</div>

Yes, I did, even deleted the gr-ais folder and loaded a completely new  
git  
repo…

Ralph.

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [March 31, 2015, 4:01pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/6 "2015-03-31T16:01:28Z")

</div>

Hey, thanks a lot! I will give it a shot when finished, maybe I will be  
in reach of some ships them again.

Ralph.

From: [discuss-gnuradio-bounces+ralph=removed\_email\_address@domain.invalid](mailto:discuss-gnuradio-bounces+ralph=removed_email_address@domain.invalid)  
[[mailto:discuss-gnuradio-bounces+ralph=removed\_email\_address@domain.invalid](mailto:discuss-gnuradio-bounces+ralph=removed_email_address@domain.invalid)] On Behalf Of  
Nick F.  
Sent: Tuesday, March 31, 2015 3:32 AM  
To: Kevin R.  
Cc: GNU Radio D.ion List  
Subject: Re: [Discuss-gnuradio] gr-ais fails?

Yes, this is my fault. I’ve been catastrophically lazy about removing  
the commits to gr-ais’s trunk in order to make it work with mainline GR,  
because I’ve been hoping things would have been integrated sooner. Tell  
you what, I’ll create a branch of gr-ais which just includes the  
required blocks, in-tree, and push that to the trunk until we get all  
the GR work sorted out. It’s going to take me some time though.

–n

On Mon, Mar 30, 2015 at 6:29 PM, Kevin R. \<[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) \> wrote:

On Mar 30, 2015, at 9:19, Martin B. \<[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) \> wrote:

> Did you also clean and rebuild gr-ais?
> 
> On 29.03.2015 08:53, Ralph A. Schmid, dk5ras wrote:  
> […]
> 
> > ```
> > self.preamble_detect = digital.msk_correlate_cc(self.preamble, 0.4,
> > 
> > ```
> > 
> > self.\_samples\_per\_symbol)
> > 
> > AttributeError: ‘module’ object has no attribute ‘msk\_correlate\_cc’

I hit this myself just recently.

Apparently, trunk gr-ais is “too new”: it requires a block  
gnuradio.digital.msk\_correlate\_cc, which was proposed but not yet  
merged:

> <https://github.com/gnuradio/gnuradio/pull/376>
>
> This branch separates out my and Andy Walls's work on modifying the correlate an…d sync block from the MSK branch on which it was based, and rebases the work on master.
> 
> My work allows the user to modulate a candidate (preamble) vector with the modulator of their choice using the modulate\_vector block, allowing the correlate\_and\_sync block to therefore be modulation independent. I've updated the test\_corr\_and\_sync example in gr-digital/examples to show the operation of the new block.
> 
> Andy's work fixed a lot of bugs in the block, adjusted phase\_est and time\_est calculations, Volkified the work function, and generally cleaned things up.

I, too, would like to use gr-ais and hope this problem gets resolved  
soon (either by gnuradio accepting the patch or gr-ais offering a  
“stable branch”).

–  
Kevin R. [http://switchb.org/kpreid/](http://switchb.org/kpreid/)

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [April 14, 2015, 5:36pm UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/7 "2015-04-14T17:36:07Z")

</div>

Just FYI, I’ve added the things I needed to add to get gr-ais working  
against mainline Gnuradio again. I’ve tested with USRP1 and N210 and it  
works OK here. More testing is of course welcome.

–n

On Tue, Mar 31, 2015 at 6:59 AM, Ralph A. Schmid, dk5ras  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/91b2a8/32.png) [@Ralph\_ASSchmidS\_dk](https://www.ruby-forum.com/u/Ralph_ASSchmidS_dk)\
**Post date:** [April 15, 2015, 11:33am UTC](https://www.ruby-forum.com/t/gr-ais-fails/241323/8 "2015-04-15T11:33:21Z")

</div>

Great, I will do a basic test later, to see if the application starts.  
Just no ships here around, real reception trials have to wait 🙂

Ralph.

From: Nick F. [[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)]  
Sent: Tuesday, April 14, 2015 5:34 PM  
To: Ralph A. Schmid, dk5ras  
Cc: Kevin R.; GNU Radio D.ion List  
Subject: Re: [Discuss-gnuradio] gr-ais fails?

Just FYI, I’ve added the things I needed to add to get gr-ais working  
against mainline Gnuradio again. I’ve tested with USRP1 and N210 and it  
works OK here. More testing is of course welcome.

–n

On Tue, Mar 31, 2015 at 6:59 AM, Ralph A. Schmid, dk5ras  
\<[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) [mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) \> wrote:

Hey, thanks a lot! I will give it a shot when finished, maybe I will be  
in reach of some ships them again.

Ralph.

From: [discuss-gnuradio-bounces+ralph=removed\_email\_address@domain.invalid](mailto:discuss-gnuradio-bounces+ralph=removed_email_address@domain.invalid)  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) [mailto:discuss-gnuradio-bounces+ralph  
[mailto:discuss-gnuradio-bounces%2Bralph](mailto:discuss-gnuradio-bounces%2Bralph) =removed\_email\_address@domain.invalid  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) ] On Behalf Of Nick F.  
Sent: Tuesday, March 31, 2015 3:32 AM  
To: Kevin R.  
Cc: GNU Radio D.ion List  
Subject: Re: [Discuss-gnuradio] gr-ais fails?

Yes, this is my fault. I’ve been catastrophically lazy about removing  
the commits to gr-ais’s trunk in order to make it work with mainline GR,  
because I’ve been hoping things would have been integrated sooner. Tell  
you what, I’ll create a branch of gr-ais which just includes the  
required blocks, in-tree, and push that to the trunk until we get all  
the GR work sorted out. It’s going to take me some time though.

–n

On Mon, Mar 30, 2015 at 6:29 PM, Kevin R. \<[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) \> wrote:

On Mar 30, 2015, at 9:19, Martin B. \<[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) \> wrote:

> Did you also clean and rebuild gr-ais?
> 
> On 29.03.2015 08:53, Ralph A. Schmid, dk5ras wrote:  
> […]
> 
> > ```
> > self.preamble_detect = digital.msk_correlate_cc(self.preamble, 0.4,
> > 
> > ```
> > 
> > self.\_samples\_per\_symbol)
> > 
> > AttributeError: ‘module’ object has no attribute ‘msk\_correlate\_cc’

I hit this myself just recently.

Apparently, trunk gr-ais is “too new”: it requires a block  
gnuradio.digital.msk\_correlate\_cc, which was proposed but not yet  
merged:

> <https://github.com/gnuradio/gnuradio/pull/376>
>
> This branch separates out my and Andy Walls's work on modifying the correlate an…d sync block from the MSK branch on which it was based, and rebases the work on master.
> 
> My work allows the user to modulate a candidate (preamble) vector with the modulator of their choice using the modulate\_vector block, allowing the correlate\_and\_sync block to therefore be modulation independent. I've updated the test\_corr\_and\_sync example in gr-digital/examples to show the operation of the new block.
> 
> Andy's work fixed a lot of bugs in the block, adjusted phase\_est and time\_est calculations, Volkified the work function, and generally cleaned things up.

I, too, would like to use gr-ais and hope this problem gets resolved  
soon (either by gnuradio accepting the patch or gr-ais offering a  
“stable branch”).

–  
Kevin R. [http://switchb.org/kpreid/](http://switchb.org/kpreid/)
