I've lost oversight.. is self a hier block, in this case?

On 11/04/2015 06:49 PM, Nemanja Savic wrote:
> So, a block called db_logger is written in python and port is defined
> in following way:
> self.message_port_register_in(pmt.pmt_intern(in_port))
>
> Well, I am not sure, this works fine in older version.
>
> On Wed, Nov 4, 2015 at 6:41 PM, Marcus Müller
> <marcus.muel...@ettus.com <mailto:marcus.muel...@ettus.com>> wrote:
>
>     What does your message_port_register_in call look like?
>     Or is it a message_port_register_hier_in call? (should it be?)
>
>     Cheers,
>     Marcus
>
>
>     On 11/04/2015 06:37 PM, Nemanja Savic wrote:
>>     Hi,
>>
>>     ok thanks. Does it matter how I everything is declared, but it is
>>     clear that something changed since 3.6.5.1.
>>     So i have hier block written in python where i define
>>     in_port = 'in_port'
>>     out_port='out_port'
>>
>>     These arguments are passed in the following way:
>>     in_port is receiving port of a block that receives messages from
>>     blocks which have registered out_block as their transmitting port.
>>     out_port is passed to constructors of all transmitting blocks.
>>     They are passed as type const char*. Blocks have member
>>     d_msg_out_port defined as string. So something like this:
>>     d_msg_out_port(msg_out_port)
>>     ...
>>     body of constructor:
>>     message_port_register_out(pmt::mp(d_msg_out_port));
>>
>>     So, later on, at the end of hier block I call:
>>     self.msg_connect(self.SFL_90518279_pkt_def, out_port,
>>     self.db_logger, in_port)
>>
>>     Could it be that problem is something with strings (I am not sure
>>     is null character is passed, no idea)?
>>
>>     Nemanja
>>
>>     On Wed, Nov 4, 2015 at 6:26 PM, Marcus Müller
>>     <marcus.muel...@ettus.com <mailto:marcus.muel...@ettus.com>> wrote:
>>
>>         Hi,
>>
>>         not really, what it says is really "I can't find <element> in
>>         <list of elements>", with that list being the names of the
>>         registered ports.
>>         So, the interesting thing is that seemingly,comparin
>>         pmt::symbol("in_port") with pmt::symbol("in_port") doesn't
>>         quite work well.
>>
>>         I'd have to look into what pmt::comparator looks like; it's
>>         my first suspect for why that might fail.
>>
>>         Best regards,
>>         Marcus
>>
>>
>>
>>         On 11/04/2015 06:20 PM, Nemanja Savic wrote:
>>>         Hi,
>>>
>>>         hm, could just tell me if I am thinking wrong, but this
>>>         looks like some of my blocks is also called in_port?
>>>
>>>         Nemanja
>>>
>>>         On Wed, Nov 4, 2015 at 6:14 PM, Marcus Müller
>>>         <marcus.muel...@ettus.com <mailto:marcus.muel...@ettus.com>>
>>>         wrote:
>>>
>>>             Hi Nemanja,
>>>
>>>             a blind suspicion: as "system" is a port that should be
>>>             registered by the runtime for each block, there might be
>>>             some confusion happening.
>>>             Does it work better when you rename your block to
>>>             something else?
>>>
>>>             Best regards,
>>>             Marcus
>>>
>>>             On 11/04/2015 06:05 PM, Nemanja Savic wrote:
>>>>             Hi all guys,
>>>>
>>>>             I recently installed 3.7.8, and before that I had 3.6.5.1.
>>>>             I was using message passing in some of my blocks, but
>>>>             now I get error which is following:
>>>>
>>>>             Could not find port: in_port in:
>>>>             in_port
>>>>             system
>>>>
>>>>             Traceback (most recent call last):
>>>>               File "./top_block.py", line 178, in <module>
>>>>                 tb = top_block()
>>>>               File "./top_block.py", line 124, in __init__
>>>>                 self.TPMS_univ_TPMS_rec2_0 =
>>>>             TPMS.univ_TPMS_rec2("WBX_proba", samp_rate, 0.5, 45,
>>>>             "localhost", 2, "TEST_TRACK_TPMS", "nemanja",
>>>>             "nemanja", "det_id_proba", "detectors")
>>>>               File
>>>>             
>>>> "/scr1/nemanja/install/lib64/python2.6/site-packages/TPMS/univ_TPMS_rec2.py",
>>>>             line 145, in __init__
>>>>                
>>>>             self.msg_connect(self.SEL_90518407_pkt_def.SCHRADER_def, 
>>>> out_port,
>>>>             self.db_logger, in_port)
>>>>               File
>>>>             
>>>> "/scr1/nemanja/install/lib64/python2.6/site-packages/gnuradio/gr/hier_block2.py",
>>>>             line 59, in wrapped
>>>>                 func(self, src.to_basic_block(), srcport,
>>>>             dst.to_basic_block(), dstport)
>>>>               File
>>>>             
>>>> "/scr1/nemanja/install/lib64/python2.6/site-packages/gnuradio/gr/hier_block2.py",
>>>>             line 131, in msg_connect
>>>>                 self.primitive_msg_connect(*args)
>>>>               File
>>>>             
>>>> "/scr1/nemanja/install/lib64/python2.6/site-packages/gnuradio/gr/runtime_swig.py",
>>>>             line 3043, in primitive_msg_connect
>>>>                 return
>>>>             _runtime_swig.hier_block2_sptr_primitive_msg_connect(self,
>>>>             *args)
>>>>             RuntimeError: invalid msg port in connect() or disconnect()
>>>>
>>>>             I see that there is a function for checking whether the
>>>>             ports are valid, but don't get what's wrong with my
>>>>             ports. Namely, I have hier block and a few blocks are
>>>>             sending messages to a single blocks where the messages
>>>>             are decoded and written to darabase. I tried to
>>>>             hardcode names of the blocks and that also didn't help.
>>>>
>>>>             Thanx,
>>>>
>>>>             -- 
>>>>             Nemanja Savić
>>>>
>>>>
>>>>             _______________________________________________
>>>>             Discuss-gnuradio mailing list
>>>>             Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>>>>             https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>
>>>
>>>             _______________________________________________
>>>             Discuss-gnuradio mailing list
>>>             Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>>>             https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>
>>>
>>>
>>>
>>>         -- 
>>>         Nemanja Savić
>>
>>
>>
>>
>>     -- 
>>     Nemanja Savić
>
>
>
>
> -- 
> Nemanja Savić

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

Reply via email to