Dangit... typo. That 3rd sentence should've said "....combinations
of the bof file, py file, and mdl file that DO NOT work directly.
Thanks,
Jason
At 11:31 AM 4/25/2012, Jason Ray wrote:
All,
I recently tried to use tutorial 2 to do some troubleshooting of
10GbE ports on a couple roaches. I found a few inconsistencies in
the file links that I thought I would point out.
Mainly, there seems to be several combinations of the bof file, py
file, and mdl file that work directly.
For instance, I downloaded tut2b.bof from here:
https://github.com/casper-astro/tutorials_devel/tree/master/workshop_2011/roach_tut2_10GbE
and tut2b.py from here: https://casper.berkeley.edu/wiki/Tutorials
and tut2b.mdl from here: https://casper.berkeley.edu/wiki/Tutorial_10GbE
The only problem with this combo is that line 21 in the .py file reads:
tx_snap = 'snap_gbe0_tx'
but there's no "snap_gbe0_tx' when you do a listdev. Looking at the
mdl file, I found that line 21 in the .py file should read:
tx_snap = 'snap_10gbe_tx'
Changing that seemed to do the trick, and this combination got me to
the finish line the fastest.
Then, I downloaded tut2b.mdl from the main tutorials page and it has
the name "snap_gbe0_tx" that the .py file was originally looking
for, but I didn't manage to find a bof file that worked with that
.py file directly.
I guess the bottom line is that someone should check out the various
links for tutorial 2 and make sure they are all consistent, and that
they all play well together.
Thanks,
Jason
At 11:27 AM 4/12/2012, Jason Manley wrote:
Good catch!
Yeah, something's suspicious here. Here's the definition for that
init function as it is currently on github and also on pypi...
def __init__(self, host, port=7147, tb_limit=20, timeout=10.0,
logger=log):
So you should just have to specify the ROACH board.
Jason
On 12 Apr 2012, at 16:59, Rich Lacasse wrote:
> Hi Jason,
>
> Thanks again for the help. By commenting out the "try" and
executing increasingly long parts of the script, I found that the statement:
>
> if opts.bof != ''
>
> was always true, no matter whether or not I used the "-b
tut2b.bof" option when invoking the script. I fixed this by
replacing the two single quotes with the word None. After this
change, if I printed the value of boffile after the "if"
statement, I got the expected behavior: the default of tut2.bof
when I invoked the script without the -b option and whatever I
entered when I invoked the script with the -b option.
>
> Next I found the following:
>
> Traceback (most recent call last):
> File "./tut2b_rjl.py", line 70, in <module>
> fpga = corr.katcp_wrapper.FpgaClient(roach, logger=logger)
> TypeError: __init__() takes at least 3 non-keyword arguments (2 given)
>
> So, I have an incompatible number of arguments. Is this saying
that my python file and the corr file are incompatible? If so,
where do I get the latest and greatest?
>
> Thanks,
> Rich
>
> Jason Manley wrote:
>> I'd suggest you copy-paste the lines one-at-a-time from the
script into an iPython window and see which fails and then
hopefully the message will point you in a reasonable direction.
Another option would be to comment-out the "try" catch in the
script and rerun it to see what the exception is. For some reason,
the correlator fpga object's never being initialised and so the
logging's not even working. You want the traceback to figure out
where it broke.
>>
>> Jason
>>