Hi, I've a kind of basic question, but it has taken me a lot of time to figure out. I made a signal processing chain of blocks (very simple in facts, generate PSDU then send as a message downstream, manipulate the content and count the number of message that I've received). In order to debug my blocks, in .cc files I'm using: std::cout << std::endl << "running routine in BLOCK 1" << std::endl; I populated my blocks with several messages, so I know what is going on every time. I can see the messages printed out in GRC (using NO Gui options). All the messages are correctly displayed, so I assumed that is running OK. Then, I generated the top_block.py file and put into the E110. When I run the top_block.py, I see only this: python top_block.py linux; GNU C++ version 4.5.3 20110311 (prerelease); Boost_104500; UHD_003.004.003-1-g64d15538 Press Enter to quit: gr_block_executor: source <gr_block uhd st2 (2)> produced no output. We're marking it DONE. It only shows the starting of the blocks and when it finishes, but it is not showing my debug messages.* If I'm using std::cout into C++ for every block, should I see those messages in my E110?.* Thanks a lot for your help, Jose
on 2012-10-23 06:29
on 2012-10-23 17:19
On 10/22/2012 09:28 PM, Jose Torres Diaz wrote: > I populated my blocks with several messages, so I know what is going on > produced no output. We're marking it DONE. I think its just a gnuradio version thing. We *just* recently made a change to work functions can return without producing samples. I mentioned this in the other thread. Seriously though, if you are just doing message passing stuff, and you are having issue w/ returning from work. Dont return. Just dont do it. Either block on pop_msg_queue or spin on whatever your function needs to check. The message passing is completely implemented outside of the scheduler. So this is one of the downsides for now. In future endeavors, this will be smart and integrated, and doing things like return from work will not be an issue. -josh
on 2012-10-23 23:49
Hi Josh, Thanks for your answer. Here my comments: 1. I fixed the problem just not using any return in the work function. Also, in BLOCK 1 work function (), I added a usleep(20), this gives enough time to the other blocks to run their work functions. 2. So, does it mean that I should install the latest version of GNU radio? If yes, where is the link of the latest version?. Thanks again and your comments are very useful!, Jose
on 2012-10-25 01:54
Hi Josh, This is kind of silly question. Now I have this version of GNU radio in E110: gnuradio-config-info -v *3.6.2*git-149-g9305abf4 If I build the newest version, how can I know which version is available now?. Thanks, Jose
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.